@xplortech/apollo-core 1.0.0-beta.8 → 2.4.2

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 (528) hide show
  1. package/.typings/apollo-components.html-data.json +4396 -0
  2. package/README.md +57 -25
  3. package/build/style.css +4374 -3359
  4. package/dist/apollo-core/apollo-core.css +50 -24
  5. package/dist/apollo-core/apollo-core.esm.js +1 -1
  6. package/dist/apollo-core/p-0ac33b3a.entry.js +1 -0
  7. package/dist/apollo-core/p-23ef2717.entry.js +6 -0
  8. package/dist/apollo-core/p-31461db7.entry.js +1 -0
  9. package/dist/apollo-core/p-3b5f8989.entry.js +1 -0
  10. package/dist/apollo-core/p-4fab8172.entry.js +1 -0
  11. package/dist/apollo-core/p-576ce90f.entry.js +1 -0
  12. package/dist/apollo-core/p-5ec45742.entry.js +1 -0
  13. package/dist/apollo-core/p-7b7db57a.entry.js +1 -0
  14. package/dist/apollo-core/p-7f8e5cd0.entry.js +1 -0
  15. package/dist/apollo-core/p-812bb0e4.entry.js +1 -0
  16. package/dist/apollo-core/p-845eef0d.entry.js +1 -0
  17. package/dist/apollo-core/p-8c1f73ea.entry.js +1 -0
  18. package/dist/apollo-core/p-94209785.entry.js +1 -0
  19. package/dist/apollo-core/p-9853028c.entry.js +1 -0
  20. package/dist/apollo-core/p-9d65ece7.entry.js +1 -0
  21. package/dist/apollo-core/p-CH4yJ6Qx.js +1 -0
  22. package/dist/apollo-core/p-Cqlsd6nf.js +1 -0
  23. package/dist/apollo-core/p-DQuL1Twl.js +1 -0
  24. package/dist/apollo-core/p-DhZas3eX.js +2 -0
  25. package/dist/apollo-core/p-b1f4604d.entry.js +1 -0
  26. package/dist/apollo-core/p-be292555.entry.js +1 -0
  27. package/dist/cjs/apollo-core.cjs.js +15 -13
  28. package/dist/cjs/app-globals-V2Kpy_OQ.js +5 -0
  29. package/dist/{esm/xpl-input.entry.js → cjs/index-BvmWjxWc.js} +2 -94
  30. package/dist/cjs/index-D__N_vw2.js +2160 -0
  31. package/dist/cjs/loader.cjs.js +6 -15
  32. package/dist/cjs/{v4-14140ff3.js → v4-D4KzFnn8.js} +1 -11
  33. package/dist/cjs/xpl-accordion.cjs.entry.js +73 -0
  34. package/dist/cjs/xpl-application-shell.cjs.entry.js +41 -46
  35. package/dist/cjs/xpl-avatar_41.cjs.entry.js +5521 -0
  36. package/dist/cjs/xpl-button-row.cjs.entry.js +13 -18
  37. package/dist/cjs/xpl-calendar.cjs.entry.js +66 -0
  38. package/dist/cjs/xpl-dynamic-table-cell.cjs.entry.js +33 -0
  39. package/dist/cjs/xpl-dynamic-table-row.cjs.entry.js +37 -0
  40. package/dist/cjs/xpl-dynamic-table.cjs.entry.js +64 -0
  41. package/dist/cjs/xpl-grid-item.cjs.entry.js +16 -18
  42. package/dist/cjs/xpl-grid.cjs.entry.js +29 -28
  43. package/dist/cjs/xpl-large-card.cjs.entry.js +27 -0
  44. package/dist/cjs/xpl-list.cjs.entry.js +23 -30
  45. package/dist/cjs/xpl-main-nav.cjs.entry.js +18 -20
  46. package/dist/cjs/xpl-table-header-cell.cjs.entry.js +57 -0
  47. package/dist/cjs/xpl-table-header.cjs.entry.js +14 -0
  48. package/dist/cjs/xpl-toggle.cjs.entry.js +22 -30
  49. package/dist/cjs/xpl-toolbar.cjs.entry.js +28 -0
  50. package/dist/collection/collection-manifest.json +59 -32
  51. package/dist/collection/components/xpl-accordion/accordion.stories.js +76 -0
  52. package/dist/collection/components/xpl-accordion/xpl-accordion.js +236 -0
  53. package/dist/collection/components/xpl-application-shell/application-shell.stories.js +733 -0
  54. package/dist/collection/components/xpl-application-shell/xpl-application-shell.js +163 -158
  55. package/dist/collection/components/xpl-avatar/avatar.stories.js +128 -0
  56. package/dist/collection/components/xpl-avatar/xpl-avatar.js +171 -162
  57. package/dist/collection/components/xpl-backdrop/backdrop.stories.js +20 -0
  58. package/dist/collection/components/xpl-backdrop/xpl-backdrop.js +39 -37
  59. package/dist/collection/components/xpl-badge/badge.stories.js +48 -0
  60. package/dist/collection/components/xpl-badge/xpl-badge.js +52 -52
  61. package/dist/collection/components/xpl-breadcrumbs/breadcrumbs.stories.js +130 -0
  62. package/dist/collection/components/xpl-breadcrumbs/xpl-breadcrumb-item/xpl-breadcrumb-item.js +8 -12
  63. package/dist/collection/components/xpl-breadcrumbs/xpl-breadcrumbs/xpl-breadcrumbs.js +5 -8
  64. package/dist/collection/components/xpl-button/button.stories.js +133 -0
  65. package/dist/collection/components/xpl-button/xpl-button.js +272 -245
  66. package/dist/collection/components/xpl-button-row/button-row.stories.js +69 -0
  67. package/dist/collection/components/xpl-button-row/xpl-button-row.js +119 -116
  68. package/dist/collection/components/xpl-calendar/calendar.stories.js +59 -0
  69. package/dist/collection/components/xpl-calendar/xpl-calendar.js +224 -0
  70. package/dist/collection/components/xpl-checkbox/checkbox.stories.js +79 -0
  71. package/dist/collection/components/xpl-checkbox/xpl-checkbox.js +226 -193
  72. package/dist/collection/components/xpl-choicelist/choicelist.stories.js +134 -0
  73. package/dist/collection/components/xpl-choicelist/xpl-choicelist.js +220 -154
  74. package/dist/collection/components/xpl-content-area/content-area.stories.js +55 -0
  75. package/dist/collection/components/xpl-content-area/xpl-content-area.js +35 -33
  76. package/dist/collection/components/xpl-dashboard/dashboard.stories.js +48 -0
  77. package/dist/collection/components/xpl-dashboard/xpl-dashboard.js +7 -0
  78. package/dist/collection/components/xpl-data-card/data-card.stories.js +111 -0
  79. package/dist/collection/components/xpl-data-card/xpl-data-card.js +316 -0
  80. package/dist/collection/components/xpl-divider/divider.stories.js +32 -0
  81. package/dist/collection/components/xpl-divider/xpl-divider.js +30 -31
  82. package/dist/collection/components/xpl-dropdown/dropdown.stories.js +383 -0
  83. package/dist/collection/components/xpl-dropdown/xpl-dropdown-group/xpl-dropdown-group.js +68 -66
  84. package/dist/collection/components/xpl-dropdown/xpl-dropdown-heading/xpl-dropdown-heading.js +28 -29
  85. package/dist/collection/components/xpl-dropdown/xpl-dropdown-option/xpl-dropdown-option.js +148 -114
  86. package/dist/collection/components/xpl-dropdown/xpl-dropdown.js +438 -256
  87. package/dist/collection/components/xpl-dynamic-table/dynamic-table.stories.js +161 -0
  88. package/dist/collection/components/xpl-dynamic-table/xpl-dynamic-table.js +97 -0
  89. package/dist/collection/components/xpl-dynamic-table-cell/xpl-dynamic-table-cell.js +52 -0
  90. package/dist/collection/components/xpl-dynamic-table-row/xpl-dynamic-table-row.js +81 -0
  91. package/dist/{stories → collection/components/xpl-grid}/grid.stories.js +44 -68
  92. package/dist/collection/components/xpl-grid/xpl-grid.js +27 -24
  93. package/dist/collection/components/xpl-grid-item/xpl-grid-item.js +100 -92
  94. package/dist/collection/components/xpl-header-accordion/header-accordion.stories.js +48 -0
  95. package/dist/collection/components/xpl-header-accordion/xpl-header-accordion.js +200 -0
  96. package/dist/collection/components/xpl-icon/icons.stories.js +107 -0
  97. package/dist/collection/components/xpl-icon/xpl-icon.css +5 -0
  98. package/dist/collection/components/xpl-icon/xpl-icon.js +101 -0
  99. package/dist/collection/components/xpl-input/input.stories.js +531 -0
  100. package/dist/collection/components/xpl-input/xpl-input-color/color-utils.js +167 -0
  101. package/dist/collection/components/xpl-input/xpl-input-color/xpl-input-color.js +387 -0
  102. package/dist/collection/components/xpl-input/xpl-input-date/xpl-input-date.js +377 -0
  103. package/dist/collection/components/xpl-input/xpl-input-file/xpl-input-file.js +276 -0
  104. package/dist/collection/components/xpl-input/xpl-input-time/time-utils.js +63 -0
  105. package/dist/collection/components/xpl-input/xpl-input-time/xpl-input-time.js +425 -0
  106. package/dist/collection/components/xpl-input/xpl-input.js +729 -460
  107. package/dist/collection/components/xpl-large-card/large-card.stories.js +127 -0
  108. package/dist/collection/components/xpl-large-card/xpl-large-card.js +81 -0
  109. package/dist/collection/components/xpl-list/list.stories.js +148 -0
  110. package/dist/collection/components/xpl-list/xpl-list.js +51 -53
  111. package/dist/collection/components/xpl-main-nav/main-nav.stories.js +307 -0
  112. package/dist/collection/components/xpl-main-nav/xpl-main-nav.js +65 -63
  113. package/dist/collection/components/xpl-modal/modal.stories.js +87 -0
  114. package/dist/collection/components/xpl-modal/xpl-modal.js +139 -0
  115. package/dist/collection/components/xpl-nav-item/xpl-nav-item.js +63 -61
  116. package/dist/collection/components/xpl-pagination/pagination.stories.js +35 -0
  117. package/dist/collection/components/xpl-pagination/xpl-pagination.js +217 -172
  118. package/dist/collection/components/xpl-popover/popover.stories.js +164 -0
  119. package/dist/collection/components/xpl-popover/xpl-popover.js +346 -0
  120. package/dist/collection/components/xpl-progress/progress.stories.js +102 -0
  121. package/dist/collection/components/xpl-progress/xpl-progress.js +60 -0
  122. package/dist/collection/components/xpl-radio/radio.stories.js +91 -0
  123. package/dist/collection/components/xpl-radio/xpl-radio.js +188 -175
  124. package/dist/collection/components/xpl-secondary-nav/secondary-nav.stories.js +78 -0
  125. package/dist/collection/components/xpl-secondary-nav/xpl-secondary-nav.js +5 -5
  126. package/dist/collection/components/xpl-select/select.stories.js +293 -0
  127. package/dist/collection/components/xpl-select/xpl-select.js +660 -308
  128. package/dist/collection/components/xpl-skeleton/skeleton.stories.js +67 -0
  129. package/dist/collection/components/xpl-skeleton/xpl-skeleton.js +175 -0
  130. package/dist/collection/components/xpl-slideout/slideout.stories.js +103 -0
  131. package/dist/collection/components/xpl-slideout/xpl-slideout.js +150 -0
  132. package/dist/collection/components/xpl-tab/xpl-tab.js +77 -0
  133. package/dist/collection/components/xpl-tab-panel/xpl-tab-panel.js +56 -0
  134. package/dist/collection/components/xpl-table/table.stories.js +143 -0
  135. package/dist/collection/components/xpl-table/xpl-table.js +379 -214
  136. package/dist/collection/components/xpl-table-header/table-header.stories.js +122 -0
  137. package/dist/collection/components/xpl-table-header/xpl-table-header.js +7 -0
  138. package/dist/collection/components/xpl-table-header-cell/table-header-cell.stories.js +71 -0
  139. package/dist/collection/components/xpl-table-header-cell/xpl-table-header-cell.js +198 -0
  140. package/dist/collection/components/xpl-tabs/tabs.stories.js +77 -0
  141. package/dist/collection/components/xpl-tabs/xpl-tabs.js +206 -0
  142. package/dist/collection/components/xpl-tag/xpl-tag.js +27 -27
  143. package/dist/collection/components/xpl-toast/toast.stories.js +82 -0
  144. package/dist/collection/components/xpl-toast/xpl-toast.js +162 -0
  145. package/dist/collection/components/xpl-toggle/toggle.stories.js +84 -0
  146. package/dist/collection/components/xpl-toggle/xpl-toggle.js +165 -157
  147. package/dist/collection/components/xpl-toolbar/xpl-toolbar.js +56 -0
  148. package/dist/collection/components/xpl-tooltip/tooltip-arrow.js +2 -0
  149. package/dist/collection/components/xpl-tooltip/tooltip.stories.js +85 -0
  150. package/dist/collection/components/xpl-tooltip/xpl-tooltip.js +75 -0
  151. package/dist/collection/components/xpl-utility-bar/utility-bar.stories.js +87 -0
  152. package/dist/collection/components/xpl-utility-bar/xpl-utility-bar.js +89 -93
  153. package/dist/components/_commonjsHelpers.js +1 -0
  154. package/dist/components/index.d.ts +45 -0
  155. package/dist/components/index.js +1 -0
  156. package/dist/components/index2.js +1 -0
  157. package/dist/components/index3.js +1 -0
  158. package/dist/components/v4.js +1 -0
  159. package/dist/components/xpl-accordion.d.ts +11 -0
  160. package/dist/components/xpl-accordion.js +1 -0
  161. package/dist/components/xpl-application-shell.d.ts +11 -0
  162. package/dist/components/xpl-application-shell.js +1 -0
  163. package/dist/components/xpl-avatar.d.ts +11 -0
  164. package/dist/components/xpl-avatar.js +1 -0
  165. package/dist/components/xpl-avatar2.js +1 -0
  166. package/dist/components/xpl-backdrop.d.ts +11 -0
  167. package/dist/components/xpl-backdrop.js +1 -0
  168. package/dist/components/xpl-backdrop2.js +1 -0
  169. package/dist/components/xpl-badge.d.ts +11 -0
  170. package/dist/components/xpl-badge.js +1 -0
  171. package/dist/components/xpl-badge2.js +1 -0
  172. package/dist/components/xpl-breadcrumb-item.d.ts +11 -0
  173. package/dist/components/xpl-breadcrumb-item.js +1 -0
  174. package/dist/components/xpl-breadcrumbs.d.ts +11 -0
  175. package/dist/components/xpl-breadcrumbs.js +1 -0
  176. package/dist/components/xpl-button-row.d.ts +11 -0
  177. package/dist/components/xpl-button-row.js +1 -0
  178. package/dist/components/xpl-button.d.ts +11 -0
  179. package/dist/components/xpl-button.js +1 -0
  180. package/dist/components/xpl-button2.js +1 -0
  181. package/dist/components/xpl-calendar.d.ts +11 -0
  182. package/dist/components/xpl-calendar.js +1 -0
  183. package/dist/components/xpl-checkbox.d.ts +11 -0
  184. package/dist/components/xpl-checkbox.js +1 -0
  185. package/dist/components/xpl-checkbox2.js +1 -0
  186. package/dist/components/xpl-choicelist.d.ts +11 -0
  187. package/dist/components/xpl-choicelist.js +1 -0
  188. package/dist/components/xpl-content-area.d.ts +11 -0
  189. package/dist/components/xpl-content-area.js +1 -0
  190. package/dist/components/xpl-dashboard.d.ts +11 -0
  191. package/dist/components/xpl-dashboard.js +1 -0
  192. package/dist/components/xpl-data-card.d.ts +11 -0
  193. package/dist/components/xpl-data-card.js +1 -0
  194. package/dist/components/xpl-divider.d.ts +11 -0
  195. package/dist/components/xpl-divider.js +1 -0
  196. package/dist/components/xpl-divider2.js +1 -0
  197. package/dist/components/xpl-dropdown-group.d.ts +11 -0
  198. package/dist/components/xpl-dropdown-group.js +1 -0
  199. package/dist/components/xpl-dropdown-group2.js +1 -0
  200. package/dist/components/xpl-dropdown-heading.d.ts +11 -0
  201. package/dist/components/xpl-dropdown-heading.js +1 -0
  202. package/dist/components/xpl-dropdown-heading2.js +1 -0
  203. package/dist/components/xpl-dropdown-option.d.ts +11 -0
  204. package/dist/components/xpl-dropdown-option.js +1 -0
  205. package/dist/components/xpl-dropdown-option2.js +1 -0
  206. package/dist/components/xpl-dropdown.d.ts +11 -0
  207. package/dist/components/xpl-dropdown.js +1 -0
  208. package/dist/components/xpl-dropdown2.js +1 -0
  209. package/dist/components/xpl-dynamic-table-cell.d.ts +11 -0
  210. package/dist/components/xpl-dynamic-table-cell.js +1 -0
  211. package/dist/components/xpl-dynamic-table-row.d.ts +11 -0
  212. package/dist/components/xpl-dynamic-table-row.js +1 -0
  213. package/dist/components/xpl-dynamic-table.d.ts +11 -0
  214. package/dist/components/xpl-dynamic-table.js +1 -0
  215. package/dist/components/xpl-grid-item.d.ts +11 -0
  216. package/dist/components/xpl-grid-item.js +1 -0
  217. package/dist/components/xpl-grid.d.ts +11 -0
  218. package/dist/components/xpl-grid.js +1 -0
  219. package/dist/components/xpl-header-accordion.d.ts +11 -0
  220. package/dist/components/xpl-header-accordion.js +1 -0
  221. package/dist/components/xpl-icon.d.ts +11 -0
  222. package/dist/components/xpl-icon.js +1 -0
  223. package/dist/components/xpl-icon2.js +6 -0
  224. package/dist/components/xpl-input-color.d.ts +11 -0
  225. package/dist/components/xpl-input-color.js +1 -0
  226. package/dist/components/xpl-input-date.d.ts +11 -0
  227. package/dist/components/xpl-input-date.js +1 -0
  228. package/dist/components/xpl-input-date2.js +1 -0
  229. package/dist/components/xpl-input-file.d.ts +11 -0
  230. package/dist/components/xpl-input-file.js +1 -0
  231. package/dist/components/xpl-input-file2.js +1 -0
  232. package/dist/components/xpl-input-time.d.ts +11 -0
  233. package/dist/components/xpl-input-time.js +1 -0
  234. package/dist/components/xpl-input.d.ts +11 -0
  235. package/dist/components/xpl-input.js +1 -0
  236. package/dist/components/xpl-input2.js +1 -0
  237. package/dist/components/xpl-large-card.d.ts +11 -0
  238. package/dist/components/xpl-large-card.js +1 -0
  239. package/dist/components/xpl-list.d.ts +11 -0
  240. package/dist/components/xpl-list.js +1 -0
  241. package/dist/components/xpl-main-nav.d.ts +11 -0
  242. package/dist/components/xpl-main-nav.js +1 -0
  243. package/dist/components/xpl-modal.d.ts +11 -0
  244. package/dist/components/xpl-modal.js +1 -0
  245. package/dist/components/xpl-nav-item.d.ts +11 -0
  246. package/dist/components/xpl-nav-item.js +1 -0
  247. package/dist/components/xpl-pagination.d.ts +11 -0
  248. package/dist/components/xpl-pagination.js +1 -0
  249. package/dist/components/xpl-popover.d.ts +11 -0
  250. package/dist/components/xpl-popover.js +1 -0
  251. package/dist/components/xpl-popover2.js +1 -0
  252. package/dist/components/xpl-progress.d.ts +11 -0
  253. package/dist/components/xpl-progress.js +1 -0
  254. package/dist/components/xpl-radio.d.ts +11 -0
  255. package/dist/components/xpl-radio.js +1 -0
  256. package/dist/components/xpl-radio2.js +1 -0
  257. package/dist/components/xpl-secondary-nav.d.ts +11 -0
  258. package/dist/components/xpl-secondary-nav.js +1 -0
  259. package/dist/components/xpl-select.d.ts +11 -0
  260. package/dist/components/xpl-select.js +1 -0
  261. package/dist/components/xpl-select2.js +1 -0
  262. package/dist/components/xpl-skeleton.d.ts +11 -0
  263. package/dist/components/xpl-skeleton.js +1 -0
  264. package/dist/components/xpl-slideout.d.ts +11 -0
  265. package/dist/components/xpl-slideout.js +1 -0
  266. package/dist/components/xpl-tab-panel.d.ts +11 -0
  267. package/dist/components/xpl-tab-panel.js +1 -0
  268. package/dist/components/xpl-tab.d.ts +11 -0
  269. package/dist/components/xpl-tab.js +1 -0
  270. package/dist/components/xpl-table-header-cell.d.ts +11 -0
  271. package/dist/components/xpl-table-header-cell.js +1 -0
  272. package/dist/components/xpl-table-header.d.ts +11 -0
  273. package/dist/components/xpl-table-header.js +1 -0
  274. package/dist/components/xpl-table.d.ts +11 -0
  275. package/dist/components/xpl-table.js +1 -0
  276. package/dist/components/xpl-tabs.d.ts +11 -0
  277. package/dist/components/xpl-tabs.js +1 -0
  278. package/dist/components/xpl-tag.d.ts +11 -0
  279. package/dist/components/xpl-tag.js +1 -0
  280. package/dist/components/xpl-tag2.js +1 -0
  281. package/dist/components/xpl-toast.d.ts +11 -0
  282. package/dist/components/xpl-toast.js +1 -0
  283. package/dist/components/xpl-toggle.d.ts +11 -0
  284. package/dist/components/xpl-toggle.js +1 -0
  285. package/dist/components/xpl-toolbar.d.ts +11 -0
  286. package/dist/components/xpl-toolbar.js +1 -0
  287. package/dist/components/xpl-tooltip.d.ts +11 -0
  288. package/dist/components/xpl-tooltip.js +1 -0
  289. package/dist/components/xpl-tooltip2.js +1 -0
  290. package/dist/components/xpl-utility-bar.d.ts +11 -0
  291. package/dist/components/xpl-utility-bar.js +1 -0
  292. package/dist/css/typography.stories.js +144 -0
  293. package/dist/esm/apollo-core.js +15 -12
  294. package/dist/esm/app-globals-DQuL1Twl.js +3 -0
  295. package/dist/{cjs/xpl-input.cjs.entry.js → esm/index-CH4yJ6Qx.js} +1 -99
  296. package/dist/esm/index-DhZas3eX.js +2132 -0
  297. package/dist/esm/loader.js +7 -14
  298. package/dist/esm/{v4-929670b7.js → v4-Cqlsd6nf.js} +1 -11
  299. package/dist/esm/xpl-accordion.entry.js +71 -0
  300. package/dist/esm/xpl-application-shell.entry.js +41 -44
  301. package/dist/esm/xpl-avatar_41.entry.js +5479 -0
  302. package/dist/esm/xpl-button-row.entry.js +13 -16
  303. package/dist/esm/xpl-calendar.entry.js +64 -0
  304. package/dist/esm/xpl-dynamic-table-cell.entry.js +31 -0
  305. package/dist/esm/xpl-dynamic-table-row.entry.js +35 -0
  306. package/dist/esm/xpl-dynamic-table.entry.js +62 -0
  307. package/dist/esm/xpl-grid-item.entry.js +16 -16
  308. package/dist/esm/xpl-grid.entry.js +29 -26
  309. package/dist/esm/xpl-large-card.entry.js +25 -0
  310. package/dist/esm/xpl-list.entry.js +23 -28
  311. package/dist/esm/xpl-main-nav.entry.js +18 -18
  312. package/dist/esm/xpl-table-header-cell.entry.js +55 -0
  313. package/dist/esm/xpl-table-header.entry.js +12 -0
  314. package/dist/esm/xpl-toggle.entry.js +22 -28
  315. package/dist/esm/xpl-toolbar.entry.js +26 -0
  316. package/dist/types/components/xpl-accordion/accordion.stories.d.ts +37 -0
  317. package/dist/types/components/xpl-accordion/xpl-accordion.d.ts +16 -0
  318. package/dist/types/components/xpl-application-shell/application-shell.stories.d.ts +60 -0
  319. package/dist/types/components/xpl-application-shell/xpl-application-shell.d.ts +12 -27
  320. package/dist/types/components/xpl-avatar/avatar.stories.d.ts +75 -0
  321. package/dist/types/components/xpl-avatar/xpl-avatar.d.ts +9 -9
  322. package/dist/types/components/xpl-backdrop/backdrop.stories.d.ts +17 -0
  323. package/dist/types/components/xpl-backdrop/xpl-backdrop.d.ts +2 -6
  324. package/dist/types/components/xpl-badge/badge.stories.d.ts +44 -0
  325. package/dist/types/components/xpl-badge/xpl-badge.d.ts +3 -3
  326. package/dist/types/components/xpl-breadcrumbs/breadcrumbs.stories.d.ts +53 -0
  327. package/dist/types/components/xpl-breadcrumbs/xpl-breadcrumb-item/xpl-breadcrumb-item.d.ts +2 -5
  328. package/dist/types/components/xpl-breadcrumbs/xpl-breadcrumbs/xpl-breadcrumbs.d.ts +1 -4
  329. package/dist/types/components/xpl-button/button.stories.d.ts +92 -0
  330. package/dist/types/components/xpl-button/xpl-button.d.ts +14 -43
  331. package/dist/types/components/xpl-button-row/button-row.stories.d.ts +45 -0
  332. package/dist/types/components/xpl-button-row/xpl-button-row.d.ts +10 -32
  333. package/dist/types/components/xpl-calendar/calendar.stories.d.ts +58 -0
  334. package/dist/types/components/xpl-calendar/xpl-calendar.d.ts +18 -0
  335. package/dist/types/components/xpl-checkbox/checkbox.stories.d.ts +65 -0
  336. package/dist/types/components/xpl-checkbox/xpl-checkbox.d.ts +13 -13
  337. package/dist/types/components/xpl-choicelist/choice.d.ts +5 -4
  338. package/dist/types/components/xpl-choicelist/choicelist.stories.d.ts +40 -0
  339. package/dist/types/components/xpl-choicelist/xpl-choicelist.d.ts +16 -32
  340. package/dist/types/components/xpl-content-area/content-area.stories.d.ts +13 -0
  341. package/dist/types/components/xpl-content-area/xpl-content-area.d.ts +2 -5
  342. package/dist/types/components/xpl-dashboard/dashboard.stories.d.ts +31 -0
  343. package/dist/types/components/xpl-dashboard/xpl-dashboard.d.ts +3 -0
  344. package/dist/types/components/xpl-data-card/data-card.stories.d.ts +114 -0
  345. package/dist/types/components/xpl-data-card/xpl-data-card.d.ts +21 -0
  346. package/dist/types/components/xpl-divider/divider.stories.d.ts +37 -0
  347. package/dist/types/components/xpl-divider/xpl-divider.d.ts +2 -7
  348. package/dist/types/components/xpl-dropdown/dropdown-option.d.ts +12 -0
  349. package/dist/types/components/xpl-dropdown/dropdown.stories.d.ts +25 -0
  350. package/dist/types/components/xpl-dropdown/xpl-dropdown-group/xpl-dropdown-group.d.ts +4 -6
  351. package/dist/types/components/xpl-dropdown/xpl-dropdown-heading/xpl-dropdown-heading.d.ts +2 -3
  352. package/dist/types/components/xpl-dropdown/xpl-dropdown-option/xpl-dropdown-option.d.ts +13 -14
  353. package/dist/types/components/xpl-dropdown/xpl-dropdown.d.ts +34 -35
  354. package/dist/types/components/xpl-dynamic-table/dynamic-table.stories.d.ts +41 -0
  355. package/dist/types/components/xpl-dynamic-table/xpl-dynamic-table.d.ts +14 -0
  356. package/dist/types/components/xpl-dynamic-table-cell/xpl-dynamic-table-cell.d.ts +9 -0
  357. package/dist/types/components/xpl-dynamic-table-row/xpl-dynamic-table-row.d.ts +11 -0
  358. package/dist/types/components/xpl-grid/grid.stories.d.ts +133 -0
  359. package/dist/types/components/xpl-grid/xpl-grid.d.ts +3 -3
  360. package/dist/types/components/xpl-grid-item/xpl-grid-item.d.ts +5 -5
  361. package/dist/types/components/xpl-header-accordion/header-accordion.stories.d.ts +44 -0
  362. package/dist/types/components/xpl-header-accordion/xpl-header-accordion.d.ts +20 -0
  363. package/dist/types/components/xpl-icon/icons.stories.d.ts +54 -0
  364. package/dist/types/components/xpl-icon/xpl-icon.d.ts +8 -0
  365. package/dist/types/components/xpl-input/input.stories.d.ts +206 -0
  366. package/dist/types/components/xpl-input/xpl-input-color/color-utils.d.ts +41 -0
  367. package/dist/types/components/xpl-input/xpl-input-color/xpl-input-color.d.ts +30 -0
  368. package/dist/types/components/xpl-input/xpl-input-date/xpl-input-date.d.ts +30 -0
  369. package/dist/types/components/xpl-input/xpl-input-file/xpl-input-file.d.ts +24 -0
  370. package/dist/types/components/xpl-input/xpl-input-time/time-utils.d.ts +5 -0
  371. package/dist/types/components/xpl-input/xpl-input-time/xpl-input-time.d.ts +39 -0
  372. package/dist/types/components/xpl-input/xpl-input.d.ts +45 -85
  373. package/dist/types/components/xpl-large-card/large-card.stories.d.ts +71 -0
  374. package/dist/types/components/xpl-large-card/xpl-large-card.d.ts +8 -0
  375. package/dist/types/components/xpl-list/list.stories.d.ts +63 -0
  376. package/dist/types/components/xpl-list/listitem.d.ts +14 -14
  377. package/dist/types/components/xpl-list/xpl-list.d.ts +2 -26
  378. package/dist/types/components/xpl-main-nav/main-nav.stories.d.ts +13 -0
  379. package/dist/types/components/xpl-main-nav/xpl-main-nav.d.ts +6 -13
  380. package/dist/types/components/xpl-modal/modal.stories.d.ts +99 -0
  381. package/dist/types/components/xpl-modal/xpl-modal.d.ts +15 -0
  382. package/dist/types/components/xpl-nav-item/xpl-nav-item.d.ts +4 -10
  383. package/dist/types/components/xpl-pagination/pagination.stories.d.ts +35 -0
  384. package/dist/types/components/xpl-pagination/xpl-pagination.d.ts +19 -22
  385. package/dist/types/components/xpl-popover/popover.stories.d.ts +12 -0
  386. package/dist/types/components/xpl-popover/xpl-popover.d.ts +24 -0
  387. package/dist/types/components/xpl-progress/progress.stories.d.ts +34 -0
  388. package/dist/types/components/xpl-progress/xpl-progress.d.ts +6 -0
  389. package/dist/types/components/xpl-radio/radio.stories.d.ts +79 -0
  390. package/dist/types/components/xpl-radio/xpl-radio.d.ts +11 -11
  391. package/dist/types/components/xpl-secondary-nav/secondary-nav.stories.d.ts +5 -0
  392. package/dist/types/components/xpl-secondary-nav/xpl-secondary-nav.d.ts +1 -1
  393. package/dist/types/components/xpl-select/select.stories.d.ts +164 -0
  394. package/dist/types/components/xpl-select/xpl-select.d.ts +59 -55
  395. package/dist/types/components/xpl-skeleton/skeleton.stories.d.ts +26 -0
  396. package/dist/types/components/xpl-skeleton/xpl-skeleton.d.ts +10 -0
  397. package/dist/types/components/xpl-slideout/slideout.stories.d.ts +114 -0
  398. package/dist/types/components/xpl-slideout/xpl-slideout.d.ts +14 -0
  399. package/dist/types/components/xpl-tab/xpl-tab.d.ts +8 -0
  400. package/dist/types/components/xpl-tab-panel/xpl-tab-panel.d.ts +5 -0
  401. package/dist/types/components/xpl-table/table.stories.d.ts +84 -0
  402. package/dist/types/components/xpl-table/xpl-table.d.ts +37 -23
  403. package/dist/types/components/xpl-table-header/table-header.stories.d.ts +103 -0
  404. package/dist/types/components/xpl-table-header/xpl-table-header.d.ts +3 -0
  405. package/dist/types/components/xpl-table-header-cell/table-header-cell.stories.d.ts +55 -0
  406. package/dist/types/components/xpl-table-header-cell/xpl-table-header-cell.d.ts +14 -0
  407. package/dist/types/components/xpl-tabs/tabs.stories.d.ts +40 -0
  408. package/dist/types/components/xpl-tabs/xpl-tabs.d.ts +28 -0
  409. package/dist/types/components/xpl-tag/xpl-tag.d.ts +2 -2
  410. package/dist/types/components/xpl-toast/toast.stories.d.ts +62 -0
  411. package/dist/types/components/xpl-toast/xpl-toast.d.ts +14 -0
  412. package/dist/types/components/xpl-toggle/toggle.stories.d.ts +67 -0
  413. package/dist/types/components/xpl-toggle/xpl-toggle.d.ts +9 -21
  414. package/dist/types/components/xpl-toolbar/xpl-toolbar.d.ts +7 -0
  415. package/dist/types/components/xpl-tooltip/tooltip-arrow.d.ts +2 -0
  416. package/dist/types/components/xpl-tooltip/tooltip.stories.d.ts +39 -0
  417. package/dist/types/components/xpl-tooltip/xpl-tooltip.d.ts +6 -0
  418. package/dist/types/components/xpl-utility-bar/utility-bar.stories.d.ts +20 -0
  419. package/dist/types/components/xpl-utility-bar/xpl-utility-bar.d.ts +7 -17
  420. package/dist/types/components.d.ts +3060 -498
  421. package/dist/types/home/runner/work/apollo/apollo/packages/apollo-core/.stencil/css/typography.stories.d.ts +90 -0
  422. package/dist/types/stencil-public-runtime.d.ts +236 -34
  423. package/loader/cdn.js +1 -3
  424. package/loader/index.cjs.js +1 -3
  425. package/loader/index.d.ts +5 -2
  426. package/loader/index.es2017.js +1 -3
  427. package/loader/index.js +1 -3
  428. package/package.json +110 -61
  429. package/CHANGELOG.md +0 -106
  430. package/dist/apollo-core/p-10f00380.entry.js +0 -1
  431. package/dist/apollo-core/p-26ec64fe.entry.js +0 -1
  432. package/dist/apollo-core/p-2f90296c.js +0 -10
  433. package/dist/apollo-core/p-31acfdb4.entry.js +0 -1
  434. package/dist/apollo-core/p-4184ac44.entry.js +0 -1
  435. package/dist/apollo-core/p-4fa14839.entry.js +0 -1
  436. package/dist/apollo-core/p-55b87345.js +0 -2
  437. package/dist/apollo-core/p-63a6c98a.entry.js +0 -1
  438. package/dist/apollo-core/p-68c33b77.entry.js +0 -1
  439. package/dist/apollo-core/p-78d07caf.entry.js +0 -1
  440. package/dist/apollo-core/p-796957d3.entry.js +0 -1
  441. package/dist/apollo-core/p-88160d68.entry.js +0 -1
  442. package/dist/apollo-core/p-9ec318bb.entry.js +0 -1
  443. package/dist/apollo-core/p-a2a34e44.entry.js +0 -1
  444. package/dist/apollo-core/p-ad90fe4d.js +0 -1
  445. package/dist/apollo-core/p-beea2502.entry.js +0 -1
  446. package/dist/apollo-core/p-d499e43f.entry.js +0 -1
  447. package/dist/apollo-core/p-d8a3d94c.entry.js +0 -1
  448. package/dist/apollo-core/p-e047b446.entry.js +0 -1
  449. package/dist/cjs/index-2ab4832e.js +0 -2003
  450. package/dist/cjs/regular-872f5226.js +0 -16043
  451. package/dist/cjs/xpl-avatar_12.cjs.entry.js +0 -362
  452. package/dist/cjs/xpl-backdrop.cjs.entry.js +0 -21
  453. package/dist/cjs/xpl-choicelist.cjs.entry.js +0 -50
  454. package/dist/cjs/xpl-divider.cjs.entry.js +0 -19
  455. package/dist/cjs/xpl-dropdown-group_3.cjs.entry.js +0 -113
  456. package/dist/cjs/xpl-dropdown_2.cjs.entry.js +0 -121
  457. package/dist/cjs/xpl-pagination.cjs.entry.js +0 -79
  458. package/dist/cjs/xpl-select.cjs.entry.js +0 -610
  459. package/dist/collection/components/xpl-select/selectchoice.js +0 -1
  460. package/dist/custom-elements/index.d.ts +0 -219
  461. package/dist/custom-elements/index.js +0 -20353
  462. package/dist/esm/index-392b5b96.js +0 -1973
  463. package/dist/esm/polyfills/core-js.js +0 -11
  464. package/dist/esm/polyfills/css-shim.js +0 -1
  465. package/dist/esm/polyfills/dom.js +0 -79
  466. package/dist/esm/polyfills/es5-html-element.js +0 -1
  467. package/dist/esm/polyfills/index.js +0 -34
  468. package/dist/esm/polyfills/system.js +0 -6
  469. package/dist/esm/regular-86225e9d.js +0 -16041
  470. package/dist/esm/xpl-avatar_12.entry.js +0 -347
  471. package/dist/esm/xpl-backdrop.entry.js +0 -17
  472. package/dist/esm/xpl-choicelist.entry.js +0 -46
  473. package/dist/esm/xpl-divider.entry.js +0 -15
  474. package/dist/esm/xpl-dropdown-group_3.entry.js +0 -107
  475. package/dist/esm/xpl-dropdown_2.entry.js +0 -116
  476. package/dist/esm/xpl-pagination.entry.js +0 -75
  477. package/dist/esm/xpl-select.entry.js +0 -606
  478. package/dist/stories/application-shell.stories.js +0 -776
  479. package/dist/stories/avatar.stories.js +0 -173
  480. package/dist/stories/backdrop.stories.js +0 -18
  481. package/dist/stories/badge.stories.js +0 -48
  482. package/dist/stories/breadcrumbs.stories.js +0 -117
  483. package/dist/stories/button-row.stories.js +0 -68
  484. package/dist/stories/button.stories.js +0 -122
  485. package/dist/stories/checkbox.stories.js +0 -78
  486. package/dist/stories/choicelist.stories.js +0 -112
  487. package/dist/stories/content-area.stories.js +0 -53
  488. package/dist/stories/divider.stories.js +0 -34
  489. package/dist/stories/dropdown.stories.js +0 -377
  490. package/dist/stories/input.stories.js +0 -268
  491. package/dist/stories/list.stories.js +0 -154
  492. package/dist/stories/main-nav.stories.js +0 -308
  493. package/dist/stories/pagination.stories.js +0 -84
  494. package/dist/stories/radio.stories.js +0 -68
  495. package/dist/stories/secondary-nav.stories.js +0 -76
  496. package/dist/stories/select.stories.js +0 -119
  497. package/dist/stories/table.stories.js +0 -107
  498. package/dist/stories/tabs.stories.js +0 -24
  499. package/dist/stories/toggle.stories.js +0 -84
  500. package/dist/stories/utility-bar.stories.js +0 -94
  501. package/dist/types/Users/fernandogelin/Xplor/apollo/.stencil/stories/application-shell.stories.d.ts +0 -71
  502. package/dist/types/Users/fernandogelin/Xplor/apollo/.stencil/stories/avatar.stories.d.ts +0 -91
  503. package/dist/types/Users/fernandogelin/Xplor/apollo/.stencil/stories/backdrop.stories.d.ts +0 -16
  504. package/dist/types/Users/fernandogelin/Xplor/apollo/.stencil/stories/badge.stories.d.ts +0 -48
  505. package/dist/types/Users/fernandogelin/Xplor/apollo/.stencil/stories/breadcrumbs.stories.d.ts +0 -53
  506. package/dist/types/Users/fernandogelin/Xplor/apollo/.stencil/stories/button-row.stories.d.ts +0 -49
  507. package/dist/types/Users/fernandogelin/Xplor/apollo/.stencil/stories/button.stories.d.ts +0 -91
  508. package/dist/types/Users/fernandogelin/Xplor/apollo/.stencil/stories/checkbox.stories.d.ts +0 -72
  509. package/dist/types/Users/fernandogelin/Xplor/apollo/.stencil/stories/choicelist.stories.d.ts +0 -41
  510. package/dist/types/Users/fernandogelin/Xplor/apollo/.stencil/stories/content-area.stories.d.ts +0 -29
  511. package/dist/types/Users/fernandogelin/Xplor/apollo/.stencil/stories/divider.stories.d.ts +0 -40
  512. package/dist/types/Users/fernandogelin/Xplor/apollo/.stencil/stories/dropdown.stories.d.ts +0 -135
  513. package/dist/types/Users/fernandogelin/Xplor/apollo/.stencil/stories/grid.stories.d.ts +0 -150
  514. package/dist/types/Users/fernandogelin/Xplor/apollo/.stencil/stories/input.stories.d.ts +0 -190
  515. package/dist/types/Users/fernandogelin/Xplor/apollo/.stencil/stories/list.stories.d.ts +0 -71
  516. package/dist/types/Users/fernandogelin/Xplor/apollo/.stencil/stories/main-nav.stories.d.ts +0 -30
  517. package/dist/types/Users/fernandogelin/Xplor/apollo/.stencil/stories/pagination.stories.d.ts +0 -0
  518. package/dist/types/Users/fernandogelin/Xplor/apollo/.stencil/stories/radio.stories.d.ts +0 -64
  519. package/dist/types/Users/fernandogelin/Xplor/apollo/.stencil/stories/secondary-nav.stories.d.ts +0 -16
  520. package/dist/types/Users/fernandogelin/Xplor/apollo/.stencil/stories/select.stories.d.ts +0 -74
  521. package/dist/types/Users/fernandogelin/Xplor/apollo/.stencil/stories/table.stories.d.ts +0 -49
  522. package/dist/types/Users/fernandogelin/Xplor/apollo/.stencil/stories/tabs.stories.d.ts +0 -0
  523. package/dist/types/Users/fernandogelin/Xplor/apollo/.stencil/stories/toggle.stories.d.ts +0 -74
  524. package/dist/types/Users/fernandogelin/Xplor/apollo/.stencil/stories/utility-bar.stories.d.ts +0 -20
  525. package/dist/types/components/xpl-dropdown/dropdownoption.d.ts +0 -10
  526. package/dist/types/components/xpl-select/selectchoice.d.ts +0 -4
  527. package/loader/package.json +0 -11
  528. /package/dist/collection/components/xpl-dropdown/{dropdownoption.js → dropdown-option.js} +0 -0
