@infineon/infineon-design-system-stencil 30.9.2--canary.1669.a6556475a763cdebf0a29aa12ca37f78801b6799.1 → 30.9.2--canary.1640.73e4e19bf6e56fa149c04b7bbaec71574880c28a.0

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 (280) hide show
  1. package/dist/cjs/ifx-accordion_2.cjs.entry.js +7 -7
  2. package/dist/cjs/ifx-accordion_2.cjs.entry.js.map +1 -1
  3. package/dist/cjs/ifx-breadcrumb-item-label.cjs.entry.js +2 -2
  4. package/dist/cjs/ifx-breadcrumb-item-label.cjs.entry.js.map +1 -1
  5. package/dist/cjs/ifx-breadcrumb.cjs.entry.js +3 -3
  6. package/dist/cjs/ifx-breadcrumb.cjs.entry.js.map +1 -1
  7. package/dist/cjs/ifx-chip_3.cjs.entry.js +19 -21
  8. package/dist/cjs/ifx-chip_3.cjs.entry.js.map +1 -1
  9. package/dist/cjs/ifx-modal.cjs.entry.js +8 -8
  10. package/dist/cjs/ifx-modal.cjs.entry.js.map +1 -1
  11. package/dist/cjs/ifx-multiselect_2.cjs.entry.js +5 -5
  12. package/dist/cjs/ifx-multiselect_2.cjs.entry.js.map +1 -1
  13. package/dist/cjs/ifx-search-bar.cjs.entry.js +5 -5
  14. package/dist/cjs/ifx-search-bar.cjs.entry.js.map +1 -1
  15. package/dist/cjs/ifx-sidebar-item.cjs.entry.js +9 -10
  16. package/dist/cjs/ifx-sidebar-item.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ifx-table.cjs.entry.js +22 -20
  18. package/dist/cjs/ifx-table.cjs.entry.js.map +1 -1
  19. package/dist/cjs/ifx-tabs.cjs.entry.js +6 -6
  20. package/dist/cjs/ifx-tabs.cjs.entry.js.map +1 -1
  21. package/dist/cjs/infineon-design-system-stencil.cjs.js +1 -1
  22. package/dist/cjs/loader.cjs.js +1 -1
  23. package/dist/collection/components/accordion/accordion.js +2 -2
  24. package/dist/collection/components/accordion/accordion.js.map +1 -1
  25. package/dist/collection/components/accordion/accordion.stories.js +81 -7
  26. package/dist/collection/components/accordion/accordion.stories.js.map +1 -1
  27. package/dist/collection/components/accordion/accordionItem.js +10 -10
  28. package/dist/collection/components/accordion/accordionItem.js.map +1 -1
  29. package/dist/collection/components/alert/alert.stories.js +45 -12
  30. package/dist/collection/components/alert/alert.stories.js.map +1 -1
  31. package/dist/collection/components/badge/badge.stories.js +28 -7
  32. package/dist/collection/components/badge/badge.stories.js.map +1 -1
  33. package/dist/collection/components/breadcrumb/breadcrumb-item-label.js +4 -4
  34. package/dist/collection/components/breadcrumb/breadcrumb-item-label.js.map +1 -1
  35. package/dist/collection/components/breadcrumb/breadcrumb.js +3 -3
  36. package/dist/collection/components/breadcrumb/breadcrumb.js.map +1 -1
  37. package/dist/collection/components/breadcrumb/breadcrumb.stories.js +87 -13
  38. package/dist/collection/components/breadcrumb/breadcrumb.stories.js.map +1 -1
  39. package/dist/collection/components/button/button.stories.js +101 -9
  40. package/dist/collection/components/button/button.stories.js.map +1 -1
  41. package/dist/collection/components/card/card.stories.js +84 -3
  42. package/dist/collection/components/card/card.stories.js.map +1 -1
  43. package/dist/collection/components/checkbox/checkbox.stories.js +72 -14
  44. package/dist/collection/components/checkbox/checkbox.stories.js.map +1 -1
  45. package/dist/collection/components/chip/chip-item/chip-item.js +4 -4
  46. package/dist/collection/components/chip/chip-item/chip-item.js.map +1 -1
  47. package/dist/collection/components/chip/chip.js +15 -15
  48. package/dist/collection/components/chip/chip.js.map +1 -1
  49. package/dist/collection/components/chip/chip.stories.js +18 -26
  50. package/dist/collection/components/chip/chip.stories.js.map +1 -1
  51. package/dist/collection/components/chip/interfaces.js.map +1 -1
  52. package/dist/collection/components/content-switcher/content-switcher.stories.js +65 -3
  53. package/dist/collection/components/content-switcher/content-switcher.stories.js.map +1 -1
  54. package/dist/collection/components/date-picker/date-picker.stories.js +95 -7
  55. package/dist/collection/components/date-picker/date-picker.stories.js.map +1 -1
  56. package/dist/collection/components/dropdown/dropdown.stories.js +222 -64
  57. package/dist/collection/components/dropdown/dropdown.stories.js.map +1 -1
  58. package/dist/collection/components/footer/footer.stories.js +7 -1
  59. package/dist/collection/components/footer/footer.stories.js.map +1 -1
  60. package/dist/collection/components/icon/infineonIconStencil.stories.js +7 -2
  61. package/dist/collection/components/icon/infineonIconStencil.stories.js.map +1 -1
  62. package/dist/collection/components/icon-button/icon-button.stories.js +61 -5
  63. package/dist/collection/components/icon-button/icon-button.stories.js.map +1 -1
  64. package/dist/collection/components/link/link.stories.js +53 -4
  65. package/dist/collection/components/link/link.stories.js.map +1 -1
  66. package/dist/collection/components/modal/modal.js +10 -10
  67. package/dist/collection/components/modal/modal.js.map +1 -1
  68. package/dist/collection/components/modal/modal.stories.js +96 -19
  69. package/dist/collection/components/modal/modal.stories.js.map +1 -1
  70. package/dist/collection/components/navigation/navbar/navbar.stories.js +176 -12
  71. package/dist/collection/components/navigation/navbar/navbar.stories.js.map +1 -1
  72. package/dist/collection/components/navigation/sidebar/sidebar-item.js +11 -32
  73. package/dist/collection/components/navigation/sidebar/sidebar-item.js.map +1 -1
  74. package/dist/collection/components/navigation/sidebar/sidebar.stories.js +183 -19
  75. package/dist/collection/components/navigation/sidebar/sidebar.stories.js.map +1 -1
  76. package/dist/collection/components/notification/notification.stories.js +55 -8
  77. package/dist/collection/components/notification/notification.stories.js.map +1 -1
  78. package/dist/collection/components/number-indicator/number-indicator.stories.js +19 -0
  79. package/dist/collection/components/number-indicator/number-indicator.stories.js.map +1 -1
  80. package/dist/collection/components/pagination/pagination.js +1 -31
  81. package/dist/collection/components/pagination/pagination.js.map +1 -1
  82. package/dist/collection/components/pagination/pagination.stories.js +19 -14
  83. package/dist/collection/components/pagination/pagination.stories.js.map +1 -1
  84. package/dist/collection/components/progress-bar/progress-bar.stories.js +31 -8
  85. package/dist/collection/components/progress-bar/progress-bar.stories.js.map +1 -1
  86. package/dist/collection/components/radio-button/radio-button.stories.js +66 -13
  87. package/dist/collection/components/radio-button/radio-button.stories.js.map +1 -1
  88. package/dist/collection/components/search-bar/search-bar.js +6 -6
  89. package/dist/collection/components/search-bar/search-bar.js.map +1 -1
  90. package/dist/collection/components/search-bar/search-bar.stories.js +58 -9
  91. package/dist/collection/components/search-bar/search-bar.stories.js.map +1 -1
  92. package/dist/collection/components/search-field/search-field.stories.js +54 -8
  93. package/dist/collection/components/search-field/search-field.stories.js.map +1 -1
  94. package/dist/collection/components/segmented-control/segmented-control.stories.js +1 -10
  95. package/dist/collection/components/segmented-control/segmented-control.stories.js.map +1 -1
  96. package/dist/collection/components/select/multi-select/multiselect.js +6 -6
  97. package/dist/collection/components/select/multi-select/multiselect.js.map +1 -1
  98. package/dist/collection/components/select/multi-select/multiselect.stories.js +131 -5
  99. package/dist/collection/components/select/multi-select/multiselect.stories.js.map +1 -1
  100. package/dist/collection/components/select/single-select/select.stories.js +83 -26
  101. package/dist/collection/components/select/single-select/select.stories.js.map +1 -1
  102. package/dist/collection/components/slider/slider.stories.js +97 -13
  103. package/dist/collection/components/slider/slider.stories.js.map +1 -1
  104. package/dist/collection/components/spinner/spinner.stories.js +34 -2
  105. package/dist/collection/components/spinner/spinner.stories.js.map +1 -1
  106. package/dist/collection/components/status/status.stories.js +25 -1
  107. package/dist/collection/components/status/status.stories.js.map +1 -1
  108. package/dist/collection/components/stepper/stepper.stories.js +54 -25
  109. package/dist/collection/components/stepper/stepper.stories.js.map +1 -1
  110. package/dist/collection/components/switch/switch.stories.js +51 -4
  111. package/dist/collection/components/switch/switch.stories.js.map +1 -1
  112. package/dist/collection/components/table-advanced-version/table.js +23 -21
  113. package/dist/collection/components/table-advanced-version/table.js.map +1 -1
  114. package/dist/collection/components/table-advanced-version/table.stories.js +124 -39
  115. package/dist/collection/components/table-advanced-version/table.stories.js.map +1 -1
  116. package/dist/collection/components/table-basic-version/table.stories.js +30 -3
  117. package/dist/collection/components/table-basic-version/table.stories.js.map +1 -1
  118. package/dist/collection/components/tabs/tabs.js +7 -7
  119. package/dist/collection/components/tabs/tabs.js.map +1 -1
  120. package/dist/collection/components/tabs/tabs.stories.js +104 -29
  121. package/dist/collection/components/tabs/tabs.stories.js.map +1 -1
  122. package/dist/collection/components/tag/tag.stories.js +18 -0
  123. package/dist/collection/components/tag/tag.stories.js.map +1 -1
  124. package/dist/collection/components/text-field/text-field.stories.js +116 -13
  125. package/dist/collection/components/text-field/text-field.stories.js.map +1 -1
  126. package/dist/collection/components/textarea/textarea.stories.js +1 -3
  127. package/dist/collection/components/textarea/textarea.stories.js.map +1 -1
  128. package/dist/collection/components/tooltip/tooltip.stories.js +48 -4
  129. package/dist/collection/components/tooltip/tooltip.stories.js.map +1 -1
  130. package/dist/components/ifx-accordion-item.js +1 -1
  131. package/dist/components/ifx-accordion.js +1 -1
  132. package/dist/components/ifx-breadcrumb-item-label.js +3 -3
  133. package/dist/components/ifx-breadcrumb-item-label.js.map +1 -1
  134. package/dist/components/ifx-breadcrumb.js +3 -3
  135. package/dist/components/ifx-breadcrumb.js.map +1 -1
  136. package/dist/components/ifx-chip-item.js +1 -1
  137. package/dist/components/ifx-chip.js +1 -1
  138. package/dist/components/ifx-faq.js +2 -2
  139. package/dist/components/ifx-modal.js +8 -8
  140. package/dist/components/ifx-modal.js.map +1 -1
  141. package/dist/components/ifx-multiselect.js +1 -1
  142. package/dist/components/ifx-pagination.js +1 -1
  143. package/dist/components/ifx-search-bar.js +5 -5
  144. package/dist/components/ifx-search-bar.js.map +1 -1
  145. package/dist/components/ifx-set-filter.js +1 -1
  146. package/dist/components/ifx-sidebar-item.js +11 -13
  147. package/dist/components/ifx-sidebar-item.js.map +1 -1
  148. package/dist/components/ifx-table.js +26 -24
  149. package/dist/components/ifx-table.js.map +1 -1
  150. package/dist/components/ifx-tabs.js +6 -6
  151. package/dist/components/ifx-tabs.js.map +1 -1
  152. package/dist/components/{p-b2439194.js → p-053d42ef.js} +8 -8
  153. package/dist/components/{p-b2439194.js.map → p-053d42ef.js.map} +1 -1
  154. package/dist/components/{p-094bb435.js → p-3baaa460.js} +3 -3
  155. package/dist/components/{p-094bb435.js.map → p-3baaa460.js.map} +1 -1
  156. package/dist/components/{p-184f1004.js → p-793d89e7.js} +15 -15
  157. package/dist/components/p-793d89e7.js.map +1 -0
  158. package/dist/components/{p-23cdd5a7.js → p-7b5e297f.js} +5 -5
  159. package/dist/components/p-7b5e297f.js.map +1 -0
  160. package/dist/components/{p-2f1e7628.js → p-b85fba0e.js} +2 -4
  161. package/dist/components/p-b85fba0e.js.map +1 -0
  162. package/dist/components/{p-04b73e62.js → p-cf8fd0f4.js} +6 -6
  163. package/dist/components/p-cf8fd0f4.js.map +1 -0
  164. package/dist/esm/ifx-accordion_2.entry.js +7 -7
  165. package/dist/esm/ifx-accordion_2.entry.js.map +1 -1
  166. package/dist/esm/ifx-breadcrumb-item-label.entry.js +2 -2
  167. package/dist/esm/ifx-breadcrumb-item-label.entry.js.map +1 -1
  168. package/dist/esm/ifx-breadcrumb.entry.js +3 -3
  169. package/dist/esm/ifx-breadcrumb.entry.js.map +1 -1
  170. package/dist/esm/ifx-chip_3.entry.js +19 -21
  171. package/dist/esm/ifx-chip_3.entry.js.map +1 -1
  172. package/dist/esm/ifx-modal.entry.js +8 -8
  173. package/dist/esm/ifx-modal.entry.js.map +1 -1
  174. package/dist/esm/ifx-multiselect_2.entry.js +5 -5
  175. package/dist/esm/ifx-multiselect_2.entry.js.map +1 -1
  176. package/dist/esm/ifx-search-bar.entry.js +5 -5
  177. package/dist/esm/ifx-search-bar.entry.js.map +1 -1
  178. package/dist/esm/ifx-sidebar-item.entry.js +9 -10
  179. package/dist/esm/ifx-sidebar-item.entry.js.map +1 -1
  180. package/dist/esm/ifx-table.entry.js +22 -20
  181. package/dist/esm/ifx-table.entry.js.map +1 -1
  182. package/dist/esm/ifx-tabs.entry.js +6 -6
  183. package/dist/esm/ifx-tabs.entry.js.map +1 -1
  184. package/dist/esm/infineon-design-system-stencil.js +1 -1
  185. package/dist/esm/loader.js +1 -1
  186. package/dist/infineon-design-system-stencil/infineon-design-system-stencil.esm.js +1 -1
  187. package/dist/infineon-design-system-stencil/infineon-design-system-stencil.esm.js.map +1 -1
  188. package/dist/infineon-design-system-stencil/p-26df4dfe.entry.js +2 -0
  189. package/dist/infineon-design-system-stencil/{p-28fb795b.entry.js.map → p-26df4dfe.entry.js.map} +1 -1
  190. package/dist/infineon-design-system-stencil/p-355cea09.entry.js +2 -0
  191. package/dist/infineon-design-system-stencil/p-355cea09.entry.js.map +1 -0
  192. package/dist/infineon-design-system-stencil/{p-00d6e46e.entry.js → p-602edb1f.entry.js} +2 -2
  193. package/dist/infineon-design-system-stencil/p-602edb1f.entry.js.map +1 -0
  194. package/dist/infineon-design-system-stencil/p-60dcd508.entry.js +2 -0
  195. package/dist/infineon-design-system-stencil/p-60dcd508.entry.js.map +1 -0
  196. package/dist/infineon-design-system-stencil/p-68752789.entry.js +2 -0
  197. package/dist/infineon-design-system-stencil/p-68752789.entry.js.map +1 -0
  198. package/dist/infineon-design-system-stencil/p-6a274db4.entry.js +2 -0
  199. package/dist/infineon-design-system-stencil/p-6a274db4.entry.js.map +1 -0
  200. package/dist/infineon-design-system-stencil/p-71fda335.entry.js +2 -0
  201. package/dist/infineon-design-system-stencil/p-71fda335.entry.js.map +1 -0
  202. package/dist/infineon-design-system-stencil/p-7741e81d.entry.js +2 -0
  203. package/dist/infineon-design-system-stencil/p-7741e81d.entry.js.map +1 -0
  204. package/dist/infineon-design-system-stencil/{p-bc8a4226.entry.js → p-d93eb561.entry.js} +2 -2
  205. package/dist/infineon-design-system-stencil/p-d93eb561.entry.js.map +1 -0
  206. package/dist/infineon-design-system-stencil/p-df6cadc1.entry.js +2 -0
  207. package/dist/infineon-design-system-stencil/p-df6cadc1.entry.js.map +1 -0
  208. package/dist/types/components/accordion/accordion.stories.d.ts +67 -1
  209. package/dist/types/components/accordion/accordionItem.d.ts +3 -3
  210. package/dist/types/components/alert/alert.stories.d.ts +38 -11
  211. package/dist/types/components/badge/badge.stories.d.ts +23 -3
  212. package/dist/types/components/breadcrumb/breadcrumb-item-label.d.ts +1 -1
  213. package/dist/types/components/breadcrumb/breadcrumb.stories.d.ts +83 -1
  214. package/dist/types/components/button/button.stories.d.ts +92 -16
  215. package/dist/types/components/card/card.stories.d.ts +95 -1
  216. package/dist/types/components/checkbox/checkbox.stories.d.ts +65 -10
  217. package/dist/types/components/chip/chip-item/chip-item.d.ts +1 -1
  218. package/dist/types/components/chip/chip.d.ts +1 -1
  219. package/dist/types/components/chip/chip.stories.d.ts +11 -4
  220. package/dist/types/components/chip/interfaces.d.ts +1 -1
  221. package/dist/types/components/content-switcher/content-switcher.stories.d.ts +66 -0
  222. package/dist/types/components/date-picker/date-picker.stories.d.ts +88 -2
  223. package/dist/types/components/dropdown/dropdown.stories.d.ts +90 -33
  224. package/dist/types/components/footer/footer.stories.d.ts +4 -0
  225. package/dist/types/components/icon/infineonIconStencil.stories.d.ts +5 -0
  226. package/dist/types/components/icon-button/icon-button.stories.d.ts +56 -8
  227. package/dist/types/components/link/link.stories.d.ts +49 -6
  228. package/dist/types/components/modal/modal.d.ts +2 -2
  229. package/dist/types/components/modal/modal.stories.d.ts +77 -3
  230. package/dist/types/components/navigation/navbar/navbar.stories.d.ts +222 -6
  231. package/dist/types/components/navigation/sidebar/sidebar-item.d.ts +2 -3
  232. package/dist/types/components/navigation/sidebar/sidebar.stories.d.ts +158 -7
  233. package/dist/types/components/notification/notification.stories.d.ts +46 -2
  234. package/dist/types/components/number-indicator/number-indicator.stories.d.ts +19 -0
  235. package/dist/types/components/pagination/pagination.d.ts +0 -2
  236. package/dist/types/components/pagination/pagination.stories.d.ts +12 -7
  237. package/dist/types/components/progress-bar/progress-bar.stories.d.ts +25 -4
  238. package/dist/types/components/radio-button/radio-button.stories.d.ts +59 -8
  239. package/dist/types/components/search-bar/search-bar.d.ts +1 -1
  240. package/dist/types/components/search-bar/search-bar.stories.d.ts +60 -3
  241. package/dist/types/components/search-field/search-field.stories.d.ts +45 -6
  242. package/dist/types/components/segmented-control/segmented-control.stories.d.ts +0 -3
  243. package/dist/types/components/select/multi-select/multiselect.d.ts +1 -1
  244. package/dist/types/components/select/multi-select/multiselect.stories.d.ts +125 -0
  245. package/dist/types/components/select/single-select/select.stories.d.ts +67 -24
  246. package/dist/types/components/slider/slider.stories.d.ts +110 -0
  247. package/dist/types/components/spinner/spinner.stories.d.ts +32 -0
  248. package/dist/types/components/status/status.stories.d.ts +24 -2
  249. package/dist/types/components/stepper/stepper.stories.d.ts +30 -6
  250. package/dist/types/components/switch/switch.stories.d.ts +47 -1
  251. package/dist/types/components/table-advanced-version/table.stories.d.ts +50 -11
  252. package/dist/types/components/table-basic-version/table.stories.d.ts +21 -1
  253. package/dist/types/components/tabs/tabs.d.ts +1 -1
  254. package/dist/types/components/tabs/tabs.stories.d.ts +88 -9
  255. package/dist/types/components/tag/tag.stories.d.ts +20 -0
  256. package/dist/types/components/text-field/text-field.stories.d.ts +106 -10
  257. package/dist/types/components/tooltip/tooltip.stories.d.ts +41 -6
  258. package/dist/types/components.d.ts +20 -26
  259. package/package.json +1 -1
  260. package/dist/components/p-04b73e62.js.map +0 -1
  261. package/dist/components/p-184f1004.js.map +0 -1
  262. package/dist/components/p-23cdd5a7.js.map +0 -1
  263. package/dist/components/p-2f1e7628.js.map +0 -1
  264. package/dist/infineon-design-system-stencil/p-00d6e46e.entry.js.map +0 -1
  265. package/dist/infineon-design-system-stencil/p-222c1af9.entry.js +0 -2
  266. package/dist/infineon-design-system-stencil/p-222c1af9.entry.js.map +0 -1
  267. package/dist/infineon-design-system-stencil/p-28fb795b.entry.js +0 -2
  268. package/dist/infineon-design-system-stencil/p-436babb8.entry.js +0 -2
  269. package/dist/infineon-design-system-stencil/p-436babb8.entry.js.map +0 -1
  270. package/dist/infineon-design-system-stencil/p-72d804fb.entry.js +0 -2
  271. package/dist/infineon-design-system-stencil/p-72d804fb.entry.js.map +0 -1
  272. package/dist/infineon-design-system-stencil/p-7bef9272.entry.js +0 -2
  273. package/dist/infineon-design-system-stencil/p-7bef9272.entry.js.map +0 -1
  274. package/dist/infineon-design-system-stencil/p-89c7209f.entry.js +0 -2
  275. package/dist/infineon-design-system-stencil/p-89c7209f.entry.js.map +0 -1
  276. package/dist/infineon-design-system-stencil/p-9481adc8.entry.js +0 -2
  277. package/dist/infineon-design-system-stencil/p-9481adc8.entry.js.map +0 -1
  278. package/dist/infineon-design-system-stencil/p-bc8a4226.entry.js.map +0 -1
  279. package/dist/infineon-design-system-stencil/p-dc7deb14.entry.js +0 -2
  280. package/dist/infineon-design-system-stencil/p-dc7deb14.entry.js.map +0 -1
