@elliemae/ds-form-combobox 3.15.0 → 3.16.0-next.10

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 (175) hide show
  1. package/dist/cjs/ComboBox.js +6 -6
  2. package/dist/cjs/ComboBox.js.map +2 -2
  3. package/dist/cjs/ComboBoxCTX.js.map +1 -1
  4. package/dist/cjs/config/useComboBox.js +8 -8
  5. package/dist/cjs/config/useComboBox.js.map +2 -2
  6. package/dist/cjs/config/useCorrectOptions.js +2 -2
  7. package/dist/cjs/config/useCorrectOptions.js.map +1 -1
  8. package/dist/cjs/index.js +3 -3
  9. package/dist/cjs/index.js.map +2 -2
  10. package/dist/cjs/package.json +7 -0
  11. package/dist/cjs/parts/DropdownIndicator.js +2 -2
  12. package/dist/cjs/parts/DropdownIndicator.js.map +1 -1
  13. package/dist/cjs/parts/LiveRegion.js +4 -4
  14. package/dist/cjs/parts/LiveRegion.js.map +2 -2
  15. package/dist/cjs/parts/container/Container.js +9 -9
  16. package/dist/cjs/parts/container/Container.js.map +2 -2
  17. package/dist/cjs/parts/container/index.js +1 -1
  18. package/dist/cjs/parts/container/index.js.map +1 -1
  19. package/dist/cjs/parts/container/styled.js +1 -1
  20. package/dist/cjs/parts/container/styled.js.map +1 -1
  21. package/dist/cjs/parts/controls/Controls.js +8 -8
  22. package/dist/cjs/parts/controls/Controls.js.map +1 -1
  23. package/dist/cjs/parts/controls/index.js +1 -1
  24. package/dist/cjs/parts/controls/index.js.map +1 -1
  25. package/dist/cjs/parts/controls/styled.js +1 -1
  26. package/dist/cjs/parts/controls/styled.js.map +1 -1
  27. package/dist/cjs/parts/controls/useOnPillsNavigation.js +1 -1
  28. package/dist/cjs/parts/controls/useOnPillsNavigation.js.map +1 -1
  29. package/dist/cjs/parts/controls-input/ControlsInput.js +7 -6
  30. package/dist/cjs/parts/controls-input/ControlsInput.js.map +2 -2
  31. package/dist/cjs/parts/controls-input/styled.js +1 -1
  32. package/dist/cjs/parts/controls-input/styled.js.map +1 -1
  33. package/dist/cjs/parts/controls-input/useControlsInput.js +3 -3
  34. package/dist/cjs/parts/controls-input/useControlsInput.js.map +2 -2
  35. package/dist/cjs/parts/controls-input/useKeyboardNavigation.js +3 -3
  36. package/dist/cjs/parts/controls-input/useKeyboardNavigation.js.map +1 -1
  37. package/dist/cjs/parts/controls-input/useMaskedOnChange.js +2 -2
  38. package/dist/cjs/parts/controls-input/useMaskedOnChange.js.map +1 -1
  39. package/dist/cjs/parts/header-list/HeaderList.js +4 -4
  40. package/dist/cjs/parts/header-list/HeaderList.js.map +2 -2
  41. package/dist/cjs/parts/header-list/index.js +1 -1
  42. package/dist/cjs/parts/header-list/index.js.map +1 -1
  43. package/dist/cjs/parts/header-list/useHeaderListHandlers.js +2 -2
  44. package/dist/cjs/parts/header-list/useHeaderListHandlers.js.map +1 -1
  45. package/dist/cjs/parts/menu-list/MenuList.js +6 -6
  46. package/dist/cjs/parts/menu-list/MenuList.js.map +2 -2
  47. package/dist/cjs/parts/menu-list/index.js +1 -1
  48. package/dist/cjs/parts/menu-list/index.js.map +1 -1
  49. package/dist/cjs/parts/menu-list/useItemRenderer.js +5 -5
  50. package/dist/cjs/parts/menu-list/useItemRenderer.js.map +1 -1
  51. package/dist/cjs/parts/multi-selected-values-container/MultiSelectedValuesContainer.js +4 -4
  52. package/dist/cjs/parts/multi-selected-values-container/MultiSelectedValuesContainer.js.map +1 -1
  53. package/dist/cjs/parts/multi-selected-values-container/RemovableSelectedValuePill.js +2 -2
  54. package/dist/cjs/parts/multi-selected-values-container/RemovableSelectedValuePill.js.map +1 -1
  55. package/dist/cjs/parts/multi-selected-values-container/index.js +1 -1
  56. package/dist/cjs/parts/multi-selected-values-container/index.js.map +1 -1
  57. package/dist/cjs/parts/multi-selected-values-container/useGroupPills.js +1 -1
  58. package/dist/cjs/parts/multi-selected-values-container/useGroupPills.js.map +1 -1
  59. package/dist/cjs/react-desc-prop-types.js +22 -22
  60. package/dist/cjs/react-desc-prop-types.js.map +2 -2
  61. package/dist/cjs/sharedTypes.js +1 -1
  62. package/dist/cjs/sharedTypes.js.map +1 -1
  63. package/dist/cjs/utils/listHelper.js +1 -1
  64. package/dist/cjs/utils/listHelper.js.map +1 -1
  65. package/dist/esm/ComboBox.js +5 -5
  66. package/dist/esm/ComboBox.js.map +1 -1
  67. package/dist/esm/ComboBoxCTX.js.map +1 -1
  68. package/dist/esm/config/useComboBox.js +6 -6
  69. package/dist/esm/config/useComboBox.js.map +1 -1
  70. package/dist/esm/config/useCorrectOptions.js +2 -2
  71. package/dist/esm/config/useCorrectOptions.js.map +1 -1
  72. package/dist/esm/index.js +3 -3
  73. package/dist/esm/index.js.map +1 -1
  74. package/dist/esm/package.json +7 -0
  75. package/dist/esm/parts/DropdownIndicator.js +2 -2
  76. package/dist/esm/parts/DropdownIndicator.js.map +1 -1
  77. package/dist/esm/parts/LiveRegion.js +4 -4
  78. package/dist/esm/parts/LiveRegion.js.map +2 -2
  79. package/dist/esm/parts/container/Container.js +7 -7
  80. package/dist/esm/parts/container/Container.js.map +1 -1
  81. package/dist/esm/parts/container/index.js +1 -1
  82. package/dist/esm/parts/container/index.js.map +1 -1
  83. package/dist/esm/parts/container/styled.js +1 -1
  84. package/dist/esm/parts/container/styled.js.map +1 -1
  85. package/dist/esm/parts/controls/Controls.js +8 -8
  86. package/dist/esm/parts/controls/Controls.js.map +1 -1
  87. package/dist/esm/parts/controls/index.js +1 -1
  88. package/dist/esm/parts/controls/index.js.map +1 -1
  89. package/dist/esm/parts/controls/styled.js +1 -1
  90. package/dist/esm/parts/controls/styled.js.map +1 -1
  91. package/dist/esm/parts/controls/useOnPillsNavigation.js +1 -1
  92. package/dist/esm/parts/controls/useOnPillsNavigation.js.map +1 -1
  93. package/dist/esm/parts/controls-input/ControlsInput.js +7 -6
  94. package/dist/esm/parts/controls-input/ControlsInput.js.map +2 -2
  95. package/dist/esm/parts/controls-input/styled.js +1 -1
  96. package/dist/esm/parts/controls-input/styled.js.map +1 -1
  97. package/dist/esm/parts/controls-input/useControlsInput.js +3 -3
  98. package/dist/esm/parts/controls-input/useControlsInput.js.map +2 -2
  99. package/dist/esm/parts/controls-input/useKeyboardNavigation.js +3 -3
  100. package/dist/esm/parts/controls-input/useKeyboardNavigation.js.map +1 -1
  101. package/dist/esm/parts/controls-input/useMaskedOnChange.js +2 -2
  102. package/dist/esm/parts/controls-input/useMaskedOnChange.js.map +1 -1
  103. package/dist/esm/parts/header-list/HeaderList.js +4 -4
  104. package/dist/esm/parts/header-list/HeaderList.js.map +2 -2
  105. package/dist/esm/parts/header-list/index.js +1 -1
  106. package/dist/esm/parts/header-list/index.js.map +1 -1
  107. package/dist/esm/parts/header-list/useHeaderListHandlers.js +2 -2
  108. package/dist/esm/parts/header-list/useHeaderListHandlers.js.map +1 -1
  109. package/dist/esm/parts/menu-list/MenuList.js +6 -6
  110. package/dist/esm/parts/menu-list/MenuList.js.map +2 -2
  111. package/dist/esm/parts/menu-list/index.js +1 -1
  112. package/dist/esm/parts/menu-list/index.js.map +1 -1
  113. package/dist/esm/parts/menu-list/useItemRenderer.js +5 -5
  114. package/dist/esm/parts/menu-list/useItemRenderer.js.map +1 -1
  115. package/dist/esm/parts/multi-selected-values-container/MultiSelectedValuesContainer.js +4 -4
  116. package/dist/esm/parts/multi-selected-values-container/MultiSelectedValuesContainer.js.map +1 -1
  117. package/dist/esm/parts/multi-selected-values-container/RemovableSelectedValuePill.js +2 -2
  118. package/dist/esm/parts/multi-selected-values-container/RemovableSelectedValuePill.js.map +1 -1
  119. package/dist/esm/parts/multi-selected-values-container/index.js +1 -1
  120. package/dist/esm/parts/multi-selected-values-container/index.js.map +1 -1
  121. package/dist/esm/parts/multi-selected-values-container/useGroupPills.js +1 -1
  122. package/dist/esm/parts/multi-selected-values-container/useGroupPills.js.map +1 -1
  123. package/dist/esm/react-desc-prop-types.js +1 -1
  124. package/dist/esm/react-desc-prop-types.js.map +1 -1
  125. package/dist/esm/sharedTypes.js +1 -1
  126. package/dist/esm/sharedTypes.js.map +1 -1
  127. package/dist/esm/utils/listHelper.js +1 -1
  128. package/dist/esm/utils/listHelper.js.map +1 -1
  129. package/package.json +15 -14
  130. package/dist/types/ComboBox.d.ts +0 -5
  131. package/dist/types/ComboBoxCTX.d.ts +0 -8
  132. package/dist/types/ComboboxDataTestids.d.ts +0 -14
  133. package/dist/types/config/useComboBox.d.ts +0 -3
  134. package/dist/types/config/useCorrectOptions.d.ts +0 -3
  135. package/dist/types/constants.d.ts +0 -14
  136. package/dist/types/index.d.ts +0 -3
  137. package/dist/types/parts/DropdownIndicator.d.ts +0 -1
  138. package/dist/types/parts/LiveRegion.d.ts +0 -1
  139. package/dist/types/parts/container/Container.d.ts +0 -1
  140. package/dist/types/parts/container/index.d.ts +0 -1
  141. package/dist/types/parts/controls/Controls.d.ts +0 -1
  142. package/dist/types/parts/controls/index.d.ts +0 -1
  143. package/dist/types/parts/controls/styled.d.ts +0 -13
  144. package/dist/types/parts/controls/useOnPillsNavigation.d.ts +0 -4
  145. package/dist/types/parts/controls-input/ControlsInput.d.ts +0 -1
  146. package/dist/types/parts/controls-input/styled.d.ts +0 -6
  147. package/dist/types/parts/controls-input/useControlsInput.d.ts +0 -12
  148. package/dist/types/parts/controls-input/useKeyboardNavigation.d.ts +0 -4
  149. package/dist/types/parts/controls-input/useMaskedOnChange.d.ts +0 -3
  150. package/dist/types/parts/header-list/HeaderList.d.ts +0 -1
  151. package/dist/types/parts/header-list/index.d.ts +0 -1
  152. package/dist/types/parts/header-list/styled.d.ts +0 -6
  153. package/dist/types/parts/header-list/useHeaderListHandlers.d.ts +0 -11
  154. package/dist/types/parts/menu-list/LoadingContainer.d.ts +0 -3
  155. package/dist/types/parts/menu-list/MenuList.d.ts +0 -1
  156. package/dist/types/parts/menu-list/index.d.ts +0 -1
  157. package/dist/types/parts/menu-list/styled.d.ts +0 -17
  158. package/dist/types/parts/menu-list/useItemRenderer.d.ts +0 -1
  159. package/dist/types/parts/multi-selected-values-container/MultiSelectedValuesContainer.d.ts +0 -1
  160. package/dist/types/parts/multi-selected-values-container/RemovableSelectedValuePill.d.ts +0 -5
  161. package/dist/types/parts/multi-selected-values-container/index.d.ts +0 -1
  162. package/dist/types/parts/multi-selected-values-container/useGroupPills.d.ts +0 -2
  163. package/dist/types/parts/styled.d.ts +0 -1
  164. package/dist/types/react-desc-prop-types.d.ts +0 -449
  165. package/dist/types/sharedTypes.d.ts +0 -33
  166. package/dist/types/tests/creatable.test.d.ts +0 -1
  167. package/dist/types/tests/disabled.test.d.ts +0 -1
  168. package/dist/types/tests/general.test.d.ts +0 -1
  169. package/dist/types/tests/multi-select.test.d.ts +0 -1
  170. package/dist/types/tests/onlyselectable.test.d.ts +0 -1
  171. package/dist/types/tests/single-select.test.d.ts +0 -1
  172. package/dist/types/tests/usemask.test.d.ts +0 -1
  173. package/dist/types/tests/utils.d.ts +0 -22
  174. package/dist/types/theming.d.ts +0 -6
  175. package/dist/types/utils/listHelper.d.ts +0 -14
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/parts/multi-selected-values-container/MultiSelectedValuesContainer.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useMemo, useContext } from 'react';\nimport { DSPillGroupV2, DSPillV2 } from '@elliemae/ds-pills';\nimport ComboBoxContext from '../../ComboBoxCTX';\nimport { useGroupPills } from './useGroupPills';\nimport type { DSComboboxT } from '../../react-desc-prop-types';\nimport { ComboboxDataTestid } from '../../ComboboxDataTestids';\nimport { RemovableSelectedValuePill } from './RemovableSelectedValuePill';\nexport const MultiSelectedValuesContainer = (): JSX.Element => {\n const {\n props: { selectedValues, disabled },\n pillGroupRef,\n } = useContext(ComboBoxContext);\n\n // this is always an array because logic in controls component\n const multiSelectedValue = selectedValues as DSComboboxT.ItemOption[];\n const correctPillsToShow = useGroupPills();\n\n return useMemo(\n () => (\n <div\n style={{ width: multiSelectedValue.length > 0 ? 'max-content' : '0px' }}\n data-testid={ComboboxDataTestid.SELECTED_VALUES}\n >\n <DSPillGroupV2 innerRef={pillGroupRef}>\n {multiSelectedValue.length > 0 &&\n multiSelectedValue\n .slice(0, correctPillsToShow)\n .map((pill) => <RemovableSelectedValuePill key={pill.dsId} pill={pill} />)}\n {multiSelectedValue.length > 0 && correctPillsToShow !== multiSelectedValue.length && (\n <DSPillV2\n size=\"s\"\n labelTruncated={false}\n key=\"grouped\"\n label={`+${multiSelectedValue.length - correctPillsToShow}`}\n type=\"value\"\n disabled={disabled}\n />\n )}\n </DSPillGroupV2>\n </div>\n ),\n\n [pillGroupRef, multiSelectedValue, correctPillsToShow, disabled],\n );\n};\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useMemo, useContext } from 'react';\nimport { DSPillGroupV2, DSPillV2 } from '@elliemae/ds-pills';\nimport ComboBoxContext from '../../ComboBoxCTX.js';\nimport { useGroupPills } from './useGroupPills.js';\nimport type { DSComboboxT } from '../../react-desc-prop-types.js';\nimport { ComboboxDataTestid } from '../../ComboboxDataTestids.js';\nimport { RemovableSelectedValuePill } from './RemovableSelectedValuePill.js';\nexport const MultiSelectedValuesContainer = (): JSX.Element => {\n const {\n props: { selectedValues, disabled },\n pillGroupRef,\n } = useContext(ComboBoxContext);\n\n // this is always an array because logic in controls component\n const multiSelectedValue = selectedValues as DSComboboxT.ItemOption[];\n const correctPillsToShow = useGroupPills();\n\n return useMemo(\n () => (\n <div\n style={{ width: multiSelectedValue.length > 0 ? 'max-content' : '0px' }}\n data-testid={ComboboxDataTestid.SELECTED_VALUES}\n >\n <DSPillGroupV2 innerRef={pillGroupRef}>\n {multiSelectedValue.length > 0 &&\n multiSelectedValue\n .slice(0, correctPillsToShow)\n .map((pill) => <RemovableSelectedValuePill key={pill.dsId} pill={pill} />)}\n {multiSelectedValue.length > 0 && correctPillsToShow !== multiSelectedValue.length && (\n <DSPillV2\n size=\"s\"\n labelTruncated={false}\n key=\"grouped\"\n label={`+${multiSelectedValue.length - correctPillsToShow}`}\n type=\"value\"\n disabled={disabled}\n />\n )}\n </DSPillGroupV2>\n </div>\n ),\n\n [pillGroupRef, multiSelectedValue, correctPillsToShow, disabled],\n );\n};\n"],
5
5
  "mappings": "AAAA,YAAY,WAAW;ACuBf,SAIqB,KAJrB;AAvBR,SAAgB,SAAS,kBAAkB;AAC3C,SAAS,eAAe,gBAAgB;AACxC,OAAO,qBAAqB;AAC5B,SAAS,qBAAqB;AAE9B,SAAS,0BAA0B;AACnC,SAAS,kCAAkC;AACpC,MAAM,+BAA+B,MAAmB;AAC7D,QAAM;AAAA,IACJ,OAAO,EAAE,gBAAgB,SAAS;AAAA,IAClC;AAAA,EACF,IAAI,WAAW,eAAe;AAG9B,QAAM,qBAAqB;AAC3B,QAAM,qBAAqB,cAAc;AAEzC,SAAO;AAAA,IACL,MACE;AAAA,MAAC;AAAA;AAAA,QACC,OAAO,EAAE,OAAO,mBAAmB,SAAS,IAAI,gBAAgB,MAAM;AAAA,QACtE,eAAa,mBAAmB;AAAA,QAEhC,+BAAC,iBAAc,UAAU,cACtB;AAAA,6BAAmB,SAAS,KAC3B,mBACG,MAAM,GAAG,kBAAkB,EAC3B,IAAI,CAAC,SAAS,oBAAC,8BAA2C,QAAX,KAAK,IAAkB,CAAE;AAAA,UAC5E,mBAAmB,SAAS,KAAK,uBAAuB,mBAAmB,UAC1E;AAAA,YAAC;AAAA;AAAA,cACC,MAAK;AAAA,cACL,gBAAgB;AAAA,cAEhB,OAAO,IAAI,mBAAmB,SAAS;AAAA,cACvC,MAAK;AAAA,cACL;AAAA;AAAA,YAHI;AAAA,UAIN;AAAA,WAEJ;AAAA;AAAA,IACF;AAAA,IAGF,CAAC,cAAc,oBAAoB,oBAAoB,QAAQ;AAAA,EACjE;AACF;",
6
6
  "names": []
7
7
  }
