@tsed/react-formio 3.0.0-alpha.1 → 3.0.0-alpha.11

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 (626) hide show
  1. package/dist/atoms/icon/Icon.d.ts +6 -0
  2. package/dist/atoms/icon/Icon.js +12 -0
  3. package/dist/atoms/icon/Icon.js.map +1 -0
  4. package/dist/chunks/_commonjsHelpers.js +7 -0
  5. package/dist/chunks/_commonjsHelpers.js.map +1 -0
  6. package/dist/chunks/index.js +16 -18
  7. package/dist/chunks/index.js.map +1 -1
  8. package/dist/chunks/index.module.js +56 -0
  9. package/dist/chunks/index.module.js.map +1 -0
  10. package/dist/chunks/react-select-animated.esm.js +3513 -0
  11. package/dist/chunks/react-select-animated.esm.js.map +1 -0
  12. package/dist/hooks/keyboard.constants.d.ts +38 -0
  13. package/dist/hooks/keyboard.constants.js +7 -0
  14. package/dist/hooks/keyboard.constants.js.map +1 -0
  15. package/dist/hooks/useKeyboardControls.d.ts +12 -0
  16. package/dist/hooks/useKeyboardControls.js +35 -0
  17. package/dist/hooks/useKeyboardControls.js.map +1 -0
  18. package/dist/index.d.ts +0 -6
  19. package/dist/index.js +12 -105
  20. package/dist/index.js.map +1 -1
  21. package/dist/interfaces/ActionType.d.ts +23 -0
  22. package/dist/interfaces/ActionType.js +2 -0
  23. package/dist/interfaces/ActionType.js.map +1 -0
  24. package/dist/interfaces/ComponentType.d.ts +2 -0
  25. package/dist/interfaces/ComponentType.js +2 -0
  26. package/dist/interfaces/ComponentType.js.map +1 -0
  27. package/dist/interfaces/FormOptions.d.ts +3 -0
  28. package/dist/interfaces/{FormSchema.d.ts → FormType.d.ts} +3 -3
  29. package/dist/interfaces/FormType.js +2 -0
  30. package/dist/interfaces/FormType.js.map +1 -0
  31. package/dist/interfaces/Operation.d.ts +13 -4
  32. package/dist/interfaces/{RoleSchema.d.ts → RoleType.d.ts} +1 -1
  33. package/dist/interfaces/RoleType.js +2 -0
  34. package/dist/interfaces/RoleType.js.map +1 -0
  35. package/dist/interfaces/SubmissionType.d.ts +29 -0
  36. package/dist/interfaces/SubmissionType.js +2 -0
  37. package/dist/interfaces/SubmissionType.js.map +1 -0
  38. package/dist/interfaces/index.d.ts +5 -4
  39. package/dist/molecules/alert/Alert.d.ts +6 -0
  40. package/dist/{components/alert/alert.component.js → molecules/alert/Alert.js} +10 -7
  41. package/dist/molecules/alert/Alert.js.map +1 -0
  42. package/dist/molecules/button/Button.d.ts +21 -0
  43. package/dist/molecules/button/Button.js +51 -0
  44. package/dist/molecules/button/Button.js.map +1 -0
  45. package/dist/molecules/card/Card.js +14 -0
  46. package/dist/molecules/card/Card.js.map +1 -0
  47. package/dist/molecules/forms/form-control/FormControl.d.ts +17 -0
  48. package/dist/molecules/forms/form-control/FormControl.js +51 -0
  49. package/dist/molecules/forms/form-control/FormControl.js.map +1 -0
  50. package/dist/molecules/forms/input-tags/InputTags.d.ts +2 -0
  51. package/dist/molecules/forms/input-tags/InputTags.interface.d.ts +7 -0
  52. package/dist/molecules/forms/input-tags/InputTags.interface.js +2 -0
  53. package/dist/molecules/forms/input-tags/InputTags.interface.js.map +1 -0
  54. package/dist/molecules/forms/input-tags/InputTags.js +25 -0
  55. package/dist/molecules/forms/input-tags/InputTags.js.map +1 -0
  56. package/dist/molecules/forms/input-tags/all.d.ts +2 -0
  57. package/dist/molecules/forms/input-tags/all.js +9 -0
  58. package/dist/molecules/forms/input-tags/all.js.map +1 -0
  59. package/dist/molecules/forms/input-tags/components/ChoicesTags.d.ts +307 -0
  60. package/dist/molecules/forms/input-tags/components/ChoicesTags.js +51 -0
  61. package/dist/molecules/forms/input-tags/components/ChoicesTags.js.map +1 -0
  62. package/dist/molecules/forms/input-tags/components/ReactTags.d.ts +2 -0
  63. package/dist/molecules/forms/input-tags/components/ReactTags.js +1937 -0
  64. package/dist/molecules/forms/input-tags/components/ReactTags.js.map +1 -0
  65. package/dist/molecules/forms/input-text/InputText.d.ts +2 -0
  66. package/dist/molecules/forms/input-text/InputText.interface.d.ts +4 -0
  67. package/dist/molecules/forms/input-text/InputText.interface.js +2 -0
  68. package/dist/molecules/forms/input-text/InputText.interface.js.map +1 -0
  69. package/dist/molecules/forms/input-text/InputText.js +54 -0
  70. package/dist/molecules/forms/input-text/InputText.js.map +1 -0
  71. package/dist/molecules/forms/select/Select.d.ts +2 -0
  72. package/dist/molecules/forms/select/Select.interface.d.ts +38 -0
  73. package/dist/molecules/forms/select/Select.interface.js +2 -0
  74. package/dist/molecules/forms/select/Select.interface.js.map +1 -0
  75. package/dist/molecules/forms/select/Select.js +16 -0
  76. package/dist/molecules/forms/select/Select.js.map +1 -0
  77. package/dist/molecules/forms/select/all.d.ts +2 -0
  78. package/dist/molecules/forms/select/all.js +9 -0
  79. package/dist/molecules/forms/select/all.js.map +1 -0
  80. package/dist/molecules/forms/select/components/ChoicesSelect.d.ts +7 -0
  81. package/dist/molecules/forms/select/components/ChoicesSelect.js +115 -0
  82. package/dist/molecules/forms/select/components/ChoicesSelect.js.map +1 -0
  83. package/dist/molecules/forms/select/components/HtmlSelect.d.ts +2 -0
  84. package/dist/molecules/forms/select/components/HtmlSelect.js +35 -0
  85. package/dist/molecules/forms/select/components/HtmlSelect.js.map +1 -0
  86. package/dist/molecules/forms/select/components/ReactSelect.d.ts +2 -0
  87. package/dist/molecules/forms/select/components/ReactSelect.js +46 -0
  88. package/dist/molecules/forms/select/components/ReactSelect.js.map +1 -0
  89. package/dist/molecules/forms/select/components/choices.template.d.ts +7 -0
  90. package/dist/molecules/forms/select/components/choices.template.js +9654 -0
  91. package/dist/molecules/forms/select/components/choices.template.js.map +1 -0
  92. package/dist/molecules/forms/select/hooks/useOptions.d.ts +9 -0
  93. package/dist/molecules/forms/select/hooks/useOptions.js +35 -0
  94. package/dist/molecules/forms/select/hooks/useOptions.js.map +1 -0
  95. package/dist/{components/loader/loader.component.d.ts → molecules/loader/Loader.d.ts} +0 -9
  96. package/dist/molecules/loader/Loader.js +19 -0
  97. package/dist/molecules/loader/Loader.js.map +1 -0
  98. package/dist/{components/modal/modal.component.js → molecules/modal/Modal.js} +1 -1
  99. package/dist/molecules/modal/Modal.js.map +1 -0
  100. package/dist/{components/pagination/pagination.component.d.ts → molecules/pagination/Pagination.d.ts} +6 -5
  101. package/dist/molecules/pagination/Pagination.js +77 -0
  102. package/dist/molecules/pagination/Pagination.js.map +1 -0
  103. package/dist/molecules/pagination/PaginationButton.d.ts +7 -0
  104. package/dist/molecules/pagination/PaginationButton.js +21 -0
  105. package/dist/molecules/pagination/PaginationButton.js.map +1 -0
  106. package/dist/molecules/pagination/all.d.ts +2 -0
  107. package/dist/molecules/pagination/all.js +12 -0
  108. package/dist/molecules/pagination/all.js.map +1 -0
  109. package/dist/molecules/pagination/utils/getPageNumbers.js.map +1 -0
  110. package/dist/molecules/table/Table.d.ts +17 -0
  111. package/dist/molecules/table/Table.js +63 -0
  112. package/dist/molecules/table/Table.js.map +1 -0
  113. package/dist/molecules/table/all.d.ts +0 -0
  114. package/dist/molecules/table/all.js +19 -0
  115. package/dist/molecules/table/all.js.map +1 -0
  116. package/dist/molecules/table/components/DefaultArrowSort.d.ts +5 -0
  117. package/dist/molecules/table/components/DefaultArrowSort.js +22 -0
  118. package/dist/molecules/table/components/DefaultArrowSort.js.map +1 -0
  119. package/dist/molecules/table/components/DefaultCell.d.ts +5 -0
  120. package/dist/molecules/table/components/DefaultCell.js +13 -0
  121. package/dist/molecules/table/components/DefaultCell.js.map +1 -0
  122. package/dist/molecules/table/components/DefaultCellFooter.d.ts +6 -0
  123. package/dist/molecules/table/components/DefaultCellFooter.js +12 -0
  124. package/dist/molecules/table/components/DefaultCellFooter.js.map +1 -0
  125. package/dist/molecules/table/components/DefaultCellHeader.d.ts +6 -0
  126. package/dist/molecules/table/components/DefaultCellHeader.js +30 -0
  127. package/dist/molecules/table/components/DefaultCellHeader.js.map +1 -0
  128. package/dist/molecules/table/components/DefaultCellOperations.d.ts +18 -0
  129. package/dist/molecules/table/components/DefaultCellOperations.js +30 -0
  130. package/dist/molecules/table/components/DefaultCellOperations.js.map +1 -0
  131. package/dist/molecules/table/components/DefaultFilter.d.ts +11 -0
  132. package/dist/molecules/table/components/DefaultFilter.js +15 -0
  133. package/dist/molecules/table/components/DefaultFilter.js.map +1 -0
  134. package/dist/molecules/table/components/DefaultOperationButton.d.ts +19 -0
  135. package/dist/molecules/table/components/DefaultOperationButton.js +30 -0
  136. package/dist/molecules/table/components/DefaultOperationButton.js.map +1 -0
  137. package/dist/molecules/table/filters/Filters.d.js +2 -0
  138. package/dist/molecules/table/filters/Filters.d.js.map +1 -0
  139. package/dist/molecules/table/filters/RangeFilter.d.ts +3 -0
  140. package/dist/molecules/table/filters/RangeFilter.js +42 -0
  141. package/dist/molecules/table/filters/RangeFilter.js.map +1 -0
  142. package/dist/molecules/table/filters/SelectFilter.d.ts +3 -0
  143. package/dist/molecules/table/filters/SelectFilter.js +35 -0
  144. package/dist/molecules/table/filters/SelectFilter.js.map +1 -0
  145. package/dist/molecules/table/filters/TextFieldFilter.d.ts +3 -0
  146. package/dist/molecules/table/filters/TextFieldFilter.js +27 -0
  147. package/dist/molecules/table/filters/TextFieldFilter.js.map +1 -0
  148. package/dist/molecules/table/hooks/useTable.d.ts +23 -0
  149. package/dist/molecules/table/hooks/useTable.js +34 -0
  150. package/dist/molecules/table/hooks/useTable.js.map +1 -0
  151. package/dist/molecules/table/hooks/useUniqValues.d.ts +5 -0
  152. package/dist/molecules/table/hooks/useUniqValues.js +11 -0
  153. package/dist/molecules/table/hooks/useUniqValues.js.map +1 -0
  154. package/dist/molecules/table/interfaces/extends.d.ts +14 -0
  155. package/dist/molecules/table/interfaces/extends.js +2 -0
  156. package/dist/molecules/table/interfaces/extends.js.map +1 -0
  157. package/dist/molecules/table/utils/mapFormToColumns.d.ts +3 -0
  158. package/dist/molecules/table/utils/mapFormToColumns.js +39 -0
  159. package/dist/molecules/table/utils/mapFormToColumns.js.map +1 -0
  160. package/dist/molecules/tabs/Tab.d.ts +13 -0
  161. package/dist/molecules/tabs/Tab.js +67 -0
  162. package/dist/molecules/tabs/Tab.js.map +1 -0
  163. package/dist/molecules/tabs/TabList.d.ts +2 -0
  164. package/dist/molecules/tabs/TabList.js +24 -0
  165. package/dist/molecules/tabs/TabList.js.map +1 -0
  166. package/dist/molecules/tabs/TabPanel.d.ts +9 -0
  167. package/dist/molecules/tabs/TabPanel.js +27 -0
  168. package/dist/molecules/tabs/TabPanel.js.map +1 -0
  169. package/dist/molecules/tabs/Tabs.d.ts +7 -0
  170. package/dist/molecules/tabs/Tabs.js +12 -0
  171. package/dist/molecules/tabs/Tabs.js.map +1 -0
  172. package/dist/molecules/tabs/TabsBody.d.ts +1 -0
  173. package/dist/molecules/tabs/TabsBody.js +10 -0
  174. package/dist/molecules/tabs/TabsBody.js.map +1 -0
  175. package/dist/molecules/tabs/TabsLegacy.d.ts +17 -0
  176. package/dist/molecules/tabs/TabsLegacy.js +49 -0
  177. package/dist/molecules/tabs/TabsLegacy.js.map +1 -0
  178. package/dist/molecules/tabs/all.d.ts +5 -0
  179. package/dist/molecules/tabs/all.js +13 -0
  180. package/dist/molecules/tabs/all.js.map +1 -0
  181. package/dist/molecules/tabs/context/TabControl.d.ts +52 -0
  182. package/dist/molecules/tabs/context/TabControl.js +85 -0
  183. package/dist/molecules/tabs/context/TabControl.js.map +1 -0
  184. package/dist/molecules/tabs/hooks/tabControl.d.ts +44 -0
  185. package/dist/molecules/tabs/hooks/tabControl.js +34 -0
  186. package/dist/molecules/tabs/hooks/tabControl.js.map +1 -0
  187. package/dist/organisms/form/Form.d.ts +22 -0
  188. package/dist/organisms/form/Form.js +15 -0
  189. package/dist/organisms/form/Form.js.map +1 -0
  190. package/dist/{components/form-access/formAccess.component.d.ts → organisms/form/access/FormAccess.d.ts} +2 -2
  191. package/dist/{components/form-access/formAccess.component.js → organisms/form/access/FormAccess.js} +4 -5
  192. package/dist/organisms/form/access/FormAccess.js.map +1 -0
  193. package/dist/organisms/form/access/FormAccess.schema.d.ts +4 -0
  194. package/dist/{components/form-access/formAccess.schema.js → organisms/form/access/FormAccess.schema.js} +1 -1
  195. package/dist/organisms/form/access/FormAccess.schema.js.map +1 -0
  196. package/dist/organisms/form/access/FormAccess.utils.d.ts +23 -0
  197. package/dist/{components/form-access/formAccess.utils.js → organisms/form/access/FormAccess.utils.js} +2 -2
  198. package/dist/organisms/form/access/FormAccess.utils.js.map +1 -0
  199. package/dist/{components/form-action/formAction.component.d.ts → organisms/form/actions/FormAction.d.ts} +4 -4
  200. package/dist/{components/form-action/formAction.component.js → organisms/form/actions/FormAction.js} +2 -2
  201. package/dist/organisms/form/actions/FormAction.js.map +1 -0
  202. package/dist/organisms/form/builder/FormBuilder.d.ts +7 -0
  203. package/dist/organisms/form/builder/FormBuilder.js +17 -0
  204. package/dist/organisms/form/builder/FormBuilder.js.map +1 -0
  205. package/dist/organisms/form/builder/FormEdit.d.ts +10 -0
  206. package/dist/organisms/form/builder/FormEdit.js +73 -0
  207. package/dist/organisms/form/builder/FormEdit.js.map +1 -0
  208. package/dist/organisms/form/builder/FormEdit.reducer.d.ts +10 -0
  209. package/dist/{components/form-edit/formEdit.reducer.js → organisms/form/builder/FormEdit.reducer.js} +1 -1
  210. package/dist/organisms/form/builder/FormEdit.reducer.js.map +1 -0
  211. package/dist/organisms/form/builder/FormEditCtas.d.ts +15 -0
  212. package/dist/organisms/form/builder/FormEditCtas.js +52 -0
  213. package/dist/organisms/form/builder/FormEditCtas.js.map +1 -0
  214. package/dist/organisms/form/builder/FormParameters.d.ts +24 -0
  215. package/dist/organisms/form/builder/FormParameters.js +84 -0
  216. package/dist/organisms/form/builder/FormParameters.js.map +1 -0
  217. package/dist/organisms/form/builder/all.d.ts +6 -0
  218. package/dist/organisms/form/builder/all.js +26 -0
  219. package/dist/organisms/form/builder/all.js.map +1 -0
  220. package/dist/organisms/form/builder/useFormBuilder.d.ts +28 -0
  221. package/dist/organisms/form/builder/useFormBuilder.js +71 -0
  222. package/dist/organisms/form/builder/useFormBuilder.js.map +1 -0
  223. package/dist/{components/form-edit/useFormEdit.hook.d.ts → organisms/form/builder/useFormEdit.d.ts} +7 -7
  224. package/dist/organisms/form/builder/useFormEdit.js +36 -0
  225. package/dist/organisms/form/builder/useFormEdit.js.map +1 -0
  226. package/dist/organisms/form/exports/FormExport.d.ts +5 -0
  227. package/dist/organisms/form/exports/FormExport.js +55 -0
  228. package/dist/organisms/form/exports/FormExport.js.map +1 -0
  229. package/dist/organisms/form/preview/FormPreview.d.ts +6 -0
  230. package/dist/organisms/form/preview/FormPreview.js +11 -0
  231. package/dist/organisms/form/preview/FormPreview.js.map +1 -0
  232. package/dist/{components/form-settings/formSettings.component.d.ts → organisms/form/settings/FormSettings.d.ts} +2 -2
  233. package/dist/{components/form-settings/formSettings.component.js → organisms/form/settings/FormSettings.js} +4 -4
  234. package/dist/organisms/form/settings/FormSettings.js.map +1 -0
  235. package/dist/organisms/form/settings/FormSettings.schema.d.ts +2 -0
  236. package/dist/{components/form-settings/formSettings.schema.js → organisms/form/settings/FormSettings.schema.js} +1 -1
  237. package/dist/organisms/form/settings/FormSettings.schema.js.map +1 -0
  238. package/dist/organisms/form/settings/FormSettings.utils.d.ts +8 -0
  239. package/dist/{components/form-settings/formSettings.utils.js → organisms/form/settings/FormSettings.utils.js} +1 -1
  240. package/dist/organisms/form/settings/FormSettings.utils.js.map +1 -0
  241. package/dist/organisms/form/types.d.ts +15 -0
  242. package/dist/organisms/form/types.js +2 -0
  243. package/dist/organisms/form/types.js.map +1 -0
  244. package/dist/organisms/form/useForm.d.ts +65 -0
  245. package/dist/organisms/form/useForm.js +776 -0
  246. package/dist/organisms/form/useForm.js.map +1 -0
  247. package/dist/{components/modal/removeModal.component.d.ts → organisms/modal/RemoveModal.d.ts} +1 -1
  248. package/dist/{components/modal/removeModal.component.js → organisms/modal/RemoveModal.js} +10 -10
  249. package/dist/organisms/modal/RemoveModal.js.map +1 -0
  250. package/dist/organisms/table/actions/ActionsTable.d.ts +10 -0
  251. package/dist/organisms/table/actions/ActionsTable.js +46 -0
  252. package/dist/organisms/table/actions/ActionsTable.js.map +1 -0
  253. package/dist/organisms/table/forms/FormsTable.d.ts +9 -0
  254. package/dist/organisms/table/forms/FormsTable.js +57 -0
  255. package/dist/organisms/table/forms/FormsTable.js.map +1 -0
  256. package/dist/organisms/table/forms/components/FormsCell.d.ts +5 -0
  257. package/dist/organisms/table/forms/components/FormsCell.js +50 -0
  258. package/dist/organisms/table/forms/components/FormsCell.js.map +1 -0
  259. package/dist/organisms/table/submissions/SubmissionsTable.d.ts +14 -0
  260. package/dist/organisms/table/submissions/SubmissionsTable.js +14 -0
  261. package/dist/organisms/table/submissions/SubmissionsTable.js.map +1 -0
  262. package/dist/organisms/views/FormViews.d.ts +24 -0
  263. package/dist/organisms/views/FormViews.js +96 -0
  264. package/dist/organisms/views/FormViews.js.map +1 -0
  265. package/dist/registries/components.d.ts +3 -0
  266. package/dist/registries/components.js +19 -0
  267. package/dist/registries/components.js.map +1 -0
  268. package/package.json +10 -8
  269. package/readme.md +27 -14
  270. package/src/atoms/icon/Icon.stories.tsx +124 -0
  271. package/src/atoms/icon/Icon.tsx +16 -0
  272. package/src/hooks/keyboard.constants.ts +40 -0
  273. package/src/hooks/useKeyboardControls.spec.tsx +208 -0
  274. package/src/hooks/useKeyboardControls.ts +84 -0
  275. package/src/index.ts +1 -6
  276. package/src/interfaces/ActionType.ts +26 -0
  277. package/src/interfaces/ComponentType.ts +3 -0
  278. package/src/interfaces/FormOptions.ts +4 -1
  279. package/src/interfaces/{FormSchema.ts → FormType.ts} +3 -3
  280. package/src/interfaces/Operation.ts +10 -4
  281. package/src/interfaces/{RoleSchema.ts → RoleType.ts} +1 -1
  282. package/src/interfaces/SubmissionType.ts +20 -0
  283. package/src/interfaces/index.ts +5 -4
  284. package/src/molecules/__fixtures__/build.js +28 -0
  285. package/src/molecules/__fixtures__/form-firstname.fixture.json +256 -0
  286. package/src/molecules/__fixtures__/form-schema.json +350 -0
  287. package/src/molecules/__fixtures__/form-submissions.json +11942 -0
  288. package/src/molecules/__fixtures__/form-wizard.fixture.json +2042 -0
  289. package/src/molecules/__fixtures__/products.json +81539 -0
  290. package/src/molecules/__fixtures__/useValue.hook.ts +14 -0
  291. package/src/{components/alert/alert.component.spec.tsx → molecules/alert/Alert.spec.tsx} +12 -14
  292. package/src/molecules/alert/Alert.stories.tsx +39 -0
  293. package/src/{components/alert/alert.component.tsx → molecules/alert/Alert.tsx} +10 -7
  294. package/src/molecules/button/Button.stories.tsx +106 -0
  295. package/src/molecules/button/Button.tsx +73 -0
  296. package/src/{components/card/card.component.spec.tsx → molecules/card/Card.spec.tsx} +3 -2
  297. package/src/{components/card/card.stories.tsx → molecules/card/Card.stories.tsx} +9 -2
  298. package/src/{components/card/card.component.tsx → molecules/card/Card.tsx} +4 -0
  299. package/src/{components/form-control/formControl.component.spec.tsx → molecules/forms/form-control/FormControl.spec.tsx} +9 -8
  300. package/src/molecules/forms/form-control/FormControl.stories.tsx +58 -0
  301. package/src/molecules/forms/form-control/FormControl.tsx +86 -0
  302. package/src/molecules/forms/input-tags/InputTags.interface.ts +9 -0
  303. package/src/molecules/forms/input-tags/InputTags.tsx +30 -0
  304. package/src/molecules/forms/input-tags/all.ts +6 -0
  305. package/src/molecules/forms/input-tags/components/ChoicesTags.stories.tsx +110 -0
  306. package/src/molecules/forms/input-tags/components/ChoicesTags.tsx +72 -0
  307. package/src/molecules/forms/input-tags/components/ReactTags.stories.tsx +140 -0
  308. package/src/molecules/forms/input-tags/components/ReactTags.tsx +38 -0
  309. package/src/molecules/forms/input-text/InputText.interface.ts +5 -0
  310. package/src/{components/input-text/inputText.component.spec.tsx → molecules/forms/input-text/InputText.spec.tsx} +8 -7
  311. package/src/molecules/forms/input-text/InputText.stories.tsx +179 -0
  312. package/src/molecules/forms/input-text/InputText.tsx +63 -0
  313. package/src/molecules/forms/select/Select.interface.ts +45 -0
  314. package/src/molecules/forms/select/Select.tsx +28 -0
  315. package/src/molecules/forms/select/all.ts +7 -0
  316. package/src/molecules/forms/select/components/ChoicesSelect.stories.tsx +332 -0
  317. package/src/molecules/forms/select/components/ChoicesSelect.tsx +159 -0
  318. package/src/molecules/forms/select/components/HtmlSelect.stories.tsx +305 -0
  319. package/src/molecules/forms/select/components/HtmlSelect.tsx +54 -0
  320. package/src/molecules/forms/select/components/ReactSelect.stories.tsx +287 -0
  321. package/src/molecules/forms/select/components/ReactSelect.tsx +60 -0
  322. package/src/molecules/forms/select/components/choices.template.tsx +38 -0
  323. package/src/molecules/forms/select/hooks/useOptions.spec.ts +154 -0
  324. package/src/molecules/forms/select/hooks/useOptions.ts +53 -0
  325. package/src/{components/loader/loader.component.spec.tsx → molecules/loader/Loader.spec.tsx} +3 -3
  326. package/src/molecules/loader/Loader.stories.tsx +43 -0
  327. package/src/{components/loader/loader.component.tsx → molecules/loader/Loader.tsx} +2 -10
  328. package/src/{components/modal/modal.component.spec.tsx → molecules/modal/Modal.spec.tsx} +131 -4
  329. package/src/molecules/modal/Modal.stories.tsx +178 -0
  330. package/src/{components/pagination/pagination.component.spec.tsx → molecules/pagination/Pagination.spec.tsx} +20 -14
  331. package/src/molecules/pagination/Pagination.stories.tsx +92 -0
  332. package/src/{components/pagination/pagination.component.tsx → molecules/pagination/Pagination.tsx} +34 -47
  333. package/src/molecules/pagination/PaginationButton.tsx +30 -0
  334. package/src/molecules/pagination/all.ts +3 -0
  335. package/src/molecules/table/Table.stories.tsx +305 -0
  336. package/src/molecules/table/Table.tsx +106 -0
  337. package/src/molecules/table/all.ts +16 -0
  338. package/src/molecules/table/components/DefaultArrowSort.tsx +26 -0
  339. package/src/molecules/table/components/DefaultCell.tsx +22 -0
  340. package/src/molecules/table/components/DefaultCellFooter.tsx +16 -0
  341. package/src/molecules/table/components/DefaultCellHeader.tsx +42 -0
  342. package/src/molecules/table/components/DefaultCellOperations.tsx +48 -0
  343. package/src/molecules/table/components/DefaultFilter.tsx +42 -0
  344. package/src/molecules/table/components/DefaultOperationButton.tsx +41 -0
  345. package/src/molecules/table/filters/Filters.d.ts +31 -0
  346. package/src/molecules/table/filters/RangeFilter.tsx +43 -0
  347. package/src/molecules/table/filters/SelectFilter.tsx +47 -0
  348. package/src/molecules/table/filters/TextFieldFilter.tsx +36 -0
  349. package/src/molecules/table/hooks/useTable.tsx +75 -0
  350. package/src/molecules/table/hooks/useUniqValues.tsx +10 -0
  351. package/src/molecules/table/interfaces/extends.ts +18 -0
  352. package/src/molecules/table/utils/mapFormToColumns.tsx +74 -0
  353. package/src/molecules/tabs/Tab.tsx +106 -0
  354. package/src/molecules/tabs/TabList.tsx +37 -0
  355. package/src/molecules/tabs/TabPanel.tsx +37 -0
  356. package/src/molecules/tabs/Tabs.spec.tsx +140 -0
  357. package/src/molecules/tabs/Tabs.stories.tsx +374 -0
  358. package/src/molecules/tabs/Tabs.tsx +21 -0
  359. package/src/molecules/tabs/TabsBody.tsx +11 -0
  360. package/src/molecules/tabs/TabsLegacy.stories.tsx +103 -0
  361. package/src/molecules/tabs/TabsLegacy.tsx +84 -0
  362. package/src/molecules/tabs/all.ts +5 -0
  363. package/src/molecules/tabs/context/TabControl.tsx +166 -0
  364. package/src/molecules/tabs/hooks/tabControl.spec.tsx +388 -0
  365. package/src/molecules/tabs/hooks/tabControl.ts +52 -0
  366. package/src/organisms/__fixtures__/WrapComponent.tsx +11 -0
  367. package/src/organisms/__fixtures__/form-actions.json +240 -0
  368. package/src/organisms/__fixtures__/form-firstname.fixture.json +257 -0
  369. package/src/organisms/__fixtures__/form-wizard.fixture.json +2042 -0
  370. package/src/organisms/__fixtures__/form.fixture.json +2068 -0
  371. package/src/organisms/__fixtures__/useEditForm.tsx +84 -0
  372. package/src/organisms/__fixtures__/utils.ts +74 -0
  373. package/src/{components/form/form.component.spec.tsx → organisms/form/Form.spec.tsx} +5 -6
  374. package/src/organisms/form/Form.stories.tsx +698 -0
  375. package/src/organisms/form/Form.tsx +29 -0
  376. package/src/{components/form-access/formAccess.schema.ts → organisms/form/access/FormAccess.schema.ts} +4 -6
  377. package/src/{components/form-access/formAccess.stories.tsx → organisms/form/access/FormAccess.stories.tsx} +8 -2
  378. package/src/{components/form-access/formAccess.component.tsx → organisms/form/access/FormAccess.tsx} +15 -17
  379. package/src/{components/form-access/formAccess.utils.spec.ts → organisms/form/access/FormAccess.utils.spec.ts} +13 -7
  380. package/src/{components/form-access/formAccess.utils.ts → organisms/form/access/FormAccess.utils.ts} +23 -20
  381. package/src/organisms/form/actions/FormAction.stories.tsx +422 -0
  382. package/src/{components/form-action/formAction.component.tsx → organisms/form/actions/FormAction.tsx} +7 -7
  383. package/src/organisms/form/builder/FormBuilder.stories.tsx +97 -0
  384. package/src/organisms/form/builder/FormBuilder.tsx +28 -0
  385. package/src/{components/form-edit/formEdit.reducer.ts → organisms/form/builder/FormEdit.reducer.ts} +6 -6
  386. package/src/{components/form-edit/formEdit.stories.tsx → organisms/form/builder/FormEdit.stories.tsx} +89 -43
  387. package/src/organisms/form/builder/FormEdit.tsx +81 -0
  388. package/src/organisms/form/builder/FormEditCtas.tsx +97 -0
  389. package/src/{components/form-edit/formParameters.component.tsx → organisms/form/builder/FormParameters.tsx} +28 -28
  390. package/src/organisms/form/builder/all.ts +17 -0
  391. package/src/organisms/form/builder/useFormBuilder.ts +143 -0
  392. package/src/{components/form-edit/useFormEdit.hook.ts → organisms/form/builder/useFormEdit.ts} +9 -9
  393. package/src/organisms/form/exports/FormExport.stories.tsx +71 -0
  394. package/src/organisms/form/exports/FormExport.tsx +58 -0
  395. package/src/organisms/form/preview/FormPreview.stories.tsx +61 -0
  396. package/src/organisms/form/preview/FormPreview.tsx +21 -0
  397. package/src/{components/form-settings/formSettings.component.spec.tsx → organisms/form/settings/FormSettings.component.spec.tsx} +2 -2
  398. package/src/{components/form-settings/formSettings.schema.ts → organisms/form/settings/FormSettings.schema.ts} +2 -2
  399. package/src/{components/form-settings/formSettings.stories.tsx → organisms/form/settings/FormSettings.stories.tsx} +10 -8
  400. package/src/{components/form-settings/formSettings.component.tsx → organisms/form/settings/FormSettings.tsx} +7 -8
  401. package/src/{components/form-settings/formSettings.utils.spec.ts → organisms/form/settings/FormSettings.utils.spec.ts} +1 -1
  402. package/src/{components/form-settings/formSettings.utils.ts → organisms/form/settings/FormSettings.utils.ts} +4 -4
  403. package/src/organisms/form/types.ts +8 -0
  404. package/src/organisms/form/useForm.ts +223 -0
  405. package/src/organisms/modal/RemoveModal.stories.tsx +59 -0
  406. package/src/{components/modal/removeModal.component.tsx → organisms/modal/RemoveModal.tsx} +2 -2
  407. package/src/{components/actions-table/actionsTable.component.spec.tsx → organisms/table/actions/ActionsTable.spec.tsx} +11 -7
  408. package/src/{components/actions-table/actionsTable.stories.tsx → organisms/table/actions/ActionsTable.stories.tsx} +58 -58
  409. package/src/{components/actions-table/actionsTable.component.tsx → organisms/table/actions/ActionsTable.tsx} +13 -20
  410. package/src/{components/forms-table/formsTable.stories.tsx → organisms/table/forms/FormsTable.stories.tsx} +24 -27
  411. package/src/organisms/table/forms/FormsTable.tsx +66 -0
  412. package/src/organisms/table/forms/components/FormsCell.tsx +53 -0
  413. package/src/organisms/table/submissions/SubmissionsTable.stories.tsx +142 -0
  414. package/src/organisms/table/submissions/SubmissionsTable.tsx +19 -0
  415. package/src/organisms/views/FormViews.stories.tsx +224 -0
  416. package/src/organisms/views/FormViews.tsx +146 -0
  417. package/src/registries/components.ts +23 -0
  418. package/tsconfig.app.json +1 -1
  419. package/tsconfig.json +3 -0
  420. package/tsconfig.node.json +13 -0
  421. package/dist/components/actions-table/actionsTable.component.d.ts +0 -10
  422. package/dist/components/actions-table/actionsTable.component.js +0 -53
  423. package/dist/components/actions-table/actionsTable.component.js.map +0 -1
  424. package/dist/components/alert/alert.component.d.ts +0 -5
  425. package/dist/components/alert/alert.component.js.map +0 -1
  426. package/dist/components/card/card.component.js +0 -12
  427. package/dist/components/card/card.component.js.map +0 -1
  428. package/dist/components/form/form.component.d.ts +0 -62
  429. package/dist/components/form/form.component.js +0 -64
  430. package/dist/components/form/form.component.js.map +0 -1
  431. package/dist/components/form/useForm.hook.d.ts +0 -59
  432. package/dist/components/form/useForm.hook.js +0 -64
  433. package/dist/components/form/useForm.hook.js.map +0 -1
  434. package/dist/components/form-access/formAccess.component.js.map +0 -1
  435. package/dist/components/form-access/formAccess.schema.d.ts +0 -5
  436. package/dist/components/form-access/formAccess.schema.js.map +0 -1
  437. package/dist/components/form-access/formAccess.utils.d.ts +0 -24
  438. package/dist/components/form-access/formAccess.utils.js.map +0 -1
  439. package/dist/components/form-action/formAction.component.js.map +0 -1
  440. package/dist/components/form-builder/formBuilder.component.d.ts +0 -53
  441. package/dist/components/form-builder/formBuilder.component.js +0 -142
  442. package/dist/components/form-builder/formBuilder.component.js.map +0 -1
  443. package/dist/components/form-control/formControl.component.d.ts +0 -14
  444. package/dist/components/form-control/formControl.component.js +0 -26
  445. package/dist/components/form-control/formControl.component.js.map +0 -1
  446. package/dist/components/form-edit/formCtas.component.d.ts +0 -28
  447. package/dist/components/form-edit/formCtas.component.js +0 -70
  448. package/dist/components/form-edit/formCtas.component.js.map +0 -1
  449. package/dist/components/form-edit/formEdit.component.d.ts +0 -18
  450. package/dist/components/form-edit/formEdit.component.js +0 -57
  451. package/dist/components/form-edit/formEdit.component.js.map +0 -1
  452. package/dist/components/form-edit/formEdit.reducer.d.ts +0 -10
  453. package/dist/components/form-edit/formEdit.reducer.js.map +0 -1
  454. package/dist/components/form-edit/formParameters.component.d.ts +0 -34
  455. package/dist/components/form-edit/formParameters.component.js +0 -92
  456. package/dist/components/form-edit/formParameters.component.js.map +0 -1
  457. package/dist/components/form-edit/useFormEdit.hook.js +0 -36
  458. package/dist/components/form-edit/useFormEdit.hook.js.map +0 -1
  459. package/dist/components/form-settings/formSettings.component.js.map +0 -1
  460. package/dist/components/form-settings/formSettings.schema.d.ts +0 -2
  461. package/dist/components/form-settings/formSettings.schema.js.map +0 -1
  462. package/dist/components/form-settings/formSettings.utils.d.ts +0 -8
  463. package/dist/components/form-settings/formSettings.utils.js.map +0 -1
  464. package/dist/components/forms-table/components/formCell.component.d.ts +0 -6
  465. package/dist/components/forms-table/components/formCell.component.js +0 -50
  466. package/dist/components/forms-table/components/formCell.component.js.map +0 -1
  467. package/dist/components/forms-table/formsTable.component.d.ts +0 -10
  468. package/dist/components/forms-table/formsTable.component.js +0 -29
  469. package/dist/components/forms-table/formsTable.component.js.map +0 -1
  470. package/dist/components/index.d.ts +0 -25
  471. package/dist/components/index.js +0 -86
  472. package/dist/components/index.js.map +0 -1
  473. package/dist/components/input-tags/inputTags.component.d.ts +0 -18
  474. package/dist/components/input-tags/inputTags.component.js +0 -37
  475. package/dist/components/input-tags/inputTags.component.js.map +0 -1
  476. package/dist/components/input-text/inputText.component.d.ts +0 -27
  477. package/dist/components/input-text/inputText.component.js +0 -70
  478. package/dist/components/input-text/inputText.component.js.map +0 -1
  479. package/dist/components/loader/loader.component.js +0 -26
  480. package/dist/components/loader/loader.component.js.map +0 -1
  481. package/dist/components/modal/modal.component.js.map +0 -1
  482. package/dist/components/modal/removeModal.component.js.map +0 -1
  483. package/dist/components/pagination/pagination.component.js +0 -87
  484. package/dist/components/pagination/pagination.component.js.map +0 -1
  485. package/dist/components/select/select.component.d.ts +0 -14
  486. package/dist/components/select/select.component.js +0 -60
  487. package/dist/components/select/select.component.js.map +0 -1
  488. package/dist/components/submissions-table/submissionsTable.component.d.ts +0 -6
  489. package/dist/components/submissions-table/submissionsTable.component.js +0 -11
  490. package/dist/components/submissions-table/submissionsTable.component.js.map +0 -1
  491. package/dist/components/table/components/defaultArrowSort.component.d.ts +0 -1
  492. package/dist/components/table/components/defaultArrowSort.component.js +0 -10
  493. package/dist/components/table/components/defaultArrowSort.component.js.map +0 -1
  494. package/dist/components/table/components/defaultCell.component.d.ts +0 -1
  495. package/dist/components/table/components/defaultCell.component.js +0 -11
  496. package/dist/components/table/components/defaultCell.component.js.map +0 -1
  497. package/dist/components/table/components/defaultCellHeader.component.d.ts +0 -5
  498. package/dist/components/table/components/defaultCellHeader.component.js +0 -14
  499. package/dist/components/table/components/defaultCellHeader.component.js.map +0 -1
  500. package/dist/components/table/components/defaultCellOperations.component.d.ts +0 -12
  501. package/dist/components/table/components/defaultCellOperations.component.js +0 -21
  502. package/dist/components/table/components/defaultCellOperations.component.js.map +0 -1
  503. package/dist/components/table/components/defaultCells.component.d.ts +0 -4
  504. package/dist/components/table/components/defaultCells.component.js +0 -23
  505. package/dist/components/table/components/defaultCells.component.js.map +0 -1
  506. package/dist/components/table/components/defaultOperationButton.component.d.ts +0 -15
  507. package/dist/components/table/components/defaultOperationButton.component.js +0 -45
  508. package/dist/components/table/components/defaultOperationButton.component.js.map +0 -1
  509. package/dist/components/table/components/defaultRow.component.d.ts +0 -12
  510. package/dist/components/table/components/defaultRow.component.js +0 -25
  511. package/dist/components/table/components/defaultRow.component.js.map +0 -1
  512. package/dist/components/table/components/dragNDropContainer.d.ts +0 -4
  513. package/dist/components/table/components/dragNDropContainer.js +0 -10
  514. package/dist/components/table/components/dragNDropContainer.js.map +0 -1
  515. package/dist/components/table/filters/defaultColumnFilter.component.d.ts +0 -5
  516. package/dist/components/table/filters/defaultColumnFilter.component.js +0 -32
  517. package/dist/components/table/filters/defaultColumnFilter.component.js.map +0 -1
  518. package/dist/components/table/filters/selectColumnFilter.component.d.ts +0 -10
  519. package/dist/components/table/filters/selectColumnFilter.component.js +0 -34
  520. package/dist/components/table/filters/selectColumnFilter.component.js.map +0 -1
  521. package/dist/components/table/filters/sliderColumnFilter.component.d.ts +0 -2
  522. package/dist/components/table/filters/sliderColumnFilter.component.js +0 -27
  523. package/dist/components/table/filters/sliderColumnFilter.component.js.map +0 -1
  524. package/dist/components/table/hooks/useCustomTable.hook.d.ts +0 -128
  525. package/dist/components/table/hooks/useCustomTable.hook.js +0 -130
  526. package/dist/components/table/hooks/useCustomTable.hook.js.map +0 -1
  527. package/dist/components/table/hooks/useDragnDropRow.hook.d.ts +0 -272
  528. package/dist/components/table/hooks/useDragnDropRow.hook.js +0 -40
  529. package/dist/components/table/hooks/useDragnDropRow.hook.js.map +0 -1
  530. package/dist/components/table/hooks/useOperations.hook.d.ts +0 -11
  531. package/dist/components/table/hooks/useOperations.hook.js +0 -25
  532. package/dist/components/table/hooks/useOperations.hook.js.map +0 -1
  533. package/dist/components/table/index.d.ts +0 -15
  534. package/dist/components/table/index.js +0 -35
  535. package/dist/components/table/index.js.map +0 -1
  536. package/dist/components/table/table.component.d.ts +0 -3
  537. package/dist/components/table/table.component.js +0 -81
  538. package/dist/components/table/table.component.js.map +0 -1
  539. package/dist/components/table/utils/getPageNumbers.js.map +0 -1
  540. package/dist/components/table/utils/mapFormToColumns.d.ts +0 -3
  541. package/dist/components/table/utils/mapFormToColumns.js +0 -23
  542. package/dist/components/table/utils/mapFormToColumns.js.map +0 -1
  543. package/dist/components/table/utils/swapElements.d.ts +0 -1
  544. package/dist/components/table/utils/swapElements.js +0 -5
  545. package/dist/components/table/utils/swapElements.js.map +0 -1
  546. package/dist/components/tabs/tabs.component.d.ts +0 -19
  547. package/dist/components/tabs/tabs.component.js +0 -72
  548. package/dist/components/tabs/tabs.component.js.map +0 -1
  549. package/dist/interfaces/ActionSchema.d.ts +0 -23
  550. package/dist/interfaces/ActionSchema.js +0 -2
  551. package/dist/interfaces/ActionSchema.js.map +0 -1
  552. package/dist/interfaces/FormSchema.js +0 -2
  553. package/dist/interfaces/FormSchema.js.map +0 -1
  554. package/dist/interfaces/RoleSchema.js +0 -2
  555. package/dist/interfaces/RoleSchema.js.map +0 -1
  556. package/dist/interfaces/Submission.d.ts +0 -5
  557. package/dist/interfaces/Submission.js +0 -2
  558. package/dist/interfaces/Submission.js.map +0 -1
  559. package/dist/utils/callLast.d.ts +0 -1
  560. package/dist/utils/callLast.js +0 -10
  561. package/dist/utils/callLast.js.map +0 -1
  562. package/src/components/alert/alert.stories.tsx +0 -16
  563. package/src/components/form/form.component.tsx +0 -72
  564. package/src/components/form/form.stories.tsx +0 -253
  565. package/src/components/form/useForm.hook.ts +0 -216
  566. package/src/components/form-action/formAction.stories.tsx +0 -364
  567. package/src/components/form-builder/formBuilder.component.tsx +0 -195
  568. package/src/components/form-builder/formBuilder.stories.tsx +0 -3665
  569. package/src/components/form-control/formControl.component.tsx +0 -58
  570. package/src/components/form-control/formControl.stories.tsx +0 -63
  571. package/src/components/form-edit/formCtas.component.tsx +0 -106
  572. package/src/components/form-edit/formEdit.component.tsx +0 -59
  573. package/src/components/forms-table/components/formCell.component.tsx +0 -47
  574. package/src/components/forms-table/formsTable.component.tsx +0 -40
  575. package/src/components/index.ts +0 -25
  576. package/src/components/input-tags/inputTags.component.tsx +0 -58
  577. package/src/components/input-tags/inputTags.stories.tsx +0 -97
  578. package/src/components/input-text/inputText.component.tsx +0 -85
  579. package/src/components/input-text/inputText.stories.tsx +0 -126
  580. package/src/components/loader/loader.stories.tsx +0 -16
  581. package/src/components/modal/modal.stories.tsx +0 -190
  582. package/src/components/pagination/pagination.stories.tsx +0 -40
  583. package/src/components/select/select.component.spec.tsx +0 -84
  584. package/src/components/select/select.component.tsx +0 -88
  585. package/src/components/select/select.stories.tsx +0 -173
  586. package/src/components/submissions-table/submissionsTable.component.tsx +0 -14
  587. package/src/components/submissions-table/submissionsTable.stories.tsx +0 -99
  588. package/src/components/table/components/defaultArrowSort.component.tsx +0 -10
  589. package/src/components/table/components/defaultCell.component.tsx +0 -13
  590. package/src/components/table/components/defaultCellHeader.component.tsx +0 -18
  591. package/src/components/table/components/defaultCellOperations.component.tsx +0 -37
  592. package/src/components/table/components/defaultCells.component.tsx +0 -30
  593. package/src/components/table/components/defaultOperationButton.component.tsx +0 -56
  594. package/src/components/table/components/defaultRow.component.tsx +0 -51
  595. package/src/components/table/components/dragNDropContainer.tsx +0 -7
  596. package/src/components/table/filters/defaultColumnFilter.component.spec.tsx +0 -31
  597. package/src/components/table/filters/defaultColumnFilter.component.tsx +0 -39
  598. package/src/components/table/filters/selectColumnFilter.component.spec.tsx +0 -66
  599. package/src/components/table/filters/selectColumnFilter.component.tsx +0 -51
  600. package/src/components/table/filters/sliderColumnFilter.component.tsx +0 -28
  601. package/src/components/table/hooks/useCustomTable.hook.tsx +0 -268
  602. package/src/components/table/hooks/useDragnDropRow.hook.ts +0 -80
  603. package/src/components/table/hooks/useOperations.hook.tsx +0 -39
  604. package/src/components/table/index.ts +0 -15
  605. package/src/components/table/table.component.tsx +0 -100
  606. package/src/components/table/table.stories.tsx +0 -120
  607. package/src/components/table/utils/mapFormToColumns.tsx +0 -33
  608. package/src/components/table/utils/swapElements.spec.ts +0 -7
  609. package/src/components/table/utils/swapElements.ts +0 -7
  610. package/src/components/tabs/tabs.component.spec.tsx +0 -87
  611. package/src/components/tabs/tabs.component.stories.tsx +0 -127
  612. package/src/components/tabs/tabs.component.tsx +0 -92
  613. package/src/interfaces/ActionSchema.ts +0 -26
  614. package/src/interfaces/Submission.ts +0 -5
  615. package/src/utils/callLast.ts +0 -12
  616. /package/dist/{components/card/card.component.d.ts → molecules/card/Card.d.ts} +0 -0
  617. /package/dist/{components/modal/modal.component.d.ts → molecules/modal/Modal.d.ts} +0 -0
  618. /package/dist/{components/table → molecules/pagination}/utils/getPageNumbers.d.ts +0 -0
  619. /package/dist/{components/table → molecules/pagination}/utils/getPageNumbers.js +0 -0
  620. /package/src/{components → molecules}/__fixtures__/form-actions.json +0 -0
  621. /package/src/{components → molecules}/__fixtures__/form.fixture.json +0 -0
  622. /package/src/{components/modal/modal.component.tsx → molecules/modal/Modal.tsx} +0 -0
  623. /package/src/{components/table → molecules/pagination}/utils/getPageNumbers.ts +0 -0
  624. /package/src/{components → organisms}/__fixtures__/form-schema.json +0 -0
  625. /package/src/{components → organisms}/__fixtures__/form-submissions.json +0 -0
  626. /package/src/{components/actions-table → organisms/table/actions}/__fixtures__/data.json +0 -0
