@webiny/admin-ui 6.0.0-alpha.0 → 6.0.0-alpha.1

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 (400) hide show
  1. package/Accordion/Accordion.d.ts +1 -20
  2. package/Accordion/Accordion.js.map +1 -1
  3. package/Accordion/Accordion.mdx +11 -4
  4. package/Accordion/Accordion.stories.d.ts +1 -1
  5. package/Accordion/Accordion.stories.js +15 -9
  6. package/Accordion/Accordion.stories.js.map +1 -1
  7. package/Accordion/components/AccordionContent.js +1 -1
  8. package/Accordion/components/AccordionContent.js.map +1 -1
  9. package/Accordion/components/AccordionItem.d.ts +1 -19
  10. package/Accordion/components/AccordionItem.js +3 -7
  11. package/Accordion/components/AccordionItem.js.map +1 -1
  12. package/Accordion/components/AccordionItemAction.d.ts +1 -1
  13. package/Accordion/components/AccordionItemAction.js.map +1 -1
  14. package/Accordion/components/AccordionItemDragHandle.d.ts +8 -0
  15. package/Accordion/components/AccordionItemDragHandle.js +36 -0
  16. package/Accordion/components/AccordionItemDragHandle.js.map +1 -0
  17. package/Accordion/components/AccordionItemIcon.d.ts +1 -1
  18. package/Accordion/components/AccordionItemIcon.js.map +1 -1
  19. package/Accordion/components/AccordionTrigger.d.ts +2 -2
  20. package/Accordion/components/AccordionTrigger.js +5 -4
  21. package/Accordion/components/AccordionTrigger.js.map +1 -1
  22. package/AutoComplete/AutoComplete.d.ts +2 -2
  23. package/AutoComplete/AutoComplete.js.map +1 -1
  24. package/AutoComplete/domains/AutoCompleteOption.d.ts +1 -1
  25. package/AutoComplete/domains/AutoCompleteOption.js.map +1 -1
  26. package/AutoComplete/domains/AutoCompleteOptionDto.d.ts +1 -1
  27. package/AutoComplete/domains/AutoCompleteOptionDto.js.map +1 -1
  28. package/AutoComplete/primitives/AutoCompletePrimitive.d.ts +3 -6
  29. package/AutoComplete/primitives/AutoCompletePrimitive.js +1 -0
  30. package/AutoComplete/primitives/AutoCompletePrimitive.js.map +1 -1
  31. package/AutoComplete/primitives/AutoCompletePrimitive.stories.d.ts +3 -0
  32. package/AutoComplete/primitives/AutoCompletePrimitive.stories.js +30 -0
  33. package/AutoComplete/primitives/AutoCompletePrimitive.stories.js.map +1 -1
  34. package/AutoComplete/primitives/components/AutoCompleteInputIcons.d.ts +1 -0
  35. package/AutoComplete/primitives/components/AutoCompleteInputIcons.js +3 -2
  36. package/AutoComplete/primitives/components/AutoCompleteInputIcons.js.map +1 -1
  37. package/AutoComplete/primitives/components/AutoCompleteList.d.ts +1 -1
  38. package/AutoComplete/primitives/components/AutoCompleteList.js.map +1 -1
  39. package/AutoComplete/primitives/presenters/AutoCompleteListOptionsPresenter.d.ts +2 -2
  40. package/AutoComplete/primitives/presenters/AutoCompleteListOptionsPresenter.js.map +1 -1
  41. package/AutoComplete/primitives/presenters/AutoCompletePresenter.d.ts +3 -3
  42. package/AutoComplete/primitives/presenters/AutoCompletePresenter.js.map +1 -1
  43. package/AutoComplete/primitives/useAutoComplete.d.ts +1 -1
  44. package/AutoComplete/primitives/useAutoComplete.js.map +1 -1
  45. package/Button/Button.js +2 -2
  46. package/Button/Button.js.map +1 -1
  47. package/Button/CopyButton.d.ts +2 -3
  48. package/Button/CopyButton.js.map +1 -1
  49. package/Button/IconButton.js +2 -2
  50. package/Button/IconButton.js.map +1 -1
  51. package/Card/Card.d.ts +2 -1
  52. package/Card/Card.js.map +1 -1
  53. package/Card/components/CardFooter.d.ts +1 -1
  54. package/Card/components/CardFooter.js.map +1 -1
  55. package/Card/components/CardHeader.d.ts +1 -1
  56. package/Card/components/CardHeader.js.map +1 -1
  57. package/Card/components/CardRoot.d.ts +1 -1
  58. package/Card/components/CardRoot.js.map +1 -1
  59. package/Checkbox/Checkbox.d.ts +2 -2
  60. package/Checkbox/Checkbox.js.map +1 -1
  61. package/Checkbox/domains/CheckboxItem.d.ts +1 -1
  62. package/Checkbox/domains/CheckboxItem.js.map +1 -1
  63. package/Checkbox/domains/CheckboxItemDto.d.ts +1 -1
  64. package/Checkbox/domains/CheckboxItemDto.js.map +1 -1
  65. package/Checkbox/domains/CheckboxItemFormatted.d.ts +1 -1
  66. package/Checkbox/domains/CheckboxItemFormatted.js.map +1 -1
  67. package/Checkbox/domains/CheckboxItemMapper.d.ts +2 -2
  68. package/Checkbox/domains/CheckboxItemMapper.js.map +1 -1
  69. package/Checkbox/primitives/CheckboxPrimitive.d.ts +6 -0
  70. package/Checkbox/primitives/presenters/CheckboxPresenter.d.ts +1 -1
  71. package/Checkbox/primitives/presenters/CheckboxPresenter.js.map +1 -1
  72. package/Checkbox/primitives/useCheckbox.d.ts +1 -1
  73. package/Checkbox/primitives/useCheckbox.js.map +1 -1
  74. package/CheckboxGroup/CheckboxGroup.d.ts +2 -2
  75. package/CheckboxGroup/CheckboxGroup.js.map +1 -1
  76. package/CheckboxGroup/primitives/CheckboxGroupPrimitive.d.ts +1 -1
  77. package/CheckboxGroup/primitives/CheckboxGroupPrimitive.js.map +1 -1
  78. package/CheckboxGroup/primitives/presenters/CheckboxGroupPresenter.d.ts +1 -1
  79. package/CheckboxGroup/primitives/presenters/CheckboxGroupPresenter.js.map +1 -1
  80. package/CheckboxGroup/primitives/useCheckboxGroup.d.ts +1 -1
  81. package/CheckboxGroup/primitives/useCheckboxGroup.js.map +1 -1
  82. package/CodeEditor/CodeEditor.d.ts +2 -2
  83. package/CodeEditor/CodeEditor.js.map +1 -1
  84. package/CodeEditor/CodeEditorPrimitive.d.ts +1 -3
  85. package/CodeEditor/CodeEditorPrimitive.js +1 -2
  86. package/CodeEditor/CodeEditorPrimitive.js.map +1 -1
  87. package/ColorPicker/ColorPicker.d.ts +2 -2
  88. package/ColorPicker/ColorPicker.js.map +1 -1
  89. package/ColorPicker/primitives/presenters/ColorPickerPresenter.d.ts +1 -1
  90. package/ColorPicker/primitives/presenters/ColorPickerPresenter.js.map +1 -1
  91. package/ColorPicker/primitives/presenters/ColorPickerPresenter.test.js.map +1 -1
  92. package/ColorPicker/primitives/useColorPicker.d.ts +1 -1
  93. package/ColorPicker/primitives/useColorPicker.js.map +1 -1
  94. package/Command/components/Input.d.ts +1 -1
  95. package/Command/components/Input.js.map +1 -1
  96. package/Command/domain/CommandOption.d.ts +1 -1
  97. package/Command/domain/CommandOption.js.map +1 -1
  98. package/Command/domain/CommandOptionFormatter.d.ts +2 -2
  99. package/Command/domain/CommandOptionFormatter.js.map +1 -1
  100. package/DataList/DataList.d.ts +1 -1
  101. package/DataList/DataList.js.map +1 -1
  102. package/DataList/DataListIcons.d.ts +1 -1
  103. package/DataList/DataListIcons.js.map +1 -1
  104. package/DataList/DataListWithSections.d.ts +1 -1
  105. package/DataList/DataListWithSections.js.map +1 -1
  106. package/DataList/components/Filters.d.ts +1 -1
  107. package/DataList/components/Filters.js.map +1 -1
  108. package/DataList/components/Loader.d.ts +1 -1
  109. package/DataList/components/Loader.js.map +1 -1
  110. package/DataList/components/MultiSelectActions.d.ts +1 -1
  111. package/DataList/components/MultiSelectActions.js.map +1 -1
  112. package/DataList/components/MultiSelectAll.d.ts +1 -1
  113. package/DataList/components/MultiSelectAll.js.map +1 -1
  114. package/DataList/components/Pagination.d.ts +1 -1
  115. package/DataList/components/Pagination.js.map +1 -1
  116. package/DataList/components/RefreshButton.d.ts +1 -1
  117. package/DataList/components/RefreshButton.js.map +1 -1
  118. package/DataList/components/Sorters.d.ts +1 -1
  119. package/DataList/components/Sorters.js.map +1 -1
  120. package/DataTable/DataTable.d.ts +1 -1
  121. package/DataTable/DataTable.js.map +1 -1
  122. package/DataTable/DataTable.stories.d.ts +2 -1
  123. package/DataTable/DataTable.stories.js.map +1 -1
  124. package/DataTable/components/ColumnsVisibility.d.ts +1 -1
  125. package/DataTable/components/ColumnsVisibility.js.map +1 -1
  126. package/Dialog/components/CancelButton.d.ts +1 -1
  127. package/Dialog/components/CancelButton.js.map +1 -1
  128. package/Dialog/components/ConfirmButton.d.ts +1 -1
  129. package/Dialog/components/ConfirmButton.js.map +1 -1
  130. package/Dialog/components/Icon.d.ts +1 -1
  131. package/Dialog/components/Icon.js.map +1 -1
  132. package/Drawer/components/CancelButton.d.ts +1 -1
  133. package/Drawer/components/CancelButton.js.map +1 -1
  134. package/Drawer/components/ConfirmButton.d.ts +1 -1
  135. package/Drawer/components/ConfirmButton.js.map +1 -1
  136. package/Drawer/components/Icon.d.ts +1 -1
  137. package/Drawer/components/Icon.js.map +1 -1
  138. package/DropdownMenu/components/DropdownMenuItem.d.ts +1 -1
  139. package/DropdownMenu/components/DropdownMenuItem.js.map +1 -1
  140. package/FilePicker/FilePicker.js +9 -13
  141. package/FilePicker/FilePicker.js.map +1 -1
  142. package/FilePicker/domains/FileItemFormatter.d.ts +1 -1
  143. package/FilePicker/domains/FileItemFormatter.js.map +1 -1
  144. package/FilePicker/primitives/FilePickerPrimitive.d.ts +12 -8
  145. package/FilePicker/primitives/FilePickerPrimitive.js +15 -5
  146. package/FilePicker/primitives/FilePickerPrimitive.js.map +1 -1
  147. package/FilePicker/primitives/components/Description.d.ts +8 -0
  148. package/FilePicker/primitives/components/Description.js +19 -0
  149. package/FilePicker/primitives/components/Description.js.map +1 -0
  150. package/FilePicker/primitives/components/Label.d.ts +3 -3
  151. package/FilePicker/primitives/components/Label.js +8 -9
  152. package/FilePicker/primitives/components/Label.js.map +1 -1
  153. package/FilePicker/primitives/components/Trigger.js +22 -16
  154. package/FilePicker/primitives/components/Trigger.js.map +1 -1
  155. package/FilePicker/primitives/components/index.d.ts +1 -0
  156. package/FilePicker/primitives/components/index.js +1 -0
  157. package/FilePicker/primitives/components/index.js.map +1 -1
  158. package/FilePicker/primitives/components/previews/FilePreview.d.ts +2 -2
  159. package/FilePicker/primitives/components/previews/FilePreview.js.map +1 -1
  160. package/FilePicker/primitives/components/types.d.ts +2 -2
  161. package/FilePicker/primitives/components/types.js.map +1 -1
  162. package/FormComponent/FormComponent.d.ts +2 -2
  163. package/FormComponent/FormComponent.js.map +1 -1
  164. package/FormComponent/Label.js.map +1 -1
  165. package/IconPicker/IconPicker.d.ts +2 -2
  166. package/IconPicker/IconPicker.js.map +1 -1
  167. package/IconPicker/domains/IconPickerFontAwesome.d.ts +1 -1
  168. package/IconPicker/domains/IconPickerFontAwesome.js.map +1 -1
  169. package/IconPicker/domains/IconPickerIcon.d.ts +1 -1
  170. package/IconPicker/domains/IconPickerIcon.js.map +1 -1
  171. package/IconPicker/domains/IconPickerIconFormatter.d.ts +2 -2
  172. package/IconPicker/domains/IconPickerIconFormatter.js.map +1 -1
  173. package/IconPicker/primitives/IconPickerPrimitive.d.ts +2 -2
  174. package/IconPicker/primitives/IconPickerPrimitive.js.map +1 -1
  175. package/IconPicker/primitives/components/IconPickerGrid.d.ts +1 -1
  176. package/IconPicker/primitives/components/IconPickerGrid.js.map +1 -1
  177. package/IconPicker/primitives/components/IconPickerIcon.d.ts +1 -1
  178. package/IconPicker/primitives/components/IconPickerIcon.js.map +1 -1
  179. package/IconPicker/primitives/components/IconPickerInput.js.map +1 -1
  180. package/IconPicker/primitives/presenters/IconPickerPresenter.d.ts +1 -1
  181. package/IconPicker/primitives/presenters/IconPickerPresenter.js.map +1 -1
  182. package/IconPicker/primitives/useIconPicker.d.ts +1 -1
  183. package/IconPicker/primitives/useIconPicker.js.map +1 -1
  184. package/Input/InputPrimitive.d.ts +5 -14
  185. package/Input/InputPrimitive.js +15 -124
  186. package/Input/InputPrimitive.js.map +1 -1
  187. package/Input/InputPrimitive.stories.js +19 -4
  188. package/Input/InputPrimitive.stories.js.map +1 -1
  189. package/List/components/ListItemAction.d.ts +1 -1
  190. package/List/components/ListItemAction.js.map +1 -1
  191. package/List/components/ListItemHandle.d.ts +1 -1
  192. package/List/components/ListItemHandle.js.map +1 -1
  193. package/List/components/ListItemIcon.d.ts +1 -1
  194. package/List/components/ListItemIcon.js.map +1 -1
  195. package/Loader/OverlayLoader.d.ts +1 -1
  196. package/Loader/OverlayLoader.js.map +1 -1
  197. package/MultiAutoComplete/MultiAutoComplete.d.ts +2 -2
  198. package/MultiAutoComplete/MultiAutoComplete.js.map +1 -1
  199. package/MultiAutoComplete/domains/MultiAutoCompleteOption.d.ts +1 -1
  200. package/MultiAutoComplete/domains/MultiAutoCompleteOption.js.map +1 -1
  201. package/MultiAutoComplete/domains/MultiAutoCompleteOptionDto.d.ts +1 -1
  202. package/MultiAutoComplete/domains/MultiAutoCompleteOptionDto.js.map +1 -1
  203. package/MultiAutoComplete/primitives/MultiAutoCompletePrimitive.d.ts +3 -3
  204. package/MultiAutoComplete/primitives/MultiAutoCompletePrimitive.js +1 -0
  205. package/MultiAutoComplete/primitives/MultiAutoCompletePrimitive.js.map +1 -1
  206. package/MultiAutoComplete/primitives/MultiAutoCompletePrimitive.stories.d.ts +3 -0
  207. package/MultiAutoComplete/primitives/MultiAutoCompletePrimitive.stories.js +78 -4
  208. package/MultiAutoComplete/primitives/MultiAutoCompletePrimitive.stories.js.map +1 -1
  209. package/MultiAutoComplete/primitives/components/MultiAutoCompleteInput.d.ts +2 -2
  210. package/MultiAutoComplete/primitives/components/MultiAutoCompleteInput.js +7 -13
  211. package/MultiAutoComplete/primitives/components/MultiAutoCompleteInput.js.map +1 -1
  212. package/MultiAutoComplete/primitives/components/MultiAutoCompleteInputIcons.d.ts +1 -0
  213. package/MultiAutoComplete/primitives/components/MultiAutoCompleteInputIcons.js +3 -2
  214. package/MultiAutoComplete/primitives/components/MultiAutoCompleteInputIcons.js.map +1 -1
  215. package/MultiAutoComplete/primitives/components/MultiAutoCompleteList.d.ts +1 -1
  216. package/MultiAutoComplete/primitives/components/MultiAutoCompleteList.js.map +1 -1
  217. package/MultiAutoComplete/primitives/presenters/MultiAutoCompleteListOptionsPresenter.d.ts +2 -2
  218. package/MultiAutoComplete/primitives/presenters/MultiAutoCompleteListOptionsPresenter.js.map +1 -1
  219. package/MultiAutoComplete/primitives/presenters/MultiAutoCompleteListOptionsPresenterWithUniqueValues.d.ts +2 -2
  220. package/MultiAutoComplete/primitives/presenters/MultiAutoCompleteListOptionsPresenterWithUniqueValues.js.map +1 -1
  221. package/MultiAutoComplete/primitives/presenters/MultiAutoCompletePresenter.d.ts +5 -5
  222. package/MultiAutoComplete/primitives/presenters/MultiAutoCompletePresenter.js +4 -1
  223. package/MultiAutoComplete/primitives/presenters/MultiAutoCompletePresenter.js.map +1 -1
  224. package/MultiAutoComplete/primitives/presenters/MultiAutoCompletePresenter.test.js.map +1 -1
  225. package/MultiAutoComplete/primitives/presenters/MultiAutoCompletePresenterWithFreeInput.d.ts +2 -2
  226. package/MultiAutoComplete/primitives/presenters/MultiAutoCompletePresenterWithFreeInput.js.map +1 -1
  227. package/MultiAutoComplete/primitives/presenters/MultiAutoCompletePresenterWithFreeInput.test.js.map +1 -1
  228. package/MultiAutoComplete/primitives/presenters/MultiAutoCompleteSelectedOptionsPresenter.d.ts +2 -2
  229. package/MultiAutoComplete/primitives/presenters/MultiAutoCompleteSelectedOptionsPresenter.js +4 -1
  230. package/MultiAutoComplete/primitives/presenters/MultiAutoCompleteSelectedOptionsPresenter.js.map +1 -1
  231. package/MultiAutoComplete/primitives/presenters/MultiAutoCompleteTemporaryOptionPresenter.d.ts +1 -1
  232. package/MultiAutoComplete/primitives/presenters/MultiAutoCompleteTemporaryOptionPresenter.js.map +1 -1
  233. package/MultiAutoComplete/primitives/useMultiAutoComplete.d.ts +1 -1
  234. package/MultiAutoComplete/primitives/useMultiAutoComplete.js.map +1 -1
  235. package/MultiFilePicker/MultiFilePicker.js +8 -12
  236. package/MultiFilePicker/MultiFilePicker.js.map +1 -1
  237. package/MultiFilePicker/primitives/MultiFilePickerPrimitive.d.ts +18 -10
  238. package/MultiFilePicker/primitives/MultiFilePickerPrimitive.js +16 -6
  239. package/MultiFilePicker/primitives/MultiFilePickerPrimitive.js.map +1 -1
  240. package/RadioGroup/RadioGroup.d.ts +2 -2
  241. package/RadioGroup/RadioGroup.js.map +1 -1
  242. package/RadioGroup/domains/RadioItem.d.ts +1 -1
  243. package/RadioGroup/domains/RadioItem.js.map +1 -1
  244. package/RadioGroup/domains/RadioItemFormatted.d.ts +1 -1
  245. package/RadioGroup/domains/RadioItemFormatted.js.map +1 -1
  246. package/RadioGroup/domains/RadioItemFormatter.d.ts +2 -2
  247. package/RadioGroup/domains/RadioItemFormatter.js.map +1 -1
  248. package/RadioGroup/domains/RadioItemParams.d.ts +1 -1
  249. package/RadioGroup/domains/RadioItemParams.js.map +1 -1
  250. package/RadioGroup/primitives/RadioGroupPrimitive.d.ts +1 -1
  251. package/RadioGroup/primitives/RadioGroupPrimitive.js +1 -1
  252. package/RadioGroup/primitives/RadioGroupPrimitive.js.map +1 -1
  253. package/RadioGroup/primitives/presenters/RadioGroupPresenter.d.ts +2 -2
  254. package/RadioGroup/primitives/presenters/RadioGroupPresenter.js.map +1 -1
  255. package/RadioGroup/primitives/useRadioGroup.d.ts +1 -1
  256. package/RadioGroup/primitives/useRadioGroup.js.map +1 -1
  257. package/RangeSlider/RangeSlider.d.ts +2 -2
  258. package/RangeSlider/RangeSlider.js.map +1 -1
  259. package/RangeSlider/primitives/RangeSliderPrimitive.d.ts +1 -1
  260. package/RangeSlider/primitives/RangeSliderPrimitive.js.map +1 -1
  261. package/RangeSlider/primitives/presenters/RangeSliderPresenter.d.ts +1 -1
  262. package/RangeSlider/primitives/presenters/RangeSliderPresenter.js.map +1 -1
  263. package/RangeSlider/primitives/useRangeSlider.d.ts +1 -1
  264. package/RangeSlider/primitives/useRangeSlider.js.map +1 -1
  265. package/RichTextEditor/RichTextEditor.d.ts +2 -2
  266. package/RichTextEditor/RichTextEditor.js.map +1 -1
  267. package/RichTextEditor/RichTextEditorPrimitive.d.ts +1 -1
  268. package/RichTextEditor/RichTextEditorPrimitive.js.map +1 -1
  269. package/RichTextEditor/createPropsFromConfig.d.ts +1 -1
  270. package/RichTextEditor/createPropsFromConfig.js.map +1 -1
  271. package/Select/Select.d.ts +2 -2
  272. package/Select/Select.js.map +1 -1
  273. package/Select/domains/SelectOption.d.ts +1 -1
  274. package/Select/domains/SelectOption.js.map +1 -1
  275. package/Select/domains/SelectOptionMapper.d.ts +2 -2
  276. package/Select/domains/SelectOptionMapper.js.map +1 -1
  277. package/Select/primitives/SelectPrimitive.d.ts +2 -2
  278. package/Select/primitives/SelectPrimitive.js +4 -3
  279. package/Select/primitives/SelectPrimitive.js.map +1 -1
  280. package/Select/primitives/SelectPrimitive.stories.d.ts +3 -0
  281. package/Select/primitives/SelectPrimitive.stories.js +28 -0
  282. package/Select/primitives/SelectPrimitive.stories.js.map +1 -1
  283. package/Select/primitives/components/SelectTrigger.d.ts +1 -1
  284. package/Select/primitives/components/SelectTrigger.js +6 -1
  285. package/Select/primitives/components/SelectTrigger.js.map +1 -1
  286. package/Select/primitives/presenters/SelectPresenter.d.ts +2 -1
  287. package/Select/primitives/presenters/SelectPresenter.js.map +1 -1
  288. package/Select/primitives/useSelect.d.ts +1 -1
  289. package/Select/primitives/useSelect.js.map +1 -1
  290. package/Sidebar/components/SidebarRoot.js +1 -4
  291. package/Sidebar/components/SidebarRoot.js.map +1 -1
  292. package/Sidebar/components/items/SidebarMenuItem.d.ts +1 -1
  293. package/Sidebar/components/items/SidebarMenuItem.js.map +1 -1
  294. package/Slider/Slider.d.ts +2 -2
  295. package/Slider/Slider.js.map +1 -1
  296. package/Slider/primitives/SliderPrimitive.d.ts +1 -1
  297. package/Slider/primitives/SliderPrimitive.js.map +1 -1
  298. package/Slider/primitives/components/SliderThumb.d.ts +1 -1
  299. package/Slider/primitives/components/SliderThumb.js.map +1 -1
  300. package/Slider/primitives/presenters/SliderPresenter.d.ts +1 -1
  301. package/Slider/primitives/presenters/SliderPresenter.js.map +1 -1
  302. package/Slider/primitives/useSlider.d.ts +1 -1
  303. package/Slider/primitives/useSlider.js.map +1 -1
  304. package/Switch/Switch.d.ts +2 -2
  305. package/Switch/Switch.js.map +1 -1
  306. package/Switch/domains/SwitchItem.d.ts +1 -1
  307. package/Switch/domains/SwitchItem.js.map +1 -1
  308. package/Switch/domains/SwitchItemDto.d.ts +1 -1
  309. package/Switch/domains/SwitchItemDto.js.map +1 -1
  310. package/Switch/domains/SwitchItemFormatted.d.ts +1 -1
  311. package/Switch/domains/SwitchItemFormatted.js.map +1 -1
  312. package/Switch/domains/SwitchItemMapper.d.ts +2 -2
  313. package/Switch/domains/SwitchItemMapper.js.map +1 -1
  314. package/Switch/primitives/SwitchPrimitive.d.ts +1 -1
  315. package/Switch/primitives/SwitchPrimitive.js.map +1 -1
  316. package/Switch/primitives/presenters/SwitchPresenter.d.ts +2 -2
  317. package/Switch/primitives/presenters/SwitchPresenter.js.map +1 -1
  318. package/Switch/primitives/useSwitch.d.ts +1 -1
  319. package/Switch/primitives/useSwitch.js.map +1 -1
  320. package/Tabs/Tabs.d.ts +1 -1
  321. package/Tabs/Tabs.js.map +1 -1
  322. package/Tabs/components/Context.d.ts +1 -1
  323. package/Tabs/components/Context.js.map +1 -1
  324. package/Tabs/components/Tab.d.ts +2 -2
  325. package/Tabs/components/Tab.js.map +1 -1
  326. package/Tag/Tag.js.map +1 -1
  327. package/Tags/Tags.d.ts +24 -0
  328. package/Tags/Tags.js +59 -0
  329. package/Tags/Tags.js.map +1 -0
  330. package/Tags/Tags.stories.d.ts +13 -0
  331. package/Tags/Tags.stories.js +92 -0
  332. package/Tags/Tags.stories.js.map +1 -0
  333. package/Tags/domain/TagItem.d.ts +18 -0
  334. package/Tags/domain/TagItem.js +26 -0
  335. package/Tags/domain/TagItem.js.map +1 -0
  336. package/Tags/domain/TagItemDto.d.ts +5 -0
  337. package/Tags/domain/TagItemDto.js +3 -0
  338. package/Tags/domain/TagItemDto.js.map +1 -0
  339. package/Tags/domain/TagItemFormatted.d.ts +5 -0
  340. package/Tags/domain/TagItemFormatted.js +3 -0
  341. package/Tags/domain/TagItemFormatted.js.map +1 -0
  342. package/Tags/domain/TagItemMapper.d.ts +5 -0
  343. package/Tags/domain/TagItemMapper.js +11 -0
  344. package/Tags/domain/TagItemMapper.js.map +1 -0
  345. package/Tags/domain/index.d.ts +4 -0
  346. package/Tags/domain/index.js +6 -0
  347. package/Tags/domain/index.js.map +1 -0
  348. package/Tags/index.d.ts +1 -0
  349. package/Tags/index.js +3 -0
  350. package/Tags/index.js.map +1 -0
  351. package/Tags/primitives/TagsPrimitive.d.ts +81 -0
  352. package/Tags/primitives/TagsPrimitive.js +54 -0
  353. package/Tags/primitives/TagsPrimitive.js.map +1 -0
  354. package/Tags/primitives/TagsPrimitive.stories.d.ts +26 -0
  355. package/Tags/primitives/TagsPrimitive.stories.js +185 -0
  356. package/Tags/primitives/TagsPrimitive.stories.js.map +1 -0
  357. package/Tags/primitives/index.d.ts +1 -0
  358. package/Tags/primitives/index.js +3 -0
  359. package/Tags/primitives/index.js.map +1 -0
  360. package/Tags/primitives/presenters/TagsInputPresenter.d.ts +22 -0
  361. package/Tags/primitives/presenters/TagsInputPresenter.js +22 -0
  362. package/Tags/primitives/presenters/TagsInputPresenter.js.map +1 -0
  363. package/Tags/primitives/presenters/TagsPresenter.d.ts +42 -0
  364. package/Tags/primitives/presenters/TagsPresenter.js +68 -0
  365. package/Tags/primitives/presenters/TagsPresenter.js.map +1 -0
  366. package/Tags/primitives/presenters/TagsPresenter.test.d.ts +1 -0
  367. package/Tags/primitives/presenters/TagsPresenter.test.js +220 -0
  368. package/Tags/primitives/presenters/TagsPresenter.test.js.map +1 -0
  369. package/Tags/primitives/presenters/TagsValuesPresenter.d.ts +28 -0
  370. package/Tags/primitives/presenters/TagsValuesPresenter.js +41 -0
  371. package/Tags/primitives/presenters/TagsValuesPresenter.js.map +1 -0
  372. package/Tags/primitives/presenters/index.d.ts +3 -0
  373. package/Tags/primitives/presenters/index.js +5 -0
  374. package/Tags/primitives/presenters/index.js.map +1 -0
  375. package/Tags/primitives/useTags.d.ts +15 -0
  376. package/Tags/primitives/useTags.js +36 -0
  377. package/Tags/primitives/useTags.js.map +1 -0
  378. package/Textarea/Textarea.d.ts +2 -2
  379. package/Textarea/Textarea.js.map +1 -1
  380. package/Toast/Toast.d.ts +1 -1
  381. package/Toast/Toast.js.map +1 -1
  382. package/Toast/useToast.js +8 -2
  383. package/Toast/useToast.js.map +1 -1
  384. package/Tooltip/Tooltip.d.ts +1 -1
  385. package/Tooltip/Tooltip.js.map +1 -1
  386. package/Tree/components/ItemDragHandle.d.ts +2 -1
  387. package/Tree/components/ItemDragHandle.js.map +1 -1
  388. package/Tree/domains/NodeFormatter.d.ts +1 -1
  389. package/Tree/domains/NodeFormatter.js.map +1 -1
  390. package/Tree/useTree.d.ts +1 -1
  391. package/Tree/useTree.js.map +1 -1
  392. package/index.d.ts +1 -0
  393. package/index.js +1 -0
  394. package/index.js.map +1 -1
  395. package/package.json +9 -8
  396. package/utils.d.ts +1 -1
  397. package/utils.js.map +1 -1
  398. package/Accordion/components/AccordionItemHandle.d.ts +0 -26
  399. package/Accordion/components/AccordionItemHandle.js +0 -29
  400. package/Accordion/components/AccordionItemHandle.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"names":["React","getIconPosition","InputIcon","inputVariants","Command","Tag","cn","cva","multiAutoCompleteInputVariants","variants","disabled","true","MultiAutoCompleteInput","changeValue","closeList","endIcon","invalid","openList","placeholder","removeSelectedOption","selectedOptionRenderer","selectedOptions","size","startIcon","value","variant","className","inputRef","parentInputRef","props","focused","setFocused","useState","useMemo","createRef","iconPosition","renderSelectedOptions","useCallback","options","map","option","index","item","call","createElement","key","content","label","onDismiss","Object","assign","onClick","current","focus","icon","inputSize","position","Input","onValueChange","onBlur","onFocus","inputElement","type","ref"],"sources":["MultiAutoCompleteInput.tsx"],"sourcesContent":["import React from \"react\";\nimport { getIconPosition, InputIcon, InputPrimitiveProps, inputVariants } from \"~/Input\";\nimport { Command, CommandOptionFormatted } from \"~/Command\";\nimport { Tag } from \"~/Tag\";\nimport { cn, cva, type VariantProps } from \"~/utils\";\n\nconst multiAutoCompleteInputVariants = cva(\"wby-relative placeholder:wby-text-neutral-dimmed\", {\n variants: {\n disabled: {\n true: \"wby-cursor-not-allowed disabled:wby-text-neutral-disabled disabled:placeholder:wby-text-neutral-disabled\"\n }\n }\n});\n\ntype MultiAutoCompleteInputProps = VariantProps<typeof multiAutoCompleteInputVariants> &\n InputPrimitiveProps & {\n changeValue: (value: string) => void;\n closeList: () => void;\n openList: () => void;\n placeholder: string;\n removeSelectedOption: (value: string) => void;\n selectedOptionRenderer?: (item: any, index: number) => React.ReactNode;\n selectedOptions: CommandOptionFormatted[];\n value: string;\n };\n\nconst MultiAutoCompleteInput = ({\n changeValue,\n closeList,\n disabled,\n endIcon,\n invalid,\n openList,\n placeholder,\n removeSelectedOption,\n selectedOptionRenderer,\n selectedOptions,\n size,\n startIcon,\n value,\n variant,\n className,\n inputRef: parentInputRef,\n ...props\n}: MultiAutoCompleteInputProps) => {\n const [focused, setFocused] = React.useState<boolean>(false);\n const inputRef = React.useMemo<React.RefObject<HTMLInputElement>>(\n () =>\n parentInputRef && typeof parentInputRef !== \"function\"\n ? parentInputRef\n : React.createRef<HTMLInputElement>(),\n [parentInputRef]\n );\n const iconPosition = getIconPosition(startIcon, endIcon);\n\n const renderSelectedOptions = React.useCallback(\n (options: CommandOptionFormatted[]) => {\n return options.map((option, index) => {\n if (selectedOptionRenderer) {\n if (!option.item) {\n return null;\n }\n return selectedOptionRenderer.call(this, option.item, index);\n }\n\n return (\n <Tag\n key={`tag-${option.value}-${index}`}\n variant={\"neutral-light\"}\n content={option.label}\n onDismiss={() => removeSelectedOption(option.value)}\n />\n );\n });\n },\n [selectedOptionRenderer, removeSelectedOption]\n );\n\n return (\n <div\n {...props}\n className={cn(\n inputVariants({\n variant,\n size,\n iconPosition,\n invalid\n }),\n multiAutoCompleteInputVariants({ disabled }),\n className\n )}\n aria-disabled={disabled}\n onClick={() => {\n if (disabled) {\n return;\n }\n inputRef?.current?.focus();\n setFocused(true);\n }}\n data-disabled={disabled}\n data-focused={focused}\n >\n {startIcon && (\n <InputIcon\n disabled={disabled}\n icon={startIcon}\n inputSize={size}\n position={\"start\"}\n />\n )}\n <div className=\"wby-relative wby-flex wby-flex-wrap wby-gap-xs\">\n {renderSelectedOptions(selectedOptions)}\n <Command.Input\n className={\"wby-flex-1 wby-bg-transparent wby-border-none wby-outline-none\"}\n value={value}\n onValueChange={changeValue}\n placeholder={placeholder}\n disabled={disabled}\n onBlur={() => {\n setFocused(false);\n closeList();\n }}\n onFocus={() => {\n setFocused(true);\n openList();\n }}\n inputElement={\n <input\n type=\"text\"\n ref={inputRef}\n className={cn(multiAutoCompleteInputVariants({ disabled }))}\n />\n }\n />\n </div>\n {endIcon && (\n <InputIcon disabled={disabled} icon={endIcon} inputSize={size} position={\"end\"} />\n )}\n </div>\n );\n};\n\nexport { MultiAutoCompleteInput, type MultiAutoCompleteInputProps };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","InputIcon","inputVariants","Command","Tag","cn","cva","multiAutoCompleteInputVariants","variants","disabled","true","MultiAutoCompleteInput","changeValue","closeList","endIcon","invalid","openList","placeholder","removeSelectedOption","selectedOptionRenderer","selectedOptions","size","startIcon","value","variant","className","inputRef","parentInputRef","props","focused","setFocused","useState","useMemo","createRef","renderSelectedOptions","useCallback","options","map","option","index","item","call","createElement","key","content","label","onDismiss","Object","assign","onClick","current","focus","icon","inputSize","Input","onValueChange","onBlur","onFocus","inputElement","type","ref"],"sources":["MultiAutoCompleteInput.tsx"],"sourcesContent":["import React from \"react\";\nimport type { InputPrimitiveProps } from \"~/Input\";\nimport { InputIcon, inputVariants } from \"~/Input\";\nimport type { CommandOptionFormatted } from \"~/Command\";\nimport { Command } from \"~/Command\";\nimport { Tag } from \"~/Tag\";\nimport { cn, cva, type VariantProps } from \"~/utils\";\n\nconst multiAutoCompleteInputVariants = cva(\"wby-relative placeholder:wby-text-neutral-dimmed\", {\n variants: {\n disabled: {\n true: \"wby-cursor-not-allowed disabled:wby-text-neutral-disabled disabled:placeholder:wby-text-neutral-disabled\"\n }\n }\n});\n\ntype MultiAutoCompleteInputProps = VariantProps<typeof multiAutoCompleteInputVariants> &\n InputPrimitiveProps & {\n changeValue: (value: string) => void;\n closeList: () => void;\n openList: () => void;\n placeholder: string;\n removeSelectedOption: (value: string) => void;\n selectedOptionRenderer?: (item: any, index: number) => React.ReactNode;\n selectedOptions: CommandOptionFormatted[];\n value: string;\n };\n\nconst MultiAutoCompleteInput = ({\n changeValue,\n closeList,\n disabled,\n endIcon,\n invalid,\n openList,\n placeholder,\n removeSelectedOption,\n selectedOptionRenderer,\n selectedOptions,\n size,\n startIcon,\n value,\n variant,\n className,\n inputRef: parentInputRef,\n ...props\n}: MultiAutoCompleteInputProps) => {\n const [focused, setFocused] = React.useState<boolean>(false);\n const inputRef = React.useMemo<React.RefObject<HTMLInputElement>>(\n () =>\n parentInputRef && typeof parentInputRef !== \"function\"\n ? parentInputRef\n : React.createRef<HTMLInputElement>(),\n [parentInputRef]\n );\n\n const renderSelectedOptions = React.useCallback(\n (options: CommandOptionFormatted[]) => {\n return options.map((option, index) => {\n if (selectedOptionRenderer) {\n if (!option.item) {\n return null;\n }\n return selectedOptionRenderer.call(this, option.item, index);\n }\n\n return (\n <Tag\n key={`tag-${option.value}-${index}`}\n variant={variant === \"ghost-negative\" ? \"neutral-xstrong\" : \"neutral-muted\"}\n content={option.label}\n onDismiss={() => removeSelectedOption(option.value)}\n />\n );\n });\n },\n [selectedOptionRenderer, removeSelectedOption, variant]\n );\n\n return (\n <div\n {...props}\n className={cn(\n inputVariants({\n variant,\n size,\n invalid\n }),\n multiAutoCompleteInputVariants({ disabled }),\n className\n )}\n aria-disabled={disabled}\n onClick={() => {\n if (disabled) {\n return;\n }\n inputRef?.current?.focus();\n setFocused(true);\n }}\n data-disabled={disabled}\n data-focused={focused}\n >\n {startIcon && <InputIcon icon={startIcon} inputSize={size} />}\n <div className=\"wby-relative wby-flex wby-flex-wrap wby-flex-1 wby-gap-xs\">\n {renderSelectedOptions(selectedOptions)}\n <Command.Input\n className={\"wby-bg-transparent wby-border-none wby-outline-none\"}\n value={value}\n onValueChange={changeValue}\n placeholder={placeholder}\n disabled={disabled}\n onBlur={() => {\n setFocused(false);\n closeList();\n }}\n onFocus={() => {\n setFocused(true);\n openList();\n }}\n inputElement={\n <input\n type=\"text\"\n ref={inputRef}\n className={cn(multiAutoCompleteInputVariants({ disabled }))}\n />\n }\n />\n </div>\n {endIcon && <InputIcon icon={endIcon} inputSize={size} />}\n </div>\n );\n};\n\nexport { MultiAutoCompleteInput, type MultiAutoCompleteInputProps };\n"],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,7 @@