@@ -53,7 +53,9 @@ export default {
53
53
  title: 'Components/Select/Multi Select',
54
54
  // tags: ['autodocs'],
55
55
  args: {
56
+ name: 'multiselect',
56
57
  size: 'm',
58
+ disabled: false,
57
59
  batchSize: 10,
58
60
  maxItemCount: 10,
59
61
  showSearch: true,
@@ -65,6 +67,7 @@ export default {
65
67
  },
66
68
  argTypes: {
67
69
  size: {
70
+ description: 'Size of the input field.',
68
71
  options: {
69
72
  'small (36px)': 's',
70
73
  'medium (40px)': 'm',
@@ -72,59 +75,181 @@ export default {
72
75
  control: {
73
76
  type: 'radio',
74
77
  },
78
+ table: {
79
+ category: 'ifx-multiselect props',
80
+ defaultValue: {
81
+ summary: 'medium (40px)',
82
+ },
83
+ type: {
84
+ summary: '36px | 40px',
85
+ },
86
+ },
87
+ },
88
+ disabled: {
89
+ description: 'Disable the input field.',
90
+ options: [true, false],
91
+ control: { type: 'boolean' },
92
+ table: {
93
+ category: 'ifx-multiselect props',
94
+ defaultValue: {
95
+ summary: 'false',
96
+ },
97
+ type: {
98
+ summary: 'boolean',
99
+ },
100
+ },
101
+ },
102
+ name: {
103
+ description: `For a <*form*> element, the name attribute is used as a reference when the data is submitted.`,
104
+ control: 'text',
105
+ table: {
106
+ category: 'ifx-multiselect props',
107
+ type: {
108
+ summary: 'string',
109
+ },
110
+ },
75
111
  },
76
112
  batchSize: {
77
- description: 'Batch size used during lazy loading options',
113
+ description: 'Batch size used during lazy loading options.',
78
114
  control: {
79
115
  type: 'number',
80
116
  },
117
+ table: {
118
+ category: 'ifx-multiselect props',
119
+ defaultValue: {
120
+ summary: '50',
121
+ },
122
+ type: {
123
+ summary: 'number',
124
+ },
125
+ },
81
126
  },
82
127
  maxItemCount: {
83
128
  control: { type: 'number' },
84
- description: 'Number of maximum selectable items',
129
+ description: 'Number of maximum selectable items.',
130
+ table: {
131
+ category: 'ifx-multiselect props',
132
+ type: {
133
+ summary: 'number'
134
+ }
135
+ }
85
136
  },
86
137
  showSearch: {
138
+ description: 'Show a search input.',
87
139
  options: [true, false],
88
140
  control: { type: 'radio' },
141
+ table: {
142
+ category: 'ifx-multiselect props',
143
+ defaultValue: {
144
+ summary: 'true',
145
+ },
146
+ type: {
147
+ summary: 'boolean',
148
+ },
149
+ },
89
150
  },
90
151
  showSelectAll: {
91
- description: 'Show a checkbox to select all options',
152
+ description: 'Show a checkbox to select all options.',
92
153
  options: [true, false],
93
154
  control: { type: 'radio' },
155
+ table: {
156
+ category: 'ifx-multiselect props',
157
+ defaultValue: {
158
+ summary: 'true',
159
+ },
160
+ type: {
161
+ summary: 'boolean',
162
+ },
163
+ },
94
164
  },
95
165
  error: {
166
+ description: 'Show error state.',
96
167
  options: [true, false],
97
168
  control: { type: 'radio' },
169
+ table: {
170
+ category: 'ifx-multiselect props',
171
+ defaultValue: {
172
+ summary: 'false',
173
+ },
174
+ type: {
175
+ summary: 'boolean',
176
+ },
177
+ },
98
178
  },
99
179
  errorMessage: {
100
180
  control: 'text',
181
+ description: 'Error message to display.',
182
+ table: {
183
+ category: 'ifx-multiselect props',
184
+ defaultValue: {
185
+ summary: 'Error',
186
+ },
187
+ type: {
188
+ summary: 'string',
189
+ },
190
+ },
101
191
  },
102
192
  label: {
193
+ description: 'Label over the input field.',
103
194
  control: 'text',
195
+ table: {
196
+ category: 'ifx-multiselect props',
197
+ type: {
198
+ summary: 'string',
199
+ },
200
+ },
104
201
  },
105
202
  placeholder: {
203
+ description: 'Label inside the input field.',
106
204
  control: 'text',
205
+ table: {
206
+ category: 'ifx-multiselect props',
207
+ type: {
208
+ summary: 'string',
209
+ },
210
+ },
107
211
  },
108
212
  options: {
109
- description: 'Takes an array of objects in the following format',
213
+ description: 'Takes an array of objects in the following format.',
214
+ table: {
215
+ category: 'ifx-multiselect props',
216
+ type: {
217
+ summary: 'Details',
218
+ detail: `'Array<{ value: string, label: string, selected: boolean, children?: Array<{ value: string, label: string, selected: boolean }> }>'`,
219
+ },
220
+ },
110
221
  },
111
222
  ifxSelect: {
112
223
  action: 'ifxSelect',
113
- description: 'Custom event emitted when item is selected or unselected',
224
+ description: 'Custom event emitted when item is selected or unselected.',
114
225
  table: {
226
+ category: 'custom events',
115
227
  type: {
116
228
  summary: 'Framework integration',
117
229
  detail: 'React: onIfxSelect={handleInput}\nVue:@ifxSelect="handleInput"\nAngular:(ifxSelect)="handleInput()"\nVanillaJs:.addEventListener("ifxSelect", (event) => {//handle input});',
118
230
  },
119
231
  },
120
232
  },
233
+ ifxOpen: {
234
+ action: 'ifxOpen',
235
+ description: 'Custom event emitted when multiselect is opened.',
236
+ table: {
237
+ category: 'custom events',
238
+ type: {
239
+ summary: 'Framework integration',
240
+ detail: 'React: onIfxOpen={handleChange}\nVue:@ifxOpen="handleChange"\nAngular:(ifxOpen)="handleChange()"\nVanillaJs:.addEventListener("ifxOpen", (event) => {//handle change});',
241
+ },
242
+ },
243
+ }
121
244
  },
122
245
  };
123
246
  const Template = args => {
124
247
  const template = `<ifx-multiselect
248
+ name='${args.name}'
125
249
  options='${JSON.stringify(args.options)}'
126
250
  batch-size='${args.batchSize}'
127
251
  size='${args.size}'
252
+ disabled='${args.disabled}'
128
253
  max-item-count='${args.maxItemCount}'
129
254
  error='${args.error}'
130
255
  error-message='${args.errorMessage}'
@@ -135,6 +260,7 @@ const Template = args => {
135
260
  </ifx-multiselect>`;
136
261
  setTimeout(() => {
137
262
  document.querySelector('ifx-multiselect').addEventListener('ifxSelect', action('ifxSelect'));
263
+ document.querySelector('ifx-multiselect').addEventListener('ifxOpen', action('ifxOpen'));
138
264
  }, 0);
139
265
  return template;
140
266
  };
@@ -1 +1 @@
1
- {"version":3,"file":"multiselect.stories.js","sourceRoot":"","sources":["../../../../src/components/select/multi-select/multiselect.stories.ts"],"names":[],"mappings":"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","sourcesContent":["import { action } from '@storybook/addon-actions';\n\nconst options = [\n {\n value: 'a',\n label: 'Option a',\n selected: false,\n },\n {\n value: 'b',\n label: 'Option b',\n selected: false,\n },\n {\n value: 'c',\n label: 'Option c',\n selected: false,\n children: [\n {\n value: 'z1',\n label: 'Option c1',\n selected: false,\n },\n {\n value: 'z2',\n label: 'Option c2',\n selected: false,\n },\n ],\n },\n];\n\nconst longOptions = [];\nfor (let i=1; i<=50; i++) {\n let children = undefined;\n if (i % 3 == 0) {\n children = [{\n \"value\": `${i}.1`,\n \"label\": `Option ${i}.1`,\n \"selected\": i % 2 == 0 ? true : false\n },{\n \"value\": `${i}.2`,\n \"label\": `Option ${i}.2`,\n \"selected\": i % 4 == 0 ? true : false\n }];\n }\n longOptions.push({\n \"value\": i,\n \"label\": `Option ${i}`,\n \"selected\": i % 2 == 0 ? true : false,\n \"children\": children\n })\n}\n\n\nexport default {\n title: 'Components/Select/Multi Select',\n // tags: ['autodocs'],\n args: {\n size: 'm',\n batchSize: 10,\n maxItemCount: 10,\n showSearch: true,\n showSelectAll: true,\n error: false,\n errorMessage: 'Some error',\n label: '',\n placeholder: 'Placeholder',\n },\n argTypes: {\n size: {\n options: {\n 'small (36px)': 's',\n 'medium (40px)': 'm',\n },\n control: {\n type: 'radio',\n },\n },\n batchSize: {\n description: 'Batch size used during lazy loading options',\n control: {\n type: 'number',\n },\n },\n maxItemCount: {\n control: { type: 'number' },\n description: 'Number of maximum selectable items',\n },\n showSearch: {\n options: [true, false],\n control: { type: 'radio' },\n },\n showSelectAll: {\n description: 'Show a checkbox to select all options',\n options: [true, false],\n control: { type: 'radio' },\n },\n error: {\n options: [true, false],\n control: { type: 'radio' },\n },\n errorMessage: {\n control: 'text',\n },\n label: {\n control: 'text',\n },\n placeholder: {\n control: 'text',\n },\n options: {\n description: 'Takes an array of objects in the following format',\n },\n ifxSelect: {\n action: 'ifxSelect',\n description: 'Custom event emitted when item is selected or unselected',\n table: {\n type: {\n summary: 'Framework integration',\n detail:\n 'React: onIfxSelect={handleInput}\\nVue:@ifxSelect=\"handleInput\"\\nAngular:(ifxSelect)=\"handleInput()\"\\nVanillaJs:.addEventListener(\"ifxSelect\", (event) => {//handle input});',\n },\n },\n },\n },\n};\n\nconst Template = args => {\n const template = `<ifx-multiselect \n options='${JSON.stringify(args.options)}' \n batch-size='${args.batchSize}'\n size='${args.size}'\n max-item-count='${args.maxItemCount}'\n error='${args.error}'\n error-message='${args.errorMessage}'\n label='${args.label}'\n placeholder='${args.placeholder}'\n show-search='${args.showSearch}'\n show-select-all='${args.showSelectAll}'>\n</ifx-multiselect>`;\n\n setTimeout(() => {\n document.querySelector('ifx-multiselect').addEventListener('ifxSelect', action('ifxSelect'));\n }, 0);\n\n return template;\n};\n\nexport const Default = Template.bind({});\nDefault.args = {\n options: options,\n};\n\nexport const WithLazyLoading = Template.bind({});\nWithLazyLoading.args = {\n options: longOptions,\n batchSize: 5,\n maxItemCount: undefined\n};\n"]}
1
+ {"version":3,"file":"multiselect.stories.js","sourceRoot":"","sources":["../../../../src/components/select/multi-select/multiselect.stories.ts"],"names":[],"mappings":"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","sourcesContent":["import { action } from '@storybook/addon-actions';\n\nconst options = [\n {\n value: 'a',\n label: 'Option a',\n selected: false,\n },\n {\n value: 'b',\n label: 'Option b',\n selected: false,\n },\n {\n value: 'c',\n label: 'Option c',\n selected: false,\n children: [\n {\n value: 'z1',\n label: 'Option c1',\n selected: false,\n },\n {\n value: 'z2',\n label: 'Option c2',\n selected: false,\n },\n ],\n },\n];\n\nconst longOptions = [];\nfor (let i = 1; i <= 50; i++) {\n let children = undefined;\n if (i % 3 == 0) {\n children = [{\n \"value\": `${i}.1`,\n \"label\": `Option ${i}.1`,\n \"selected\": i % 2 == 0 ? true : false\n }, {\n \"value\": `${i}.2`,\n \"label\": `Option ${i}.2`,\n \"selected\": i % 4 == 0 ? true : false\n }];\n }\n longOptions.push({\n \"value\": i,\n \"label\": `Option ${i}`,\n \"selected\": i % 2 == 0 ? true : false,\n \"children\": children\n })\n}\n\nexport default {\n title: 'Components/Select/Multi Select',\n // tags: ['autodocs'],\n args: {\n name: 'multiselect',\n size: 'm',\n disabled: false,\n batchSize: 10,\n maxItemCount: 10,\n showSearch: true,\n showSelectAll: true,\n error: false,\n errorMessage: 'Some error',\n label: '',\n placeholder: 'Placeholder',\n },\n argTypes: {\n size: {\n description: 'Size of the input field.',\n options: {\n 'small (36px)': 's',\n 'medium (40px)': 'm',\n },\n control: {\n type: 'radio',\n },\n table: {\n category: 'ifx-multiselect props',\n defaultValue: {\n summary: 'medium (40px)',\n },\n type: {\n summary: '36px | 40px',\n },\n },\n },\n disabled: {\n description: 'Disable the input field.',\n options: [true, false],\n control: { type: 'boolean' },\n table: {\n category: 'ifx-multiselect props',\n defaultValue: {\n summary: 'false',\n },\n type: {\n summary: 'boolean',\n },\n },\n },\n name: {\n description: `For a <*form*> element, the name attribute is used as a reference when the data is submitted.`,\n control: 'text',\n table: {\n category: 'ifx-multiselect props',\n type: {\n summary: 'string',\n },\n },\n },\n batchSize: {\n description: 'Batch size used during lazy loading options.',\n control: {\n type: 'number',\n },\n table: {\n category: 'ifx-multiselect props',\n defaultValue: {\n summary: '50',\n },\n type: {\n summary: 'number',\n },\n },\n },\n maxItemCount: {\n control: { type: 'number' },\n description: 'Number of maximum selectable items.',\n table: {\n category: 'ifx-multiselect props',\n type: {\n summary: 'number'\n }\n }\n },\n showSearch: {\n description: 'Show a search input.',\n options: [true, false],\n control: { type: 'radio' },\n table: {\n category: 'ifx-multiselect props',\n defaultValue: {\n summary: 'true',\n },\n type: {\n summary: 'boolean',\n },\n },\n },\n showSelectAll: {\n description: 'Show a checkbox to select all options.',\n options: [true, false],\n control: { type: 'radio' },\n table: {\n category: 'ifx-multiselect props',\n defaultValue: {\n summary: 'true',\n },\n type: {\n summary: 'boolean',\n },\n },\n },\n error: {\n description: 'Show error state.',\n options: [true, false],\n control: { type: 'radio' },\n table: {\n category: 'ifx-multiselect props',\n defaultValue: {\n summary: 'false',\n },\n type: {\n summary: 'boolean',\n },\n },\n },\n errorMessage: {\n control: 'text',\n description: 'Error message to display.',\n table: {\n category: 'ifx-multiselect props',\n defaultValue: {\n summary: 'Error',\n },\n type: {\n summary: 'string',\n },\n },\n },\n label: {\n description: 'Label over the input field.',\n control: 'text',\n table: {\n category: 'ifx-multiselect props',\n type: {\n summary: 'string',\n },\n },\n },\n placeholder: {\n description: 'Label inside the input field.',\n control: 'text',\n table: {\n category: 'ifx-multiselect props',\n type: {\n summary: 'string',\n },\n },\n },\n options: {\n description: 'Takes an array of objects in the following format.',\n table: {\n category: 'ifx-multiselect props',\n type: {\n summary: 'Details',\n detail: `'Array<{ value: string, label: string, selected: boolean, children?: Array<{ value: string, label: string, selected: boolean }> }>'`,\n },\n },\n },\n ifxSelect: {\n action: 'ifxSelect',\n description: 'Custom event emitted when item is selected or unselected.',\n table: {\n category: 'custom events',\n type: {\n summary: 'Framework integration',\n detail:\n 'React: onIfxSelect={handleInput}\\nVue:@ifxSelect=\"handleInput\"\\nAngular:(ifxSelect)=\"handleInput()\"\\nVanillaJs:.addEventListener(\"ifxSelect\", (event) => {//handle input});',\n },\n },\n },\n ifxOpen: {\n action: 'ifxOpen',\n description: 'Custom event emitted when multiselect is opened.',\n table: {\n category: 'custom events',\n type: {\n summary: 'Framework integration',\n detail:\n 'React: onIfxOpen={handleChange}\\nVue:@ifxOpen=\"handleChange\"\\nAngular:(ifxOpen)=\"handleChange()\"\\nVanillaJs:.addEventListener(\"ifxOpen\", (event) => {//handle change});',\n },\n },\n\n }\n },\n};\n\nconst Template = args => {\n const template = `<ifx-multiselect \n name='${args.name}'\n options='${JSON.stringify(args.options)}' \n batch-size='${args.batchSize}'\n size='${args.size}'\n disabled='${args.disabled}'\n max-item-count='${args.maxItemCount}'\n error='${args.error}'\n error-message='${args.errorMessage}'\n label='${args.label}'\n placeholder='${args.placeholder}'\n show-search='${args.showSearch}'\n show-select-all='${args.showSelectAll}'>\n</ifx-multiselect>`;\n\n setTimeout(() => {\n document.querySelector('ifx-multiselect').addEventListener('ifxSelect', action('ifxSelect'));\n document.querySelector('ifx-multiselect').addEventListener('ifxOpen', action('ifxOpen'));\n }, 0);\n\n return template;\n};\n\nexport const Default = Template.bind({});\nDefault.args = {\n options: options,\n};\n\nexport const WithLazyLoading = Template.bind({});\nWithLazyLoading.args = {\n options: longOptions,\n batchSize: 5,\n maxItemCount: undefined\n};\n"]}
@@ -22,6 +22,7 @@ export default {
22
22
  title: 'Components/Select/Single Select',
23
23
  // tags: ['autodocs'],
24
24
  args: {
25
+ label: '',
25
26
  size: 'm',
26
27
  showSearch: true,
27
28
  searchPlaceholderValue: 'Search...',
@@ -29,7 +30,6 @@ export default {
29
30
  placeholderValue: 'Placeholder',
30
31
  error: false,
31
32
  errorMessage: 'Some error',
32
- label: '',
33
33
  disabled: false,
34
34
  // type: 'single', //for later implementation
35
35
  },
@@ -39,51 +39,108 @@ export default {
39
39
  // control: false,
40
40
  // },
41
41
  size: {
42
- options: {
43
- 'small (36px)': 's',
44
- 'medium (40px)': 'm',
45
- },
46
- control: {
47
- type: 'radio',
48
- },
42
+ description: 'Specifies the size. Options: small - s (36px) medium - m (40px).',
43
+ control: 'radio',
44
+ options: ['s', 'm'],
45
+ table: {
46
+ category: 'ifx-select props',
47
+ defaultValue: {
48
+ summary: 'm'
49
+ }
50
+ }
49
51
  },
50
52
  placeholder: {
51
- options: [true, false],
52
- control: { type: 'radio' },
53
+ description: 'Determines whether a placeholder is displayed or not.',
54
+ control: 'boolean',
55
+ table: {
56
+ category: 'ifx-select props',
57
+ defaultValue: {
58
+ summary: true
59
+ }
60
+ }
61
+ },
62
+ placeholderValue: {
63
+ description: 'Sets the text displayed as the placeholder when placeholder is set to true.',
64
+ table: {
65
+ category: 'ifx-select props'
66
+ }
53
67
  },
54
- placeholderValue: { control: 'text' },
55
- // value: { for later implementation
56
- // control: 'text',
57
- // description: 'Programmatically set the selected value',
58
- // },
59
68
  error: {
60
- options: [true, false],
61
- control: { type: 'radio' },
69
+ description: 'Displays an error state.',
70
+ control: 'boolean',
71
+ table: {
72
+ category: 'ifx-select props',
73
+ defaultValue: {
74
+ summary: false
75
+ }
76
+ }
77
+ },
78
+ errorMessage: {
79
+ description: 'Message displayed when error is set to true.',
80
+ table: {
81
+ category: 'ifx-select props'
82
+ }
83
+ },
84
+ label: {
85
+ description: 'Sets the label.',
86
+ table: {
87
+ category: 'ifx-select props'
88
+ }
62
89
  },
63
- errorMessage: { control: 'text' },
64
- label: { control: 'text' },
65
90
  disabled: {
66
- options: [true, false],
67
- control: { type: 'radio' },
91
+ description: 'Disables the dropdown.',
92
+ control: 'boolean',
93
+ table: {
94
+ category: 'ifx-select props',
95
+ defaultValue: {
96
+ summary: false
97
+ }
98
+ }
68
99
  },
69
100
  showSearch: {
70
- options: [true, false],
71
- control: { type: 'radio' },
101
+ description: 'Enables a search bar inside the dropdown to filter options.',
102
+ control: 'boolean',
103
+ table: {
104
+ category: 'ifx-select props',
105
+ defaultValue: {
106
+ summary: true
107
+ }
108
+ }
109
+ },
110
+ searchPlaceholderValue: {
111
+ description: 'Placeholder text for the search input field.',
112
+ table: {
113
+ category: 'ifx-select props'
114
+ }
72
115
  },
73
- searchPlaceholderValue: { control: { type: 'text' } },
74
116
  options: {
75
- description: 'Takes an array of objects in the following format',
117
+ description: 'Takes an array of objects in the following format.',
118
+ table: {
119
+ category: 'ifx-select props'
120
+ }
76
121
  },
77
122
  ifxSelect: {
78
123
  action: 'ifxSelect',
79
- description: 'Custom event emitted when item is selected',
124
+ description: 'Custom event emitted when item is selected.',
80
125
  table: {
126
+ category: 'custom events',
81
127
  type: {
82
128
  summary: 'Framework integration',
83
129
  detail: 'React: onIfxSelect={handleInput}\nVue:@ifxSelect="handleInput"\nAngular:(ifxSelect)="handleInput()"\nVanillaJs:.addEventListener("ifxSelect", (event) => {//handle input});',
84
130
  },
85
131
  },
86
132
  },
133
+ ifxInput: {
134
+ action: 'ifxInput',
135
+ description: 'A custom event *ifxInput* is emitted immediately after the value of *Search* changes.',
136
+ table: {
137
+ category: 'custom events',
138
+ type: {
139
+ summary: 'Framework integration',
140
+ detail: 'React: onIfxInput={handleInput}\nVue:@ifxInput="handleInput"\nAngular:(ifxInput)="handleInput()"\nVanillaJs:.addEventListener("ifxInput", (event) => {//handle input});',
141
+ },
142
+ },
143
+ },
87
144
  },
88
145
  };
89
146
  const DefaultTemplate = args => {
@@ -1 +1 @@
1
- {"version":3,"file":"select.stories.js","sourceRoot":"","sources":["../../../../src/components/select/single-select/select.stories.ts"],"names":[],"mappings":"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","sourcesContent":["import { action } from '@storybook/addon-actions';\n\n//use string instead of json format here to avoid ugly formatting in the storybook code snippet\n// let options = \"[{'value': 'a','label': 'option a','selected': 'false'},{'value': 'b','label': 'option b','selected': 'false'},{'value': 'c','label': 'option c','selected': 'false'}]\"\nconst options = [\n {\n value: 'a',\n label: 'option a',\n selected: false,\n },\n {\n value: 'b',\n label: 'option b',\n selected: false,\n },\n {\n value: 'c',\n label: 'option c',\n selected: false,\n },\n];\n\nexport default {\n title: 'Components/Select/Single Select',\n // tags: ['autodocs'],\n args: {\n size: 'm',\n showSearch: true,\n searchPlaceholderValue: 'Search...',\n placeholder: true,\n placeholderValue: 'Placeholder',\n error: false,\n errorMessage: 'Some error',\n label: '',\n disabled: false,\n // type: 'single', //for later implementation\n },\n\n argTypes: {\n // type: { //for later implementation\n // // control: { type: 'radio' },\n // control: false,\n // },\n size: {\n options: {\n 'small (36px)': 's',\n 'medium (40px)': 'm',\n },\n control: {\n type: 'radio',\n },\n },\n placeholder: {\n options: [true, false],\n control: { type: 'radio' },\n },\n placeholderValue: { control: 'text' },\n // value: { for later implementation\n // control: 'text',\n // description: 'Programmatically set the selected value',\n // },\n error: {\n options: [true, false],\n control: { type: 'radio' },\n },\n errorMessage: { control: 'text' },\n label: { control: 'text' },\n disabled: {\n options: [true, false],\n control: { type: 'radio' },\n },\n showSearch: {\n options: [true, false],\n control: { type: 'radio' },\n },\n searchPlaceholderValue: { control: { type: 'text' } },\n\n options: {\n description: 'Takes an array of objects in the following format',\n },\n ifxSelect: {\n action: 'ifxSelect',\n description: 'Custom event emitted when item is selected',\n table: {\n type: {\n summary: 'Framework integration',\n detail:\n 'React: onIfxSelect={handleInput}\\nVue:@ifxSelect=\"handleInput\"\\nAngular:(ifxSelect)=\"handleInput()\"\\nVanillaJs:.addEventListener(\"ifxSelect\", (event) => {//handle input});',\n },\n },\n },\n },\n};\n\nconst DefaultTemplate = args => {\n const template = `<ifx-select \n size='${args.size}'\n placeholder='${args.placeholder}'\n show-search='${args.showSearch}'\n search-placeholder-value='${args.searchPlaceholderValue}'\n disabled='${args.disabled}'\n error='${args.error}'\n error-message='${args.errorMessage}'\n label='${args.label}'\n placeholder-value='${args.placeholderValue}'\n options='${JSON.stringify(args.options)}' >\n </ifx-select>`;\n setTimeout(() => {\n document.querySelector('ifx-select')?.addEventListener('ifxSelect', action('ifxSelect'));\n document.querySelector('ifx-select')?.addEventListener('ifxInput', action('ifxInput'));\n }, 0);\n\n return template;\n};\n\nexport const Single = DefaultTemplate.bind({});\nSingle.args = {\n // type: 'single',\n options: options,\n};\n\n// export const Text = DefaultTemplate.bind({});\n// Text.args = {\n// type: 'text',\n// name: 'text',\n// value: 'Placeholder',\n// allowHTML: true,\n// delimiter: ',',\n// editItems: true,\n// maxItemCount: 5,\n// };\n\n// export const Text = DefaultTemplate.bind({});\n// Text.args = {\n// type: 'multiple',\n// name: 'multiple',\n// choices: 'Choice 1, Choice 2, Choice 3',\n// };\n\n// export const SingleWithIcon = DefaultTemplate.bind({});\n// SingleWithIcon.args = {\n// type: 'single',\n// choices: \"Choice 1, Choice 2 <ifx-icon icon='check16'></ifx-icon>, Choice 3 <ifx-icon icon='check16'></ifx-icon>\",\n// };\n\n// export const MultiselectCombobox = DefaultTemplate.bind({});\n// MultiselectCombobox.args = {\n// type: 'multiple',\n// // removeItemButton: true,\n// };\n"]}
1
+ {"version":3,"file":"select.stories.js","sourceRoot":"","sources":["../../../../src/components/select/single-select/select.stories.ts"],"names":[],"mappings":"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","sourcesContent":["import { action } from '@storybook/addon-actions';\n\n//use string instead of json format here to avoid ugly formatting in the storybook code snippet\n// let options = \"[{'value': 'a','label': 'option a','selected': 'false'},{'value': 'b','label': 'option b','selected': 'false'},{'value': 'c','label': 'option c','selected': 'false'}]\"\nconst options = [\n {\n value: 'a',\n label: 'option a',\n selected: false,\n },\n {\n value: 'b',\n label: 'option b',\n selected: false,\n },\n {\n value: 'c',\n label: 'option c',\n selected: false,\n },\n];\n\nexport default {\n title: 'Components/Select/Single Select',\n // tags: ['autodocs'],\n args: {\n label: '',\n size: 'm',\n showSearch: true,\n searchPlaceholderValue: 'Search...',\n placeholder: true,\n placeholderValue: 'Placeholder',\n error: false,\n errorMessage: 'Some error',\n disabled: false,\n // type: 'single', //for later implementation\n },\n\n argTypes: {\n // type: { //for later implementation\n // // control: { type: 'radio' },\n // control: false,\n // },\n size: {\n description: 'Specifies the size. Options: small - s (36px) medium - m (40px).',\n control: 'radio',\n options: ['s', 'm'],\n table: {\n category: 'ifx-select props',\n defaultValue: {\n summary: 'm'\n }\n }\n },\n placeholder: {\n description: 'Determines whether a placeholder is displayed or not.',\n control: 'boolean',\n table: {\n category: 'ifx-select props',\n defaultValue: {\n summary: true\n }\n }\n },\n placeholderValue: {\n description: 'Sets the text displayed as the placeholder when placeholder is set to true.',\n table: {\n category: 'ifx-select props'\n }\n },\n error: {\n description: 'Displays an error state.',\n control: 'boolean',\n table: {\n category: 'ifx-select props',\n defaultValue: {\n summary: false\n }\n }\n },\n errorMessage: {\n description: 'Message displayed when error is set to true.',\n table: {\n category: 'ifx-select props'\n }\n },\n label: {\n description: 'Sets the label.',\n table: {\n category: 'ifx-select props'\n }\n },\n disabled: {\n description: 'Disables the dropdown.',\n control: 'boolean',\n table: {\n category: 'ifx-select props',\n defaultValue: {\n summary: false\n }\n }\n },\n showSearch: {\n description: 'Enables a search bar inside the dropdown to filter options.',\n control: 'boolean',\n table: {\n category: 'ifx-select props',\n defaultValue: {\n summary: true\n }\n }\n },\n searchPlaceholderValue: {\n description: 'Placeholder text for the search input field.',\n table: {\n category: 'ifx-select props'\n }\n },\n options: {\n description: 'Takes an array of objects in the following format.',\n table: {\n category: 'ifx-select props'\n }\n },\n ifxSelect: {\n action: 'ifxSelect',\n description: 'Custom event emitted when item is selected.',\n table: {\n category: 'custom events',\n type: {\n summary: 'Framework integration',\n detail:\n 'React: onIfxSelect={handleInput}\\nVue:@ifxSelect=\"handleInput\"\\nAngular:(ifxSelect)=\"handleInput()\"\\nVanillaJs:.addEventListener(\"ifxSelect\", (event) => {//handle input});',\n },\n },\n },\n ifxInput: {\n action: 'ifxInput',\n description: 'A custom event *ifxInput* is emitted immediately after the value of *Search* changes.',\n table: {\n category: 'custom events',\n type: {\n summary: 'Framework integration',\n detail:\n 'React: onIfxInput={handleInput}\\nVue:@ifxInput=\"handleInput\"\\nAngular:(ifxInput)=\"handleInput()\"\\nVanillaJs:.addEventListener(\"ifxInput\", (event) => {//handle input});',\n },\n },\n },\n },\n};\n\nconst DefaultTemplate = args => {\n const template = `<ifx-select \n size='${args.size}'\n placeholder='${args.placeholder}'\n show-search='${args.showSearch}'\n search-placeholder-value='${args.searchPlaceholderValue}'\n disabled='${args.disabled}'\n error='${args.error}'\n error-message='${args.errorMessage}'\n label='${args.label}'\n placeholder-value='${args.placeholderValue}'\n options='${JSON.stringify(args.options)}' >\n </ifx-select>`;\n setTimeout(() => {\n document.querySelector('ifx-select')?.addEventListener('ifxSelect', action('ifxSelect'));\n document.querySelector('ifx-select')?.addEventListener('ifxInput', action('ifxInput'));\n }, 0);\n\n return template;\n};\n\nexport const Single = DefaultTemplate.bind({});\nSingle.args = {\n // type: 'single',\n options: options,\n};\n\n// export const Text = DefaultTemplate.bind({});\n// Text.args = {\n// type: 'text',\n// name: 'text',\n// value: 'Placeholder',\n// allowHTML: true,\n// delimiter: ',',\n// editItems: true,\n// maxItemCount: 5,\n// };\n\n// export const Text = DefaultTemplate.bind({});\n// Text.args = {\n// type: 'multiple',\n// name: 'multiple',\n// choices: 'Choice 1, Choice 2, Choice 3',\n// };\n\n// export const SingleWithIcon = DefaultTemplate.bind({});\n// SingleWithIcon.args = {\n// type: 'single',\n// choices: \"Choice 1, Choice 2 <ifx-icon icon='check16'></ifx-icon>, Choice 3 <ifx-icon icon='check16'></ifx-icon>\",\n// };\n\n// export const MultiselectCombobox = DefaultTemplate.bind({});\n// MultiselectCombobox.args = {\n// type: 'multiple',\n// // removeItemButton: true,\n// };\n"]}
@@ -5,36 +5,120 @@ export default {
5
5
  component: 'ifx-slider',
6
6
  tags: ['autodocs'],
7
7
  argTypes: {
8
- min: { control: 'number' },
9
- max: { control: 'number' },
10
- step: { control: 'number' },
11
- type: { control: 'radio', options: ['single', 'double'] },
12
- value: { control: 'number', if: { arg: 'type', eq: 'single' } },
13
- minValueHandle: { control: 'number', if: { arg: 'type', eq: 'double' } },
14
- maxValueHandle: { control: 'number', if: { arg: 'type', eq: 'double' } },
15
- showPercentage: { control: 'boolean', if: { arg: 'type', eq: 'single' } },
16
- disabled: { control: 'boolean' },
8
+ min: { control: 'number',
9
+ description: 'The minimum value of the slider.',
10
+ table: {
11
+ category: 'ifx-slider props',
12
+ defaultValue: { summary: '0' },
13
+ type: { summary: 'number' }
14
+ }
15
+ },
16
+ max: { control: 'number',
17
+ description: 'The maximum value of the slider.',
18
+ table: {
19
+ category: 'ifx-slider props',
20
+ defaultValue: { summary: '100' },
21
+ type: { summary: 'number' }
22
+ }
23
+ },
24
+ step: { control: 'number',
25
+ description: 'The step value of the slider.',
26
+ table: {
27
+ category: 'ifx-slider props',
28
+ defaultValue: { summary: '1' },
29
+ type: { summary: 'number' }
30
+ }
31
+ },
32
+ type: { control: 'radio', options: ['single', 'double'],
33
+ description: 'The type of the slider.',
34
+ table: {
35
+ category: 'ifx-slider props',
36
+ defaultValue: { summary: 'single' },
37
+ type: { summary: 'single | double' }
38
+ }
39
+ },
40
+ value: { control: 'number', if: { arg: 'type', eq: 'single' },
41
+ description: 'The current value of the slider.',
42
+ table: {
43
+ category: 'ifx-slider props',
44
+ type: { summary: 'number ' }
45
+ }
46
+ },
47
+ minValueHandle: { control: 'number', if: { arg: 'type', eq: 'double' },
48
+ description: 'The minimum value of the handle in double slider.',
49
+ table: {
50
+ category: 'ifx-slider props',
51
+ type: { summary: 'number' }
52
+ }
53
+ },
54
+ maxValueHandle: { control: 'number', if: { arg: 'type', eq: 'double' },
55
+ description: 'The maximum value of the handle in double slider.',
56
+ table: {
57
+ category: 'ifx-slider props',
58
+ type: { summary: 'number' }
59
+ },
60
+ },
61
+ showPercentage: {
62
+ control: 'boolean', if: { arg: 'type', eq: 'single' },
63
+ description: 'Show the percentage of the slider value.',
64
+ table: {
65
+ category: 'ifx-slider props',
66
+ defaultValue: { summary: 'false' },
67
+ type: { summary: 'boolean' }
68
+ }
69
+ },
70
+ disabled: { control: 'boolean',
71
+ description: 'Disable the slider.',
72
+ table: {
73
+ category: 'ifx-slider props',
74
+ defaultValue: { summary: 'false' },
75
+ type: { summary: 'boolean' }
76
+ }
77
+ },
17
78
  leftIcon: {
18
79
  options: Object.values(icons).map(i => i['name']),
19
80
  control: { type: 'select' },
81
+ description: 'The icon on the left of the slider.',
82
+ table: {
83
+ category: 'ifx-slider props',
84
+ type: { summary: 'string' }
85
+ }
20
86
  },
21
87
  rightIcon: {
22
88
  options: Object.values(icons).map(i => i['name']),
23
89
  control: { type: 'select' },
90
+ description: 'The icon on the right of the slider.',
91
+ table: {
92
+ category: 'ifx-slider props',
93
+ type: { summary: 'string' }
94
+ }
95
+ },
96
+ leftText: { control: 'text',
97
+ description: 'The text on the left side.',
98
+ table: {
99
+ category: 'ifx-slider props',
100
+ type: { summary: 'string' }
101
+ }
102
+ },
103
+ rightText: { control: 'text',
104
+ description: 'The text on the right side.',
105
+ table: {
106
+ category: 'ifx-slider props',
107
+ type: { summary: 'string' }
108
+ }
24
109
  },
25
- leftText: { control: 'text' },
26
- rightText: { control: 'text' },
27
110
  ifxChange: {
28
111
  action: 'ifxChange',
29
- description: 'Custom event emitted on input change',
112
+ description: 'Custom event emitted on input change.',
30
113
  table: {
114
+ category: 'custom events',
31
115
  type: {
32
116
  summary: 'Framework integration',
33
117
  detail: 'React: onIfxChange={handleChange}\nVue:@ifxChange="handleChange"\nAngular:(ifxChange)="handleChange()"\nVanillaJs:.addEventListener("ifxChange", (event) => {//handle change});',
34
118
  },
35
119
  },
36
120
  },
37
- },
121
+ }
38
122
  };
39
123
  const Template = args => {
40
124
  const sliderElement = document.createElement('ifx-slider');
@@ -1 +1 @@
1
- {"version":3,"file":"slider.stories.js","sourceRoot":"","sources":["../../../src/components/slider/slider.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["import { action } from '@storybook/addon-actions';\nimport { icons } from '@infineon/infineon-icons';\n\nexport default {\n title: 'Components/Slider',\n component: 'ifx-slider',\n tags: ['autodocs'],\n\n argTypes: {\n min: { control: 'number' },\n max: { control: 'number' },\n step: { control: 'number' },\n type: { control: 'radio', options: ['single', 'double']},\n value: { control: 'number', if: { arg: 'type', eq: 'single'} },\n minValueHandle : {control :'number', if: { arg: 'type', eq: 'double'}},\n maxValueHandle : {control :'number', if: { arg: 'type', eq: 'double'}},\n showPercentage: { control: 'boolean', if: { arg: 'type', eq: 'single'} },\n disabled: { control: 'boolean' },\n leftIcon: {\n options: Object.values(icons).map(i => i['name']),\n control: { type: 'select' },\n },\n rightIcon: {\n options: Object.values(icons).map(i => i['name']),\n control: { type: 'select' },\n },\n leftText: { control: 'text' },\n rightText: { control: 'text' },\n ifxChange: {\n action: 'ifxChange',\n description: 'Custom event emitted on input change',\n table: {\n type: {\n summary: 'Framework integration',\n detail:\n 'React: onIfxChange={handleChange}\\nVue:@ifxChange=\"handleChange\"\\nAngular:(ifxChange)=\"handleChange()\"\\nVanillaJs:.addEventListener(\"ifxChange\", (event) => {//handle change});',\n },\n },\n },\n },\n};\n\nconst Template = args => {\n const sliderElement = document.createElement('ifx-slider');\n sliderElement.setAttribute('value', args.value);\n sliderElement.setAttribute('min', args.min);\n sliderElement.setAttribute('max', args.max);\n sliderElement.setAttribute('step', args.step)\n sliderElement.setAttribute('min-value-handle', args.minValueHandle);\n sliderElement.setAttribute('max-value-handle', args.maxValueHandle);\n sliderElement.setAttribute('type', args.type);\n if (args.showPercentage) {\n sliderElement.setAttribute('show-percentage', 'true');\n }\n if (args.disabled) {\n sliderElement.setAttribute('disabled', 'true'); // Set disabled attribute\n }\n\n if (args.leftIcon) {\n sliderElement.setAttribute('left-icon', args.leftIcon);\n }\n if (args.rightIcon) {\n sliderElement.setAttribute('right-icon', args.rightIcon);\n }\n if (args.leftText) {\n sliderElement.setAttribute('left-text', args.leftText);\n }\n if (args.rightText) {\n sliderElement.setAttribute('right-text', args.rightText);\n }\n sliderElement.addEventListener('ifxChange', action('ifxChange'));\n\n return sliderElement;\n};\n\nexport const Default = Template.bind({});\nDefault.args = {\n min: 0,\n max: 100,\n step: 1,\n value: 50,\n minValueHandle: 20,\n maxValueHandle: 80,\n showPercentage: false,\n disabled: false,\n type: 'single'\n};\n\nexport const WithPercentageDisplay = Template.bind({});\nWithPercentageDisplay.args = {\n ...Default.args,\n showPercentage: true,\n disabled: false,\n};\n\nexport const WithIcons = Template.bind({});\nWithIcons.args = {\n ...Default.args,\n leftIcon: 'cogwheel-16',\n rightIcon: 'cogwheel-16',\n};\n\nexport const WithTexts = Template.bind({});\nWithTexts.args = {\n ...Default.args,\n leftText: 'LeftText',\n rightText: 'RightText',\n};\n\nexport const Disabled = Template.bind({});\nDisabled.args = {\n ...Default.args,\n disabled: true,\n};\n"]}
1
+ {"version":3,"file":"slider.stories.js","sourceRoot":"","sources":["../../../src/components/slider/slider.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["import { action } from '@storybook/addon-actions';\nimport { icons } from '@infineon/infineon-icons';\n\nexport default {\n title: 'Components/Slider',\n component: 'ifx-slider',\n tags: ['autodocs'],\n\n argTypes: {\n min: { control: 'number',\n description: 'The minimum value of the slider.',\n table:{\n category: 'ifx-slider props',\n defaultValue: { summary: '0' },\n type: { summary: 'number' }\n }\n },\n max: { control: 'number',\n description: 'The maximum value of the slider.',\n table:{\n category: 'ifx-slider props',\n defaultValue: { summary: '100' },\n type: { summary: 'number' }\n } \n },\n step: { control: 'number',\n description: 'The step value of the slider.',\n table:{\n category: 'ifx-slider props',\n defaultValue: { summary: '1' },\n type: { summary: 'number' }\n }\n },\n type: { control: 'radio', options: ['single', 'double'],\n description: 'The type of the slider.',\n table: {\n category: 'ifx-slider props',\n defaultValue: { summary: 'single' },\n type: { summary: 'single | double' }\n }\n },\n value: { control: 'number', if: { arg: 'type', eq: 'single'},\n description: 'The current value of the slider.',\n table: { \n category: 'ifx-slider props',\n type: { summary: 'number ' }\n }\n }, \n minValueHandle : {control :'number', if: { arg: 'type', eq: 'double'},\n description: 'The minimum value of the handle in double slider.',\n table: {\n category: 'ifx-slider props',\n type: { summary: 'number' }\n }\n },\n maxValueHandle : {control :'number', if: { arg: 'type', eq: 'double'},\n description: 'The maximum value of the handle in double slider.',\n table: {\n category: 'ifx-slider props',\n type: { summary: 'number' }\n },\n }, \n showPercentage: { \n control: 'boolean', if: { arg: 'type', eq: 'single'},\n description: 'Show the percentage of the slider value.',\n table: {\n category: 'ifx-slider props',\n defaultValue: { summary: 'false' },\n type: { summary: 'boolean' }\n }\n },\n disabled: { control: 'boolean',\n description: 'Disable the slider.',\n table: {\n category: 'ifx-slider props',\n defaultValue: { summary: 'false' },\n type: { summary: 'boolean' }\n }\n },\n leftIcon: {\n options: Object.values(icons).map(i => i['name']),\n control: { type: 'select'},\n description: 'The icon on the left of the slider.',\n table: {\n category: 'ifx-slider props',\n type: { summary: 'string' }\n }\n },\n rightIcon: {\n options: Object.values(icons).map(i => i['name']),\n control: { type: 'select' },\n description: 'The icon on the right of the slider.',\n table: {\n category: 'ifx-slider props',\n type: { summary: 'string' }\n }\n },\n leftText: { control: 'text',\n description: 'The text on the left side.',\n table: {\n category: 'ifx-slider props',\n type: { summary: 'string' }\n }\n },\n rightText: { control: 'text',\n description: 'The text on the right side.',\n table: {\n category: 'ifx-slider props',\n type: { summary: 'string' }\n }\n },\n ifxChange: {\n action: 'ifxChange',\n description: 'Custom event emitted on input change.',\n table: {\n category: 'custom events',\n type: {\n summary: 'Framework integration',\n detail:\n 'React: onIfxChange={handleChange}\\nVue:@ifxChange=\"handleChange\"\\nAngular:(ifxChange)=\"handleChange()\"\\nVanillaJs:.addEventListener(\"ifxChange\", (event) => {//handle change});',\n },\n },\n },\n }\n}\n\nconst Template = args => {\n const sliderElement = document.createElement('ifx-slider');\n sliderElement.setAttribute('value', args.value);\n sliderElement.setAttribute('min', args.min);\n sliderElement.setAttribute('max', args.max);\n sliderElement.setAttribute('step', args.step)\n sliderElement.setAttribute('min-value-handle', args.minValueHandle);\n sliderElement.setAttribute('max-value-handle', args.maxValueHandle);\n sliderElement.setAttribute('type', args.type);\n if (args.showPercentage) {\n sliderElement.setAttribute('show-percentage', 'true');\n }\n if (args.disabled) {\n sliderElement.setAttribute('disabled', 'true'); // Set disabled attribute\n }\n\n if (args.leftIcon) {\n sliderElement.setAttribute('left-icon', args.leftIcon);\n }\n if (args.rightIcon) {\n sliderElement.setAttribute('right-icon', args.rightIcon);\n }\n if (args.leftText) {\n sliderElement.setAttribute('left-text', args.leftText);\n }\n if (args.rightText) {\n sliderElement.setAttribute('right-text', args.rightText);\n }\n sliderElement.addEventListener('ifxChange', action('ifxChange'));\n\n return sliderElement;\n};\n\nexport const Default = Template.bind({});\nDefault.args = {\n min: 0,\n max: 100,\n step: 1,\n value: 50,\n minValueHandle: 20,\n maxValueHandle: 80,\n showPercentage: false,\n disabled: false,\n type: 'single'\n};\n\nexport const WithPercentageDisplay = Template.bind({});\nWithPercentageDisplay.args = {\n ...Default.args,\n showPercentage: true,\n disabled: false,\n};\n\nexport const WithIcons = Template.bind({});\nWithIcons.args = {\n ...Default.args,\n leftIcon: 'cogwheel-16',\n rightIcon: 'cogwheel-16',\n};\n\nexport const WithTexts = Template.bind({});\nWithTexts.args = {\n ...Default.args,\n leftText: 'LeftText',\n rightText: 'RightText',\n};\n\nexport const Disabled = Template.bind({});\nDisabled.args = {\n ...Default.args,\n disabled: true,\n};\n"]}