@ukic/canary-web-components 2.0.0-canary.4 → 2.0.0-canary.41

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 (832) hide show
  1. package/README.md +7 -2
  2. package/dist/cjs/core.cjs.js +1 -1
  3. package/dist/cjs/date-helpers-c9551119.js +150 -0
  4. package/dist/cjs/date-helpers-c9551119.js.map +1 -0
  5. package/dist/cjs/helpers-951fb33a.js +433 -0
  6. package/dist/cjs/helpers-951fb33a.js.map +1 -0
  7. package/dist/cjs/{helpers-bbe55215.js → helpers-eabe59b6.js} +147 -100
  8. package/dist/cjs/helpers-eabe59b6.js.map +1 -0
  9. package/dist/cjs/ic-accordion-group.cjs.entry.js +31 -4
  10. package/dist/cjs/ic-accordion-group.cjs.entry.js.map +1 -1
  11. package/dist/cjs/ic-accordion.cjs.entry.js +11 -4
  12. package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
  13. package/dist/cjs/ic-alert.cjs.entry.js +20 -6
  14. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  15. package/dist/cjs/ic-back-to-top.cjs.entry.js +26 -17
  16. package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ic-badge.cjs.entry.js +86 -83
  18. package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
  19. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +62 -25
  20. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ic-breadcrumb.cjs.entry.js +2 -2
  22. package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
  23. package/dist/cjs/ic-button_3.cjs.entry.js +145 -103
  24. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  25. package/dist/cjs/ic-card-horizontal.cjs.entry.js +130 -0
  26. package/dist/cjs/ic-card-horizontal.cjs.entry.js.map +1 -0
  27. package/dist/cjs/ic-card.cjs.entry.js +30 -7
  28. package/dist/cjs/ic-card.cjs.entry.js.map +1 -1
  29. package/dist/cjs/ic-checkbox-group.cjs.entry.js +28 -17
  30. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  31. package/dist/cjs/ic-checkbox.cjs.entry.js +50 -31
  32. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  33. package/dist/cjs/ic-chip.cjs.entry.js +45 -21
  34. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
  35. package/dist/cjs/ic-classification-banner.cjs.entry.js +14 -5
  36. package/dist/cjs/ic-classification-banner.cjs.entry.js.map +1 -1
  37. package/dist/cjs/ic-data-entity.cjs.entry.js +3 -6
  38. package/dist/cjs/ic-data-entity.cjs.entry.js.map +1 -1
  39. package/dist/cjs/ic-data-row.cjs.entry.js +21 -35
  40. package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
  41. package/dist/cjs/ic-data-table-title-bar.cjs.entry.js +57 -0
  42. package/dist/cjs/ic-data-table-title-bar.cjs.entry.js.map +1 -0
  43. package/dist/cjs/ic-data-table.cjs.entry.js +1079 -84
  44. package/dist/cjs/ic-data-table.cjs.entry.js.map +1 -1
  45. package/dist/cjs/ic-date-input.cjs.entry.js +1123 -0
  46. package/dist/cjs/ic-date-input.cjs.entry.js.map +1 -0
  47. package/dist/cjs/ic-date-picker.cjs.entry.js +1129 -0
  48. package/dist/cjs/ic-date-picker.cjs.entry.js.map +1 -0
  49. package/dist/cjs/ic-dialog.cjs.entry.js +54 -12
  50. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
  51. package/dist/cjs/ic-divider.cjs.entry.js +1 -1
  52. package/dist/cjs/ic-empty-state_2.cjs.entry.js +388 -0
  53. package/dist/cjs/ic-empty-state_2.cjs.entry.js.map +1 -0
  54. package/dist/cjs/ic-footer-link-group.cjs.entry.js +4 -4
  55. package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
  56. package/dist/cjs/ic-footer-link.cjs.entry.js +3 -3
  57. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  58. package/dist/cjs/ic-footer.cjs.entry.js +18 -7
  59. package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
  60. package/dist/cjs/ic-hero.cjs.entry.js +12 -2
  61. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  62. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +5 -5
  63. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
  64. package/dist/cjs/ic-input-component-container_4.cjs.entry.js +164 -0
  65. package/dist/cjs/ic-input-component-container_4.cjs.entry.js.map +1 -0
  66. package/dist/cjs/ic-link.cjs.entry.js +34 -16
  67. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  68. package/dist/cjs/ic-menu-group.cjs.entry.js +2 -2
  69. package/dist/cjs/ic-menu-group.cjs.entry.js.map +1 -1
  70. package/dist/cjs/ic-menu-item.cjs.entry.js +21 -20
  71. package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
  72. package/dist/cjs/ic-menu-with-multi.cjs.entry.js +2740 -0
  73. package/dist/cjs/ic-menu-with-multi.cjs.entry.js.map +1 -0
  74. package/dist/cjs/{ic-input-component-container_3.cjs.entry.js → ic-menu.cjs.entry.js} +17 -80
  75. package/dist/cjs/ic-menu.cjs.entry.js.map +1 -0
  76. package/dist/cjs/ic-navigation-button.cjs.entry.js +28 -7
  77. package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
  78. package/dist/cjs/ic-navigation-group.cjs.entry.js +32 -22
  79. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  80. package/dist/cjs/ic-navigation-item.cjs.entry.js +82 -36
  81. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  82. package/dist/cjs/ic-navigation-menu.cjs.entry.js +1 -1
  83. package/dist/cjs/ic-page-header.cjs.entry.js +10 -10
  84. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  85. package/dist/cjs/ic-pagination_4.cjs.entry.js +231 -116
  86. package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
  87. package/dist/cjs/ic-popover-menu.cjs.entry.js +40 -36
  88. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  89. package/dist/cjs/ic-radio-group.cjs.entry.js +100 -59
  90. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  91. package/dist/cjs/ic-radio-option.cjs.entry.js +59 -42
  92. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  93. package/dist/cjs/ic-search-bar.cjs.entry.js +22 -30
  94. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  95. package/dist/cjs/ic-section-container.cjs.entry.js +1 -1
  96. package/dist/cjs/ic-section-container.cjs.entry.js.map +1 -1
  97. package/dist/cjs/ic-select-with-multi.cjs.entry.js +796 -0
  98. package/dist/cjs/ic-select-with-multi.cjs.entry.js.map +1 -0
  99. package/dist/cjs/ic-side-navigation.cjs.entry.js +53 -73
  100. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  101. package/dist/cjs/ic-skeleton.cjs.entry.js +16 -35
  102. package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
  103. package/dist/cjs/ic-status-tag.cjs.entry.js +4 -2
  104. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  105. package/dist/cjs/ic-step.cjs.entry.js +5 -2
  106. package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
  107. package/dist/cjs/ic-stepper.cjs.entry.js +31 -9
  108. package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
  109. package/dist/cjs/ic-switch.cjs.entry.js +7 -3
  110. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  111. package/dist/cjs/ic-tab-context.cjs.entry.js +78 -130
  112. package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
  113. package/dist/cjs/ic-tab-group.cjs.entry.js +1 -1
  114. package/dist/cjs/ic-tab-panel.cjs.entry.js +5 -13
  115. package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
  116. package/dist/cjs/ic-tab.cjs.entry.js +16 -14
  117. package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
  118. package/dist/cjs/ic-theme.cjs.entry.js +13 -22
  119. package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
  120. package/dist/cjs/ic-toast-region.cjs.entry.js +6 -0
  121. package/dist/cjs/ic-toast-region.cjs.entry.js.map +1 -1
  122. package/dist/cjs/ic-toast.cjs.entry.js +21 -18
  123. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
  124. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +201 -0
  125. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -0
  126. package/dist/cjs/ic-toggle-button.cjs.entry.js +97 -0
  127. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -0
  128. package/dist/cjs/ic-top-navigation.cjs.entry.js +60 -82
  129. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  130. package/dist/cjs/ic-tree-item.cjs.entry.js +253 -0
  131. package/dist/cjs/ic-tree-item.cjs.entry.js.map +1 -0
  132. package/dist/cjs/ic-tree-view.cjs.entry.js +215 -0
  133. package/dist/cjs/ic-tree-view.cjs.entry.js.map +1 -0
  134. package/dist/cjs/ic-typography.cjs.entry.js +51 -14
  135. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  136. package/dist/cjs/index-4cf27b16.js +48 -12
  137. package/dist/cjs/loader.cjs.js +1 -1
  138. package/dist/collection/assets/arrow-dropdown.svg +3 -0
  139. package/dist/collection/assets/calendar.svg +3 -0
  140. package/dist/collection/collection-manifest.json +11 -1
  141. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.css +658 -0
  142. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js +375 -0
  143. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js.map +1 -0
  144. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.stories.js +605 -0
  145. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.stories.js.map +1 -0
  146. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.types.js +2 -0
  147. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.types.js.map +1 -0
  148. package/dist/collection/components/ic-card-horizontal/test/basic/ic-card-horizontal.spec.js +140 -0
  149. package/dist/collection/components/ic-card-horizontal/test/basic/ic-card-horizontal.spec.js.map +1 -0
  150. package/dist/collection/components/ic-data-table/ic-data-table.css +286 -10
  151. package/dist/collection/components/ic-data-table/ic-data-table.js +1533 -123
  152. package/dist/collection/components/ic-data-table/ic-data-table.js.map +1 -1
  153. package/dist/collection/components/ic-data-table/ic-data-table.stories.js +414 -0
  154. package/dist/collection/components/ic-data-table/ic-data-table.stories.js.map +1 -0
  155. package/dist/collection/components/ic-data-table/ic-data-table.types.js.map +1 -1
  156. package/dist/collection/components/ic-data-table/story-data.js +1326 -43
  157. package/dist/collection/components/ic-data-table/story-data.js.map +1 -1
  158. package/dist/collection/components/ic-data-table/test/basic/ic-data-table.spec.js +460 -3
  159. package/dist/collection/components/ic-data-table/test/basic/ic-data-table.spec.js.map +1 -1
  160. package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.css +91 -0
  161. package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.js +160 -0
  162. package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.js.map +1 -0
  163. package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.stories.js +98 -0
  164. package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.stories.js.map +1 -0
  165. package/dist/collection/components/ic-data-table-title-bar/test/a11y/ic-data-table-title-bar.test.a11y.js +11 -0
  166. package/dist/collection/components/ic-data-table-title-bar/test/a11y/ic-data-table-title-bar.test.a11y.js.map +1 -0
  167. package/dist/collection/components/ic-data-table-title-bar/test/basic/ic-data-table-title-bar.spec.js +70 -0
  168. package/dist/collection/components/ic-data-table-title-bar/test/basic/ic-data-table-title-bar.spec.js.map +1 -0
  169. package/dist/collection/components/ic-date-input/ic-date-input.css +564 -0
  170. package/dist/collection/components/ic-date-input/ic-date-input.js +1808 -0
  171. package/dist/collection/components/ic-date-input/ic-date-input.js.map +1 -0
  172. package/dist/collection/components/ic-date-input/ic-date-input.stories.js +341 -0
  173. package/dist/collection/components/ic-date-input/ic-date-input.stories.js.map +1 -0
  174. package/dist/collection/components/ic-date-input/story-data.js +28 -0
  175. package/dist/collection/components/ic-date-input/story-data.js.map +1 -0
  176. package/dist/collection/components/ic-date-input/test/basic/ic-date-input.spec.js +1158 -0
  177. package/dist/collection/components/ic-date-input/test/basic/ic-date-input.spec.js.map +1 -0
  178. package/dist/collection/components/ic-date-input/test/helpers/ic-date-input.js +42 -0
  179. package/dist/collection/components/ic-date-input/test/helpers/ic-date-input.js.map +1 -0
  180. package/dist/collection/components/ic-date-picker/ic-date-picker.css +885 -0
  181. package/dist/collection/components/ic-date-picker/ic-date-picker.js +1688 -0
  182. package/dist/collection/components/ic-date-picker/ic-date-picker.js.map +1 -0
  183. package/dist/collection/components/ic-date-picker/ic-date-picker.stories.js +167 -0
  184. package/dist/collection/components/ic-date-picker/ic-date-picker.stories.js.map +1 -0
  185. package/dist/collection/components/ic-date-picker/ic-day-button.js +36 -0
  186. package/dist/collection/components/ic-date-picker/ic-day-button.js.map +1 -0
  187. package/dist/collection/components/ic-date-picker/ic-month-picker.js +29 -0
  188. package/dist/collection/components/ic-date-picker/ic-month-picker.js.map +1 -0
  189. package/dist/collection/components/ic-date-picker/ic-year-picker.js +39 -0
  190. package/dist/collection/components/ic-date-picker/ic-year-picker.js.map +1 -0
  191. package/dist/collection/components/ic-date-picker/story-data.js +179 -0
  192. package/dist/collection/components/ic-date-picker/story-data.js.map +1 -0
  193. package/dist/collection/components/ic-date-picker/test/a11y/ic-date-picker.test.a11y.js +13 -0
  194. package/dist/collection/components/ic-date-picker/test/a11y/ic-date-picker.test.a11y.js.map +1 -0
  195. package/dist/collection/components/ic-date-picker/test/basic/ic-date-picker-utils.spec.js +207 -0
  196. package/dist/collection/components/ic-date-picker/test/basic/ic-date-picker-utils.spec.js.map +1 -0
  197. package/dist/collection/components/ic-date-picker/test/basic/ic-date-picker.spec.js +1030 -0
  198. package/dist/collection/components/ic-date-picker/test/basic/ic-date-picker.spec.js.map +1 -0
  199. package/dist/collection/components/ic-menu-with-multi/ic-menu.css +701 -0
  200. package/dist/collection/components/ic-menu-with-multi/ic-menu.js +1599 -0
  201. package/dist/collection/components/ic-menu-with-multi/ic-menu.js.map +1 -0
  202. package/dist/collection/components/ic-menu-with-multi/test/basic/ic-menu.spec.js +1057 -0
  203. package/dist/collection/components/ic-menu-with-multi/test/basic/ic-menu.spec.js.map +1 -0
  204. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js +346 -166
  205. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js.map +1 -1
  206. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.stories.js +260 -0
  207. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.stories.js.map +1 -0
  208. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.types.js +2 -0
  209. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.types.js.map +1 -0
  210. package/dist/collection/components/ic-pagination-bar/test/a11y/ic-pagination-bar.test.a11y.js +8 -1
  211. package/dist/collection/components/ic-pagination-bar/test/a11y/ic-pagination-bar.test.a11y.js.map +1 -1
  212. package/dist/collection/components/ic-pagination-bar/test/basic/ic-pagination-bar.spec.js +75 -12
  213. package/dist/collection/components/ic-pagination-bar/test/basic/ic-pagination-bar.spec.js.map +1 -1
  214. package/dist/collection/components/ic-select-with-multi/assets/Check.svg +3 -0
  215. package/dist/collection/components/ic-select-with-multi/assets/Clear.svg +3 -0
  216. package/dist/collection/components/ic-select-with-multi/assets/Expand.svg +3 -0
  217. package/dist/collection/components/ic-select-with-multi/ic-select-multi.stories.js +144 -0
  218. package/dist/collection/components/ic-select-with-multi/ic-select-multi.stories.js.map +1 -0
  219. package/dist/collection/components/ic-select-with-multi/ic-select.css +693 -0
  220. package/dist/collection/components/ic-select-with-multi/ic-select.js +1649 -0
  221. package/dist/collection/components/ic-select-with-multi/ic-select.js.map +1 -0
  222. package/dist/collection/components/ic-select-with-multi/story-data.js +216 -0
  223. package/dist/collection/components/ic-select-with-multi/story-data.js.map +1 -0
  224. package/dist/collection/components/ic-select-with-multi/test/basic/ic-select.spec.js +1518 -0
  225. package/dist/collection/components/ic-select-with-multi/test/basic/ic-select.spec.js.map +1 -0
  226. package/dist/collection/components/ic-tree-item/ic-tree-item.css +186 -0
  227. package/dist/collection/components/ic-tree-item/ic-tree-item.js +620 -0
  228. package/dist/collection/components/ic-tree-item/ic-tree-item.js.map +1 -0
  229. package/dist/collection/components/ic-tree-item/test/basic/ic-tree-item.spec.js +117 -0
  230. package/dist/collection/components/ic-tree-item/test/basic/ic-tree-item.spec.js.map +1 -0
  231. package/dist/collection/components/ic-tree-view/ic-tree-view.css +74 -0
  232. package/dist/collection/components/ic-tree-view/ic-tree-view.js +346 -0
  233. package/dist/collection/components/ic-tree-view/ic-tree-view.js.map +1 -0
  234. package/dist/collection/components/ic-tree-view/ic-tree-view.stories.js +456 -0
  235. package/dist/collection/components/ic-tree-view/ic-tree-view.stories.js.map +1 -0
  236. package/dist/collection/components/ic-tree-view/test/basic/ic-tree-view.spec.js +85 -0
  237. package/dist/collection/components/ic-tree-view/test/basic/ic-tree-view.spec.js.map +1 -0
  238. package/dist/collection/utils/constants.js +83 -0
  239. package/dist/collection/utils/constants.js.map +1 -0
  240. package/dist/collection/utils/date-helpers.js +133 -0
  241. package/dist/collection/utils/date-helpers.js.map +1 -0
  242. package/dist/collection/utils/helpers.js +473 -5
  243. package/dist/collection/utils/helpers.js.map +1 -1
  244. package/dist/collection/utils/types.js +58 -0
  245. package/dist/collection/utils/types.js.map +1 -0
  246. package/dist/components/helpers.js +141 -98
  247. package/dist/components/helpers.js.map +1 -1
  248. package/dist/components/helpers2.js +403 -0
  249. package/dist/components/helpers2.js.map +1 -0
  250. package/dist/components/ic-accordion-group.js +38 -7
  251. package/dist/components/ic-accordion-group.js.map +1 -1
  252. package/dist/components/ic-accordion.js +12 -4
  253. package/dist/components/ic-accordion.js.map +1 -1
  254. package/dist/components/ic-alert2.js +21 -6
  255. package/dist/components/ic-alert2.js.map +1 -1
  256. package/dist/components/ic-back-to-top.js +34 -18
  257. package/dist/components/ic-back-to-top.js.map +1 -1
  258. package/dist/components/ic-badge.js +91 -84
  259. package/dist/components/ic-badge.js.map +1 -1
  260. package/dist/components/ic-breadcrumb-group.js +66 -25
  261. package/dist/components/ic-breadcrumb-group.js.map +1 -1
  262. package/dist/components/ic-breadcrumb2.js +2 -2
  263. package/dist/components/ic-breadcrumb2.js.map +1 -1
  264. package/dist/components/ic-button2.js +104 -74
  265. package/dist/components/ic-button2.js.map +1 -1
  266. package/dist/components/ic-card-horizontal.d.ts +11 -0
  267. package/dist/components/ic-card-horizontal.js +168 -0
  268. package/dist/components/ic-card-horizontal.js.map +1 -0
  269. package/dist/components/ic-card.js +34 -21
  270. package/dist/components/ic-card.js.map +1 -1
  271. package/dist/components/ic-checkbox-group.js +33 -18
  272. package/dist/components/ic-checkbox-group.js.map +1 -1
  273. package/dist/components/ic-checkbox.js +58 -33
  274. package/dist/components/ic-checkbox.js.map +1 -1
  275. package/dist/components/ic-chip.js +52 -23
  276. package/dist/components/ic-chip.js.map +1 -1
  277. package/dist/components/ic-classification-banner.js +14 -5
  278. package/dist/components/ic-classification-banner.js.map +1 -1
  279. package/dist/components/ic-data-entity.js +3 -6
  280. package/dist/components/ic-data-entity.js.map +1 -1
  281. package/dist/components/ic-data-row.js +21 -35
  282. package/dist/components/ic-data-row.js.map +1 -1
  283. package/dist/components/ic-data-table-title-bar.d.ts +11 -0
  284. package/dist/components/ic-data-table-title-bar.js +136 -0
  285. package/dist/components/ic-data-table-title-bar.js.map +1 -0
  286. package/dist/components/ic-data-table.js +1119 -91
  287. package/dist/components/ic-data-table.js.map +1 -1
  288. package/dist/components/ic-date-input.d.ts +11 -0
  289. package/dist/components/ic-date-input.js +8 -0
  290. package/dist/components/ic-date-input.js.map +1 -0
  291. package/dist/components/ic-date-input2.js +1359 -0
  292. package/dist/components/ic-date-input2.js.map +1 -0
  293. package/dist/components/ic-date-picker.d.ts +11 -0
  294. package/dist/components/ic-date-picker.js +1258 -0
  295. package/dist/components/ic-date-picker.js.map +1 -0
  296. package/dist/components/ic-dialog.js +55 -12
  297. package/dist/components/ic-dialog.js.map +1 -1
  298. package/dist/components/ic-divider2.js +1 -1
  299. package/dist/components/ic-empty-state.js +1 -57
  300. package/dist/components/ic-empty-state.js.map +1 -1
  301. package/dist/{esm/ic-empty-state.entry.js → components/ic-empty-state2.js} +47 -11
  302. package/dist/components/ic-empty-state2.js.map +1 -0
  303. package/dist/components/ic-footer-link-group.js +4 -4
  304. package/dist/components/ic-footer-link-group.js.map +1 -1
  305. package/dist/components/ic-footer-link.js +3 -3
  306. package/dist/components/ic-footer-link.js.map +1 -1
  307. package/dist/components/ic-footer.js +18 -7
  308. package/dist/components/ic-footer.js.map +1 -1
  309. package/dist/components/ic-hero.js +12 -2
  310. package/dist/components/ic-hero.js.map +1 -1
  311. package/dist/components/ic-horizontal-scroll2.js +5 -5
  312. package/dist/components/ic-horizontal-scroll2.js.map +1 -1
  313. package/dist/components/ic-input-component-container2.js +24 -8
  314. package/dist/components/ic-input-component-container2.js.map +1 -1
  315. package/dist/components/ic-input-label2.js +7 -5
  316. package/dist/components/ic-input-label2.js.map +1 -1
  317. package/dist/components/ic-input-validation2.js +1 -1
  318. package/dist/components/ic-link2.js +35 -17
  319. package/dist/components/ic-link2.js.map +1 -1
  320. package/dist/components/ic-loading-indicator2.js +2 -2
  321. package/dist/components/ic-loading-indicator2.js.map +1 -1
  322. package/dist/components/ic-menu-group.js +2 -2
  323. package/dist/components/ic-menu-group.js.map +1 -1
  324. package/dist/components/ic-menu-item2.js +26 -23
  325. package/dist/components/ic-menu-item2.js.map +1 -1
  326. package/dist/components/ic-menu-with-multi.d.ts +11 -0
  327. package/dist/components/ic-menu-with-multi.js +8 -0
  328. package/dist/components/ic-menu-with-multi.js.map +1 -0
  329. package/dist/components/ic-menu2.js +14 -14
  330. package/dist/components/ic-menu2.js.map +1 -1
  331. package/dist/components/ic-menu3.js +2806 -0
  332. package/dist/components/ic-menu3.js.map +1 -0
  333. package/dist/components/ic-navigation-button.js +29 -8
  334. package/dist/components/ic-navigation-button.js.map +1 -1
  335. package/dist/components/ic-navigation-group.js +34 -24
  336. package/dist/components/ic-navigation-group.js.map +1 -1
  337. package/dist/components/ic-navigation-item.js +84 -37
  338. package/dist/components/ic-navigation-item.js.map +1 -1
  339. package/dist/components/ic-navigation-menu2.js +1 -1
  340. package/dist/components/ic-page-header.js +10 -10
  341. package/dist/components/ic-page-header.js.map +1 -1
  342. package/dist/components/ic-pagination-bar2.js +244 -161
  343. package/dist/components/ic-pagination-bar2.js.map +1 -1
  344. package/dist/components/ic-pagination-item2.js +27 -12
  345. package/dist/components/ic-pagination-item2.js.map +1 -1
  346. package/dist/components/ic-pagination2.js +30 -10
  347. package/dist/components/ic-pagination2.js.map +1 -1
  348. package/dist/components/ic-popover-menu.js +43 -38
  349. package/dist/components/ic-popover-menu.js.map +1 -1
  350. package/dist/components/ic-radio-group.js +101 -59
  351. package/dist/components/ic-radio-group.js.map +1 -1
  352. package/dist/components/ic-radio-option.js +63 -44
  353. package/dist/components/ic-radio-option.js.map +1 -1
  354. package/dist/components/ic-search-bar.js +23 -30
  355. package/dist/components/ic-search-bar.js.map +1 -1
  356. package/dist/components/ic-section-container2.js +1 -1
  357. package/dist/components/ic-section-container2.js.map +1 -1
  358. package/dist/components/ic-select-with-multi.d.ts +11 -0
  359. package/dist/components/ic-select-with-multi.js +921 -0
  360. package/dist/components/ic-select-with-multi.js.map +1 -0
  361. package/dist/components/ic-select2.js +77 -30
  362. package/dist/components/ic-select2.js.map +1 -1
  363. package/dist/components/ic-side-navigation.js +56 -74
  364. package/dist/components/ic-side-navigation.js.map +1 -1
  365. package/dist/components/ic-skeleton.js +17 -40
  366. package/dist/components/ic-skeleton.js.map +1 -1
  367. package/dist/components/ic-status-tag.js +3 -1
  368. package/dist/components/ic-status-tag.js.map +1 -1
  369. package/dist/components/ic-step.js +5 -2
  370. package/dist/components/ic-step.js.map +1 -1
  371. package/dist/components/ic-stepper.js +35 -9
  372. package/dist/components/ic-stepper.js.map +1 -1
  373. package/dist/components/ic-switch.js +9 -4
  374. package/dist/components/ic-switch.js.map +1 -1
  375. package/dist/components/ic-tab-context.js +79 -130
  376. package/dist/components/ic-tab-context.js.map +1 -1
  377. package/dist/components/ic-tab-panel.js +6 -17
  378. package/dist/components/ic-tab-panel.js.map +1 -1
  379. package/dist/components/ic-tab.js +16 -14
  380. package/dist/components/ic-tab.js.map +1 -1
  381. package/dist/components/ic-text-field2.js +120 -72
  382. package/dist/components/ic-text-field2.js.map +1 -1
  383. package/dist/components/ic-theme.js +13 -22
  384. package/dist/components/ic-theme.js.map +1 -1
  385. package/dist/components/ic-toast-region.js +6 -0
  386. package/dist/components/ic-toast-region.js.map +1 -1
  387. package/dist/components/ic-toast.js +24 -19
  388. package/dist/components/ic-toast.js.map +1 -1
  389. package/dist/components/ic-toggle-button-group.js +230 -0
  390. package/dist/components/ic-toggle-button-group.js.map +1 -0
  391. package/dist/components/ic-toggle-button.js +148 -0
  392. package/dist/components/ic-toggle-button.js.map +1 -0
  393. package/dist/components/ic-tooltip2.js +52 -30
  394. package/dist/components/ic-tooltip2.js.map +1 -1
  395. package/dist/components/ic-top-navigation.js +61 -83
  396. package/dist/components/ic-top-navigation.js.map +1 -1
  397. package/dist/components/ic-tree-item.d.ts +11 -0
  398. package/dist/components/ic-tree-item.js +300 -0
  399. package/dist/components/ic-tree-item.js.map +1 -0
  400. package/dist/components/ic-tree-view.d.ts +11 -0
  401. package/dist/components/ic-tree-view.js +252 -0
  402. package/dist/components/ic-tree-view.js.map +1 -0
  403. package/dist/components/ic-typography2.js +57 -17
  404. package/dist/components/ic-typography2.js.map +1 -1
  405. package/dist/core/core.css +8 -5
  406. package/dist/core/core.esm.js +1 -1
  407. package/dist/core/core.esm.js.map +1 -1
  408. package/dist/core/p-0229eb46.entry.js +2 -0
  409. package/dist/core/p-0229eb46.entry.js.map +1 -0
  410. package/dist/core/p-04fe848d.entry.js +2 -0
  411. package/dist/core/p-04fe848d.entry.js.map +1 -0
  412. package/dist/core/p-05ae9a59.entry.js +2 -0
  413. package/dist/core/p-05ae9a59.entry.js.map +1 -0
  414. package/dist/core/p-074e64d0.entry.js +2 -0
  415. package/dist/core/p-074e64d0.entry.js.map +1 -0
  416. package/dist/core/p-0f1706e8.entry.js +2 -0
  417. package/dist/core/p-0f1706e8.entry.js.map +1 -0
  418. package/dist/core/p-11877d23.entry.js +2 -0
  419. package/dist/core/p-11877d23.entry.js.map +1 -0
  420. package/dist/core/p-1e450833.entry.js +2 -0
  421. package/dist/core/p-1e450833.entry.js.map +1 -0
  422. package/dist/core/{p-4409f656.entry.js → p-23408776.entry.js} +2 -2
  423. package/dist/core/p-23408776.entry.js.map +1 -0
  424. package/dist/core/p-26fa17fb.entry.js +2 -0
  425. package/dist/core/p-26fa17fb.entry.js.map +1 -0
  426. package/dist/core/p-2b15ea77.entry.js +2 -0
  427. package/dist/core/p-2b15ea77.entry.js.map +1 -0
  428. package/dist/core/p-2d44b81a.entry.js +2 -0
  429. package/dist/core/p-2d44b81a.entry.js.map +1 -0
  430. package/dist/core/p-2ea7af8b.entry.js +2 -0
  431. package/dist/core/p-2ea7af8b.entry.js.map +1 -0
  432. package/dist/core/p-33dd24eb.js +2 -0
  433. package/dist/core/p-33dd24eb.js.map +1 -0
  434. package/dist/core/p-38f329ab.entry.js +2 -0
  435. package/dist/core/p-38f329ab.entry.js.map +1 -0
  436. package/dist/core/p-3cd2056f.entry.js +2 -0
  437. package/dist/core/p-3cd2056f.entry.js.map +1 -0
  438. package/dist/core/p-3d00ad9e.entry.js +2 -0
  439. package/dist/core/p-3d00ad9e.entry.js.map +1 -0
  440. package/dist/core/p-3ebd4703.entry.js +2 -0
  441. package/dist/core/p-3ebd4703.entry.js.map +1 -0
  442. package/dist/core/p-44036532.entry.js +2 -0
  443. package/dist/core/p-44036532.entry.js.map +1 -0
  444. package/dist/core/p-44680720.entry.js +2 -0
  445. package/dist/core/p-44680720.entry.js.map +1 -0
  446. package/dist/core/{p-24945ee5.entry.js → p-452985d9.entry.js} +2 -2
  447. package/dist/core/p-452985d9.entry.js.map +1 -0
  448. package/dist/core/{p-b97dc365.entry.js → p-487fd924.entry.js} +2 -2
  449. package/dist/core/p-56db5123.entry.js +2 -0
  450. package/dist/core/p-56db5123.entry.js.map +1 -0
  451. package/dist/core/p-5a90eaa8.entry.js +2 -0
  452. package/dist/core/p-5a90eaa8.entry.js.map +1 -0
  453. package/dist/core/p-5dd6381a.entry.js +2 -0
  454. package/dist/core/p-5dd6381a.entry.js.map +1 -0
  455. package/dist/core/p-5f149106.entry.js +2 -0
  456. package/dist/core/p-5f149106.entry.js.map +1 -0
  457. package/dist/core/p-61848e6b.entry.js +2 -0
  458. package/dist/core/p-61848e6b.entry.js.map +1 -0
  459. package/dist/core/{p-d77960f6.entry.js → p-656378ba.entry.js} +2 -2
  460. package/dist/core/p-6a920114.entry.js +2 -0
  461. package/dist/core/p-6a920114.entry.js.map +1 -0
  462. package/dist/core/p-6cdf5de2.entry.js +2 -0
  463. package/dist/core/p-6cdf5de2.entry.js.map +1 -0
  464. package/dist/core/p-70ad364c.entry.js +2 -0
  465. package/dist/core/p-70ad364c.entry.js.map +1 -0
  466. package/dist/core/p-70c659ec.entry.js +2 -0
  467. package/dist/core/p-70c659ec.entry.js.map +1 -0
  468. package/dist/core/p-74b42302.entry.js +2 -0
  469. package/dist/core/p-74b42302.entry.js.map +1 -0
  470. package/dist/core/p-75bd12f8.entry.js +2 -0
  471. package/dist/core/p-75bd12f8.entry.js.map +1 -0
  472. package/dist/core/p-780294b8.entry.js +2 -0
  473. package/dist/core/p-780294b8.entry.js.map +1 -0
  474. package/dist/core/{p-baf81f30.entry.js → p-787ffd96.entry.js} +2 -2
  475. package/dist/core/p-787ffd96.entry.js.map +1 -0
  476. package/dist/core/p-7edc19be.entry.js +2 -0
  477. package/dist/core/p-7edc19be.entry.js.map +1 -0
  478. package/dist/core/p-8ab58daa.js +2 -0
  479. package/dist/core/p-8ab58daa.js.map +1 -0
  480. package/dist/core/p-8ced1495.entry.js +2 -0
  481. package/dist/core/p-8ced1495.entry.js.map +1 -0
  482. package/dist/core/{p-939baa93.entry.js → p-95545b4c.entry.js} +2 -2
  483. package/dist/core/p-95545b4c.entry.js.map +1 -0
  484. package/dist/core/p-95d057b8.entry.js +2 -0
  485. package/dist/core/p-95d057b8.entry.js.map +1 -0
  486. package/dist/core/p-987cd821.entry.js +2 -0
  487. package/dist/core/p-987cd821.entry.js.map +1 -0
  488. package/dist/core/{p-41aa0ed3.entry.js → p-9b386822.entry.js} +2 -2
  489. package/dist/core/p-9b386822.entry.js.map +1 -0
  490. package/dist/core/{p-39e20b87.entry.js → p-9bbe221f.entry.js} +2 -2
  491. package/dist/core/{p-39e20b87.entry.js.map → p-9bbe221f.entry.js.map} +1 -1
  492. package/dist/core/p-9f157649.entry.js +2 -0
  493. package/dist/core/p-9f157649.entry.js.map +1 -0
  494. package/dist/core/{p-356b8a4c.entry.js → p-9f3cf053.entry.js} +2 -2
  495. package/dist/core/{p-356b8a4c.entry.js.map → p-9f3cf053.entry.js.map} +1 -1
  496. package/dist/core/p-9f58998d.entry.js +2 -0
  497. package/dist/core/p-9f58998d.entry.js.map +1 -0
  498. package/dist/core/p-a4f28ef1.entry.js +2 -0
  499. package/dist/core/p-a4f28ef1.entry.js.map +1 -0
  500. package/dist/core/p-ac8090a5.entry.js +2 -0
  501. package/dist/core/p-ac8090a5.entry.js.map +1 -0
  502. package/dist/core/p-b1f89f44.entry.js +2 -0
  503. package/dist/core/p-b1f89f44.entry.js.map +1 -0
  504. package/dist/core/p-bc350ec5.entry.js +2 -0
  505. package/dist/core/p-bc350ec5.entry.js.map +1 -0
  506. package/dist/core/p-bd0328f3.entry.js +2 -0
  507. package/dist/core/p-bd0328f3.entry.js.map +1 -0
  508. package/dist/core/p-bf06977d.js +2 -0
  509. package/dist/core/p-bf06977d.js.map +1 -0
  510. package/dist/core/p-c0a2a040.entry.js +2 -0
  511. package/dist/core/p-c0a2a040.entry.js.map +1 -0
  512. package/dist/core/p-cc0e0b46.entry.js +2 -0
  513. package/dist/core/p-cc0e0b46.entry.js.map +1 -0
  514. package/dist/core/p-d0020f6f.entry.js +2 -0
  515. package/dist/core/p-d0020f6f.entry.js.map +1 -0
  516. package/dist/core/{p-3d618bc2.entry.js → p-d1045cd5.entry.js} +2 -2
  517. package/dist/core/p-d56248df.entry.js +2 -0
  518. package/dist/core/p-d56248df.entry.js.map +1 -0
  519. package/dist/core/p-d921dc2c.entry.js +2 -0
  520. package/dist/core/p-d921dc2c.entry.js.map +1 -0
  521. package/dist/core/p-da398a5d.entry.js +2 -0
  522. package/dist/core/p-da398a5d.entry.js.map +1 -0
  523. package/dist/core/{p-2e9e8e7c.entry.js → p-db5af9f7.entry.js} +2 -2
  524. package/dist/core/p-db5af9f7.entry.js.map +1 -0
  525. package/dist/core/p-dd4c83ad.entry.js +2 -0
  526. package/dist/core/p-dd4c83ad.entry.js.map +1 -0
  527. package/dist/core/p-e362b5f3.entry.js +2 -0
  528. package/dist/core/p-e362b5f3.entry.js.map +1 -0
  529. package/dist/core/p-e89c2feb.entry.js +2 -0
  530. package/dist/core/p-e89c2feb.entry.js.map +1 -0
  531. package/dist/core/p-eaeaa096.entry.js +2 -0
  532. package/dist/core/p-eaeaa096.entry.js.map +1 -0
  533. package/dist/core/{p-c2b5e7b1.entry.js → p-eb87b43b.entry.js} +2 -2
  534. package/dist/core/{p-c2b5e7b1.entry.js.map → p-eb87b43b.entry.js.map} +1 -1
  535. package/dist/core/p-f5dfcf4f.entry.js +2 -0
  536. package/dist/core/p-f5dfcf4f.entry.js.map +1 -0
  537. package/dist/core/p-f5fbfbc9.entry.js +2 -0
  538. package/dist/core/p-f5fbfbc9.entry.js.map +1 -0
  539. package/dist/core/p-fac387e8.entry.js +2 -0
  540. package/dist/core/p-fac387e8.entry.js.map +1 -0
  541. package/dist/esm/core.js +1 -1
  542. package/dist/esm/date-helpers-0e5e32a7.js +136 -0
  543. package/dist/esm/date-helpers-0e5e32a7.js.map +1 -0
  544. package/dist/esm/helpers-948df101.js +403 -0
  545. package/dist/esm/helpers-948df101.js.map +1 -0
  546. package/dist/esm/{helpers-268c2b7f.js → helpers-cd64688a.js} +142 -99
  547. package/dist/esm/helpers-cd64688a.js.map +1 -0
  548. package/dist/esm/ic-accordion-group.entry.js +31 -4
  549. package/dist/esm/ic-accordion-group.entry.js.map +1 -1
  550. package/dist/esm/ic-accordion.entry.js +11 -4
  551. package/dist/esm/ic-accordion.entry.js.map +1 -1
  552. package/dist/esm/ic-alert.entry.js +20 -6
  553. package/dist/esm/ic-alert.entry.js.map +1 -1
  554. package/dist/esm/ic-back-to-top.entry.js +26 -17
  555. package/dist/esm/ic-back-to-top.entry.js.map +1 -1
  556. package/dist/esm/ic-badge.entry.js +86 -83
  557. package/dist/esm/ic-badge.entry.js.map +1 -1
  558. package/dist/esm/ic-breadcrumb-group.entry.js +62 -25
  559. package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
  560. package/dist/esm/ic-breadcrumb.entry.js +2 -2
  561. package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
  562. package/dist/esm/ic-button_3.entry.js +145 -103
  563. package/dist/esm/ic-button_3.entry.js.map +1 -1
  564. package/dist/esm/ic-card-horizontal.entry.js +126 -0
  565. package/dist/esm/ic-card-horizontal.entry.js.map +1 -0
  566. package/dist/esm/ic-card.entry.js +30 -7
  567. package/dist/esm/ic-card.entry.js.map +1 -1
  568. package/dist/esm/ic-checkbox-group.entry.js +28 -17
  569. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  570. package/dist/esm/ic-checkbox.entry.js +50 -31
  571. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  572. package/dist/esm/ic-chip.entry.js +45 -21
  573. package/dist/esm/ic-chip.entry.js.map +1 -1
  574. package/dist/esm/ic-classification-banner.entry.js +14 -5
  575. package/dist/esm/ic-classification-banner.entry.js.map +1 -1
  576. package/dist/esm/ic-data-entity.entry.js +3 -6
  577. package/dist/esm/ic-data-entity.entry.js.map +1 -1
  578. package/dist/esm/ic-data-row.entry.js +21 -35
  579. package/dist/esm/ic-data-row.entry.js.map +1 -1
  580. package/dist/esm/ic-data-table-title-bar.entry.js +53 -0
  581. package/dist/esm/ic-data-table-title-bar.entry.js.map +1 -0
  582. package/dist/esm/ic-data-table.entry.js +1080 -85
  583. package/dist/esm/ic-data-table.entry.js.map +1 -1
  584. package/dist/esm/ic-date-input.entry.js +1119 -0
  585. package/dist/esm/ic-date-input.entry.js.map +1 -0
  586. package/dist/esm/ic-date-picker.entry.js +1125 -0
  587. package/dist/esm/ic-date-picker.entry.js.map +1 -0
  588. package/dist/esm/ic-dialog.entry.js +54 -12
  589. package/dist/esm/ic-dialog.entry.js.map +1 -1
  590. package/dist/esm/ic-divider.entry.js +1 -1
  591. package/dist/esm/ic-empty-state_2.entry.js +383 -0
  592. package/dist/esm/ic-empty-state_2.entry.js.map +1 -0
  593. package/dist/esm/ic-footer-link-group.entry.js +4 -4
  594. package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
  595. package/dist/esm/ic-footer-link.entry.js +3 -3
  596. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  597. package/dist/esm/ic-footer.entry.js +18 -7
  598. package/dist/esm/ic-footer.entry.js.map +1 -1
  599. package/dist/esm/ic-hero.entry.js +12 -2
  600. package/dist/esm/ic-hero.entry.js.map +1 -1
  601. package/dist/esm/ic-horizontal-scroll.entry.js +5 -5
  602. package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
  603. package/dist/esm/ic-input-component-container_4.entry.js +157 -0
  604. package/dist/esm/ic-input-component-container_4.entry.js.map +1 -0
  605. package/dist/esm/ic-link.entry.js +35 -17
  606. package/dist/esm/ic-link.entry.js.map +1 -1
  607. package/dist/esm/ic-menu-group.entry.js +2 -2
  608. package/dist/esm/ic-menu-group.entry.js.map +1 -1
  609. package/dist/esm/ic-menu-item.entry.js +21 -20
  610. package/dist/esm/ic-menu-item.entry.js.map +1 -1
  611. package/dist/esm/ic-menu-with-multi.entry.js +2736 -0
  612. package/dist/esm/ic-menu-with-multi.entry.js.map +1 -0
  613. package/dist/esm/{ic-input-component-container_3.entry.js → ic-menu.entry.js} +19 -80
  614. package/dist/esm/ic-menu.entry.js.map +1 -0
  615. package/dist/esm/ic-navigation-button.entry.js +29 -8
  616. package/dist/esm/ic-navigation-button.entry.js.map +1 -1
  617. package/dist/esm/ic-navigation-group.entry.js +33 -23
  618. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  619. package/dist/esm/ic-navigation-item.entry.js +83 -37
  620. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  621. package/dist/esm/ic-navigation-menu.entry.js +1 -1
  622. package/dist/esm/ic-page-header.entry.js +10 -10
  623. package/dist/esm/ic-page-header.entry.js.map +1 -1
  624. package/dist/esm/ic-pagination_4.entry.js +232 -117
  625. package/dist/esm/ic-pagination_4.entry.js.map +1 -1
  626. package/dist/esm/ic-popover-menu.entry.js +40 -36
  627. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  628. package/dist/esm/ic-radio-group.entry.js +100 -59
  629. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  630. package/dist/esm/ic-radio-option.entry.js +59 -42
  631. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  632. package/dist/esm/ic-search-bar.entry.js +22 -30
  633. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  634. package/dist/esm/ic-section-container.entry.js +1 -1
  635. package/dist/esm/ic-section-container.entry.js.map +1 -1
  636. package/dist/esm/ic-select-with-multi.entry.js +792 -0
  637. package/dist/esm/ic-select-with-multi.entry.js.map +1 -0
  638. package/dist/esm/ic-side-navigation.entry.js +53 -73
  639. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  640. package/dist/esm/ic-skeleton.entry.js +16 -35
  641. package/dist/esm/ic-skeleton.entry.js.map +1 -1
  642. package/dist/esm/ic-status-tag.entry.js +4 -2
  643. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  644. package/dist/esm/ic-step.entry.js +5 -2
  645. package/dist/esm/ic-step.entry.js.map +1 -1
  646. package/dist/esm/ic-stepper.entry.js +31 -9
  647. package/dist/esm/ic-stepper.entry.js.map +1 -1
  648. package/dist/esm/ic-switch.entry.js +7 -3
  649. package/dist/esm/ic-switch.entry.js.map +1 -1
  650. package/dist/esm/ic-tab-context.entry.js +78 -130
  651. package/dist/esm/ic-tab-context.entry.js.map +1 -1
  652. package/dist/esm/ic-tab-group.entry.js +1 -1
  653. package/dist/esm/ic-tab-panel.entry.js +5 -13
  654. package/dist/esm/ic-tab-panel.entry.js.map +1 -1
  655. package/dist/esm/ic-tab.entry.js +16 -14
  656. package/dist/esm/ic-tab.entry.js.map +1 -1
  657. package/dist/esm/ic-theme.entry.js +13 -22
  658. package/dist/esm/ic-theme.entry.js.map +1 -1
  659. package/dist/esm/ic-toast-region.entry.js +6 -0
  660. package/dist/esm/ic-toast-region.entry.js.map +1 -1
  661. package/dist/esm/ic-toast.entry.js +21 -18
  662. package/dist/esm/ic-toast.entry.js.map +1 -1
  663. package/dist/esm/ic-toggle-button-group.entry.js +197 -0
  664. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -0
  665. package/dist/esm/ic-toggle-button.entry.js +93 -0
  666. package/dist/esm/ic-toggle-button.entry.js.map +1 -0
  667. package/dist/esm/ic-top-navigation.entry.js +60 -82
  668. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  669. package/dist/esm/ic-tree-item.entry.js +249 -0
  670. package/dist/esm/ic-tree-item.entry.js.map +1 -0
  671. package/dist/esm/ic-tree-view.entry.js +211 -0
  672. package/dist/esm/ic-tree-view.entry.js.map +1 -0
  673. package/dist/esm/ic-typography.entry.js +52 -15
  674. package/dist/esm/ic-typography.entry.js.map +1 -1
  675. package/dist/esm/index-93509377.js +48 -12
  676. package/dist/esm/loader.js +1 -1
  677. package/dist/types/components/ic-card-horizontal/ic-card-horizontal.d.ts +71 -0
  678. package/dist/types/components/ic-card-horizontal/ic-card-horizontal.stories.d.ts +82 -0
  679. package/dist/types/components/ic-card-horizontal/ic-card-horizontal.types.d.ts +1 -0
  680. package/dist/types/components/ic-data-table/ic-data-table.d.ts +218 -19
  681. package/dist/types/components/ic-data-table/ic-data-table.stories.d.ts +239 -0
  682. package/dist/types/components/ic-data-table/ic-data-table.types.d.ts +43 -0
  683. package/dist/types/components/ic-data-table/story-data.d.ts +492 -2
  684. package/dist/types/components/ic-data-table-title-bar/ic-data-table-title-bar.d.ts +36 -0
  685. package/dist/types/components/ic-data-table-title-bar/ic-data-table-title-bar.stories.d.ts +47 -0
  686. package/dist/types/components/ic-data-table-title-bar/test/a11y/ic-data-table-title-bar.test.a11y.d.ts +1 -0
  687. package/dist/types/components/ic-date-input/ic-date-input.d.ts +264 -0
  688. package/dist/types/components/ic-date-input/ic-date-input.stories.d.ts +124 -0
  689. package/dist/types/components/ic-date-input/story-data.d.ts +1 -0
  690. package/dist/types/components/ic-date-input/test/helpers/ic-date-input.d.ts +23 -0
  691. package/dist/types/components/ic-date-picker/ic-date-picker.d.ts +262 -0
  692. package/dist/types/components/ic-date-picker/ic-date-picker.stories.d.ts +153 -0
  693. package/dist/types/components/ic-date-picker/ic-day-button.d.ts +16 -0
  694. package/dist/types/components/ic-date-picker/ic-month-picker.d.ts +14 -0
  695. package/dist/types/components/ic-date-picker/ic-year-picker.d.ts +16 -0
  696. package/dist/types/components/ic-date-picker/story-data.d.ts +24 -0
  697. package/dist/types/components/ic-date-picker/test/a11y/ic-date-picker.test.a11y.d.ts +1 -0
  698. package/dist/types/components/ic-menu-with-multi/ic-menu.d.ts +218 -0
  699. package/dist/types/components/ic-pagination-bar/ic-pagination-bar.d.ts +65 -23
  700. package/dist/types/components/ic-pagination-bar/ic-pagination-bar.stories.d.ts +106 -0
  701. package/dist/types/components/ic-pagination-bar/ic-pagination-bar.types.d.ts +4 -0
  702. package/dist/types/components/ic-select-with-multi/ic-select-multi.stories.d.ts +106 -0
  703. package/dist/types/components/ic-select-with-multi/ic-select.d.ts +289 -0
  704. package/dist/types/components/ic-select-with-multi/story-data.d.ts +32 -0
  705. package/dist/types/components/ic-tree-item/ic-tree-item.d.ts +101 -0
  706. package/dist/types/components/ic-tree-view/ic-tree-view.d.ts +51 -0
  707. package/dist/types/components/ic-tree-view/ic-tree-view.stories.d.ts +99 -0
  708. package/dist/types/components.d.ts +1711 -127
  709. package/dist/types/interface.d.ts +1 -0
  710. package/dist/types/utils/constants.d.ts +38 -0
  711. package/dist/types/utils/date-helpers.d.ts +22 -0
  712. package/dist/types/utils/helpers.d.ts +144 -2
  713. package/dist/types/utils/types.d.ts +126 -0
  714. package/hydrate/index.js +18298 -9132
  715. package/package.json +27 -17
  716. package/dist/cjs/helpers-bbe55215.js.map +0 -1
  717. package/dist/cjs/ic-empty-state.cjs.entry.js +0 -38
  718. package/dist/cjs/ic-empty-state.cjs.entry.js.map +0 -1
  719. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +0 -1
  720. package/dist/cjs/ic-input-label_2.cjs.entry.js +0 -86
  721. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +0 -1
  722. package/dist/cjs/ic-pagination-bar.cjs.entry.js +0 -285
  723. package/dist/cjs/ic-pagination-bar.cjs.entry.js.map +0 -1
  724. package/dist/collection/components/ic-pagination/ic-pagination.types.js +0 -2
  725. package/dist/collection/components/ic-pagination/ic-pagination.types.js.map +0 -1
  726. package/dist/core/p-0083465b.entry.js +0 -2
  727. package/dist/core/p-0083465b.entry.js.map +0 -1
  728. package/dist/core/p-03487f12.entry.js +0 -2
  729. package/dist/core/p-03487f12.entry.js.map +0 -1
  730. package/dist/core/p-03f8fa1a.entry.js +0 -2
  731. package/dist/core/p-03f8fa1a.entry.js.map +0 -1
  732. package/dist/core/p-0c18b6a0.entry.js +0 -2
  733. package/dist/core/p-0c18b6a0.entry.js.map +0 -1
  734. package/dist/core/p-1bc034aa.entry.js +0 -2
  735. package/dist/core/p-1bc034aa.entry.js.map +0 -1
  736. package/dist/core/p-20a76d1d.entry.js +0 -2
  737. package/dist/core/p-20a76d1d.entry.js.map +0 -1
  738. package/dist/core/p-24945ee5.entry.js.map +0 -1
  739. package/dist/core/p-2dc35696.entry.js +0 -2
  740. package/dist/core/p-2dc35696.entry.js.map +0 -1
  741. package/dist/core/p-2e9e8e7c.entry.js.map +0 -1
  742. package/dist/core/p-3ee25a6d.entry.js +0 -2
  743. package/dist/core/p-3ee25a6d.entry.js.map +0 -1
  744. package/dist/core/p-41aa0ed3.entry.js.map +0 -1
  745. package/dist/core/p-4314aa0e.entry.js +0 -2
  746. package/dist/core/p-4314aa0e.entry.js.map +0 -1
  747. package/dist/core/p-4409f656.entry.js.map +0 -1
  748. package/dist/core/p-47abbd06.entry.js +0 -2
  749. package/dist/core/p-47abbd06.entry.js.map +0 -1
  750. package/dist/core/p-485823b6.entry.js +0 -2
  751. package/dist/core/p-485823b6.entry.js.map +0 -1
  752. package/dist/core/p-4ee59448.entry.js +0 -2
  753. package/dist/core/p-4ee59448.entry.js.map +0 -1
  754. package/dist/core/p-5157cfab.entry.js +0 -2
  755. package/dist/core/p-5157cfab.entry.js.map +0 -1
  756. package/dist/core/p-53083575.entry.js +0 -2
  757. package/dist/core/p-53083575.entry.js.map +0 -1
  758. package/dist/core/p-55d5541f.entry.js +0 -2
  759. package/dist/core/p-55d5541f.entry.js.map +0 -1
  760. package/dist/core/p-5bb32ee6.entry.js +0 -2
  761. package/dist/core/p-5bb32ee6.entry.js.map +0 -1
  762. package/dist/core/p-67eea079.entry.js +0 -2
  763. package/dist/core/p-67eea079.entry.js.map +0 -1
  764. package/dist/core/p-6bd0e984.entry.js +0 -2
  765. package/dist/core/p-6bd0e984.entry.js.map +0 -1
  766. package/dist/core/p-75bf6162.entry.js +0 -2
  767. package/dist/core/p-75bf6162.entry.js.map +0 -1
  768. package/dist/core/p-76959313.entry.js +0 -2
  769. package/dist/core/p-76959313.entry.js.map +0 -1
  770. package/dist/core/p-7de813a3.entry.js +0 -2
  771. package/dist/core/p-7de813a3.entry.js.map +0 -1
  772. package/dist/core/p-7eae5f70.entry.js +0 -2
  773. package/dist/core/p-7eae5f70.entry.js.map +0 -1
  774. package/dist/core/p-85508347.entry.js +0 -2
  775. package/dist/core/p-85508347.entry.js.map +0 -1
  776. package/dist/core/p-8da152c4.entry.js +0 -2
  777. package/dist/core/p-8da152c4.entry.js.map +0 -1
  778. package/dist/core/p-8fd4ca0a.js +0 -2
  779. package/dist/core/p-8fd4ca0a.js.map +0 -1
  780. package/dist/core/p-939baa93.entry.js.map +0 -1
  781. package/dist/core/p-9777ebb1.entry.js +0 -2
  782. package/dist/core/p-9777ebb1.entry.js.map +0 -1
  783. package/dist/core/p-9c27b73e.entry.js +0 -2
  784. package/dist/core/p-9c27b73e.entry.js.map +0 -1
  785. package/dist/core/p-9fa6844f.entry.js +0 -2
  786. package/dist/core/p-9fa6844f.entry.js.map +0 -1
  787. package/dist/core/p-9fdd7d73.entry.js +0 -2
  788. package/dist/core/p-9fdd7d73.entry.js.map +0 -1
  789. package/dist/core/p-a3ab9f4c.entry.js +0 -2
  790. package/dist/core/p-a3ab9f4c.entry.js.map +0 -1
  791. package/dist/core/p-a51e5c7c.entry.js +0 -2
  792. package/dist/core/p-a51e5c7c.entry.js.map +0 -1
  793. package/dist/core/p-a7481232.entry.js +0 -2
  794. package/dist/core/p-a7481232.entry.js.map +0 -1
  795. package/dist/core/p-ab9f8a3f.entry.js +0 -2
  796. package/dist/core/p-ab9f8a3f.entry.js.map +0 -1
  797. package/dist/core/p-b2aa3d7c.entry.js +0 -2
  798. package/dist/core/p-b2aa3d7c.entry.js.map +0 -1
  799. package/dist/core/p-b5cf6d65.entry.js +0 -2
  800. package/dist/core/p-b5cf6d65.entry.js.map +0 -1
  801. package/dist/core/p-baf81f30.entry.js.map +0 -1
  802. package/dist/core/p-bc187bb5.entry.js +0 -2
  803. package/dist/core/p-bc187bb5.entry.js.map +0 -1
  804. package/dist/core/p-bd9cecce.entry.js +0 -2
  805. package/dist/core/p-bd9cecce.entry.js.map +0 -1
  806. package/dist/core/p-be980606.entry.js +0 -2
  807. package/dist/core/p-be980606.entry.js.map +0 -1
  808. package/dist/core/p-c1256810.entry.js +0 -2
  809. package/dist/core/p-c1256810.entry.js.map +0 -1
  810. package/dist/core/p-d76cfa5a.entry.js +0 -2
  811. package/dist/core/p-d76cfa5a.entry.js.map +0 -1
  812. package/dist/core/p-e189f1d0.entry.js +0 -2
  813. package/dist/core/p-e189f1d0.entry.js.map +0 -1
  814. package/dist/core/p-e9e145aa.entry.js +0 -2
  815. package/dist/core/p-e9e145aa.entry.js.map +0 -1
  816. package/dist/core/p-f0e9a83f.entry.js +0 -2
  817. package/dist/core/p-f0e9a83f.entry.js.map +0 -1
  818. package/dist/core/p-f23d2102.entry.js +0 -2
  819. package/dist/core/p-f23d2102.entry.js.map +0 -1
  820. package/dist/core/p-f87e8411.entry.js +0 -2
  821. package/dist/core/p-f87e8411.entry.js.map +0 -1
  822. package/dist/esm/helpers-268c2b7f.js.map +0 -1
  823. package/dist/esm/ic-empty-state.entry.js.map +0 -1
  824. package/dist/esm/ic-input-component-container_3.entry.js.map +0 -1
  825. package/dist/esm/ic-input-label_2.entry.js +0 -81
  826. package/dist/esm/ic-input-label_2.entry.js.map +0 -1
  827. package/dist/esm/ic-pagination-bar.entry.js +0 -281
  828. package/dist/esm/ic-pagination-bar.entry.js.map +0 -1
  829. package/dist/types/components/ic-pagination/ic-pagination.types.d.ts +0 -6
  830. /package/dist/core/{p-b97dc365.entry.js.map → p-487fd924.entry.js.map} +0 -0
  831. /package/dist/core/{p-d77960f6.entry.js.map → p-656378ba.entry.js.map} +0 -0
  832. /package/dist/core/{p-3d618bc2.entry.js.map → p-d1045cd5.entry.js.map} +0 -0