@@ -1,271 +1,453 @@
1
1
  var __rest = (this && this.__rest) || function (s, e) {
2
- var t = {};
3
- for (var p in s)
4
- if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
- t[p] = s[p];
6
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
- t[p[i]] = s[p[i]];
10
- }
11
- return t;
2
+ var t = {};
3
+ for (var p in s)
4
+ if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
+ t[p] = s[p];
6
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
+ t[p[i]] = s[p[i]];
10
+ }
11
+ return t;
12
12
  };
13
- import { Host, h } from '@stencil/core';
13
+ import { h, Host, } from "@stencil/core";
14
14
  export class XplDropdown {
15
- constructor() {
16
- this.handleClickOutside = ({ target }) => {
17
- const { triggerId } = this;
18
- const isTrigger = triggerId && target.id === triggerId;
19
- const isInside = this.hostElement.contains(target);
20
- if (!isInside && !isTrigger)
15
+ constructor() {
21
16
  this.isOpen = false;
22
- };
23
- this.isOpen = false;
24
- this.closeOnSelect = true;
25
- this.mode = 'single';
26
- this.options = undefined;
27
- this.selectOnFocus = false;
28
- this.triggerId = undefined;
29
- this.update = undefined;
30
- }
31
- /**
32
- * called on dropdown option click and keydown events to update isSelected states
33
- */
34
- async handleSelect(e, { component }) {
35
- const { hostElement, mode, options, update } = this;
36
- const isSingle = mode === 'single';
37
- const isMulti = mode === 'multi';
38
- if (Boolean(options)) {
39
- options
40
- .reduce((acc, curr) => [
41
- ...acc,
42
- ...(curr.groupName ? curr.options : [curr]),
43
- ], [])
44
- .forEach((option) => {
45
- const isMatch = option.label === component.hostElement.label;
46
- if (isSingle) {
47
- option.isSelected = isMatch;
48
- component.hostElement.isSelected = option.isSelected;
49
- }
50
- else if (isMulti && isMatch) {
51
- option.isSelected = !option.isSelected;
52
- component.hostElement.isSelected = option.isSelected;
17
+ this.closeOnSelect = true;
18
+ this.mode = 'single';
19
+ this.anchorToTrigger = false;
20
+ this.selectOnFocus = false;
21
+ this.requestAnimationFrameId = null;
22
+ this.updateDropdownPosition = () => {
23
+ var _a;
24
+ if (!this.anchorToTrigger || !this.triggerId) {
25
+ return;
26
+ }
27
+ const triggerRect = (_a = document.getElementById(this.triggerId)) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect();
28
+ if (!triggerRect) {
29
+ return;
30
+ }
31
+ const dropdownHeight = Math.max(this.hostElement.offsetHeight, 300);
32
+ const viewportHeight = window.innerHeight;
33
+ const spaceBelow = viewportHeight - triggerRect.bottom;
34
+ const spaceAbove = triggerRect.top;
35
+ const shouldPositionAbove = spaceBelow < dropdownHeight && spaceAbove > spaceBelow;
36
+ if (shouldPositionAbove) {
37
+ this.hostElement.style.cssText = `
38
+ left: ${triggerRect.left}px;
39
+ width: ${triggerRect.width}px;
40
+ bottom: ${viewportHeight - triggerRect.top}px;
41
+ top: auto;
42
+ `;
43
+ this.hostElement.classList.add('xpl-dropdown--above');
44
+ this.hostElement.classList.remove('xpl-dropdown--below');
45
+ }
46
+ else {
47
+ this.hostElement.style.cssText = `
48
+ left: ${triggerRect.left}px;
49
+ width: ${triggerRect.width}px;
50
+ top: ${triggerRect.bottom}px;
51
+ bottom: auto;
52
+ `;
53
+ this.hostElement.classList.add('xpl-dropdown--below');
54
+ this.hostElement.classList.remove('xpl-dropdown--above');
55
+ }
56
+ };
57
+ this.handleClickOutside = ({ target }) => {
58
+ const { triggerId } = this;
59
+ const triggerElement = triggerId ? document.getElementById(triggerId) : null;
60
+ const isTriggerOrChild = triggerElement === null || triggerElement === void 0 ? void 0 : triggerElement.contains(target);
61
+ const isInside = this.hostElement.contains(target);
62
+ if (!isInside && !isTriggerOrChild && this.isOpen) {
63
+ this.isOpen = false;
64
+ }
65
+ };
66
+ this.handleKeyDown = (e) => {
67
+ if (e.key === 'Escape' && this.isOpen) {
68
+ this.isOpen = false;
69
+ }
70
+ };
71
+ }
72
+ onSelectedValuesChanged(newValues, initialRender = false) {
73
+ if (this.options && this.options.length > 0) {
74
+ const flatOptions = this.options.reduce((acc, curr) => [...acc, ...(curr.groupName ? curr.options : [curr])], []);
75
+ flatOptions.forEach((option) => {
76
+ const optionValue = option.value || option.label;
77
+ if (this.mode === 'single') {
78
+ option.isSelected = optionValue === newValues;
79
+ }
80
+ else {
81
+ const selectedArray = Array.isArray(newValues) ? newValues : [];
82
+ option.isSelected = selectedArray.includes(optionValue);
83
+ }
84
+ });
85
+ const mapOptions = (option) => {
86
+ option.options = option.groupName ? option.options.map(mapOptions) : undefined;
87
+ return option;
88
+ };
89
+ this.options = this.options.map(mapOptions);
90
+ if (this.update && !initialRender) {
91
+ this.update(null, { component: this });
92
+ }
53
93
  }
54
- });
55
- const mapOptions = (option) => {
56
- option.options = option.groupName
57
- ? option.options.map(mapOptions)
58
- : undefined;
59
- return option;
60
- };
61
- this.options = options.map(mapOptions);
62
94
  }
63
- else if (isSingle) {
64
- const optionNodes = Array.from(hostElement.querySelectorAll('xpl-dropdown-option'));
65
- optionNodes.forEach((node) => (node.isSelected = node === component.hostElement));
95
+ onIsOpenStateChange(newValue) {
96
+ this.isOpenChange.emit(newValue);
66
97
  }
67
- else if (isMulti) {
68
- component.isSelected = !component.isSelected;
98
+ onWindowScroll() {
99
+ if (this.requestAnimationFrameId) {
100
+ cancelAnimationFrame(this.requestAnimationFrameId);
101
+ }
102
+ this.requestAnimationFrameId = requestAnimationFrame(() => {
103
+ this.updateDropdownPosition();
104
+ });
69
105
  }
70
- if (Boolean(update))
71
- update(e, { component: this });
72
- }
73
- componentWillLoad() {
74
- this.handleSelect = this.handleSelect.bind(this);
75
- }
76
- connectedCallback() {
77
- document.addEventListener('mousedown', this.handleClickOutside.bind(this));
78
- }
79
- disconnectedCallback() {
80
- document.removeEventListener('mousedown', this.handleClickOutside);
81
- }
82
- render() {
83
- let { isOpen } = this;
84
- const { mode, options } = this;
85
- const hasOptions = options && options.length;
86
- const mappedOptions = hasOptions &&
87
- options.map((_a) => {
88
- var { groupName, options } = _a, properties = __rest(_a, ["groupName", "options"]);
89
- return groupName ? (h("xpl-dropdown-group", Object.assign({ groupName: groupName, options: options }, properties))) : (h("xpl-dropdown-option", Object.assign({}, properties)));
90
- });
91
- return (h(Host, { "aria-expanded": isOpen, class: {
92
- 'xpl-dropdown': true,
93
- 'xpl-dropdown--multi': mode === 'multi',
94
- 'xpl-dropdown--open': isOpen,
95
- }, role: "listbox" }, h("ul", { class: "xpl-dropdown-list" }, mappedOptions || h("slot", { name: "options" }))));
96
- }
97
- static get is() { return "xpl-dropdown"; }
98
- static get properties() {
99
- return {
100
- "isOpen": {
101
- "type": "boolean",
102
- "mutable": true,
103
- "complexType": {
104
- "original": "boolean",
105
- "resolved": "boolean",
106
- "references": {}
107
- },
108
- "required": false,
109
- "optional": false,
110
- "docs": {
111
- "tags": [],
112
- "text": "text to display as heading"
113
- },
114
- "attribute": "open",
115
- "reflect": true,
116
- "defaultValue": "false"
117
- },
118
- "closeOnSelect": {
119
- "type": "boolean",
120
- "mutable": false,
121
- "complexType": {
122
- "original": "boolean",
123
- "resolved": "boolean",
124
- "references": {}
125
- },
126
- "required": false,
127
- "optional": false,
128
- "docs": {
129
- "tags": [],
130
- "text": "options that are listed"
131
- },
132
- "attribute": "close-on-select",
133
- "reflect": false,
134
- "defaultValue": "true"
135
- },
136
- "mode": {
137
- "type": "string",
138
- "mutable": false,
139
- "complexType": {
140
- "original": "'single' | 'multi'",
141
- "resolved": "\"multi\" | \"single\"",
142
- "references": {}
143
- },
144
- "required": false,
145
- "optional": false,
146
- "docs": {
147
- "tags": [],
148
- "text": "constant representing number of options that can be selected"
149
- },
150
- "attribute": "mode",
151
- "reflect": false,
152
- "defaultValue": "'single'"
153
- },
154
- "options": {
155
- "type": "unknown",
156
- "mutable": false,
157
- "complexType": {
158
- "original": "DropdownItem[]",
159
- "resolved": "Partial<DropdownOption & DropdownOptionGroup>[]",
160
- "references": {
161
- "DropdownItem": {
162
- "location": "import",
163
- "path": "./dropdownoption"
164
- }
165
- }
166
- },
167
- "required": false,
168
- "optional": true,
169
- "docs": {
170
- "tags": [],
171
- "text": "options that are listed"
106
+ async handleSelect(e, { component }) {
107
+ const { hostElement, mode, options, update } = this;
108
+ const isSingle = mode === 'single';
109
+ const isMulti = mode === 'multi';
110
+ if (options) {
111
+ options
112
+ .reduce((acc, curr) => [...acc, ...(curr.groupName ? curr.options : [curr])], [])
113
+ .forEach((option) => {
114
+ const isMatch = (option.value || option.label) ===
115
+ (component.hostElement.value || component.hostElement.label);
116
+ if (isSingle) {
117
+ option.isSelected = isMatch;
118
+ component.hostElement.isSelected = true;
119
+ }
120
+ else if (isMulti && isMatch) {
121
+ option.isSelected = !option.isSelected;
122
+ component.hostElement.isSelected = option.isSelected;
123
+ }
124
+ });
125
+ const mapOptions = (option) => {
126
+ option.options = option.groupName ? option.options.map(mapOptions) : undefined;
127
+ return option;
128
+ };
129
+ this.options = options.map(mapOptions);
172
130
  }
173
- },
174
- "selectOnFocus": {
175
- "type": "boolean",
176
- "mutable": false,
177
- "complexType": {
178
- "original": "boolean",
179
- "resolved": "boolean",
180
- "references": {}
181
- },
182
- "required": false,
183
- "optional": false,
184
- "docs": {
185
- "tags": [],
186
- "text": "whether selection should be made when focusing on interactable element"
187
- },
188
- "attribute": "select-on-focus",
189
- "reflect": false,
190
- "defaultValue": "false"
191
- },
192
- "triggerId": {
193
- "type": "string",
194
- "mutable": false,
195
- "complexType": {
196
- "original": "string",
197
- "resolved": "string",
198
- "references": {}
199
- },
200
- "required": false,
201
- "optional": false,
202
- "docs": {
203
- "tags": [],
204
- "text": "the id for the element that triggers the open state"
205
- },
206
- "attribute": "trigger-id",
207
- "reflect": false
208
- },
209
- "update": {
210
- "type": "unknown",
211
- "mutable": false,
212
- "complexType": {
213
- "original": "(\n e: Event,\n { component }: { component: XplDropdown }\n ) => void",
214
- "resolved": "(e: Event, { component }: { component: XplDropdown; }) => void",
215
- "references": {
216
- "Event": {
217
- "location": "global"
218
- },
219
- "XplDropdown": {
220
- "location": "global"
221
- }
222
- }
223
- },
224
- "required": false,
225
- "optional": true,
226
- "docs": {
227
- "tags": [],
228
- "text": "call back function invoked when a selection is made"
131
+ else if (isSingle) {
132
+ const optionNodes = Array.from(hostElement.querySelectorAll('xpl-dropdown-option'));
133
+ optionNodes.forEach((node) => {
134
+ node.isSelected = node === component.hostElement;
135
+ });
229
136
  }
230
- }
231
- };
232
- }
233
- static get methods() {
234
- return {
235
- "handleSelect": {
236
- "complexType": {
237
- "signature": "(e: Event, { component }: { component: XplDropdownOption; }) => Promise<void>",
238
- "parameters": [{
239
- "tags": [],
240
- "text": ""
241
- }, {
242
- "tags": [],
243
- "text": ""
244
- }],
245
- "references": {
246
- "Promise": {
247
- "location": "global"
137
+ else if (isMulti) {
138
+ component.isSelected = !component.isSelected;
139
+ }
140
+ if (update)
141
+ update(e, { component: this });
142
+ }
143
+ componentWillLoad() {
144
+ this.handleSelect = this.handleSelect.bind(this);
145
+ if (this.selectedValues) {
146
+ this.onSelectedValuesChanged(this.selectedValues, true);
147
+ }
148
+ }
149
+ connectedCallback() {
150
+ document.addEventListener('mousedown', this.handleClickOutside.bind(this));
151
+ document.addEventListener('keydown', this.handleKeyDown);
152
+ }
153
+ disconnectedCallback() {
154
+ document.removeEventListener('mousedown', this.handleClickOutside);
155
+ document.removeEventListener('keydown', this.handleKeyDown);
156
+ }
157
+ componentDidLoad() {
158
+ this.updateDropdownPosition();
159
+ }
160
+ render() {
161
+ const { isOpen } = this;
162
+ const { mode, options } = this;
163
+ const hasOptions = options && options.length;
164
+ const mappedOptions = hasOptions &&
165
+ options.map((_a) => {
166
+ var { groupName, options: opts, subtitle } = _a, properties = __rest(_a, ["groupName", "options", "subtitle"]);
167
+ return groupName ? (h("xpl-dropdown-group", Object.assign({ groupName: groupName, options: opts }, properties))) : (h("xpl-dropdown-option", Object.assign({ subtitle: subtitle }, properties)));
168
+ });
169
+ return (h(Host, { key: 'd576d4fbedb6a4a4a3da81b06ef881e1b1c6afe2', "aria-expanded": isOpen, class: {
170
+ 'xpl-dropdown': true,
171
+ 'xpl-dropdown--multi': mode === 'multi',
172
+ 'xpl-dropdown--open': isOpen,
173
+ 'xpl-dropdown--anchor-to-trigger': this.anchorToTrigger,
174
+ }, role: "listbox" }, h("ul", { key: '78bc70d74413a238f0a5366fd607361e5157eafe', class: "xpl-dropdown-list" }, mappedOptions || h("slot", { key: '9128e7407413335b0699434e68e2aefafd222fc2', name: "options" }))));
175
+ }
176
+ static get is() { return "xpl-dropdown"; }
177
+ static get properties() {
178
+ return {
179
+ "isOpen": {
180
+ "type": "boolean",
181
+ "mutable": true,
182
+ "complexType": {
183
+ "original": "boolean",
184
+ "resolved": "boolean",
185
+ "references": {}
186
+ },
187
+ "required": false,
188
+ "optional": false,
189
+ "docs": {
190
+ "tags": [],
191
+ "text": "text to display as heading"
192
+ },
193
+ "getter": false,
194
+ "setter": false,
195
+ "reflect": true,
196
+ "attribute": "open",
197
+ "defaultValue": "false"
198
+ },
199
+ "closeOnSelect": {
200
+ "type": "boolean",
201
+ "mutable": false,
202
+ "complexType": {
203
+ "original": "boolean",
204
+ "resolved": "boolean",
205
+ "references": {}
206
+ },
207
+ "required": false,
208
+ "optional": false,
209
+ "docs": {
210
+ "tags": [],
211
+ "text": "options that are listed"
212
+ },
213
+ "getter": false,
214
+ "setter": false,
215
+ "reflect": false,
216
+ "attribute": "close-on-select",
217
+ "defaultValue": "true"
248
218
  },
249
- "Event": {
250
- "location": "global"
219
+ "mode": {
220
+ "type": "string",
221
+ "mutable": false,
222
+ "complexType": {
223
+ "original": "'single' | 'multi'",
224
+ "resolved": "\"multi\" | \"single\"",
225
+ "references": {}
226
+ },
227
+ "required": false,
228
+ "optional": false,
229
+ "docs": {
230
+ "tags": [],
231
+ "text": "constant representing number of options that can be selected"
232
+ },
233
+ "getter": false,
234
+ "setter": false,
235
+ "reflect": false,
236
+ "attribute": "mode",
237
+ "defaultValue": "'single'"
251
238
  },
252
- "XplDropdownOption": {
253
- "location": "import",
254
- "path": "./xpl-dropdown-option/xpl-dropdown-option"
239
+ "options": {
240
+ "type": "unknown",
241
+ "mutable": true,
242
+ "complexType": {
243
+ "original": "DropdownItem[]",
244
+ "resolved": "Partial<DropdownOption & DropdownOptionGroup>[]",
245
+ "references": {
246
+ "DropdownItem": {
247
+ "location": "import",
248
+ "path": "./dropdown-option",
249
+ "id": "src/components/components/xpl-dropdown/dropdown-option.ts::DropdownItem",
250
+ "referenceLocation": "DropdownItem"
251
+ }
252
+ }
253
+ },
254
+ "required": false,
255
+ "optional": true,
256
+ "docs": {
257
+ "tags": [],
258
+ "text": "options that are listed"
259
+ },
260
+ "getter": false,
261
+ "setter": false
255
262
  },
256
- "DropdownItem": {
257
- "location": "import",
258
- "path": "./dropdownoption"
263
+ "anchorToTrigger": {
264
+ "type": "boolean",
265
+ "mutable": false,
266
+ "complexType": {
267
+ "original": "boolean",
268
+ "resolved": "boolean",
269
+ "references": {}
270
+ },
271
+ "required": false,
272
+ "optional": false,
273
+ "docs": {
274
+ "tags": [],
275
+ "text": "whether to anchor the dropdown to the trigger element, requires triggerId to be set"
276
+ },
277
+ "getter": false,
278
+ "setter": false,
279
+ "reflect": false,
280
+ "attribute": "anchor-to-trigger",
281
+ "defaultValue": "false"
282
+ },
283
+ "selectedValues": {
284
+ "type": "string",
285
+ "mutable": false,
286
+ "complexType": {
287
+ "original": "string | string[]",
288
+ "resolved": "string | string[]",
289
+ "references": {}
290
+ },
291
+ "required": false,
292
+ "optional": true,
293
+ "docs": {
294
+ "tags": [],
295
+ "text": "The currently selected value(s) in the dropdown."
296
+ },
297
+ "getter": false,
298
+ "setter": false,
299
+ "reflect": false,
300
+ "attribute": "selected-values"
301
+ },
302
+ "selectOnFocus": {
303
+ "type": "boolean",
304
+ "mutable": false,
305
+ "complexType": {
306
+ "original": "boolean",
307
+ "resolved": "boolean",
308
+ "references": {}
309
+ },
310
+ "required": false,
311
+ "optional": false,
312
+ "docs": {
313
+ "tags": [],
314
+ "text": "whether selection should be made when focusing on interactive element"
315
+ },
316
+ "getter": false,
317
+ "setter": false,
318
+ "reflect": false,
319
+ "attribute": "select-on-focus",
320
+ "defaultValue": "false"
321
+ },
322
+ "triggerId": {
323
+ "type": "string",
324
+ "mutable": false,
325
+ "complexType": {
326
+ "original": "string",
327
+ "resolved": "string",
328
+ "references": {}
329
+ },
330
+ "required": false,
331
+ "optional": false,
332
+ "docs": {
333
+ "tags": [],
334
+ "text": "the id for the element that triggers the open state"
335
+ },
336
+ "getter": false,
337
+ "setter": false,
338
+ "reflect": false,
339
+ "attribute": "trigger-id"
340
+ },
341
+ "update": {
342
+ "type": "unknown",
343
+ "mutable": false,
344
+ "complexType": {
345
+ "original": "(e, { component }: { component: XplDropdown }) => void",
346
+ "resolved": "(e: any, { component }: { component: XplDropdown; }) => void",
347
+ "references": {
348
+ "XplDropdown": {
349
+ "location": "global",
350
+ "id": "global::XplDropdown"
351
+ }
352
+ }
353
+ },
354
+ "required": false,
355
+ "optional": true,
356
+ "docs": {
357
+ "tags": [],
358
+ "text": "call back function invoked when a selection is made"
359
+ },
360
+ "getter": false,
361
+ "setter": false
259
362
  }
260
- },
261
- "return": "Promise<void>"
262
- },
263
- "docs": {
264
- "text": "called on dropdown option click and keydown events to update isSelected states",
265
- "tags": []
266
- }
267
- }
268
- };
269
- }
270
- static get elementRef() { return "hostElement"; }
363
+ };
364
+ }
365
+ static get events() {
366
+ return [{
367
+ "method": "isOpenChange",
368
+ "name": "isOpenChange",
369
+ "bubbles": true,
370
+ "cancelable": true,
371
+ "composed": true,
372
+ "docs": {
373
+ "tags": [],
374
+ "text": "Emitted when the open state of the dropdown changes."
375
+ },
376
+ "complexType": {
377
+ "original": "boolean",
378
+ "resolved": "boolean",
379
+ "references": {}
380
+ }
381
+ }];
382
+ }
383
+ static get methods() {
384
+ return {
385
+ "handleSelect": {
386
+ "complexType": {
387
+ "signature": "(e: any, { component }: { component: XplDropdownOption; }) => Promise<void>",
388
+ "parameters": [{
389
+ "name": "e",
390
+ "type": "any",
391
+ "docs": ""
392
+ }, {
393
+ "name": "__1",
394
+ "type": "{ component: XplDropdownOption; }",
395
+ "docs": ""
396
+ }],
397
+ "references": {
398
+ "Promise": {
399
+ "location": "global",
400
+ "id": "global::Promise"
401
+ },
402
+ "XplDropdownOption": {
403
+ "location": "global",
404
+ "id": "global::XplDropdownOption"
405
+ },
406
+ "DropdownItem": {
407
+ "location": "import",
408
+ "path": "./dropdown-option",
409
+ "id": "src/components/components/xpl-dropdown/dropdown-option.ts::DropdownItem",
410
+ "referenceLocation": "DropdownItem"
411
+ }
412
+ },
413
+ "return": "Promise<void>"
414
+ },
415
+ "docs": {
416
+ "text": "called on dropdown option click and keydown events to update isSelected states",
417
+ "tags": []
418
+ }
419
+ }
420
+ };
421
+ }
422
+ static get elementRef() { return "hostElement"; }
423
+ static get watchers() {
424
+ return [{
425
+ "propName": "selectedValues",
426
+ "methodName": "onSelectedValuesChanged"
427
+ }, {
428
+ "propName": "isOpen",
429
+ "methodName": "onIsOpenStateChange"
430
+ }];
431
+ }
432
+ static get listeners() {
433
+ return [{
434
+ "name": "scroll",
435
+ "method": "onWindowScroll",
436
+ "target": "window",
437
+ "capture": true,
438
+ "passive": true
439
+ }, {
440
+ "name": "scroll",
441
+ "method": "onWindowScroll",
442
+ "target": "document",
443
+ "capture": true,
444
+ "passive": true
445
+ }, {
446
+ "name": "resize",
447
+ "method": "onWindowScroll",
448
+ "target": "window",
449
+ "capture": false,
450
+ "passive": true
451
+ }];
452
+ }
271
453
  }