@elliemae/ds-pills 1.53.4-rc.1 → 1.53.4-rc.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (183) hide show
  1. package/cjs/components/Pill.js +62 -0
  2. package/cjs/components/Pill.js.map +1 -0
  3. package/cjs/components/PillGroup.js +64 -0
  4. package/cjs/components/PillGroup.js.map +1 -0
  5. package/cjs/components/index.js +38 -0
  6. package/cjs/components/index.js.map +1 -0
  7. package/cjs/components/styled.js +140 -0
  8. package/cjs/components/styled.js.map +1 -0
  9. package/cjs/components/types/DropdownPill.js +71 -0
  10. package/cjs/components/types/DropdownPill.js.map +1 -0
  11. package/cjs/components/types/InputPill.js +71 -0
  12. package/cjs/components/types/InputPill.js.map +1 -0
  13. package/cjs/components/types/LabelPill.js +28 -0
  14. package/cjs/components/types/LabelPill.js.map +1 -0
  15. package/cjs/components/types/ReadOnlyPill.js +34 -0
  16. package/cjs/components/types/ReadOnlyPill.js.map +1 -0
  17. package/cjs/components/types/RemovablePill.js +59 -0
  18. package/cjs/components/types/RemovablePill.js.map +1 -0
  19. package/cjs/components/types/ValuePill.js +33 -0
  20. package/cjs/components/types/ValuePill.js.map +1 -0
  21. package/cjs/components/types/index.js +35 -0
  22. package/cjs/components/types/index.js.map +1 -0
  23. package/cjs/{DropdownPill.js → deprecated/DropdownPill.js} +2 -2
  24. package/cjs/deprecated/DropdownPill.js.map +1 -0
  25. package/cjs/{InputPill.js → deprecated/InputPill.js} +2 -2
  26. package/cjs/deprecated/InputPill.js.map +1 -0
  27. package/cjs/{LabeledDropdownPills.js → deprecated/LabeledDropdownPills.js} +8 -8
  28. package/cjs/deprecated/LabeledDropdownPills.js.map +1 -0
  29. package/cjs/{LabeledDropdownPillsTypes → deprecated/LabeledDropdownPillsTypes}/LabeledDropdownCascadeMenuPill.js +6 -6
  30. package/cjs/deprecated/LabeledDropdownPillsTypes/LabeledDropdownCascadeMenuPill.js.map +1 -0
  31. package/cjs/{LabeledDropdownPillsTypes → deprecated/LabeledDropdownPillsTypes}/LabeledDropdownMultiPill.js +8 -8
  32. package/cjs/deprecated/LabeledDropdownPillsTypes/LabeledDropdownMultiPill.js.map +1 -0
  33. package/cjs/{LabeledDropdownPillsTypes → deprecated/LabeledDropdownPillsTypes}/LabeledDropdownSinglePill.js +12 -12
  34. package/cjs/deprecated/LabeledDropdownPillsTypes/LabeledDropdownSinglePill.js.map +1 -0
  35. package/cjs/{LabeledDropdownPillsTypes → deprecated/LabeledDropdownPillsTypes}/utils.js +0 -0
  36. package/cjs/deprecated/LabeledDropdownPillsTypes/utils.js.map +1 -0
  37. package/cjs/{LabeledPills.js → deprecated/LabeledPills.js} +6 -6
  38. package/cjs/deprecated/LabeledPills.js.map +1 -0
  39. package/cjs/{OverflowPill.js → deprecated/OverflowPill.js} +2 -2
  40. package/cjs/deprecated/OverflowPill.js.map +1 -0
  41. package/cjs/{Pill.js → deprecated/Pill.js} +0 -0
  42. package/cjs/deprecated/Pill.js.map +1 -0
  43. package/cjs/{PillGroup.js → deprecated/PillGroup.js} +0 -0
  44. package/cjs/deprecated/PillGroup.js.map +1 -0
  45. package/cjs/{ReadOnlyPill.js → deprecated/ReadOnlyPill.js} +2 -2
  46. package/cjs/deprecated/ReadOnlyPill.js.map +1 -0
  47. package/cjs/{RemovablePill.js → deprecated/RemovablePill.js} +2 -2
  48. package/cjs/deprecated/RemovablePill.js.map +1 -0
  49. package/cjs/deprecated/index.js +63 -0
  50. package/cjs/deprecated/index.js.map +1 -0
  51. package/cjs/index.d.js +3 -0
  52. package/cjs/index.d.js.map +1 -0
  53. package/cjs/index.js +52 -33
  54. package/cjs/index.js.map +1 -1
  55. package/cjs/props.js +59 -0
  56. package/cjs/props.js.map +1 -0
  57. package/cjs/utils.js +25 -0
  58. package/cjs/utils.js.map +1 -0
  59. package/components/Pill/package.json +10 -0
  60. package/components/PillGroup/package.json +10 -0
  61. package/components/package.json +10 -0
  62. package/components/styled/package.json +10 -0
  63. package/components/types/DropdownPill/package.json +10 -0
  64. package/components/types/InputPill/package.json +10 -0
  65. package/components/types/LabelPill/package.json +10 -0
  66. package/components/types/ReadOnlyPill/package.json +10 -0
  67. package/components/types/RemovablePill/package.json +10 -0
  68. package/components/types/ValuePill/package.json +10 -0
  69. package/components/types/package.json +10 -0
  70. package/deprecated/DropdownPill/package.json +10 -0
  71. package/deprecated/InputPill/package.json +10 -0
  72. package/deprecated/LabeledDropdownPills/package.json +10 -0
  73. package/deprecated/LabeledDropdownPillsTypes/LabeledDropdownCascadeMenuPill/package.json +10 -0
  74. package/deprecated/LabeledDropdownPillsTypes/LabeledDropdownMultiPill/package.json +10 -0
  75. package/deprecated/LabeledDropdownPillsTypes/LabeledDropdownSinglePill/package.json +10 -0
  76. package/deprecated/LabeledDropdownPillsTypes/utils/package.json +10 -0
  77. package/deprecated/LabeledPills/package.json +10 -0
  78. package/deprecated/OverflowPill/package.json +10 -0
  79. package/deprecated/Pill/package.json +10 -0
  80. package/deprecated/PillGroup/package.json +10 -0
  81. package/deprecated/ReadOnlyPill/package.json +10 -0
  82. package/deprecated/RemovablePill/package.json +10 -0
  83. package/deprecated/package.json +10 -0
  84. package/esm/components/Pill.js +52 -0
  85. package/esm/components/Pill.js.map +1 -0
  86. package/esm/components/PillGroup.js +53 -0
  87. package/esm/components/PillGroup.js.map +1 -0
  88. package/esm/components/index.js +26 -0
  89. package/esm/components/index.js.map +1 -0
  90. package/esm/components/styled.js +120 -0
  91. package/esm/components/styled.js.map +1 -0
  92. package/esm/components/types/DropdownPill.js +60 -0
  93. package/esm/components/types/DropdownPill.js.map +1 -0
  94. package/esm/components/types/InputPill.js +63 -0
  95. package/esm/components/types/InputPill.js.map +1 -0
  96. package/esm/components/types/LabelPill.js +20 -0
  97. package/esm/components/types/LabelPill.js.map +1 -0
  98. package/esm/components/types/ReadOnlyPill.js +26 -0
  99. package/esm/components/types/ReadOnlyPill.js.map +1 -0
  100. package/esm/components/types/RemovablePill.js +51 -0
  101. package/esm/components/types/RemovablePill.js.map +1 -0
  102. package/esm/components/types/ValuePill.js +25 -0
  103. package/esm/components/types/ValuePill.js.map +1 -0
  104. package/esm/components/types/index.js +22 -0
  105. package/esm/components/types/index.js.map +1 -0
  106. package/esm/{DropdownPill.js → deprecated/DropdownPill.js} +0 -0
  107. package/esm/deprecated/DropdownPill.js.map +1 -0
  108. package/esm/{InputPill.js → deprecated/InputPill.js} +0 -0
  109. package/esm/deprecated/InputPill.js.map +1 -0
  110. package/esm/{LabeledDropdownPills.js → deprecated/LabeledDropdownPills.js} +0 -0
  111. package/esm/deprecated/LabeledDropdownPills.js.map +1 -0
  112. package/esm/{LabeledDropdownPillsTypes → deprecated/LabeledDropdownPillsTypes}/LabeledDropdownCascadeMenuPill.js +0 -0
  113. package/esm/deprecated/LabeledDropdownPillsTypes/LabeledDropdownCascadeMenuPill.js.map +1 -0
  114. package/esm/{LabeledDropdownPillsTypes → deprecated/LabeledDropdownPillsTypes}/LabeledDropdownMultiPill.js +0 -0
  115. package/esm/deprecated/LabeledDropdownPillsTypes/LabeledDropdownMultiPill.js.map +1 -0
  116. package/esm/{LabeledDropdownPillsTypes → deprecated/LabeledDropdownPillsTypes}/LabeledDropdownSinglePill.js +1 -1
  117. package/esm/deprecated/LabeledDropdownPillsTypes/LabeledDropdownSinglePill.js.map +1 -0
  118. package/esm/{LabeledDropdownPillsTypes → deprecated/LabeledDropdownPillsTypes}/utils.js +0 -0
  119. package/esm/deprecated/LabeledDropdownPillsTypes/utils.js.map +1 -0
  120. package/esm/{LabeledPills.js → deprecated/LabeledPills.js} +0 -0
  121. package/esm/deprecated/LabeledPills.js.map +1 -0
  122. package/esm/{OverflowPill.js → deprecated/OverflowPill.js} +0 -0
  123. package/esm/deprecated/OverflowPill.js.map +1 -0
  124. package/esm/{Pill.js → deprecated/Pill.js} +0 -0
  125. package/esm/deprecated/Pill.js.map +1 -0
  126. package/esm/{PillGroup.js → deprecated/PillGroup.js} +0 -0
  127. package/esm/deprecated/PillGroup.js.map +1 -0
  128. package/esm/{ReadOnlyPill.js → deprecated/ReadOnlyPill.js} +0 -0
  129. package/esm/deprecated/ReadOnlyPill.js.map +1 -0
  130. package/esm/{RemovablePill.js → deprecated/RemovablePill.js} +0 -0
  131. package/esm/deprecated/RemovablePill.js.map +1 -0
  132. package/esm/deprecated/index.js +38 -0
  133. package/esm/deprecated/index.js.map +1 -0
  134. package/esm/index.d.js +2 -0
  135. package/esm/index.d.js.map +1 -0
  136. package/esm/index.js +30 -15
  137. package/esm/index.js.map +1 -1
  138. package/esm/props.js +50 -0
  139. package/esm/props.js.map +1 -0
  140. package/esm/utils.js +21 -0
  141. package/esm/utils.js.map +1 -0
  142. package/package.json +11 -9
  143. package/props/package.json +10 -0
  144. package/utils/package.json +10 -0
  145. package/DropdownPill/package.json +0 -10
  146. package/InputPill/package.json +0 -10
  147. package/LabeledDropdownPills/package.json +0 -10
  148. package/LabeledDropdownPillsTypes/LabeledDropdownCascadeMenuPill/package.json +0 -10
  149. package/LabeledDropdownPillsTypes/LabeledDropdownMultiPill/package.json +0 -10
  150. package/LabeledDropdownPillsTypes/LabeledDropdownSinglePill/package.json +0 -10
  151. package/LabeledDropdownPillsTypes/utils/package.json +0 -10
  152. package/LabeledPills/package.json +0 -10
  153. package/OverflowPill/package.json +0 -10
  154. package/Pill/package.json +0 -10
  155. package/PillGroup/package.json +0 -10
  156. package/ReadOnlyPill/package.json +0 -10
  157. package/RemovablePill/package.json +0 -10
  158. package/cjs/DropdownPill.js.map +0 -1
  159. package/cjs/InputPill.js.map +0 -1
  160. package/cjs/LabeledDropdownPills.js.map +0 -1
  161. package/cjs/LabeledDropdownPillsTypes/LabeledDropdownCascadeMenuPill.js.map +0 -1
  162. package/cjs/LabeledDropdownPillsTypes/LabeledDropdownMultiPill.js.map +0 -1
  163. package/cjs/LabeledDropdownPillsTypes/LabeledDropdownSinglePill.js.map +0 -1
  164. package/cjs/LabeledDropdownPillsTypes/utils.js.map +0 -1
  165. package/cjs/LabeledPills.js.map +0 -1
  166. package/cjs/OverflowPill.js.map +0 -1
  167. package/cjs/Pill.js.map +0 -1
  168. package/cjs/PillGroup.js.map +0 -1
  169. package/cjs/ReadOnlyPill.js.map +0 -1
  170. package/cjs/RemovablePill.js.map +0 -1
  171. package/esm/DropdownPill.js.map +0 -1
  172. package/esm/InputPill.js.map +0 -1
  173. package/esm/LabeledDropdownPills.js.map +0 -1
  174. package/esm/LabeledDropdownPillsTypes/LabeledDropdownCascadeMenuPill.js.map +0 -1
  175. package/esm/LabeledDropdownPillsTypes/LabeledDropdownMultiPill.js.map +0 -1
  176. package/esm/LabeledDropdownPillsTypes/LabeledDropdownSinglePill.js.map +0 -1
  177. package/esm/LabeledDropdownPillsTypes/utils.js.map +0 -1
  178. package/esm/LabeledPills.js.map +0 -1
  179. package/esm/OverflowPill.js.map +0 -1
  180. package/esm/Pill.js.map +0 -1
  181. package/esm/PillGroup.js.map +0 -1
  182. package/esm/ReadOnlyPill.js.map +0 -1
  183. package/esm/RemovablePill.js.map +0 -1