@@ -1,4 +1,9 @@
1
1
  /* eslint-disable */
2
+ const name1 = "John Smith";
3
+ const name2 = "Sally Jones";
4
+ const name3 = "Luke Fisher";
5
+ const name4 = "Jane Lock";
6
+ const name5 = "Margaret Hale";
2
7
  const ROW_HEADER_TITLES = [
3
8
  "Employee",
4
9
  "Employee",
@@ -6,6 +11,13 @@ const ROW_HEADER_TITLES = [
6
11
  "Employee",
7
12
  "Apprentice",
8
13
  ];
14
+ const imageIconSVG = '<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 -960 960 960" width="24"><path d="M180-120q-24 0-42-18t-18-42v-600q0-24 18-42t42-18h600q24 0 42 18t18 42v600q0 24-18 42t-42 18H180Zm0-60h600v-600H180v600Zm56-97h489L578-473 446-302l-93-127-117 152Zm-56 97v-600 600Z"/></svg>';
15
+ const userIconSVG = '<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 -960 960 960" width="24"><path d="M480-481q-66 0-108-42t-42-108q0-66 42-108t108-42q66 0 108 42t42 108q0 66-42 108t-108 42ZM160-160v-94q0-38 19-65t49-41q67-30 128.5-45T480-420q62 0 123 15.5t127.921 44.694q31.301 14.126 50.19 40.966Q800-292 800-254v94H160Zm60-60h520v-34q0-16-9.5-30.5T707-306q-64-31-117-42.5T480-360q-57 0-111 11.5T252-306q-14 7-23 21.5t-9 30.5v34Zm260-321q39 0 64.5-25.5T570-631q0-39-25.5-64.5T480-721q-39 0-64.5 25.5T390-631q0 39 25.5 64.5T480-541Zm0-90Zm0 411Z"/></svg>';
16
+ const alertIconSVG = '<svg aria-label="alert-icon" xmlns="http://www.w3.org/2000/svg" height="18" width="18" viewBox="0 0 24 24" fill="#000000"><path d="M11,15H13V17H11V15M11,7H13V13H11V7M12,2C6.47,2 2,6.5 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20Z"/></svg>';
17
+ const copyButton = '<ic-button data-testid="copy-button" variant="icon" size="small" aria-label="you can disable tooltips on icon buttons"> <svg aria-label="copy-button" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#000000"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"/></svg> </ic-button>';
18
+ const cellphoneButton = '<ic-button data-testid="cellphone-button" variant="icon" size="small" aria-label="you can disable tooltips on icon buttons"> <svg aria-label="cellphone-button" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#000000"><path d="M17,19H7V5H17M17,1H7C5.89,1 5,1.89 5,3V21A2,2 0 0,0 7,23H17A2,2 0 0,0 19,21V3C19,1.89 18.1,1 17,1Z"/></svg> </ic-button>';
19
+ const downloadButton = '<ic-button data-testid="download-button" variant="icon" size="small" aria-label="you can disable tooltips on icon buttons"> <svg aria-label="download-button" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#000000"><path d="M5,20H19V18H5M19,9H15V3H9V9H5L12,16L19,9Z"/></svg> </ic-button>';
20
+ // TODO: Add columnOptions
9
21
  export const COLS = [
10
22
  {
11
23
  key: "firstName",
@@ -33,6 +45,114 @@ export const COLS = [
33
45
  dataType: "address",
34
46
  },
35
47
  ];
48
+ export const COLS_WIDTH = [
49
+ {
50
+ key: "firstName",
51
+ title: "First name",
52
+ dataType: "string",
53
+ columnWidth: "15%",
54
+ },
55
+ {
56
+ key: "lastName",
57
+ title: "Last name",
58
+ dataType: "string",
59
+ columnWidth: "300px",
60
+ },
61
+ {
62
+ key: "age",
63
+ title: "Age",
64
+ dataType: "number",
65
+ columnWidth: {
66
+ maxWidth: "100px",
67
+ },
68
+ },
69
+ {
70
+ key: "jobTitle",
71
+ title: "Job title",
72
+ dataType: "string",
73
+ },
74
+ {
75
+ key: "address",
76
+ title: "Address",
77
+ dataType: "address",
78
+ },
79
+ ];
80
+ export const COLS_EXCLUDE_SORT = [
81
+ {
82
+ key: "firstName",
83
+ title: "First name",
84
+ dataType: "string",
85
+ excludeColumnFromSort: true,
86
+ },
87
+ {
88
+ key: "lastName",
89
+ title: "Last name",
90
+ dataType: "string",
91
+ },
92
+ {
93
+ key: "age",
94
+ title: "Age",
95
+ dataType: "number",
96
+ },
97
+ {
98
+ key: "jobTitle",
99
+ title: "Job title",
100
+ dataType: "string",
101
+ excludeColumnFromSort: true,
102
+ },
103
+ {
104
+ key: "address",
105
+ title: "Address",
106
+ dataType: "address",
107
+ excludeColumnFromSort: true,
108
+ },
109
+ ];
110
+ export const VERY_LONG_DATA = (rows = 100) => {
111
+ const nextData = [];
112
+ for (let i = 0; i < rows; i++) {
113
+ const obj = {
114
+ firstName: `firstName-${i}`,
115
+ lastName: `lastName-${i}`,
116
+ age: i,
117
+ jobTitle: `jobTitle-${i}`,
118
+ address: `${i} Main Street, Town, County, Postcode AA${i}${i} BB${i}${i}`,
119
+ rowOptions: {
120
+ textWrap: i % 2 === 0,
121
+ },
122
+ };
123
+ nextData.push(obj);
124
+ }
125
+ return nextData;
126
+ };
127
+ export const textWrapColumns = () => {
128
+ return COLUMNS_NO_TEXT_WRAP.map((col) => {
129
+ if (col.key === "jobTitle") {
130
+ return Object.assign(Object.assign({}, col), { textWrap: true });
131
+ }
132
+ return col;
133
+ });
134
+ };
135
+ export const textWrapRow = () => {
136
+ return LONG_DATA_VALUES.map((data) => {
137
+ if (data.name === "Luke Fisher" || data.name === "John Smith") {
138
+ return Object.assign(Object.assign({}, data), { rowOptions: {
139
+ textWrap: true,
140
+ } });
141
+ }
142
+ return data;
143
+ });
144
+ };
145
+ export const textWrapCell = () => {
146
+ return LONG_DATA_VALUES.map((data) => {
147
+ if (data.jobTitle === "Senior Financial Operations and Reporting Analyst") {
148
+ return Object.assign(Object.assign({}, data), { jobTitle: {
149
+ data: data.jobTitle,
150
+ textWrap: true,
151
+ } });
152
+ }
153
+ return data;
154
+ });
155
+ };
36
156
  export const COLS_ALIGNMENT = [
37
157
  {
38
158
  key: "firstName",
@@ -64,7 +184,7 @@ export const COLS_ALIGNMENT = [
64
184
  export const DATA = [
65
185
  {
66
186
  firstName: "Joe",
67
- lastName: "Bloggs",
187
+ lastName: "Bartholomew Christoper Augustine Zacchaeus Ashford",
68
188
  age: 30,
69
189
  jobTitle: "Developer",
70
190
  address: "1 Main Street, Town, County, Postcode",
@@ -73,7 +193,7 @@ export const DATA = [
73
193
  firstName: "Sarah",
74
194
  lastName: "Smith",
75
195
  age: 28,
76
- jobTitle: "Analyst",
196
+ jobTitle: "Senior Software Developer, Site Reliability Engineering",
77
197
  address: "2 Main Street, Town, Country, Postcode",
78
198
  },
79
199
  {
@@ -87,7 +207,7 @@ export const DATA = [
87
207
  firstName: "Naomi",
88
208
  lastName: "Thomas",
89
209
  age: 32,
90
- jobTitle: "Developer",
210
+ jobTitle: "Analyst",
91
211
  address: "8 Side Street, Town, Country, Postcode",
92
212
  },
93
213
  {
@@ -98,6 +218,165 @@ export const DATA = [
98
218
  address: "5 New Street, Town, Country, Postcode",
99
219
  },
100
220
  ];
221
+ export const LONG_TEXT = [
222
+ {
223
+ firstName: "Joehasaverylongnamewhichneedstruncating",
224
+ lastName: "BartholomewChristoperAugustineZacchaeus Ashford",
225
+ age: 30,
226
+ jobTitle: "Developer",
227
+ address: "1 Main Street, Town, County, Postcode",
228
+ },
229
+ {
230
+ firstName: "Sarahalsohasaverylongname",
231
+ lastName: "Smithisnotaverylongname",
232
+ age: 28,
233
+ jobTitle: "Senior Software Developer, Site Reliability Engineering",
234
+ address: "2 Main Street, Town, Country, Postcode",
235
+ },
236
+ ];
237
+ export const TEXT_WRAP_LONG_DATA = [
238
+ {
239
+ name: name1,
240
+ age: 36,
241
+ department: "Accounts & Finance",
242
+ employeeNumber: 1,
243
+ jobTitle: {
244
+ data: "Senior Financial Operations and Reporting Analyst",
245
+ textWrap: true,
246
+ },
247
+ },
248
+ {
249
+ name: name2,
250
+ age: 32,
251
+ department: "Engineering",
252
+ employeeNumber: 2,
253
+ jobTitle: "Senior Software Engineer, Site Reliability Engineering (Microsoft Azure)",
254
+ },
255
+ {
256
+ name: "Tim Rayes",
257
+ age: 41,
258
+ department: "Sales and Marketing",
259
+ employeeNumber: 3,
260
+ jobTitle: "Regional Sales and Marketing Strategy Director (Europe, the Middle East, and Africa)",
261
+ rowOptions: {
262
+ textWrap: true,
263
+ },
264
+ },
265
+ {
266
+ name: name3,
267
+ age: "23",
268
+ department: "Engineering (Mobile App Development)",
269
+ employeeNumber: 4,
270
+ jobTitle: "Junior Tester",
271
+ },
272
+ {
273
+ name: name4,
274
+ age: 34,
275
+ department: "Engineering",
276
+ employeeNumber: 5,
277
+ jobTitle: "Junior Product Manager",
278
+ },
279
+ {
280
+ name: name5,
281
+ age: 45,
282
+ department: "HR",
283
+ employeeNumber: 6,
284
+ jobTitle: "Junior Human Resource Information Specialist",
285
+ },
286
+ ];
287
+ export const COLUMNS_NO_TEXT_WRAP = [
288
+ { key: "name", title: "Name", dataType: "string" },
289
+ { key: "age", title: "Age", dataType: "number" },
290
+ { key: "department", title: "Department", dataType: "string" },
291
+ { key: "employeeNumber", title: "Employee Number", dataType: "number" },
292
+ { key: "jobTitle", title: "Job Title", dataType: "string" },
293
+ ];
294
+ export const COLUMNS_TEXT_WRAP = [
295
+ { key: "name", title: "Name", dataType: "string" },
296
+ { key: "age", title: "Age", dataType: "number" },
297
+ {
298
+ key: "department",
299
+ title: "Department",
300
+ dataType: "string",
301
+ textWrap: true,
302
+ },
303
+ { key: "employeeNumber", title: "Employee Number", dataType: "number" },
304
+ { key: "jobTitle", title: "Job Title", dataType: "string" },
305
+ ];
306
+ export const LONG_DATA_VALUES = [
307
+ {
308
+ name: name1,
309
+ age: 36,
310
+ department: "Accounts & Finance",
311
+ employeeNumber: 1,
312
+ jobTitle: "Senior Financial Operations and Reporting Analyst",
313
+ },
314
+ {
315
+ name: name2,
316
+ age: 32,
317
+ department: "Engineering",
318
+ employeeNumber: 2,
319
+ jobTitle: "Senior Software Engineer, Site Reliability Engineering (Microsoft Azure)",
320
+ },
321
+ {
322
+ name: "Tim Rayes",
323
+ age: 41,
324
+ department: "Sales and Marketing",
325
+ employeeNumber: 3,
326
+ jobTitle: "Regional Sales and Marketing Strategy Director (Europe, the Middle East, and Africa)",
327
+ },
328
+ {
329
+ name: name3,
330
+ age: "23",
331
+ department: "Engineering (Mobile App Development)",
332
+ employeeNumber: 4,
333
+ jobTitle: "Junior Tester",
334
+ },
335
+ {
336
+ name: name4,
337
+ age: 34,
338
+ department: "Engineering",
339
+ employeeNumber: 5,
340
+ jobTitle: "Junior Product Manager",
341
+ },
342
+ {
343
+ name: name5,
344
+ age: 45,
345
+ department: "HR",
346
+ employeeNumber: 6,
347
+ jobTitle: "Junior Human Resource Information Specialist",
348
+ },
349
+ ];
350
+ export const LONG_DATA_VALUES_UPDATE = [
351
+ {
352
+ name: "Michael Phelps",
353
+ age: 23,
354
+ department: "United States",
355
+ employeeNumber: 1,
356
+ jobTitle: "Swimmer",
357
+ },
358
+ {
359
+ name: "Natalie Coughlin",
360
+ age: 25,
361
+ department: "United States",
362
+ employeeNumber: 2,
363
+ jobTitle: "Swimmer",
364
+ },
365
+ {
366
+ name: "Debbie Flood",
367
+ age: 28,
368
+ department: "Great Britain",
369
+ employeeNumber: 3,
370
+ jobTitle: "7 time Olympic and Commonwealth Champion for Rowing",
371
+ },
372
+ {
373
+ name: "Gillian Charleton",
374
+ age: "22",
375
+ department: "Canada",
376
+ employeeNumber: 4,
377
+ jobTitle: "Cycling",
378
+ },
379
+ ];
101
380
  export const DATA_CELL_ALIGNMENT = [
102
381
  {
103
382
  firstName: {
@@ -114,7 +393,7 @@ export const DATA_CELL_ALIGNMENT = [
114
393
  firstName: "Sarah",
115
394
  lastName: "Smith",
116
395
  age: 28,
117
- jobTitle: "Analyst",
396
+ jobTitle: "Senior Software Developer, Site Reliability Engineering",
118
397
  address: "2 Main Street, Town, Country, Postcode",
119
398
  },
120
399
  {
@@ -128,7 +407,7 @@ export const DATA_CELL_ALIGNMENT = [
128
407
  firstName: "Naomi",
129
408
  lastName: "Thomas",
130
409
  age: 32,
131
- jobTitle: "Developer",
410
+ jobTitle: "Analyst",
132
411
  address: "8 Side Street, Town, Country, Postcode",
133
412
  },
134
413
  {
@@ -159,7 +438,7 @@ export const ROW_ALIGNMENT = [
159
438
  firstName: "Sarah",
160
439
  lastName: "Smith",
161
440
  age: 28,
162
- jobTitle: "Analyst",
441
+ jobTitle: "Senior Software Developer, Site Reliability Engineering",
163
442
  address: "2 Main Street, Town, Country, Postcode",
164
443
  },
165
444
  {
@@ -179,7 +458,7 @@ export const ROW_ALIGNMENT = [
179
458
  firstName: "Naomi",
180
459
  lastName: "Thomas",
181
460
  age: 32,
182
- jobTitle: "Developer",
461
+ jobTitle: "Analyst",
183
462
  address: "8 Side Street, Town, Country, Postcode",
184
463
  },
185
464
  {
@@ -221,6 +500,124 @@ export const LONG_COLS = [
221
500
  dataType: "address",
222
501
  },
223
502
  ];
503
+ export const ICON_COLS = [
504
+ {
505
+ key: "firstName",
506
+ title: "First name",
507
+ dataType: "string",
508
+ cellAlignment: "right",
509
+ columnAlignment: { horizontal: "right", vertical: "middle" },
510
+ icon: {
511
+ icon: imageIconSVG,
512
+ onAllCells: true,
513
+ hideOnHeader: true,
514
+ },
515
+ },
516
+ {
517
+ key: "lastName",
518
+ title: "Last name",
519
+ dataType: "string",
520
+ cellAlignment: "center",
521
+ columnAlignment: { horizontal: "center", vertical: "bottom" },
522
+ icon: {
523
+ icon: imageIconSVG,
524
+ onAllCells: true,
525
+ },
526
+ },
527
+ {
528
+ key: "age",
529
+ title: "Age",
530
+ dataType: "number",
531
+ },
532
+ {
533
+ key: "jobTitle",
534
+ title: "Job title",
535
+ dataType: "string",
536
+ },
537
+ {
538
+ key: "address",
539
+ title: "Address",
540
+ dataType: "address",
541
+ icon: {
542
+ icon: imageIconSVG,
543
+ },
544
+ },
545
+ ];
546
+ export const ICON_DATA_LONG_VALUES = [
547
+ {
548
+ firstName: {
549
+ data: "Joe with a very long first name",
550
+ icon: userIconSVG,
551
+ },
552
+ lastName: "Bloggs",
553
+ age: 30,
554
+ jobTitle: "Developer",
555
+ address: "1 Main Street, Town, County, Postcode",
556
+ },
557
+ {
558
+ firstName: "Sarah",
559
+ lastName: {
560
+ data: "Smith",
561
+ icon: userIconSVG,
562
+ },
563
+ age: 28,
564
+ jobTitle: "Analyst",
565
+ address: "2 Main Street, Town, Country, Postcode",
566
+ },
567
+ {
568
+ firstName: "Mark",
569
+ lastName: "Owens",
570
+ age: 45,
571
+ jobTitle: "Team Lead",
572
+ address: "12 Key Street, Town, Country, Postcode",
573
+ },
574
+ ];
575
+ export const ICON_DATA = [
576
+ {
577
+ firstName: {
578
+ data: "Joe",
579
+ icon: userIconSVG,
580
+ },
581
+ lastName: "Bloggs",
582
+ age: 30,
583
+ jobTitle: "Developer",
584
+ address: "1 Main Street, Town, County, Postcode",
585
+ },
586
+ {
587
+ firstName: "Sarah",
588
+ lastName: {
589
+ data: "Smith",
590
+ icon: userIconSVG,
591
+ },
592
+ age: 28,
593
+ jobTitle: "Analyst",
594
+ address: "2 Main Street, Town, Country, Postcode",
595
+ },
596
+ {
597
+ firstName: "Mark",
598
+ lastName: "Owens",
599
+ age: 45,
600
+ jobTitle: "Team Lead",
601
+ address: "12 Key Street, Town, Country, Postcode",
602
+ },
603
+ {
604
+ firstName: "Naomi",
605
+ lastName: "Thomas",
606
+ age: 32,
607
+ jobTitle: {
608
+ data: "Developer",
609
+ icon: userIconSVG,
610
+ },
611
+ address: "8 Side Street, Town, Country, Postcode",
612
+ },
613
+ {
614
+ firstName: "Luke",
615
+ lastName: "Ashford",
616
+ age: 18,
617
+ jobTitle: "Junior Developer",
618
+ address: "5 New Street, Town, Country, Postcode",
619
+ },
620
+ ];
224
621
  export const LONG_DATA = [
225
622
  {
226
623
  employeeNumber: 1,
@@ -252,7 +649,7 @@ export const LONG_DATA = [
252
649
  },
253
650
  {
254
651
  employeeNumber: 5,
255
- name: "Luke Ashford",
652
+ name: "Bartholomew Christoper Augustine Zacchaeus Ashford",
256
653
  age: 18,
257
654
  jobTitle: "Junior Developer",
258
655
  address: "5 New Street, Town, Country, Postcode",
@@ -294,7 +691,7 @@ export const LONG_DATA = [
294
691
  },
295
692
  {
296
693
  employeeNumber: 11,
297
- name: "Pete Norton",
694
+ name: "Chrysanthemum Finnleigh Carrington Savannah Norton",
298
695
  age: 32,
299
696
  jobTitle: "Analyst",
300
697
  address: "6 Key Street, Town, County, Postcode",
@@ -322,7 +719,7 @@ export const LONG_DATA = [
322
719
  },
323
720
  {
324
721
  employeeNumber: 15,
325
- name: "Mary Lincoln",
722
+ name: "Bernadette Mariah Genevieve Maddison Lincoln",
326
723
  age: 23,
327
724
  jobTitle: "Developer",
328
725
  address: "10 Main Street, Town, Country, Postcode",
@@ -399,15 +796,22 @@ export const ROW_HEADER_DATA = DATA.map((data, index) => {
399
796
  return Object.assign({ header: { title: ROW_HEADER_TITLES[index] } }, data);
400
797
  });
401
798
  export const COLS_ELEMENTS = [
799
+ {
800
+ key: "actions",
801
+ title: "Actions",
802
+ dataType: "element",
803
+ columnAlignment: { horizontal: "center" },
804
+ },
402
805
  {
403
806
  key: "firstName",
404
807
  title: "First name",
405
808
  dataType: "string",
406
809
  },
407
810
  {
408
- key: "lastName",
409
- title: "Last name",
410
- dataType: "string",
811
+ key: "actions2",
812
+ title: "Actions2",
813
+ dataType: "element",
814
+ columnAlignment: { horizontal: "center" },
411
815
  },
412
816
  {
413
817
  key: "age",
@@ -424,56 +828,488 @@ export const COLS_ELEMENTS = [
424
828
  title: "Address",
425
829
  dataType: "address",
426
830
  },
831
+ ];
832
+ export const COLS_ELEMENTS_SINGLE_ACTION = [
427
833
  {
428
834
  key: "actions",
429
835
  title: "Actions",
430
836
  dataType: "element",
431
837
  columnAlignment: { horizontal: "center" },
432
838
  },
433
- ];
434
- export const DATA_ELEMENTS = [
435
839
  {
436
- firstName: {
437
- data: "Joe",
438
- href: "https://www.example.com",
439
- },
440
- lastName: "Bloggs",
441
- age: 30,
442
- jobTitle: "Developer",
443
- address: "1 Main Street, Town, County, Postcode",
444
- actions: `<ic-button variant='destructive' onClick='this.closest("tr").remove()'>Delete</ic-button>`,
840
+ key: "firstName",
841
+ title: "First name",
842
+ dataType: "string",
445
843
  },
446
844
  {
447
- firstName: "Sarah",
448
- lastName: "Smith",
845
+ key: "age",
846
+ title: "Age",
847
+ dataType: "number",
848
+ },
849
+ {
850
+ key: "jobTitle",
851
+ title: "Job title",
852
+ dataType: "string",
853
+ },
854
+ {
855
+ key: "address",
856
+ title: "Address",
857
+ dataType: "address",
858
+ },
859
+ ];
860
+ export const DATA_ELEMENTS = [
861
+ {
862
+ actions: `<ic-button variant='destructive' onClick='this.closest("tr").remove()'>Delete</ic-button>`,
863
+ firstName: {
864
+ data: "Joe",
865
+ href: "https://www.example.com",
866
+ target: "_blank",
867
+ rel: "noopener noreferrer",
868
+ },
869
+ actions2: `<ic-button aria-label="Delete row" variant='icon' onClick='this.closest("tr").remove()'><svg viewBox="0 0 24 24" role="presentation" style="width: 1.5rem; height: 1.5rem;"><path d="M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z" style="fill: currentcolor;"></path></svg></ic-button>`,
870
+ age: 30,
871
+ jobTitle: "Developer",
872
+ address: "1 Main Street, Town, County, Postcode",
873
+ },
874
+ {
875
+ actions: `<ic-button variant='destructive' onClick='this.closest("tr").remove()'>Delete</ic-button>`,
876
+ firstName: {
877
+ data: "Sarah",
878
+ href: "https://www.example.org",
879
+ },
880
+ actions2: `<ic-button aria-label="Delete row" variant='icon' onClick='this.closest("tr").remove()'><svg viewBox="0 0 24 24" role="presentation" style="width: 1.5rem; height: 1.5rem;"><path d="M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z" style="fill: currentcolor;"></path></svg></ic-button>`,
449
881
  age: 28,
450
- jobTitle: "Analyst",
882
+ jobTitle: "Senior Software Developer, Site Reliability Engineering",
451
883
  address: "2 Main Street, Town, Country, Postcode",
452
- actions: `<ic-button variant='destructive' onClick='this.closest("tr").remove()'>Delete</ic-button>`,
453
884
  },
454
885
  {
886
+ actions: `<ic-button variant='destructive' onClick='this.closest("tr").remove()'>Delete</ic-button>`,
455
887
  firstName: "Mark",
456
- lastName: "Owens",
888
+ actions2: `<ic-button aria-label="Delete row" variant='icon' onClick='this.closest("tr").remove()'><svg viewBox="0 0 24 24" role="presentation" style="width: 1.5rem; height: 1.5rem;"><path d="M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z" style="fill: currentcolor;"></path></svg></ic-button>`,
457
889
  age: 45,
458
890
  jobTitle: "Team Lead",
459
891
  address: "12 Key Street, Town, Country, Postcode",
892
+ },
893
+ {
460
894
  actions: `<ic-button variant='destructive' onClick='this.closest("tr").remove()'>Delete</ic-button>`,
895
+ firstName: "Naomi",
896
+ actions2: `<ic-button aria-label="Delete row" variant='icon' onClick='this.closest("tr").remove()'><svg viewBox="0 0 24 24" role="presentation" style="width: 1.5rem; height: 1.5rem;"><path d="M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z" style="fill: currentcolor;"></path></svg></ic-button>`,
897
+ age: 32,
898
+ jobTitle: "Analyst",
899
+ address: "8 Side Street, Town, Country, Postcode",
461
900
  },
462
901
  {
902
+ actions: `<ic-button variant='destructive' onClick='this.closest("tr").remove()'>Delete</ic-button>`,
903
+ firstName: "Luke",
904
+ actions2: `<ic-button aria-label="Delete row" variant='icon' onClick='this.closest("tr").remove()'><svg viewBox="0 0 24 24" role="presentation" style="width: 1.5rem; height: 1.5rem;"><path d="M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z" style="fill: currentcolor;"></path></svg></ic-button>`,
905
+ age: 18,
906
+ jobTitle: "Junior Developer",
907
+ address: "5 New Street, Town, Country, Postcode",
908
+ },
909
+ ];
910
+ export const DATA_ELEMENTS_PAGINATION = [
911
+ {
912
+ actions: `<ic-button onClick='console.log("1")'>1</ic-button>`,
913
+ firstName: {
914
+ data: "Joe",
915
+ href: "https://www.example.com",
916
+ target: "_blank",
917
+ rel: "noopener noreferrer",
918
+ },
919
+ age: 30,
920
+ jobTitle: "Developer",
921
+ address: "1 Main Street, Town, County, Postcode",
922
+ },
923
+ {
924
+ actions: `<ic-button onClick='console.log("2")'>2</ic-button>`,
925
+ firstName: {
926
+ data: "Sarah",
927
+ href: "https://www.example.org",
928
+ },
929
+ age: 28,
930
+ jobTitle: "Senior Software Developer, Site Reliability Engineering",
931
+ address: "2 Main Street, Town, Country, Postcode",
932
+ },
933
+ {
934
+ actions: `<ic-button onClick='console.log("3")'>3</ic-button>`,
935
+ firstName: "Mark",
936
+ age: 45,
937
+ jobTitle: "Team Lead",
938
+ address: "12 Key Street, Town, Country, Postcode",
939
+ },
940
+ {
941
+ actions: `<ic-button onClick='console.log("4")'>4</ic-button>`,
463
942
  firstName: "Naomi",
464
- lastName: "Thomas",
465
943
  age: 32,
944
+ jobTitle: "Analyst",
945
+ address: "8 Side Street, Town, Country, Postcode",
946
+ },
947
+ {
948
+ actions: `<ic-button onClick='console.log("5")'>5</ic-button>`,
949
+ firstName: "Luke",
950
+ age: 18,
951
+ jobTitle: "Junior Developer",
952
+ address: "5 New Street, Town, Country, Postcode",
953
+ },
954
+ {
955
+ actions: `<ic-button onClick='console.log("6")'>6</ic-button>`,
956
+ firstName: "Dave",
957
+ age: 33,
958
+ jobTitle: "Analyst",
959
+ address: "4 Extra Street, Town, County, Postcode",
960
+ },
961
+ {
962
+ actions: `<ic-button onClick='console.log("7")'>7</ic-button>`,
963
+ firstName: "Amy",
964
+ age: 27,
965
+ jobTitle: "Analyst",
966
+ address: "3 Main Street, Town, Country, Postcode",
967
+ },
968
+ {
969
+ actions: `<ic-button onClick='console.log("8")'>8</ic-button>`,
970
+ firstName: "Mary",
971
+ age: 31,
466
972
  jobTitle: "Developer",
973
+ address: "8 Main Street, Town, County, Postcode",
974
+ },
975
+ {
976
+ actions: `<ic-button onClick='console.log("9")'>9</ic-button>`,
977
+ firstName: "Alice",
978
+ age: 38,
979
+ jobTitle: "Team Lead",
980
+ address: "10 High Street, Town, Country, Postcode",
981
+ },
982
+ {
983
+ actions: `<ic-button onClick='console.log("10")'>10</ic-button>`,
984
+ firstName: "Ben",
985
+ age: 40,
986
+ jobTitle: "Team Lead",
987
+ address: "14 High Street, Town, Country, Postcode",
988
+ },
989
+ ];
990
+ export const DATA_REACT_ELEMENTS = [
991
+ {
992
+ firstName: {
993
+ data: "Joe",
994
+ href: "https://www.example.com",
995
+ target: "_blank",
996
+ rel: "noopener noreferrer",
997
+ },
998
+ age: 30,
999
+ jobTitle: "Developer",
1000
+ address: "1 Main Street, Town, County, Postcode",
1001
+ },
1002
+ {
1003
+ firstName: {
1004
+ data: "Sarah",
1005
+ href: "https://www.example.org/",
1006
+ },
1007
+ age: 28,
1008
+ jobTitle: "Senior Software Developer, Site Reliability Engineering",
1009
+ address: "2 Main Street, Town, Country, Postcode",
1010
+ },
1011
+ {
1012
+ firstName: "Mark",
1013
+ age: 45,
1014
+ jobTitle: "Team Lead",
1015
+ address: "12 Key Street, Town, Country, Postcode",
1016
+ },
1017
+ {
1018
+ firstName: "Naomi",
1019
+ age: 32,
1020
+ jobTitle: "Analyst",
467
1021
  address: "8 Side Street, Town, Country, Postcode",
468
- actions: `<ic-button variant='destructive' onClick='this.closest("tr").remove()'>Delete</ic-button>`,
469
1022
  },
470
1023
  {
471
1024
  firstName: "Luke",
472
- lastName: "Ashford",
473
1025
  age: 18,
474
1026
  jobTitle: "Junior Developer",
475
1027
  address: "5 New Street, Town, Country, Postcode",
476
- actions: `<ic-button variant='destructive' onClick='this.closest("tr").remove()'>Delete</ic-button>`,
1028
+ },
1029
+ ];
1030
+ export const DATA_REACT_ELEMENTS_PAGINATION = [
1031
+ ...DATA_REACT_ELEMENTS,
1032
+ {
1033
+ firstName: "Dave",
1034
+ age: 33,
1035
+ jobTitle: "Analyst",
1036
+ address: "4 Extra Street, Town, County, Postcode",
1037
+ },
1038
+ {
1039
+ firstName: "Amy",
1040
+ age: 27,
1041
+ jobTitle: "Analyst",
1042
+ address: "3 Main Street, Town, Country, Postcode",
1043
+ },
1044
+ {
1045
+ firstName: "Mary",
1046
+ age: 31,
1047
+ jobTitle: "Developer",
1048
+ address: "8 Main Street, Town, County, Postcode",
1049
+ },
1050
+ {
1051
+ firstName: "Alice",
1052
+ age: 38,
1053
+ jobTitle: "Team Lead",
1054
+ address: "10 High Street, Town, Country, Postcode",
1055
+ },
1056
+ {
1057
+ firstName: "Ben",
1058
+ age: 40,
1059
+ jobTitle: "Team Lead",
1060
+ address: "14 High Street, Town, Country, Postcode",
1061
+ },
1062
+ ];
1063
+ export const DATA_REACT_ELEMENTS_WITH_ICONS = [
1064
+ {
1065
+ firstName: {
1066
+ data: "Joe",
1067
+ href: "https://www.example.com",
1068
+ icon: '<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 -960 960 960" width="24"><path d="M480-481q-66 0-108-42t-42-108q0-66 42-108t108-42q66 0 108 42t42 108q0 66-42 108t-108 42ZM160-160v-94q0-38 19-65t49-41q67-30 128.5-45T480-420q62 0 123 15.5t127.921 44.694q31.301 14.126 50.19 40.966Q800-292 800-254v94H160Zm60-60h520v-34q0-16-9.5-30.5T707-306q-64-31-117-42.5T480-360q-57 0-111 11.5T252-306q-14 7-23 21.5t-9 30.5v34Zm260-321q39 0 64.5-25.5T570-631q0-39-25.5-64.5T480-721q-39 0-64.5 25.5T390-631q0 39 25.5 64.5T480-541Zm0-90Zm0 411Z"/></svg>',
1069
+ },
1070
+ age: 30,
1071
+ jobTitle: "Developer",
1072
+ address: "1 Main Street, Town, County, Postcode",
1073
+ },
1074
+ {
1075
+ firstName: {
1076
+ data: "Sarah",
1077
+ href: "https://www.example.com",
1078
+ icon: "",
1079
+ },
1080
+ age: 28,
1081
+ jobTitle: "Senior Software Developer, Site Reliability Engineering",
1082
+ address: "2 Main Street, Town, Country, Postcode",
1083
+ },
1084
+ {
1085
+ firstName: "Mark",
1086
+ age: 45,
1087
+ jobTitle: "Team Lead",
1088
+ address: "12 Key Street, Town, Country, Postcode",
1089
+ },
1090
+ {
1091
+ firstName: "Naomi",
1092
+ age: 32,
1093
+ jobTitle: "Analyst",
1094
+ address: "8 Side Street, Town, Country, Postcode",
1095
+ },
1096
+ {
1097
+ firstName: "Luke",
1098
+ age: 18,
1099
+ jobTitle: "Junior Developer",
1100
+ address: "5 New Street, Town, Country, Postcode",
1101
+ },
1102
+ ];
1103
+ export const ACTION_DATA_ELEMENTS = [
1104
+ {
1105
+ firstName: {
1106
+ data: "Joe",
1107
+ actionElement: `${downloadButton}${cellphoneButton}${copyButton}`,
1108
+ actionOnClick: (event) => {
1109
+ event === null || event === void 0 ? void 0 : event.stopPropagation();
1110
+ console.log("hello");
1111
+ },
1112
+ },
1113
+ lastName: "Bloggs",
1114
+ age: 31,
1115
+ jobTitle: "Developer",
1116
+ address: "1 Main Street, Town, County, Postcode",
1117
+ },
1118
+ {
1119
+ firstName: {
1120
+ data: "Sarah",
1121
+ actionElement: copyButton,
1122
+ },
1123
+ lastName: "Jane",
1124
+ age: 28,
1125
+ jobTitle: {
1126
+ data: "Senior Software Developer, Site Reliability Engineering",
1127
+ actionElement: `<ic-status-tag role="status" label="Success" status="success"></ic-status-tag>`,
1128
+ },
1129
+ address: "2 Main Street, Town, Country, Postcode",
1130
+ },
1131
+ {
1132
+ firstName: {
1133
+ data: "Mark",
1134
+ actionElement: copyButton,
1135
+ },
1136
+ lastName: "Smith",
1137
+ age: {
1138
+ data: 45,
1139
+ actionElement: `<ic-button variant="icon" id="small-button" size="small" aria-label="you can disable tooltips on icon buttons"> <svg aria-label="refresh button" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#000000" > <path d="M0 0h24v24H0V0z" fill="none"></path> <path d="M17.65 6.35C16.2 4.9 14.21 4 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h-2.08c-.82 2.33-3.04 4-5.65 4-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1.78L13 11h7V4l-2.35 2.35z"></path> </svg></ic-button>`,
1140
+ },
1141
+ jobTitle: "Team Lead",
1142
+ address: "12 Key Street, Town, Country, Postcode",
1143
+ },
1144
+ {
1145
+ firstName: {
1146
+ data: "Naomi",
1147
+ actionElement: copyButton,
1148
+ },
1149
+ lastName: "Kens",
1150
+ age: 32,
1151
+ jobTitle: "Analyst",
1152
+ address: "8 Side Street, Town, Country, Postcode",
1153
+ },
1154
+ {
1155
+ firstName: {
1156
+ data: "Luke",
1157
+ actionElement: copyButton,
1158
+ },
1159
+ lastName: "Sky",
1160
+ age: 18,
1161
+ jobTitle: "Junior Developer",
1162
+ address: {
1163
+ data: "5 New Street, Town, Country, Postcode",
1164
+ actionElement: `<ic-status-tag role="status" label="Error" status="danger"></ic-status-tag>`,
1165
+ },
1166
+ },
1167
+ ];
1168
+ export const DATA_WITH_EMPTY_VALUES = [
1169
+ {
1170
+ firstName: "Nigel",
1171
+ lastName: null,
1172
+ age: 62,
1173
+ jobTitle: "Developer",
1174
+ address: "1 Main Street, Town, County, Postcode",
1175
+ },
1176
+ {
1177
+ firstName: "Sarah",
1178
+ lastName: "Smith",
1179
+ age: 28,
1180
+ jobTitle: undefined,
1181
+ address: "2 Main Street, Town, Country, Postcode",
1182
+ },
1183
+ {
1184
+ firstName: "Mark",
1185
+ lastName: "Owens",
1186
+ age: 45,
1187
+ jobTitle: "Team Lead",
1188
+ address: "",
1189
+ },
1190
+ ];
1191
+ export const LONG_DATA_ELEMENTS_WITH_DESCRIPTIONS = [
1192
+ {
1193
+ firstName: {
1194
+ data: "Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe",
1195
+ description: {
1196
+ data: "Alias: JB",
1197
+ icon: imageIconSVG,
1198
+ },
1199
+ actionElement: copyButton,
1200
+ icon: userIconSVG,
1201
+ },
1202
+ lastName: "Bloggs",
1203
+ age: 30,
1204
+ jobTitle: "Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer",
1205
+ address: "N/A",
1206
+ },
1207
+ {
1208
+ firstName: {
1209
+ data: "Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe Joe",
1210
+ actionElement: copyButton,
1211
+ },
1212
+ lastName: "Bloggs",
1213
+ age: 30,
1214
+ jobTitle: "Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer Developer",
1215
+ address: "N/A",
1216
+ },
1217
+ {
1218
+ firstName: {
1219
+ data: "Joey",
1220
+ description: {
1221
+ data: "Unverified",
1222
+ icon: alertIconSVG,
1223
+ },
1224
+ actionElement: copyButton,
1225
+ },
1226
+ lastName: "Bloggy",
1227
+ age: 31,
1228
+ jobTitle: "Developer",
1229
+ address: "N/A",
1230
+ },
1231
+ {
1232
+ firstName: {
1233
+ actionElement: copyButton,
1234
+ description: "Alias: The Ghost",
1235
+ },
1236
+ lastName: "Blogger",
1237
+ age: 32,
1238
+ jobTitle: "Writer",
1239
+ address: "N/A",
1240
+ },
1241
+ ];
1242
+ export const DATA_ELEMENTS_WITH_DESCRIPTIONS = [
1243
+ {
1244
+ firstName: {
1245
+ data: "Joe",
1246
+ description: {
1247
+ data: "The name of Joe",
1248
+ icon: '<svg xmlns="http://www.w3.org/2000/svg" height="20" viewBox="0 -960 960 960" width="20"><path d="M180-120q-24 0-42-18t-18-42v-600q0-24 18-42t42-18h600q24 0 42 18t18 42v600q0 24-18 42t-42 18H180Zm0-60h600v-600H180v600Zm56-97h489L578-473 446-302l-93-127-117 152Zm-56 97v-600 600Z"/></svg>',
1249
+ },
1250
+ },
1251
+ lastName: "Bloggs",
1252
+ age: 30,
1253
+ jobTitle: "Developer",
1254
+ address: "1 Main Street, Town, County, Postcode",
1255
+ },
1256
+ {
1257
+ firstName: {
1258
+ data: "Sarah",
1259
+ description: {
1260
+ data: "The name of Sarah",
1261
+ icon: '<svg xmlns="http://www.w3.org/2000/svg" height="20" viewBox="0 -960 960 960" width="20"><path d="M180-120q-24 0-42-18t-18-42v-600q0-24 18-42t42-18h600q24 0 42 18t18 42v600q0 24-18 42t-42 18H180Zm0-60h600v-600H180v600Zm56-97h489L578-473 446-302l-93-127-117 152Zm-56 97v-600 600Z"/></svg>',
1262
+ },
1263
+ },
1264
+ lastName: "Smith",
1265
+ age: 28,
1266
+ jobTitle: "Senior Software Developer, Site Reliability Engineering",
1267
+ address: "2 Main Street, Town, Country, Postcode",
1268
+ },
1269
+ {
1270
+ firstName: {
1271
+ data: "Mark",
1272
+ description: {
1273
+ data: "The name of Mark",
1274
+ icon: '<svg xmlns="http://www.w3.org/2000/svg" height="20" viewBox="0 -960 960 960" width="20"><path d="M180-120q-24 0-42-18t-18-42v-600q0-24 18-42t42-18h600q24 0 42 18t18 42v600q0 24-18 42t-42 18H180Zm0-60h600v-600H180v600Zm56-97h489L578-473 446-302l-93-127-117 152Zm-56 97v-600 600Z"/></svg>',
1275
+ },
1276
+ },
1277
+ lastName: "Owens",
1278
+ age: 45,
1279
+ jobTitle: "Team Lead",
1280
+ address: "12 Key Street, Town, Country, Postcode",
1281
+ },
1282
+ {
1283
+ firstName: {
1284
+ data: "Naomi",
1285
+ description: {
1286
+ data: "The name of Naomi",
1287
+ icon: '<svg xmlns="http://www.w3.org/2000/svg" height="20" viewBox="0 -960 960 960" width="20"><path d="M180-120q-24 0-42-18t-18-42v-600q0-24 18-42t42-18h600q24 0 42 18t18 42v600q0 24-18 42t-42 18H180Zm0-60h600v-600H180v600Zm56-97h489L578-473 446-302l-93-127-117 152Zm-56 97v-600 600Z"/></svg>',
1288
+ },
1289
+ },
1290
+ lastName: "Thomas",
1291
+ age: 32,
1292
+ jobTitle: "Analyst",
1293
+ address: "8 Side Street, Town, Country, Postcode",
1294
+ },
1295
+ {
1296
+ firstName: "Luke",
1297
+ lastName: "Ashford",
1298
+ age: {
1299
+ data: 18,
1300
+ description: {
1301
+ data: "The age of Luke",
1302
+ icon: '<svg xmlns="http://www.w3.org/2000/svg" height="20" viewBox="0 -960 960 960" width="20"><path d="M180-120q-24 0-42-18t-18-42v-600q0-24 18-42t42-18h600q24 0 42 18t18 42v600q0 24-18 42t-42 18H180Zm0-60h600v-600H180v600Zm56-97h489L578-473 446-302l-93-127-117 152Zm-56 97v-600 600Z"/></svg>',
1303
+ },
1304
+ },
1305
+ jobTitle: {
1306
+ data: "Junior Developer",
1307
+ description: {
1308
+ data: "The job title of Luke",
1309
+ icon: '<svg xmlns="http://www.w3.org/2000/svg" height="20" viewBox="0 -960 960 960" width="20"><path d="M180-120q-24 0-42-18t-18-42v-600q0-24 18-42t42-18h600q24 0 42 18t18 42v600q0 24-18 42t-42 18H180Zm0-60h600v-600H180v600Zm56-97h489L578-473 446-302l-93-127-117 152Zm-56 97v-600 600Z"/></svg>',
1310
+ },
1311
+ },
1312
+ address: "5 New Street, Town, Country, Postcode",
477
1313
  },
478
1314
  ];
479
1315
  export const createDataTableElement = (caption, columns = COLS, data = DATA) => {
@@ -483,7 +1319,32 @@ export const createDataTableElement = (caption, columns = COLS, data = DATA) =>
483
1319
  dataTable.data = data;
484
1320
  return dataTable;
485
1321
  };
486
- export const Basic = () => createDataTableElement("Basic Table");
1322
+ export const Basic = () => {
1323
+ const dataTable = createDataTableElement("Basic Table");
1324
+ dataTable.setAttribute("sortable", "true");
1325
+ return dataTable;
1326
+ };
1327
+ export const DataTableSizing = () => {
1328
+ const dataTable = createDataTableElement("Basic Table", COLS_WIDTH, DATA);
1329
+ dataTable.setAttribute("width", "800px");
1330
+ dataTable.setAttribute("table-layout", "auto");
1331
+ return dataTable;
1332
+ };
1333
+ // Used for table overflow testing
1334
+ // export const TableOverflow = (): HTMLElement => {
1335
+ // const wrapper = document.createElement('div');
1336
+ // const dataTable = createDataTableElement("Basic Table", COLS_WIDTH, DATA);
1337
+ // wrapper.style.maxWidth = '500px'
1338
+ // wrapper.style.overflow = 'auto';
1339
+ // dataTable.setAttribute("width", "1000px");
1340
+ // wrapper.insertAdjacentElement('afterbegin', dataTable);
1341
+ // return wrapper;
1342
+ // }
1343
+ export const LargeDataSet = () => {
1344
+ const dataTable = createDataTableElement("Basic Table", LONG_COLS, LONG_DATA);
1345
+ dataTable.setAttribute("sortable", "true");
1346
+ return dataTable;
1347
+ };
487
1348
  export const Embedded = () => {
488
1349
  const dataTable = createDataTableElement("Embedded Table");
489
1350
  dataTable.setAttribute("embedded", "true");
@@ -520,13 +1381,23 @@ export const Scrollable = () => {
520
1381
  buttonWrapper.insertAdjacentElement("beforeend", unstickButton);
521
1382
  const wrapper = document.createElement("div");
522
1383
  wrapper.insertAdjacentElement("afterbegin", dataTable);
523
- wrapper.insertAdjacentElement("beforeend", buttonWrapper);
1384
+ dataTable.insertAdjacentElement("afterend", buttonWrapper);
524
1385
  return wrapper;
525
1386
  };
1387
+ export const HeaderTruncation = () => {
1388
+ const dataTable = createDataTableElement("Column Header Truncation", COLS, LONG_DATA);
1389
+ dataTable.setAttribute("column-header-truncation", "true");
1390
+ dataTable.style["height"] = "400px";
1391
+ dataTable.style["width"] = "500px";
1392
+ return dataTable;
1393
+ };
526
1394
  export const RowHeaders = () => createDataTableElement("Row Header Table", ROW_HEADER_COLS, ROW_HEADER_DATA);
527
1395
  export const Sort = () => {
528
1396
  const dataTable = createDataTableElement("Sort", COLS, DATA);
529
1397
  dataTable.setAttribute("sortable", "true");
1398
+ dataTable.addEventListener("icSortChange", (event) => {
1399
+ console.log("Sort changed", event.detail);
1400
+ });
530
1401
  return dataTable;
531
1402
  };
532
1403
  export const SortOptions = () => {
@@ -536,24 +1407,436 @@ export const SortOptions = () => {
536
1407
  sortOrders: ["descending", "unsorted"],
537
1408
  defaultColumn: "firstName",
538
1409
  };
1410
+ dataTable.addEventListener("icSortChange", (event) => {
1411
+ console.log("Sort changed", event.detail);
1412
+ });
1413
+ return dataTable;
1414
+ };
1415
+ export const DisableSort = () => {
1416
+ const originalData = [...DATA];
1417
+ const dataTable = createDataTableElement("Sort", COLS, DATA);
1418
+ dataTable.setAttribute("sortable", "true");
1419
+ dataTable.setAttribute("disable-auto-sort", "true");
1420
+ dataTable.addEventListener("icSortChange", (event) => {
1421
+ console.log("Sort changed", event.detail);
1422
+ if (event.detail.sorted === "ascending") {
1423
+ DATA.sort((a, b) => {
1424
+ const column = event.detail.columnName;
1425
+ if (a[column] < b[column])
1426
+ return -1;
1427
+ if (a[column] > b[column])
1428
+ return 1;
1429
+ return 0;
1430
+ });
1431
+ }
1432
+ else if (event.detail.sorted === "descending") {
1433
+ DATA.sort((a, b) => {
1434
+ const column = event.detail.columnName;
1435
+ if (a[column] < b[column])
1436
+ return 1;
1437
+ if (a[column] > b[column])
1438
+ return -1;
1439
+ return 0;
1440
+ });
1441
+ }
1442
+ else {
1443
+ DATA.splice(0, DATA.length, ...originalData);
1444
+ }
1445
+ dataTable.data = [...DATA];
1446
+ });
1447
+ return dataTable;
1448
+ };
1449
+ export const ExcludeColumnsFromSort = () => {
1450
+ const dataTable = createDataTableElement("Sort", COLS_EXCLUDE_SORT, DATA);
1451
+ dataTable.setAttribute("sortable", "true");
539
1452
  return dataTable;
540
1453
  };
541
1454
  export const Pagination = () => {
542
1455
  const dataTable = createDataTableElement("Pagination", LONG_COLS, LONG_DATA);
543
1456
  dataTable.setAttribute("show-pagination", "true");
544
- dataTable.paginationOptions = {
545
- itemsPerPage: [
1457
+ dataTable.paginationBarOptions = {
1458
+ itemsPerPageOptions: [
546
1459
  { label: "5", value: "5" },
547
1460
  { label: "10", value: "10" },
548
1461
  { label: "15", value: "15" },
549
1462
  ],
550
- itemsPerPageControl: true,
551
- goToPageControl: true,
1463
+ showItemsPerPageControl: true,
1464
+ showGoToPageControl: true,
1465
+ };
1466
+ return dataTable;
1467
+ };
1468
+ export const ColumnOverrides = () => createDataTableElement("Column Overrides", COLS_ALIGNMENT, DATA);
1469
+ export const RowOverrides = () => createDataTableElement("Row Overrides", ROW_HEADER_COLS, ROW_ALIGNMENT);
1470
+ export const CellOverrides = () => createDataTableElement("Cell Overrides", COLS, DATA_CELL_ALIGNMENT);
1471
+ export const LinksHTMLElements = () => createDataTableElement("Links and HTML Elements Overrides", COLS_ELEMENTS, DATA_ELEMENTS);
1472
+ export const SlottedElementsWithPagination = () => {
1473
+ const dataTable = createDataTableElement("Slotted elements with pagination", COLS_ELEMENTS_SINGLE_ACTION, DATA_ELEMENTS_PAGINATION);
1474
+ dataTable.setAttribute("show-pagination", "true");
1475
+ dataTable.paginationBarOptions = {
1476
+ itemsPerPageOptions: [
1477
+ { label: "5", value: "5" },
1478
+ { label: "10", value: "10" },
1479
+ ],
1480
+ showItemsPerPageControl: true,
1481
+ showGoToPageControl: true,
1482
+ selectedItemsPerPage: 5,
1483
+ };
1484
+ return dataTable;
1485
+ };
1486
+ export const Empty = () => createDataTableElement("Empty State", COLS, null);
1487
+ export const EmptySlotted = () => {
1488
+ const dataTable = createDataTableElement("Empty State", COLS, null);
1489
+ const emptyState = document.createElement("ic-empty-state");
1490
+ emptyState.setAttribute("aligned", "left");
1491
+ emptyState.setAttribute("heading", "Data source error");
1492
+ emptyState.setAttribute("body", "Error loading new data");
1493
+ emptyState.setAttribute("slot", "empty-state");
1494
+ const button = document.createElement("ic-button");
1495
+ button.innerHTML = "Retry";
1496
+ button.setAttribute("slot", "actions");
1497
+ emptyState.appendChild(button);
1498
+ dataTable.appendChild(emptyState);
1499
+ return dataTable;
1500
+ };
1501
+ export const Loading = () => {
1502
+ const dataTable = createDataTableElement("Loading State", COLS, DATA);
1503
+ dataTable.setAttribute("loading", "true");
1504
+ return dataTable;
1505
+ };
1506
+ export const EmptyLoading = () => {
1507
+ const dataTable = createDataTableElement("Empty and Loading State", COLS, null);
1508
+ setTimeout(() => {
1509
+ dataTable.setAttribute("loading", "true");
1510
+ setTimeout(() => (dataTable.data = DATA), 10);
1511
+ }, 5000);
1512
+ return dataTable;
1513
+ };
1514
+ export const Updating = () => {
1515
+ const dataTable = createDataTableElement("Updating State", COLS, DATA);
1516
+ dataTable.updatingOptions = { progress: 30 };
1517
+ dataTable.setAttribute("updating", "true");
1518
+ return dataTable;
1519
+ };
1520
+ export const CustomIcons = () => createDataTableElement("Custom icons", ICON_COLS, ICON_DATA);
1521
+ export const CustomRowHeights = () => {
1522
+ const dataTable = createDataTableElement("Custom Row Heights", COLUMNS_NO_TEXT_WRAP, VERY_LONG_DATA(10));
1523
+ dataTable.globalRowHeight = 80;
1524
+ dataTable.variableRowHeight = ({ name, age }) => name === "John Smith" || age === 41 ? 200 : null;
1525
+ const resetButton = document.createElement("ic-button");
1526
+ resetButton.addEventListener("click", () => dataTable.resetRowHeights(80));
1527
+ resetButton.innerHTML = "Reset rowHeight to 80";
1528
+ const setButton = document.createElement("ic-button");
1529
+ setButton.addEventListener("click", () => {
1530
+ dataTable.globalRowHeight = 80;
1531
+ dataTable.variableRowHeight = ({ name, age }) => name === "John Smith" || age === 41 ? 200 : null;
1532
+ });
1533
+ setButton.innerHTML = "Set global row height";
1534
+ const buttonWrapper = document.createElement("div");
1535
+ buttonWrapper.style["display"] = "flex";
1536
+ buttonWrapper.style["paddingTop"] = "10px";
1537
+ buttonWrapper.style["gap"] = "8px";
1538
+ buttonWrapper.insertAdjacentElement("afterbegin", setButton);
1539
+ buttonWrapper.insertAdjacentElement("beforeend", resetButton);
1540
+ const wrapper = document.createElement("div");
1541
+ wrapper.insertAdjacentElement("afterbegin", dataTable);
1542
+ wrapper.insertAdjacentElement("beforeend", buttonWrapper);
1543
+ return wrapper;
1544
+ };
1545
+ export const TruncationShowHide = () => {
1546
+ const dataTable = CustomRowHeights().querySelector("ic-data-table");
1547
+ dataTable.globalRowHeight = 40;
1548
+ dataTable.variableRowHeight = null;
1549
+ dataTable.truncationPattern = "show-hide";
1550
+ const resetButton = document.createElement("ic-button");
1551
+ resetButton.addEventListener("click", () => dataTable.resetRowHeights(40));
1552
+ resetButton.innerHTML = "Reset rowHeight to 40";
1553
+ const setButton = document.createElement("ic-button");
1554
+ setButton.addEventListener("click", () => {
1555
+ dataTable.globalRowHeight = 80;
1556
+ });
1557
+ setButton.innerHTML = "Set globalRowHeight to 80";
1558
+ const updateDataButton = document.createElement("ic-button");
1559
+ updateDataButton.addEventListener("click", () => {
1560
+ setTimeout(() => {
1561
+ dataTable.data = LONG_DATA_VALUES_UPDATE;
1562
+ }, 500);
1563
+ });
1564
+ updateDataButton.innerHTML = "Update data";
1565
+ const buttonWrapper = document.createElement("div");
1566
+ buttonWrapper.style["display"] = "flex";
1567
+ buttonWrapper.style["paddingTop"] = "10px";
1568
+ buttonWrapper.style["gap"] = "8px";
1569
+ buttonWrapper.insertAdjacentElement("afterbegin", setButton);
1570
+ buttonWrapper.insertAdjacentElement("beforeend", resetButton);
1571
+ buttonWrapper.insertAdjacentElement("beforeend", updateDataButton);
1572
+ const wrapper = document.createElement("div");
1573
+ wrapper.insertAdjacentElement("afterbegin", dataTable);
1574
+ wrapper.insertAdjacentElement("beforeend", buttonWrapper);
1575
+ return wrapper;
1576
+ };
1577
+ export const TruncationTextWrap = () => {
1578
+ const dataTable = createDataTableElement("Text Wrap", COLUMNS_TEXT_WRAP, TEXT_WRAP_LONG_DATA);
1579
+ dataTable.globalRowHeight = 40;
1580
+ dataTable.variableRowHeight = null;
1581
+ const wrapper = document.createElement("div");
1582
+ wrapper.insertAdjacentElement("afterbegin", dataTable);
1583
+ return wrapper;
1584
+ };
1585
+ export const TruncationTooltip = () => {
1586
+ const dataTable = CustomRowHeights().querySelector("ic-data-table");
1587
+ dataTable.globalRowHeight = 40;
1588
+ dataTable.variableRowHeight = null;
1589
+ dataTable.setAttribute("truncation-pattern", "tooltip");
1590
+ dataTable.setAttribute("sortable", "true");
1591
+ const resetButton = document.createElement("ic-button");
1592
+ resetButton.addEventListener("click", () => dataTable.resetRowHeights(40));
1593
+ resetButton.innerHTML = "Reset rowHeight to 40";
1594
+ const setButton = document.createElement("ic-button");
1595
+ setButton.addEventListener("click", () => {
1596
+ dataTable.globalRowHeight = 80;
1597
+ });
1598
+ setButton.innerHTML = "Set global row heights to 80";
1599
+ const buttonWrapper = document.createElement("div");
1600
+ buttonWrapper.style["display"] = "flex";
1601
+ buttonWrapper.style["paddingTop"] = "10px";
1602
+ buttonWrapper.style["gap"] = "8px";
1603
+ buttonWrapper.insertAdjacentElement("afterbegin", setButton);
1604
+ buttonWrapper.insertAdjacentElement("beforeend", resetButton);
1605
+ const wrapper = document.createElement("div");
1606
+ wrapper.insertAdjacentElement("afterbegin", dataTable);
1607
+ wrapper.insertAdjacentElement("beforeend", buttonWrapper);
1608
+ return wrapper;
1609
+ };
1610
+ export const CustomTitleBar = () => {
1611
+ const dataTable = createDataTableElement("Custom Title Bar", COLS, DATA);
1612
+ const titleBar = document.createElement("ic-data-table-title-bar");
1613
+ titleBar.setAttribute("description", "Data table description that describes the purpose of the table.");
1614
+ titleBar.setAttribute("metadata", "128 items | 32gb | Updated: 01/02/03");
1615
+ titleBar.setAttribute("slot", "title-bar");
1616
+ const customDescription = document.createElement("ic-typography");
1617
+ customDescription.setAttribute("variant", "body");
1618
+ customDescription.setAttribute("slot", "description");
1619
+ customDescription.innerHTML =
1620
+ '<p>This is some text and <ic-link href="/" inline="">this is an inline link</ic-link> within the text.</p>';
1621
+ const primaryButton = document.createElement("ic-button");
1622
+ primaryButton.setAttribute("slot", "primary-action");
1623
+ primaryButton.setAttribute("size", "small");
1624
+ primaryButton.innerHTML = "Primary";
1625
+ const customButtons = [1, 2, 3].map((x) => {
1626
+ const customButton = document.createElement("ic-button");
1627
+ customButton.setAttribute("slot", "custom-actions");
1628
+ customButton.setAttribute("variant", "icon");
1629
+ customButton.setAttribute("aria-label", `Icon ${x}`);
1630
+ customButton.innerHTML =
1631
+ '<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 -960 960 960" width="24"><path d="M180-120q-24 0-42-18t-18-42v-600q0-24 18-42t42-18h600q24 0 42 18t18 42v600q0 24-18 42t-42 18H180Zm0-60h600v-600H180v600Zm56-97h489L578-473 446-302l-93-127-117 152Zm-56 97v-600 600Z" /></svg>';
1632
+ return customButton;
1633
+ });
1634
+ titleBar.append(primaryButton, customDescription);
1635
+ customButtons.forEach((button) => titleBar.append(button));
1636
+ dataTable.appendChild(titleBar);
1637
+ return dataTable;
1638
+ };
1639
+ export const UpdatingData = () => {
1640
+ const dataTable = createDataTableElement("Updating Data", COLS, []);
1641
+ const pageOptions = [{ label: "5", value: "5" }];
1642
+ dataTable.showPagination = true;
1643
+ dataTable.paginationBarOptions = {
1644
+ itemsPerPageOptions: pageOptions,
1645
+ showItemsPerPageControl: true,
1646
+ showGoToPageControl: true,
1647
+ rangeLabelType: "page",
552
1648
  };
1649
+ const updateDataButton = document.createElement("ic-button");
1650
+ updateDataButton.addEventListener("click", () => {
1651
+ dataTable.data = [...dataTable.data, ...LONG_DATA];
1652
+ });
1653
+ updateDataButton.innerHTML = "Update data";
1654
+ const clearDataButton = document.createElement("ic-button");
1655
+ clearDataButton.addEventListener("click", () => {
1656
+ dataTable.data = [];
1657
+ });
1658
+ clearDataButton.innerHTML = "Clear data";
1659
+ const updatePaginationButton = document.createElement("ic-button");
1660
+ updatePaginationButton.addEventListener("click", () => {
1661
+ dataTable.paginationBarOptions = Object.assign(Object.assign({}, dataTable.paginationBarOptions), { itemsPerPageOptions: [
1662
+ { label: "10", value: "10" },
1663
+ { label: "20", value: "20" },
1664
+ { label: "50", value: "50" },
1665
+ ] });
1666
+ });
1667
+ updatePaginationButton.innerHTML = "Update page lengths";
1668
+ const resetPaginationButton = document.createElement("ic-button");
1669
+ resetPaginationButton.addEventListener("click", () => {
1670
+ dataTable.paginationBarOptions = Object.assign(Object.assign({}, dataTable.paginationBarOptions), { itemsPerPageOptions: pageOptions });
1671
+ });
1672
+ resetPaginationButton.innerHTML = "Reset page lengths";
1673
+ const buttonWrapper = document.createElement("div");
1674
+ buttonWrapper.style["display"] = "flex";
1675
+ buttonWrapper.style["paddingTop"] = "10px";
1676
+ buttonWrapper.style["gap"] = "8px";
1677
+ buttonWrapper.insertAdjacentElement("afterbegin", updateDataButton);
1678
+ buttonWrapper.insertAdjacentElement("beforeend", clearDataButton);
1679
+ buttonWrapper.insertAdjacentElement("beforeend", updatePaginationButton);
1680
+ buttonWrapper.insertAdjacentElement("beforeend", resetPaginationButton);
1681
+ const wrapper = document.createElement("div");
1682
+ wrapper.insertAdjacentElement("afterbegin", dataTable);
1683
+ wrapper.insertAdjacentElement("beforeend", buttonWrapper);
1684
+ return wrapper;
1685
+ };
1686
+ export const SlottedPagination = () => {
1687
+ let itemsPerPage = 5;
1688
+ const dataTable = createDataTableElement("slotted-pagination", LONG_COLS, LONG_DATA);
1689
+ const paginationBar = document.createElement("ic-pagination-bar");
1690
+ paginationBar.setAttribute("total-items", `${LONG_DATA.length}`);
1691
+ paginationBar.setAttribute("show-items-per-page-control", "true");
1692
+ paginationBar.itemsPerPageOptions = [
1693
+ { label: "5", value: "5" },
1694
+ { label: "10", value: "10" },
1695
+ ];
1696
+ paginationBar.setAttribute("slot", "pagination-bar");
1697
+ paginationBar.addEventListener("icItemsPerPageChange", (ev) => {
1698
+ itemsPerPage = ev.detail.value;
1699
+ dataTable.data = LONG_DATA.slice(0, itemsPerPage);
1700
+ });
1701
+ paginationBar.addEventListener("icPageChange", (ev) => {
1702
+ const fromRow = (ev.detail.value - 1) * itemsPerPage;
1703
+ dataTable.data = LONG_DATA.slice(fromRow, fromRow + itemsPerPage);
1704
+ });
1705
+ dataTable.appendChild(paginationBar);
1706
+ return dataTable;
1707
+ };
1708
+ export const ActionElement = () => createDataTableElement("Action Element", COLS, ACTION_DATA_ELEMENTS);
1709
+ export const MissingCellData = () => createDataTableElement("Missing Cell Data", COLS, DATA_WITH_EMPTY_VALUES);
1710
+ export const TurnOffSelectedRowHighlighting = () => {
1711
+ const dataTable = createDataTableElement("Turn off selected row highlighting", COLS, DATA);
1712
+ dataTable.setAttribute("highlight-selected-row", "false");
1713
+ return dataTable;
1714
+ };
1715
+ export const SelectedRowChangeEvent = () => {
1716
+ const dataTable = createDataTableElement("Turn off selected row highlighting", COLS, DATA);
1717
+ dataTable.addEventListener("icSelectedRowChange", (event) => {
1718
+ console.log("Selected row changed", event.detail);
1719
+ });
1720
+ return dataTable;
1721
+ };
1722
+ export const DevArea = () => {
1723
+ const dataTable = createDataTableElement("Basic Table", COLS, VERY_LONG_DATA(5));
1724
+ dataTable.sortable = true;
1725
+ dataTable.variableRowHeight = null;
1726
+ dataTable.showPagination = true;
1727
+ const description = document.createElement("ic-typography");
1728
+ description.innerHTML = `
1729
+ Use the buttons to change the state of the Data Tables component.<br /><br />
1730
+ By default, the global row height is set to <b>'auto'</b>. This means the row height will be dictated by the cell with the most lines.<br />
1731
+ In order to view the truncated data, the truncation pattern must first be set and then the row height. The reason for this is, the data will know how to behave if the cell space is reduced.<br />
1732
+ Setting the truncation pattern while the row height is set to auto will not display the truncated data as the table cells
1733
+ will have enough space to show all table cell data.<br /><br />
1734
+ In this demo, the even rows have <b>'textWrap'</b> applied.
1735
+ `;
1736
+ const resetButton = document.createElement("ic-button");
1737
+ resetButton.addEventListener("click", () => dataTable.resetRowHeights());
1738
+ resetButton.innerHTML = "Reset row height: auto";
1739
+ const rowHeight40Btn = document.createElement("ic-button");
1740
+ rowHeight40Btn.addEventListener("click", () => {
1741
+ dataTable.globalRowHeight = 40;
1742
+ });
1743
+ rowHeight40Btn.innerHTML = "Set global row height: 40";
1744
+ const rowHeight80Btn = document.createElement("ic-button");
1745
+ rowHeight80Btn.addEventListener("click", () => {
1746
+ dataTable.globalRowHeight = 80;
1747
+ });
1748
+ rowHeight80Btn.innerHTML = "Set global row height: 80";
1749
+ const rowHeight150Btn = document.createElement("ic-button");
1750
+ rowHeight150Btn.addEventListener("click", () => {
1751
+ dataTable.globalRowHeight = 150;
1752
+ });
1753
+ rowHeight150Btn.innerHTML = "Set global row height: 150";
1754
+ const updateRows200Btn = document.createElement("ic-button");
1755
+ updateRows200Btn.addEventListener("click", () => {
1756
+ setTimeout(() => {
1757
+ dataTable.data = VERY_LONG_DATA(200);
1758
+ }, 500);
1759
+ });
1760
+ updateRows200Btn.innerHTML = "Update data rows: 200";
1761
+ const tooltipTruncationBtn = document.createElement("ic-button");
1762
+ tooltipTruncationBtn.textContent = "truncationPattern: tooltip";
1763
+ tooltipTruncationBtn.addEventListener("click", () => {
1764
+ dataTable.truncationPattern = "tooltip";
1765
+ });
1766
+ const showHideTruncationBtn = document.createElement("ic-button");
1767
+ showHideTruncationBtn.textContent = "truncationPattern: show-hide";
1768
+ showHideTruncationBtn.addEventListener("click", () => {
1769
+ dataTable.truncationPattern = "show-hide";
1770
+ });
1771
+ const buttonWrapper = document.createElement("div");
1772
+ buttonWrapper.className = "wrapper";
1773
+ buttonWrapper.style["display"] = "flex";
1774
+ buttonWrapper.style["flexWrap"] = "wrap";
1775
+ buttonWrapper.style["paddingBlock"] = "10px";
1776
+ buttonWrapper.style["gap"] = "8px";
1777
+ buttonWrapper.insertAdjacentElement("beforeend", tooltipTruncationBtn);
1778
+ buttonWrapper.insertAdjacentElement("beforeend", showHideTruncationBtn);
1779
+ buttonWrapper.insertAdjacentElement("beforeend", rowHeight40Btn);
1780
+ buttonWrapper.insertAdjacentElement("beforeend", rowHeight80Btn);
1781
+ buttonWrapper.insertAdjacentElement("beforeend", rowHeight150Btn);
1782
+ buttonWrapper.insertAdjacentElement("beforeend", resetButton);
1783
+ buttonWrapper.insertAdjacentElement("beforeend", updateRows200Btn);
1784
+ const wrapper = document.createElement("div");
1785
+ wrapper.insertAdjacentElement("beforeend", description);
1786
+ wrapper.insertAdjacentElement("beforeend", buttonWrapper);
1787
+ wrapper.insertAdjacentElement("beforeend", dataTable);
1788
+ return wrapper;
1789
+ };
1790
+ export const CellDescriptions = () => {
1791
+ const dataTable = createDataTableElement("Cell descriptions data table", COLS, DATA_ELEMENTS_WITH_DESCRIPTIONS);
1792
+ dataTable.setAttribute("sortable", "true");
553
1793
  return dataTable;
554
1794
  };
555
- export const ColumnOverrides = () => createDataTableElement("Column Overides", COLS_ALIGNMENT, DATA);
556
- export const RowOverrides = () => createDataTableElement("Row Overides", ROW_HEADER_COLS, ROW_ALIGNMENT);
557
- export const CellOverrides = () => createDataTableElement("Cell Overides", COLS, DATA_CELL_ALIGNMENT);
558
- export const LinksHTMLElements = () => createDataTableElement("Links and HTML Elements Overides", COLS_ELEMENTS, DATA_ELEMENTS);
1795
+ export const LongCellDescriptions = () => {
1796
+ const dataTable = createDataTableElement("Cell descriptions data table auto with tooltip", COLS, LONG_DATA_ELEMENTS_WITH_DESCRIPTIONS);
1797
+ const tooltipTruncationBtn = document.createElement("ic-button");
1798
+ tooltipTruncationBtn.textContent = "truncationPattern: tooltip";
1799
+ tooltipTruncationBtn.addEventListener("click", () => {
1800
+ dataTable.truncationPattern = "tooltip";
1801
+ });
1802
+ const showHideTruncationBtn = document.createElement("ic-button");
1803
+ showHideTruncationBtn.textContent = "truncationPattern: show-hide";
1804
+ showHideTruncationBtn.addEventListener("click", () => {
1805
+ dataTable.truncationPattern = "show-hide";
1806
+ });
1807
+ const buttonWrapper = document.createElement("div");
1808
+ buttonWrapper.className = "wrapper";
1809
+ buttonWrapper.style["display"] = "flex";
1810
+ buttonWrapper.style["flexWrap"] = "wrap";
1811
+ buttonWrapper.style["paddingBlock"] = "10px";
1812
+ buttonWrapper.style["gap"] = "8px";
1813
+ const resetButton = document.createElement("ic-button");
1814
+ resetButton.addEventListener("click", () => dataTable.resetRowHeights());
1815
+ resetButton.innerHTML = "Reset row height: auto";
1816
+ const rowHeight40Btn = document.createElement("ic-button");
1817
+ rowHeight40Btn.addEventListener("click", () => {
1818
+ dataTable.globalRowHeight = 40;
1819
+ });
1820
+ rowHeight40Btn.innerHTML = "Set global row height: 40";
1821
+ const rowHeight80Btn = document.createElement("ic-button");
1822
+ rowHeight80Btn.addEventListener("click", () => {
1823
+ dataTable.globalRowHeight = 80;
1824
+ });
1825
+ rowHeight80Btn.innerHTML = "Set global row height: 80";
1826
+ const rowHeight150Btn = document.createElement("ic-button");
1827
+ rowHeight150Btn.addEventListener("click", () => {
1828
+ dataTable.globalRowHeight = 150;
1829
+ });
1830
+ rowHeight150Btn.innerHTML = "Set global row height: 150";
1831
+ buttonWrapper.insertAdjacentElement("beforeend", tooltipTruncationBtn);
1832
+ buttonWrapper.insertAdjacentElement("beforeend", showHideTruncationBtn);
1833
+ buttonWrapper.insertAdjacentElement("beforeend", rowHeight40Btn);
1834
+ buttonWrapper.insertAdjacentElement("beforeend", rowHeight80Btn);
1835
+ buttonWrapper.insertAdjacentElement("beforeend", rowHeight150Btn);
1836
+ buttonWrapper.insertAdjacentElement("beforeend", resetButton);
1837
+ const wrapper = document.createElement("div");
1838
+ wrapper.insertAdjacentElement("beforeend", buttonWrapper);
1839
+ wrapper.insertAdjacentElement("beforeend", dataTable);
1840
+ return wrapper;
1841
+ };
559
1842
  //# sourceMappingURL=story-data.js.map