@@ -0,0 +1,38 @@
1
+ import { SelectHTMLAttributes } from 'react';
2
+ import { FormControlProps } from '../form-control/FormControl';
3
+ export interface SelectOptionBaseProps<Data = any> extends Record<string, any> {
4
+ label: string | JSX.Element;
5
+ value: string;
6
+ id?: string;
7
+ disabled?: boolean;
8
+ note?: string | JSX.Element;
9
+ group?: string;
10
+ data?: Data;
11
+ template?: (item: SelectOptionProps<Data>) => JSX.Element;
12
+ }
13
+ export interface SelectOptionProps<Data = string> extends SelectOptionBaseProps<Data> {
14
+ options?: SelectOptionProps<Data>[];
15
+ }
16
+ export interface SelectProps<Data = string> extends FormControlProps<Data, SelectHTMLAttributes<HTMLSelectElement>> {
17
+ layout?: "html5" | "react" | "choicesjs";
18
+ /**
19
+ * Error message
20
+ */
21
+ errorMessage?: string;
22
+ readonly?: boolean;
23
+ disableSearch?: boolean;
24
+ searchEnabled?: boolean;
25
+ customProperties?: Record<string, any>;
26
+ options: (SelectOptionBaseProps<Data> | Omit<SelectOptionProps<Data>, "value">)[];
27
+ /**
28
+ * @deprecated
29
+ */
30
+ choices?: (SelectOptionBaseProps<Data> | Omit<SelectOptionProps<Data>, "value">)[];
31
+ }
32
+ export interface SelectSingle<Data = string> extends SelectProps<Data> {
33
+ multiple?: false | undefined;
34
+ }
35
+ export interface SelectMultiple<Data = string> extends SelectProps<Data[]> {
36
+ multiple: true;
37
+ }
38
+ export type AllSelectProps<Data = string> = SelectSingle<Data> | SelectMultiple<Data>;
@@ -0,0 +1,2 @@
1
+
2
+ //# sourceMappingURL=Select.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Select.interface.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,16 @@
1
+ import { jsx as o } from "react/jsx-runtime";
2
+ import { registerComponent as s, getComponent as l } from "../../../registries/components.js";
3
+ import { useOptions as d } from "./hooks/useOptions.js";
4
+ let f = 0;
5
+ function C(e) {
6
+ const { className: n, name: i = "", id: t = `field-select-${++f}`, label: m, description: r = "" } = e, a = d({
7
+ ...e,
8
+ value: Array.isArray(e.value) ? e.value : [e.value]
9
+ }), c = l("FormControl"), u = l(["Select." + e.layout, "Select.html5"]);
10
+ return /* @__PURE__ */ o(c, { ...e, id: t, description: r, shadow: !1, className: n, label: m, children: /* @__PURE__ */ o(u, { ...e, options: a, name: i, id: t }) });
11
+ }
12
+ s("Select", C);
13
+ export {
14
+ C as Select
15
+ };
16
+ //# sourceMappingURL=Select.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Select.js","sources":["../../../../src/molecules/forms/select/Select.tsx"],"sourcesContent":["import type { ComponentType } from \"react\";\n\nimport { getComponent, registerComponent } from \"../../../registries/components\";\nimport type { FormControl as DefaultFormControl } from \"../form-control/FormControl\";\nimport { useOptions } from \"./hooks/useOptions\";\nimport { AllSelectProps } from \"./Select.interface\";\n\nlet uuid = 0;\n\nexport function Select<Data = string>(props: AllSelectProps<Data>) {\n const { className, name = \"\", id = `field-select-${++uuid}`, label, description = \"\" } = props;\n\n const options = useOptions<Data>({\n ...props,\n value: (Array.isArray(props.value) ? props.value : [props.value]) as any\n });\n\n const FormControl = getComponent<typeof DefaultFormControl>(\"FormControl\");\n const Component = getComponent<ComponentType<AllSelectProps<Data>>>([\"Select.\" + props.layout, \"Select.html5\"]);\n\n return (\n <FormControl {...(props as any)} id={id} description={description} shadow={false} className={className} label={label}>\n <Component {...props} options={options} name={name} id={id} />\n </FormControl>\n );\n}\n\nregisterComponent(\"Select\", Select);\n"],"names":["uuid","Select","props","className","name","id","label","description","options","useOptions","FormControl","getComponent","Component","registerComponent"],"mappings":";;;AAOA,IAAIA,IAAO;AAEJ,SAASC,EAAsBC,GAA6B;AACjE,QAAM,EAAE,WAAAC,GAAW,MAAAC,IAAO,IAAI,IAAAC,IAAK,gBAAgB,EAAEL,CAAI,IAAI,OAAAM,GAAO,aAAAC,IAAc,GAAO,IAAAL,GAEnFM,IAAUC,EAAiB;AAAA,IAC/B,GAAGP;AAAA,IACH,OAAQ,MAAM,QAAQA,EAAM,KAAK,IAAIA,EAAM,QAAQ,CAACA,EAAM,KAAK;AAAA,EAAA,CAChE,GAEKQ,IAAcC,EAAwC,aAAa,GACnEC,IAAYD,EAAkD,CAAC,YAAYT,EAAM,QAAQ,cAAc,CAAC;AAE9G,2BACGQ,GAAa,EAAA,GAAIR,GAAe,IAAAG,GAAQ,aAAAE,GAA0B,QAAQ,IAAO,WAAAJ,GAAsB,OAAAG,GACtG,4BAACM,GAAW,EAAA,GAAGV,GAAO,SAAAM,GAAkB,MAAAJ,GAAY,IAAAC,EAAQ,CAAA,GAC9D;AAEJ;AAEAQ,EAAkB,UAAUZ,CAAM;"}
@@ -0,0 +1,2 @@
1
+ export * from './Select';
2
+ export * from './Select.interface';
@@ -0,0 +1,9 @@
1
+ import "../form-control/FormControl.js";
2
+ import "./components/ReactSelect.js";
3
+ import "./components/HtmlSelect.js";
4
+ import "./components/ChoicesSelect.js";
5
+ import { Select as e } from "./Select.js";
6
+ export {
7
+ e as Select
8
+ };
9
+ //# sourceMappingURL=all.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"all.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
@@ -0,0 +1,7 @@
1
+ import { default as Choices } from '@formio/choices.js';
2
+ import { AllSelectProps } from '../Select.interface';
3
+ export declare function useChoices({ name, disabled, multiple, options, placeholder, searchEnabled, customProperties, size, value, required, onChange }: AllSelectProps): {
4
+ ref: import('react').MutableRefObject<any>;
5
+ choicesRef: import('react').MutableRefObject<Choices | undefined>;
6
+ };
7
+ export declare function ChoiceSelect(props: AllSelectProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,115 @@
1
+ import { jsx as j } from "react/jsx-runtime";
2
+ import k from "@formio/choices.js";
3
+ import { c as B } from "../../../../chunks/index.js";
4
+ import { useRef as L, useMemo as H, useEffect as x } from "react";
5
+ import { c as N } from "../../../../chunks/index.module.js";
6
+ import { registerComponent as R } from "../../../../registries/components.js";
7
+ import { cleanFormControlProps as $ } from "../../form-control/FormControl.js";
8
+ import { callbackOnCreateTemplates as F } from "./choices.template.js";
9
+ function O({
10
+ name: r,
11
+ disabled: f,
12
+ multiple: l,
13
+ options: S,
14
+ placeholder: m,
15
+ searchEnabled: E = !0,
16
+ customProperties: b = {},
17
+ size: T,
18
+ value: i,
19
+ required: I,
20
+ onChange: d
21
+ }) {
22
+ const h = L(), e = L(), a = H(() => {
23
+ const s = (t) => [].concat(i).includes(t), c = S.map((t) => (t.options && (t = {
24
+ ...t,
25
+ choices: t.options.map((u) => ({
26
+ ...u,
27
+ selected: s(u.value)
28
+ }))
29
+ }), {
30
+ ...t,
31
+ selected: s(t.value)
32
+ }));
33
+ return !l && m ? [
34
+ {
35
+ disabled: I,
36
+ label: m,
37
+ value: ""
38
+ },
39
+ ...c
40
+ ] : c;
41
+ }, [S, i, I, l, m]), v = N((s, c) => {
42
+ d == null || d(s, c);
43
+ }, 50);
44
+ return x(() => {
45
+ e.current && (l && e.current.clearStore(), e.current.setChoices(a, "value", "label", !0));
46
+ }, [a]), x(() => {
47
+ var t, u, p, C;
48
+ if (!e.current) {
49
+ const { allowHTML: o = !0, silent: n = !0, removeItemButton: w = !0, shouldSort: z = !1, itemSelectText: M = "" } = b;
50
+ e.current = new k(h.current, {
51
+ ...b,
52
+ allowHTML: o,
53
+ silent: n,
54
+ searchEnabled: E,
55
+ removeItemButton: w,
56
+ choices: a,
57
+ placeholder: m,
58
+ placeholderValue: "",
59
+ itemSelectText: M,
60
+ shouldSort: z,
61
+ callbackOnCreateTemplates: F
62
+ });
63
+ }
64
+ f ? (t = e.current) == null || t.disable() : (u = e.current) == null || u.enable();
65
+ const s = ({ detail: { value: o } }) => {
66
+ v(r, l ? [.../* @__PURE__ */ new Set([...new Set(i), o])] : o);
67
+ }, c = ({ detail: { value: o } }) => {
68
+ l ? v(
69
+ r,
70
+ i.filter((n) => n !== o)
71
+ ) : v(r, void 0);
72
+ };
73
+ return (p = e.current) == null || p.passedElement.element.addEventListener("addItem", s), (C = e.current) == null || C.passedElement.element.addEventListener("removeItem", c), () => {
74
+ var o, n;
75
+ (o = e.current) == null || o.passedElement.element.removeEventListener("addItem", s), (n = e.current) == null || n.passedElement.element.removeEventListener("removeItem", c);
76
+ };
77
+ }, [f, d, a, m, E, T, i]), {
78
+ ref: h,
79
+ choicesRef: e
80
+ };
81
+ }
82
+ function P(r) {
83
+ const { ref: f } = O({
84
+ ...r,
85
+ searchEnabled: !r.disableSearch
86
+ });
87
+ return /* @__PURE__ */ j(
88
+ "select",
89
+ {
90
+ ref: f,
91
+ "data-testid": `select_${r.name}`,
92
+ ...$(r, [
93
+ "className",
94
+ "size",
95
+ "value",
96
+ "options",
97
+ "placeholder",
98
+ "onChange",
99
+ "allowHTML",
100
+ "silent",
101
+ "removeItemButton",
102
+ "shouldSort",
103
+ "itemSelectText",
104
+ "customProperties"
105
+ ]),
106
+ className: B("form-control", r.size && `form-control-${r.size}`)
107
+ }
108
+ );
109
+ }
110
+ R("Select.choicesjs", P);
111
+ export {
112
+ P as ChoiceSelect,
113
+ O as useChoices
114
+ };
115
+ //# sourceMappingURL=ChoicesSelect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChoicesSelect.js","sources":["../../../../../src/molecules/forms/select/components/ChoicesSelect.tsx"],"sourcesContent":["import Choices from \"@formio/choices.js\";\nimport cx from \"classnames\";\nimport { useEffect, useMemo, useRef } from \"react\";\nimport { useDebouncedCallback } from \"use-debounce\";\n\nimport { registerComponent } from \"../../../../registries/components\";\nimport { cleanFormControlProps } from \"../../form-control/FormControl\";\nimport type { AllSelectProps } from \"../Select.interface\";\nimport { callbackOnCreateTemplates } from \"./choices.template\";\n\nexport function useChoices({\n name,\n disabled,\n multiple,\n options,\n placeholder,\n searchEnabled = true,\n customProperties = {},\n size,\n value,\n required,\n onChange\n}: AllSelectProps) {\n const ref = useRef<any>();\n const choicesRef = useRef<Choices>();\n\n const opts = useMemo(() => {\n const isSelected = (itemValue: any) => [].concat(value as any).includes(itemValue as never);\n\n const opts = options.map((item) => {\n if (item.options) {\n item = {\n ...item,\n choices: item.options.map((item: any) => ({\n ...item,\n selected: isSelected(item.value)\n }))\n };\n }\n\n return {\n ...item,\n selected: isSelected(item.value)\n };\n });\n\n if (!multiple && placeholder) {\n return [\n {\n disabled: required,\n label: placeholder,\n value: \"\"\n },\n ...opts\n ];\n }\n\n return opts;\n }, [options, value, required, multiple, placeholder]);\n\n const onChangeCallback = useDebouncedCallback((name: string | undefined, value: any) => {\n onChange?.(name, value);\n }, 50);\n\n useEffect(() => {\n if (choicesRef.current) {\n if (multiple) {\n choicesRef.current.clearStore();\n choicesRef.current.setChoices(opts, \"value\", \"label\", true);\n } else {\n choicesRef.current.setChoices(opts, \"value\", \"label\", true);\n }\n }\n }, [opts]);\n\n useEffect(() => {\n if (!choicesRef.current) {\n const { allowHTML = true, silent = true, removeItemButton = true, shouldSort = false, itemSelectText = \"\" } = customProperties;\n choicesRef.current = new Choices(ref.current, {\n ...customProperties,\n allowHTML,\n silent,\n searchEnabled,\n removeItemButton,\n choices: opts,\n placeholder: placeholder as string,\n placeholderValue: \"\" as string,\n itemSelectText,\n shouldSort,\n callbackOnCreateTemplates\n } as any);\n }\n\n if (disabled) {\n choicesRef.current?.disable();\n } else {\n choicesRef.current?.enable();\n }\n\n const addItem = ({ detail: { value: newValue } }: any) => {\n onChangeCallback(name, multiple ? [...new Set([...new Set(value as string[]), newValue])] : newValue);\n };\n\n const removeItem = ({ detail: { value: newValue } }: any) => {\n if (multiple) {\n onChangeCallback(\n name,\n (value as string[]).filter((v) => v !== newValue)\n );\n } else {\n onChangeCallback(name, undefined as any);\n }\n };\n\n choicesRef.current?.passedElement.element.addEventListener(\"addItem\", addItem);\n choicesRef.current?.passedElement.element.addEventListener(\"removeItem\", removeItem);\n\n return () => {\n choicesRef.current?.passedElement.element.removeEventListener(\"addItem\", addItem);\n choicesRef.current?.passedElement.element.removeEventListener(\"removeItem\", removeItem);\n };\n }, [disabled, onChange, opts, placeholder, searchEnabled, size, value]);\n\n return {\n ref,\n choicesRef\n };\n}\n\nexport function ChoiceSelect(props: AllSelectProps) {\n const { ref } = useChoices({\n ...props,\n searchEnabled: !props.disableSearch\n });\n\n return (\n <select\n ref={ref}\n data-testid={`select_${props.name}`}\n {...cleanFormControlProps(props as any, [\n \"className\",\n \"size\",\n \"value\",\n \"options\",\n \"placeholder\",\n \"onChange\",\n \"allowHTML\",\n \"silent\",\n \"removeItemButton\",\n \"shouldSort\",\n \"itemSelectText\",\n \"customProperties\"\n ])}\n className={cx(\"form-control\", props.size && `form-control-${props.size}`)}\n />\n );\n}\n\nregisterComponent(\"Select.choicesjs\", ChoiceSelect);\n"],"names":["useChoices","name","disabled","multiple","options","placeholder","searchEnabled","customProperties","size","value","required","onChange","ref","useRef","choicesRef","opts","useMemo","isSelected","itemValue","item","onChangeCallback","useDebouncedCallback","useEffect","allowHTML","silent","removeItemButton","shouldSort","itemSelectText","Choices","callbackOnCreateTemplates","_a","_b","addItem","newValue","removeItem","v","_c","_d","ChoiceSelect","props","jsx","cleanFormControlProps","cx","registerComponent"],"mappings":";;;;;;;;AAUO,SAASA,EAAW;AAAA,EACzB,MAAAC;AAAA,EACA,UAAAC;AAAA,EACA,UAAAC;AAAA,EACA,SAAAC;AAAA,EACA,aAAAC;AAAA,EACA,eAAAC,IAAgB;AAAA,EAChB,kBAAAC,IAAmB,CAAC;AAAA,EACpB,MAAAC;AAAA,EACA,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,UAAAC;AACF,GAAmB;AACjB,QAAMC,IAAMC,EAAY,GAClBC,IAAaD,EAAgB,GAE7BE,IAAOC,EAAQ,MAAM;AACnB,UAAAC,IAAa,CAACC,MAAmB,GAAG,OAAOT,CAAY,EAAE,SAASS,CAAkB,GAEpFH,IAAOX,EAAQ,IAAI,CAACe,OACpBA,EAAK,YACAA,IAAA;AAAA,MACL,GAAGA;AAAA,MACH,SAASA,EAAK,QAAQ,IAAI,CAACA,OAAe;AAAA,QACxC,GAAGA;AAAAA,QACH,UAAUF,EAAWE,EAAK,KAAK;AAAA,MAAA,EAC/B;AAAA,IACJ,IAGK;AAAA,MACL,GAAGA;AAAA,MACH,UAAUF,EAAWE,EAAK,KAAK;AAAA,IACjC,EACD;AAEG,WAAA,CAAChB,KAAYE,IACR;AAAA,MACL;AAAA,QACE,UAAUK;AAAA,QACV,OAAOL;AAAA,QACP,OAAO;AAAA,MACT;AAAA,MACA,GAAGU;AAAAA,IACL,IAGKA;AAAAA,EAAA,GACN,CAACX,GAASK,GAAOC,GAAUP,GAAUE,CAAW,CAAC,GAE9Ce,IAAmBC,EAAqB,CAACpB,GAA0BQ,MAAe;AACtF,IAAAE,KAAA,QAAAA,EAAWV,GAAMQ;AAAAA,KAChB,EAAE;AAEL,SAAAa,EAAU,MAAM;AACd,IAAIR,EAAW,YACTX,KACFW,EAAW,QAAQ,WAAW,GAC9BA,EAAW,QAAQ,WAAWC,GAAM,SAAS,SAAS,EAAI;AAAA,EAI9D,GACC,CAACA,CAAI,CAAC,GAETO,EAAU,MAAM;;AACV,QAAA,CAACR,EAAW,SAAS;AACjB,YAAA,EAAE,WAAAS,IAAY,IAAM,QAAAC,IAAS,IAAM,kBAAAC,IAAmB,IAAM,YAAAC,IAAa,IAAO,gBAAAC,IAAiB,GAAO,IAAApB;AAC9G,MAAAO,EAAW,UAAU,IAAIc,EAAQhB,EAAI,SAAS;AAAA,QAC5C,GAAGL;AAAA,QACH,WAAAgB;AAAA,QACA,QAAAC;AAAA,QACA,eAAAlB;AAAA,QACA,kBAAAmB;AAAA,QACA,SAASV;AAAA,QACT,aAAAV;AAAA,QACA,kBAAkB;AAAA,QAClB,gBAAAsB;AAAA,QACA,YAAAD;AAAA,QACA,2BAAAG;AAAA,MAAA,CACM;AAAA,IAAA;AAGV,IAAI3B,KACF4B,IAAAhB,EAAW,YAAX,QAAAgB,EAAoB,aAEpBC,IAAAjB,EAAW,YAAX,QAAAiB,EAAoB;AAGhB,UAAAC,IAAU,CAAC,EAAE,QAAQ,EAAE,OAAOC,EAAA,QAAsB;AACxD,MAAAb,EAAiBnB,GAAME,IAAW,CAAC,GAAG,oBAAI,IAAI,CAAC,GAAG,IAAI,IAAIM,CAAiB,GAAGwB,CAAQ,CAAC,CAAC,IAAIA,CAAQ;AAAA,IACtG,GAEMC,IAAa,CAAC,EAAE,QAAQ,EAAE,OAAOD,EAAA,QAAsB;AAC3D,MAAI9B,IACFiB;AAAA,QACEnB;AAAA,QACCQ,EAAmB,OAAO,CAAC0B,MAAMA,MAAMF,CAAQ;AAAA,MAClD,IAEAb,EAAiBnB,GAAM,MAAgB;AAAA,IAE3C;AAEA,YAAAmC,IAAAtB,EAAW,YAAX,QAAAsB,EAAoB,cAAc,QAAQ,iBAAiB,WAAWJ,KACtEK,IAAAvB,EAAW,YAAX,QAAAuB,EAAoB,cAAc,QAAQ,iBAAiB,cAAcH,IAElE,MAAM;;AACX,OAAAJ,IAAAhB,EAAW,YAAX,QAAAgB,EAAoB,cAAc,QAAQ,oBAAoB,WAAWE,KACzED,IAAAjB,EAAW,YAAX,QAAAiB,EAAoB,cAAc,QAAQ,oBAAoB,cAAcG;AAAA,IAC9E;AAAA,EAAA,GACC,CAAChC,GAAUS,GAAUI,GAAMV,GAAaC,GAAeE,GAAMC,CAAK,CAAC,GAE/D;AAAA,IACL,KAAAG;AAAA,IACA,YAAAE;AAAA,EACF;AACF;AAEO,SAASwB,EAAaC,GAAuB;AAC5C,QAAA,EAAE,KAAA3B,EAAI,IAAIZ,EAAW;AAAA,IACzB,GAAGuC;AAAA,IACH,eAAe,CAACA,EAAM;AAAA,EAAA,CACvB;AAGC,SAAA,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAA5B;AAAA,MACA,eAAa,UAAU2B,EAAM,IAAI;AAAA,MAChC,GAAGE,EAAsBF,GAAc;AAAA,QACtC;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MAAA,CACD;AAAA,MACD,WAAWG,EAAG,gBAAgBH,EAAM,QAAQ,gBAAgBA,EAAM,IAAI,EAAE;AAAA,IAAA;AAAA,EAC1E;AAEJ;AAEAI,EAAkB,oBAAoBL,CAAY;"}
@@ -0,0 +1,2 @@
1
+ import { AllSelectProps } from '../Select.interface';
2
+ export declare function HTMLSelect({ name, id, size, value, multiple, onChange, options, placeholder, ...props }: AllSelectProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,35 @@
1
+ import { jsxs as g, jsx as o } from "react/jsx-runtime";
2
+ import { c as h } from "../../../../chunks/index.js";
3
+ import { registerComponent as v } from "../../../../registries/components.js";
4
+ import { getEventValue as x } from "../../../../utils/getEventValue.js";
5
+ import { cleanFormControlProps as S } from "../../form-control/FormControl.js";
6
+ function a({ value: t, label: n, ...e }) {
7
+ return /* @__PURE__ */ o("option", { ...e, value: t, children: n });
8
+ }
9
+ function j({ name: t, id: n = t, size: e, value: p, multiple: c, onChange: m, options: i, placeholder: l, ...s }) {
10
+ const f = !!i[0].options;
11
+ return /* @__PURE__ */ g(
12
+ "select",
13
+ {
14
+ "data-testid": `select_${t}`,
15
+ ...S(s),
16
+ className: h("form-control", e && `form-control-${e}`),
17
+ name: t,
18
+ id: n,
19
+ multiple: c,
20
+ value: p || "",
21
+ onChange: (r) => {
22
+ m && m(t, x(r));
23
+ },
24
+ children: [
25
+ l && !c && /* @__PURE__ */ o("option", { value: "", disabled: !0, children: l }),
26
+ f ? i.map(({ label: r, options: d }) => /* @__PURE__ */ o("optgroup", { label: r, children: d.map((u) => /* @__PURE__ */ o(a, { ...u }, String(u.value))) }, r)) : i.map((r) => /* @__PURE__ */ o(a, { ...r }, String(r.value)))
27
+ ]
28
+ }
29
+ );
30
+ }
31
+ v("Select.html5", j);
32
+ export {
33
+ j as HTMLSelect
34
+ };
35
+ //# sourceMappingURL=HtmlSelect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HtmlSelect.js","sources":["../../../../../src/molecules/forms/select/components/HtmlSelect.tsx"],"sourcesContent":["import cx from \"classnames\";\n\nimport { registerComponent } from \"../../../../registries/components\";\nimport { getEventValue } from \"../../../../utils/getEventValue\";\nimport { cleanFormControlProps } from \"../../form-control/FormControl\";\nimport { AllSelectProps, SelectOptionBaseProps } from \"../Select.interface\";\n\nfunction Option({ value, label, ...props }: SelectOptionBaseProps) {\n return (\n <option {...props} value={value as any}>\n {label}\n </option>\n );\n}\n\nexport function HTMLSelect({ name, id = name, size, value, multiple, onChange, options, placeholder, ...props }: AllSelectProps) {\n const hasGroup = !!options[0].options;\n\n return (\n <select\n data-testid={`select_${name}`}\n {...cleanFormControlProps(props as any)}\n className={cx(\"form-control\", size && `form-control-${size}`)}\n name={name}\n id={id}\n multiple={multiple}\n value={value || (\"\" as any)}\n onChange={(event) => {\n onChange && onChange(name, getEventValue(event));\n }}\n >\n {placeholder && !multiple && (\n <option value='' disabled>\n {placeholder}\n </option>\n )}\n {hasGroup\n ? options.map(({ label, options }) => {\n return (\n <optgroup key={label} label={label}>\n {options.map((props: SelectOptionBaseProps) => {\n return <Option key={String(props.value)} {...props} />;\n })}\n </optgroup>\n );\n })\n : (options as SelectOptionBaseProps[]).map((props) => {\n return <Option key={String(props.value)} {...props} />;\n })}\n </select>\n );\n}\n\nregisterComponent(\"Select.html5\", HTMLSelect);\n"],"names":["Option","value","label","props","jsx","HTMLSelect","name","id","size","multiple","onChange","options","placeholder","hasGroup","jsxs","cleanFormControlProps","cx","event","getEventValue","registerComponent"],"mappings":";;;;;AAOA,SAASA,EAAO,EAAE,OAAAC,GAAO,OAAAC,GAAO,GAAGC,KAAgC;AACjE,SACG,gBAAAC,EAAA,UAAA,EAAQ,GAAGD,GAAO,OAAAF,GAChB,UACHC,GAAA;AAEJ;AAEO,SAASG,EAAW,EAAE,MAAAC,GAAM,IAAAC,IAAKD,GAAM,MAAAE,GAAM,OAAAP,GAAO,UAAAQ,GAAU,UAAAC,GAAU,SAAAC,GAAS,aAAAC,GAAa,GAAGT,KAAyB;AAC/H,QAAMU,IAAW,CAAC,CAACF,EAAQ,CAAC,EAAE;AAG5B,SAAA,gBAAAG;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,eAAa,UAAUR,CAAI;AAAA,MAC1B,GAAGS,EAAsBZ,CAAY;AAAA,MACtC,WAAWa,EAAG,gBAAgBR,KAAQ,gBAAgBA,CAAI,EAAE;AAAA,MAC5D,MAAAF;AAAA,MACA,IAAAC;AAAA,MACA,UAAAE;AAAA,MACA,OAAOR,KAAU;AAAA,MACjB,UAAU,CAACgB,MAAU;AACnB,QAAAP,KAAYA,EAASJ,GAAMY,EAAcD,CAAK,CAAC;AAAA,MACjD;AAAA,MAEC,UAAA;AAAA,QAAeL,KAAA,CAACH,KACd,gBAAAL,EAAA,UAAA,EAAO,OAAM,IAAG,UAAQ,IACtB,UACHQ,EAAA,CAAA;AAAA,QAEDC,IACGF,EAAQ,IAAI,CAAC,EAAE,OAAAT,GAAO,SAAAS,0BAEjB,YAAqB,EAAA,OAAAT,GACnB,UAAAS,EAAQ,IAAI,CAACR,wBACJH,GAAkC,EAAA,GAAGG,KAAzB,OAAOA,EAAM,KAAK,CAAc,CACrD,KAHYD,CAIf,CAEH,IACAS,EAAoC,IAAI,CAACR,wBAChCH,GAAkC,EAAA,GAAGG,KAAzB,OAAOA,EAAM,KAAK,CAAc,CACrD;AAAA,MAAA;AAAA,IAAA;AAAA,EACP;AAEJ;AAEAgB,EAAkB,gBAAgBd,CAAU;"}
@@ -0,0 +1,2 @@
1
+ import { AllSelectProps } from '../Select.interface';
2
+ export declare function ReactSelect(props: AllSelectProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,46 @@
1
+ import { jsx as r } from "react/jsx-runtime";
2
+ import m from "react-select";
3
+ import { i as s } from "../../../../chunks/react-select-animated.esm.js";
4
+ import { registerComponent as f } from "../../../../registries/components.js";
5
+ const d = s();
6
+ function v(e, a) {
7
+ const t = [].concat(e);
8
+ return a.flatMap((n) => {
9
+ if (t.includes(n.value))
10
+ return n;
11
+ if (n.options)
12
+ return n.options.filter((l) => t.includes(l.value));
13
+ }).filter(Boolean);
14
+ }
15
+ function h(e, a) {
16
+ return a ? [].concat(e).filter(Boolean).map((t) => t.value) : e.value;
17
+ }
18
+ function b(e) {
19
+ const { placeholder: a, options: t, multiple: n, searchEnabled: l = !0, customProperties: o = {} } = e, i = v(e.value, e.options);
20
+ return /* @__PURE__ */ r(
21
+ m,
22
+ {
23
+ ...o,
24
+ id: e.id,
25
+ placeholder: a,
26
+ className: "react-select-container",
27
+ classNamePrefix: "react-select",
28
+ name: e.name || "",
29
+ components: d,
30
+ options: t,
31
+ isDisabled: e.disabled,
32
+ isSearchable: l,
33
+ isMulti: e.multiple,
34
+ value: n ? i : i[0],
35
+ onChange: (u) => {
36
+ var c;
37
+ (c = e.onChange) == null || c.call(e, e.name, h(u, e.multiple));
38
+ }
39
+ }
40
+ );
41
+ }
42
+ f("Select.react", b);
43
+ export {
44
+ b as ReactSelect
45
+ };
46
+ //# sourceMappingURL=ReactSelect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReactSelect.js","sources":["../../../../../src/molecules/forms/select/components/ReactSelect.tsx"],"sourcesContent":["import Select, { OptionsOrGroups } from \"react-select\";\nimport makeAnimated from \"react-select/animated\";\n\nimport { registerComponent } from \"../../../../registries/components\";\nimport { AllSelectProps } from \"../Select.interface\";\n\nconst animatedComponents = makeAnimated();\n\nfunction findValues(value: string | string[], options: AllSelectProps[\"options\"][0]) {\n const localValue: string[] = [].concat(value as never);\n\n return options\n .flatMap((item: any) => {\n if (localValue.includes(item.value)) {\n return item;\n }\n\n if (item.options) {\n return item.options.filter((option: any) => localValue.includes(option.value));\n }\n })\n .filter(Boolean);\n}\n\nfunction mapValues(value: { label: string; value: never[] } | null, multiple?: boolean) {\n return multiple\n ? []\n .concat(value as never)\n .filter(Boolean)\n .map((v: { value: unknown }) => v.value)\n : (value as any).value;\n}\n\nexport function ReactSelect(props: AllSelectProps) {\n const { placeholder, options, multiple, searchEnabled = true, customProperties = {} } = props;\n\n const values = findValues(props.value!, props.options);\n\n return (\n <Select<{ label: string; value: never | never[] }>\n {...customProperties}\n id={props.id}\n placeholder={placeholder}\n className='react-select-container'\n classNamePrefix='react-select'\n name={props.name || \"\"}\n components={animatedComponents}\n options={options as OptionsOrGroups<any, any>}\n isDisabled={props.disabled}\n isSearchable={searchEnabled}\n isMulti={props.multiple as false}\n value={multiple ? values : values[0]}\n onChange={(value) => {\n props.onChange?.(props.name, mapValues(value, props.multiple));\n }}\n />\n );\n}\n\nregisterComponent(\"Select.react\", ReactSelect);\n"],"names":["animatedComponents","makeAnimated","findValues","value","options","localValue","item","option","mapValues","multiple","v","ReactSelect","props","placeholder","searchEnabled","customProperties","values","jsx","Select","_a","registerComponent"],"mappings":";;;;AAMA,MAAMA,IAAqBC,EAAa;AAExC,SAASC,EAAWC,GAA0BC,GAAuC;AACnF,QAAMC,IAAuB,CAAA,EAAG,OAAOF,CAAc;AAE9C,SAAAC,EACJ,QAAQ,CAACE,MAAc;AACtB,QAAID,EAAW,SAASC,EAAK,KAAK;AACzB,aAAAA;AAGT,QAAIA,EAAK;AACA,aAAAA,EAAK,QAAQ,OAAO,CAACC,MAAgBF,EAAW,SAASE,EAAO,KAAK,CAAC;AAAA,EAC/E,CACD,EACA,OAAO,OAAO;AACnB;AAEA,SAASC,EAAUL,GAAiDM,GAAoB;AACtF,SAAOA,IACH,CACG,EAAA,OAAON,CAAc,EACrB,OAAO,OAAO,EACd,IAAI,CAACO,MAA0BA,EAAE,KAAK,IACxCP,EAAc;AACrB;AAEO,SAASQ,EAAYC,GAAuB;AAC3C,QAAA,EAAE,aAAAC,GAAa,SAAAT,GAAS,UAAAK,GAAU,eAAAK,IAAgB,IAAM,kBAAAC,IAAmB,CAAC,EAAA,IAAMH,GAElFI,IAASd,EAAWU,EAAM,OAAQA,EAAM,OAAO;AAGnD,SAAA,gBAAAK;AAAA,IAACC;AAAA,IAAA;AAAA,MACE,GAAGH;AAAA,MACJ,IAAIH,EAAM;AAAA,MACV,aAAAC;AAAA,MACA,WAAU;AAAA,MACV,iBAAgB;AAAA,MAChB,MAAMD,EAAM,QAAQ;AAAA,MACpB,YAAYZ;AAAA,MACZ,SAAAI;AAAA,MACA,YAAYQ,EAAM;AAAA,MAClB,cAAcE;AAAA,MACd,SAASF,EAAM;AAAA,MACf,OAAOH,IAAWO,IAASA,EAAO,CAAC;AAAA,MACnC,UAAU,CAACb,MAAU;;AACnB,SAAAgB,IAAAP,EAAM,aAAN,QAAAO,EAAA,KAAAP,GAAiBA,EAAM,MAAMJ,EAAUL,GAAOS,EAAM,QAAQ;AAAA,MAAC;AAAA,IAC/D;AAAA,EACF;AAEJ;AAEAQ,EAAkB,gBAAgBT,CAAW;"}
@@ -0,0 +1,7 @@
1
+ export declare function callbackOnCreateTemplates(this: {
2
+ config: {
3
+ itemSelectText: string;
4
+ };
5
+ }, strToEl: (template: string) => any): {
6
+ choice: (...args: any) => any;
7
+ };