@@ -0,0 +1,62 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
6
+ var React = require('react');
7
+ var reactDesc = require('react-desc');
8
+ var props = require('../props.js');
9
+ var components_types_DropdownPill = require('./types/DropdownPill.js');
10
+ var components_types_InputPill = require('./types/InputPill.js');
11
+ var components_types_LabelPill = require('./types/LabelPill.js');
12
+ var components_types_ReadOnlyPill = require('./types/ReadOnlyPill.js');
13
+ var components_types_RemovablePill = require('./types/RemovablePill.js');
14
+ var components_types_ValuePill = require('./types/ValuePill.js');
15
+ require('@elliemae/ds-form/Input');
16
+ require('@babel/runtime/helpers/extends');
17
+ require('@babel/runtime/helpers/slicedToArray');
18
+ require('@elliemae/ds-dropdownmenu');
19
+ require('uid');
20
+ require('./styled.js');
21
+ require('styled-components');
22
+ require('@elliemae/ds-grid');
23
+ require('@elliemae/ds-icons/CloseXsmall');
24
+ require('@elliemae/ds-icons/ChevronSmallDown');
25
+ require('../utils.js');
26
+ require('./PillGroup.js');
27
+ require('@babel/runtime/helpers/toConsumableArray');
28
+ require('@elliemae/ds-tooltip');
29
+
30
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
31
+
32
+ var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
33
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
34
+
35
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
36
+
37
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty__default['default'](target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
38
+ var pillComponentGetter = {
39
+ dropdown: components_types_DropdownPill.DropdownPill,
40
+ input: components_types_InputPill.InputPill,
41
+ label: components_types_LabelPill.LabelPill,
42
+ readonly: components_types_ReadOnlyPill.ReadOnlyPill,
43
+ removable: components_types_RemovablePill.RemovablePill,
44
+ value: components_types_ValuePill.ValuePill
45
+ };
46
+
47
+ var DSPillV2 = function DSPillV2(props$1) {
48
+ // TODO -- investigate why showcase story doesn't work with useMemoMerge
49
+ var propsWithDefaults = _objectSpread(_objectSpread({}, props.DSPillV2DefaultProps), props$1);
50
+
51
+ var type = propsWithDefaults.type;
52
+ var PillComponent = pillComponentGetter[type];
53
+ return /*#__PURE__*/React__default['default'].createElement(PillComponent, propsWithDefaults);
54
+ };
55
+
56
+ DSPillV2.propTypes = props.DSPillV2PropTypes;
57
+ var DSPillV2WithSchema = reactDesc.describe(DSPillV2).description('Pill');
58
+ DSPillV2WithSchema.propTypes = props.DSPillV2PropTypes;
59
+
60
+ exports.DSPillV2 = DSPillV2;
61
+ exports.DSPillV2WithSchema = DSPillV2WithSchema;
62
+ //# sourceMappingURL=Pill.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Pill.js","sources":["../../../src/components/Pill.tsx"],"sourcesContent":["/* eslint-disable react/prop-types */\nimport React from 'react';\nimport { describe } from 'react-desc';\nimport type { DSPillProps } from '../index.d';\nimport { DSPillV2DefaultProps, DSPillV2PropTypes } from '../props';\nimport { DropdownPill, LabelPill, ValuePill, InputPill, ReadOnlyPill, RemovablePill } from './types';\n\nconst pillComponentGetter: Record<string, React.ComponentType<DSPillProps>> = {\n dropdown: DropdownPill,\n input: InputPill,\n label: LabelPill,\n readonly: ReadOnlyPill,\n removable: RemovablePill,\n value: ValuePill,\n};\n\nconst DSPillV2: React.ComponentType<DSPillProps> = (props) => {\n // TODO -- investigate why showcase story doesn't work with useMemoMerge\n const propsWithDefaults = { ...DSPillV2DefaultProps, ...props };\n const { type } = propsWithDefaults;\n const PillComponent = pillComponentGetter[type];\n\n return <PillComponent {...propsWithDefaults} />;\n};\n\nDSPillV2.propTypes = DSPillV2PropTypes;\nconst DSPillV2WithSchema = describe(DSPillV2).description('Pill');\nDSPillV2WithSchema.propTypes = DSPillV2PropTypes;\n\nexport { DSPillV2, DSPillV2WithSchema };\n"],"names":["pillComponentGetter","dropdown","DropdownPill","input","InputPill","label","LabelPill","readonly","ReadOnlyPill","removable","RemovablePill","value","ValuePill","DSPillV2","props","propsWithDefaults","DSPillV2DefaultProps","type","PillComponent","React","propTypes","DSPillV2PropTypes","DSPillV2WithSchema","describe","description"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,IAAMA,mBAAqE,GAAG;AAC5EC,EAAAA,QAAQ,EAAEC,0CADkE;AAE5EC,EAAAA,KAAK,EAAEC,oCAFqE;AAG5EC,EAAAA,KAAK,EAAEC,oCAHqE;AAI5EC,EAAAA,QAAQ,EAAEC,0CAJkE;AAK5EC,EAAAA,SAAS,EAAEC,4CALiE;AAM5EC,EAAAA,KAAK,EAAEC;AANqE,CAA9E;;IASMC,QAA0C,GAAG,SAA7CA,QAA6C,CAACC,OAAD,EAAW;AAC5D;AACA,MAAMC,iBAAiB,mCAAQC,0BAAR,GAAiCF,OAAjC,CAAvB;;AACA,MAAQG,IAAR,GAAiBF,iBAAjB,CAAQE,IAAR;AACA,MAAMC,aAAa,GAAGlB,mBAAmB,CAACiB,IAAD,CAAzC;AAEA,sBAAOE,wCAAC,aAAD,EAAmBJ,iBAAnB,CAAP;AACD;;AAEDF,QAAQ,CAACO,SAAT,GAAqBC,uBAArB;IACMC,kBAAkB,GAAGC,kBAAQ,CAACV,QAAD,CAAR,CAAmBW,WAAnB,CAA+B,MAA/B;AAC3BF,kBAAkB,CAACF,SAAnB,GAA+BC,uBAA/B;;;;;"}
@@ -0,0 +1,64 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
6
+ var React = require('react');
7
+ var reactDesc = require('react-desc');
8
+ var uid = require('uid');
9
+ var components_styled = require('./styled.js');
10
+ require('styled-components');
11
+ require('@elliemae/ds-grid');
12
+ require('@elliemae/ds-icons/CloseXsmall');
13
+ require('@elliemae/ds-icons/ChevronSmallDown');
14
+
15
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
16
+
17
+ var _toConsumableArray__default = /*#__PURE__*/_interopDefaultLegacy(_toConsumableArray);
18
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
19
+
20
+ var DSPillGroupV2Context = /*#__PURE__*/React.createContext({
21
+ onKeyboardRemove: function onKeyboardRemove() {
22
+ return null;
23
+ }
24
+ });
25
+
26
+ var DSPillGroupV2 = function DSPillGroupV2(_ref) {
27
+ var children = _ref.children;
28
+ var pillGroupUid = React.useMemo(function () {
29
+ return "ds-pill-group-".concat(uid.uid());
30
+ }, []);
31
+ var onKeyboardRemove = React.useCallback(function (pillUid) {
32
+ var elems = _toConsumableArray__default['default'](document.querySelectorAll("#".concat(pillGroupUid, " .ds-pill-focus-point")));
33
+
34
+ var pillIndex = elems.findIndex(function (elem) {
35
+ return elem.id === pillUid;
36
+ });
37
+
38
+ if (pillIndex > 0) {
39
+ elems[pillIndex - 1].focus();
40
+ } else if (pillIndex + 1 < elems.length) {
41
+ elems[pillIndex + 1].focus();
42
+ }
43
+ }, [pillGroupUid]);
44
+ return /*#__PURE__*/React__default['default'].createElement(DSPillGroupV2Context.Provider, {
45
+ value: {
46
+ onKeyboardRemove: onKeyboardRemove
47
+ }
48
+ }, /*#__PURE__*/React__default['default'].createElement(components_styled.StyledPillGroup, {
49
+ id: pillGroupUid,
50
+ cols: React__default['default'].Children.map(children, function () {
51
+ return 'auto';
52
+ }),
53
+ gutter: "2px"
54
+ }, children));
55
+ };
56
+
57
+ DSPillGroupV2.propTypes = {};
58
+ var DSPillGroupV2WithSchema = reactDesc.describe(DSPillGroupV2);
59
+ DSPillGroupV2WithSchema.propTypes = {};
60
+
61
+ exports.DSPillGroupV2 = DSPillGroupV2;
62
+ exports.DSPillGroupV2Context = DSPillGroupV2Context;
63
+ exports.DSPillGroupV2WithSchema = DSPillGroupV2WithSchema;
64
+ //# sourceMappingURL=PillGroup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PillGroup.js","sources":["../../../src/components/PillGroup.tsx"],"sourcesContent":["/* eslint-disable react/prop-types */\nimport React, { createContext, useCallback, useMemo } from 'react';\nimport { describe } from 'react-desc';\nimport { uid } from 'uid';\nimport { StyledPillGroup } from './styled';\n\nexport const DSPillGroupV2Context = createContext<{ onKeyboardRemove: (pillUid: string) => void }>({\n onKeyboardRemove: () => null,\n});\n\nconst DSPillGroupV2: React.ComponentType = ({ children }) => {\n const pillGroupUid = useMemo(() => `ds-pill-group-${uid()}`, []);\n\n const onKeyboardRemove = useCallback(\n (pillUid: string) => {\n const elems = [...document.querySelectorAll(`#${pillGroupUid} .ds-pill-focus-point`)] as HTMLElement[];\n\n const pillIndex = elems.findIndex((elem) => elem.id === pillUid);\n\n if (pillIndex > 0) {\n elems[pillIndex - 1].focus();\n } else if (pillIndex + 1 < elems.length) {\n elems[pillIndex + 1].focus();\n }\n },\n [pillGroupUid],\n );\n\n return (\n <DSPillGroupV2Context.Provider value={{ onKeyboardRemove }}>\n <StyledPillGroup id={pillGroupUid} cols={React.Children.map(children, () => 'auto')} gutter=\"2px\">\n {children}\n </StyledPillGroup>\n </DSPillGroupV2Context.Provider>\n );\n};\n\nDSPillGroupV2.propTypes = {};\nconst DSPillGroupV2WithSchema = describe(DSPillGroupV2);\nDSPillGroupV2WithSchema.propTypes = {};\n\nexport { DSPillGroupV2, DSPillGroupV2WithSchema };\n"],"names":["DSPillGroupV2Context","createContext","onKeyboardRemove","DSPillGroupV2","children","pillGroupUid","useMemo","uid","useCallback","pillUid","elems","document","querySelectorAll","pillIndex","findIndex","elem","id","focus","length","React","StyledPillGroup","Children","map","propTypes","DSPillGroupV2WithSchema","describe"],"mappings":";;;;;;;;;;;;;;;;;;;IAMaA,oBAAoB,gBAAGC,mBAAa,CAAkD;AACjGC,EAAAA,gBAAgB,EAAE;AAAA,WAAM,IAAN;AAAA;AAD+E,CAAlD;;IAI3CC,aAAkC,GAAG,SAArCA,aAAqC,OAAkB;AAAA,MAAfC,QAAe,QAAfA,QAAe;AAC3D,MAAMC,YAAY,GAAGC,aAAO,CAAC;AAAA,mCAAuBC,OAAG,EAA1B;AAAA,GAAD,EAAiC,EAAjC,CAA5B;AAEA,MAAML,gBAAgB,GAAGM,iBAAW,CAClC,UAACC,OAAD,EAAqB;AACnB,QAAMC,KAAK,0CAAOC,QAAQ,CAACC,gBAAT,YAA8BP,YAA9B,2BAAP,CAAX;;AAEA,QAAMQ,SAAS,GAAGH,KAAK,CAACI,SAAN,CAAgB,UAACC,IAAD;AAAA,aAAUA,IAAI,CAACC,EAAL,KAAYP,OAAtB;AAAA,KAAhB,CAAlB;;AAEA,QAAII,SAAS,GAAG,CAAhB,EAAmB;AACjBH,MAAAA,KAAK,CAACG,SAAS,GAAG,CAAb,CAAL,CAAqBI,KAArB;AACD,KAFD,MAEO,IAAIJ,SAAS,GAAG,CAAZ,GAAgBH,KAAK,CAACQ,MAA1B,EAAkC;AACvCR,MAAAA,KAAK,CAACG,SAAS,GAAG,CAAb,CAAL,CAAqBI,KAArB;AACD;AACF,GAXiC,EAYlC,CAACZ,YAAD,CAZkC,CAApC;AAeA,sBACEc,wCAAC,oBAAD,CAAsB,QAAtB;AAA+B,IAAA,KAAK,EAAE;AAAEjB,MAAAA,gBAAgB,EAAhBA;AAAF;AAAtC,kBACEiB,wCAACC,iCAAD;AAAiB,IAAA,EAAE,EAAEf,YAArB;AAAmC,IAAA,IAAI,EAAEc,yBAAK,CAACE,QAAN,CAAeC,GAAf,CAAmBlB,QAAnB,EAA6B;AAAA,aAAM,MAAN;AAAA,KAA7B,CAAzC;AAAqF,IAAA,MAAM,EAAC;AAA5F,KACGA,QADH,CADF,CADF;AAOD;;AAEDD,aAAa,CAACoB,SAAd,GAA0B,EAA1B;IACMC,uBAAuB,GAAGC,kBAAQ,CAACtB,aAAD;AACxCqB,uBAAuB,CAACD,SAAxB,GAAoC,EAApC;;;;;;"}
@@ -0,0 +1,38 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var components_Pill = require('./Pill.js');
6
+ var components_PillGroup = require('./PillGroup.js');
7
+ require('@babel/runtime/helpers/defineProperty');
8
+ require('react');
9
+ require('react-desc');
10
+ require('../props.js');
11
+ require('@elliemae/ds-form/Input');
12
+ require('./types/DropdownPill.js');
13
+ require('@babel/runtime/helpers/extends');
14
+ require('@babel/runtime/helpers/slicedToArray');
15
+ require('@elliemae/ds-dropdownmenu');
16
+ require('uid');
17
+ require('./styled.js');
18
+ require('styled-components');
19
+ require('@elliemae/ds-grid');
20
+ require('@elliemae/ds-icons/CloseXsmall');
21
+ require('@elliemae/ds-icons/ChevronSmallDown');
22
+ require('../utils.js');
23
+ require('./types/InputPill.js');
24
+ require('./types/LabelPill.js');
25
+ require('./types/ReadOnlyPill.js');
26
+ require('./types/RemovablePill.js');
27
+ require('@babel/runtime/helpers/toConsumableArray');
28
+ require('./types/ValuePill.js');
29
+ require('@elliemae/ds-tooltip');
30
+
31
+
32
+
33
+ exports.DSPillV2 = components_Pill.DSPillV2;
34
+ exports.DSPillV2WithSchema = components_Pill.DSPillV2WithSchema;
35
+ exports.DSPillGroupV2 = components_PillGroup.DSPillGroupV2;
36
+ exports.DSPillGroupV2Context = components_PillGroup.DSPillGroupV2Context;
37
+ exports.DSPillGroupV2WithSchema = components_PillGroup.DSPillGroupV2WithSchema;
38
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,140 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var styled = require('styled-components');
6
+ var Grid = require('@elliemae/ds-grid');
7
+ var CloseXsmall = require('@elliemae/ds-icons/CloseXsmall');
8
+ var ChevronDown = require('@elliemae/ds-icons/ChevronSmallDown');
9
+
10
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
11
+
12
+ var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
13
+ var Grid__default = /*#__PURE__*/_interopDefaultLegacy(Grid);
14
+ var CloseXsmall__default = /*#__PURE__*/_interopDefaultLegacy(CloseXsmall);
15
+ var ChevronDown__default = /*#__PURE__*/_interopDefaultLegacy(ChevronDown);
16
+
17
+ /* eslint-disable max-lines */
18
+ // Common CSS
19
+ // =============================================================================
20
+
21
+ var borderOutside = function borderOutside(color) {
22
+ return styled.css([":after{content:' ';position:absolute;top:0px;left:0px;right:0px;bottom:0px;border:1px solid ", ";border-radius:12px;pointer-events:none;}"], color);
23
+ };
24
+
25
+ var borderInside = function borderInside(color) {
26
+ return styled.css([":before{content:' ';position:absolute;top:1px;left:1px;right:1px;bottom:1px;border:1px solid ", ";border-radius:12px;pointer-events:none;}"], color);
27
+ };
28
+
29
+ var commonPillWrapperCss = /*#__PURE__*/styled.css(["height:24px;position:relative;width:fit-content;background-color:", ";outline:none;padding:0px 12px 0 12px;border-radius:12px;font-size:", ";color:", ";"], function (props) {
30
+ return props.theme.colors.brand[200];
31
+ }, function (props) {
32
+ return props.theme.fontSizes.value[400];
33
+ }, function (props) {
34
+ return props.theme.colors.neutral[800];
35
+ });
36
+ var commonFocuseablePillWrapperCss = /*#__PURE__*/styled.css([":focus,:hover,:active{color:", ";", " ", "}"], function (props) {
37
+ return props.theme.colors.brand[800];
38
+ }, function (props) {
39
+ return borderOutside(props.theme.colors.brand[600]);
40
+ }, function (props) {
41
+ return borderInside(props.theme.colors.brand[300]);
42
+ }); // =============================================================================
43
+ // Pill content
44
+ // =============================================================================
45
+
46
+ var StyledInput = /*#__PURE__*/styled__default['default'].input.withConfig({
47
+ componentId: "sc-j0tlch-0"
48
+ })(["font-style:", ";color:", ";background:inherit;border:none;font-size:13px;margin:1px 0 1px 12px;padding:0;width:", ";outline:none;:focus{font-style:normal;color:", ";}"], function (props) {
49
+ return props.value === '' ? 'italic' : 'normal';
50
+ }, function (_ref) {
51
+ var value = _ref.value,
52
+ theme = _ref.theme;
53
+ return value === '' ? theme.colors.neutral[500] : theme.colors.brand[800];
54
+ }, function (props) {
55
+ return props.inputWidth;
56
+ }, function (props) {
57
+ return props.theme.colors.brand[800];
58
+ }); // =============================================================================
59
+ // Icons
60
+ // =============================================================================
61
+
62
+ var StyledCloseIcon = /*#__PURE__*/styled__default['default'](CloseXsmall__default['default']).withConfig({
63
+ componentId: "sc-j0tlch-1"
64
+ })(["cursor:pointer;z-index:2;margin-top:-1px;:focus{outline:1px solid ", ";}"], function (props) {
65
+ return props.theme.colors.brand[800];
66
+ });
67
+ var StyledChevronDown = /*#__PURE__*/styled__default['default'](ChevronDown__default['default']).withConfig({
68
+ componentId: "sc-j0tlch-2"
69
+ })(["fill:", ";svg{fill:inherit !important;}"], function (props) {
70
+ return props.theme.colors.neutral[600];
71
+ }); // =============================================================================
72
+ // Pills wrappers
73
+ // =============================================================================
74
+
75
+ var StyledLabelPillWrapper = /*#__PURE__*/styled__default['default'](Grid__default['default']).withConfig({
76
+ componentId: "sc-j0tlch-3"
77
+ })(["", " ", " font-weight:", ";"], commonPillWrapperCss, commonFocuseablePillWrapperCss, function (props) {
78
+ return props.theme.fontWeights.semibold;
79
+ });
80
+ var StyledValuePillWrapper = /*#__PURE__*/styled__default['default'](Grid__default['default']).withConfig({
81
+ componentId: "sc-j0tlch-4"
82
+ })(["", " ", " font-weight:", ";"], commonPillWrapperCss, commonFocuseablePillWrapperCss, function (props) {
83
+ return props.theme.fontWeights.regular;
84
+ });
85
+ var StyledInputPillWrapper = /*#__PURE__*/styled__default['default'](Grid__default['default']).withConfig({
86
+ componentId: "sc-j0tlch-5"
87
+ })(["", " background:", ";border:", ";padding:0;:focus-within{border:1px solid ", ";box-shadow:inset 0 0 0 1px ", ";background:", ";}:active,:hover{border:1px solid ", ";}& .em-ds-input{outline:none !important;border:none !important;box-shadow:none !important;border-radius:none !important;height:100%;background:transparent;width:", ";padding:0;margin:1px 0 1px 12px;}& .em-ds-input__tooltip-ref{height:100%;}"], commonPillWrapperCss, function (_ref2) {
88
+ var value = _ref2.value,
89
+ theme = _ref2.theme;
90
+ return value === '' ? theme.colors.neutral['000'] : theme.colors.brand[200];
91
+ }, function (_ref3) {
92
+ var value = _ref3.value,
93
+ theme = _ref3.theme;
94
+ return value === '' ? "1px solid ".concat(theme.colors.neutral[300]) : '1px solid transparent';
95
+ }, function (props) {
96
+ return props.theme.colors.brand[600];
97
+ }, function (props) {
98
+ return props.theme.colors.brand[300];
99
+ }, function (props) {
100
+ return props.theme.colors.brand[200];
101
+ }, function (props) {
102
+ return props.theme.colors.brand[700];
103
+ }, function (props) {
104
+ return "".concat(props.inputWidth, "px");
105
+ });
106
+ var StyledDropdownPillWrapper = /*#__PURE__*/styled__default['default'](Grid__default['default']).withConfig({
107
+ componentId: "sc-j0tlch-6"
108
+ })(["", " ", " font-weight:", ";cursor:pointer;padding:1px 3px 0 12px;:focus,:hover,:active{& ", "{fill:", ";}}"], commonPillWrapperCss, commonFocuseablePillWrapperCss, function (props) {
109
+ return props.theme.fontWeights.semibold;
110
+ }, StyledChevronDown, function (props) {
111
+ return props.theme.colors.brand[800];
112
+ });
113
+ var StyledReadonlyPillWrapper = /*#__PURE__*/styled__default['default'](Grid__default['default']).withConfig({
114
+ componentId: "sc-j0tlch-7"
115
+ })(["", " font-weight:", ";"], commonPillWrapperCss, function (props) {
116
+ return props.theme.fontWeights.semibold;
117
+ });
118
+ var StyledRemovablePillWrapper = /*#__PURE__*/styled__default['default'](Grid__default['default']).withConfig({
119
+ componentId: "sc-j0tlch-8"
120
+ })(["", " ", " font-weight:", ";padding:1px 3px 0 12px;"], commonPillWrapperCss, commonFocuseablePillWrapperCss, function (props) {
121
+ return props.theme.fontWeights.regular;
122
+ }); // =============================================================================
123
+ // Pill group
124
+ // =============================================================================
125
+
126
+ var StyledPillGroup = /*#__PURE__*/styled__default['default'](Grid__default['default']).withConfig({
127
+ componentId: "sc-j0tlch-9"
128
+ })(["width:fit-content;& .ds-pill-wrapper{&:not(:first-of-type){&,:after,:before,> input{border-top-left-radius:0px;border-bottom-left-radius:0px;}}}& .ds-pill-wrapper{&:not(:last-of-type){&,:after,:before,> input{border-top-right-radius:0px;border-bottom-right-radius:0px;}}}"]);
129
+
130
+ exports.StyledChevronDown = StyledChevronDown;
131
+ exports.StyledCloseIcon = StyledCloseIcon;
132
+ exports.StyledDropdownPillWrapper = StyledDropdownPillWrapper;
133
+ exports.StyledInput = StyledInput;
134
+ exports.StyledInputPillWrapper = StyledInputPillWrapper;
135
+ exports.StyledLabelPillWrapper = StyledLabelPillWrapper;
136
+ exports.StyledPillGroup = StyledPillGroup;
137
+ exports.StyledReadonlyPillWrapper = StyledReadonlyPillWrapper;
138
+ exports.StyledRemovablePillWrapper = StyledRemovablePillWrapper;
139
+ exports.StyledValuePillWrapper = StyledValuePillWrapper;
140
+ //# sourceMappingURL=styled.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styled.js","sources":["../../../src/components/styled.tsx"],"sourcesContent":["/* eslint-disable max-lines */\nimport styled, { css } from 'styled-components';\nimport Grid from '@elliemae/ds-grid';\nimport CloseIcon from '@elliemae/ds-icons/CloseXsmall';\nimport ChevronDown from '@elliemae/ds-icons/ChevronSmallDown';\n\n// =============================================================================\n// Common CSS\n// =============================================================================\n\nconst borderOutside = (color: string) => css`\n :after {\n content: ' ';\n position: absolute;\n top: 0px;\n left: 0px;\n right: 0px;\n bottom: 0px;\n border: 1px solid ${color};\n border-radius: 12px;\n pointer-events: none;\n }\n`;\n\nconst borderInside = (color: string) => css`\n :before {\n content: ' ';\n position: absolute;\n top: 1px;\n left: 1px;\n right: 1px;\n bottom: 1px;\n border: 1px solid ${color};\n border-radius: 12px;\n pointer-events: none;\n }\n`;\n\nconst commonPillWrapperCss = css`\n height: 24px;\n position: relative;\n\n width: fit-content;\n\n background-color: ${(props) => props.theme.colors.brand[200]};\n\n outline: none;\n\n padding: 0px 12px 0 12px;\n border-radius: 12px;\n\n font-size: ${(props) => props.theme.fontSizes.value[400]};\n color: ${(props) => props.theme.colors.neutral[800]};\n`;\n\nconst commonFocuseablePillWrapperCss = css`\n :focus,\n :hover,\n :active {\n color: ${(props) => props.theme.colors.brand[800]};\n ${(props) => borderOutside(props.theme.colors.brand[600])}\n ${(props) => borderInside(props.theme.colors.brand[300])}\n }\n`;\n\n// =============================================================================\n// Pill content\n// =============================================================================\n\nexport const StyledInput = styled.input<{ value: string; inputWidth: number }>`\n font-style: ${(props) => (props.value === '' ? 'italic' : 'normal')};\n color: ${({ value, theme }) => (value === '' ? theme.colors.neutral[500] : theme.colors.brand[800])};\n background: inherit;\n border: none;\n font-size: 13px;\n margin: 1px 0 1px 12px;\n padding: 0;\n width: ${(props) => props.inputWidth};\n outline: none;\n\n :focus {\n font-style: normal;\n color: ${(props) => props.theme.colors.brand[800]};\n }\n`;\n\n// =============================================================================\n// Icons\n// =============================================================================\n\nexport const StyledCloseIcon = styled(CloseIcon)`\n cursor: pointer;\n z-index: 2;\n margin-top: -1px;\n :focus {\n outline: 1px solid ${(props) => props.theme.colors.brand[800]};\n }\n`;\n\nexport const StyledChevronDown = styled(ChevronDown)`\n fill: ${(props) => props.theme.colors.neutral[600]};\n svg {\n fill: inherit !important;\n }\n`;\n\n// =============================================================================\n// Pills wrappers\n// =============================================================================\n\nexport const StyledLabelPillWrapper = styled(Grid)`\n ${commonPillWrapperCss}\n ${commonFocuseablePillWrapperCss}\n font-weight: ${(props) => props.theme.fontWeights.semibold};\n`;\n\nexport const StyledValuePillWrapper = styled(Grid)`\n ${commonPillWrapperCss}\n ${commonFocuseablePillWrapperCss}\n font-weight: ${(props) => props.theme.fontWeights.regular};\n`;\n\nexport const StyledInputPillWrapper = styled(Grid)<{ value: string; inputWidth: number }>`\n ${commonPillWrapperCss}\n background: ${({ value, theme }) => (value === '' ? theme.colors.neutral['000'] : theme.colors.brand[200])};\n\n border: ${({ value, theme }) => (value === '' ? `1px solid ${theme.colors.neutral[300]}` : '1px solid transparent')};\n\n padding: 0;\n\n :focus-within {\n border: 1px solid ${(props) => props.theme.colors.brand[600]};\n box-shadow: inset 0 0 0 1px ${(props) => props.theme.colors.brand[300]};\n background: ${(props) => props.theme.colors.brand[200]};\n }\n\n :active,\n :hover {\n border: 1px solid ${(props) => props.theme.colors.brand[700]};\n }\n\n & .em-ds-input {\n outline: none !important;\n border: none !important;\n box-shadow: none !important;\n border-radius: none !important;\n height: 100%;\n background: transparent;\n width: ${(props) => `${props.inputWidth}px`};\n padding: 0;\n margin: 1px 0 1px 12px;\n }\n\n & .em-ds-input__tooltip-ref {\n height: 100%;\n }\n`;\n\nexport const StyledDropdownPillWrapper = styled(Grid)`\n ${commonPillWrapperCss}\n ${commonFocuseablePillWrapperCss}\n font-weight: ${(props) => props.theme.fontWeights.semibold};\n\n cursor: pointer;\n padding: 1px 3px 0 12px;\n\n :focus,\n :hover,\n :active {\n & ${StyledChevronDown} {\n fill: ${(props) => props.theme.colors.brand[800]};\n }\n }\n`;\n\nexport const StyledReadonlyPillWrapper = styled(Grid)`\n ${commonPillWrapperCss}\n font-weight: ${(props) => props.theme.fontWeights.semibold};\n`;\n\nexport const StyledRemovablePillWrapper = styled(Grid)`\n ${commonPillWrapperCss}\n ${commonFocuseablePillWrapperCss}\n font-weight: ${(props) => props.theme.fontWeights.regular};\n padding: 1px 3px 0 12px;\n`;\n\n// =============================================================================\n// Pill group\n// =============================================================================\n\nexport const StyledPillGroup = styled(Grid)`\n width: fit-content;\n & .ds-pill-wrapper {\n &:not(:first-of-type) {\n &,\n :after,\n :before,\n > input {\n border-top-left-radius: 0px;\n border-bottom-left-radius: 0px;\n }\n }\n }\n\n & .ds-pill-wrapper {\n &:not(:last-of-type) {\n &,\n :after,\n :before,\n > input {\n border-top-right-radius: 0px;\n border-bottom-right-radius: 0px;\n }\n }\n }\n`;\n"],"names":["borderOutside","color","css","borderInside","commonPillWrapperCss","props","theme","colors","brand","fontSizes","value","neutral","commonFocuseablePillWrapperCss","StyledInput","styled","input","inputWidth","StyledCloseIcon","CloseIcon","StyledChevronDown","ChevronDown","StyledLabelPillWrapper","Grid","fontWeights","semibold","StyledValuePillWrapper","regular","StyledInputPillWrapper","StyledDropdownPillWrapper","StyledReadonlyPillWrapper","StyledRemovablePillWrapper","StyledPillGroup"],"mappings":"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"}
@@ -0,0 +1,71 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _extends = require('@babel/runtime/helpers/extends');
6
+ var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
7
+ var React = require('react');
8
+ var DSDropdownMenu = require('@elliemae/ds-dropdownmenu');
9
+ var uid = require('uid');
10
+ var components_styled = require('../styled.js');
11
+ var utils = require('../../utils.js');
12
+ require('styled-components');
13
+ require('@elliemae/ds-grid');
14
+ require('@elliemae/ds-icons/CloseXsmall');
15
+ require('@elliemae/ds-icons/ChevronSmallDown');
16
+
17
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
18
+
19
+ var _extends__default = /*#__PURE__*/_interopDefaultLegacy(_extends);
20
+ var _slicedToArray__default = /*#__PURE__*/_interopDefaultLegacy(_slicedToArray);
21
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
22
+ var DSDropdownMenu__default = /*#__PURE__*/_interopDefaultLegacy(DSDropdownMenu);
23
+
24
+ var DropdownPill = /*#__PURE__*/React__default['default'].memo(function (_ref) {
25
+ var label = _ref.label,
26
+ dropdownProps = _ref.dropdownProps,
27
+ innerRef = _ref.innerRef;
28
+
29
+ var _useState = React.useState(),
30
+ _useState2 = _slicedToArray__default['default'](_useState, 2),
31
+ chevronEl = _useState2[0],
32
+ chevronRef = _useState2[1];
33
+
34
+ var pillRef = React.useRef(null);
35
+ var pillUid = React.useMemo(function () {
36
+ return "ds-pill-".concat(uid.uid());
37
+ }, []);
38
+ return /*#__PURE__*/React__default['default'].createElement(DSDropdownMenu__default['default'], _extends__default['default']({}, dropdownProps, {
39
+ hideIfNotVisible: true,
40
+ referenceNode: chevronEl,
41
+ onClose: function onClose() {
42
+ return pillRef.current.focus();
43
+ },
44
+ menuProps: {
45
+ zIndex: 100
46
+ },
47
+ triggerComponent: /*#__PURE__*/React__default['default'].createElement(components_styled.StyledDropdownPillWrapper, {
48
+ id: pillUid,
49
+ className: "ds-pill-wrapper ds-pill-focus-point",
50
+ "data-testid": "ds-pill-wrapper",
51
+ ref: utils.setMultipleRefs(pillRef, innerRef),
52
+ cols: ['auto', '24px'],
53
+ alignItems: "center",
54
+ tabIndex: 0,
55
+ justifyItems: "center",
56
+ role: "button",
57
+ onKeyDown: function onKeyDown(e) {
58
+ return ['Enter', 'Space'].includes(e.code);
59
+ },
60
+ "aria-label": label
61
+ }, label, /*#__PURE__*/React__default['default'].createElement("div", {
62
+ ref: chevronRef
63
+ }, /*#__PURE__*/React__default['default'].createElement(components_styled.StyledChevronDown, {
64
+ size: "s",
65
+ "data-testid": "ds-pill-dropdown-chevron"
66
+ })))
67
+ }));
68
+ });
69
+
70
+ exports.DropdownPill = DropdownPill;
71
+ //# sourceMappingURL=DropdownPill.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DropdownPill.js","sources":["../../../../src/components/types/DropdownPill.tsx"],"sourcesContent":["/* eslint-disable react/prop-types */\nimport React, { useMemo, useRef, useState } from 'react';\nimport DSDropdownMenu from '@elliemae/ds-dropdownmenu';\nimport { uid } from 'uid';\nimport { StyledDropdownPillWrapper, StyledChevronDown } from '../styled';\nimport type { DSPillProps } from '../../index.d';\nimport { setMultipleRefs } from '../../utils';\n\nexport const DropdownPill = React.memo<DSPillProps>(({ label, dropdownProps, innerRef }) => {\n const [chevronEl, chevronRef] = useState<HTMLDivElement>();\n const pillRef = useRef(null);\n\n const pillUid = useMemo(() => `ds-pill-${uid()}`, []);\n\n return (\n <DSDropdownMenu\n {...dropdownProps}\n hideIfNotVisible\n referenceNode={chevronEl}\n onClose={() => pillRef.current.focus()}\n menuProps={{ zIndex: 100 }}\n triggerComponent={\n <StyledDropdownPillWrapper\n id={pillUid}\n className=\"ds-pill-wrapper ds-pill-focus-point\"\n data-testid=\"ds-pill-wrapper\"\n ref={setMultipleRefs(pillRef, innerRef)}\n cols={['auto', '24px']}\n alignItems=\"center\"\n tabIndex={0}\n justifyItems=\"center\"\n role=\"button\"\n onKeyDown={(e) => ['Enter', 'Space'].includes(e.code)}\n aria-label={label}\n >\n {label}\n <div ref={chevronRef}>\n <StyledChevronDown size=\"s\" data-testid=\"ds-pill-dropdown-chevron\" />\n </div>\n </StyledDropdownPillWrapper>\n }\n />\n );\n});\n"],"names":["DropdownPill","React","memo","label","dropdownProps","innerRef","useState","chevronEl","chevronRef","pillRef","useRef","pillUid","useMemo","uid","DSDropdownMenu","current","focus","zIndex","StyledDropdownPillWrapper","setMultipleRefs","e","includes","code","StyledChevronDown"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;IAQaA,YAAY,gBAAGC,yBAAK,CAACC,IAAN,CAAwB,gBAAwC;AAAA,MAArCC,KAAqC,QAArCA,KAAqC;AAAA,MAA9BC,aAA8B,QAA9BA,aAA8B;AAAA,MAAfC,QAAe,QAAfA,QAAe;;AAC1F,kBAAgCC,cAAQ,EAAxC;AAAA;AAAA,MAAOC,SAAP;AAAA,MAAkBC,UAAlB;;AACA,MAAMC,OAAO,GAAGC,YAAM,CAAC,IAAD,CAAtB;AAEA,MAAMC,OAAO,GAAGC,aAAO,CAAC;AAAA,6BAAiBC,OAAG,EAApB;AAAA,GAAD,EAA2B,EAA3B,CAAvB;AAEA,sBACEZ,wCAACa,kCAAD,mCACMV,aADN;AAEE,IAAA,gBAAgB,MAFlB;AAGE,IAAA,aAAa,EAAEG,SAHjB;AAIE,IAAA,OAAO,EAAE;AAAA,aAAME,OAAO,CAACM,OAAR,CAAgBC,KAAhB,EAAN;AAAA,KAJX;AAKE,IAAA,SAAS,EAAE;AAAEC,MAAAA,MAAM,EAAE;AAAV,KALb;AAME,IAAA,gBAAgB,eACdhB,wCAACiB,2CAAD;AACE,MAAA,EAAE,EAAEP,OADN;AAEE,MAAA,SAAS,EAAC,qCAFZ;AAGE,qBAAY,iBAHd;AAIE,MAAA,GAAG,EAAEQ,qBAAe,CAACV,OAAD,EAAUJ,QAAV,CAJtB;AAKE,MAAA,IAAI,EAAE,CAAC,MAAD,EAAS,MAAT,CALR;AAME,MAAA,UAAU,EAAC,QANb;AAOE,MAAA,QAAQ,EAAE,CAPZ;AAQE,MAAA,YAAY,EAAC,QARf;AASE,MAAA,IAAI,EAAC,QATP;AAUE,MAAA,SAAS,EAAE,mBAACe,CAAD;AAAA,eAAO,CAAC,OAAD,EAAU,OAAV,EAAmBC,QAAnB,CAA4BD,CAAC,CAACE,IAA9B,CAAP;AAAA,OAVb;AAWE,oBAAYnB;AAXd,OAaGA,KAbH,eAcEF;AAAK,MAAA,GAAG,EAAEO;AAAV,oBACEP,wCAACsB,mCAAD;AAAmB,MAAA,IAAI,EAAC,GAAxB;AAA4B,qBAAY;AAAxC,MADF,CAdF;AAPJ,KADF;AA6BD,CAnC2B;;;;"}
@@ -0,0 +1,71 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var uid = require('uid');
7
+ var components_styled = require('../styled.js');
8
+ var utils = require('../../utils.js');
9
+ require('styled-components');
10
+ require('@elliemae/ds-grid');
11
+ require('@elliemae/ds-icons/CloseXsmall');
12
+ require('@elliemae/ds-icons/ChevronSmallDown');
13
+
14
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
15
+
16
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
17
+
18
+ /* eslint-disable react/prop-types */
19
+ var InputPill = /*#__PURE__*/React__default['default'].memo(function (_ref) {
20
+ var label = _ref.label,
21
+ inputPlaceholder = _ref.inputPlaceholder,
22
+ inputWidth = _ref.inputWidth,
23
+ inputRender = _ref.inputRender,
24
+ onInputChange = _ref.onInputChange,
25
+ onInputClear = _ref.onInputClear,
26
+ innerRef = _ref.innerRef;
27
+ var ref = React.useRef(null);
28
+ var InputComponent = React.useMemo(function () {
29
+ return inputRender;
30
+ }, [inputRender]);
31
+ var pillUid = React.useMemo(function () {
32
+ return "ds-pill-".concat(uid.uid());
33
+ }, []);
34
+ return /*#__PURE__*/React__default['default'].createElement(components_styled.StyledInputPillWrapper, {
35
+ className: "ds-pill-wrapper",
36
+ "data-testid": "ds-pill-wrapper",
37
+ cols: ['auto', '24px'],
38
+ inputWidth: inputWidth
39
+ }, /*#__PURE__*/React__default['default'].createElement(InputComponent, {
40
+ id: pillUid,
41
+ className: "ds-pill-focus-point",
42
+ "data-testid": "ds-pill-input",
43
+ innerRef: utils.setMultipleRefs(ref, innerRef),
44
+ value: label,
45
+ onChange: onInputChange,
46
+ placeholder: inputPlaceholder
47
+ }), label !== '' && /*#__PURE__*/React__default['default'].createElement(components_styled.StyledCloseIcon, {
48
+ "data-testid": "ds-pill-clear-icon",
49
+ tabIndex: 0,
50
+ size: "s",
51
+ onClick: function onClick(e) {
52
+ onInputClear(e);
53
+ ref.current.focus();
54
+ },
55
+ onKeyDown: function onKeyDown(e) {
56
+ if (['Enter', 'Space'].includes(e.code)) {
57
+ e.preventDefault();
58
+ onInputClear(e);
59
+ ref.current.focus();
60
+ }
61
+ },
62
+ style: {
63
+ position: 'absolute',
64
+ right: 6,
65
+ top: 4
66
+ }
67
+ }));
68
+ });
69
+
70
+ exports.InputPill = InputPill;
71
+ //# sourceMappingURL=InputPill.js.map