@xplortech/apollo-core 2.12.0 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (551) hide show
  1. package/.typings/apollo-components.html-data.json +61 -0
  2. package/AGENTS.md +4 -4
  3. package/README.md +30 -3
  4. package/build/components/modal.css +1 -1
  5. package/build/components/table-body.css +1 -0
  6. package/build/components/table-footer-cell.css +1 -0
  7. package/build/components/table-footer.css +1 -0
  8. package/build/components/table-row.css +1 -0
  9. package/build/components/top-nav.css +1 -1
  10. package/build/components-manifest.json +13 -1
  11. package/build/core.css +1 -1
  12. package/build/style.css +1 -1
  13. package/dist/apollo-core/apollo-core.css +1 -1
  14. package/dist/apollo-core/apollo-core.esm.js +1 -1
  15. package/dist/apollo-core/{p-d37488d4.entry.js → p-0368a1df.entry.js} +1 -1
  16. package/dist/apollo-core/p-056a99e4.entry.js +1 -0
  17. package/dist/apollo-core/p-068e3532.entry.js +1 -0
  18. package/dist/apollo-core/{p-121d1a4b.entry.js → p-06a9a27b.entry.js} +1 -1
  19. package/dist/apollo-core/{p-9747cf43.entry.js → p-0958c719.entry.js} +1 -1
  20. package/dist/apollo-core/p-0a0a6e43.entry.js +1 -0
  21. package/dist/apollo-core/{p-643c8038.entry.js → p-149ddd12.entry.js} +1 -1
  22. package/dist/apollo-core/p-1a94c2d9.entry.js +1 -0
  23. package/dist/apollo-core/{p-efa21ec0.entry.js → p-2139f9f6.entry.js} +1 -1
  24. package/dist/apollo-core/{p-76f64d65.entry.js → p-28bce81a.entry.js} +1 -1
  25. package/dist/apollo-core/{p-1a417191.entry.js → p-2938ab4f.entry.js} +1 -1
  26. package/dist/apollo-core/{p-4e61587f.entry.js → p-2c995d80.entry.js} +1 -1
  27. package/dist/apollo-core/p-2faa7b9c.entry.js +1 -0
  28. package/dist/apollo-core/p-30b1b700.entry.js +1 -0
  29. package/dist/apollo-core/p-32084caf.entry.js +1 -0
  30. package/dist/apollo-core/p-38586952.entry.js +1 -0
  31. package/dist/apollo-core/{p-707b1918.entry.js → p-47bda204.entry.js} +1 -1
  32. package/dist/apollo-core/{p-f199ad66.entry.js → p-4a2323b3.entry.js} +1 -1
  33. package/dist/apollo-core/{p-c25aebe5.entry.js → p-4ad79534.entry.js} +1 -1
  34. package/dist/apollo-core/{p-e4ae3f60.entry.js → p-4d4acd1f.entry.js} +1 -1
  35. package/dist/apollo-core/p-50fae269.entry.js +1 -0
  36. package/dist/apollo-core/{p-7f105d63.entry.js → p-54903322.entry.js} +1 -1
  37. package/dist/apollo-core/{p-8a81ef98.entry.js → p-5730d96c.entry.js} +1 -1
  38. package/dist/apollo-core/{p-46d21684.entry.js → p-581b702c.entry.js} +1 -1
  39. package/dist/apollo-core/{p-853418be.entry.js → p-5d9a593e.entry.js} +1 -1
  40. package/dist/apollo-core/{p-e00ed4f4.entry.js → p-60cb3cfb.entry.js} +1 -1
  41. package/dist/apollo-core/p-722b145a.entry.js +1 -0
  42. package/dist/apollo-core/p-75e5bfe0.entry.js +1 -0
  43. package/dist/apollo-core/p-77fe3cc1.entry.js +1 -0
  44. package/dist/apollo-core/{p-26861d09.entry.js → p-790709c0.entry.js} +1 -1
  45. package/dist/apollo-core/{p-7976cd3b.entry.js → p-82812126.entry.js} +1 -1
  46. package/dist/apollo-core/{p-c427a31d.entry.js → p-83bb7607.entry.js} +1 -1
  47. package/dist/apollo-core/p-8664d88b.entry.js +1 -0
  48. package/dist/apollo-core/{p-3d9c90ee.entry.js → p-9064badb.entry.js} +1 -1
  49. package/dist/apollo-core/{p-5ca18bc1.entry.js → p-91895c40.entry.js} +1 -1
  50. package/dist/apollo-core/p-969d5cca.entry.js +1 -0
  51. package/dist/apollo-core/p-99a79cf4.entry.js +1 -0
  52. package/dist/apollo-core/p-abdf199b.entry.js +1 -0
  53. package/dist/apollo-core/p-ae8a5f66.entry.js +1 -0
  54. package/dist/apollo-core/{p-9b0174b1.entry.js → p-af8ebf49.entry.js} +1 -1
  55. package/dist/apollo-core/p-b29025b2.entry.js +1 -0
  56. package/dist/apollo-core/{p-fd2756d8.entry.js → p-b45179fb.entry.js} +1 -1
  57. package/dist/apollo-core/p-b5a61076.entry.js +1 -0
  58. package/dist/apollo-core/p-bf7d8e18.entry.js +1 -0
  59. package/dist/apollo-core/p-c48e4884.entry.js +1 -0
  60. package/dist/apollo-core/{p-b537f72d.entry.js → p-ca4652b3.entry.js} +1 -1
  61. package/dist/apollo-core/{p-bb22ed2a.entry.js → p-cb5b15c2.entry.js} +1 -1
  62. package/dist/apollo-core/p-cc57f20d.entry.js +1 -0
  63. package/dist/apollo-core/{p-fef6c256.entry.js → p-cdacfcd4.entry.js} +1 -1
  64. package/dist/apollo-core/{p-616c5a32.entry.js → p-cdb5b5c4.entry.js} +1 -1
  65. package/dist/apollo-core/p-d0bc7c45.entry.js +1 -0
  66. package/dist/apollo-core/{p-ff8acf15.entry.js → p-d41b8f46.entry.js} +1 -1
  67. package/dist/apollo-core/{p-9bf2ff9f.entry.js → p-d443291f.entry.js} +1 -1
  68. package/dist/apollo-core/p-d724c419.entry.js +1 -0
  69. package/dist/apollo-core/p-d9070ae5.entry.js +1 -0
  70. package/dist/apollo-core/p-dca48977.entry.js +1 -0
  71. package/dist/apollo-core/p-e1833287.entry.js +1 -0
  72. package/dist/apollo-core/{p-601b3ab5.entry.js → p-e2890eb1.entry.js} +1 -1
  73. package/dist/apollo-core/p-e2b73b60.entry.js +1 -0
  74. package/dist/apollo-core/p-e7e445b0.entry.js +1 -0
  75. package/dist/apollo-core/p-f1c103ff.entry.js +1 -0
  76. package/dist/apollo-core/{p-0463c29f.entry.js → p-f3a2c79b.entry.js} +1 -1
  77. package/dist/apollo-core/p-ffc2f0cf.entry.js +1 -0
  78. package/dist/cjs/apollo-core.cjs.js +1 -1
  79. package/dist/cjs/index-3cBvw409.js +16 -0
  80. package/dist/cjs/loader.cjs.js +1 -1
  81. package/dist/cjs/xpl-accordion.cjs.entry.js +2 -2
  82. package/dist/cjs/xpl-application-shell.cjs.entry.js +1 -1
  83. package/dist/cjs/xpl-avatar_3.cjs.entry.js +5 -4
  84. package/dist/cjs/xpl-backdrop.cjs.entry.js +1 -1
  85. package/dist/cjs/xpl-badge.cjs.entry.js +1 -1
  86. package/dist/cjs/xpl-banner.cjs.entry.js +2 -2
  87. package/dist/cjs/xpl-breadcrumb-item.cjs.entry.js +1 -1
  88. package/dist/cjs/xpl-breadcrumbs.cjs.entry.js +1 -1
  89. package/dist/cjs/xpl-button-row.cjs.entry.js +1 -1
  90. package/dist/cjs/xpl-button.cjs.entry.js +1 -1
  91. package/dist/cjs/xpl-calendar.cjs.entry.js +1 -1
  92. package/dist/cjs/xpl-checkbox.cjs.entry.js +3 -3
  93. package/dist/cjs/xpl-choicelist.cjs.entry.js +1 -1
  94. package/dist/cjs/xpl-content-area.cjs.entry.js +1 -1
  95. package/dist/cjs/xpl-dashboard.cjs.entry.js +1 -1
  96. package/dist/cjs/xpl-data-card.cjs.entry.js +2 -2
  97. package/dist/cjs/xpl-dropdown_4.cjs.entry.js +14 -11
  98. package/dist/cjs/xpl-dynamic-table-cell.cjs.entry.js +2 -2
  99. package/dist/cjs/xpl-dynamic-table-row.cjs.entry.js +2 -2
  100. package/dist/cjs/xpl-dynamic-table.cjs.entry.js +2 -2
  101. package/dist/cjs/xpl-grid-item.cjs.entry.js +1 -1
  102. package/dist/cjs/xpl-grid.cjs.entry.js +1 -1
  103. package/dist/cjs/xpl-header-accordion.cjs.entry.js +1 -1
  104. package/dist/cjs/xpl-icon.cjs.entry.js +2 -2
  105. package/dist/cjs/xpl-input-color.cjs.entry.js +13 -13
  106. package/dist/cjs/xpl-input-phone.cjs.entry.js +5 -5
  107. package/dist/cjs/xpl-input-time.cjs.entry.js +2 -2
  108. package/dist/cjs/xpl-input_4.cjs.entry.js +15 -14
  109. package/dist/cjs/xpl-large-card.cjs.entry.js +1 -1
  110. package/dist/cjs/xpl-list.cjs.entry.js +2 -2
  111. package/dist/cjs/xpl-main-nav.cjs.entry.js +1 -1
  112. package/dist/cjs/xpl-modal.cjs.entry.js +50 -21
  113. package/dist/cjs/xpl-nav-header-menu.cjs.entry.js +2 -2
  114. package/dist/cjs/xpl-nav-item.cjs.entry.js +2 -2
  115. package/dist/cjs/xpl-pagination.cjs.entry.js +4 -4
  116. package/dist/cjs/xpl-panel.cjs.entry.js +2 -2
  117. package/dist/cjs/xpl-popover.cjs.entry.js +4 -4
  118. package/dist/cjs/xpl-progress-bar.cjs.entry.js +2 -2
  119. package/dist/cjs/xpl-progress-indicator.cjs.entry.js +1 -1
  120. package/dist/cjs/xpl-secondary-nav.cjs.entry.js +1 -1
  121. package/dist/cjs/xpl-select_2.cjs.entry.js +8 -8
  122. package/dist/cjs/xpl-side-nav-header-item.cjs.entry.js +2 -2
  123. package/dist/cjs/xpl-side-nav-item.cjs.entry.js +2 -2
  124. package/dist/cjs/xpl-side-nav-section.cjs.entry.js +5 -5
  125. package/dist/cjs/xpl-side-nav.cjs.entry.js +7 -3
  126. package/dist/cjs/xpl-skeleton.cjs.entry.js +1 -1
  127. package/dist/cjs/xpl-slideout.cjs.entry.js +1 -1
  128. package/dist/cjs/xpl-tab-panel.cjs.entry.js +2 -2
  129. package/dist/cjs/xpl-table-body.cjs.entry.js +14 -0
  130. package/dist/cjs/xpl-table-footer-cell.cjs.entry.js +18 -0
  131. package/dist/cjs/xpl-table-footer.cjs.entry.js +14 -0
  132. package/dist/cjs/xpl-table-header.cjs.entry.js +1 -1
  133. package/dist/cjs/xpl-table-row.cjs.entry.js +20 -0
  134. package/dist/cjs/xpl-table.cjs.entry.js +5 -5
  135. package/dist/cjs/xpl-tabs.cjs.entry.js +5 -5
  136. package/dist/cjs/xpl-toast.cjs.entry.js +2 -2
  137. package/dist/cjs/xpl-toggle.cjs.entry.js +3 -3
  138. package/dist/cjs/xpl-toolbar.cjs.entry.js +2 -2
  139. package/dist/cjs/xpl-tooltip.cjs.entry.js +1 -1
  140. package/dist/cjs/xpl-top-nav-item.cjs.entry.js +2 -2
  141. package/dist/cjs/xpl-top-nav-menu.cjs.entry.js +2 -2
  142. package/dist/cjs/xpl-top-nav.cjs.entry.js +5 -5
  143. package/dist/cjs/xpl-utility-bar.cjs.entry.js +1 -1
  144. package/dist/collection/collection-manifest.json +4 -0
  145. package/dist/collection/components/xpl-accordion/xpl-accordion.js +2 -2
  146. package/dist/collection/components/xpl-application-shell/xpl-application-shell.js +1 -1
  147. package/dist/collection/components/xpl-avatar/xpl-avatar.js +1 -0
  148. package/dist/collection/components/xpl-backdrop/xpl-backdrop.js +1 -1
  149. package/dist/collection/components/xpl-badge/xpl-badge.js +1 -1
  150. package/dist/collection/components/xpl-banner/xpl-banner.js +2 -2
  151. package/dist/collection/components/xpl-breadcrumbs/xpl-breadcrumb-item/xpl-breadcrumb-item.js +1 -1
  152. package/dist/collection/components/xpl-breadcrumbs/xpl-breadcrumbs/xpl-breadcrumbs.js +1 -1
  153. package/dist/collection/components/xpl-button/xpl-button.js +1 -1
  154. package/dist/collection/components/xpl-button-row/xpl-button-row.js +1 -1
  155. package/dist/collection/components/xpl-calendar/xpl-calendar.js +1 -1
  156. package/dist/collection/components/xpl-checkbox/xpl-checkbox.js +3 -3
  157. package/dist/collection/components/xpl-choicelist/xpl-choicelist.js +1 -1
  158. package/dist/collection/components/xpl-content-area/xpl-content-area.js +1 -1
  159. package/dist/collection/components/xpl-dashboard/xpl-dashboard.js +1 -1
  160. package/dist/collection/components/xpl-data-card/xpl-data-card.js +2 -2
  161. package/dist/collection/components/xpl-divider/xpl-divider.js +1 -1
  162. package/dist/collection/components/xpl-dropdown/xpl-dropdown-group/xpl-dropdown-group.js +1 -1
  163. package/dist/collection/components/xpl-dropdown/xpl-dropdown-heading/xpl-dropdown-heading.js +1 -1
  164. package/dist/collection/components/xpl-dropdown/xpl-dropdown-option/xpl-dropdown-option.js +2 -2
  165. package/dist/collection/components/xpl-dropdown/xpl-dropdown.js +10 -7
  166. package/dist/collection/components/xpl-dynamic-table/xpl-dynamic-table.js +2 -2
  167. package/dist/collection/components/xpl-dynamic-table-cell/xpl-dynamic-table-cell.js +2 -2
  168. package/dist/collection/components/xpl-dynamic-table-row/xpl-dynamic-table-row.js +2 -2
  169. package/dist/collection/components/xpl-grid/xpl-grid.js +1 -1
  170. package/dist/collection/components/xpl-grid-item/xpl-grid-item.js +1 -1
  171. package/dist/collection/components/xpl-header-accordion/xpl-header-accordion.js +1 -1
  172. package/dist/collection/components/xpl-icon/xpl-icon.js +2 -2
  173. package/dist/collection/components/xpl-input/xpl-input-color/color-utils.js +5 -5
  174. package/dist/collection/components/xpl-input/xpl-input-color/xpl-input-color.js +8 -8
  175. package/dist/collection/components/xpl-input/xpl-input-date/xpl-input-date.js +3 -3
  176. package/dist/collection/components/xpl-input/xpl-input-file/xpl-input-file.js +4 -4
  177. package/dist/collection/components/xpl-input/xpl-input-phone/xpl-input-phone.js +5 -5
  178. package/dist/collection/components/xpl-input/xpl-input-search/xpl-input-search.js +1 -1
  179. package/dist/collection/components/xpl-input/xpl-input-time/xpl-input-time.js +2 -2
  180. package/dist/collection/components/xpl-input/xpl-input.js +7 -6
  181. package/dist/collection/components/xpl-large-card/xpl-large-card.js +1 -1
  182. package/dist/collection/components/xpl-list/xpl-list.js +2 -2
  183. package/dist/collection/components/xpl-main-nav/xpl-main-nav.js +1 -1
  184. package/dist/collection/components/xpl-modal/xpl-modal.js +50 -21
  185. package/dist/collection/components/xpl-nav-item/xpl-nav-item.js +2 -2
  186. package/dist/collection/components/xpl-pagination/xpl-pagination.js +4 -4
  187. package/dist/collection/components/xpl-panel/xpl-panel.js +2 -2
  188. package/dist/collection/components/xpl-popover/xpl-popover.js +4 -4
  189. package/dist/collection/components/xpl-progress-bar/xpl-progress-bar.js +2 -2
  190. package/dist/collection/components/xpl-progress-indicator/xpl-progress-indicator.js +1 -1
  191. package/dist/collection/components/xpl-radio/xpl-radio.js +3 -3
  192. package/dist/collection/components/xpl-secondary-nav/xpl-secondary-nav.js +1 -1
  193. package/dist/collection/components/xpl-select/select.shared.js +82 -0
  194. package/dist/collection/components/xpl-select/xpl-select.js +6 -6
  195. package/dist/collection/components/xpl-side-nav/xpl-side-nav-header-item/xpl-side-nav-header-item.js +2 -2
  196. package/dist/collection/components/xpl-side-nav/xpl-side-nav-item/xpl-side-nav-item.js +2 -2
  197. package/dist/collection/components/xpl-side-nav/xpl-side-nav-section/xpl-side-nav-section.js +5 -5
  198. package/dist/collection/components/xpl-side-nav/xpl-side-nav.js +8 -4
  199. package/dist/collection/components/xpl-skeleton/xpl-skeleton.js +1 -1
  200. package/dist/collection/components/xpl-slideout/xpl-slideout.js +1 -1
  201. package/dist/collection/components/xpl-tab-panel/xpl-tab-panel.js +2 -2
  202. package/dist/collection/components/xpl-table/xpl-table-body/xpl-table-body.js +7 -0
  203. package/dist/collection/components/xpl-table/xpl-table-footer/xpl-table-footer.js +7 -0
  204. package/dist/collection/components/xpl-table/xpl-table-footer-cell/xpl-table-footer-cell.js +37 -0
  205. package/dist/collection/components/xpl-table/xpl-table-row/xpl-table-row.js +78 -0
  206. package/dist/collection/components/xpl-table/xpl-table.js +5 -5
  207. package/dist/collection/components/xpl-table-header/xpl-table-header.js +1 -1
  208. package/dist/collection/components/xpl-tabs/tabs.shared.js +0 -33
  209. package/dist/collection/components/xpl-tabs/xpl-tabs.js +5 -5
  210. package/dist/collection/components/xpl-tag/xpl-tag.js +2 -2
  211. package/dist/collection/components/xpl-toast/xpl-toast.js +2 -2
  212. package/dist/collection/components/xpl-toggle/xpl-toggle.js +3 -3
  213. package/dist/collection/components/xpl-toolbar/xpl-toolbar.js +2 -2
  214. package/dist/collection/components/xpl-tooltip/xpl-tooltip.js +1 -1
  215. package/dist/collection/components/xpl-top-nav/xpl-nav-header-menu/xpl-nav-header-menu.js +2 -2
  216. package/dist/collection/components/xpl-top-nav/xpl-top-nav-item/xpl-top-nav-item.js +2 -2
  217. package/dist/collection/components/xpl-top-nav/xpl-top-nav-menu/xpl-top-nav-menu.js +2 -2
  218. package/dist/collection/components/xpl-top-nav/xpl-top-nav.js +5 -5
  219. package/dist/collection/components/xpl-utility-bar/xpl-utility-bar.js +1 -1
  220. package/dist/components/index.d.ts +8 -0
  221. package/dist/components/index.js +1 -1
  222. package/dist/components/p-9VnxPQLs.js +1 -0
  223. package/dist/components/p-B2oLZUDD.js +1 -0
  224. package/dist/components/p-BYYFsuD3.js +1 -0
  225. package/dist/components/p-BZtxVB1R.js +1 -0
  226. package/dist/components/{p-BGqQbjLl.js → p-BdpZR4KO.js} +1 -1
  227. package/dist/components/{p-DywQ3S73.js → p-Chpgh5SL.js} +1 -1
  228. package/dist/components/{p-2jYZ7ACH.js → p-CiHTfk3E.js} +1 -1
  229. package/dist/components/p-CnVGKN63.js +1 -0
  230. package/dist/components/p-Cz7zDaI4.js +1 -0
  231. package/dist/components/{p-CjbPCnPP.js → p-D--kzomA.js} +1 -1
  232. package/dist/components/p-D4rv6CNJ.js +1 -0
  233. package/dist/components/{p-Dzp5p-eh.js → p-DAb-txW3.js} +1 -1
  234. package/dist/components/p-DYmvElhR.js +1 -0
  235. package/dist/components/{p-DsRsm61K.js → p-EfW0v54z.js} +1 -1
  236. package/dist/components/{p-DWUJ_jsx.js → p-JyNpXfDe.js} +1 -1
  237. package/dist/components/{p-DS2Kv5fl.js → p-U0JYwf4c.js} +1 -1
  238. package/dist/components/p-YG9Jza0y.js +1 -0
  239. package/dist/components/{p-imCMp2Nl.js → p-l3EZ-agL.js} +1 -1
  240. package/dist/components/p-oIn1krdu.js +1 -0
  241. package/dist/components/p-wIU7KUhA.js +1 -0
  242. package/dist/components/{p-BnTsRbko.js → p-xFsB212F.js} +1 -1
  243. package/dist/components/p-xtOHikY0.js +1 -0
  244. package/dist/components/xpl-accordion.js +1 -1
  245. package/dist/components/xpl-application-shell.js +1 -1
  246. package/dist/components/xpl-avatar.js +1 -1
  247. package/dist/components/xpl-backdrop.js +1 -1
  248. package/dist/components/xpl-badge.js +1 -1
  249. package/dist/components/xpl-banner.js +1 -1
  250. package/dist/components/xpl-breadcrumb-item.js +1 -1
  251. package/dist/components/xpl-breadcrumbs.js +1 -1
  252. package/dist/components/xpl-button-row.js +1 -1
  253. package/dist/components/xpl-button.js +1 -1
  254. package/dist/components/xpl-calendar.js +1 -1
  255. package/dist/components/xpl-checkbox.js +1 -1
  256. package/dist/components/xpl-choicelist.js +1 -1
  257. package/dist/components/xpl-content-area.js +1 -1
  258. package/dist/components/xpl-dashboard.js +1 -1
  259. package/dist/components/xpl-data-card.js +1 -1
  260. package/dist/components/xpl-divider.js +1 -1
  261. package/dist/components/xpl-dropdown-group.js +1 -1
  262. package/dist/components/xpl-dropdown-heading.js +1 -1
  263. package/dist/components/xpl-dropdown-option.js +1 -1
  264. package/dist/components/xpl-dropdown.js +1 -1
  265. package/dist/components/xpl-dynamic-table-cell.js +1 -1
  266. package/dist/components/xpl-dynamic-table-row.js +1 -1
  267. package/dist/components/xpl-dynamic-table.js +1 -1
  268. package/dist/components/xpl-grid-item.js +1 -1
  269. package/dist/components/xpl-grid.js +1 -1
  270. package/dist/components/xpl-header-accordion.js +1 -1
  271. package/dist/components/xpl-icon.js +1 -1
  272. package/dist/components/xpl-input-color.js +1 -1
  273. package/dist/components/xpl-input-date.js +1 -1
  274. package/dist/components/xpl-input-file.js +1 -1
  275. package/dist/components/xpl-input-phone.js +1 -1
  276. package/dist/components/xpl-input-search.js +1 -1
  277. package/dist/components/xpl-input-time.js +1 -1
  278. package/dist/components/xpl-input.js +1 -1
  279. package/dist/components/xpl-large-card.js +1 -1
  280. package/dist/components/xpl-list-item.js +1 -1
  281. package/dist/components/xpl-list.js +1 -1
  282. package/dist/components/xpl-main-nav.js +1 -1
  283. package/dist/components/xpl-modal.js +1 -1
  284. package/dist/components/xpl-nav-header-menu.js +1 -1
  285. package/dist/components/xpl-nav-item.js +1 -1
  286. package/dist/components/xpl-pagination.js +1 -1
  287. package/dist/components/xpl-panel.js +1 -1
  288. package/dist/components/xpl-popover.js +1 -1
  289. package/dist/components/xpl-progress-bar.js +1 -1
  290. package/dist/components/xpl-progress-indicator.js +1 -1
  291. package/dist/components/xpl-radio.js +1 -1
  292. package/dist/components/xpl-secondary-nav.js +1 -1
  293. package/dist/components/xpl-select.js +1 -1
  294. package/dist/components/xpl-side-nav-header-item.js +1 -1
  295. package/dist/components/xpl-side-nav-item.js +1 -1
  296. package/dist/components/xpl-side-nav-section.js +1 -1
  297. package/dist/components/xpl-side-nav.js +1 -1
  298. package/dist/components/xpl-skeleton.js +1 -1
  299. package/dist/components/xpl-slideout.js +1 -1
  300. package/dist/components/xpl-spotlight.js +1 -1
  301. package/dist/components/xpl-tab-panel.js +1 -1
  302. package/dist/components/xpl-tab.js +1 -1
  303. package/dist/components/xpl-table-body.d.ts +11 -0
  304. package/dist/components/xpl-table-body.js +1 -0
  305. package/dist/components/xpl-table-footer-cell.d.ts +11 -0
  306. package/dist/components/xpl-table-footer-cell.js +1 -0
  307. package/dist/components/xpl-table-footer.d.ts +11 -0
  308. package/dist/components/xpl-table-footer.js +1 -0
  309. package/dist/components/xpl-table-header-cell.js +1 -1
  310. package/dist/components/xpl-table-header.js +1 -1
  311. package/dist/components/xpl-table-row.d.ts +11 -0
  312. package/dist/components/xpl-table-row.js +1 -0
  313. package/dist/components/xpl-table.js +1 -1
  314. package/dist/components/xpl-tabs.js +1 -1
  315. package/dist/components/xpl-tag.js +1 -1
  316. package/dist/components/xpl-toast.js +1 -1
  317. package/dist/components/xpl-toggle.js +1 -1
  318. package/dist/components/xpl-toolbar.js +1 -1
  319. package/dist/components/xpl-tooltip.js +1 -1
  320. package/dist/components/xpl-top-nav-item.js +1 -1
  321. package/dist/components/xpl-top-nav-menu.js +1 -1
  322. package/dist/components/xpl-top-nav.js +1 -1
  323. package/dist/components/xpl-utility-bar.js +1 -1
  324. package/dist/docs/xpl-modal/readme.md +18 -2
  325. package/dist/docs/xpl-table/xpl-table-body/readme.md +16 -0
  326. package/dist/docs/xpl-table/xpl-table-footer/readme.md +16 -0
  327. package/dist/docs/xpl-table/xpl-table-footer-cell/readme.md +31 -0
  328. package/dist/docs/xpl-table/xpl-table-row/readme.md +34 -0
  329. package/dist/docs.json +207 -6
  330. package/dist/esm/apollo-core.js +1 -1
  331. package/dist/esm/index-ukZKsqqq.js +16 -0
  332. package/dist/esm/loader.js +1 -1
  333. package/dist/esm/xpl-accordion.entry.js +2 -2
  334. package/dist/esm/xpl-application-shell.entry.js +1 -1
  335. package/dist/esm/xpl-avatar_3.entry.js +5 -4
  336. package/dist/esm/xpl-backdrop.entry.js +1 -1
  337. package/dist/esm/xpl-badge.entry.js +1 -1
  338. package/dist/esm/xpl-banner.entry.js +2 -2
  339. package/dist/esm/xpl-breadcrumb-item.entry.js +1 -1
  340. package/dist/esm/xpl-breadcrumbs.entry.js +1 -1
  341. package/dist/esm/xpl-button-row.entry.js +1 -1
  342. package/dist/esm/xpl-button.entry.js +1 -1
  343. package/dist/esm/xpl-calendar.entry.js +1 -1
  344. package/dist/esm/xpl-checkbox.entry.js +3 -3
  345. package/dist/esm/xpl-choicelist.entry.js +1 -1
  346. package/dist/esm/xpl-content-area.entry.js +1 -1
  347. package/dist/esm/xpl-dashboard.entry.js +1 -1
  348. package/dist/esm/xpl-data-card.entry.js +2 -2
  349. package/dist/esm/xpl-dropdown_4.entry.js +14 -11
  350. package/dist/esm/xpl-dynamic-table-cell.entry.js +2 -2
  351. package/dist/esm/xpl-dynamic-table-row.entry.js +2 -2
  352. package/dist/esm/xpl-dynamic-table.entry.js +2 -2
  353. package/dist/esm/xpl-grid-item.entry.js +1 -1
  354. package/dist/esm/xpl-grid.entry.js +1 -1
  355. package/dist/esm/xpl-header-accordion.entry.js +1 -1
  356. package/dist/esm/xpl-icon.entry.js +2 -2
  357. package/dist/esm/xpl-input-color.entry.js +13 -13
  358. package/dist/esm/xpl-input-phone.entry.js +5 -5
  359. package/dist/esm/xpl-input-time.entry.js +2 -2
  360. package/dist/esm/xpl-input_4.entry.js +15 -14
  361. package/dist/esm/xpl-large-card.entry.js +1 -1
  362. package/dist/esm/xpl-list.entry.js +2 -2
  363. package/dist/esm/xpl-main-nav.entry.js +1 -1
  364. package/dist/esm/xpl-modal.entry.js +50 -21
  365. package/dist/esm/xpl-nav-header-menu.entry.js +2 -2
  366. package/dist/esm/xpl-nav-item.entry.js +2 -2
  367. package/dist/esm/xpl-pagination.entry.js +4 -4
  368. package/dist/esm/xpl-panel.entry.js +2 -2
  369. package/dist/esm/xpl-popover.entry.js +4 -4
  370. package/dist/esm/xpl-progress-bar.entry.js +2 -2
  371. package/dist/esm/xpl-progress-indicator.entry.js +1 -1
  372. package/dist/esm/xpl-secondary-nav.entry.js +1 -1
  373. package/dist/esm/xpl-select_2.entry.js +8 -8
  374. package/dist/esm/xpl-side-nav-header-item.entry.js +2 -2
  375. package/dist/esm/xpl-side-nav-item.entry.js +2 -2
  376. package/dist/esm/xpl-side-nav-section.entry.js +5 -5
  377. package/dist/esm/xpl-side-nav.entry.js +8 -4
  378. package/dist/esm/xpl-skeleton.entry.js +1 -1
  379. package/dist/esm/xpl-slideout.entry.js +1 -1
  380. package/dist/esm/xpl-tab-panel.entry.js +2 -2
  381. package/dist/esm/xpl-table-body.entry.js +12 -0
  382. package/dist/esm/xpl-table-footer-cell.entry.js +16 -0
  383. package/dist/esm/xpl-table-footer.entry.js +12 -0
  384. package/dist/esm/xpl-table-header.entry.js +1 -1
  385. package/dist/esm/xpl-table-row.entry.js +18 -0
  386. package/dist/esm/xpl-table.entry.js +5 -5
  387. package/dist/esm/xpl-tabs.entry.js +5 -5
  388. package/dist/esm/xpl-toast.entry.js +2 -2
  389. package/dist/esm/xpl-toggle.entry.js +3 -3
  390. package/dist/esm/xpl-toolbar.entry.js +2 -2
  391. package/dist/esm/xpl-tooltip.entry.js +1 -1
  392. package/dist/esm/xpl-top-nav-item.entry.js +2 -2
  393. package/dist/esm/xpl-top-nav-menu.entry.js +2 -2
  394. package/dist/esm/xpl-top-nav.entry.js +5 -5
  395. package/dist/esm/xpl-utility-bar.entry.js +1 -1
  396. package/dist/types/components/xpl-modal/xpl-modal.d.ts +7 -1
  397. package/dist/types/components/xpl-select/select.shared.d.ts +23 -0
  398. package/dist/types/components/xpl-table/xpl-table-body/xpl-table-body.d.ts +3 -0
  399. package/dist/types/components/xpl-table/xpl-table-footer/xpl-table-footer.d.ts +3 -0
  400. package/dist/types/components/xpl-table/xpl-table-footer-cell/xpl-table-footer-cell.d.ts +4 -0
  401. package/dist/types/components/xpl-table/xpl-table-row/xpl-table-row.d.ts +6 -0
  402. package/dist/types/components/xpl-tabs/tabs.shared.d.ts +0 -2
  403. package/dist/types/components.d.ts +98 -0
  404. package/hydrate/index.js +302 -176
  405. package/hydrate/index.mjs +302 -176
  406. package/package.json +42 -46
  407. package/dist/apollo-core/p-0095174c.entry.js +0 -1
  408. package/dist/apollo-core/p-020ecd66.entry.js +0 -1
  409. package/dist/apollo-core/p-091411e3.entry.js +0 -1
  410. package/dist/apollo-core/p-0be4dbb8.entry.js +0 -1
  411. package/dist/apollo-core/p-1139fac0.entry.js +0 -1
  412. package/dist/apollo-core/p-140a96c7.entry.js +0 -1
  413. package/dist/apollo-core/p-26b6a0ed.entry.js +0 -1
  414. package/dist/apollo-core/p-39e71d86.entry.js +0 -1
  415. package/dist/apollo-core/p-3dd1de49.entry.js +0 -1
  416. package/dist/apollo-core/p-4129d971.entry.js +0 -1
  417. package/dist/apollo-core/p-5afc9831.entry.js +0 -1
  418. package/dist/apollo-core/p-5d25a84a.entry.js +0 -1
  419. package/dist/apollo-core/p-5e5c5016.entry.js +0 -1
  420. package/dist/apollo-core/p-638fd9b1.entry.js +0 -1
  421. package/dist/apollo-core/p-724c5038.entry.js +0 -1
  422. package/dist/apollo-core/p-80a11cad.entry.js +0 -1
  423. package/dist/apollo-core/p-875e0eaa.entry.js +0 -1
  424. package/dist/apollo-core/p-8ddbf2e2.entry.js +0 -1
  425. package/dist/apollo-core/p-a33b0943.entry.js +0 -1
  426. package/dist/apollo-core/p-ba41bbd5.entry.js +0 -1
  427. package/dist/apollo-core/p-cde21f72.entry.js +0 -1
  428. package/dist/apollo-core/p-d288c1d1.entry.js +0 -1
  429. package/dist/apollo-core/p-d3f2b8b8.entry.js +0 -1
  430. package/dist/apollo-core/p-dfaba114.entry.js +0 -1
  431. package/dist/apollo-core/p-e2a16242.entry.js +0 -1
  432. package/dist/apollo-core/p-ec488f9c.entry.js +0 -1
  433. package/dist/apollo-core/p-f2bfe6a6.entry.js +0 -1
  434. package/dist/collection/components/xpl-accordion/accordion.stories.js +0 -84
  435. package/dist/collection/components/xpl-application-shell/application-shell.stories.js +0 -755
  436. package/dist/collection/components/xpl-avatar/avatar.stories.js +0 -157
  437. package/dist/collection/components/xpl-backdrop/backdrop.stories.js +0 -38
  438. package/dist/collection/components/xpl-badge/badge.stories.js +0 -104
  439. package/dist/collection/components/xpl-banner/banner.stories.js +0 -69
  440. package/dist/collection/components/xpl-breadcrumbs/breadcrumbs.stories.js +0 -139
  441. package/dist/collection/components/xpl-button/button.stories.js +0 -144
  442. package/dist/collection/components/xpl-button-row/button-row.stories.js +0 -68
  443. package/dist/collection/components/xpl-calendar/calendar.stories.js +0 -71
  444. package/dist/collection/components/xpl-checkbox/checkbox.stories.js +0 -92
  445. package/dist/collection/components/xpl-choicelist/choicelist.stories.js +0 -162
  446. package/dist/collection/components/xpl-content-area/content-area.stories.js +0 -44
  447. package/dist/collection/components/xpl-dashboard/dashboard.stories.js +0 -57
  448. package/dist/collection/components/xpl-data-card/data-card.stories.js +0 -170
  449. package/dist/collection/components/xpl-divider/divider.stories.js +0 -47
  450. package/dist/collection/components/xpl-dropdown/dropdown.stories.js +0 -395
  451. package/dist/collection/components/xpl-dynamic-table/dynamic-table.stories.js +0 -169
  452. package/dist/collection/components/xpl-grid/grid.stories.js +0 -85
  453. package/dist/collection/components/xpl-header-accordion/header-accordion.stories.js +0 -56
  454. package/dist/collection/components/xpl-icon/icons.stories.js +0 -161
  455. package/dist/collection/components/xpl-input/input.stories.js +0 -712
  456. package/dist/collection/components/xpl-large-card/large-card.stories.js +0 -155
  457. package/dist/collection/components/xpl-list/list.stories.js +0 -398
  458. package/dist/collection/components/xpl-main-nav/main-nav.stories.js +0 -312
  459. package/dist/collection/components/xpl-modal/modal.stories.js +0 -100
  460. package/dist/collection/components/xpl-pagination/pagination.stories.js +0 -65
  461. package/dist/collection/components/xpl-panel/panel.stories.js +0 -62
  462. package/dist/collection/components/xpl-popover/popover.stories.js +0 -174
  463. package/dist/collection/components/xpl-progress-bar/progress-bar.stories.js +0 -105
  464. package/dist/collection/components/xpl-progress-indicator/progress-indicator.stories.js +0 -126
  465. package/dist/collection/components/xpl-radio/radio.stories.js +0 -115
  466. package/dist/collection/components/xpl-secondary-nav/secondary-nav.stories.js +0 -83
  467. package/dist/collection/components/xpl-select/select.stories.js +0 -300
  468. package/dist/collection/components/xpl-side-nav/side-nav.stories.js +0 -1070
  469. package/dist/collection/components/xpl-skeleton/skeleton.stories.js +0 -80
  470. package/dist/collection/components/xpl-slideout/slideout.stories.js +0 -122
  471. package/dist/collection/components/xpl-spotlight/spotlight.stories.js +0 -392
  472. package/dist/collection/components/xpl-table/table.stories.js +0 -156
  473. package/dist/collection/components/xpl-table-header/table-header.stories.js +0 -134
  474. package/dist/collection/components/xpl-table-header-cell/table-header-cell.stories.js +0 -83
  475. package/dist/collection/components/xpl-tabs/segment-control.stories.js +0 -40
  476. package/dist/collection/components/xpl-tabs/tabs.stories.js +0 -43
  477. package/dist/collection/components/xpl-tag/tag.stories.js +0 -159
  478. package/dist/collection/components/xpl-toast/toast.stories.js +0 -112
  479. package/dist/collection/components/xpl-toggle/toggle.stories.js +0 -95
  480. package/dist/collection/components/xpl-toolbar/toolbar.stories.js +0 -39
  481. package/dist/collection/components/xpl-tooltip/tooltip.stories.js +0 -67
  482. package/dist/collection/components/xpl-top-nav/top-nav.stories.js +0 -764
  483. package/dist/collection/components/xpl-utility-bar/utility-bar.stories.js +0 -94
  484. package/dist/components/p-Bseq_BgD.js +0 -1
  485. package/dist/components/p-CCgZCY_A.js +0 -1
  486. package/dist/components/p-CJzsLWeV.js +0 -1
  487. package/dist/components/p-CRKY79vL.js +0 -1
  488. package/dist/components/p-Cjxw-qOg.js +0 -1
  489. package/dist/components/p-D6JUVA1x.js +0 -1
  490. package/dist/components/p-DFGw0APN.js +0 -1
  491. package/dist/components/p-DLLQBDCb.js +0 -1
  492. package/dist/components/p-Di1NDy0w.js +0 -1
  493. package/dist/components/p-DkM7jyQB.js +0 -1
  494. package/dist/components/p-Mehog36m.js +0 -1
  495. package/dist/components/p-RYnBuuDE.js +0 -1
  496. package/dist/css/typography.stories.js +0 -153
  497. package/dist/types/components/xpl-accordion/accordion.stories.d.ts +0 -46
  498. package/dist/types/components/xpl-application-shell/application-shell.stories.d.ts +0 -46
  499. package/dist/types/components/xpl-avatar/avatar.stories.d.ts +0 -39
  500. package/dist/types/components/xpl-backdrop/backdrop.stories.d.ts +0 -23
  501. package/dist/types/components/xpl-badge/badge.stories.d.ts +0 -87
  502. package/dist/types/components/xpl-banner/banner.stories.d.ts +0 -79
  503. package/dist/types/components/xpl-breadcrumbs/breadcrumbs.stories.d.ts +0 -40
  504. package/dist/types/components/xpl-button/button.stories.d.ts +0 -136
  505. package/dist/types/components/xpl-button-row/button-row.stories.d.ts +0 -34
  506. package/dist/types/components/xpl-calendar/calendar.stories.d.ts +0 -45
  507. package/dist/types/components/xpl-checkbox/checkbox.stories.d.ts +0 -51
  508. package/dist/types/components/xpl-choicelist/choicelist.stories.d.ts +0 -30
  509. package/dist/types/components/xpl-content-area/content-area.stories.d.ts +0 -19
  510. package/dist/types/components/xpl-dashboard/dashboard.stories.d.ts +0 -22
  511. package/dist/types/components/xpl-data-card/data-card.stories.d.ts +0 -113
  512. package/dist/types/components/xpl-divider/divider.stories.d.ts +0 -28
  513. package/dist/types/components/xpl-dropdown/dropdown.stories.d.ts +0 -177
  514. package/dist/types/components/xpl-dynamic-table/dynamic-table.stories.d.ts +0 -30
  515. package/dist/types/components/xpl-grid/grid.stories.d.ts +0 -109
  516. package/dist/types/components/xpl-header-accordion/header-accordion.stories.d.ts +0 -32
  517. package/dist/types/components/xpl-icon/icons.stories.d.ts +0 -31
  518. package/dist/types/components/xpl-input/input.stories.d.ts +0 -441
  519. package/dist/types/components/xpl-large-card/large-card.stories.d.ts +0 -57
  520. package/dist/types/components/xpl-list/list.stories.d.ts +0 -385
  521. package/dist/types/components/xpl-main-nav/main-nav.stories.d.ts +0 -19
  522. package/dist/types/components/xpl-modal/modal.stories.d.ts +0 -103
  523. package/dist/types/components/xpl-pagination/pagination.stories.d.ts +0 -31
  524. package/dist/types/components/xpl-panel/panel.stories.d.ts +0 -30
  525. package/dist/types/components/xpl-popover/popover.stories.d.ts +0 -21
  526. package/dist/types/components/xpl-progress-bar/progress-bar.stories.d.ts +0 -62
  527. package/dist/types/components/xpl-progress-indicator/progress-indicator.stories.d.ts +0 -64
  528. package/dist/types/components/xpl-radio/radio.stories.d.ts +0 -96
  529. package/dist/types/components/xpl-secondary-nav/secondary-nav.stories.d.ts +0 -8
  530. package/dist/types/components/xpl-select/select.stories.d.ts +0 -158
  531. package/dist/types/components/xpl-side-nav/side-nav.stories.d.ts +0 -173
  532. package/dist/types/components/xpl-skeleton/skeleton.stories.d.ts +0 -36
  533. package/dist/types/components/xpl-slideout/slideout.stories.d.ts +0 -124
  534. package/dist/types/components/xpl-spotlight/spotlight.stories.d.ts +0 -203
  535. package/dist/types/components/xpl-table/table.stories.d.ts +0 -67
  536. package/dist/types/components/xpl-table-header/table-header.stories.d.ts +0 -80
  537. package/dist/types/components/xpl-table-header-cell/table-header-cell.stories.d.ts +0 -36
  538. package/dist/types/components/xpl-tabs/segment-control.stories.d.ts +0 -134
  539. package/dist/types/components/xpl-tabs/tabs.stories.d.ts +0 -107
  540. package/dist/types/components/xpl-tag/tag.stories.d.ts +0 -68
  541. package/dist/types/components/xpl-toast/toast.stories.d.ts +0 -70
  542. package/dist/types/components/xpl-toggle/toggle.stories.d.ts +0 -53
  543. package/dist/types/components/xpl-toolbar/toolbar.stories.d.ts +0 -35
  544. package/dist/types/components/xpl-tooltip/tooltip.stories.d.ts +0 -29
  545. package/dist/types/components/xpl-top-nav/top-nav.stories.d.ts +0 -549
  546. package/dist/types/components/xpl-utility-bar/utility-bar.stories.d.ts +0 -27
  547. package/dist/types/home/runner/work/apollo/apollo/packages/apollo-core/.stencil/.storybook/utils/story-function.d.ts +0 -11
  548. package/dist/types/home/runner/work/apollo/apollo/packages/apollo-core/.stencil/.storybook/utils/wait-for-hydration.d.ts +0 -1
  549. package/dist/types/home/runner/work/apollo/apollo/packages/apollo-core/.stencil/src/css/typography.stories.d.ts +0 -76
  550. /package/dist/types/home/runner/work/apollo/apollo/packages/apollo-core/.stencil/{src/utils → utils}/form-bindings.d.ts +0 -0
  551. /package/dist/types/home/runner/work/apollo/apollo/packages/apollo-core/.stencil/{src/utils → utils}/story-vrt.d.ts +0 -0