@@ -2,8 +2,8 @@ import * as React from "react";
2
2
  import { jsx } from "react/jsx-runtime";
3
3
  import { useContext } from "react";
4
4
  import { DSPillV2 } from "@elliemae/ds-pills";
5
- import ComboBoxContext from "../../ComboBoxCTX";
6
- import { getSuggestedValueOnChange } from "../../utils/listHelper";
5
+ import ComboBoxContext from "../../ComboBoxCTX.js";
6
+ import { getSuggestedValueOnChange } from "../../utils/listHelper.js";
7
7
  const RemovableSelectedValuePill = (props) => {
8
8
  const { pill } = props;
9
9
  const {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/parts/multi-selected-values-container/RemovableSelectedValuePill.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useContext } from 'react';\nimport { DSPillV2 } from '@elliemae/ds-pills';\nimport ComboBoxContext from '../../ComboBoxCTX';\nimport type { DSComboboxT } from '../../react-desc-prop-types';\nimport { getSuggestedValueOnChange } from '../../utils/listHelper';\nexport const RemovableSelectedValuePill: React.ComponentType<{ pill: DSComboboxT.ItemOption }> = (props) => {\n const { pill } = props;\n const {\n props: { onChange, isNonClearable, disabled, selectedValues },\n internalRef,\n } = useContext(ComboBoxContext);\n\n return (\n <DSPillV2\n size=\"s\"\n key={pill.value}\n label={pill.label}\n disabled={disabled}\n type={disabled || isNonClearable ? 'value' : 'removable'}\n tabIndex={-1}\n onRemove={(e: React.KeyboardEvent) => {\n // preventing the menu to be opened\n e.stopPropagation();\n onChange(getSuggestedValueOnChange(pill, selectedValues), pill, e);\n internalRef.current?.focus();\n }}\n />\n );\n};\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useContext } from 'react';\nimport { DSPillV2 } from '@elliemae/ds-pills';\nimport ComboBoxContext from '../../ComboBoxCTX.js';\nimport type { DSComboboxT } from '../../react-desc-prop-types.js';\nimport { getSuggestedValueOnChange } from '../../utils/listHelper.js';\nexport const RemovableSelectedValuePill: React.ComponentType<{ pill: DSComboboxT.ItemOption }> = (props) => {\n const { pill } = props;\n const {\n props: { onChange, isNonClearable, disabled, selectedValues },\n internalRef,\n } = useContext(ComboBoxContext);\n\n return (\n <DSPillV2\n size=\"s\"\n key={pill.value}\n label={pill.label}\n disabled={disabled}\n type={disabled || isNonClearable ? 'value' : 'removable'}\n tabIndex={-1}\n onRemove={(e: React.KeyboardEvent) => {\n // preventing the menu to be opened\n e.stopPropagation();\n onChange(getSuggestedValueOnChange(pill, selectedValues), pill, e);\n internalRef.current?.focus();\n }}\n />\n );\n};\n"],
5
5
  "mappings": "AAAA,YAAY,WAAW;ACanB;AAbJ,SAAgB,kBAAkB;AAClC,SAAS,gBAAgB;AACzB,OAAO,qBAAqB;AAE5B,SAAS,iCAAiC;AACnC,MAAM,6BAAoF,CAAC,UAAU;AAC1G,QAAM,EAAE,KAAK,IAAI;AACjB,QAAM;AAAA,IACJ,OAAO,EAAE,UAAU,gBAAgB,UAAU,eAAe;AAAA,IAC5D;AAAA,EACF,IAAI,WAAW,eAAe;AAE9B,SACE;AAAA,IAAC;AAAA;AAAA,MACC,MAAK;AAAA,MAEL,OAAO,KAAK;AAAA,MACZ;AAAA,MACA,MAAM,YAAY,iBAAiB,UAAU;AAAA,MAC7C,UAAU;AAAA,MACV,UAAU,CAAC,MAA2B;AAEpC,UAAE,gBAAgB;AAClB,iBAAS,0BAA0B,MAAM,cAAc,GAAG,MAAM,CAAC;AACjE,oBAAY,SAAS,MAAM;AAAA,MAC7B;AAAA;AAAA,IAVK,KAAK;AAAA,EAWZ;AAEJ;",
6
6
  "names": []
7
7
  }
@@ -1,5 +1,5 @@
1
1
  import * as React from "react";
2
- import { MultiSelectedValuesContainer } from "./MultiSelectedValuesContainer";
2
+ import { MultiSelectedValuesContainer } from "./MultiSelectedValuesContainer.js";
3
3
  export {
4
4
  MultiSelectedValuesContainer
5
5
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/parts/multi-selected-values-container/index.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export { MultiSelectedValuesContainer } from './MultiSelectedValuesContainer';\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export { MultiSelectedValuesContainer } from './MultiSelectedValuesContainer.js';\n"],
5
5
  "mappings": "AAAA,YAAY,WAAW;ACAvB,SAAS,oCAAoC;",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  import * as React from "react";
2
2
  import { useContext, useEffect, useState, useLayoutEffect } from "react";
3
3
  import { useOnElementResize } from "@elliemae/ds-utilities";
4
- import { ComboBoxContext } from "../../ComboBoxCTX";
4
+ import { ComboBoxContext } from "../../ComboBoxCTX.js";
5
5
  const getGroupedPillWidth = (remainingPills) => {
6
6
  if (remainingPills === 0)
7
7
  return 0;
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/parts/multi-selected-values-container/useGroupPills.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { useContext, useEffect, useState, useLayoutEffect } from 'react';\nimport { useOnElementResize } from '@elliemae/ds-utilities';\nimport { ComboBoxContext } from '../../ComboBoxCTX';\nimport type { DSComboboxT } from '../../react-desc-prop-types';\n\nconst getGroupedPillWidth = (remainingPills: number): number => {\n if (remainingPills === 0) return 0;\n const digits = remainingPills.toString().length;\n return 8 * (digits - 1) + 31;\n};\nconst useGroupPills = (): number => {\n const {\n props: { selectedValues, isNonClearable, disabled, innerRef },\n selectedOptionsRef,\n controlsWrapperRef,\n pillGroupRef,\n } = useContext(ComboBoxContext);\n\n const multiSelectedValues = selectedValues as DSComboboxT.ItemOption[];\n\n // 30 represent 30 pills maximum to calculate the grouped pill. this fix the load time issue\n // when combobox is receiving a huge amount of options.\n const selectedValuesLength = Math.min(30, multiSelectedValues.length);\n\n const [pillsToShow, setPillsToShow] = useState(selectedValuesLength);\n const { width } = useOnElementResize(controlsWrapperRef);\n const { width: widthInput } = useOnElementResize(innerRef || null);\n useEffect(() => {\n if (selectedValuesLength !== pillsToShow) {\n setPillsToShow(selectedValuesLength);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [selectedValuesLength, width, widthInput]);\n\n useLayoutEffect(() => {\n if (selectedOptionsRef.current && pillGroupRef.current) {\n if (pillGroupRef.current) pillGroupRef.current.style.width = 'max-content';\n let lastPillFit = -1;\n let currentWidth = 0;\n const referenceWidth = selectedOptionsRef.current.offsetWidth;\n const pills: HTMLDivElement[] = [\n ...pillGroupRef.current.querySelectorAll(\n disabled || isNonClearable ? '.ds-pill-wrapper-value' : '.ds-pill-wrapper-removable',\n ),\n ] as HTMLDivElement[];\n const pillsWidth = pills.map((pill) => pill?.offsetWidth);\n pillsWidth.forEach((pillWidth, idx) => {\n currentWidth += pillWidth;\n if (currentWidth + getGroupedPillWidth(selectedValuesLength - idx - 1) <= referenceWidth) {\n lastPillFit = idx;\n }\n });\n\n if (!(selectedValuesLength > 0 && pillsToShow !== selectedValuesLength)) {\n const nextPillsToShow = lastPillFit + 1;\n\n if (nextPillsToShow !== pillsToShow) {\n setPillsToShow(nextPillsToShow);\n }\n }\n\n if (pillGroupRef.current) pillGroupRef.current.style.width = 'fit-content';\n }\n }, [\n selectedOptionsRef,\n innerRef,\n multiSelectedValues,\n pillsToShow,\n pillGroupRef,\n width,\n widthInput,\n disabled,\n selectedValuesLength,\n isNonClearable,\n ]);\n\n return pillsToShow || 1;\n};\n\nexport { useGroupPills };\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { useContext, useEffect, useState, useLayoutEffect } from 'react';\nimport { useOnElementResize } from '@elliemae/ds-utilities';\nimport { ComboBoxContext } from '../../ComboBoxCTX.js';\nimport type { DSComboboxT } from '../../react-desc-prop-types.js';\n\nconst getGroupedPillWidth = (remainingPills: number): number => {\n if (remainingPills === 0) return 0;\n const digits = remainingPills.toString().length;\n return 8 * (digits - 1) + 31;\n};\nconst useGroupPills = (): number => {\n const {\n props: { selectedValues, isNonClearable, disabled, innerRef },\n selectedOptionsRef,\n controlsWrapperRef,\n pillGroupRef,\n } = useContext(ComboBoxContext);\n\n const multiSelectedValues = selectedValues as DSComboboxT.ItemOption[];\n\n // 30 represent 30 pills maximum to calculate the grouped pill. this fix the load time issue\n // when combobox is receiving a huge amount of options.\n const selectedValuesLength = Math.min(30, multiSelectedValues.length);\n\n const [pillsToShow, setPillsToShow] = useState(selectedValuesLength);\n const { width } = useOnElementResize(controlsWrapperRef);\n const { width: widthInput } = useOnElementResize(innerRef || null);\n useEffect(() => {\n if (selectedValuesLength !== pillsToShow) {\n setPillsToShow(selectedValuesLength);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [selectedValuesLength, width, widthInput]);\n\n useLayoutEffect(() => {\n if (selectedOptionsRef.current && pillGroupRef.current) {\n if (pillGroupRef.current) pillGroupRef.current.style.width = 'max-content';\n let lastPillFit = -1;\n let currentWidth = 0;\n const referenceWidth = selectedOptionsRef.current.offsetWidth;\n const pills: HTMLDivElement[] = [\n ...pillGroupRef.current.querySelectorAll(\n disabled || isNonClearable ? '.ds-pill-wrapper-value' : '.ds-pill-wrapper-removable',\n ),\n ] as HTMLDivElement[];\n const pillsWidth = pills.map((pill) => pill?.offsetWidth);\n pillsWidth.forEach((pillWidth, idx) => {\n currentWidth += pillWidth;\n if (currentWidth + getGroupedPillWidth(selectedValuesLength - idx - 1) <= referenceWidth) {\n lastPillFit = idx;\n }\n });\n\n if (!(selectedValuesLength > 0 && pillsToShow !== selectedValuesLength)) {\n const nextPillsToShow = lastPillFit + 1;\n\n if (nextPillsToShow !== pillsToShow) {\n setPillsToShow(nextPillsToShow);\n }\n }\n\n if (pillGroupRef.current) pillGroupRef.current.style.width = 'fit-content';\n }\n }, [\n selectedOptionsRef,\n innerRef,\n multiSelectedValues,\n pillsToShow,\n pillGroupRef,\n width,\n widthInput,\n disabled,\n selectedValuesLength,\n isNonClearable,\n ]);\n\n return pillsToShow || 1;\n};\n\nexport { useGroupPills };\n"],
5
5
  "mappings": "AAAA,YAAY,WAAW;ACAvB,SAAS,YAAY,WAAW,UAAU,uBAAuB;AACjE,SAAS,0BAA0B;AACnC,SAAS,uBAAuB;AAGhC,MAAM,sBAAsB,CAAC,mBAAmC;AAC9D,MAAI,mBAAmB;AAAG,WAAO;AACjC,QAAM,SAAS,eAAe,SAAS,EAAE;AACzC,SAAO,KAAK,SAAS,KAAK;AAC5B;AACA,MAAM,gBAAgB,MAAc;AAClC,QAAM;AAAA,IACJ,OAAO,EAAE,gBAAgB,gBAAgB,UAAU,SAAS;AAAA,IAC5D;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI,WAAW,eAAe;AAE9B,QAAM,sBAAsB;AAI5B,QAAM,uBAAuB,KAAK,IAAI,IAAI,oBAAoB,MAAM;AAEpE,QAAM,CAAC,aAAa,cAAc,IAAI,SAAS,oBAAoB;AACnE,QAAM,EAAE,MAAM,IAAI,mBAAmB,kBAAkB;AACvD,QAAM,EAAE,OAAO,WAAW,IAAI,mBAAmB,YAAY,IAAI;AACjE,YAAU,MAAM;AACd,QAAI,yBAAyB,aAAa;AACxC,qBAAe,oBAAoB;AAAA,IACrC;AAAA,EAEF,GAAG,CAAC,sBAAsB,OAAO,UAAU,CAAC;AAE5C,kBAAgB,MAAM;AACpB,QAAI,mBAAmB,WAAW,aAAa,SAAS;AACtD,UAAI,aAAa;AAAS,qBAAa,QAAQ,MAAM,QAAQ;AAC7D,UAAI,cAAc;AAClB,UAAI,eAAe;AACnB,YAAM,iBAAiB,mBAAmB,QAAQ;AAClD,YAAM,QAA0B;AAAA,QAC9B,GAAG,aAAa,QAAQ;AAAA,UACtB,YAAY,iBAAiB,2BAA2B;AAAA,QAC1D;AAAA,MACF;AACA,YAAM,aAAa,MAAM,IAAI,CAAC,SAAS,MAAM,WAAW;AACxD,iBAAW,QAAQ,CAAC,WAAW,QAAQ;AACrC,wBAAgB;AAChB,YAAI,eAAe,oBAAoB,uBAAuB,MAAM,CAAC,KAAK,gBAAgB;AACxF,wBAAc;AAAA,QAChB;AAAA,MACF,CAAC;AAED,UAAI,EAAE,uBAAuB,KAAK,gBAAgB,uBAAuB;AACvE,cAAM,kBAAkB,cAAc;AAEtC,YAAI,oBAAoB,aAAa;AACnC,yBAAe,eAAe;AAAA,QAChC;AAAA,MACF;AAEA,UAAI,aAAa;AAAS,qBAAa,QAAQ,MAAM,QAAQ;AAAA,IAC/D;AAAA,EACF,GAAG;AAAA,IACD;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AAED,SAAO,eAAe;AACxB;",
6
6
  "names": []
7
7
  }
@@ -1,5 +1,5 @@
1
1
  import * as React from "react";
2
- import { globalAttributesPropTypes, PropTypes } from "@elliemae/ds-utilities";
2
+ import { globalAttributesPropTypes, PropTypes } from "@elliemae/ds-props-helpers";
3
3
  function noop(..._args) {
4
4
  }
5
5
  const ComboboxPropTypes = {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../scripts/build/transpile/react-shim.js", "../../src/react-desc-prop-types.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable @typescript-eslint/no-unused-vars */\n/* eslint-disable no-unused-vars */\nimport type React from 'react';\nimport { globalAttributesPropTypes, PropTypes } from '@elliemae/ds-utilities';\nimport type { DSMaskT } from '@elliemae/ds-form-helpers-mask-hooks';\nexport function noop<T extends unknown[]>(..._args: T): void {}\n\nexport declare namespace DSComboboxT {\n export interface CommonItemOptions {\n dsId: string;\n disabled?: boolean;\n render?: React.ComponentType<unknown>;\n }\n export interface ItemSeparatorOptions extends CommonItemOptions {\n type: 'separator';\n }\n\n export interface ItemSectionOptions extends CommonItemOptions {\n type: 'section';\n label: string;\n }\n\n export interface ItemOption extends CommonItemOptions {\n value: string;\n label: string;\n type: 'option';\n }\n\n export interface ItemCreatableOption extends CommonItemOptions {\n label: string;\n type: 'creatable';\n }\n\n export type OptionTypes = ItemOption | ItemSectionOptions | ItemSeparatorOptions | ItemCreatableOption;\n\n export type SelectedOptionsT = ItemOption[] | ItemOption | null;\n export interface PropsOptional {\n inputMinWidth?: number;\n menuMinWidth?: number;\n menuMaxHeight?: number;\n placeholder?: string;\n autoFocus?: boolean;\n filteredOptions: OptionTypes[];\n isMenuOpen?: boolean;\n onMenuChange?: (\n state: boolean,\n reason: string,\n e: React.KeyboardEvent | React.MouseEvent | React.ChangeEvent<HTMLInputElement>,\n ) => void;\n onCreate?: (label: string) => void;\n onFilter?: (newOptions: OptionTypes[], inputValue?: string) => void;\n onCancel?: () => void;\n onSelectAll?: (suggestedValue: OptionTypes[] | [], event: React.MouseEvent | React.KeyboardEvent) => null;\n onKeyDown?: (e: React.KeyboardEvent<HTMLInputElement>, value: ItemOption) => void;\n zIndex?: number;\n isLoading?: boolean;\n }\n\n export interface RequiredProps {\n allOptions: OptionTypes[];\n selectedValues: SelectedOptionsT;\n onChange: (\n suggestedValue: ItemOption | OptionTypes[] | null,\n selectedOption: ItemOption,\n event: React.MouseEvent | React.KeyboardEvent,\n ) => void;\n }\n export interface DefaultProps {\n startPlacementPreference: string;\n placementOrderPreference: string[];\n hasError: boolean;\n inline: boolean;\n withoutPortal: boolean;\n isNonClearable: boolean;\n disabled: boolean;\n noOptionsMessage: string;\n innerRef: React.RefObject<HTMLInputElement>;\n useMask: DSMaskT.Hook | typeof noop;\n onlySelectable: boolean;\n }\n\n export interface Props extends Partial<DefaultProps>, RequiredProps, PropsOptional {}\n\n export interface InternalProps extends DefaultProps, RequiredProps, PropsOptional {}\n}\n\nexport const ComboboxPropTypes = {\n ...globalAttributesPropTypes,\n placeholder: PropTypes.string.description(\"input's placeholder value\").defaultValue(''),\n allOptions: PropTypes.oneOfType([PropTypes.array, PropTypes.object])\n .isRequired.description('List of original options')\n .defaultValue([]),\n filteredOptions: PropTypes.oneOfType([PropTypes.array, PropTypes.object])\n .description('List of filtered options to show in the menu based on the current internal input filter value')\n .defaultValue([]),\n selectedValues: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.object), PropTypes.object]).isRequired.description(\n 'Array of option or single option selected',\n ),\n disabled: PropTypes.bool.description('wheter or not the input is disabled').defaultValue('false'),\n autoFocus: PropTypes.bool.description('Whether the combo box uses auto focus or not').defaultValue('false'),\n hasError: PropTypes.bool.description('Whether the combo box has error or not').defaultValue('false'),\n noOptionsMessage: PropTypes.string\n .description('Custome message to be display when no matches found after filtering')\n .defaultValue('No Matches Found'),\n onChange: PropTypes.func.isRequired\n .description('function triggered when an option is selected it will send the options selected')\n .defaultValue('() => {}'),\n onFilter: PropTypes.func.description('function triggered when user type in the combobox input').defaultValue(''),\n onCreate: PropTypes.func\n .description(\n 'function triggered when user select \"create\" a new item whenever is not a match in the all option list',\n )\n .defaultValue(''),\n onCancel: PropTypes.func.description('function triggered when user press ESC key').defaultValue('() => {}'),\n onMenuChange: PropTypes.func\n .description('function triggered when user open or close the menu list')\n .defaultValue('() => {}'),\n inputMinWidth: PropTypes.any.description('Minimum width for the combo box input controller').defaultValue(undefined),\n menuMinWidth: PropTypes.any.description('Minimum width for the dropdown menu').defaultValue(undefined),\n menuMaxHeight: PropTypes.any.description('Maximum height for the dropdown menu').defaultValue(undefined),\n withoutPortal: PropTypes.bool\n .description('Whether the combobox menu is rendered in a portal or not')\n .defaultValue(false),\n zIndex: PropTypes.number.description('The z-index of the combobox menu').defaultValue(10),\n innerRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({ current: PropTypes.any })]).description(\n 'reference to the component',\n ),\n onlySelectable: PropTypes.bool.description('filtering is disabled'),\n};\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable @typescript-eslint/no-unused-vars */\n/* eslint-disable no-unused-vars */\nimport type React from 'react';\nimport { globalAttributesPropTypes, PropTypes } from '@elliemae/ds-props-helpers';\nimport type { DSMaskT } from '@elliemae/ds-form-helpers-mask-hooks';\nexport function noop<T extends unknown[]>(..._args: T): void {}\n\nexport declare namespace DSComboboxT {\n export interface CommonItemOptions {\n dsId: string;\n disabled?: boolean;\n render?: React.ComponentType<unknown>;\n }\n export interface ItemSeparatorOptions extends CommonItemOptions {\n type: 'separator';\n }\n\n export interface ItemSectionOptions extends CommonItemOptions {\n type: 'section';\n label: string;\n }\n\n export interface ItemOption extends CommonItemOptions {\n value: string;\n label: string;\n type: 'option';\n }\n\n export interface ItemCreatableOption extends CommonItemOptions {\n label: string;\n type: 'creatable';\n }\n\n export type OptionTypes = ItemOption | ItemSectionOptions | ItemSeparatorOptions | ItemCreatableOption;\n\n export type SelectedOptionsT = ItemOption[] | ItemOption | null;\n export interface PropsOptional {\n inputMinWidth?: number;\n menuMinWidth?: number;\n menuMaxHeight?: number;\n placeholder?: string;\n autoFocus?: boolean;\n filteredOptions: OptionTypes[];\n isMenuOpen?: boolean;\n onMenuChange?: (\n state: boolean,\n reason: string,\n e: React.KeyboardEvent | React.MouseEvent | React.ChangeEvent<HTMLInputElement>,\n ) => void;\n onCreate?: (label: string) => void;\n onFilter?: (newOptions: OptionTypes[], inputValue?: string) => void;\n onCancel?: () => void;\n onSelectAll?: (suggestedValue: OptionTypes[] | [], event: React.MouseEvent | React.KeyboardEvent) => null;\n onKeyDown?: (e: React.KeyboardEvent<HTMLInputElement>, value: ItemOption) => void;\n zIndex?: number;\n isLoading?: boolean;\n }\n\n export interface RequiredProps {\n allOptions: OptionTypes[];\n selectedValues: SelectedOptionsT;\n onChange: (\n suggestedValue: ItemOption | OptionTypes[] | null,\n selectedOption: ItemOption,\n event: React.MouseEvent | React.KeyboardEvent,\n ) => void;\n }\n export interface DefaultProps {\n startPlacementPreference: string;\n placementOrderPreference: string[];\n hasError: boolean;\n inline: boolean;\n withoutPortal: boolean;\n isNonClearable: boolean;\n disabled: boolean;\n noOptionsMessage: string;\n innerRef: React.RefObject<HTMLInputElement>;\n useMask: DSMaskT.Hook | typeof noop;\n onlySelectable: boolean;\n }\n\n export interface Props extends Partial<DefaultProps>, RequiredProps, PropsOptional {}\n\n export interface InternalProps extends DefaultProps, RequiredProps, PropsOptional {}\n}\n\nexport const ComboboxPropTypes = {\n ...globalAttributesPropTypes,\n placeholder: PropTypes.string.description(\"input's placeholder value\").defaultValue(''),\n allOptions: PropTypes.oneOfType([PropTypes.array, PropTypes.object])\n .isRequired.description('List of original options')\n .defaultValue([]),\n filteredOptions: PropTypes.oneOfType([PropTypes.array, PropTypes.object])\n .description('List of filtered options to show in the menu based on the current internal input filter value')\n .defaultValue([]),\n selectedValues: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.object), PropTypes.object]).isRequired.description(\n 'Array of option or single option selected',\n ),\n disabled: PropTypes.bool.description('wheter or not the input is disabled').defaultValue('false'),\n autoFocus: PropTypes.bool.description('Whether the combo box uses auto focus or not').defaultValue('false'),\n hasError: PropTypes.bool.description('Whether the combo box has error or not').defaultValue('false'),\n noOptionsMessage: PropTypes.string\n .description('Custome message to be display when no matches found after filtering')\n .defaultValue('No Matches Found'),\n onChange: PropTypes.func.isRequired\n .description('function triggered when an option is selected it will send the options selected')\n .defaultValue('() => {}'),\n onFilter: PropTypes.func.description('function triggered when user type in the combobox input').defaultValue(''),\n onCreate: PropTypes.func\n .description(\n 'function triggered when user select \"create\" a new item whenever is not a match in the all option list',\n )\n .defaultValue(''),\n onCancel: PropTypes.func.description('function triggered when user press ESC key').defaultValue('() => {}'),\n onMenuChange: PropTypes.func\n .description('function triggered when user open or close the menu list')\n .defaultValue('() => {}'),\n inputMinWidth: PropTypes.any.description('Minimum width for the combo box input controller').defaultValue(undefined),\n menuMinWidth: PropTypes.any.description('Minimum width for the dropdown menu').defaultValue(undefined),\n menuMaxHeight: PropTypes.any.description('Maximum height for the dropdown menu').defaultValue(undefined),\n withoutPortal: PropTypes.bool\n .description('Whether the combobox menu is rendered in a portal or not')\n .defaultValue(false),\n zIndex: PropTypes.number.description('The z-index of the combobox menu').defaultValue(10),\n innerRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({ current: PropTypes.any })]).description(\n 'reference to the component',\n ),\n onlySelectable: PropTypes.bool.description('filtering is disabled'),\n};\n"],
5
5
  "mappings": "AAAA,YAAY,WAAW;ACGvB,SAAS,2BAA2B,iBAAiB;AAE9C,SAAS,QAA6B,OAAgB;AAAC;AAiFvD,MAAM,oBAAoB;AAAA,EAC/B,GAAG;AAAA,EACH,aAAa,UAAU,OAAO,YAAY,2BAA2B,EAAE,aAAa,EAAE;AAAA,EACtF,YAAY,UAAU,UAAU,CAAC,UAAU,OAAO,UAAU,MAAM,CAAC,EAChE,WAAW,YAAY,0BAA0B,EACjD,aAAa,CAAC,CAAC;AAAA,EAClB,iBAAiB,UAAU,UAAU,CAAC,UAAU,OAAO,UAAU,MAAM,CAAC,EACrE,YAAY,+FAA+F,EAC3G,aAAa,CAAC,CAAC;AAAA,EAClB,gBAAgB,UAAU,UAAU,CAAC,UAAU,QAAQ,UAAU,MAAM,GAAG,UAAU,MAAM,CAAC,EAAE,WAAW;AAAA,IACtG;AAAA,EACF;AAAA,EACA,UAAU,UAAU,KAAK,YAAY,qCAAqC,EAAE,aAAa,OAAO;AAAA,EAChG,WAAW,UAAU,KAAK,YAAY,8CAA8C,EAAE,aAAa,OAAO;AAAA,EAC1G,UAAU,UAAU,KAAK,YAAY,wCAAwC,EAAE,aAAa,OAAO;AAAA,EACnG,kBAAkB,UAAU,OACzB,YAAY,qEAAqE,EACjF,aAAa,kBAAkB;AAAA,EAClC,UAAU,UAAU,KAAK,WACtB,YAAY,iFAAiF,EAC7F,aAAa,UAAU;AAAA,EAC1B,UAAU,UAAU,KAAK,YAAY,yDAAyD,EAAE,aAAa,EAAE;AAAA,EAC/G,UAAU,UAAU,KACjB;AAAA,IACC;AAAA,EACF,EACC,aAAa,EAAE;AAAA,EAClB,UAAU,UAAU,KAAK,YAAY,4CAA4C,EAAE,aAAa,UAAU;AAAA,EAC1G,cAAc,UAAU,KACrB,YAAY,0DAA0D,EACtE,aAAa,UAAU;AAAA,EAC1B,eAAe,UAAU,IAAI,YAAY,kDAAkD,EAAE,aAAa,MAAS;AAAA,EACnH,cAAc,UAAU,IAAI,YAAY,qCAAqC,EAAE,aAAa,MAAS;AAAA,EACrG,eAAe,UAAU,IAAI,YAAY,sCAAsC,EAAE,aAAa,MAAS;AAAA,EACvG,eAAe,UAAU,KACtB,YAAY,0DAA0D,EACtE,aAAa,KAAK;AAAA,EACrB,QAAQ,UAAU,OAAO,YAAY,kCAAkC,EAAE,aAAa,EAAE;AAAA,EACxF,UAAU,UAAU,UAAU,CAAC,UAAU,MAAM,UAAU,MAAM,EAAE,SAAS,UAAU,IAAI,CAAC,CAAC,CAAC,EAAE;AAAA,IAC3F;AAAA,EACF;AAAA,EACA,gBAAgB,UAAU,KAAK,YAAY,uBAAuB;AACpE;",
6
6
  "names": []
7
7
  }
@@ -1,5 +1,5 @@
1
1
  import * as React from "react";
2
- import { MENU_OPTION_TYPES } from "./constants";
2
+ import { MENU_OPTION_TYPES } from "./constants.js";
3
3
  const isSeparator = (el) => el?.type === MENU_OPTION_TYPES.SEPARATOR;
4
4
  const isOption = (el) => el?.type === MENU_OPTION_TYPES.OPTION;
5
5
  export {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../scripts/build/transpile/react-shim.js", "../../src/sharedTypes.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import type React from 'react';\nimport type { useVirtual } from 'react-virtual';\nimport type { DSComboboxT } from './react-desc-prop-types';\nimport { MENU_OPTION_TYPES } from './constants';\nexport declare namespace DSComboboxInternalsT {\n export interface ComboBoxContextT {\n props: DSComboboxT.InternalProps;\n internalRef: React.RefObject<HTMLInputElement>;\n virtualListHelpers?: ReturnType<typeof useVirtual>;\n menuState: boolean;\n setShowPopover: React.Dispatch<React.SetStateAction<boolean>>;\n referenceElement: HTMLElement | null;\n setReferenceElement: React.Dispatch<React.SetStateAction<HTMLElement | null>>;\n pillGroupRef: React.RefObject<HTMLDivElement>;\n scrollOptionIntoView: (dsId: string) => void;\n setHasFocus: React.Dispatch<React.SetStateAction<boolean>>;\n hasFocus: boolean;\n listRef: React.RefObject<HTMLDivElement>;\n wrapperListRef: React.RefObject<HTMLDivElement>;\n inputValue: string;\n setInputValue: React.Dispatch<React.SetStateAction<string>>;\n selectedOptionsRef: React.RefObject<HTMLDivElement>;\n controlsWrapperRef: React.RefObject<HTMLDivElement>;\n selectAllCheckboxRef: React.RefObject<HTMLInputElement>;\n toggleSelectionButtonRef: React.RefObject<HTMLButtonElement>;\n focusOptionIdx: string;\n setFocusOptionIdx: React.Dispatch<React.SetStateAction<string>>;\n showSelectedOptions: boolean;\n setShowSelectedOptions: React.Dispatch<React.SetStateAction<boolean>>;\n setMenuState: (\n newState: boolean,\n reason?: string,\n e?: React.KeyboardEvent | React.MouseEvent | React.ChangeEvent<HTMLInputElement>,\n ) => void;\n }\n}\n\nexport const isSeparator = (el: DSComboboxT.OptionTypes | undefined): el is DSComboboxT.ItemSeparatorOptions =>\n el?.type === MENU_OPTION_TYPES.SEPARATOR;\n\nexport const isOption = (el: DSComboboxT.OptionTypes | undefined): el is DSComboboxT.ItemOption =>\n el?.type === MENU_OPTION_TYPES.OPTION;\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import type React from 'react';\nimport type { useVirtual } from 'react-virtual';\nimport type { DSComboboxT } from './react-desc-prop-types.js';\nimport { MENU_OPTION_TYPES } from './constants.js';\nexport declare namespace DSComboboxInternalsT {\n export interface ComboBoxContextT {\n props: DSComboboxT.InternalProps;\n internalRef: React.RefObject<HTMLInputElement>;\n virtualListHelpers?: ReturnType<typeof useVirtual>;\n menuState: boolean;\n setShowPopover: React.Dispatch<React.SetStateAction<boolean>>;\n referenceElement: HTMLElement | null;\n setReferenceElement: React.Dispatch<React.SetStateAction<HTMLElement | null>>;\n pillGroupRef: React.RefObject<HTMLDivElement>;\n scrollOptionIntoView: (dsId: string) => void;\n setHasFocus: React.Dispatch<React.SetStateAction<boolean>>;\n hasFocus: boolean;\n listRef: React.RefObject<HTMLDivElement>;\n wrapperListRef: React.RefObject<HTMLDivElement>;\n inputValue: string;\n setInputValue: React.Dispatch<React.SetStateAction<string>>;\n selectedOptionsRef: React.RefObject<HTMLDivElement>;\n controlsWrapperRef: React.RefObject<HTMLDivElement>;\n selectAllCheckboxRef: React.RefObject<HTMLInputElement>;\n toggleSelectionButtonRef: React.RefObject<HTMLButtonElement>;\n focusOptionIdx: string;\n setFocusOptionIdx: React.Dispatch<React.SetStateAction<string>>;\n showSelectedOptions: boolean;\n setShowSelectedOptions: React.Dispatch<React.SetStateAction<boolean>>;\n setMenuState: (\n newState: boolean,\n reason?: string,\n e?: React.KeyboardEvent | React.MouseEvent | React.ChangeEvent<HTMLInputElement>,\n ) => void;\n }\n}\n\nexport const isSeparator = (el: DSComboboxT.OptionTypes | undefined): el is DSComboboxT.ItemSeparatorOptions =>\n el?.type === MENU_OPTION_TYPES.SEPARATOR;\n\nexport const isOption = (el: DSComboboxT.OptionTypes | undefined): el is DSComboboxT.ItemOption =>\n el?.type === MENU_OPTION_TYPES.OPTION;\n"],
5
5
  "mappings": "AAAA,YAAY,WAAW;ACGvB,SAAS,yBAAyB;AAkC3B,MAAM,cAAc,CAAC,OAC1B,IAAI,SAAS,kBAAkB;AAE1B,MAAM,WAAW,CAAC,OACvB,IAAI,SAAS,kBAAkB;",
6
6
  "names": []
7
7
  }
@@ -1,5 +1,5 @@
1
1
  import * as React from "react";
2
- import { MENU_OPTION_TYPES } from "../constants";
2
+ import { MENU_OPTION_TYPES } from "../constants.js";
3
3
  const getSelectableOptions = (options) => options.filter((option) => option.type === MENU_OPTION_TYPES.OPTION && !option.disabled);
4
4
  const getOptions = (options) => options.filter((option) => option.type === MENU_OPTION_TYPES.OPTION);
5
5
  const isSelectedValueEmpty = (value) => Array.isArray(value) ? value.length === 0 : !value;
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/utils/listHelper.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import type { DSComboboxT } from '../react-desc-prop-types';\nimport { MENU_OPTION_TYPES } from '../constants';\nexport const getSelectableOptions = (options: Array<DSComboboxT.OptionTypes>): Array<DSComboboxT.OptionTypes> =>\n options.filter((option) => option.type === MENU_OPTION_TYPES.OPTION && !option.disabled);\n\nexport const getOptions = (options: Array<DSComboboxT.OptionTypes>): Array<DSComboboxT.OptionTypes> =>\n options.filter((option) => option.type === MENU_OPTION_TYPES.OPTION);\n\nexport const isSelectedValueEmpty = (value: DSComboboxT.SelectedOptionsT): boolean =>\n Array.isArray(value) ? value.length === 0 : !value;\n\nexport const isSelectedValueMultiple = (value: DSComboboxT.SelectedOptionsT): boolean => Array.isArray(value);\n\nexport const isSelected = (value: DSComboboxT.SelectedOptionsT, activeOption: DSComboboxT.ItemOption): boolean => {\n if (isSelectedValueMultiple(value)) {\n const multiValue = value as DSComboboxT.ItemOption[];\n return multiValue.some((item) => item?.value === activeOption?.value);\n }\n const singleValue = value as DSComboboxT.ItemOption;\n return singleValue?.value === activeOption.value;\n};\n\nexport const findInCircularList = (\n list: DSComboboxT.OptionTypes[],\n from: number,\n criteria: (item: DSComboboxT.OptionTypes) => boolean,\n step = 1,\n // eslint-disable-next-line max-params\n): number => {\n for (\n let i = (from + step + list.length) % list.length;\n i !== from && from > -1;\n i = (i + step + list.length) % list.length\n ) {\n if (criteria(list[i])) return i;\n }\n return from; // return same item\n};\n\nexport const getLastValueSelected = (selectedValues: DSComboboxT.SelectedOptionsT) => {\n if (Array.isArray(selectedValues)) {\n return selectedValues[selectedValues.length - 1];\n }\n return selectedValues;\n};\n\nexport const getFirstOption = (\n options: DSComboboxT.OptionTypes[],\n selectedValues: DSComboboxT.SelectedOptionsT,\n): string => {\n const lastValue = getLastValueSelected(selectedValues);\n if (lastValue) return lastValue.dsId;\n\n for (let i = 0; i < options.length; i += 1)\n if (!['section', 'separator'].includes(options[i].type) && !options[i].disabled) {\n return options[i].dsId;\n }\n // list of disabled item results return ''\n return '';\n};\n\nexport const getSuggestedValueOnChange = (\n selectedOption: DSComboboxT.ItemOption,\n selectedValues: DSComboboxT.SelectedOptionsT,\n isNonClearable?: boolean,\n) => {\n if (Array.isArray(selectedValues)) {\n const isFound = selectedValues.find((item) => item.type === 'option' && item.value === selectedOption.value);\n if (isFound) {\n if (isNonClearable) return selectedValues;\n return selectedValues.filter((item) => item.type === 'option' && item.value !== selectedOption.value);\n }\n return [...selectedValues, selectedOption];\n }\n if (selectedValues && selectedValues.dsId === selectedOption.dsId) {\n if (isNonClearable) return selectedOption;\n return null;\n }\n return selectedOption;\n};\n\nexport const filterOptions = (inputValue: string, options: DSComboboxT.OptionTypes[]) => {\n if (!inputValue) return options;\n return options.filter(\n (option) =>\n option.type === MENU_OPTION_TYPES.OPTION && option.label.toLowerCase().includes(inputValue.toLowerCase()),\n );\n};\n\nexport const selectedValuesWithSections = (\n optionsToParse: DSComboboxT.OptionTypes[],\n multiSelectedValue: DSComboboxT.ItemOption[],\n) => {\n const items = [] as DSComboboxT.OptionTypes[];\n\n if (optionsToParse)\n optionsToParse.forEach((option) => {\n // const isSelectedValue = multiSelectedValue.find((item) => item?.dsId === option.dsId);\n if (option.type === MENU_OPTION_TYPES.OPTION && isSelected(multiSelectedValue, option)) {\n items.push(option);\n }\n\n if (option.type === MENU_OPTION_TYPES.SECTION) {\n if (items[items.length - 1]?.type === MENU_OPTION_TYPES.SECTION) {\n items[items.length - 1] = option;\n } else {\n items.push(option);\n }\n }\n });\n if (items[items.length - 1]?.type === MENU_OPTION_TYPES.SECTION) {\n items.pop();\n }\n\n return items;\n};\n\nexport const getFilteredOptionsSelected = (\n filteredOption: DSComboboxT.OptionTypes[],\n selectedValues: DSComboboxT.ItemOption[],\n) => filteredOption.filter((option) => option.type === MENU_OPTION_TYPES.OPTION && isSelected(selectedValues, option));\n\nexport const scrollIfNeeded = (\n elem: HTMLElement,\n options = { behavior: 'smooth', block: 'end', inline: 'nearest' } as ScrollIntoViewOptions | undefined,\n) => {\n const bounding = elem.getBoundingClientRect();\n if (\n !(\n bounding.top >= 0 &&\n bounding.left >= 0 &&\n bounding.bottom <= (window.innerHeight || document.documentElement.clientHeight) &&\n bounding.right <= (window.innerWidth || document.documentElement.clientWidth)\n )\n )\n elem.scrollIntoView(options);\n};\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import type { DSComboboxT } from '../react-desc-prop-types.js';\nimport { MENU_OPTION_TYPES } from '../constants.js';\nexport const getSelectableOptions = (options: Array<DSComboboxT.OptionTypes>): Array<DSComboboxT.OptionTypes> =>\n options.filter((option) => option.type === MENU_OPTION_TYPES.OPTION && !option.disabled);\n\nexport const getOptions = (options: Array<DSComboboxT.OptionTypes>): Array<DSComboboxT.OptionTypes> =>\n options.filter((option) => option.type === MENU_OPTION_TYPES.OPTION);\n\nexport const isSelectedValueEmpty = (value: DSComboboxT.SelectedOptionsT): boolean =>\n Array.isArray(value) ? value.length === 0 : !value;\n\nexport const isSelectedValueMultiple = (value: DSComboboxT.SelectedOptionsT): boolean => Array.isArray(value);\n\nexport const isSelected = (value: DSComboboxT.SelectedOptionsT, activeOption: DSComboboxT.ItemOption): boolean => {\n if (isSelectedValueMultiple(value)) {\n const multiValue = value as DSComboboxT.ItemOption[];\n return multiValue.some((item) => item?.value === activeOption?.value);\n }\n const singleValue = value as DSComboboxT.ItemOption;\n return singleValue?.value === activeOption.value;\n};\n\nexport const findInCircularList = (\n list: DSComboboxT.OptionTypes[],\n from: number,\n criteria: (item: DSComboboxT.OptionTypes) => boolean,\n step = 1,\n // eslint-disable-next-line max-params\n): number => {\n for (\n let i = (from + step + list.length) % list.length;\n i !== from && from > -1;\n i = (i + step + list.length) % list.length\n ) {\n if (criteria(list[i])) return i;\n }\n return from; // return same item\n};\n\nexport const getLastValueSelected = (selectedValues: DSComboboxT.SelectedOptionsT) => {\n if (Array.isArray(selectedValues)) {\n return selectedValues[selectedValues.length - 1];\n }\n return selectedValues;\n};\n\nexport const getFirstOption = (\n options: DSComboboxT.OptionTypes[],\n selectedValues: DSComboboxT.SelectedOptionsT,\n): string => {\n const lastValue = getLastValueSelected(selectedValues);\n if (lastValue) return lastValue.dsId;\n\n for (let i = 0; i < options.length; i += 1)\n if (!['section', 'separator'].includes(options[i].type) && !options[i].disabled) {\n return options[i].dsId;\n }\n // list of disabled item results return ''\n return '';\n};\n\nexport const getSuggestedValueOnChange = (\n selectedOption: DSComboboxT.ItemOption,\n selectedValues: DSComboboxT.SelectedOptionsT,\n isNonClearable?: boolean,\n) => {\n if (Array.isArray(selectedValues)) {\n const isFound = selectedValues.find((item) => item.type === 'option' && item.value === selectedOption.value);\n if (isFound) {\n if (isNonClearable) return selectedValues;\n return selectedValues.filter((item) => item.type === 'option' && item.value !== selectedOption.value);\n }\n return [...selectedValues, selectedOption];\n }\n if (selectedValues && selectedValues.dsId === selectedOption.dsId) {\n if (isNonClearable) return selectedOption;\n return null;\n }\n return selectedOption;\n};\n\nexport const filterOptions = (inputValue: string, options: DSComboboxT.OptionTypes[]) => {\n if (!inputValue) return options;\n return options.filter(\n (option) =>\n option.type === MENU_OPTION_TYPES.OPTION && option.label.toLowerCase().includes(inputValue.toLowerCase()),\n );\n};\n\nexport const selectedValuesWithSections = (\n optionsToParse: DSComboboxT.OptionTypes[],\n multiSelectedValue: DSComboboxT.ItemOption[],\n) => {\n const items = [] as DSComboboxT.OptionTypes[];\n\n if (optionsToParse)\n optionsToParse.forEach((option) => {\n // const isSelectedValue = multiSelectedValue.find((item) => item?.dsId === option.dsId);\n if (option.type === MENU_OPTION_TYPES.OPTION && isSelected(multiSelectedValue, option)) {\n items.push(option);\n }\n\n if (option.type === MENU_OPTION_TYPES.SECTION) {\n if (items[items.length - 1]?.type === MENU_OPTION_TYPES.SECTION) {\n items[items.length - 1] = option;\n } else {\n items.push(option);\n }\n }\n });\n if (items[items.length - 1]?.type === MENU_OPTION_TYPES.SECTION) {\n items.pop();\n }\n\n return items;\n};\n\nexport const getFilteredOptionsSelected = (\n filteredOption: DSComboboxT.OptionTypes[],\n selectedValues: DSComboboxT.ItemOption[],\n) => filteredOption.filter((option) => option.type === MENU_OPTION_TYPES.OPTION && isSelected(selectedValues, option));\n\nexport const scrollIfNeeded = (\n elem: HTMLElement,\n options = { behavior: 'smooth', block: 'end', inline: 'nearest' } as ScrollIntoViewOptions | undefined,\n) => {\n const bounding = elem.getBoundingClientRect();\n if (\n !(\n bounding.top >= 0 &&\n bounding.left >= 0 &&\n bounding.bottom <= (window.innerHeight || document.documentElement.clientHeight) &&\n bounding.right <= (window.innerWidth || document.documentElement.clientWidth)\n )\n )\n elem.scrollIntoView(options);\n};\n"],
5
5
  "mappings": "AAAA,YAAY,WAAW;ACCvB,SAAS,yBAAyB;AAC3B,MAAM,uBAAuB,CAAC,YACnC,QAAQ,OAAO,CAAC,WAAW,OAAO,SAAS,kBAAkB,UAAU,CAAC,OAAO,QAAQ;AAElF,MAAM,aAAa,CAAC,YACzB,QAAQ,OAAO,CAAC,WAAW,OAAO,SAAS,kBAAkB,MAAM;AAE9D,MAAM,uBAAuB,CAAC,UACnC,MAAM,QAAQ,KAAK,IAAI,MAAM,WAAW,IAAI,CAAC;AAExC,MAAM,0BAA0B,CAAC,UAAiD,MAAM,QAAQ,KAAK;AAErG,MAAM,aAAa,CAAC,OAAqC,iBAAkD;AAChH,MAAI,wBAAwB,KAAK,GAAG;AAClC,UAAM,aAAa;AACnB,WAAO,WAAW,KAAK,CAAC,SAAS,MAAM,UAAU,cAAc,KAAK;AAAA,EACtE;AACA,QAAM,cAAc;AACpB,SAAO,aAAa,UAAU,aAAa;AAC7C;AAEO,MAAM,qBAAqB,CAChC,MACA,MACA,UACA,OAAO,MAEI;AACX,WACM,KAAK,OAAO,OAAO,KAAK,UAAU,KAAK,QAC3C,MAAM,QAAQ,OAAO,IACrB,KAAK,IAAI,OAAO,KAAK,UAAU,KAAK,QACpC;AACA,QAAI,SAAS,KAAK,EAAE;AAAG,aAAO;AAAA,EAChC;AACA,SAAO;AACT;AAEO,MAAM,uBAAuB,CAAC,mBAAiD;AACpF,MAAI,MAAM,QAAQ,cAAc,GAAG;AACjC,WAAO,eAAe,eAAe,SAAS;AAAA,EAChD;AACA,SAAO;AACT;AAEO,MAAM,iBAAiB,CAC5B,SACA,mBACW;AACX,QAAM,YAAY,qBAAqB,cAAc;AACrD,MAAI;AAAW,WAAO,UAAU;AAEhC,WAAS,IAAI,GAAG,IAAI,QAAQ,QAAQ,KAAK;AACvC,QAAI,CAAC,CAAC,WAAW,WAAW,EAAE,SAAS,QAAQ,GAAG,IAAI,KAAK,CAAC,QAAQ,GAAG,UAAU;AAC/E,aAAO,QAAQ,GAAG;AAAA,IACpB;AAEF,SAAO;AACT;AAEO,MAAM,4BAA4B,CACvC,gBACA,gBACA,mBACG;AACH,MAAI,MAAM,QAAQ,cAAc,GAAG;AACjC,UAAM,UAAU,eAAe,KAAK,CAAC,SAAS,KAAK,SAAS,YAAY,KAAK,UAAU,eAAe,KAAK;AAC3G,QAAI,SAAS;AACX,UAAI;AAAgB,eAAO;AAC3B,aAAO,eAAe,OAAO,CAAC,SAAS,KAAK,SAAS,YAAY,KAAK,UAAU,eAAe,KAAK;AAAA,IACtG;AACA,WAAO,CAAC,GAAG,gBAAgB,cAAc;AAAA,EAC3C;AACA,MAAI,kBAAkB,eAAe,SAAS,eAAe,MAAM;AACjE,QAAI;AAAgB,aAAO;AAC3B,WAAO;AAAA,EACT;AACA,SAAO;AACT;AAEO,MAAM,gBAAgB,CAAC,YAAoB,YAAuC;AACvF,MAAI,CAAC;AAAY,WAAO;AACxB,SAAO,QAAQ;AAAA,IACb,CAAC,WACC,OAAO,SAAS,kBAAkB,UAAU,OAAO,MAAM,YAAY,EAAE,SAAS,WAAW,YAAY,CAAC;AAAA,EAC5G;AACF;AAEO,MAAM,6BAA6B,CACxC,gBACA,uBACG;AACH,QAAM,QAAQ,CAAC;AAEf,MAAI;AACF,mBAAe,QAAQ,CAAC,WAAW;AAEjC,UAAI,OAAO,SAAS,kBAAkB,UAAU,WAAW,oBAAoB,MAAM,GAAG;AACtF,cAAM,KAAK,MAAM;AAAA,MACnB;AAEA,UAAI,OAAO,SAAS,kBAAkB,SAAS;AAC7C,YAAI,MAAM,MAAM,SAAS,IAAI,SAAS,kBAAkB,SAAS;AAC/D,gBAAM,MAAM,SAAS,KAAK;AAAA,QAC5B,OAAO;AACL,gBAAM,KAAK,MAAM;AAAA,QACnB;AAAA,MACF;AAAA,IACF,CAAC;AACH,MAAI,MAAM,MAAM,SAAS,IAAI,SAAS,kBAAkB,SAAS;AAC/D,UAAM,IAAI;AAAA,EACZ;AAEA,SAAO;AACT;AAEO,MAAM,6BAA6B,CACxC,gBACA,mBACG,eAAe,OAAO,CAAC,WAAW,OAAO,SAAS,kBAAkB,UAAU,WAAW,gBAAgB,MAAM,CAAC;AAE9G,MAAM,iBAAiB,CAC5B,MACA,UAAU,EAAE,UAAU,UAAU,OAAO,OAAO,QAAQ,UAAU,MAC7D;AACH,QAAM,WAAW,KAAK,sBAAsB;AAC5C,MACE,EACE,SAAS,OAAO,KAChB,SAAS,QAAQ,KACjB,SAAS,WAAW,OAAO,eAAe,SAAS,gBAAgB,iBACnE,SAAS,UAAU,OAAO,cAAc,SAAS,gBAAgB;AAGnE,SAAK,eAAe,OAAO;AAC/B;",
6
6
  "names": []
7
7
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elliemae/ds-form-combobox",
3
- "version": "3.15.0",
3
+ "version": "3.16.0-next.10",
4
4
  "license": "MIT",
5
5
  "description": "ICE MT - Dimsum - Controlled Form Combobox",
6
6
  "files": [
@@ -37,17 +37,18 @@
37
37
  "dependencies": {
38
38
  "react-virtual": "~2.10.4",
39
39
  "uid": "~2.0.0",
40
- "@elliemae/ds-button": "3.15.0",
41
- "@elliemae/ds-circular-progress-indicator": "3.15.0",
42
- "@elliemae/ds-form-checkbox": "3.15.0",
43
- "@elliemae/ds-grid": "3.15.0",
44
- "@elliemae/ds-icons": "3.15.0",
45
- "@elliemae/ds-menu-items": "3.15.0",
46
- "@elliemae/ds-pills": "3.15.0",
47
- "@elliemae/ds-popperjs": "3.15.0",
48
- "@elliemae/ds-system": "3.15.0",
49
- "@elliemae/ds-truncated-tooltip-text": "3.15.0",
50
- "@elliemae/ds-utilities": "3.15.0"
40
+ "@elliemae/ds-button": "3.16.0-next.10",
41
+ "@elliemae/ds-circular-progress-indicator": "3.16.0-next.10",
42
+ "@elliemae/ds-grid": "3.16.0-next.10",
43
+ "@elliemae/ds-icons": "3.16.0-next.10",
44
+ "@elliemae/ds-pills": "3.16.0-next.10",
45
+ "@elliemae/ds-props-helpers": "3.16.0-next.10",
46
+ "@elliemae/ds-system": "3.16.0-next.10",
47
+ "@elliemae/ds-truncated-tooltip-text": "3.16.0-next.10",
48
+ "@elliemae/ds-utilities": "3.16.0-next.10",
49
+ "@elliemae/ds-form-checkbox": "3.16.0-next.10",
50
+ "@elliemae/ds-menu-items": "3.16.0-next.10",
51
+ "@elliemae/ds-popperjs": "3.16.0-next.10"
51
52
  },
52
53
  "devDependencies": {
53
54
  "@elliemae/pui-theme": "~2.6.0",
@@ -57,7 +58,7 @@
57
58
  "@testing-library/user-event": "~13.5.0",
58
59
  "styled-components": "~5.3.6",
59
60
  "styled-system": "~5.1.5",
60
- "@elliemae/ds-form-helpers-mask-hooks": "3.15.0"
61
+ "@elliemae/ds-form-helpers-mask-hooks": "3.16.0-next.10"
61
62
  },
62
63
  "peerDependencies": {
63
64
  "@elliemae/pui-theme": "~2.6.0",
@@ -77,7 +78,7 @@
77
78
  "eslint:fix": "eslint --ext='.js,.jsx,.test.js,.ts,.tsx' --fix --config='../../.eslintrc.js' src/",
78
79
  "dts": "node ../../scripts/dts.mjs",
79
80
  "build": "cross-env NODE_ENV=production node ../../scripts/build/build.mjs",
80
- "dev:build": "pnpm --filter {.}... build && pnpm --filter {.}... dts",
81
+ "dev:build": "pnpm --filter {.}... build",
81
82
  "dev:install": "pnpm --filter {.}... i --no-lockfile && pnpm run dev:build",
82
83
  "checkDeps": "npx -yes ../ds-codemods check-missing-packages --projectFolderPath=\"./\" --ignorePackagesGlobPattern=\"\" --ignoreFilesGlobPattern=\"**/test-ables/*,**/tests/*\""
83
84
  }
@@ -1,5 +0,0 @@
1
- import React from 'react';
2
- import type { DSComboboxT } from './react-desc-prop-types';
3
- declare const DSComboBox: React.ComponentType<DSComboboxT.Props>;
4
- declare const DSComboBoxWithSchema: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").DocumentedReactComponent<DSComboboxT.Props>;
5
- export { DSComboBox, DSComboBoxWithSchema, DSComboBox as DSComboBoxV3 };
@@ -1,8 +0,0 @@
1
- /// <reference types="react" />
2
- import type { DSComboboxT } from './react-desc-prop-types';
3
- import type { DSComboboxInternalsT } from './sharedTypes';
4
- export declare function noop<T extends unknown[]>(..._args: T): void;
5
- export declare const defaultProps: DSComboboxT.DefaultProps;
6
- /** Context for cross component communication */
7
- export declare const ComboBoxContext: import("react").Context<DSComboboxInternalsT.ComboBoxContextT>;
8
- export default ComboBoxContext;
@@ -1,14 +0,0 @@
1
- export declare const ComboboxDataTestid: {
2
- MULTISELECT: {
3
- HEADER_LIST: string;
4
- SHOW_SELECTED_OPTIONS_TOGGLE: string;
5
- };
6
- CONTROLS_WRAPPER: string;
7
- CONTAINER: string;
8
- INPUT: string;
9
- LIST: string;
10
- SELECTED_VALUES: string;
11
- DROPDOWN: string;
12
- OPTION: string;
13
- ALLY_SELECTED_VALUES: string;
14
- };
@@ -1,3 +0,0 @@
1
- import type { DSComboboxT } from '../react-desc-prop-types';
2
- import type { DSComboboxInternalsT } from '../sharedTypes';
3
- export declare const useComboBox: (props: DSComboboxT.Props) => DSComboboxInternalsT.ComboBoxContextT;
@@ -1,3 +0,0 @@
1
- import type { DSComboboxT } from '../react-desc-prop-types';
2
- declare const useCorrectOptions: (propsWithDefaults: DSComboboxT.Props, inputValue: string, showSelectedOptions: boolean) => DSComboboxT.OptionTypes[];
3
- export { useCorrectOptions };
@@ -1,14 +0,0 @@
1
- export declare const MENU_OPTION_TYPES: {
2
- readonly OPTION: "option";
3
- readonly SECTION: "section";
4
- readonly SEPARATOR: "separator";
5
- };
6
- export declare const INTERNAL_MENU_OPTION_TYPES: {
7
- readonly CREATABLE: "creatable";
8
- };
9
- export declare const MENU_CONTROL_REASONS: {
10
- SELECT_OPTION: string;
11
- CLOSE: string;
12
- OPEN: string;
13
- BLUR: string;
14
- };
@@ -1,3 +0,0 @@
1
- export * from './ComboBox';
2
- export * from './theming';
3
- export * from './ComboboxDataTestids';
@@ -1 +0,0 @@
1
- export declare const DropdownIndicator: () => JSX.Element;
@@ -1 +0,0 @@
1
- export declare const LiveRegion: () => JSX.Element;
@@ -1 +0,0 @@
1
- export declare const Container: () => JSX.Element;
@@ -1 +0,0 @@
1
- export { Container } from './Container';
@@ -1 +0,0 @@
1
- export declare const Controls: () => JSX.Element;
@@ -1 +0,0 @@
1
- export { Controls } from './Controls';
@@ -1,13 +0,0 @@
1
- /// <reference types="react" />
2
- interface StyledControlsWrapperT {
3
- hasError: boolean;
4
- inline: boolean;
5
- minWidth?: number;
6
- disabled: boolean;
7
- }
8
- export declare const StyledControlsWrapper: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("@elliemae/ds-grid/dist/types/react-desc-prop-types").DSGridT.Props & import("react").RefAttributes<HTMLDivElement>>, import("@elliemae/ds-system").Theme, StyledControlsWrapperT, never>;
9
- export declare const StyledSelection: import("styled-components").StyledComponent<keyof JSX.IntrinsicElements, import("@elliemae/ds-system").Theme, Record<string, unknown> & object, never>;
10
- export declare const StyledHeaderActionsWrapper: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("@elliemae/ds-grid/dist/types/react-desc-prop-types").DSGridT.Props & import("react").RefAttributes<HTMLDivElement>>, import("@elliemae/ds-system").Theme, object, never>;
11
- export declare const StyleDropdownIndicator: import("styled-components").StyledComponent<keyof JSX.IntrinsicElements, import("@elliemae/ds-system").Theme, Record<string, unknown> & object, never>;
12
- export declare const StyleHeaderActionsSeparator: import("styled-components").StyledComponent<keyof JSX.IntrinsicElements, import("@elliemae/ds-system").Theme, Record<string, unknown> & Partial<StyledControlsWrapperT>, never>;
13
- export {};
@@ -1,4 +0,0 @@
1
- import type React from 'react';
2
- export declare const useOnPillsNavigation: () => {
3
- onKeyDownPills: React.KeyboardEventHandler<HTMLInputElement>;
4
- };
@@ -1 +0,0 @@
1
- export declare const ControlsInput: () => JSX.Element;
@@ -1,6 +0,0 @@
1
- export declare const StyledInput: import("styled-components").StyledComponent<"input", import("@elliemae/ds-system").Theme, {
2
- withoutCaret: boolean;
3
- }, never>;
4
- export declare const StyledInputPlaceHolder: import("styled-components").StyledComponent<keyof JSX.IntrinsicElements, import("@elliemae/ds-system").Theme, Record<string, unknown> & object, never>;
5
- export declare const StyledInputWidthReference: import("styled-components").StyledComponent<keyof JSX.IntrinsicElements, import("@elliemae/ds-system").Theme, Record<string, unknown> & object, never>;
6
- export declare const StyledInputWrapper: import("styled-components").StyledComponent<"div", import("@elliemae/ds-system").Theme, object, never>;
@@ -1,12 +0,0 @@
1
- /// <reference types="react" />
2
- interface UseControlsInputT {
3
- handleOnBlur: () => void;
4
- handleOnChange?: React.ChangeEventHandler<HTMLInputElement>;
5
- handleOnFocus: React.FocusEventHandler<HTMLInputElement>;
6
- showPlaceholder: string | null | undefined;
7
- spanReferenceText: string | undefined;
8
- width: number;
9
- spanReference: React.Ref<HTMLSpanElement>;
10
- }
11
- declare const useControlsInput: () => UseControlsInputT;
12
- export { useControlsInput };
@@ -1,4 +0,0 @@
1
- /// <reference types="react" />
2
- export declare const useKeyboardNavigation: () => {
3
- onInputKeyDown: import("react").KeyboardEventHandler<HTMLInputElement>;
4
- };
@@ -1,3 +0,0 @@
1
- /// <reference types="react" />
2
- declare const useMaskedOnChange: () => import("react").ChangeEventHandler<HTMLInputElement>;
3
- export { useMaskedOnChange };
@@ -1 +0,0 @@
1
- export declare const HeaderList: () => JSX.Element;
@@ -1 +0,0 @@
1
- export { HeaderList } from './HeaderList';
@@ -1,6 +0,0 @@
1
- /// <reference types="react" />
2
- export declare const StyledHeaderListWrapper: import("styled-components").StyledComponent<keyof JSX.IntrinsicElements, import("@elliemae/ds-system").Theme, Record<string, unknown> & object, never>;
3
- export declare const StyledButtonSelection: import("styled-components").StyledComponent<import("react").ComponentType<import("@elliemae/ds-button").DSButtonT.Props>, import("@elliemae/ds-system").Theme, object, never>;
4
- export declare const StyledSelectedItems: import("styled-components").StyledComponent<keyof JSX.IntrinsicElements, import("@elliemae/ds-system").Theme, Record<string, unknown> & object, never>;
5
- export declare const StyledNoOptionsSelected: import("styled-components").StyledComponent<keyof JSX.IntrinsicElements, import("@elliemae/ds-system").Theme, Record<string, unknown> & object, never>;
6
- export declare const StyledSelectAllCheckbox: import("styled-components").StyledComponent<keyof JSX.IntrinsicElements, import("@elliemae/ds-system").Theme, Record<string, unknown> & object, never>;
@@ -1,11 +0,0 @@
1
- import type React from 'react';
2
- declare const useHeaderListHandlers: () => {
3
- handleKeyDown: (e: React.KeyboardEvent) => void;
4
- handleToggleSelectedValuesFilter: React.MouseEventHandler<Element>;
5
- handleFilterSelectionBtnOnTab: (e: React.KeyboardEvent) => void;
6
- handleOnMouseDown: (e: React.MouseEvent) => void;
7
- handleCheckAllOnTab: (e: React.KeyboardEvent) => void;
8
- handleSelectAllCheckboxChange: (e: React.MouseEvent | React.KeyboardEvent) => void;
9
- checkboxStatus: boolean | "mixed";
10
- };
11
- export { useHeaderListHandlers };
@@ -1,3 +0,0 @@
1
- declare const LoadingContainer: () => JSX.Element;
2
- export { LoadingContainer };
3
- export default LoadingContainer;
@@ -1 +0,0 @@
1
- export declare const MenuList: () => JSX.Element;
@@ -1 +0,0 @@
1
- export { MenuList } from './MenuList';
@@ -1,17 +0,0 @@
1
- interface StyledListWrapperT {
2
- minWidth: number | string;
3
- maxHeight: number;
4
- width: number | string;
5
- inline?: boolean;
6
- }
7
- export declare const StyledListWrapper: import("styled-components").StyledComponent<keyof JSX.IntrinsicElements, import("@elliemae/ds-system").Theme, Record<string, unknown> & StyledListWrapperT, never>;
8
- export declare const StyledList: import("styled-components").StyledComponent<keyof JSX.IntrinsicElements, import("@elliemae/ds-system").Theme, Record<string, unknown> & object, never>;
9
- export declare const StyledVirtualListWrapper: import("styled-components").StyledComponent<keyof JSX.IntrinsicElements, import("@elliemae/ds-system").Theme, Record<string, unknown> & {
10
- inline: boolean | undefined;
11
- maxHeight: number;
12
- withHeader: boolean;
13
- }, never>;
14
- export declare const StyledCreatableLabel: import("styled-components").StyledComponent<keyof JSX.IntrinsicElements, import("@elliemae/ds-system").Theme, Record<string, unknown> & object, never>;
15
- export declare const StyledCreatableValue: import("styled-components").StyledComponent<keyof JSX.IntrinsicElements, import("@elliemae/ds-system").Theme, Record<string, unknown> & object, never>;
16
- export declare const StyledNoResultsWrapper: import("styled-components").StyledComponent<keyof JSX.IntrinsicElements, import("@elliemae/ds-system").Theme, Record<string, unknown> & object, never>;
17
- export {};
@@ -1 +0,0 @@
1
- export declare const useItemRenderer: () => Array<JSX.Element> | null;
@@ -1 +0,0 @@
1
- export declare const MultiSelectedValuesContainer: () => JSX.Element;
@@ -1,5 +0,0 @@
1
- import React from 'react';
2
- import type { DSComboboxT } from '../../react-desc-prop-types';
3
- export declare const RemovableSelectedValuePill: React.ComponentType<{
4
- pill: DSComboboxT.ItemOption;
5
- }>;
@@ -1 +0,0 @@
1
- export { MultiSelectedValuesContainer } from './MultiSelectedValuesContainer';
@@ -1,2 +0,0 @@
1
- declare const useGroupPills: () => number;
2
- export { useGroupPills };
@@ -1 +0,0 @@
1
- export declare const StyledA11ySelectedValues: import("styled-components").StyledComponent<keyof JSX.IntrinsicElements, import("@elliemae/ds-system").Theme, Record<string, unknown> & object, never>;