1
1
  import React from "react";
2
2
  interface MultiAutoCompleteInputIconsProps {
3
3
  displayResetAction: boolean;
4
+ inputVariant?: "primary" | "secondary" | "ghost" | "ghost-negative" | null;
4
5
  inputSize?: "md" | "lg" | "xl" | null;
5
6
  loading?: boolean;
6
7
  disabled?: boolean;
@@ -12,10 +12,11 @@ export const MultiAutoCompleteInputIcons = props => {
12
12
  }), props.displayResetAction && /*#__PURE__*/React.createElement(IconButton, {
13
13
  size: props.inputSize === "xl" ? "sm" : "xs" // Map button size based on the input size.
14
14
  ,
15
- variant: "secondary",
15
+ variant: props.inputVariant === "ghost-negative" ? "ghost-negative" : "secondary",
16
16
  icon: /*#__PURE__*/React.createElement(Icon, {
17
17
  icon: /*#__PURE__*/React.createElement(Close, null),
18
- label: "Reset"
18
+ label: "Reset",
19
+ color: props.inputVariant === "ghost-negative" ? "neutral-negative" : "inherit"
19
20
  }),
20
21
  disabled: props.disabled,
21
22
  onClick: event => {
@@ -1 +1 @@
1
- {"version":3,"names":["React","ReactComponent","Close","ChevronDown","IconButton","Icon","Loader","MultiAutoCompleteInputIcons","props","createElement","className","loading","size","inputSize","displayResetAction","variant","icon","label","disabled","onClick","event","stopPropagation","onResetValue","onOpenChange"],"sources":["MultiAutoCompleteInputIcons.tsx"],"sourcesContent":["import React from \"react\";\nimport { ReactComponent as Close } from \"@webiny/icons/close.svg\";\nimport { ReactComponent as ChevronDown } from \"@webiny/icons/keyboard_arrow_down.svg\";\nimport { IconButton } from \"~/Button\";\nimport { Icon } from \"~/Icon\";\nimport { Loader } from \"~/Loader\";\n\ninterface MultiAutoCompleteInputIconsProps {\n displayResetAction: boolean;\n inputSize?: \"md\" | \"lg\" | \"xl\" | null;\n loading?: boolean;\n disabled?: boolean;\n onOpenChange: (open: boolean) => void;\n onResetValue: () => void;\n}\n\nexport const MultiAutoCompleteInputIcons = (props: MultiAutoCompleteInputIconsProps) => {\n return (\n <div className={\"wby-flex wby-items-center wby-gap-sm\"}>\n {props.loading && <Loader size={props.inputSize === \"xl\" ? \"sm\" : \"xs\"} />}\n {props.displayResetAction && (\n <IconButton\n size={props.inputSize === \"xl\" ? \"sm\" : \"xs\"} // Map button size based on the input size.\n variant={\"secondary\"}\n icon={<Icon icon={<Close />} label={\"Reset\"} />}\n disabled={props.disabled}\n onClick={event => {\n event.stopPropagation();\n props.onResetValue();\n }}\n />\n )}\n <Icon\n size={props.inputSize === \"xl\" ? \"lg\" : \"sm\"} // Map icon size based on the input size.\n icon={<ChevronDown />}\n label={\"Open list\"}\n onClick={event => {\n event.stopPropagation();\n props.onOpenChange(true);\n }}\n />\n </div>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,cAAc,IAAIC,KAAK,QAAQ,yBAAyB;AACjE,SAASD,cAAc,IAAIE,WAAW,QAAQ,uCAAuC;AACrF,SAASC,UAAU;AACnB,SAASC,IAAI;AACb,SAASC,MAAM;AAWf,OAAO,MAAMC,2BAA2B,GAAIC,KAAuC,IAAK;EACpF,oBACIR,KAAA,CAAAS,aAAA;IAAKC,SAAS,EAAE;EAAuC,GAClDF,KAAK,CAACG,OAAO,iBAAIX,KAAA,CAAAS,aAAA,CAACH,MAAM;IAACM,IAAI,EAAEJ,KAAK,CAACK,SAAS,KAAK,IAAI,GAAG,IAAI,GAAG;EAAK,CAAE,CAAC,EACzEL,KAAK,CAACM,kBAAkB,iBACrBd,KAAA,CAAAS,aAAA,CAACL,UAAU;IACPQ,IAAI,EAAEJ,KAAK,CAACK,SAAS,KAAK,IAAI,GAAG,IAAI,GAAG,IAAK,CAAC;IAAA;IAC9CE,OAAO,EAAE,WAAY;IACrBC,IAAI,eAAEhB,KAAA,CAAAS,aAAA,CAACJ,IAAI;MAACW,IAAI,eAAEhB,KAAA,CAAAS,aAAA,CAACP,KAAK,MAAE,CAAE;MAACe,KAAK,EAAE;IAAQ,CAAE,CAAE;IAChDC,QAAQ,EAAEV,KAAK,CAACU,QAAS;IACzBC,OAAO,EAAEC,KAAK,IAAI;MACdA,KAAK,CAACC,eAAe,CAAC,CAAC;MACvBb,KAAK,CAACc,YAAY,CAAC,CAAC;IACxB;EAAE,CACL,CACJ,eACDtB,KAAA,CAAAS,aAAA,CAACJ,IAAI;IACDO,IAAI,EAAEJ,KAAK,CAACK,SAAS,KAAK,IAAI,GAAG,IAAI,GAAG,IAAK,CAAC;IAAA;IAC9CG,IAAI,eAAEhB,KAAA,CAAAS,aAAA,CAACN,WAAW,MAAE,CAAE;IACtBc,KAAK,EAAE,WAAY;IACnBE,OAAO,EAAEC,KAAK,IAAI;MACdA,KAAK,CAACC,eAAe,CAAC,CAAC;MACvBb,KAAK,CAACe,YAAY,CAAC,IAAI,CAAC;IAC5B;EAAE,CACL,CACA,CAAC;AAEd,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","ReactComponent","Close","ChevronDown","IconButton","Icon","Loader","MultiAutoCompleteInputIcons","props","createElement","className","loading","size","inputSize","displayResetAction","variant","inputVariant","icon","label","color","disabled","onClick","event","stopPropagation","onResetValue","onOpenChange"],"sources":["MultiAutoCompleteInputIcons.tsx"],"sourcesContent":["import React from \"react\";\nimport { ReactComponent as Close } from \"@webiny/icons/close.svg\";\nimport { ReactComponent as ChevronDown } from \"@webiny/icons/keyboard_arrow_down.svg\";\nimport { IconButton } from \"~/Button\";\nimport { Icon } from \"~/Icon\";\nimport { Loader } from \"~/Loader\";\n\ninterface MultiAutoCompleteInputIconsProps {\n displayResetAction: boolean;\n inputVariant?: \"primary\" | \"secondary\" | \"ghost\" | \"ghost-negative\" | null;\n inputSize?: \"md\" | \"lg\" | \"xl\" | null;\n loading?: boolean;\n disabled?: boolean;\n onOpenChange: (open: boolean) => void;\n onResetValue: () => void;\n}\n\nexport const MultiAutoCompleteInputIcons = (props: MultiAutoCompleteInputIconsProps) => {\n return (\n <div className={\"wby-flex wby-items-center wby-gap-sm\"}>\n {props.loading && <Loader size={props.inputSize === \"xl\" ? \"sm\" : \"xs\"} />}\n {props.displayResetAction && (\n <IconButton\n size={props.inputSize === \"xl\" ? \"sm\" : \"xs\"} // Map button size based on the input size.\n variant={\n props.inputVariant === \"ghost-negative\" ? \"ghost-negative\" : \"secondary\"\n }\n icon={\n <Icon\n icon={<Close />}\n label={\"Reset\"}\n color={\n props.inputVariant === \"ghost-negative\"\n ? \"neutral-negative\"\n : \"inherit\"\n }\n />\n }\n disabled={props.disabled}\n onClick={event => {\n event.stopPropagation();\n props.onResetValue();\n }}\n />\n )}\n <Icon\n size={props.inputSize === \"xl\" ? \"lg\" : \"sm\"} // Map icon size based on the input size.\n icon={<ChevronDown />}\n label={\"Open list\"}\n onClick={event => {\n event.stopPropagation();\n props.onOpenChange(true);\n }}\n />\n </div>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,cAAc,IAAIC,KAAK,QAAQ,yBAAyB;AACjE,SAASD,cAAc,IAAIE,WAAW,QAAQ,uCAAuC;AACrF,SAASC,UAAU;AACnB,SAASC,IAAI;AACb,SAASC,MAAM;AAYf,OAAO,MAAMC,2BAA2B,GAAIC,KAAuC,IAAK;EACpF,oBACIR,KAAA,CAAAS,aAAA;IAAKC,SAAS,EAAE;EAAuC,GAClDF,KAAK,CAACG,OAAO,iBAAIX,KAAA,CAAAS,aAAA,CAACH,MAAM;IAACM,IAAI,EAAEJ,KAAK,CAACK,SAAS,KAAK,IAAI,GAAG,IAAI,GAAG;EAAK,CAAE,CAAC,EACzEL,KAAK,CAACM,kBAAkB,iBACrBd,KAAA,CAAAS,aAAA,CAACL,UAAU;IACPQ,IAAI,EAAEJ,KAAK,CAACK,SAAS,KAAK,IAAI,GAAG,IAAI,GAAG,IAAK,CAAC;IAAA;IAC9CE,OAAO,EACHP,KAAK,CAACQ,YAAY,KAAK,gBAAgB,GAAG,gBAAgB,GAAG,WAChE;IACDC,IAAI,eACAjB,KAAA,CAAAS,aAAA,CAACJ,IAAI;MACDY,IAAI,eAAEjB,KAAA,CAAAS,aAAA,CAACP,KAAK,MAAE,CAAE;MAChBgB,KAAK,EAAE,OAAQ;MACfC,KAAK,EACDX,KAAK,CAACQ,YAAY,KAAK,gBAAgB,GACjC,kBAAkB,GAClB;IACT,CACJ,CACJ;IACDI,QAAQ,EAAEZ,KAAK,CAACY,QAAS;IACzBC,OAAO,EAAEC,KAAK,IAAI;MACdA,KAAK,CAACC,eAAe,CAAC,CAAC;MACvBf,KAAK,CAACgB,YAAY,CAAC,CAAC;IACxB;EAAE,CACL,CACJ,eACDxB,KAAA,CAAAS,aAAA,CAACJ,IAAI;IACDO,IAAI,EAAEJ,KAAK,CAACK,SAAS,KAAK,IAAI,GAAG,IAAI,GAAG,IAAK,CAAC;IAAA;IAC9CI,IAAI,eAAEjB,KAAA,CAAAS,aAAA,CAACN,WAAW,MAAE,CAAE;IACtBe,KAAK,EAAE,WAAY;IACnBG,OAAO,EAAEC,KAAK,IAAI;MACdA,KAAK,CAACC,eAAe,CAAC,CAAC;MACvBf,KAAK,CAACiB,YAAY,CAAC,IAAI,CAAC;IAC5B;EAAE,CACL,CACA,CAAC;AAEd,CAAC","ignoreList":[]}
@@ -1,5 +1,5 @@
1
1
  import React from "react";
2
- import { CommandOptionFormatted } from "../../../Command/domain/CommandOptionFormatted";
2
+ import type { CommandOptionFormatted } from "../../../Command/domain/CommandOptionFormatted";
3
3
  import { Command } from "../../../Command";
4
4
  interface MultiAutoCompleteListProps extends React.ComponentPropsWithoutRef<typeof Command.List> {
5
5
  emptyMessage?: React.ReactNode;
@@ -1 +1 @@
1
- {"version":3,"names":["React","Command","MultiAutoCompleteList","emptyMessage","empty","loading","loadingMessage","onOptionCreate","onOptionSelect","optionRenderer","options","temporaryOption","props","renderOptions","useCallback","items","elements","createElement","Item","key","value","className","renderedItems","reduce","acc","item","currentIndex","push","keywords","label","disabled","selected","onSelect","onMouseDown","event","preventDefault","call","separator","Separator","List","Loading","Empty"],"sources":["MultiAutoCompleteList.tsx"],"sourcesContent":["import React from \"react\";\nimport { CommandOptionFormatted } from \"~/Command/domain/CommandOptionFormatted\";\nimport { Command } from \"~/Command\";\n\ninterface MultiAutoCompleteListProps extends React.ComponentPropsWithoutRef<typeof Command.List> {\n emptyMessage?: React.ReactNode;\n empty?: boolean;\n loading?: boolean;\n loadingMessage?: React.ReactNode;\n onOptionCreate?: (value: string) => void;\n onOptionSelect: (value: string) => void;\n optionRenderer?: (item: any, index: number) => React.ReactNode;\n options: CommandOptionFormatted[];\n temporaryOption?: CommandOptionFormatted;\n}\n\nexport const MultiAutoCompleteList = ({\n emptyMessage,\n empty,\n loading,\n loadingMessage,\n onOptionCreate,\n onOptionSelect,\n optionRenderer,\n options,\n temporaryOption,\n ...props\n}: MultiAutoCompleteListProps) => {\n const renderOptions = React.useCallback(\n (items: CommandOptionFormatted[]) => {\n if (empty && !temporaryOption) {\n return null;\n }\n\n const elements = [\n <Command.Item key={\"dummy-element\"} value=\"-\" className=\"wby-hidden\" />\n ];\n\n const renderedItems = items.reduce((acc, item, currentIndex) => {\n acc.push(\n <Command.Item\n key={`item-${item.value}-${currentIndex}`}\n value={item.value}\n keywords={[item.label]}\n disabled={item.disabled}\n selected={item.selected}\n onSelect={() => onOptionSelect(item.value)}\n onMouseDown={event => event.preventDefault()}\n >\n {optionRenderer && item.item\n ? optionRenderer.call(this, item.item, currentIndex)\n : item.label}\n </Command.Item>\n );\n\n // Conditionally render the separator if `separator` is true\n if (item.separator) {\n acc.push(<Command.Separator key={`separator-${item.value ?? currentIndex}`} />);\n }\n\n return acc;\n }, elements);\n\n if (temporaryOption?.value) {\n renderedItems.push(\n <Command.Item\n key={`temporary-${temporaryOption.value}`}\n value={temporaryOption.value}\n keywords={[temporaryOption.label]}\n disabled={temporaryOption.disabled}\n selected={temporaryOption.selected}\n onSelect={() => {\n onOptionCreate && onOptionCreate(temporaryOption.value);\n }}\n onMouseDown={event => event.preventDefault()}\n >\n {`Add \"${temporaryOption.label}\" as new option`}\n </Command.Item>\n );\n }\n\n return renderedItems;\n },\n [onOptionSelect, temporaryOption, onOptionCreate, empty, optionRenderer]\n );\n\n return (\n <Command.List {...props}>\n {loading ? <Command.Loading>{loadingMessage}</Command.Loading> : renderOptions(options)}\n {!loading && <Command.Empty>{emptyMessage}</Command.Empty>}\n </Command.List>\n );\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Command","MultiAutoCompleteList","emptyMessage","empty","loading","loadingMessage","onOptionCreate","onOptionSelect","optionRenderer","options","temporaryOption","props","renderOptions","useCallback","items","elements","createElement","Item","key","value","className","renderedItems","reduce","acc","item","currentIndex","push","keywords","label","disabled","selected","onSelect","onMouseDown","event","preventDefault","call","separator","Separator","List","Loading","Empty"],"sources":["MultiAutoCompleteList.tsx"],"sourcesContent":["import React from \"react\";\nimport type { CommandOptionFormatted } from \"~/Command/domain/CommandOptionFormatted\";\nimport { Command } from \"~/Command\";\n\ninterface MultiAutoCompleteListProps extends React.ComponentPropsWithoutRef<typeof Command.List> {\n emptyMessage?: React.ReactNode;\n empty?: boolean;\n loading?: boolean;\n loadingMessage?: React.ReactNode;\n onOptionCreate?: (value: string) => void;\n onOptionSelect: (value: string) => void;\n optionRenderer?: (item: any, index: number) => React.ReactNode;\n options: CommandOptionFormatted[];\n temporaryOption?: CommandOptionFormatted;\n}\n\nexport const MultiAutoCompleteList = ({\n emptyMessage,\n empty,\n loading,\n loadingMessage,\n onOptionCreate,\n onOptionSelect,\n optionRenderer,\n options,\n temporaryOption,\n ...props\n}: MultiAutoCompleteListProps) => {\n const renderOptions = React.useCallback(\n (items: CommandOptionFormatted[]) => {\n if (empty && !temporaryOption) {\n return null;\n }\n\n const elements = [\n <Command.Item key={\"dummy-element\"} value=\"-\" className=\"wby-hidden\" />\n ];\n\n const renderedItems = items.reduce((acc, item, currentIndex) => {\n acc.push(\n <Command.Item\n key={`item-${item.value}-${currentIndex}`}\n value={item.value}\n keywords={[item.label]}\n disabled={item.disabled}\n selected={item.selected}\n onSelect={() => onOptionSelect(item.value)}\n onMouseDown={event => event.preventDefault()}\n >\n {optionRenderer && item.item\n ? optionRenderer.call(this, item.item, currentIndex)\n : item.label}\n </Command.Item>\n );\n\n // Conditionally render the separator if `separator` is true\n if (item.separator) {\n acc.push(<Command.Separator key={`separator-${item.value ?? currentIndex}`} />);\n }\n\n return acc;\n }, elements);\n\n if (temporaryOption?.value) {\n renderedItems.push(\n <Command.Item\n key={`temporary-${temporaryOption.value}`}\n value={temporaryOption.value}\n keywords={[temporaryOption.label]}\n disabled={temporaryOption.disabled}\n selected={temporaryOption.selected}\n onSelect={() => {\n onOptionCreate && onOptionCreate(temporaryOption.value);\n }}\n onMouseDown={event => event.preventDefault()}\n >\n {`Add \"${temporaryOption.label}\" as new option`}\n </Command.Item>\n );\n }\n\n return renderedItems;\n },\n [onOptionSelect, temporaryOption, onOptionCreate, empty, optionRenderer]\n );\n\n return (\n <Command.List {...props}>\n {loading ? <Command.Loading>{loadingMessage}</Command.Loading> : renderOptions(options)}\n {!loading && <Command.Empty>{emptyMessage}</Command.Empty>}\n </Command.List>\n );\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import { CommandOption } from "../../../Command/domain/CommandOption";
2
- import { CommandOptionFormatted } from "../../../Command/domain/CommandOptionFormatted";
1
+ import type { CommandOption } from "../../../Command/domain/CommandOption";
2
+ import type { CommandOptionFormatted } from "../../../Command/domain/CommandOptionFormatted";
3
3
  export interface IMultiAutoCompleteListOptionsPresenterParams {
4
4
  options?: CommandOption[];
5
5
  emptyMessage?: any;
@@ -1 +1 @@
1
- {"version":3,"names":["makeAutoObservable","CommandOptionFormatter","ListCache","MultiAutoCompleteListOptionsPresenter","open","loadedOptions","emptyMessage","loadingMessage","initialMessage","options","constructor","init","params","clear","addItems","vm","getItems","map","option","format","empty","hasItems","setListOpenState","setLoadedOptions","loaded","setSelectedOption","value","updateItems","selected","removeSelectedOption","resetSelectedOptions","addOption"],"sources":["MultiAutoCompleteListOptionsPresenter.ts"],"sourcesContent":["import { makeAutoObservable } from \"mobx\";\nimport { CommandOption } from \"~/Command/domain/CommandOption\";\nimport { CommandOptionFormatted } from \"~/Command/domain/CommandOptionFormatted\";\nimport { CommandOptionFormatter } from \"~/Command/domain/CommandOptionFormatter\";\nimport { ListCache } from \"../../domains\";\n\nexport interface IMultiAutoCompleteListOptionsPresenterParams {\n options?: CommandOption[];\n emptyMessage?: any;\n loadingMessage?: any;\n initialMessage?: any;\n}\n\nexport interface IMultiAutoCompleteListOptionsPresenter {\n vm: {\n options: CommandOptionFormatted[];\n emptyMessage: any;\n loadingMessage: any;\n open: boolean;\n empty: boolean;\n };\n init: (params: IMultiAutoCompleteListOptionsPresenterParams) => void;\n setListOpenState: (open: boolean) => void;\n setLoadedOptions: (loaded: boolean) => void;\n addOption: (option: CommandOption) => void;\n setSelectedOption: (value: string) => void;\n removeSelectedOption: (value: string) => void;\n resetSelectedOptions: () => void;\n}\n\nexport class MultiAutoCompleteListOptionsPresenter\n implements IMultiAutoCompleteListOptionsPresenter\n{\n private open = false;\n private loadedOptions = false;\n private emptyMessage = \"No results.\";\n private loadingMessage = \"Loading...\";\n private initialMessage = \"Start typing to find an option.\";\n private options = new ListCache<CommandOption>();\n\n constructor() {\n makeAutoObservable(this);\n }\n\n init(params: IMultiAutoCompleteListOptionsPresenterParams) {\n this.options.clear();\n params.options && this.options.addItems(params.options);\n this.emptyMessage = params.emptyMessage || this.emptyMessage;\n this.loadingMessage = params.loadingMessage || this.loadingMessage;\n this.initialMessage = params.initialMessage || this.initialMessage;\n }\n\n get vm() {\n return {\n options: this.options.getItems().map(option => CommandOptionFormatter.format(option)),\n emptyMessage: this.loadedOptions ? this.emptyMessage : this.initialMessage,\n loadingMessage: this.loadingMessage,\n open: this.open,\n empty: !this.options.hasItems()\n };\n }\n\n setListOpenState = (open: boolean) => {\n this.open = open;\n };\n\n setLoadedOptions = (loaded: boolean) => {\n this.loadedOptions = loaded;\n };\n\n setSelectedOption = (value: string) => {\n this.options.updateItems(option => {\n if (option.value === value) {\n option.selected = true;\n }\n\n return option;\n });\n };\n\n removeSelectedOption = (value: string) => {\n this.options.updateItems(option => {\n if (option.value === value) {\n option.selected = false;\n }\n\n return option;\n });\n };\n\n resetSelectedOptions = () => {\n this.options.updateItems(option => {\n option.selected = false;\n return option;\n });\n };\n\n addOption = (option: CommandOption) => {\n this.options.addItems([option]);\n };\n}\n"],"mappings":"AAAA,SAASA,kBAAkB,QAAQ,MAAM;AAGzC,SAASC,sBAAsB;AAC/B,SAASC,SAAS;AA0BlB,OAAO,MAAMC,qCAAqC,CAElD;EACYC,IAAI,GAAG,KAAK;EACZC,aAAa,GAAG,KAAK;EACrBC,YAAY,GAAG,aAAa;EAC5BC,cAAc,GAAG,YAAY;EAC7BC,cAAc,GAAG,iCAAiC;EAClDC,OAAO,GAAG,IAAIP,SAAS,CAAgB,CAAC;EAEhDQ,WAAWA,CAAA,EAAG;IACVV,kBAAkB,CAAC,IAAI,CAAC;EAC5B;EAEAW,IAAIA,CAACC,MAAoD,EAAE;IACvD,IAAI,CAACH,OAAO,CAACI,KAAK,CAAC,CAAC;IACpBD,MAAM,CAACH,OAAO,IAAI,IAAI,CAACA,OAAO,CAACK,QAAQ,CAACF,MAAM,CAACH,OAAO,CAAC;IACvD,IAAI,CAACH,YAAY,GAAGM,MAAM,CAACN,YAAY,IAAI,IAAI,CAACA,YAAY;IAC5D,IAAI,CAACC,cAAc,GAAGK,MAAM,CAACL,cAAc,IAAI,IAAI,CAACA,cAAc;IAClE,IAAI,CAACC,cAAc,GAAGI,MAAM,CAACJ,cAAc,IAAI,IAAI,CAACA,cAAc;EACtE;EAEA,IAAIO,EAAEA,CAAA,EAAG;IACL,OAAO;MACHN,OAAO,EAAE,IAAI,CAACA,OAAO,CAACO,QAAQ,CAAC,CAAC,CAACC,GAAG,CAACC,MAAM,IAAIjB,sBAAsB,CAACkB,MAAM,CAACD,MAAM,CAAC,CAAC;MACrFZ,YAAY,EAAE,IAAI,CAACD,aAAa,GAAG,IAAI,CAACC,YAAY,GAAG,IAAI,CAACE,cAAc;MAC1ED,cAAc,EAAE,IAAI,CAACA,cAAc;MACnCH,IAAI,EAAE,IAAI,CAACA,IAAI;MACfgB,KAAK,EAAE,CAAC,IAAI,CAACX,OAAO,CAACY,QAAQ,CAAC;IAClC,CAAC;EACL;EAEAC,gBAAgB,GAAIlB,IAAa,IAAK;IAClC,IAAI,CAACA,IAAI,GAAGA,IAAI;EACpB,CAAC;EAEDmB,gBAAgB,GAAIC,MAAe,IAAK;IACpC,IAAI,CAACnB,aAAa,GAAGmB,MAAM;EAC/B,CAAC;EAEDC,iBAAiB,GAAIC,KAAa,IAAK;IACnC,IAAI,CAACjB,OAAO,CAACkB,WAAW,CAACT,MAAM,IAAI;MAC/B,IAAIA,MAAM,CAACQ,KAAK,KAAKA,KAAK,EAAE;QACxBR,MAAM,CAACU,QAAQ,GAAG,IAAI;MAC1B;MAEA,OAAOV,MAAM;IACjB,CAAC,CAAC;EACN,CAAC;EAEDW,oBAAoB,GAAIH,KAAa,IAAK;IACtC,IAAI,CAACjB,OAAO,CAACkB,WAAW,CAACT,MAAM,IAAI;MAC/B,IAAIA,MAAM,CAACQ,KAAK,KAAKA,KAAK,EAAE;QACxBR,MAAM,CAACU,QAAQ,GAAG,KAAK;MAC3B;MAEA,OAAOV,MAAM;IACjB,CAAC,CAAC;EACN,CAAC;EAEDY,oBAAoB,GAAGA,CAAA,KAAM;IACzB,IAAI,CAACrB,OAAO,CAACkB,WAAW,CAACT,MAAM,IAAI;MAC/BA,MAAM,CAACU,QAAQ,GAAG,KAAK;MACvB,OAAOV,MAAM;IACjB,CAAC,CAAC;EACN,CAAC;EAEDa,SAAS,GAAIb,MAAqB,IAAK;IACnC,IAAI,CAACT,OAAO,CAACK,QAAQ,CAAC,CAACI,MAAM,CAAC,CAAC;EACnC,CAAC;AACL","ignoreList":[]}
1
+ {"version":3,"names":["makeAutoObservable","CommandOptionFormatter","ListCache","MultiAutoCompleteListOptionsPresenter","open","loadedOptions","emptyMessage","loadingMessage","initialMessage","options","constructor","init","params","clear","addItems","vm","getItems","map","option","format","empty","hasItems","setListOpenState","setLoadedOptions","loaded","setSelectedOption","value","updateItems","selected","removeSelectedOption","resetSelectedOptions","addOption"],"sources":["MultiAutoCompleteListOptionsPresenter.ts"],"sourcesContent":["import { makeAutoObservable } from \"mobx\";\nimport type { CommandOption } from \"~/Command/domain/CommandOption\";\nimport type { CommandOptionFormatted } from \"~/Command/domain/CommandOptionFormatted\";\nimport { CommandOptionFormatter } from \"~/Command/domain/CommandOptionFormatter\";\nimport { ListCache } from \"../../domains\";\n\nexport interface IMultiAutoCompleteListOptionsPresenterParams {\n options?: CommandOption[];\n emptyMessage?: any;\n loadingMessage?: any;\n initialMessage?: any;\n}\n\nexport interface IMultiAutoCompleteListOptionsPresenter {\n vm: {\n options: CommandOptionFormatted[];\n emptyMessage: any;\n loadingMessage: any;\n open: boolean;\n empty: boolean;\n };\n init: (params: IMultiAutoCompleteListOptionsPresenterParams) => void;\n setListOpenState: (open: boolean) => void;\n setLoadedOptions: (loaded: boolean) => void;\n addOption: (option: CommandOption) => void;\n setSelectedOption: (value: string) => void;\n removeSelectedOption: (value: string) => void;\n resetSelectedOptions: () => void;\n}\n\nexport class MultiAutoCompleteListOptionsPresenter\n implements IMultiAutoCompleteListOptionsPresenter\n{\n private open = false;\n private loadedOptions = false;\n private emptyMessage = \"No results.\";\n private loadingMessage = \"Loading...\";\n private initialMessage = \"Start typing to find an option.\";\n private options = new ListCache<CommandOption>();\n\n constructor() {\n makeAutoObservable(this);\n }\n\n init(params: IMultiAutoCompleteListOptionsPresenterParams) {\n this.options.clear();\n params.options && this.options.addItems(params.options);\n this.emptyMessage = params.emptyMessage || this.emptyMessage;\n this.loadingMessage = params.loadingMessage || this.loadingMessage;\n this.initialMessage = params.initialMessage || this.initialMessage;\n }\n\n get vm() {\n return {\n options: this.options.getItems().map(option => CommandOptionFormatter.format(option)),\n emptyMessage: this.loadedOptions ? this.emptyMessage : this.initialMessage,\n loadingMessage: this.loadingMessage,\n open: this.open,\n empty: !this.options.hasItems()\n };\n }\n\n setListOpenState = (open: boolean) => {\n this.open = open;\n };\n\n setLoadedOptions = (loaded: boolean) => {\n this.loadedOptions = loaded;\n };\n\n setSelectedOption = (value: string) => {\n this.options.updateItems(option => {\n if (option.value === value) {\n option.selected = true;\n }\n\n return option;\n });\n };\n\n removeSelectedOption = (value: string) => {\n this.options.updateItems(option => {\n if (option.value === value) {\n option.selected = false;\n }\n\n return option;\n });\n };\n\n resetSelectedOptions = () => {\n this.options.updateItems(option => {\n option.selected = false;\n return option;\n });\n };\n\n addOption = (option: CommandOption) => {\n this.options.addItems([option]);\n };\n}\n"],"mappings":"AAAA,SAASA,kBAAkB,QAAQ,MAAM;AAGzC,SAASC,sBAAsB;AAC/B,SAASC,SAAS;AA0BlB,OAAO,MAAMC,qCAAqC,CAElD;EACYC,IAAI,GAAG,KAAK;EACZC,aAAa,GAAG,KAAK;EACrBC,YAAY,GAAG,aAAa;EAC5BC,cAAc,GAAG,YAAY;EAC7BC,cAAc,GAAG,iCAAiC;EAClDC,OAAO,GAAG,IAAIP,SAAS,CAAgB,CAAC;EAEhDQ,WAAWA,CAAA,EAAG;IACVV,kBAAkB,CAAC,IAAI,CAAC;EAC5B;EAEAW,IAAIA,CAACC,MAAoD,EAAE;IACvD,IAAI,CAACH,OAAO,CAACI,KAAK,CAAC,CAAC;IACpBD,MAAM,CAACH,OAAO,IAAI,IAAI,CAACA,OAAO,CAACK,QAAQ,CAACF,MAAM,CAACH,OAAO,CAAC;IACvD,IAAI,CAACH,YAAY,GAAGM,MAAM,CAACN,YAAY,IAAI,IAAI,CAACA,YAAY;IAC5D,IAAI,CAACC,cAAc,GAAGK,MAAM,CAACL,cAAc,IAAI,IAAI,CAACA,cAAc;IAClE,IAAI,CAACC,cAAc,GAAGI,MAAM,CAACJ,cAAc,IAAI,IAAI,CAACA,cAAc;EACtE;EAEA,IAAIO,EAAEA,CAAA,EAAG;IACL,OAAO;MACHN,OAAO,EAAE,IAAI,CAACA,OAAO,CAACO,QAAQ,CAAC,CAAC,CAACC,GAAG,CAACC,MAAM,IAAIjB,sBAAsB,CAACkB,MAAM,CAACD,MAAM,CAAC,CAAC;MACrFZ,YAAY,EAAE,IAAI,CAACD,aAAa,GAAG,IAAI,CAACC,YAAY,GAAG,IAAI,CAACE,cAAc;MAC1ED,cAAc,EAAE,IAAI,CAACA,cAAc;MACnCH,IAAI,EAAE,IAAI,CAACA,IAAI;MACfgB,KAAK,EAAE,CAAC,IAAI,CAACX,OAAO,CAACY,QAAQ,CAAC;IAClC,CAAC;EACL;EAEAC,gBAAgB,GAAIlB,IAAa,IAAK;IAClC,IAAI,CAACA,IAAI,GAAGA,IAAI;EACpB,CAAC;EAEDmB,gBAAgB,GAAIC,MAAe,IAAK;IACpC,IAAI,CAACnB,aAAa,GAAGmB,MAAM;EAC/B,CAAC;EAEDC,iBAAiB,GAAIC,KAAa,IAAK;IACnC,IAAI,CAACjB,OAAO,CAACkB,WAAW,CAACT,MAAM,IAAI;MAC/B,IAAIA,MAAM,CAACQ,KAAK,KAAKA,KAAK,EAAE;QACxBR,MAAM,CAACU,QAAQ,GAAG,IAAI;MAC1B;MAEA,OAAOV,MAAM;IACjB,CAAC,CAAC;EACN,CAAC;EAEDW,oBAAoB,GAAIH,KAAa,IAAK;IACtC,IAAI,CAACjB,OAAO,CAACkB,WAAW,CAACT,MAAM,IAAI;MAC/B,IAAIA,MAAM,CAACQ,KAAK,KAAKA,KAAK,EAAE;QACxBR,MAAM,CAACU,QAAQ,GAAG,KAAK;MAC3B;MAEA,OAAOV,MAAM;IACjB,CAAC,CAAC;EACN,CAAC;EAEDY,oBAAoB,GAAGA,CAAA,KAAM;IACzB,IAAI,CAACrB,OAAO,CAACkB,WAAW,CAACT,MAAM,IAAI;MAC/BA,MAAM,CAACU,QAAQ,GAAG,KAAK;MACvB,OAAOV,MAAM;IACjB,CAAC,CAAC;EACN,CAAC;EAEDa,SAAS,GAAIb,MAAqB,IAAK;IACnC,IAAI,CAACT,OAAO,CAACK,QAAQ,CAAC,CAACI,MAAM,CAAC,CAAC;EACnC,CAAC;AACL","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import { CommandOption } from "../../../Command/domain/CommandOption";
2
- import { IMultiAutoCompleteListOptionsPresenter, IMultiAutoCompleteListOptionsPresenterParams } from "./MultiAutoCompleteListOptionsPresenter";
1
+ import type { CommandOption } from "../../../Command/domain/CommandOption";
2
+ import type { IMultiAutoCompleteListOptionsPresenter, IMultiAutoCompleteListOptionsPresenterParams } from "./MultiAutoCompleteListOptionsPresenter";
3
3
  export declare class MultiAutoCompleteListOptionsPresenterWithUniqueValues implements IMultiAutoCompleteListOptionsPresenter {
4
4
  private decoretee;
5
5
  constructor(decoretee: IMultiAutoCompleteListOptionsPresenter);
@@ -1 +1 @@
1
- {"version":3,"names":["MultiAutoCompleteListOptionsPresenterWithUniqueValues","constructor","decoretee","init","params","options","filter","option","selected","vm","setListOpenState","open","setLoadedOptions","loaded","setSelectedOption","value","removeSelectedOption","resetSelectedOptions","addOption"],"sources":["MultiAutoCompleteListOptionsPresenterWithUniqueValues.ts"],"sourcesContent":["import { CommandOption } from \"~/Command/domain/CommandOption\";\nimport {\n IMultiAutoCompleteListOptionsPresenter,\n IMultiAutoCompleteListOptionsPresenterParams\n} from \"./MultiAutoCompleteListOptionsPresenter\";\n\nexport class MultiAutoCompleteListOptionsPresenterWithUniqueValues\n implements IMultiAutoCompleteListOptionsPresenter\n{\n private decoretee: IMultiAutoCompleteListOptionsPresenter;\n\n constructor(decoretee: IMultiAutoCompleteListOptionsPresenter) {\n this.decoretee = decoretee;\n }\n\n init(params: IMultiAutoCompleteListOptionsPresenterParams) {\n const options = params.options?.filter(option => !option.selected);\n this.decoretee.init({\n ...params,\n options\n });\n }\n\n get vm() {\n return this.decoretee.vm;\n }\n\n setListOpenState = (open: boolean) => {\n this.decoretee.setListOpenState(open);\n };\n\n setLoadedOptions = (loaded: boolean) => {\n this.decoretee.setLoadedOptions(loaded);\n };\n\n setSelectedOption = (value: string) => {\n this.decoretee.setSelectedOption(value);\n };\n\n removeSelectedOption = (value: string) => {\n this.decoretee.removeSelectedOption(value);\n };\n\n resetSelectedOptions = () => {\n this.decoretee.resetSelectedOptions();\n };\n\n addOption = (option: CommandOption) => {\n this.decoretee.addOption(option);\n };\n}\n"],"mappings":"AAMA,OAAO,MAAMA,qDAAqD,CAElE;EAGIC,WAAWA,CAACC,SAAiD,EAAE;IAC3D,IAAI,CAACA,SAAS,GAAGA,SAAS;EAC9B;EAEAC,IAAIA,CAACC,MAAoD,EAAE;IACvD,MAAMC,OAAO,GAAGD,MAAM,CAACC,OAAO,EAAEC,MAAM,CAACC,MAAM,IAAI,CAACA,MAAM,CAACC,QAAQ,CAAC;IAClE,IAAI,CAACN,SAAS,CAACC,IAAI,CAAC;MAChB,GAAGC,MAAM;MACTC;IACJ,CAAC,CAAC;EACN;EAEA,IAAII,EAAEA,CAAA,EAAG;IACL,OAAO,IAAI,CAACP,SAAS,CAACO,EAAE;EAC5B;EAEAC,gBAAgB,GAAIC,IAAa,IAAK;IAClC,IAAI,CAACT,SAAS,CAACQ,gBAAgB,CAACC,IAAI,CAAC;EACzC,CAAC;EAEDC,gBAAgB,GAAIC,MAAe,IAAK;IACpC,IAAI,CAACX,SAAS,CAACU,gBAAgB,CAACC,MAAM,CAAC;EAC3C,CAAC;EAEDC,iBAAiB,GAAIC,KAAa,IAAK;IACnC,IAAI,CAACb,SAAS,CAACY,iBAAiB,CAACC,KAAK,CAAC;EAC3C,CAAC;EAEDC,oBAAoB,GAAID,KAAa,IAAK;IACtC,IAAI,CAACb,SAAS,CAACc,oBAAoB,CAACD,KAAK,CAAC;EAC9C,CAAC;EAEDE,oBAAoB,GAAGA,CAAA,KAAM;IACzB,IAAI,CAACf,SAAS,CAACe,oBAAoB,CAAC,CAAC;EACzC,CAAC;EAEDC,SAAS,GAAIX,MAAqB,IAAK;IACnC,IAAI,CAACL,SAAS,CAACgB,SAAS,CAACX,MAAM,CAAC;EACpC,CAAC;AACL","ignoreList":[]}
1
+ {"version":3,"names":["MultiAutoCompleteListOptionsPresenterWithUniqueValues","constructor","decoretee","init","params","options","filter","option","selected","vm","setListOpenState","open","setLoadedOptions","loaded","setSelectedOption","value","removeSelectedOption","resetSelectedOptions","addOption"],"sources":["MultiAutoCompleteListOptionsPresenterWithUniqueValues.ts"],"sourcesContent":["import type { CommandOption } from \"~/Command/domain/CommandOption\";\nimport type {\n IMultiAutoCompleteListOptionsPresenter,\n IMultiAutoCompleteListOptionsPresenterParams\n} from \"./MultiAutoCompleteListOptionsPresenter\";\n\nexport class MultiAutoCompleteListOptionsPresenterWithUniqueValues\n implements IMultiAutoCompleteListOptionsPresenter\n{\n private decoretee: IMultiAutoCompleteListOptionsPresenter;\n\n constructor(decoretee: IMultiAutoCompleteListOptionsPresenter) {\n this.decoretee = decoretee;\n }\n\n init(params: IMultiAutoCompleteListOptionsPresenterParams) {\n const options = params.options?.filter(option => !option.selected);\n this.decoretee.init({\n ...params,\n options\n });\n }\n\n get vm() {\n return this.decoretee.vm;\n }\n\n setListOpenState = (open: boolean) => {\n this.decoretee.setListOpenState(open);\n };\n\n setLoadedOptions = (loaded: boolean) => {\n this.decoretee.setLoadedOptions(loaded);\n };\n\n setSelectedOption = (value: string) => {\n this.decoretee.setSelectedOption(value);\n };\n\n removeSelectedOption = (value: string) => {\n this.decoretee.removeSelectedOption(value);\n };\n\n resetSelectedOptions = () => {\n this.decoretee.resetSelectedOptions();\n };\n\n addOption = (option: CommandOption) => {\n this.decoretee.addOption(option);\n };\n}\n"],"mappings":"AAMA,OAAO,MAAMA,qDAAqD,CAElE;EAGIC,WAAWA,CAACC,SAAiD,EAAE;IAC3D,IAAI,CAACA,SAAS,GAAGA,SAAS;EAC9B;EAEAC,IAAIA,CAACC,MAAoD,EAAE;IACvD,MAAMC,OAAO,GAAGD,MAAM,CAACC,OAAO,EAAEC,MAAM,CAACC,MAAM,IAAI,CAACA,MAAM,CAACC,QAAQ,CAAC;IAClE,IAAI,CAACN,SAAS,CAACC,IAAI,CAAC;MAChB,GAAGC,MAAM;MACTC;IACJ,CAAC,CAAC;EACN;EAEA,IAAII,EAAEA,CAAA,EAAG;IACL,OAAO,IAAI,CAACP,SAAS,CAACO,EAAE;EAC5B;EAEAC,gBAAgB,GAAIC,IAAa,IAAK;IAClC,IAAI,CAACT,SAAS,CAACQ,gBAAgB,CAACC,IAAI,CAAC;EACzC,CAAC;EAEDC,gBAAgB,GAAIC,MAAe,IAAK;IACpC,IAAI,CAACX,SAAS,CAACU,gBAAgB,CAACC,MAAM,CAAC;EAC3C,CAAC;EAEDC,iBAAiB,GAAIC,KAAa,IAAK;IACnC,IAAI,CAACb,SAAS,CAACY,iBAAiB,CAACC,KAAK,CAAC;EAC3C,CAAC;EAEDC,oBAAoB,GAAID,KAAa,IAAK;IACtC,IAAI,CAACb,SAAS,CAACc,oBAAoB,CAACD,KAAK,CAAC;EAC9C,CAAC;EAEDE,oBAAoB,GAAGA,CAAA,KAAM;IACzB,IAAI,CAACf,SAAS,CAACe,oBAAoB,CAAC,CAAC;EACzC,CAAC;EAEDC,SAAS,GAAIX,MAAqB,IAAK;IACnC,IAAI,CAACL,SAAS,CAACgB,SAAS,CAACX,MAAM,CAAC;EACpC,CAAC;AACL","ignoreList":[]}
@@ -1,8 +1,8 @@
1
- import { MultiAutoCompleteOption } from "../../domains";
2
- import { IMultiAutoCompleteInputPresenter } from "./MultiAutoCompleteInputPresenter";
3
- import { IMultiAutoCompleteSelectedOptionsPresenter } from "./MultiAutoCompleteSelectedOptionsPresenter";
4
- import { IMultiAutoCompleteListOptionsPresenter } from "./MultiAutoCompleteListOptionsPresenter";
5
- import { IMultiAutoCompleteTemporaryOptionPresenter } from "./MultiAutoCompleteTemporaryOptionPresenter";
1
+ import type { MultiAutoCompleteOption } from "../../domains";
2
+ import type { IMultiAutoCompleteInputPresenter } from "./MultiAutoCompleteInputPresenter";
3
+ import type { IMultiAutoCompleteSelectedOptionsPresenter } from "./MultiAutoCompleteSelectedOptionsPresenter";
4
+ import type { IMultiAutoCompleteListOptionsPresenter } from "./MultiAutoCompleteListOptionsPresenter";
5
+ import type { IMultiAutoCompleteTemporaryOptionPresenter } from "./MultiAutoCompleteTemporaryOptionPresenter";
6
6
  interface MultiAutoCompletePresenterParams {
7
7
  allowFreeInput?: boolean;
8
8
  displayResetAction?: boolean;
@@ -71,11 +71,14 @@ class MultiAutoCompletePresenter {
71
71
  getListOptions(options = [], values = []) {
72
72
  return options.map(option => {
73
73
  const commandOption = typeof option === "string" ? CommandOption.createFromString(option) : CommandOption.create(option);
74
- commandOption.selected = values.includes(commandOption.value);
74
+ commandOption.selected = values?.includes(commandOption.value) ?? false;
75
75
  return commandOption;
76
76
  });
77
77
  }
78
78
  getSelectedOptions(commandOptions, values = []) {
79
+ if (!values.length) {
80
+ return [];
81
+ }
79
82
  return values.map(value => {
80
83
  const option = commandOptions.find(option => option.value === value);
81
84
  if (!option) {
@@ -1 +1 @@
1
- {"version":3,"names":["makeAutoObservable","CommandOption","MultiAutoCompletePresenter","params","undefined","constructor","inputPresenter","selectedOptionsPresenter","optionsListPresenter","init","placeholder","displayResetAction","listOptions","getListOptions","options","values","emptyMessage","loadingMessage","initialMessage","getSelectedOptions","vm","inputVm","selectedOptionsVm","optionsListVm","temporaryOptionVm","option","setListOpenState","open","onOpenChange","searchOption","value","setValue","setLoadedOptions","onValueSearch","setSelectedOption","resetValue","find","commandOption","create","createFromString","selected","addOption","onValuesChange","getSelectedValues","removeSelectedOption","removeOption","resetSelectedOptions","resetOptions","onValuesReset","createOption","map","includes","commandOptions"],"sources":["MultiAutoCompletePresenter.ts"],"sourcesContent":["import { makeAutoObservable } from \"mobx\";\nimport { CommandOption } from \"~/Command/domain/CommandOption\";\nimport { MultiAutoCompleteOption } from \"../../domains\";\nimport { IMultiAutoCompleteInputPresenter } from \"./MultiAutoCompleteInputPresenter\";\nimport { IMultiAutoCompleteSelectedOptionsPresenter } from \"./MultiAutoCompleteSelectedOptionsPresenter\";\nimport { IMultiAutoCompleteListOptionsPresenter } from \"./MultiAutoCompleteListOptionsPresenter\";\nimport { IMultiAutoCompleteTemporaryOptionPresenter } from \"./MultiAutoCompleteTemporaryOptionPresenter\";\n\ninterface MultiAutoCompletePresenterParams {\n allowFreeInput?: boolean;\n displayResetAction?: boolean;\n emptyMessage?: any;\n loadingMessage?: any;\n initialMessage?: any;\n options?: MultiAutoCompleteOption[];\n placeholder?: string;\n values?: string[];\n onValueSearch?: (value: string) => void;\n onValuesReset?: () => void;\n onValuesChange: (values: string[]) => void;\n onOpenChange?: (open: boolean) => void;\n}\n\ninterface IMultiAutoCompletePresenter {\n vm: {\n inputVm: IMultiAutoCompleteInputPresenter[\"vm\"];\n selectedOptionsVm: IMultiAutoCompleteSelectedOptionsPresenter[\"vm\"];\n optionsListVm: IMultiAutoCompleteListOptionsPresenter[\"vm\"];\n temporaryOptionVm: IMultiAutoCompleteTemporaryOptionPresenter[\"vm\"];\n };\n init: (params: MultiAutoCompletePresenterParams) => void;\n setListOpenState: (open: boolean) => void;\n searchOption: (value: string) => void;\n setSelectedOption: (value: string) => void;\n removeSelectedOption: (value: string) => void;\n resetSelectedOptions: () => void;\n createOption: (value: string) => void;\n}\n\nclass MultiAutoCompletePresenter implements IMultiAutoCompletePresenter {\n private params?: MultiAutoCompletePresenterParams = undefined;\n private inputPresenter: IMultiAutoCompleteInputPresenter;\n private selectedOptionsPresenter: IMultiAutoCompleteSelectedOptionsPresenter;\n private optionsListPresenter: IMultiAutoCompleteListOptionsPresenter;\n\n constructor(\n inputPresenter: IMultiAutoCompleteInputPresenter,\n selectedOptionsPresenter: IMultiAutoCompleteSelectedOptionsPresenter,\n optionsListPresenter: IMultiAutoCompleteListOptionsPresenter\n ) {\n this.inputPresenter = inputPresenter;\n this.selectedOptionsPresenter = selectedOptionsPresenter;\n this.optionsListPresenter = optionsListPresenter;\n makeAutoObservable(this);\n }\n\n init(params: MultiAutoCompletePresenterParams) {\n this.params = params;\n\n this.inputPresenter.init({\n placeholder: params.placeholder,\n displayResetAction: params.displayResetAction\n });\n\n const listOptions = this.getListOptions(params.options, params.values);\n this.optionsListPresenter.init({\n options: listOptions,\n emptyMessage: params.emptyMessage,\n loadingMessage: params.loadingMessage,\n initialMessage: params.initialMessage\n });\n this.selectedOptionsPresenter.init({\n options: this.getSelectedOptions(listOptions, params.values)\n });\n }\n\n get vm() {\n return {\n inputVm: this.inputPresenter.vm,\n selectedOptionsVm: this.selectedOptionsPresenter.vm,\n optionsListVm: this.optionsListPresenter.vm,\n temporaryOptionVm: {\n option: undefined\n }\n };\n }\n\n setListOpenState = (open: boolean) => {\n this.optionsListPresenter.setListOpenState(open);\n this.params?.onOpenChange?.(open);\n };\n\n public searchOption = (value: string) => {\n this.inputPresenter.setValue(value);\n this.optionsListPresenter.setLoadedOptions(true);\n this.params?.onValueSearch?.(value);\n };\n\n public setSelectedOption = (value: string) => {\n this.inputPresenter.resetValue();\n this.optionsListPresenter.setSelectedOption(value);\n\n const option = this.vm.optionsListVm.options.find(option => option.value === value);\n\n const commandOption = option\n ? CommandOption.create(option)\n : CommandOption.createFromString(value);\n\n commandOption.selected = true;\n this.selectedOptionsPresenter.addOption(commandOption);\n\n this.params?.onValuesChange(this.getSelectedValues());\n };\n\n public removeSelectedOption = (value: string) => {\n this.optionsListPresenter.removeSelectedOption(value);\n this.selectedOptionsPresenter.removeOption(value);\n\n this.params?.onValuesChange(this.getSelectedValues());\n };\n\n public resetSelectedOptions = () => {\n this.optionsListPresenter.resetSelectedOptions();\n this.selectedOptionsPresenter.resetOptions();\n this.inputPresenter.resetValue();\n\n this.params?.onValuesChange(this.getSelectedValues());\n this.params?.onValuesReset?.();\n };\n\n public createOption = () => {\n return;\n };\n\n private getListOptions(\n options: MultiAutoCompleteOption[] = [],\n values: string[] = []\n ): CommandOption[] {\n return options.map(option => {\n const commandOption =\n typeof option === \"string\"\n ? CommandOption.createFromString(option)\n : CommandOption.create(option);\n\n commandOption.selected = values.includes(commandOption.value);\n\n return commandOption;\n });\n }\n\n private getSelectedOptions(\n commandOptions: CommandOption[],\n values: string[] = []\n ): CommandOption[] {\n return values.map(value => {\n const option = commandOptions.find(option => option.value === value);\n\n if (!option) {\n return CommandOption.createFromString(value);\n }\n\n return option;\n });\n }\n\n private getSelectedValues() {\n return this.selectedOptionsPresenter.vm.options.map(option => option.value);\n }\n}\n\nexport {\n MultiAutoCompletePresenter,\n type IMultiAutoCompletePresenter,\n type MultiAutoCompletePresenterParams\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["makeAutoObservable","CommandOption","MultiAutoCompletePresenter","params","undefined","constructor","inputPresenter","selectedOptionsPresenter","optionsListPresenter","init","placeholder","displayResetAction","listOptions","getListOptions","options","values","emptyMessage","loadingMessage","initialMessage","getSelectedOptions","vm","inputVm","selectedOptionsVm","optionsListVm","temporaryOptionVm","option","setListOpenState","open","onOpenChange","searchOption","value","setValue","setLoadedOptions","onValueSearch","setSelectedOption","resetValue","find","commandOption","create","createFromString","selected","addOption","onValuesChange","getSelectedValues","removeSelectedOption","removeOption","resetSelectedOptions","resetOptions","onValuesReset","createOption","map","includes","commandOptions","length"],"sources":["MultiAutoCompletePresenter.ts"],"sourcesContent":["import { makeAutoObservable } from \"mobx\";\nimport { CommandOption } from \"~/Command/domain/CommandOption\";\nimport type { MultiAutoCompleteOption } from \"../../domains\";\nimport type { IMultiAutoCompleteInputPresenter } from \"./MultiAutoCompleteInputPresenter\";\nimport type { IMultiAutoCompleteSelectedOptionsPresenter } from \"./MultiAutoCompleteSelectedOptionsPresenter\";\nimport type { IMultiAutoCompleteListOptionsPresenter } from \"./MultiAutoCompleteListOptionsPresenter\";\nimport type { IMultiAutoCompleteTemporaryOptionPresenter } from \"./MultiAutoCompleteTemporaryOptionPresenter\";\n\ninterface MultiAutoCompletePresenterParams {\n allowFreeInput?: boolean;\n displayResetAction?: boolean;\n emptyMessage?: any;\n loadingMessage?: any;\n initialMessage?: any;\n options?: MultiAutoCompleteOption[];\n placeholder?: string;\n values?: string[];\n onValueSearch?: (value: string) => void;\n onValuesReset?: () => void;\n onValuesChange: (values: string[]) => void;\n onOpenChange?: (open: boolean) => void;\n}\n\ninterface IMultiAutoCompletePresenter {\n vm: {\n inputVm: IMultiAutoCompleteInputPresenter[\"vm\"];\n selectedOptionsVm: IMultiAutoCompleteSelectedOptionsPresenter[\"vm\"];\n optionsListVm: IMultiAutoCompleteListOptionsPresenter[\"vm\"];\n temporaryOptionVm: IMultiAutoCompleteTemporaryOptionPresenter[\"vm\"];\n };\n init: (params: MultiAutoCompletePresenterParams) => void;\n setListOpenState: (open: boolean) => void;\n searchOption: (value: string) => void;\n setSelectedOption: (value: string) => void;\n removeSelectedOption: (value: string) => void;\n resetSelectedOptions: () => void;\n createOption: (value: string) => void;\n}\n\nclass MultiAutoCompletePresenter implements IMultiAutoCompletePresenter {\n private params?: MultiAutoCompletePresenterParams = undefined;\n private inputPresenter: IMultiAutoCompleteInputPresenter;\n private selectedOptionsPresenter: IMultiAutoCompleteSelectedOptionsPresenter;\n private optionsListPresenter: IMultiAutoCompleteListOptionsPresenter;\n\n constructor(\n inputPresenter: IMultiAutoCompleteInputPresenter,\n selectedOptionsPresenter: IMultiAutoCompleteSelectedOptionsPresenter,\n optionsListPresenter: IMultiAutoCompleteListOptionsPresenter\n ) {\n this.inputPresenter = inputPresenter;\n this.selectedOptionsPresenter = selectedOptionsPresenter;\n this.optionsListPresenter = optionsListPresenter;\n makeAutoObservable(this);\n }\n\n init(params: MultiAutoCompletePresenterParams) {\n this.params = params;\n\n this.inputPresenter.init({\n placeholder: params.placeholder,\n displayResetAction: params.displayResetAction\n });\n\n const listOptions = this.getListOptions(params.options, params.values);\n this.optionsListPresenter.init({\n options: listOptions,\n emptyMessage: params.emptyMessage,\n loadingMessage: params.loadingMessage,\n initialMessage: params.initialMessage\n });\n this.selectedOptionsPresenter.init({\n options: this.getSelectedOptions(listOptions, params.values)\n });\n }\n\n get vm() {\n return {\n inputVm: this.inputPresenter.vm,\n selectedOptionsVm: this.selectedOptionsPresenter.vm,\n optionsListVm: this.optionsListPresenter.vm,\n temporaryOptionVm: {\n option: undefined\n }\n };\n }\n\n setListOpenState = (open: boolean) => {\n this.optionsListPresenter.setListOpenState(open);\n this.params?.onOpenChange?.(open);\n };\n\n public searchOption = (value: string) => {\n this.inputPresenter.setValue(value);\n this.optionsListPresenter.setLoadedOptions(true);\n this.params?.onValueSearch?.(value);\n };\n\n public setSelectedOption = (value: string) => {\n this.inputPresenter.resetValue();\n this.optionsListPresenter.setSelectedOption(value);\n\n const option = this.vm.optionsListVm.options.find(option => option.value === value);\n\n const commandOption = option\n ? CommandOption.create(option)\n : CommandOption.createFromString(value);\n\n commandOption.selected = true;\n this.selectedOptionsPresenter.addOption(commandOption);\n\n this.params?.onValuesChange(this.getSelectedValues());\n };\n\n public removeSelectedOption = (value: string) => {\n this.optionsListPresenter.removeSelectedOption(value);\n this.selectedOptionsPresenter.removeOption(value);\n\n this.params?.onValuesChange(this.getSelectedValues());\n };\n\n public resetSelectedOptions = () => {\n this.optionsListPresenter.resetSelectedOptions();\n this.selectedOptionsPresenter.resetOptions();\n this.inputPresenter.resetValue();\n\n this.params?.onValuesChange(this.getSelectedValues());\n this.params?.onValuesReset?.();\n };\n\n public createOption = () => {\n return;\n };\n\n private getListOptions(\n options: MultiAutoCompleteOption[] = [],\n values: string[] = []\n ): CommandOption[] {\n return options.map(option => {\n const commandOption =\n typeof option === \"string\"\n ? CommandOption.createFromString(option)\n : CommandOption.create(option);\n\n commandOption.selected = values?.includes(commandOption.value) ?? false;\n\n return commandOption;\n });\n }\n\n private getSelectedOptions(\n commandOptions: CommandOption[],\n values: string[] = []\n ): CommandOption[] {\n if (!values.length) {\n return [];\n }\n\n return values.map(value => {\n const option = commandOptions.find(option => option.value === value);\n\n if (!option) {\n return CommandOption.createFromString(value);\n }\n\n return option;\n });\n }\n\n private getSelectedValues() {\n return this.selectedOptionsPresenter.vm.options.map(option => option.value);\n }\n}\n\nexport {\n MultiAutoCompletePresenter,\n type IMultiAutoCompletePresenter,\n type MultiAutoCompletePresenterParams\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["MultiAutoCompletePresenter","MultiAutoCompleteInputPresenter","MultiAutoCompleteSelectedOptionPresenter","MultiAutoCompleteListOptionsPresenter","describe","presenter","onValuesChange","jest","fn","onOpenChange","onValuesReset","beforeEach","inputPresenter","selectedOptionsPresenter","optionsListPresenter","it","init","placeholder","expect","vm","inputVm","toEqual","displayResetAction","options","values","selectedOptionsVm","value","label","disabled","selected","separator","item","optionsListVm","empty","anyKey1","anyKey2","emptyMessage","loadingMessage","open","setSelectedOption","toHaveBeenCalledWith","removeSelectedOption","searchOption","resetSelectedOptions","toHaveBeenCalled","setListOpenState","toBe","createOption"],"sources":["MultiAutoCompletePresenter.test.ts"],"sourcesContent":["import {\n IMultiAutoCompletePresenter,\n MultiAutoCompletePresenter\n} from \"./MultiAutoCompletePresenter\";\nimport { MultiAutoCompleteInputPresenter } from \"./MultiAutoCompleteInputPresenter\";\nimport { MultiAutoCompleteSelectedOptionPresenter } from \"./MultiAutoCompleteSelectedOptionsPresenter\";\nimport { MultiAutoCompleteListOptionsPresenter } from \"./MultiAutoCompleteListOptionsPresenter\";\n\ndescribe(\"MultiAutoCompletePresenter\", () => {\n let presenter: IMultiAutoCompletePresenter;\n const onValuesChange = jest.fn();\n const onOpenChange = jest.fn();\n const onValuesReset = jest.fn();\n\n beforeEach(() => {\n const inputPresenter = new MultiAutoCompleteInputPresenter();\n const selectedOptionsPresenter = new MultiAutoCompleteSelectedOptionPresenter();\n const optionsListPresenter = new MultiAutoCompleteListOptionsPresenter();\n\n presenter = new MultiAutoCompletePresenter(\n inputPresenter,\n selectedOptionsPresenter,\n optionsListPresenter\n );\n });\n\n it(\"should return the compatible `vm.inputVm` based on params\", () => {\n // `placeholder`\n {\n presenter.init({ placeholder: \"Custom placeholder\", onValuesChange });\n expect(presenter.vm.inputVm.placeholder).toEqual(\"Custom placeholder\");\n }\n\n {\n // default: no params\n presenter.init({ onValuesChange });\n expect(presenter.vm.inputVm.placeholder).toEqual(\"Start typing or select\");\n expect(presenter.vm.inputVm.displayResetAction).toEqual(true);\n }\n });\n\n it(\"should return the compatible `vm.selectedOptionsVm` based on params\", () => {\n presenter.init({\n options: [\"Option 1\", \"Option 2\", \"Option 3\"],\n values: [\"Option 1\", \"Option 2\"],\n onValuesChange\n });\n expect(presenter.vm.selectedOptionsVm.options).toEqual([\n {\n value: \"Option 1\",\n label: \"Option 1\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n },\n {\n value: \"Option 2\",\n label: \"Option 2\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n }\n ]);\n });\n\n it(\"should return the compatible `vm.selectedOptionsVm` with no params\", () => {\n presenter.init({ options: [\"Option 1\", \"Option 2\"], onValuesChange });\n expect(presenter.vm.selectedOptionsVm.options).toEqual([]);\n });\n\n it(\"should return the compatible `vm.optionsListVm` based on params\", () => {\n // with `options` as string\n {\n presenter.init({ options: [\"Option 1\", \"Option 2\"], onValuesChange });\n expect(presenter.vm.optionsListVm.options).toEqual([\n {\n value: \"Option 1\",\n label: \"Option 1\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n },\n {\n value: \"Option 2\",\n label: \"Option 2\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n }\n ]);\n expect(presenter.vm.optionsListVm.empty).toEqual(false);\n }\n\n // with `options` as formatted options\n {\n presenter.init({\n onValuesChange,\n options: [\n {\n value: \"option-1\",\n label: \"Option 1\"\n },\n {\n value: \"option-2\",\n label: \"Option 2\"\n },\n {\n value: \"option-3\",\n label: \"Option 3\",\n disabled: true\n },\n {\n value: \"option-4\",\n label: \"Option 4\",\n separator: true\n },\n {\n value: \"option-5\",\n label: \"Option 5\",\n item: {\n anyKey1: \"custom-value\",\n anyKey2: 2\n }\n }\n ]\n });\n\n expect(presenter.vm.optionsListVm.options).toEqual([\n {\n value: \"option-1\",\n label: \"Option 1\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n },\n {\n value: \"option-2\",\n label: \"Option 2\",\n disabled: false,\n selected: false, // `selected` is overwritten by the presenter\n separator: false,\n item: null\n },\n {\n value: \"option-3\",\n label: \"Option 3\",\n disabled: true,\n selected: false,\n separator: false,\n item: null\n },\n {\n value: \"option-4\",\n label: \"Option 4\",\n disabled: false,\n selected: false,\n separator: true,\n item: null\n },\n {\n value: \"option-5\",\n label: \"Option 5\",\n disabled: false,\n selected: false,\n separator: false,\n item: {\n anyKey1: \"custom-value\",\n anyKey2: 2\n }\n }\n ]);\n expect(presenter.vm.optionsListVm.empty).toEqual(false);\n }\n\n // with `options` and `value`\n {\n presenter.init({\n onValuesChange,\n options: [\"Option 1\", \"Option 2\"],\n values: [\"Option 1\"]\n });\n expect(presenter.vm.optionsListVm.options).toEqual([\n {\n value: \"Option 1\",\n label: \"Option 1\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n },\n {\n value: \"Option 2\",\n label: \"Option 2\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n }\n ]);\n expect(presenter.vm.optionsListVm.empty).toEqual(false);\n }\n\n {\n // default: no params\n presenter.init({ onValuesChange });\n expect(presenter.vm.optionsListVm.options).toEqual([]);\n expect(presenter.vm.optionsListVm.emptyMessage).toEqual(\n \"Start typing to find an option.\"\n );\n expect(presenter.vm.optionsListVm.loadingMessage).toEqual(\"Loading...\");\n expect(presenter.vm.optionsListVm.open).toEqual(false);\n expect(presenter.vm.optionsListVm.empty).toEqual(true);\n }\n });\n\n it(\"should change the `optionsListVm` and `selectedOptionsVm` when `setSelectedOption` is called\", () => {\n presenter.init({\n onValuesChange,\n options: [\n {\n label: \"Option 1\",\n value: \"option-1\"\n },\n {\n label: \"Option 2\",\n value: \"option-2\"\n }\n ]\n });\n\n expect(presenter.vm.optionsListVm.options).toEqual([\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n },\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n }\n ]);\n\n presenter.setSelectedOption(\"option-2\");\n expect(onValuesChange).toHaveBeenCalledWith([\"option-2\"]);\n expect(presenter.vm.optionsListVm.options).toEqual([\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n },\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n }\n ]);\n expect(presenter.vm.selectedOptionsVm.options).toEqual([\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n }\n ]);\n\n presenter.setSelectedOption(\"option-1\");\n expect(onValuesChange).toHaveBeenCalledWith([\"option-2\", \"option-1\"]);\n expect(presenter.vm.optionsListVm.options).toEqual([\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n },\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n }\n ]);\n\n expect(presenter.vm.selectedOptionsVm.options).toEqual([\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n },\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n }\n ]);\n });\n\n it(\"should change the `optionsListVm` and `selectedOptionsVm` when `removeSelectedOption` is called\", () => {\n presenter.init({\n onValuesChange,\n options: [\n {\n label: \"Option 1\",\n value: \"option-1\"\n },\n {\n label: \"Option 2\",\n value: \"option-2\"\n }\n ],\n values: [\"option-2\", \"option-1\"]\n });\n\n expect(presenter.vm.optionsListVm.options).toEqual([\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n },\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n }\n ]);\n\n expect(presenter.vm.selectedOptionsVm.options).toEqual([\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n },\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n }\n ]);\n\n presenter.removeSelectedOption(\"option-2\");\n expect(onValuesChange).toHaveBeenCalledWith([\"option-2\"]);\n expect(presenter.vm.optionsListVm.options).toEqual([\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n },\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n }\n ]);\n expect(presenter.vm.selectedOptionsVm.options).toEqual([\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n }\n ]);\n\n presenter.removeSelectedOption(\"option-1\");\n expect(onValuesChange).toHaveBeenCalledWith([]);\n expect(presenter.vm.optionsListVm.options).toEqual([\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n },\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n }\n ]);\n expect(presenter.vm.selectedOptionsVm.options).toEqual([]);\n });\n\n it(\"should set the internal `inputValue` when `setInputValue` is called\", () => {\n presenter.init({ onValuesChange });\n\n presenter.searchOption(\"value\");\n expect(presenter.vm.inputVm.value).toEqual(\"value\");\n });\n\n it(\"should set the option as `selected` when the presenter is initialized with a value\", () => {\n presenter.init({\n onValuesChange,\n values: [\"option-1\"],\n options: [\n {\n label: \"Option 1\",\n value: \"option-1\"\n },\n {\n label: \"Option 2\",\n value: \"option-2\"\n }\n ]\n });\n\n expect(presenter.vm.optionsListVm.options).toEqual([\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n },\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n }\n ]);\n expect(presenter.vm.selectedOptionsVm.options).toEqual([\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n }\n ]);\n });\n\n it(\"should change the `optionListVm` and `selectedOptionsVm` when `resetSelectedOptions` is called\", () => {\n presenter.init({\n onValuesChange,\n onValuesReset,\n options: [\n {\n label: \"Option 1\",\n value: \"option-1\"\n },\n {\n label: \"Option 2\",\n value: \"option-2\"\n }\n ]\n });\n\n expect(presenter.vm.optionsListVm.options).toEqual([\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n },\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n }\n ]);\n\n presenter.setSelectedOption(\"option-1\");\n expect(presenter.vm.optionsListVm.options).toEqual([\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n },\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n }\n ]);\n expect(presenter.vm.selectedOptionsVm.options).toEqual([\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n }\n ]);\n\n presenter.resetSelectedOptions();\n expect(presenter.vm.optionsListVm.options).toEqual([\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n },\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n }\n ]);\n expect(presenter.vm.inputVm.value).toEqual(\"\");\n expect(presenter.vm.selectedOptionsVm.options).toEqual([]);\n\n expect(onValuesChange).toHaveBeenCalledWith([]);\n expect(onValuesReset).toHaveBeenCalled();\n });\n\n it(\"should change `listVm` and call `onOpenChange` when `setListOpenState` is called\", () => {\n // let's open it\n presenter.init({ onValuesChange, onOpenChange });\n presenter.setListOpenState(true);\n expect(presenter.vm.optionsListVm.open).toBe(true);\n expect(onOpenChange).toHaveBeenCalledWith(true);\n\n // let's close it\n presenter.setListOpenState(false);\n expect(presenter.vm.optionsListVm.open).toBe(false);\n expect(onOpenChange).toHaveBeenCalledWith(false);\n });\n\n it(\"should be able to create new options if `allowFreeInput` is set to true\", () => {\n // This feature is disabled by default\n presenter.init({ onValuesChange });\n presenter.searchOption(\"New Option 1\");\n presenter.createOption(\"New Option 1\");\n expect(presenter.vm.selectedOptionsVm.empty).toEqual(true);\n expect(presenter.vm.selectedOptionsVm.options).toEqual([]);\n });\n\n it(\"should not display the reset action if `displayResetAction` is set to `false` and option is selected\", () => {\n presenter.init({\n onValuesChange,\n options: [\n {\n label: \"Option 1\",\n value: \"option-1\"\n },\n {\n label: \"Option 2\",\n value: \"option-2\"\n }\n ],\n displayResetAction: false\n });\n\n presenter.setSelectedOption(\"option-2\");\n expect(onValuesChange).toHaveBeenCalledWith([\"option-2\"]);\n // `displayResetAction` is set to `false` and option is selected\n expect(presenter.vm.inputVm.displayResetAction).toEqual(false);\n expect(presenter.vm.optionsListVm.options).toEqual([\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n },\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n }\n ]);\n expect(presenter.vm.selectedOptionsVm.options).toEqual([\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n }\n ]);\n });\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["MultiAutoCompletePresenter","MultiAutoCompleteInputPresenter","MultiAutoCompleteSelectedOptionPresenter","MultiAutoCompleteListOptionsPresenter","describe","presenter","onValuesChange","jest","fn","onOpenChange","onValuesReset","beforeEach","inputPresenter","selectedOptionsPresenter","optionsListPresenter","it","init","placeholder","expect","vm","inputVm","toEqual","displayResetAction","options","values","selectedOptionsVm","value","label","disabled","selected","separator","item","optionsListVm","empty","anyKey1","anyKey2","emptyMessage","loadingMessage","open","setSelectedOption","toHaveBeenCalledWith","removeSelectedOption","searchOption","resetSelectedOptions","toHaveBeenCalled","setListOpenState","toBe","createOption"],"sources":["MultiAutoCompletePresenter.test.ts"],"sourcesContent":["import type { IMultiAutoCompletePresenter } from \"./MultiAutoCompletePresenter\";\nimport { MultiAutoCompletePresenter } from \"./MultiAutoCompletePresenter\";\nimport { MultiAutoCompleteInputPresenter } from \"./MultiAutoCompleteInputPresenter\";\nimport { MultiAutoCompleteSelectedOptionPresenter } from \"./MultiAutoCompleteSelectedOptionsPresenter\";\nimport { MultiAutoCompleteListOptionsPresenter } from \"./MultiAutoCompleteListOptionsPresenter\";\n\ndescribe(\"MultiAutoCompletePresenter\", () => {\n let presenter: IMultiAutoCompletePresenter;\n const onValuesChange = jest.fn();\n const onOpenChange = jest.fn();\n const onValuesReset = jest.fn();\n\n beforeEach(() => {\n const inputPresenter = new MultiAutoCompleteInputPresenter();\n const selectedOptionsPresenter = new MultiAutoCompleteSelectedOptionPresenter();\n const optionsListPresenter = new MultiAutoCompleteListOptionsPresenter();\n\n presenter = new MultiAutoCompletePresenter(\n inputPresenter,\n selectedOptionsPresenter,\n optionsListPresenter\n );\n });\n\n it(\"should return the compatible `vm.inputVm` based on params\", () => {\n // `placeholder`\n {\n presenter.init({ placeholder: \"Custom placeholder\", onValuesChange });\n expect(presenter.vm.inputVm.placeholder).toEqual(\"Custom placeholder\");\n }\n\n {\n // default: no params\n presenter.init({ onValuesChange });\n expect(presenter.vm.inputVm.placeholder).toEqual(\"Start typing or select\");\n expect(presenter.vm.inputVm.displayResetAction).toEqual(true);\n }\n });\n\n it(\"should return the compatible `vm.selectedOptionsVm` based on params\", () => {\n presenter.init({\n options: [\"Option 1\", \"Option 2\", \"Option 3\"],\n values: [\"Option 1\", \"Option 2\"],\n onValuesChange\n });\n expect(presenter.vm.selectedOptionsVm.options).toEqual([\n {\n value: \"Option 1\",\n label: \"Option 1\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n },\n {\n value: \"Option 2\",\n label: \"Option 2\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n }\n ]);\n });\n\n it(\"should return the compatible `vm.selectedOptionsVm` with no params\", () => {\n presenter.init({ options: [\"Option 1\", \"Option 2\"], onValuesChange });\n expect(presenter.vm.selectedOptionsVm.options).toEqual([]);\n });\n\n it(\"should return the compatible `vm.optionsListVm` based on params\", () => {\n // with `options` as string\n {\n presenter.init({ options: [\"Option 1\", \"Option 2\"], onValuesChange });\n expect(presenter.vm.optionsListVm.options).toEqual([\n {\n value: \"Option 1\",\n label: \"Option 1\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n },\n {\n value: \"Option 2\",\n label: \"Option 2\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n }\n ]);\n expect(presenter.vm.optionsListVm.empty).toEqual(false);\n }\n\n // with `options` as formatted options\n {\n presenter.init({\n onValuesChange,\n options: [\n {\n value: \"option-1\",\n label: \"Option 1\"\n },\n {\n value: \"option-2\",\n label: \"Option 2\"\n },\n {\n value: \"option-3\",\n label: \"Option 3\",\n disabled: true\n },\n {\n value: \"option-4\",\n label: \"Option 4\",\n separator: true\n },\n {\n value: \"option-5\",\n label: \"Option 5\",\n item: {\n anyKey1: \"custom-value\",\n anyKey2: 2\n }\n }\n ]\n });\n\n expect(presenter.vm.optionsListVm.options).toEqual([\n {\n value: \"option-1\",\n label: \"Option 1\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n },\n {\n value: \"option-2\",\n label: \"Option 2\",\n disabled: false,\n selected: false, // `selected` is overwritten by the presenter\n separator: false,\n item: null\n },\n {\n value: \"option-3\",\n label: \"Option 3\",\n disabled: true,\n selected: false,\n separator: false,\n item: null\n },\n {\n value: \"option-4\",\n label: \"Option 4\",\n disabled: false,\n selected: false,\n separator: true,\n item: null\n },\n {\n value: \"option-5\",\n label: \"Option 5\",\n disabled: false,\n selected: false,\n separator: false,\n item: {\n anyKey1: \"custom-value\",\n anyKey2: 2\n }\n }\n ]);\n expect(presenter.vm.optionsListVm.empty).toEqual(false);\n }\n\n // with `options` and `value`\n {\n presenter.init({\n onValuesChange,\n options: [\"Option 1\", \"Option 2\"],\n values: [\"Option 1\"]\n });\n expect(presenter.vm.optionsListVm.options).toEqual([\n {\n value: \"Option 1\",\n label: \"Option 1\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n },\n {\n value: \"Option 2\",\n label: \"Option 2\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n }\n ]);\n expect(presenter.vm.optionsListVm.empty).toEqual(false);\n }\n\n {\n // default: no params\n presenter.init({ onValuesChange });\n expect(presenter.vm.optionsListVm.options).toEqual([]);\n expect(presenter.vm.optionsListVm.emptyMessage).toEqual(\n \"Start typing to find an option.\"\n );\n expect(presenter.vm.optionsListVm.loadingMessage).toEqual(\"Loading...\");\n expect(presenter.vm.optionsListVm.open).toEqual(false);\n expect(presenter.vm.optionsListVm.empty).toEqual(true);\n }\n });\n\n it(\"should change the `optionsListVm` and `selectedOptionsVm` when `setSelectedOption` is called\", () => {\n presenter.init({\n onValuesChange,\n options: [\n {\n label: \"Option 1\",\n value: \"option-1\"\n },\n {\n label: \"Option 2\",\n value: \"option-2\"\n }\n ]\n });\n\n expect(presenter.vm.optionsListVm.options).toEqual([\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n },\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n }\n ]);\n\n presenter.setSelectedOption(\"option-2\");\n expect(onValuesChange).toHaveBeenCalledWith([\"option-2\"]);\n expect(presenter.vm.optionsListVm.options).toEqual([\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n },\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n }\n ]);\n expect(presenter.vm.selectedOptionsVm.options).toEqual([\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n }\n ]);\n\n presenter.setSelectedOption(\"option-1\");\n expect(onValuesChange).toHaveBeenCalledWith([\"option-2\", \"option-1\"]);\n expect(presenter.vm.optionsListVm.options).toEqual([\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n },\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n }\n ]);\n\n expect(presenter.vm.selectedOptionsVm.options).toEqual([\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n },\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n }\n ]);\n });\n\n it(\"should change the `optionsListVm` and `selectedOptionsVm` when `removeSelectedOption` is called\", () => {\n presenter.init({\n onValuesChange,\n options: [\n {\n label: \"Option 1\",\n value: \"option-1\"\n },\n {\n label: \"Option 2\",\n value: \"option-2\"\n }\n ],\n values: [\"option-2\", \"option-1\"]\n });\n\n expect(presenter.vm.optionsListVm.options).toEqual([\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n },\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n }\n ]);\n\n expect(presenter.vm.selectedOptionsVm.options).toEqual([\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n },\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n }\n ]);\n\n presenter.removeSelectedOption(\"option-2\");\n expect(onValuesChange).toHaveBeenCalledWith([\"option-2\"]);\n expect(presenter.vm.optionsListVm.options).toEqual([\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n },\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n }\n ]);\n expect(presenter.vm.selectedOptionsVm.options).toEqual([\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n }\n ]);\n\n presenter.removeSelectedOption(\"option-1\");\n expect(onValuesChange).toHaveBeenCalledWith([]);\n expect(presenter.vm.optionsListVm.options).toEqual([\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n },\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n }\n ]);\n expect(presenter.vm.selectedOptionsVm.options).toEqual([]);\n });\n\n it(\"should set the internal `inputValue` when `setInputValue` is called\", () => {\n presenter.init({ onValuesChange });\n\n presenter.searchOption(\"value\");\n expect(presenter.vm.inputVm.value).toEqual(\"value\");\n });\n\n it(\"should set the option as `selected` when the presenter is initialized with a value\", () => {\n presenter.init({\n onValuesChange,\n values: [\"option-1\"],\n options: [\n {\n label: \"Option 1\",\n value: \"option-1\"\n },\n {\n label: \"Option 2\",\n value: \"option-2\"\n }\n ]\n });\n\n expect(presenter.vm.optionsListVm.options).toEqual([\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n },\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n }\n ]);\n expect(presenter.vm.selectedOptionsVm.options).toEqual([\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n }\n ]);\n });\n\n it(\"should change the `optionListVm` and `selectedOptionsVm` when `resetSelectedOptions` is called\", () => {\n presenter.init({\n onValuesChange,\n onValuesReset,\n options: [\n {\n label: \"Option 1\",\n value: \"option-1\"\n },\n {\n label: \"Option 2\",\n value: \"option-2\"\n }\n ]\n });\n\n expect(presenter.vm.optionsListVm.options).toEqual([\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n },\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n }\n ]);\n\n presenter.setSelectedOption(\"option-1\");\n expect(presenter.vm.optionsListVm.options).toEqual([\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n },\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n }\n ]);\n expect(presenter.vm.selectedOptionsVm.options).toEqual([\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n }\n ]);\n\n presenter.resetSelectedOptions();\n expect(presenter.vm.optionsListVm.options).toEqual([\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n },\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n }\n ]);\n expect(presenter.vm.inputVm.value).toEqual(\"\");\n expect(presenter.vm.selectedOptionsVm.options).toEqual([]);\n\n expect(onValuesChange).toHaveBeenCalledWith([]);\n expect(onValuesReset).toHaveBeenCalled();\n });\n\n it(\"should change `listVm` and call `onOpenChange` when `setListOpenState` is called\", () => {\n // let's open it\n presenter.init({ onValuesChange, onOpenChange });\n presenter.setListOpenState(true);\n expect(presenter.vm.optionsListVm.open).toBe(true);\n expect(onOpenChange).toHaveBeenCalledWith(true);\n\n // let's close it\n presenter.setListOpenState(false);\n expect(presenter.vm.optionsListVm.open).toBe(false);\n expect(onOpenChange).toHaveBeenCalledWith(false);\n });\n\n it(\"should be able to create new options if `allowFreeInput` is set to true\", () => {\n // This feature is disabled by default\n presenter.init({ onValuesChange });\n presenter.searchOption(\"New Option 1\");\n presenter.createOption(\"New Option 1\");\n expect(presenter.vm.selectedOptionsVm.empty).toEqual(true);\n expect(presenter.vm.selectedOptionsVm.options).toEqual([]);\n });\n\n it(\"should not display the reset action if `displayResetAction` is set to `false` and option is selected\", () => {\n presenter.init({\n onValuesChange,\n options: [\n {\n label: \"Option 1\",\n value: \"option-1\"\n },\n {\n label: \"Option 2\",\n value: \"option-2\"\n }\n ],\n displayResetAction: false\n });\n\n presenter.setSelectedOption(\"option-2\");\n expect(onValuesChange).toHaveBeenCalledWith([\"option-2\"]);\n // `displayResetAction` is set to `false` and option is selected\n expect(presenter.vm.inputVm.displayResetAction).toEqual(false);\n expect(presenter.vm.optionsListVm.options).toEqual([\n {\n label: \"Option 1\",\n value: \"option-1\",\n disabled: false,\n selected: false,\n separator: false,\n item: null\n },\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n }\n ]);\n expect(presenter.vm.selectedOptionsVm.options).toEqual([\n {\n label: \"Option 2\",\n value: \"option-2\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n }\n ]);\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import { IMultiAutoCompleteTemporaryOptionPresenter } from "./MultiAutoCompleteTemporaryOptionPresenter";
2
- import { IMultiAutoCompletePresenter, MultiAutoCompletePresenterParams } from "./MultiAutoCompletePresenter";
1
+ import type { IMultiAutoCompleteTemporaryOptionPresenter } from "./MultiAutoCompleteTemporaryOptionPresenter";
2
+ import type { IMultiAutoCompletePresenter, MultiAutoCompletePresenterParams } from "./MultiAutoCompletePresenter";
3
3
  declare class MultiAutoCompletePresenterWithFreeInput implements IMultiAutoCompletePresenter {
4
4
  private temporaryOptionPresenter;
5
5
  private multiAutoCompletePresenter;
@@ -1 +1 @@
1
- {"version":3,"names":["makeAutoObservable","MultiAutoCompletePresenterWithFreeInput","constructor","temporaryOptionPresenter","multiAutoCompletePresenter","init","params","vm","temporaryOptionVm","setListOpenState","open","searchOption","value","setOption","setSelectedOption","removeSelectedOption","resetOption","resetSelectedOptions","createOption"],"sources":["MultiAutoCompletePresenterWithFreeInput.ts"],"sourcesContent":["import { makeAutoObservable } from \"mobx\";\nimport { IMultiAutoCompleteTemporaryOptionPresenter } from \"./MultiAutoCompleteTemporaryOptionPresenter\";\nimport {\n IMultiAutoCompletePresenter,\n MultiAutoCompletePresenterParams\n} from \"./MultiAutoCompletePresenter\";\n\nclass MultiAutoCompletePresenterWithFreeInput implements IMultiAutoCompletePresenter {\n private temporaryOptionPresenter: IMultiAutoCompleteTemporaryOptionPresenter;\n private multiAutoCompletePresenter: IMultiAutoCompletePresenter;\n\n constructor(\n temporaryOptionPresenter: IMultiAutoCompleteTemporaryOptionPresenter,\n multiAutoCompletePresenter: IMultiAutoCompletePresenter\n ) {\n this.temporaryOptionPresenter = temporaryOptionPresenter;\n this.multiAutoCompletePresenter = multiAutoCompletePresenter;\n makeAutoObservable(this);\n }\n\n init(params: MultiAutoCompletePresenterParams) {\n this.multiAutoCompletePresenter.init(params);\n this.temporaryOptionPresenter.init();\n }\n\n get vm() {\n return {\n ...this.multiAutoCompletePresenter.vm,\n temporaryOptionVm: this.temporaryOptionPresenter.vm\n };\n }\n\n setListOpenState = (open: boolean) => {\n this.multiAutoCompletePresenter.setListOpenState(open);\n };\n\n public searchOption = (value: string) => {\n this.multiAutoCompletePresenter.searchOption(value);\n this.temporaryOptionPresenter.setOption(value);\n };\n\n public setSelectedOption = (value: string) => {\n this.multiAutoCompletePresenter.setSelectedOption(value);\n };\n\n public removeSelectedOption = (value: string) => {\n this.multiAutoCompletePresenter.removeSelectedOption(value);\n this.temporaryOptionPresenter.resetOption();\n };\n\n public resetSelectedOptions = () => {\n this.multiAutoCompletePresenter.resetSelectedOptions();\n this.temporaryOptionPresenter.resetOption();\n };\n\n public createOption = (value: string) => {\n this.multiAutoCompletePresenter.createOption(value);\n this.multiAutoCompletePresenter.searchOption(\"\");\n this.multiAutoCompletePresenter.setSelectedOption(value);\n this.temporaryOptionPresenter.resetOption();\n };\n}\n\nexport { MultiAutoCompletePresenterWithFreeInput };\n"],"mappings":"AAAA,SAASA,kBAAkB,QAAQ,MAAM;AAOzC,MAAMC,uCAAuC,CAAwC;EAIjFC,WAAWA,CACPC,wBAAoE,EACpEC,0BAAuD,EACzD;IACE,IAAI,CAACD,wBAAwB,GAAGA,wBAAwB;IACxD,IAAI,CAACC,0BAA0B,GAAGA,0BAA0B;IAC5DJ,kBAAkB,CAAC,IAAI,CAAC;EAC5B;EAEAK,IAAIA,CAACC,MAAwC,EAAE;IAC3C,IAAI,CAACF,0BAA0B,CAACC,IAAI,CAACC,MAAM,CAAC;IAC5C,IAAI,CAACH,wBAAwB,CAACE,IAAI,CAAC,CAAC;EACxC;EAEA,IAAIE,EAAEA,CAAA,EAAG;IACL,OAAO;MACH,GAAG,IAAI,CAACH,0BAA0B,CAACG,EAAE;MACrCC,iBAAiB,EAAE,IAAI,CAACL,wBAAwB,CAACI;IACrD,CAAC;EACL;EAEAE,gBAAgB,GAAIC,IAAa,IAAK;IAClC,IAAI,CAACN,0BAA0B,CAACK,gBAAgB,CAACC,IAAI,CAAC;EAC1D,CAAC;EAEMC,YAAY,GAAIC,KAAa,IAAK;IACrC,IAAI,CAACR,0BAA0B,CAACO,YAAY,CAACC,KAAK,CAAC;IACnD,IAAI,CAACT,wBAAwB,CAACU,SAAS,CAACD,KAAK,CAAC;EAClD,CAAC;EAEME,iBAAiB,GAAIF,KAAa,IAAK;IAC1C,IAAI,CAACR,0BAA0B,CAACU,iBAAiB,CAACF,KAAK,CAAC;EAC5D,CAAC;EAEMG,oBAAoB,GAAIH,KAAa,IAAK;IAC7C,IAAI,CAACR,0BAA0B,CAACW,oBAAoB,CAACH,KAAK,CAAC;IAC3D,IAAI,CAACT,wBAAwB,CAACa,WAAW,CAAC,CAAC;EAC/C,CAAC;EAEMC,oBAAoB,GAAGA,CAAA,KAAM;IAChC,IAAI,CAACb,0BAA0B,CAACa,oBAAoB,CAAC,CAAC;IACtD,IAAI,CAACd,wBAAwB,CAACa,WAAW,CAAC,CAAC;EAC/C,CAAC;EAEME,YAAY,GAAIN,KAAa,IAAK;IACrC,IAAI,CAACR,0BAA0B,CAACc,YAAY,CAACN,KAAK,CAAC;IACnD,IAAI,CAACR,0BAA0B,CAACO,YAAY,CAAC,EAAE,CAAC;IAChD,IAAI,CAACP,0BAA0B,CAACU,iBAAiB,CAACF,KAAK,CAAC;IACxD,IAAI,CAACT,wBAAwB,CAACa,WAAW,CAAC,CAAC;EAC/C,CAAC;AACL;AAEA,SAASf,uCAAuC","ignoreList":[]}
1
+ {"version":3,"names":["makeAutoObservable","MultiAutoCompletePresenterWithFreeInput","constructor","temporaryOptionPresenter","multiAutoCompletePresenter","init","params","vm","temporaryOptionVm","setListOpenState","open","searchOption","value","setOption","setSelectedOption","removeSelectedOption","resetOption","resetSelectedOptions","createOption"],"sources":["MultiAutoCompletePresenterWithFreeInput.ts"],"sourcesContent":["import { makeAutoObservable } from \"mobx\";\nimport type { IMultiAutoCompleteTemporaryOptionPresenter } from \"./MultiAutoCompleteTemporaryOptionPresenter\";\nimport type {\n IMultiAutoCompletePresenter,\n MultiAutoCompletePresenterParams\n} from \"./MultiAutoCompletePresenter\";\n\nclass MultiAutoCompletePresenterWithFreeInput implements IMultiAutoCompletePresenter {\n private temporaryOptionPresenter: IMultiAutoCompleteTemporaryOptionPresenter;\n private multiAutoCompletePresenter: IMultiAutoCompletePresenter;\n\n constructor(\n temporaryOptionPresenter: IMultiAutoCompleteTemporaryOptionPresenter,\n multiAutoCompletePresenter: IMultiAutoCompletePresenter\n ) {\n this.temporaryOptionPresenter = temporaryOptionPresenter;\n this.multiAutoCompletePresenter = multiAutoCompletePresenter;\n makeAutoObservable(this);\n }\n\n init(params: MultiAutoCompletePresenterParams) {\n this.multiAutoCompletePresenter.init(params);\n this.temporaryOptionPresenter.init();\n }\n\n get vm() {\n return {\n ...this.multiAutoCompletePresenter.vm,\n temporaryOptionVm: this.temporaryOptionPresenter.vm\n };\n }\n\n setListOpenState = (open: boolean) => {\n this.multiAutoCompletePresenter.setListOpenState(open);\n };\n\n public searchOption = (value: string) => {\n this.multiAutoCompletePresenter.searchOption(value);\n this.temporaryOptionPresenter.setOption(value);\n };\n\n public setSelectedOption = (value: string) => {\n this.multiAutoCompletePresenter.setSelectedOption(value);\n };\n\n public removeSelectedOption = (value: string) => {\n this.multiAutoCompletePresenter.removeSelectedOption(value);\n this.temporaryOptionPresenter.resetOption();\n };\n\n public resetSelectedOptions = () => {\n this.multiAutoCompletePresenter.resetSelectedOptions();\n this.temporaryOptionPresenter.resetOption();\n };\n\n public createOption = (value: string) => {\n this.multiAutoCompletePresenter.createOption(value);\n this.multiAutoCompletePresenter.searchOption(\"\");\n this.multiAutoCompletePresenter.setSelectedOption(value);\n this.temporaryOptionPresenter.resetOption();\n };\n}\n\nexport { MultiAutoCompletePresenterWithFreeInput };\n"],"mappings":"AAAA,SAASA,kBAAkB,QAAQ,MAAM;AAOzC,MAAMC,uCAAuC,CAAwC;EAIjFC,WAAWA,CACPC,wBAAoE,EACpEC,0BAAuD,EACzD;IACE,IAAI,CAACD,wBAAwB,GAAGA,wBAAwB;IACxD,IAAI,CAACC,0BAA0B,GAAGA,0BAA0B;IAC5DJ,kBAAkB,CAAC,IAAI,CAAC;EAC5B;EAEAK,IAAIA,CAACC,MAAwC,EAAE;IAC3C,IAAI,CAACF,0BAA0B,CAACC,IAAI,CAACC,MAAM,CAAC;IAC5C,IAAI,CAACH,wBAAwB,CAACE,IAAI,CAAC,CAAC;EACxC;EAEA,IAAIE,EAAEA,CAAA,EAAG;IACL,OAAO;MACH,GAAG,IAAI,CAACH,0BAA0B,CAACG,EAAE;MACrCC,iBAAiB,EAAE,IAAI,CAACL,wBAAwB,CAACI;IACrD,CAAC;EACL;EAEAE,gBAAgB,GAAIC,IAAa,IAAK;IAClC,IAAI,CAACN,0BAA0B,CAACK,gBAAgB,CAACC,IAAI,CAAC;EAC1D,CAAC;EAEMC,YAAY,GAAIC,KAAa,IAAK;IACrC,IAAI,CAACR,0BAA0B,CAACO,YAAY,CAACC,KAAK,CAAC;IACnD,IAAI,CAACT,wBAAwB,CAACU,SAAS,CAACD,KAAK,CAAC;EAClD,CAAC;EAEME,iBAAiB,GAAIF,KAAa,IAAK;IAC1C,IAAI,CAACR,0BAA0B,CAACU,iBAAiB,CAACF,KAAK,CAAC;EAC5D,CAAC;EAEMG,oBAAoB,GAAIH,KAAa,IAAK;IAC7C,IAAI,CAACR,0BAA0B,CAACW,oBAAoB,CAACH,KAAK,CAAC;IAC3D,IAAI,CAACT,wBAAwB,CAACa,WAAW,CAAC,CAAC;EAC/C,CAAC;EAEMC,oBAAoB,GAAGA,CAAA,KAAM;IAChC,IAAI,CAACb,0BAA0B,CAACa,oBAAoB,CAAC,CAAC;IACtD,IAAI,CAACd,wBAAwB,CAACa,WAAW,CAAC,CAAC;EAC/C,CAAC;EAEME,YAAY,GAAIN,KAAa,IAAK;IACrC,IAAI,CAACR,0BAA0B,CAACc,YAAY,CAACN,KAAK,CAAC;IACnD,IAAI,CAACR,0BAA0B,CAACO,YAAY,CAAC,EAAE,CAAC;IAChD,IAAI,CAACP,0BAA0B,CAACU,iBAAiB,CAACF,KAAK,CAAC;IACxD,IAAI,CAACT,wBAAwB,CAACa,WAAW,CAAC,CAAC;EAC/C,CAAC;AACL;AAEA,SAASf,uCAAuC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["MultiAutoCompletePresenter","MultiAutoCompleteInputPresenter","MultiAutoCompleteSelectedOptionPresenter","MultiAutoCompleteListOptionsPresenter","MultiAutoCompleteTemporaryOptionPresenter","MultiAutoCompletePresenterWithFreeInput","describe","presenter","onValuesChange","jest","fn","beforeEach","inputPresenter","selectedOptionsPresenter","optionsListPresenter","temporaryOptionPresenter","decoretee","it","init","expect","vm","temporaryOptionVm","option","toEqual","undefined","searchOption","createOption","selectedOptionsVm","empty","options","label","value","disabled","selected","separator","item","toHaveBeenCalledWith","inputVm"],"sources":["MultiAutoCompletePresenterWithFreeInput.test.ts"],"sourcesContent":["import {\n IMultiAutoCompletePresenter,\n MultiAutoCompletePresenter\n} from \"./MultiAutoCompletePresenter\";\nimport { MultiAutoCompleteInputPresenter } from \"./MultiAutoCompleteInputPresenter\";\nimport { MultiAutoCompleteSelectedOptionPresenter } from \"./MultiAutoCompleteSelectedOptionsPresenter\";\nimport { MultiAutoCompleteListOptionsPresenter } from \"./MultiAutoCompleteListOptionsPresenter\";\nimport { MultiAutoCompleteTemporaryOptionPresenter } from \"~/MultiAutoComplete/primitives/presenters/MultiAutoCompleteTemporaryOptionPresenter\";\nimport { MultiAutoCompletePresenterWithFreeInput } from \"~/MultiAutoComplete/primitives/presenters/MultiAutoCompletePresenterWithFreeInput\";\n\ndescribe(\"MultiAutoCompletePresenterWithFreeInput\", () => {\n let presenter: IMultiAutoCompletePresenter;\n const onValuesChange = jest.fn();\n\n beforeEach(() => {\n const inputPresenter = new MultiAutoCompleteInputPresenter();\n const selectedOptionsPresenter = new MultiAutoCompleteSelectedOptionPresenter();\n const optionsListPresenter = new MultiAutoCompleteListOptionsPresenter();\n const temporaryOptionPresenter = new MultiAutoCompleteTemporaryOptionPresenter();\n\n const decoretee = new MultiAutoCompletePresenter(\n inputPresenter,\n selectedOptionsPresenter,\n optionsListPresenter\n );\n presenter = new MultiAutoCompletePresenterWithFreeInput(\n temporaryOptionPresenter,\n decoretee\n );\n });\n\n it(\"should return the compatible `vm.temporaryOptionVm` based on params\", () => {\n // default: no params\n presenter.init({ onValuesChange });\n expect(presenter.vm.temporaryOptionVm.option).toEqual(undefined);\n });\n\n it(\"should be able to create new options\", () => {\n presenter.init({ onValuesChange });\n\n // Let's create the first option\n presenter.searchOption(\"New Option 1\");\n presenter.createOption(\"New Option 1\");\n expect(presenter.vm.selectedOptionsVm.empty).toEqual(false);\n expect(presenter.vm.selectedOptionsVm.options).toEqual([\n {\n label: \"New Option 1\",\n value: \"New Option 1\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n }\n ]);\n expect(onValuesChange).toHaveBeenCalledWith([\"New Option 1\"]);\n expect(presenter.vm.inputVm.value).toEqual(\"\");\n\n // Let's create the second option\n presenter.searchOption(\"New Option 2\");\n presenter.createOption(\"New Option 2\");\n expect(presenter.vm.selectedOptionsVm.empty).toEqual(false);\n expect(presenter.vm.selectedOptionsVm.options).toEqual([\n {\n label: \"New Option 1\",\n value: \"New Option 1\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n },\n {\n label: \"New Option 2\",\n value: \"New Option 2\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n }\n ]);\n expect(onValuesChange).toHaveBeenCalledWith([\"New Option 1\", \"New Option 2\"]);\n expect(presenter.vm.inputVm.value).toEqual(\"\");\n });\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["MultiAutoCompletePresenter","MultiAutoCompleteInputPresenter","MultiAutoCompleteSelectedOptionPresenter","MultiAutoCompleteListOptionsPresenter","MultiAutoCompleteTemporaryOptionPresenter","MultiAutoCompletePresenterWithFreeInput","describe","presenter","onValuesChange","jest","fn","beforeEach","inputPresenter","selectedOptionsPresenter","optionsListPresenter","temporaryOptionPresenter","decoretee","it","init","expect","vm","temporaryOptionVm","option","toEqual","undefined","searchOption","createOption","selectedOptionsVm","empty","options","label","value","disabled","selected","separator","item","toHaveBeenCalledWith","inputVm"],"sources":["MultiAutoCompletePresenterWithFreeInput.test.ts"],"sourcesContent":["import type { IMultiAutoCompletePresenter } from \"./MultiAutoCompletePresenter\";\nimport { MultiAutoCompletePresenter } from \"./MultiAutoCompletePresenter\";\nimport { MultiAutoCompleteInputPresenter } from \"./MultiAutoCompleteInputPresenter\";\nimport { MultiAutoCompleteSelectedOptionPresenter } from \"./MultiAutoCompleteSelectedOptionsPresenter\";\nimport { MultiAutoCompleteListOptionsPresenter } from \"./MultiAutoCompleteListOptionsPresenter\";\nimport { MultiAutoCompleteTemporaryOptionPresenter } from \"~/MultiAutoComplete/primitives/presenters/MultiAutoCompleteTemporaryOptionPresenter\";\nimport { MultiAutoCompletePresenterWithFreeInput } from \"~/MultiAutoComplete/primitives/presenters/MultiAutoCompletePresenterWithFreeInput\";\n\ndescribe(\"MultiAutoCompletePresenterWithFreeInput\", () => {\n let presenter: IMultiAutoCompletePresenter;\n const onValuesChange = jest.fn();\n\n beforeEach(() => {\n const inputPresenter = new MultiAutoCompleteInputPresenter();\n const selectedOptionsPresenter = new MultiAutoCompleteSelectedOptionPresenter();\n const optionsListPresenter = new MultiAutoCompleteListOptionsPresenter();\n const temporaryOptionPresenter = new MultiAutoCompleteTemporaryOptionPresenter();\n\n const decoretee = new MultiAutoCompletePresenter(\n inputPresenter,\n selectedOptionsPresenter,\n optionsListPresenter\n );\n presenter = new MultiAutoCompletePresenterWithFreeInput(\n temporaryOptionPresenter,\n decoretee\n );\n });\n\n it(\"should return the compatible `vm.temporaryOptionVm` based on params\", () => {\n // default: no params\n presenter.init({ onValuesChange });\n expect(presenter.vm.temporaryOptionVm.option).toEqual(undefined);\n });\n\n it(\"should be able to create new options\", () => {\n presenter.init({ onValuesChange });\n\n // Let's create the first option\n presenter.searchOption(\"New Option 1\");\n presenter.createOption(\"New Option 1\");\n expect(presenter.vm.selectedOptionsVm.empty).toEqual(false);\n expect(presenter.vm.selectedOptionsVm.options).toEqual([\n {\n label: \"New Option 1\",\n value: \"New Option 1\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n }\n ]);\n expect(onValuesChange).toHaveBeenCalledWith([\"New Option 1\"]);\n expect(presenter.vm.inputVm.value).toEqual(\"\");\n\n // Let's create the second option\n presenter.searchOption(\"New Option 2\");\n presenter.createOption(\"New Option 2\");\n expect(presenter.vm.selectedOptionsVm.empty).toEqual(false);\n expect(presenter.vm.selectedOptionsVm.options).toEqual([\n {\n label: \"New Option 1\",\n value: \"New Option 1\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n },\n {\n label: \"New Option 2\",\n value: \"New Option 2\",\n disabled: false,\n selected: true,\n separator: false,\n item: null\n }\n ]);\n expect(onValuesChange).toHaveBeenCalledWith([\"New Option 1\", \"New Option 2\"]);\n expect(presenter.vm.inputVm.value).toEqual(\"\");\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import { CommandOptionFormatted } from "../../../Command/domain/CommandOptionFormatted";
2
- import { CommandOption } from "../../../Command/domain/CommandOption";
1
+ import type { CommandOptionFormatted } from "../../../Command/domain/CommandOptionFormatted";
2
+ import type { CommandOption } from "../../../Command/domain/CommandOption";
3
3
  interface MultiAutoCompleteSelectedOptionsParams {
4
4
  options?: CommandOption[];
5
5
  }
@@ -7,12 +7,15 @@ class MultiAutoCompleteSelectedOptionPresenter {
7
7
  makeAutoObservable(this);
8
8
  }
9
9
  init(params) {
10
- if (params.options) {
10
+ if (params.options?.length) {
11
11
  for (const option of params.options) {
12
12
  if (!this.options.getItem(o => o.value === option.value)) {
13
13
  this.options.addItems([option]);
14
14
  }
15
15
  }
16
+ } else {
17
+ // If no options are provided, clear the existing options
18
+ this.options.clear();
16
19
  }
17
20
  }
18
21
  get vm() {