@@ -1,712 +0,0 @@
1
- import { setAutoSnapshotOptions } from "vitest-plugin-vis";
2
- export default {
3
- title: 'Components/Input',
4
- tags: ['vrt'],
5
- beforeEach() {
6
- setAutoSnapshotOptions({ enable: true });
7
- },
8
- parameters: {
9
- actions: {
10
- handles: [
11
- 'inputChange',
12
- 'inputEvent',
13
- 'valueChange',
14
- 'hasErrorStateChanged',
15
- 'rangeSelected',
16
- 'search',
17
- ],
18
- },
19
- },
20
- argTypes: {
21
- label: {
22
- type: { name: 'string', required: true },
23
- },
24
- description: {
25
- type: { name: 'string', required: false },
26
- },
27
- disabled: {
28
- type: {
29
- name: 'boolean',
30
- },
31
- },
32
- error: {
33
- type: {
34
- name: 'boolean',
35
- },
36
- },
37
- errorMessage: {
38
- type: { name: 'string', required: false },
39
- },
40
- type: {
41
- options: [
42
- 'text',
43
- 'number',
44
- 'file',
45
- 'password',
46
- 'date',
47
- 'time',
48
- 'color',
49
- 'phone',
50
- 'search',
51
- ],
52
- control: {
53
- type: 'select',
54
- },
55
- },
56
- },
57
- };
58
- const inputArgs = {
59
- label: 'Input',
60
- description: 'A brief description',
61
- disabled: false,
62
- error: false,
63
- errorMessage: '',
64
- pre: '',
65
- post: '',
66
- type: 'text',
67
- defaultCountry: 'US',
68
- isInternational: true,
69
- };
70
- export const Input = ({ label, description, disabled, error, errorMessage, pre, post, type, defaultCountry, isInternational, }) => {
71
- let attrs = '';
72
- if (label)
73
- attrs += ` label="${label}"`;
74
- if (description)
75
- attrs += ` description="${description}"`;
76
- if (disabled)
77
- attrs += ` disabled`;
78
- if (error)
79
- attrs += ` error${errorMessage ? `="${errorMessage}"` : ''}`;
80
- if (pre)
81
- attrs += ` pre="${pre}"`;
82
- if (post)
83
- attrs += ` post="${post}"`;
84
- if (type !== 'text')
85
- attrs += ` type="${type}"`;
86
- if (type === 'phone' && defaultCountry)
87
- attrs += ` default-country="${defaultCountry}"`;
88
- if (type === 'phone' && isInternational === false)
89
- attrs += ` is-international="false"`;
90
- return `<xpl-input${attrs} name="input-name" placeholder="Placeholder"></xpl-input>`;
91
- };
92
- Input.args = inputArgs;
93
- Input.argTypes = {
94
- defaultCountry: {
95
- control: { type: 'text' },
96
- description: 'Default country (ISO code) for phone input',
97
- if: { arg: 'type', eq: 'phone' },
98
- },
99
- isInternational: {
100
- control: { type: 'boolean' },
101
- description: 'Enables international mode with country selector. When false, locked to defaultCountry with no picker.',
102
- if: { arg: 'type', eq: 'phone' },
103
- },
104
- };
105
- Input.parameters = {
106
- layout: 'centered',
107
- 'web-component': {
108
- render: Input(Input.args),
109
- },
110
- html: {
111
- render: (({ label, description, disabled, error, errorMessage, pre, post, type }) => {
112
- const output = [];
113
- let className = 'xpl-input';
114
- if (disabled)
115
- className += ' xpl-input--disabled';
116
- if (error)
117
- className += ' xpl-input--error';
118
- output.push(`
119
- <div class="${className}">
120
- <label for="id">
121
- ${label}
122
- ${description ? `<small>${description}</small>` : ''}
123
- </label>
124
- <div class="xpl-input-wrapper">
125
- ${pre ? `<label class="xpl-input-pre" for="id">${pre}</label>` : ''}
126
- <input ${disabled ? 'disabled ' : ''}id="id" name="input-name" placeholder="Placeholder" type="${type}" />${post
127
- ? `
128
- <label class="xpl-input-post" for="id">${post}</label>`
129
- : ''}
130
- </div>${errorMessage
131
- ? `
132
- <label class="xpl-input-error" for="id">
133
- <svg width="10" height="11" viewBox="0 0 10 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M9.84375 5.25C9.84375 2.59375 7.65625 0.40625 5 0.40625C2.32422 0.40625 0.15625 2.59375 0.15625 5.25C0.15625 7.92578 2.32422 10.0938 5 10.0938C7.65625 10.0938 9.84375 7.92578 9.84375 5.25ZM5 6.22656C5.48828 6.22656 5.89844 6.63672 5.89844 7.125C5.89844 7.63281 5.48828 8.02344 5 8.02344C4.49219 8.02344 4.10156 7.63281 4.10156 7.125C4.10156 6.63672 4.49219 6.22656 5 6.22656ZM4.14062 3.00391C4.12109 2.86719 4.23828 2.75 4.375 2.75H5.60547C5.74219 2.75 5.85938 2.86719 5.83984 3.00391L5.70312 5.66016C5.68359 5.79688 5.58594 5.875 5.46875 5.875H4.51172C4.39453 5.875 4.29688 5.79688 4.27734 5.66016L4.14062 3.00391Z" /></svg>
134
- ${errorMessage}
135
- </label>`
136
- : ''}
137
- </div>`);
138
- return output;
139
- })(Input.args),
140
- },
141
- design: {
142
- type: 'figma',
143
- url: 'https://www.figma.com/design/MjjYek73MFnHmVNdm45Sd1/Apollo-Web?node-id=16215-5412&p=f&t=vVY2x58f7oPprNSr-11',
144
- },
145
- };
146
- const multilineArgs = {
147
- label: 'Multiline Input',
148
- description: 'A brief description',
149
- disabled: false,
150
- error: false,
151
- errorMessage: '',
152
- maxCharacterCount: 50,
153
- };
154
- export const Multiline = ({ label, description, disabled, error, errorMessage, maxCharacterCount, }) => {
155
- let attrs = ' multiline';
156
- if (label)
157
- attrs += ` label="${label}"`;
158
- if (description)
159
- attrs += ` description="${description}"`;
160
- if (disabled)
161
- attrs += ` disabled`;
162
- if (error)
163
- attrs += ` error${errorMessage ? `="${errorMessage}"` : ''}`;
164
- if (maxCharacterCount >= 0)
165
- attrs += ` max-character-count="${maxCharacterCount}"`;
166
- return `<xpl-input${attrs} name="input-name" placeholder="Placeholder"></xpl-input>`;
167
- };
168
- Multiline.args = multilineArgs;
169
- Multiline.parameters = {
170
- layout: 'centered',
171
- 'web-component': {
172
- render: Multiline(Multiline.args),
173
- },
174
- html: {
175
- render: (({ disabled, error, errorMessage, label, description, maxCharacterCount }) => {
176
- const output = [];
177
- if (maxCharacterCount > 0)
178
- output.push(`WARNING: For multiline inputs with a max. character count,
179
- there is JS interactivity that is provided only by
180
- the web component. The code shown below does not
181
- reflect the additional markup and interactivity.`);
182
- let className = 'xpl-input';
183
- if (disabled)
184
- className += ' xpl-input--disabled';
185
- if (error)
186
- className += ' xpl-input--error';
187
- output.push(`<div class="${className}">
188
- <label for="id">
189
- ${label}${description
190
- ? `
191
- <small>${description}</small>`
192
- : ''}
193
- </label>
194
- <div class="xpl-input-wrapper">
195
- <textarea ${disabled ? 'disabled ' : ''}id="id" name="input-name" placeholder="Placeholder"></textarea>
196
- </div>${errorMessage
197
- ? `
198
- <label class="xpl-input-error" for="id">
199
- <svg width="10" height="11" viewBox="0 0 10 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M9.84375 5.25C9.84375 2.59375 7.65625 0.40625 5 0.40625C2.32422 0.40625 0.15625 2.59375 0.15625 5.25C0.15625 7.92578 2.32422 10.0938 5 10.0938C7.65625 10.0938 9.84375 7.92578 9.84375 5.25ZM5 6.22656C5.48828 6.22656 5.89844 6.63672 5.89844 7.125C5.89844 7.63281 5.48828 8.02344 5 8.02344C4.49219 8.02344 4.10156 7.63281 4.10156 7.125C4.10156 6.63672 4.49219 6.22656 5 6.22656ZM4.14062 3.00391C4.12109 2.86719 4.23828 2.75 4.375 2.75H5.60547C5.74219 2.75 5.85938 2.86719 5.83984 3.00391L5.70312 5.66016C5.68359 5.79688 5.58594 5.875 5.46875 5.875H4.51172C4.39453 5.875 4.29688 5.79688 4.27734 5.66016L4.14062 3.00391Z" /></svg>
200
- ${errorMessage}
201
- </label>`
202
- : ''}
203
- </div>`);
204
- return output;
205
- })(Multiline.args),
206
- },
207
- };
208
- const datepickerArgs = {
209
- mode: 'single',
210
- label: 'Datepicker',
211
- dateFormat: 'm/d/Y',
212
- description: 'A brief description',
213
- disabled: false,
214
- error: false,
215
- errorMessage: '',
216
- min: '01/01/2000',
217
- max: '12/31/2099',
218
- required: false,
219
- type: 'date',
220
- };
221
- export const Datepicker = ({ label, dateFormat, description, disabled, error, errorMessage, min, mode, max, required, type, }) => {
222
- let attrs = ` type="${type}"`;
223
- if (label)
224
- attrs += ` label="${label}"`;
225
- if (dateFormat)
226
- attrs += ` date-format="${dateFormat}"`;
227
- if (description)
228
- attrs += ` description="${description}"`;
229
- if (disabled)
230
- attrs += ` disabled`;
231
- if (error)
232
- attrs += ` error${errorMessage ? `="${errorMessage}"` : ''}`;
233
- if (min)
234
- attrs += ` min="${min}"`;
235
- if (max)
236
- attrs += ` max="${max}"`;
237
- if (mode)
238
- attrs += ` mode="${mode}"`;
239
- if (required)
240
- attrs += ` required`;
241
- return `<xpl-input${attrs} name="input-name" placeholder="Placeholder"></xpl-input>`;
242
- };
243
- Datepicker.argTypes = {
244
- mode: {
245
- options: ['single', 'range'],
246
- control: {
247
- type: 'select',
248
- },
249
- },
250
- type: {
251
- options: ['date', 'time'],
252
- control: {
253
- type: 'select',
254
- },
255
- },
256
- };
257
- Datepicker.args = datepickerArgs;
258
- Datepicker.parameters = {
259
- layout: 'centered',
260
- 'web-component': {
261
- render: Datepicker(Datepicker.args),
262
- },
263
- html: {
264
- render: (({ label, description, disabled, error, errorMessage, min, max, required }) => {
265
- const output = [
266
- `The full-featured Datepicker Input only supports web component usage. However, a 'lite' version that uses native browser features is included here:`,
267
- ];
268
- let className = 'xpl-input';
269
- if (disabled)
270
- className += ' xpl-input--disabled';
271
- if (error)
272
- className += ' xpl-input--error';
273
- output.push(`<div class="${className}">
274
- <label for="id">
275
- ${label}${description
276
- ? `
277
- <small>${description}</small>`
278
- : ''}
279
- </label>
280
- <div class="xpl-input-wrapper">
281
- <input ${required ? 'required ' : ''}${disabled ? 'disabled ' : ''}id="id"${min ? ` min="${min}"` : ''}${max ? ` max="${max}"` : ''} name="input-name" placeholder="Placeholder" type="date" />
282
- </div>${errorMessage
283
- ? `
284
- <label class="xpl-input-error" for="id">
285
- <svg width="10" height="11" viewBox="0 0 10 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M9.84375 5.25C9.84375 2.59375 7.65625 0.40625 5 0.40625C2.32422 0.40625 0.15625 2.59375 0.15625 5.25C0.15625 7.92578 2.32422 10.0938 5 10.0938C7.65625 10.0938 9.84375 7.92578 9.84375 5.25ZM5 6.22656C5.48828 6.22656 5.89844 6.63672 5.89844 7.125C5.89844 7.63281 5.48828 8.02344 5 8.02344C4.49219 8.02344 4.10156 7.63281 4.10156 7.125C4.10156 6.63672 4.49219 6.22656 5 6.22656ZM4.14062 3.00391C4.12109 2.86719 4.23828 2.75 4.375 2.75H5.60547C5.74219 2.75 5.85938 2.86719 5.83984 3.00391L5.70312 5.66016C5.68359 5.79688 5.58594 5.875 5.46875 5.875H4.51172C4.39453 5.875 4.29688 5.79688 4.27734 5.66016L4.14062 3.00391Z" /></svg>
286
- ${errorMessage}
287
- </label>`
288
- : ''}
289
- </div>`);
290
- return output;
291
- })(Datepicker.args),
292
- },
293
- };
294
- const timepickerArgs = {
295
- label: 'Timepicker',
296
- description: 'A brief description',
297
- disabled: false,
298
- error: false,
299
- errorMessage: 'This field is required.',
300
- required: true,
301
- readonly: false,
302
- value: '15:30',
303
- step: 30,
304
- timeFormat: '12h',
305
- allowCustomOption: false,
306
- min: '10:00',
307
- max: '18:00',
308
- type: 'time',
309
- };
310
- export const Timepicker = ({ label, description, disabled, error, errorMessage, required, readonly, value, step, timeFormat, allowCustomOption, min, max, type, }) => {
311
- let attrs = '';
312
- if (label)
313
- attrs += `label="${label}"`;
314
- if (description)
315
- attrs += ` description="${description}"`;
316
- if (disabled)
317
- attrs += ` disabled`;
318
- if (error)
319
- attrs += ` error${errorMessage ? `="${errorMessage}"` : ''}`;
320
- if (min)
321
- attrs += ` min="${min}"`;
322
- if (max)
323
- attrs += ` max="${max}"`;
324
- if (required)
325
- attrs += ` required`;
326
- if (readonly)
327
- attrs += ` readonly`;
328
- if (value)
329
- attrs += ` value="${value}"`;
330
- if (step)
331
- attrs += ` step="${step}"`;
332
- if (timeFormat)
333
- attrs += ` time-format="${timeFormat}"`;
334
- if (allowCustomOption)
335
- attrs += ` allow-custom-option`;
336
- if (type)
337
- attrs += ` type="${type}"`;
338
- return `<xpl-input ${attrs} name="input-name"></xpl-input>`;
339
- };
340
- Timepicker.args = timepickerArgs;
341
- Timepicker.argTypes = {
342
- timeFormat: {
343
- control: { type: 'select' },
344
- options: ['12h', '24h'],
345
- },
346
- };
347
- Timepicker.parameters = {
348
- layout: 'centered',
349
- 'web-component': {
350
- render: Timepicker(Timepicker.args),
351
- },
352
- html: {
353
- render: (({ label, description, disabled, error, errorMessage, min, max, required, type, timeFormat, }) => {
354
- const output = [
355
- `The full-featured Timepicker Input only supports web component usage. However, a 'lite' version that uses native browser features is included here:`,
356
- ];
357
- let className = 'xpl-input';
358
- if (disabled)
359
- className += ' xpl-input--disabled';
360
- if (error)
361
- className += ' xpl-input--error';
362
- output.push(`<div class="${className}">
363
- <label for="id">
364
- ${label}${description
365
- ? `
366
- <small>${description}</small>`
367
- : ''}
368
- </label>
369
- <div class="xpl-input-wrapper">
370
- <label class="xpl-input-pre"><xpl-icon icon="clock" size="24"></xpl-icon></label>
371
- <input type="${type}" ${required ? 'required ' : ''}${disabled ? 'disabled ' : ''}id="id"${min ? ` min="${min}"` : ''}${max ? ` max="${max}"` : ''} name="input-name" placeholder="Placeholder" />
372
- <label class="xpl-input-post">${timeFormat === '12h' ? 'AM' : ''}</label>
373
- <xpl-dropdown options={[
374
- {
375
- "label": "10:00 AM",
376
- "value": "10:00"
377
- },
378
- {
379
- "label": "10:30 AM",
380
- "value": "10:30"
381
- },
382
- {
383
- "label": "11:00 AM",
384
- "value": "11:00"
385
- },
386
- {
387
- "label": "5:30 PM",
388
- "value": "17:30"
389
- },
390
- {
391
- "label": "6:00 PM",
392
- "value": "18:00"
393
- }
394
- ]}></xpl-dropdown>
395
- </div>${errorMessage
396
- ? `
397
- <label class="xpl-input-error" for="id">
398
- <svg width="10" height="11" viewBox="0 0 10 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M9.84375 5.25C9.84375 2.59375 7.65625 0.40625 5 0.40625C2.32422 0.40625 0.15625 2.59375 0.15625 5.25C0.15625 7.92578 2.32422 10.0938 5 10.0938C7.65625 10.0938 9.84375 7.92578 9.84375 5.25ZM5 6.22656C5.48828 6.22656 5.89844 6.63672 5.89844 7.125C5.89844 7.63281 5.48828 8.02344 5 8.02344C4.49219 8.02344 4.10156 7.63281 4.10156 7.125C4.10156 6.63672 4.49219 6.22656 5 6.22656ZM4.14062 3.00391C4.12109 2.86719 4.23828 2.75 4.375 2.75H5.60547C5.74219 2.75 5.85938 2.86719 5.83984 3.00391L5.70312 5.66016C5.68359 5.79688 5.58594 5.875 5.46875 5.875H4.51172C4.39453 5.875 4.29688 5.79688 4.27734 5.66016L4.14062 3.00391Z" /></svg>
399
- ${errorMessage}
400
- </label>`
401
- : ''}
402
- </div>`);
403
- return output;
404
- })(Timepicker.args),
405
- },
406
- };
407
- const passwordArgs = {
408
- label: 'Password',
409
- description: 'Enter a password:',
410
- disabled: false,
411
- error: false,
412
- errorMessage: '',
413
- pre: '',
414
- post: '',
415
- };
416
- export const Password = ({ label, description, disabled, error, errorMessage, pre, post, }) => {
417
- let attrs = '';
418
- if (label)
419
- attrs += ` label="${label}"`;
420
- if (description)
421
- attrs += ` description="${description}"`;
422
- if (disabled)
423
- attrs += ` disabled`;
424
- if (error)
425
- attrs += ` error${errorMessage ? `="${errorMessage}"` : ''}`;
426
- if (pre)
427
- attrs += ` pre="${pre}"`;
428
- if (post)
429
- attrs += ` post="${post}"`;
430
- return `<xpl-input type="password"${attrs} name="input-name"></xpl-input>`;
431
- };
432
- Password.args = passwordArgs;
433
- Password.parameters = {
434
- layout: 'centered',
435
- 'web-component': {
436
- render: Password(Password.args),
437
- },
438
- html: {
439
- render: ((_) => `Sorry, the Password Input only supports web component usage.`)(Password.args),
440
- },
441
- };
442
- const fileArgs = {
443
- accept: 'image/png, image/jpeg',
444
- multiple: false,
445
- hideTriggerOnSelect: false,
446
- hideFileNames: false,
447
- hideAcceptText: false,
448
- label: 'Upload File',
449
- triggerContent: `<xpl-button slot="trigger"><xpl-icon icon="upload" size="24"></xpl-icon>Upload File</xpl-button>`,
450
- description: '',
451
- disabled: false,
452
- error: false,
453
- errorMessage: 'This field is required.',
454
- type: 'file',
455
- };
456
- export const File = ({ accept, multiple, hideTriggerOnSelect, hideFileNames, hideAcceptText, label, triggerContent, description, disabled, error, errorMessage, }) => {
457
- const renderFileUpload = () => `
458
- <xpl-input
459
- label="${label}"
460
- accept="${accept}"
461
- multiple="${multiple}"
462
- type="file"
463
- name="file-input"
464
- hide-trigger-on-select="${hideTriggerOnSelect}"
465
- hide-file-names="${hideFileNames}"
466
- hide-accept-text="${hideAcceptText}"
467
- description="${description}"
468
- disabled="${disabled}"
469
- ${error ? `error="${errorMessage}"` : ''}
470
- >
471
- ${triggerContent}
472
- </xpl-input>
473
- `;
474
- return renderFileUpload();
475
- };
476
- File.args = fileArgs;
477
- File.parameters = {
478
- layout: 'centered',
479
- 'web-component': {
480
- render: File(File.args),
481
- },
482
- html: {
483
- render: ((args) => {
484
- const output = [];
485
- output.push(`<label class="xpl-input-label">${args.label}<small>${args.description}</small></label>`);
486
- output.push(`<div class="xpl-input-file" ${args.hideTriggerOnSelect ? 'xpl-input-file--hide-trigger-on-select' : ''} ${args.disabled ? 'xpl-input-file--disabled' : ''} >`);
487
- output.push(`<span class="xpl-input-file__trigger-wrapper" role="button" tabindex="0">${args.triggerContent}</span>`);
488
- if (args.hideAcceptText !== true && args.accept) {
489
- output.push(`<span class="xpl-input-file__accept xpl-text-caption">Accepted file types: ${args.accept}</span>`);
490
- }
491
- if (!args.hideFileNames) {
492
- output.push(`<ul class="xpl-input-file__file-list">
493
- <li class="xpl-input-file__file-item">
494
- <span class="xpl-text-callout">Filename1.png</span>
495
- <xpl-icon icon="x-circle" size="24" class="xpl-input-file__remove-icon"></xpl-icon>
496
- </li>
497
- <li class="xpl-input-file__file-item">
498
- <span class="xpl-text-callout">Filename2.png</span>
499
- <xpl-icon icon="x-circle" size="24" class="xpl-input-file__remove-icon"></xpl-icon>
500
- </li>
501
- </ul>`);
502
- }
503
- output.push('</div>');
504
- return output.join('');
505
- })(File.args),
506
- },
507
- };
508
- const colorArgs = {
509
- label: 'Select Color',
510
- placeholder: 'Choose color',
511
- value: '#ffff00',
512
- disabled: false,
513
- required: false,
514
- requiredErrorMessage: 'This field is required.',
515
- hideEyeDropper: false,
516
- };
517
- export const Color = ({ value, label, placeholder, disabled, required, requiredErrorMessage, hideEyeDropper, }) => {
518
- const renderFileUpload = () => `
519
- <xpl-input
520
- type="color"
521
- label="${label}"
522
- value="${value}"
523
- placeholder="${placeholder}"
524
- disabled="${disabled}"
525
- required="${required}"
526
- required-error-message="${requiredErrorMessage}"
527
- hide-eye-dropper="${hideEyeDropper}"
528
- >
529
- </xpl-input>
530
- `;
531
- return renderFileUpload();
532
- };
533
- Color.args = colorArgs;
534
- Color.parameters = {
535
- layout: 'centered',
536
- 'web-component': {
537
- render: Color(Color.args),
538
- },
539
- html: {
540
- render: ((args) => {
541
- const output = [];
542
- output.push(`
543
- <div class="xpl-input-color">
544
- <label class="xpl-input-color__label">${args.label}</label>
545
- <xpl-popover disabled="${args.disabled}">
546
- <div class="xpl-input-color__display" ${args.disabled ? 'xpl-input-color__display--disabled' : ''}>
547
- <span class="xpl-input-color__color" style="background: ${args.value}"></span>
548
- <span class="xpl-input-color__value">${args.value}</span>
549
- <xpl-icon class="xpl-input-color__icon" icon="eye-droper"></xpl-icon>
550
- </div>
551
- <div class="xpl-popover__arrow"></div>
552
- <div class="xpl-popover__content">
553
- <div class="xpl-input-color__menu">
554
- <div class="xpl-input-color__sl-grid" style="background: linear-gradient(to right, rgb(128, 128, 128), rgb(81, 0, 255)), linear-gradient(to top, black, transparent);">
555
- <div class="xpl-input-color__sl-thumb" style="left: 92%; top: 39%;"></div>
556
- <input type="range" min="0" max="360" value="0" class="xpl-input-color__slider xpl-input-color__hue" name="color-hue-slider" />
557
- </div>
558
- <div class="xpl-input-color__grid">
559
- <input type="range" min="0" max="360" value="0" class="xpl-input-color__slider xpl-input-color__hue" name="color-hue-slider" />
560
- <input type="range" min="0" max="1" step="0.01" value="0" class="xpl-input-color__slider xpl-input-color__alpha" name="color-alpha-slider" />
561
- <div class="xpl-input-color__preview" style="background: rgba(255, 255, 0, 1);"></div>
562
- </div>
563
- <div class="xpl-input-color__inputs">
564
- <xpl-input label="Hex" name="color-hex-input" placeholder="793EF7" value="${args.value}" />
565
- <xpl-input label="R" name="color-r-input" placeholder="0" value="${args.value}" />
566
- <xpl-input label="G" name="color-g-input" placeholder="0" value="${args.value}" />
567
- <xpl-input label="B" name="color-b-input" placeholder="0" value="${args.value}" />
568
- <xpl-input label="A" name="color-a-input" placeholder="1" value="${args.value}" />
569
- </div>
570
- </div>
571
- </div>
572
- </xpl-popover>
573
- </div>
574
- `);
575
- return output.join('');
576
- })(Color.args),
577
- },
578
- };
579
- const phoneArgs = {
580
- defaultCountry: 'US',
581
- description: 'Enter your phone number with country code',
582
- disabled: false,
583
- error: false,
584
- errorMessage: '',
585
- isInternational: true,
586
- label: 'Phone number',
587
- placeholder: 'Enter number',
588
- value: '+0000000000',
589
- };
590
- export const Phone = ({ label, description, placeholder, disabled, defaultCountry, isInternational, value, }) => {
591
- let attrs = ` type="phone" label="${label}" name="phone" placeholder="${placeholder}"`;
592
- if (description)
593
- attrs += ` description="${description}"`;
594
- if (disabled)
595
- attrs += ` disabled`;
596
- if (defaultCountry)
597
- attrs += ` default-country="${defaultCountry}"`;
598
- if (isInternational === false)
599
- attrs += ` is-international="false"`;
600
- if (value)
601
- attrs += ` value="${value}"`;
602
- return `<xpl-input${attrs}></xpl-input>`;
603
- };
604
- Phone.args = phoneArgs;
605
- Phone.argTypes = {
606
- isInternational: {
607
- control: { type: 'boolean' },
608
- description: 'Enables international mode with country selector. When false, locked to defaultCountry with no picker.',
609
- },
610
- };
611
- Phone.parameters = {
612
- layout: 'centered',
613
- 'web-component': {
614
- render: Phone(Phone.args),
615
- },
616
- html: {
617
- render: (() => `
618
- <div class="xpl-input">
619
- <label class="xpl-input-label" for="phone-id">${Phone.args.label}</label>
620
- ${Phone.args.description ? `<small>${Phone.args.description}</small>` : ''}
621
- <div class="xpl-input-wrapper xpl-input-phone">
622
- <button type="button" class="xpl-input-phone__trigger" aria-haspopup="listbox">+1</button>
623
- <input type="tel" id="phone-id" name="phone" placeholder="${Phone.args.placeholder}" class="xpl-input-phone__input" />
624
- </div>
625
- </div>`)(),
626
- },
627
- };
628
- const searchArgs = {
629
- ariaLabel: '',
630
- autocomplete: '',
631
- description: '',
632
- disabled: false,
633
- error: false,
634
- errorMessage: '',
635
- label: '',
636
- readonly: false,
637
- name: '',
638
- placeholder: 'Search…',
639
- shape: 'rounded',
640
- value: '',
641
- };
642
- export const Search = ({ label, description, disabled, error, readonly, errorMessage, placeholder, value, name, shape, autocomplete, ariaLabel, }) => {
643
- let attrs = ' type="search"';
644
- if (label !== undefined && label !== '')
645
- attrs += ` label="${label}"`;
646
- if (description)
647
- attrs += ` description="${description}"`;
648
- if (disabled)
649
- attrs += ` disabled`;
650
- if (error)
651
- attrs += ` error${errorMessage ? `="${errorMessage}"` : ''}`;
652
- if (placeholder)
653
- attrs += ` placeholder="${placeholder}"`;
654
- if (value)
655
- attrs += ` value="${value}"`;
656
- if (name)
657
- attrs += ` name="${name}"`;
658
- if (shape)
659
- attrs += ` shape="${shape}"`;
660
- if (autocomplete)
661
- attrs += ` autocomplete="${autocomplete}"`;
662
- if (ariaLabel)
663
- attrs += ` aria-label="${ariaLabel}"`;
664
- if (readonly)
665
- attrs += ` readonly`;
666
- return `<xpl-input${attrs}></xpl-input>`;
667
- };
668
- Search.args = searchArgs;
669
- Search.argTypes = {
670
- ariaLabel: {
671
- control: { type: 'text' },
672
- description: 'Accessible name when no visible label (search inputs only)',
673
- },
674
- shape: {
675
- control: { type: 'select' },
676
- options: ['rounded', 'box'],
677
- },
678
- };
679
- Search.parameters = {
680
- layout: 'centered',
681
- design: {
682
- type: 'figma',
683
- url: 'https://www.figma.com/design/MjjYek73MFnHmVNdm45Sd1/Apollo-Web?node-id=2430-168374&p=f&t=oG14CHMwd7GirmPv-11',
684
- },
685
- 'web-component': {
686
- render: Search(Search.args),
687
- },
688
- html: {
689
- render: (() => `
690
- <div class="xpl-input xpl-input--search">
691
- <div class="xpl-input-search">
692
- <form class="xpl-input-search__form">
693
- <div class="xpl-input-search__shell">
694
- <span class="xpl-input-search__icon" aria-hidden="true"></span>
695
- <input
696
- class="xpl-input-search__input"
697
- id="search-html-id"
698
- name="${Search.args.name}"
699
- type="text"
700
- role="searchbox"
701
- aria-label="Search"
702
- placeholder="${Search.args.placeholder}"
703
- autocomplete="off"
704
- />
705
- <button type="button" class="xpl-input-search__clear" aria-label="Clear search"></button>
706
- </div>
707
- </form>
708
- </div>
709
- </div>
710
- `)(),
711
- },
712
- };