@0001-labs/design-system-1 0.3.0-alpha.13 → 0.3.0-alpha.14

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 (771) hide show
  1. package/DS1/0-face/calendar.ts +194 -0
  2. package/DS1/0-face/carousel.ts +623 -0
  3. package/DS1/0-face/component-visibility.ts +13 -0
  4. package/DS1/0-face/copy-text.ts +96 -0
  5. package/DS1/0-face/device.ts +8 -58
  6. package/DS1/0-face/dialog-swipe.ts +249 -0
  7. package/DS1/0-face/dialogs.ts +208 -0
  8. package/DS1/0-face/drawer.ts +258 -0
  9. package/DS1/0-face/feedback-words.ts +36 -0
  10. package/DS1/0-face/feedback.ts +40 -0
  11. package/DS1/0-face/format.ts +700 -0
  12. package/DS1/0-face/generated/toast-assets.ts +18 -0
  13. package/DS1/0-face/grid-fit.ts +1 -1
  14. package/DS1/0-face/grid.ts +3 -2
  15. package/DS1/0-face/header.ts +78 -0
  16. package/DS1/0-face/i18n.ts +93 -18
  17. package/DS1/0-face/keys.ts +276 -0
  18. package/DS1/0-face/languages.ts +4 -4
  19. package/DS1/0-face/layout-inspector.ts +6 -6
  20. package/DS1/0-face/library-styles.ts +33 -0
  21. package/DS1/0-face/load-toaster.ts +7 -0
  22. package/DS1/0-face/preference-options.ts +29 -0
  23. package/DS1/0-face/preferences.ts +3 -11
  24. package/DS1/0-face/pricing.ts +98 -43
  25. package/DS1/0-face/scaling.ts +160 -4
  26. package/DS1/0-face/shared-words.ts +9 -4
  27. package/DS1/0-face/sidebar.ts +201 -0
  28. package/DS1/0-face/theme-bootstrap.js +184 -0
  29. package/DS1/0-face/theme.ts +89 -47
  30. package/DS1/0-face/toast-queue.ts +157 -0
  31. package/DS1/0-face/toaster.ts +384 -0
  32. package/DS1/0-face/tooltips.ts +157 -15
  33. package/DS1/0-face/translations/da.json +60 -1
  34. package/DS1/0-face/translations/de.json +60 -1
  35. package/DS1/0-face/translations/en.json +60 -1
  36. package/DS1/0-face/translations/es.json +60 -1
  37. package/DS1/0-face/translations/fi.json +60 -1
  38. package/DS1/0-face/translations/fr.json +60 -1
  39. package/DS1/0-face/translations/is.json +60 -1
  40. package/DS1/0-face/translations/it.json +60 -1
  41. package/DS1/0-face/translations/ja.json +60 -1
  42. package/DS1/0-face/translations/ko.json +60 -1
  43. package/DS1/0-face/translations/nb.json +60 -1
  44. package/DS1/0-face/translations/pt-BR.json +60 -1
  45. package/DS1/0-face/translations/pt.json +60 -1
  46. package/DS1/0-face/translations/sv.json +60 -1
  47. package/DS1/0-face/translations/zh.json +60 -1
  48. package/DS1/0-face/translations-format.ts +3 -4
  49. package/DS1/1-root/card.css +192 -0
  50. package/DS1/1-root/carousel.css +136 -0
  51. package/DS1/1-root/cjk.css +23 -0
  52. package/DS1/1-root/component-metrics.css +1 -0
  53. package/DS1/1-root/component-tokens.css +51 -8
  54. package/DS1/1-root/controls.css +887 -14
  55. package/DS1/1-root/dialog-placement.css +191 -0
  56. package/DS1/1-root/document.css +183 -0
  57. package/DS1/1-root/drawer.css +83 -0
  58. package/DS1/1-root/empty.css +83 -0
  59. package/DS1/1-root/figures.css +141 -0
  60. package/DS1/1-root/fonts/Iosevka-LICENSE.md +3 -1
  61. package/DS1/1-root/fonts/Iosevka-Regular.woff2 +0 -0
  62. package/DS1/1-root/fonts.css +69 -0
  63. package/DS1/1-root/footer.css +186 -0
  64. package/DS1/1-root/header.css +165 -0
  65. package/DS1/1-root/kbd.css +46 -0
  66. package/DS1/1-root/library-tokens.ts +91 -0
  67. package/DS1/1-root/measures.ts +53 -0
  68. package/DS1/1-root/notice.css +165 -0
  69. package/DS1/1-root/one.css +14 -84
  70. package/DS1/1-root/one.semantic.css +200 -148
  71. package/DS1/1-root/palette.css +58 -0
  72. package/DS1/1-root/palette.ts +19 -0
  73. package/DS1/1-root/progress.css +356 -0
  74. package/DS1/1-root/prose.css +202 -0
  75. package/DS1/1-root/row.css +297 -0
  76. package/DS1/1-root/table.css +111 -0
  77. package/DS1/1-root/text.css +70 -0
  78. package/DS1/2-core/button-split.ts +55 -0
  79. package/DS1/2-core/chart/chart.css +169 -0
  80. package/DS1/2-core/chart/grid-chart.ts +554 -0
  81. package/DS1/2-core/ds-avatar.ts +25 -6
  82. package/DS1/2-core/ds-badge.ts +10 -10
  83. package/DS1/2-core/ds-button.ts +111 -26
  84. package/DS1/2-core/ds-card.ts +135 -105
  85. package/DS1/2-core/ds-chart.ts +327 -0
  86. package/DS1/2-core/ds-composer.ts +8 -2
  87. package/DS1/2-core/ds-cycle.ts +97 -21
  88. package/DS1/2-core/ds-empty.ts +120 -0
  89. package/DS1/2-core/ds-icon.ts +11 -2
  90. package/DS1/2-core/ds-input.ts +165 -6
  91. package/DS1/2-core/ds-kbd.ts +78 -0
  92. package/DS1/2-core/ds-loading.ts +72 -0
  93. package/DS1/2-core/ds-notice.ts +180 -0
  94. package/DS1/2-core/ds-progress.ts +380 -0
  95. package/DS1/2-core/ds-spacing-handle.ts +22 -0
  96. package/DS1/2-core/ds-stat.ts +174 -0
  97. package/DS1/2-core/ds-switch.ts +1 -0
  98. package/DS1/2-core/ds-text.ts +15 -2
  99. package/DS1/2-core/ds-toast.ts +354 -0
  100. package/DS1/2-core/figures.ts +105 -0
  101. package/DS1/2-core/generated/ds-icon-map.ts +234 -128
  102. package/DS1/2-core/generated/icon-avatar.ts +2 -0
  103. package/DS1/2-core/generated/icons-extra.ts +118 -65
  104. package/DS1/2-core/generated/icons-immediate.ts +1 -1
  105. package/DS1/2-core/spacing-handle.ts +95 -0
  106. package/DS1/2-core/styles/ds-avatar.css +9 -8
  107. package/DS1/2-core/styles/ds-button-host.css +26 -3
  108. package/DS1/2-core/styles/ds-button-split.css +67 -0
  109. package/DS1/2-core/styles/ds-button.css +49 -15
  110. package/DS1/2-core/styles/ds-card.css +34 -0
  111. package/DS1/2-core/styles/ds-composer.css +13 -0
  112. package/DS1/2-core/styles/ds-cycle.css +69 -0
  113. package/DS1/2-core/styles/ds-empty.css +18 -0
  114. package/DS1/2-core/styles/ds-gap.css +1 -0
  115. package/DS1/2-core/styles/ds-icon.css +1 -0
  116. package/DS1/2-core/styles/ds-input.css +59 -6
  117. package/DS1/2-core/styles/ds-kbd.css +12 -0
  118. package/DS1/2-core/styles/ds-loading.css +13 -0
  119. package/DS1/2-core/styles/ds-notice.css +30 -0
  120. package/DS1/2-core/styles/ds-progress.css +25 -0
  121. package/DS1/2-core/styles/ds-select.css +2 -2
  122. package/DS1/2-core/styles/ds-spacing-handle.css +8 -0
  123. package/DS1/2-core/styles/ds-split.css +2 -62
  124. package/DS1/2-core/styles/ds-stat.css +34 -0
  125. package/DS1/2-core/styles/ds-switch.css +16 -1
  126. package/DS1/2-core/styles/ds-text.css +43 -12
  127. package/DS1/2-core/styles/ds-toast.css +182 -0
  128. package/DS1/2-core/styles/ds-tooltip.css +1 -0
  129. package/DS1/3-unit/calendar-base.ts +263 -0
  130. package/DS1/3-unit/ds-accordion.ts +9 -1
  131. package/DS1/3-unit/ds-avatar-group.ts +1 -0
  132. package/DS1/3-unit/ds-calendar-large.ts +349 -0
  133. package/DS1/3-unit/ds-calendar.ts +344 -0
  134. package/DS1/3-unit/ds-carousel.ts +368 -0
  135. package/DS1/3-unit/ds-date-picker.ts +540 -0
  136. package/DS1/3-unit/ds-form.ts +45 -37
  137. package/DS1/3-unit/ds-list.ts +48 -1
  138. package/DS1/3-unit/ds-matrix.ts +318 -0
  139. package/DS1/3-unit/ds-menu.ts +8 -4
  140. package/DS1/3-unit/ds-row.ts +84 -1
  141. package/DS1/3-unit/ds-sidebar.ts +280 -0
  142. package/DS1/3-unit/ds-table.ts +75 -34
  143. package/DS1/3-unit/styles/ds-accordion.css +1 -0
  144. package/DS1/3-unit/styles/ds-avatar-group.css +2 -4
  145. package/DS1/3-unit/styles/ds-calendar-large.css +165 -0
  146. package/DS1/3-unit/styles/ds-calendar.css +238 -0
  147. package/DS1/3-unit/styles/ds-carousel.css +30 -0
  148. package/DS1/3-unit/styles/ds-date-picker.css +124 -0
  149. package/DS1/3-unit/styles/ds-list.css +1 -0
  150. package/DS1/3-unit/styles/ds-matrix.css +203 -0
  151. package/DS1/3-unit/styles/ds-menu.css +31 -6
  152. package/DS1/3-unit/styles/ds-row.css +84 -2
  153. package/DS1/3-unit/styles/ds-sidebar.css +117 -0
  154. package/DS1/3-unit/styles/ds-table.css +3 -74
  155. package/DS1/4-page/ds-dialog.ts +40 -4
  156. package/DS1/4-page/ds-document.ts +240 -0
  157. package/DS1/4-page/ds-footer.ts +165 -0
  158. package/DS1/4-page/ds-grid.ts +39 -59
  159. package/DS1/4-page/ds-header.ts +171 -0
  160. package/DS1/4-page/ds-page.ts +184 -0
  161. package/DS1/4-page/email.ts +2 -3
  162. package/DS1/4-page/styles/ds-container.css +1 -0
  163. package/DS1/4-page/styles/ds-document.css +18 -0
  164. package/DS1/4-page/styles/ds-footer.css +29 -0
  165. package/DS1/4-page/styles/ds-grid.css +31 -85
  166. package/DS1/4-page/styles/ds-header.css +57 -0
  167. package/DS1/4-page/styles/ds-page.css +214 -0
  168. package/DS1/components.ts +7 -1
  169. package/DS1/index.ts +26 -6
  170. package/DS1/react/avatar.ts +4 -5
  171. package/DS1/react/button-split.ts +29 -0
  172. package/DS1/react/button.ts +32 -13
  173. package/DS1/react/carousel.ts +76 -0
  174. package/DS1/react/dialog.ts +36 -5
  175. package/DS1/react/document.ts +14 -0
  176. package/DS1/react/empty.ts +32 -0
  177. package/DS1/react/footer.ts +17 -0
  178. package/DS1/react/header.ts +15 -0
  179. package/DS1/react/input.ts +28 -17
  180. package/DS1/react/kbd.ts +21 -0
  181. package/DS1/react/loading.ts +18 -0
  182. package/DS1/react/notice.ts +59 -0
  183. package/DS1/react/page.ts +13 -0
  184. package/DS1/react/progress.ts +99 -0
  185. package/DS1/react/sidebar.ts +60 -0
  186. package/DS1/react/spacing-handle.ts +21 -0
  187. package/DS1/react/stat.ts +73 -0
  188. package/DS1/react/toast.ts +82 -0
  189. package/DS1/x-icon/Tabler-LICENSE.md +27 -0
  190. package/DS1/x-icon/airtable.svg +5 -0
  191. package/DS1/x-icon/attach.svg +3 -0
  192. package/DS1/x-icon/audio.svg +3 -0
  193. package/DS1/x-icon/bag-alt.svg +3 -0
  194. package/DS1/x-icon/bank.svg +3 -0
  195. package/DS1/x-icon/banknote.svg +3 -0
  196. package/DS1/x-icon/bolt.svg +3 -0
  197. package/DS1/x-icon/book-alt.svg +3 -0
  198. package/DS1/x-icon/book.svg +4 -0
  199. package/DS1/x-icon/box.svg +3 -0
  200. package/DS1/x-icon/briefcase.svg +3 -0
  201. package/DS1/x-icon/building.svg +4 -0
  202. package/DS1/x-icon/car.svg +3 -0
  203. package/DS1/x-icon/card.svg +3 -0
  204. package/DS1/x-icon/cart.svg +3 -0
  205. package/DS1/x-icon/{ezo-item-button-start.svg → chevron-left.svg} +1 -1
  206. package/DS1/x-icon/{ezo-android-screen-stats.svg → chevron-right.svg} +1 -1
  207. package/DS1/x-icon/cloud.svg +3 -0
  208. package/DS1/x-icon/coffee.svg +3 -0
  209. package/DS1/x-icon/coins.svg +3 -0
  210. package/DS1/x-icon/cursor.svg +3 -0
  211. package/DS1/x-icon/curve.svg +7 -0
  212. package/DS1/x-icon/dislike.svg +4 -0
  213. package/DS1/x-icon/dot-bank.svg +3 -0
  214. package/DS1/x-icon/dot-banknote.svg +3 -0
  215. package/DS1/x-icon/dot-banknotes.svg +3 -0
  216. package/DS1/x-icon/dot-card.svg +3 -0
  217. package/DS1/x-icon/dot-coin.svg +3 -0
  218. package/DS1/x-icon/dot-coins.svg +3 -0
  219. package/DS1/x-icon/dot-receipt.svg +3 -0
  220. package/DS1/x-icon/dot-safe.svg +3 -0
  221. package/DS1/x-icon/dot-transfer.svg +3 -0
  222. package/DS1/x-icon/dot-wallet.svg +3 -0
  223. package/DS1/x-icon/download.svg +4 -0
  224. package/DS1/x-icon/drive.svg +5 -0
  225. package/DS1/x-icon/drop.svg +3 -0
  226. package/DS1/x-icon/dropbox.svg +3 -0
  227. package/DS1/x-icon/dumbbell.svg +3 -0
  228. package/DS1/x-icon/eye-off.svg +3 -0
  229. package/DS1/x-icon/eye.svg +3 -0
  230. package/DS1/x-icon/facebook.svg +3 -0
  231. package/DS1/x-icon/figma.svg +5 -0
  232. package/DS1/x-icon/flame.svg +3 -0
  233. package/DS1/x-icon/flip.svg +5 -0
  234. package/DS1/x-icon/food.svg +3 -0
  235. package/DS1/x-icon/fuel.svg +3 -0
  236. package/DS1/x-icon/game.svg +3 -0
  237. package/DS1/x-icon/gift.svg +3 -0
  238. package/DS1/x-icon/github.svg +3 -0
  239. package/DS1/x-icon/heart.svg +3 -0
  240. package/DS1/x-icon/history.svg +3 -0
  241. package/DS1/x-icon/home-alt.svg +3 -0
  242. package/DS1/x-icon/income.svg +3 -0
  243. package/DS1/x-icon/info.svg +5 -0
  244. package/DS1/x-icon/instagram.svg +5 -0
  245. package/DS1/x-icon/jpbank.svg +3 -0
  246. package/DS1/x-icon/key.svg +4 -0
  247. package/DS1/x-icon/keyboard.svg +3 -0
  248. package/DS1/x-icon/like.svg +4 -0
  249. package/DS1/x-icon/linkedin.svg +7 -0
  250. package/DS1/x-icon/loom.svg +6 -0
  251. package/DS1/x-icon/map.svg +4 -0
  252. package/DS1/x-icon/medical.svg +3 -0
  253. package/DS1/x-icon/{ezo-android-screen-lists.svg → minus.svg} +1 -1
  254. package/DS1/x-icon/moon.svg +3 -0
  255. package/DS1/x-icon/move.svg +3 -0
  256. package/DS1/x-icon/music-alt.svg +3 -0
  257. package/DS1/x-icon/music.svg +5 -0
  258. package/DS1/x-icon/notion.svg +6 -0
  259. package/DS1/x-icon/offline.svg +3 -0
  260. package/DS1/x-icon/pause.svg +4 -0
  261. package/DS1/x-icon/paw.svg +3 -0
  262. package/DS1/x-icon/pdf.svg +3 -0
  263. package/DS1/x-icon/people.svg +5 -0
  264. package/DS1/x-icon/percent.svg +3 -0
  265. package/DS1/x-icon/phone.svg +3 -0
  266. package/DS1/x-icon/pill.svg +3 -0
  267. package/DS1/x-icon/plane.svg +3 -0
  268. package/DS1/x-icon/postal.svg +3 -0
  269. package/DS1/x-icon/present.svg +4 -0
  270. package/DS1/x-icon/reaction.svg +5 -0
  271. package/DS1/x-icon/receipt.svg +3 -0
  272. package/DS1/x-icon/refresh.svg +3 -0
  273. package/DS1/x-icon/refund.svg +3 -0
  274. package/DS1/x-icon/repeat.svg +3 -0
  275. package/DS1/x-icon/rotate.svg +4 -0
  276. package/DS1/x-icon/safe.svg +3 -0
  277. package/DS1/x-icon/school-alt.svg +3 -0
  278. package/DS1/x-icon/shield-alt.svg +3 -0
  279. package/DS1/x-icon/shield.svg +4 -0
  280. package/DS1/x-icon/shirt.svg +3 -0
  281. package/DS1/x-icon/shop.svg +3 -0
  282. package/DS1/x-icon/sign-in.svg +3 -0
  283. package/DS1/x-icon/sign-out.svg +3 -0
  284. package/DS1/x-icon/slack.svg +6 -0
  285. package/DS1/x-icon/sparkle.svg +3 -0
  286. package/DS1/x-icon/start.svg +4 -0
  287. package/DS1/x-icon/{ezo-item-button-reopen.svg → stop.svg} +1 -1
  288. package/DS1/x-icon/sun.svg +3 -0
  289. package/DS1/x-icon/system.svg +4 -0
  290. package/DS1/x-icon/tag.svg +3 -0
  291. package/DS1/x-icon/ticket.svg +3 -0
  292. package/DS1/x-icon/title-struck.svg +4 -0
  293. package/DS1/x-icon/train.svg +3 -0
  294. package/DS1/x-icon/transfer.svg +3 -0
  295. package/DS1/x-icon/tv.svg +3 -0
  296. package/DS1/x-icon/upload.svg +4 -0
  297. package/DS1/x-icon/video.svg +4 -0
  298. package/DS1/x-icon/vimeo.svg +3 -0
  299. package/DS1/x-icon/wallet.svg +3 -0
  300. package/DS1/x-icon/wifi.svg +3 -0
  301. package/DS1/x-icon/window.svg +4 -0
  302. package/DS1/x-icon/wrench.svg +3 -0
  303. package/DS1/x-icon/x-brand.svg +4 -0
  304. package/DS1/x-icon/youtube.svg +4 -0
  305. package/README.md +3 -3
  306. package/dist/0-face/calendar.d.ts +75 -0
  307. package/dist/0-face/calendar.d.ts.map +1 -0
  308. package/dist/0-face/calendar.js +149 -0
  309. package/dist/0-face/carousel.d.ts +174 -0
  310. package/dist/0-face/carousel.d.ts.map +1 -0
  311. package/dist/0-face/carousel.js +583 -0
  312. package/dist/0-face/component-visibility.d.ts +7 -0
  313. package/dist/0-face/component-visibility.d.ts.map +1 -0
  314. package/dist/0-face/component-visibility.js +10 -0
  315. package/dist/0-face/copy-text.d.ts +11 -0
  316. package/dist/0-face/copy-text.d.ts.map +1 -0
  317. package/dist/0-face/copy-text.js +97 -0
  318. package/dist/0-face/device.d.ts +3 -7
  319. package/dist/0-face/device.d.ts.map +1 -1
  320. package/dist/0-face/device.js +7 -41
  321. package/dist/0-face/dialog-swipe.d.ts +49 -0
  322. package/dist/0-face/dialog-swipe.d.ts.map +1 -0
  323. package/dist/0-face/dialog-swipe.js +239 -0
  324. package/dist/0-face/dialogs.d.ts +33 -0
  325. package/dist/0-face/dialogs.d.ts.map +1 -0
  326. package/dist/0-face/dialogs.js +173 -0
  327. package/dist/0-face/drawer.d.ts +64 -0
  328. package/dist/0-face/drawer.d.ts.map +1 -0
  329. package/dist/0-face/drawer.js +256 -0
  330. package/dist/0-face/feedback-words.d.ts +21 -0
  331. package/dist/0-face/feedback-words.d.ts.map +1 -0
  332. package/dist/0-face/feedback-words.js +30 -0
  333. package/dist/0-face/feedback.d.ts +41 -0
  334. package/dist/0-face/feedback.d.ts.map +1 -0
  335. package/dist/0-face/feedback.js +35 -0
  336. package/dist/0-face/format.d.ts +166 -0
  337. package/dist/0-face/format.d.ts.map +1 -0
  338. package/dist/0-face/format.js +445 -0
  339. package/dist/0-face/generated/toast-assets.d.ts +11 -0
  340. package/dist/0-face/generated/toast-assets.d.ts.map +1 -0
  341. package/dist/0-face/generated/toast-assets.js +14 -0
  342. package/dist/0-face/grid-fit.js +1 -1
  343. package/dist/0-face/grid.d.ts.map +1 -1
  344. package/dist/0-face/grid.js +2 -1
  345. package/dist/0-face/header.d.ts +38 -0
  346. package/dist/0-face/header.d.ts.map +1 -0
  347. package/dist/0-face/header.js +80 -0
  348. package/dist/0-face/i18n.d.ts +32 -2
  349. package/dist/0-face/i18n.d.ts.map +1 -1
  350. package/dist/0-face/i18n.js +65 -19
  351. package/dist/0-face/keys.d.ts +104 -0
  352. package/dist/0-face/keys.d.ts.map +1 -0
  353. package/dist/0-face/keys.js +253 -0
  354. package/dist/0-face/languages.d.ts +2 -2
  355. package/dist/0-face/languages.js +3 -3
  356. package/dist/0-face/layout-inspector.js +6 -6
  357. package/dist/0-face/library-styles.d.ts +7 -0
  358. package/dist/0-face/library-styles.d.ts.map +1 -0
  359. package/dist/0-face/library-styles.js +29 -0
  360. package/dist/0-face/load-toaster.d.ts +8 -0
  361. package/dist/0-face/load-toaster.d.ts.map +1 -0
  362. package/dist/0-face/load-toaster.js +7 -0
  363. package/dist/0-face/preference-options.d.ts +34 -0
  364. package/dist/0-face/preference-options.d.ts.map +1 -0
  365. package/dist/0-face/preference-options.js +1 -0
  366. package/dist/0-face/preferences.d.ts +3 -12
  367. package/dist/0-face/preferences.d.ts.map +1 -1
  368. package/dist/0-face/pricing.d.ts +19 -9
  369. package/dist/0-face/pricing.d.ts.map +1 -1
  370. package/dist/0-face/pricing.js +81 -40
  371. package/dist/0-face/scaling.d.ts +71 -1
  372. package/dist/0-face/scaling.d.ts.map +1 -1
  373. package/dist/0-face/scaling.js +108 -3
  374. package/dist/0-face/shared-words.d.ts +9 -4
  375. package/dist/0-face/shared-words.d.ts.map +1 -1
  376. package/dist/0-face/sidebar.d.ts +69 -0
  377. package/dist/0-face/sidebar.d.ts.map +1 -0
  378. package/dist/0-face/sidebar.js +191 -0
  379. package/dist/0-face/theme-bootstrap.d.ts +1 -0
  380. package/dist/0-face/theme-bootstrap.d.ts.map +1 -0
  381. package/dist/0-face/theme-bootstrap.js +214 -0
  382. package/dist/0-face/theme.d.ts +32 -0
  383. package/dist/0-face/theme.d.ts.map +1 -1
  384. package/dist/0-face/theme.js +69 -43
  385. package/dist/0-face/toast-queue.d.ts +110 -0
  386. package/dist/0-face/toast-queue.d.ts.map +1 -0
  387. package/dist/0-face/toast-queue.js +98 -0
  388. package/dist/0-face/toaster.d.ts +27 -0
  389. package/dist/0-face/toaster.d.ts.map +1 -0
  390. package/dist/0-face/toaster.js +373 -0
  391. package/dist/0-face/tooltips.d.ts +24 -1
  392. package/dist/0-face/tooltips.d.ts.map +1 -1
  393. package/dist/0-face/tooltips.js +155 -16
  394. package/dist/0-face/translations/da.json +60 -1
  395. package/dist/0-face/translations/de.json +60 -1
  396. package/dist/0-face/translations/en.json +60 -1
  397. package/dist/0-face/translations/es.json +60 -1
  398. package/dist/0-face/translations/fi.json +60 -1
  399. package/dist/0-face/translations/fr.json +60 -1
  400. package/dist/0-face/translations/is.json +60 -1
  401. package/dist/0-face/translations/it.json +60 -1
  402. package/dist/0-face/translations/ja.json +60 -1
  403. package/dist/0-face/translations/ko.json +60 -1
  404. package/dist/0-face/translations/nb.json +60 -1
  405. package/dist/0-face/translations/pt-BR.json +60 -1
  406. package/dist/0-face/translations/pt.json +60 -1
  407. package/dist/0-face/translations/sv.json +60 -1
  408. package/dist/0-face/translations/zh.json +60 -1
  409. package/dist/0-face/translations-format.d.ts.map +1 -1
  410. package/dist/0-face/translations-format.js +3 -4
  411. package/dist/0-face/tree.d.ts +69 -0
  412. package/dist/0-face/tree.d.ts.map +1 -0
  413. package/dist/0-face/tree.js +191 -0
  414. package/dist/1-root/library-tokens.d.ts +31 -0
  415. package/dist/1-root/library-tokens.d.ts.map +1 -0
  416. package/dist/1-root/library-tokens.js +84 -0
  417. package/dist/1-root/measures.d.ts +52 -0
  418. package/dist/1-root/measures.d.ts.map +1 -0
  419. package/dist/1-root/measures.js +49 -0
  420. package/dist/1-root/palette.d.ts +5 -0
  421. package/dist/1-root/palette.d.ts.map +1 -1
  422. package/dist/1-root/palette.js +18 -0
  423. package/dist/2-core/button-split.d.ts +21 -0
  424. package/dist/2-core/button-split.d.ts.map +1 -0
  425. package/dist/2-core/button-split.js +48 -0
  426. package/dist/2-core/chart/grid-chart.d.ts +113 -0
  427. package/dist/2-core/chart/grid-chart.d.ts.map +1 -0
  428. package/dist/2-core/chart/grid-chart.js +466 -0
  429. package/dist/2-core/ds-avatar.d.ts +20 -3
  430. package/dist/2-core/ds-avatar.d.ts.map +1 -1
  431. package/dist/2-core/ds-avatar.js +19 -5
  432. package/dist/2-core/ds-badge.js +10 -13
  433. package/dist/2-core/ds-banner.d.ts +23 -7
  434. package/dist/2-core/ds-banner.d.ts.map +1 -1
  435. package/dist/2-core/ds-banner.js +48 -12
  436. package/dist/2-core/ds-button.d.ts +76 -0
  437. package/dist/2-core/ds-button.d.ts.map +1 -1
  438. package/dist/2-core/ds-button.js +101 -26
  439. package/dist/2-core/ds-card.d.ts +76 -11
  440. package/dist/2-core/ds-card.d.ts.map +1 -1
  441. package/dist/2-core/ds-card.js +129 -105
  442. package/dist/2-core/ds-chart.d.ts +105 -0
  443. package/dist/2-core/ds-chart.d.ts.map +1 -0
  444. package/dist/2-core/ds-chart.js +390 -0
  445. package/dist/2-core/ds-composer.d.ts +7 -0
  446. package/dist/2-core/ds-composer.d.ts.map +1 -1
  447. package/dist/2-core/ds-composer.js +1 -1
  448. package/dist/2-core/ds-cycle.d.ts +36 -2
  449. package/dist/2-core/ds-cycle.d.ts.map +1 -1
  450. package/dist/2-core/ds-cycle.js +95 -18
  451. package/dist/2-core/ds-empty.d.ts +74 -0
  452. package/dist/2-core/ds-empty.d.ts.map +1 -0
  453. package/dist/2-core/ds-empty.js +96 -0
  454. package/dist/2-core/ds-icon.d.ts +6 -0
  455. package/dist/2-core/ds-icon.d.ts.map +1 -1
  456. package/dist/2-core/ds-icon.js +12 -2
  457. package/dist/2-core/ds-input.d.ts +39 -1
  458. package/dist/2-core/ds-input.d.ts.map +1 -1
  459. package/dist/2-core/ds-input.js +150 -6
  460. package/dist/2-core/ds-kbd.d.ts +48 -0
  461. package/dist/2-core/ds-kbd.d.ts.map +1 -0
  462. package/dist/2-core/ds-kbd.js +65 -0
  463. package/dist/2-core/ds-language.d.ts +8 -1
  464. package/dist/2-core/ds-language.d.ts.map +1 -1
  465. package/dist/2-core/ds-language.js +2 -2
  466. package/dist/2-core/ds-loading.d.ts +40 -0
  467. package/dist/2-core/ds-loading.d.ts.map +1 -0
  468. package/dist/2-core/ds-loading.js +63 -0
  469. package/dist/2-core/ds-meter.d.ts +103 -0
  470. package/dist/2-core/ds-meter.d.ts.map +1 -0
  471. package/dist/2-core/ds-meter.js +124 -0
  472. package/dist/2-core/ds-notice.d.ts +103 -0
  473. package/dist/2-core/ds-notice.d.ts.map +1 -0
  474. package/dist/2-core/ds-notice.js +152 -0
  475. package/dist/2-core/ds-pagedots.d.ts +64 -7
  476. package/dist/2-core/ds-pagedots.d.ts.map +1 -1
  477. package/dist/2-core/ds-pagedots.js +124 -18
  478. package/dist/2-core/ds-progress.d.ts +200 -0
  479. package/dist/2-core/ds-progress.d.ts.map +1 -0
  480. package/dist/2-core/ds-progress.js +319 -0
  481. package/dist/2-core/ds-spacing-handle.d.ts +25 -0
  482. package/dist/2-core/ds-spacing-handle.d.ts.map +1 -0
  483. package/dist/2-core/ds-spacing-handle.js +25 -0
  484. package/dist/2-core/ds-split.d.ts +4 -67
  485. package/dist/2-core/ds-split.d.ts.map +1 -1
  486. package/dist/2-core/ds-split.js +4 -98
  487. package/dist/2-core/ds-stat.d.ts +126 -0
  488. package/dist/2-core/ds-stat.d.ts.map +1 -0
  489. package/dist/2-core/ds-stat.js +137 -0
  490. package/dist/2-core/ds-steps.d.ts +72 -0
  491. package/dist/2-core/ds-steps.d.ts.map +1 -0
  492. package/dist/2-core/ds-steps.js +114 -0
  493. package/dist/2-core/ds-switch.d.ts +1 -0
  494. package/dist/2-core/ds-switch.d.ts.map +1 -1
  495. package/dist/2-core/ds-switch.js +1 -0
  496. package/dist/2-core/ds-text.d.ts +15 -2
  497. package/dist/2-core/ds-text.d.ts.map +1 -1
  498. package/dist/2-core/ds-text.js +13 -0
  499. package/dist/2-core/ds-textarea.d.ts.map +1 -1
  500. package/dist/2-core/ds-textarea.js +1 -0
  501. package/dist/2-core/ds-toast.d.ts +139 -0
  502. package/dist/2-core/ds-toast.d.ts.map +1 -0
  503. package/dist/2-core/ds-toast.js +329 -0
  504. package/dist/2-core/ds-toggle.d.ts +11 -0
  505. package/dist/2-core/ds-toggle.d.ts.map +1 -0
  506. package/dist/2-core/ds-toggle.js +10 -0
  507. package/dist/2-core/figures.d.ts +56 -0
  508. package/dist/2-core/figures.d.ts.map +1 -0
  509. package/dist/2-core/figures.js +70 -0
  510. package/dist/2-core/generated/ds-icon-map.d.ts +118 -65
  511. package/dist/2-core/generated/ds-icon-map.d.ts.map +1 -1
  512. package/dist/2-core/generated/ds-icon-map.js +234 -128
  513. package/dist/2-core/generated/icon-avatar.d.ts +2 -0
  514. package/dist/2-core/generated/icon-avatar.d.ts.map +1 -0
  515. package/dist/2-core/generated/icon-avatar.js +2 -0
  516. package/dist/2-core/generated/icons-extra.d.ts.map +1 -1
  517. package/dist/2-core/generated/icons-extra.js +118 -65
  518. package/dist/2-core/generated/icons-immediate.d.ts +1 -1
  519. package/dist/2-core/generated/icons-immediate.d.ts.map +1 -1
  520. package/dist/2-core/generated/icons-immediate.js +1 -1
  521. package/dist/2-core/spacing-handle.d.ts +28 -0
  522. package/dist/2-core/spacing-handle.d.ts.map +1 -0
  523. package/dist/2-core/spacing-handle.js +146 -0
  524. package/dist/3-unit/calendar-base.d.ts +149 -0
  525. package/dist/3-unit/calendar-base.d.ts.map +1 -0
  526. package/dist/3-unit/calendar-base.js +172 -0
  527. package/dist/3-unit/ds-accordion.d.ts +9 -0
  528. package/dist/3-unit/ds-accordion.d.ts.map +1 -1
  529. package/dist/3-unit/ds-accordion.js +7 -1
  530. package/dist/3-unit/ds-avatar-group.d.ts +1 -0
  531. package/dist/3-unit/ds-avatar-group.d.ts.map +1 -1
  532. package/dist/3-unit/ds-calendar-large.d.ts +138 -0
  533. package/dist/3-unit/ds-calendar-large.d.ts.map +1 -0
  534. package/dist/3-unit/ds-calendar-large.js +305 -0
  535. package/dist/3-unit/ds-calendar.d.ts +175 -0
  536. package/dist/3-unit/ds-calendar.d.ts.map +1 -0
  537. package/dist/3-unit/ds-calendar.js +303 -0
  538. package/dist/3-unit/ds-carousel.d.ts +182 -0
  539. package/dist/3-unit/ds-carousel.d.ts.map +1 -0
  540. package/dist/3-unit/ds-carousel.js +327 -0
  541. package/dist/3-unit/ds-date-picker.d.ts +203 -0
  542. package/dist/3-unit/ds-date-picker.d.ts.map +1 -0
  543. package/dist/3-unit/ds-date-picker.js +499 -0
  544. package/dist/3-unit/ds-form.d.ts.map +1 -1
  545. package/dist/3-unit/ds-form.js +38 -28
  546. package/dist/3-unit/ds-list.d.ts +12 -0
  547. package/dist/3-unit/ds-list.d.ts.map +1 -1
  548. package/dist/3-unit/ds-list.js +52 -1
  549. package/dist/3-unit/ds-matrix.d.ts +146 -0
  550. package/dist/3-unit/ds-matrix.d.ts.map +1 -0
  551. package/dist/3-unit/ds-matrix.js +248 -0
  552. package/dist/3-unit/ds-menu.d.ts +1 -1
  553. package/dist/3-unit/ds-menu.d.ts.map +1 -1
  554. package/dist/3-unit/ds-menu.js +7 -4
  555. package/dist/3-unit/ds-row.d.ts +66 -0
  556. package/dist/3-unit/ds-row.d.ts.map +1 -1
  557. package/dist/3-unit/ds-row.js +80 -1
  558. package/dist/3-unit/ds-sidebar.d.ts +108 -0
  559. package/dist/3-unit/ds-sidebar.d.ts.map +1 -0
  560. package/dist/3-unit/ds-sidebar.js +268 -0
  561. package/dist/3-unit/ds-table.d.ts +28 -10
  562. package/dist/3-unit/ds-table.d.ts.map +1 -1
  563. package/dist/3-unit/ds-table.js +53 -25
  564. package/dist/3-unit/ds-tree.d.ts +69 -0
  565. package/dist/3-unit/ds-tree.d.ts.map +1 -0
  566. package/dist/3-unit/ds-tree.js +136 -0
  567. package/dist/4-page/ds-dialog.d.ts +16 -1
  568. package/dist/4-page/ds-dialog.d.ts.map +1 -1
  569. package/dist/4-page/ds-dialog.js +39 -3
  570. package/dist/4-page/ds-document.d.ts +98 -0
  571. package/dist/4-page/ds-document.d.ts.map +1 -0
  572. package/dist/4-page/ds-document.js +213 -0
  573. package/dist/4-page/ds-footer.d.ts +100 -0
  574. package/dist/4-page/ds-footer.d.ts.map +1 -0
  575. package/dist/4-page/ds-footer.js +119 -0
  576. package/dist/4-page/ds-grid.d.ts +32 -12
  577. package/dist/4-page/ds-grid.d.ts.map +1 -1
  578. package/dist/4-page/ds-grid.js +30 -39
  579. package/dist/4-page/ds-header.d.ts +84 -0
  580. package/dist/4-page/ds-header.d.ts.map +1 -0
  581. package/dist/4-page/ds-header.js +143 -0
  582. package/dist/4-page/ds-layout.d.ts +1 -0
  583. package/dist/4-page/ds-layout.d.ts.map +1 -1
  584. package/dist/4-page/ds-layout.js +1 -1
  585. package/dist/4-page/ds-page.d.ts +110 -0
  586. package/dist/4-page/ds-page.d.ts.map +1 -0
  587. package/dist/4-page/ds-page.js +155 -0
  588. package/dist/4-page/email.d.ts +2 -3
  589. package/dist/4-page/email.d.ts.map +1 -1
  590. package/dist/4-page/email.js +2 -3
  591. package/dist/components.d.ts +4 -1
  592. package/dist/components.d.ts.map +1 -1
  593. package/dist/components.js +4 -1
  594. package/dist/design-system-1.bundle.js +11304 -4322
  595. package/dist/design-system-1.bundle.js.map +1 -1
  596. package/dist/design-system-1.bundle.min.js +8867 -4132
  597. package/dist/design-system-1.bundle.min.js.map +1 -1
  598. package/dist/design-system-1.css +1 -1
  599. package/dist/feedback.js +541 -0
  600. package/dist/feedback.js.map +1 -0
  601. package/dist/icons-extra-B4Iotc7s.js +298 -0
  602. package/dist/icons-extra-B4Iotc7s.js.map +1 -0
  603. package/dist/icons-extra-C4sCgoUj.js +185 -0
  604. package/dist/icons-extra-C4sCgoUj.js.map +1 -0
  605. package/dist/icons-extra-DSav6uTU.js +300 -0
  606. package/dist/icons-extra-DSav6uTU.js.map +1 -0
  607. package/dist/icons-extra-Dc_yVWIz.js +1024 -0
  608. package/dist/icons-extra-Dc_yVWIz.js.map +1 -0
  609. package/dist/icons-extra-cfzoudMf.js +1030 -0
  610. package/dist/icons-extra-cfzoudMf.js.map +1 -0
  611. package/dist/icons-extra-g_xpwZhZ.js +631 -0
  612. package/dist/icons-extra-g_xpwZhZ.js.map +1 -0
  613. package/dist/index.d.ts +23 -6
  614. package/dist/index.d.ts.map +1 -1
  615. package/dist/index.js +23 -6
  616. package/dist/react/avatar.d.ts +5 -9
  617. package/dist/react/avatar.d.ts.map +1 -1
  618. package/dist/react/avatar.js +2 -2
  619. package/dist/react/button-split.d.ts +19 -0
  620. package/dist/react/button-split.d.ts.map +1 -0
  621. package/dist/react/button-split.js +35 -0
  622. package/dist/react/button.d.ts +18 -7
  623. package/dist/react/button.d.ts.map +1 -1
  624. package/dist/react/button.js +13 -4
  625. package/dist/react/carousel.d.ts +63 -0
  626. package/dist/react/carousel.d.ts.map +1 -0
  627. package/dist/react/carousel.js +47 -0
  628. package/dist/react/choice.d.ts +1 -1
  629. package/dist/react/context-menu.d.ts +337 -337
  630. package/dist/react/dialog.d.ts +684 -678
  631. package/dist/react/dialog.d.ts.map +1 -1
  632. package/dist/react/dialog.js +29 -3
  633. package/dist/react/document.d.ts +11 -0
  634. package/dist/react/document.d.ts.map +1 -0
  635. package/dist/react/document.js +10 -0
  636. package/dist/react/empty.d.ts +34 -0
  637. package/dist/react/empty.d.ts.map +1 -0
  638. package/dist/react/empty.js +8 -0
  639. package/dist/react/file-picker.d.ts +1 -1
  640. package/dist/react/footer.d.ts +13 -0
  641. package/dist/react/footer.d.ts.map +1 -0
  642. package/dist/react/footer.js +12 -0
  643. package/dist/react/header.d.ts +12 -0
  644. package/dist/react/header.d.ts.map +1 -0
  645. package/dist/react/header.js +11 -0
  646. package/dist/react/input.d.ts +31 -9
  647. package/dist/react/input.d.ts.map +1 -1
  648. package/dist/react/input.js +94 -94
  649. package/dist/react/kbd.d.ts +26 -0
  650. package/dist/react/kbd.d.ts.map +1 -0
  651. package/dist/react/kbd.js +8 -0
  652. package/dist/react/loading.d.ts +14 -0
  653. package/dist/react/loading.d.ts.map +1 -0
  654. package/dist/react/loading.js +14 -0
  655. package/dist/react/meter.d.ts +64 -0
  656. package/dist/react/meter.d.ts.map +1 -0
  657. package/dist/react/meter.js +15 -0
  658. package/dist/react/notice.d.ts +45 -0
  659. package/dist/react/notice.d.ts.map +1 -0
  660. package/dist/react/notice.js +34 -0
  661. package/dist/react/page.d.ts +10 -0
  662. package/dist/react/page.d.ts.map +1 -0
  663. package/dist/react/page.js +9 -0
  664. package/dist/react/progress.d.ts +107 -0
  665. package/dist/react/progress.d.ts.map +1 -0
  666. package/dist/react/progress.js +47 -0
  667. package/dist/react/sidebar.d.ts +44 -0
  668. package/dist/react/sidebar.d.ts.map +1 -0
  669. package/dist/react/sidebar.js +41 -0
  670. package/dist/react/spacing-handle.d.ts +13 -0
  671. package/dist/react/spacing-handle.d.ts.map +1 -0
  672. package/dist/react/spacing-handle.js +18 -0
  673. package/dist/react/split.d.ts +6 -14
  674. package/dist/react/split.d.ts.map +1 -1
  675. package/dist/react/split.js +5 -31
  676. package/dist/react/stat.d.ts +78 -0
  677. package/dist/react/stat.d.ts.map +1 -0
  678. package/dist/react/stat.js +25 -0
  679. package/dist/react/steps.d.ts +36 -0
  680. package/dist/react/steps.d.ts.map +1 -0
  681. package/dist/react/steps.js +10 -0
  682. package/dist/react/toast.d.ts +37 -0
  683. package/dist/react/toast.d.ts.map +1 -0
  684. package/dist/react/toast.js +55 -0
  685. package/dist/react/tree.d.ts +31 -0
  686. package/dist/react/tree.d.ts.map +1 -0
  687. package/dist/react/tree.js +37 -0
  688. package/dist/shared-words-BfnT24Fe.js +1635 -0
  689. package/dist/shared-words-BfnT24Fe.js.map +1 -0
  690. package/dist/shared-words-CyZYc_De.js +1818 -0
  691. package/dist/shared-words-CyZYc_De.js.map +1 -0
  692. package/dist/shared-words-DAVSET4Z.js +1800 -0
  693. package/dist/shared-words-DAVSET4Z.js.map +1 -0
  694. package/dist/shared-words-UCvnkctb.js +1653 -0
  695. package/dist/shared-words-UCvnkctb.js.map +1 -0
  696. package/package.json +16 -5
  697. package/DS1/2-core/ds-banner.ts +0 -122
  698. package/DS1/2-core/ds-date.ts +0 -24
  699. package/DS1/2-core/ds-language.ts +0 -94
  700. package/DS1/2-core/ds-pagedots.ts +0 -52
  701. package/DS1/2-core/ds-split.ts +0 -122
  702. package/DS1/2-core/ds-textarea.ts +0 -136
  703. package/DS1/2-core/styles/ds-banner.css +0 -77
  704. package/DS1/2-core/styles/ds-date.css +0 -9
  705. package/DS1/2-core/styles/ds-language.css +0 -78
  706. package/DS1/2-core/styles/ds-pagedots.css +0 -31
  707. package/DS1/2-core/styles/ds-textarea.css +0 -27
  708. package/DS1/4-page/ds-layout.ts +0 -949
  709. package/DS1/4-page/styles/ds-layout.css +0 -246
  710. package/DS1/react/split.ts +0 -42
  711. package/DS1/x-icon/ezo-accordion-chevron.svg +0 -11
  712. package/DS1/x-icon/ezo-account-close.svg +0 -1
  713. package/DS1/x-icon/ezo-android-screen-archive.svg +0 -4
  714. package/DS1/x-icon/ezo-android-screen-calendar.svg +0 -6
  715. package/DS1/x-icon/ezo-android-screen-camera.svg +0 -5
  716. package/DS1/x-icon/ezo-android-screen-check.svg +0 -3
  717. package/DS1/x-icon/ezo-android-screen-compose.svg +0 -4
  718. package/DS1/x-icon/ezo-android-screen-globe.svg +0 -1
  719. package/DS1/x-icon/ezo-android-screen-shared.svg +0 -5
  720. package/DS1/x-icon/ezo-android-screen-store.svg +0 -4
  721. package/DS1/x-icon/ezo-android-screen-views.svg +0 -4
  722. package/DS1/x-icon/ezo-android-screen-work.svg +0 -3
  723. package/DS1/x-icon/ezo-arrow-cursor.svg +0 -8
  724. package/DS1/x-icon/ezo-block-accordion.svg +0 -1
  725. package/DS1/x-icon/ezo-block-divider.svg +0 -1
  726. package/DS1/x-icon/ezo-block-group.svg +0 -1
  727. package/DS1/x-icon/ezo-block-image.svg +0 -1
  728. package/DS1/x-icon/ezo-block-section.svg +0 -1
  729. package/DS1/x-icon/ezo-block-table.svg +0 -1
  730. package/DS1/x-icon/ezo-code.svg +0 -14
  731. package/DS1/x-icon/ezo-down.svg +0 -3
  732. package/DS1/x-icon/ezo-figma-premium-star.svg +0 -5
  733. package/DS1/x-icon/ezo-item-button-complete.svg +0 -4
  734. package/DS1/x-icon/ezo-item-button-header.svg +0 -3
  735. package/DS1/x-icon/ezo-item-button-open.svg +0 -3
  736. package/DS1/x-icon/ezo-item-button-star.svg +0 -3
  737. package/DS1/x-icon/ezo-item-button-unheader.svg +0 -7
  738. package/DS1/x-icon/ezo-item-button-unstar.svg +0 -5
  739. package/DS1/x-icon/ezo-item-star.svg +0 -5
  740. package/DS1/x-icon/ezo-left.svg +0 -3
  741. package/DS1/x-icon/ezo-logo.svg +0 -1
  742. package/DS1/x-icon/ezo-mic.svg +0 -8
  743. package/DS1/x-icon/ezo-move-column.svg +0 -14
  744. package/DS1/x-icon/ezo-move-row.svg +0 -18
  745. package/DS1/x-icon/ezo-navigation-check.svg +0 -1
  746. package/DS1/x-icon/ezo-note-back.svg +0 -5
  747. package/DS1/x-icon/ezo-note-menu-complete.svg +0 -11
  748. package/DS1/x-icon/ezo-note-menu-delete.svg +0 -4
  749. package/DS1/x-icon/ezo-note-menu-duplicate.svg +0 -8
  750. package/DS1/x-icon/ezo-note-menu-note.svg +0 -5
  751. package/DS1/x-icon/ezo-note-menu-page.svg +0 -3
  752. package/DS1/x-icon/ezo-note-menu-star.svg +0 -5
  753. package/DS1/x-icon/ezo-note-menu-start.svg +0 -6
  754. package/DS1/x-icon/ezo-note-menu-stop.svg +0 -6
  755. package/DS1/x-icon/ezo-note-more.svg +0 -7
  756. package/DS1/x-icon/ezo-note-star.svg +0 -5
  757. package/DS1/x-icon/ezo-pattern-call-to-action.svg +0 -1
  758. package/DS1/x-icon/ezo-play.svg +0 -5
  759. package/DS1/x-icon/ezo-premium-star.svg +0 -5
  760. package/DS1/x-icon/ezo-setting-1xdots.svg +0 -13
  761. package/DS1/x-icon/ezo-setting-1xgrid.svg +0 -10
  762. package/DS1/x-icon/ezo-setting-1xlines.svg +0 -7
  763. package/DS1/x-icon/ezo-setting-2xdots.svg +0 -8
  764. package/DS1/x-icon/ezo-setting-2xgrid.svg +0 -8
  765. package/DS1/x-icon/ezo-setting-2xlines.svg +0 -6
  766. package/DS1/x-icon/ezo-setting-blank.svg +0 -5
  767. package/DS1/x-icon/ezo-store-chevron.svg +0 -1
  768. package/DS1/x-icon/ezo-upgrade-close.svg +0 -5
  769. package/DS1/x-icon/product-sources.json +0 -2557
  770. /package/DS1/x-icon/{ezo-password-visibility-see.svg → password-see.svg} +0 -0
  771. /package/DS1/x-icon/{ezo-password-visibility-unsee.svg → password-unsee.svg} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"dialog.d.ts","sourceRoot":"","sources":["../../DS1/react/dialog.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,OAAO,EAAsF,KAAK,cAAc,EAAE,KAAK,SAAS,EAAE,KAAK,GAAG,EAAE,MAAM,OAAO,CAAC;AAE1J,OAAO,KAAK,EAAE,MAAM,IAAI,aAAa,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAStF,MAAM,WAAW,WAAW;IAAG,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAAC,QAAQ,EAAE,SAAS,CAAA;CAAE;AAC/J,wBAAgB,MAAM,CAAC,EAAE,IAAI,EAAE,WAAmB,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,WAAW;UAR7C,OAAO;YAAU,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,iBAAiB,KAAK,IAAI;WAAS,MAAM;iBAAe,MAAM;IAenJ;AAED,MAAM,WAAW,kBAAmB,SAAQ,cAAc,CAAC,iBAAiB,CAAC;IAC3E,GAAG,CAAC,EAAE,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAC7B,4EAA4E;IAC5E,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACzC,WAAW,CAAC,EAAE,CAAC,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IAChD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,8EAA8E;IAC9E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gFAAgF;IAChF,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,oEAAoE;IACpE,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AACD,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,MAAa,EAAE,QAAgB,EAAE,cAAsB,EAAE,YAAoB,EAAE,UAAkB,EAAE,MAAa,EAAE,WAAkB,EAAE,UAAoB,EAAE,SAAgB,EAAE,aAAoB,EAAE,eAAsB,EAAE,UAAkB,EAAE,KAAa,EAAE,OAAe,EAAE,GAAG,KAAK,EAAE,EAAE,kBAAkB,yHA+CvV;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,cAAc,CAAC,cAAc,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBAA4E;AAC9I,wBAAgB,YAAY,CAAC,KAAK,EAAE,cAAc,CAAC,cAAc,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBAA4E;AAC9I,wBAAgB,WAAW,CAAC,KAAK,EAAE,cAAc,CAAC,kBAAkB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBAGpE;AACD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,cAAc,CAAC,oBAAoB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBAG5E"}
1
+ {"version":3,"file":"dialog.d.ts","sourceRoot":"","sources":["../../DS1/react/dialog.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /** Optional React composition; behavior and appearance belong to ds-dialog. */
2
- import { createContext, createElement, useContext, useId, useLayoutEffect, useRef, useState } from "react";
2
+ import { createContext, createElement, useContext, useEffect, useId, useLayoutEffect, useRef, useState } from "react";
3
3
  import { createPortal } from "react-dom";
4
4
  const DialogContext = createContext(null);
5
5
  const useDialog = () => {
@@ -17,10 +17,35 @@ export function Dialog({ open, defaultOpen = false, onOpenChange, children }) {
17
17
  setInternal(next); onOpenChange?.(next, reason); },
18
18
  } }, children);
19
19
  }
20
- export function DialogContent({ children, portal = true, nonModal = false, closeOnOutside = false, blockOutside = false, holdScroll = false, anchor = null, returnFocus = null, closeLabel = "Close", showClose = true, closeOnEscape = true, closeOnBackdrop = true, fullScreen = false, flush = false, rotated = false, ...props }) {
20
+ /** The longest a sliding dialog stays on the page after closing, should its transition never end. */
21
+ const LEAVING = 600;
22
+ export function DialogContent({ children, portal = true, nonModal = false, closeOnOutside = false, blockOutside = false, holdScroll = false, anchor = null, returnFocus = null, closeLabel = "Close", showClose = true, closeOnEscape = true, closeOnBackdrop = true, fullScreen = false, flush = false, rotated = false, placement = "center", ...props }) {
21
23
  const context = useDialog();
22
24
  const host = useRef(null);
23
25
  const [mounted, setMounted] = useState(false);
26
+ // A sheet or drawer stays on the page while it slides out, then leaves.
27
+ const sliding = placement !== "center";
28
+ const [leaving, setLeaving] = useState(false);
29
+ const [wasOpen, setWasOpen] = useState(context.open);
30
+ if (wasOpen !== context.open) {
31
+ setWasOpen(context.open);
32
+ setLeaving(!context.open && sliding && mounted);
33
+ }
34
+ useEffect(() => {
35
+ if (!leaving)
36
+ return;
37
+ const native = host.current?.querySelector("dialog");
38
+ const done = () => setLeaving(false);
39
+ const ended = (event) => {
40
+ const { propertyName, pseudoElement } = event;
41
+ if (event.target === native && !pseudoElement && (propertyName === "transform" || propertyName === "opacity"))
42
+ done();
43
+ };
44
+ native?.addEventListener("transitionend", ended);
45
+ native?.addEventListener("transitioncancel", ended);
46
+ const timer = setTimeout(done, LEAVING);
47
+ return () => { clearTimeout(timer); native?.removeEventListener("transitionend", ended); native?.removeEventListener("transitioncancel", ended); };
48
+ }, [leaving]);
24
49
  // A portal has no server location. Keep the server and first client render
25
50
  // identical, including when the application initially requests an open modal.
26
51
  useLayoutEffect(() => { setMounted(true); }, []);
@@ -59,10 +84,11 @@ export function DialogContent({ children, portal = true, nonModal = false, close
59
84
  element.holdScroll = holdScroll;
60
85
  element.anchor = anchor;
61
86
  element.returnFocus = returnFocus;
87
+ element.placement = placement;
62
88
  element.open = context.open;
63
89
  return () => element.removeEventListener("ds-close-request", close);
64
90
  });
65
- if (!mounted || !context.open)
91
+ if (!mounted || (!context.open && !leaving))
66
92
  return null;
67
93
  const content = createElement("ds-dialog", { ref: host }, createElement("dialog", { ...props, "data-ds-dialog-fullscreen": fullScreen || undefined, "data-ds-dialog-flush": flush || undefined, "data-ds-dialog-rotated": rotated || undefined }, children, showClose && createElement("ds-button", { control: "slotted", icon: true, "data-ds-dialog": "close" }, createElement("button", { type: "button", "aria-label": closeLabel, "data-ds-dialog-dismiss": "" }, createElement("ds-icon", { type: "close", "aria-hidden": true })))));
68
94
  return portal ? createPortal(content, document.body) : content;
@@ -0,0 +1,11 @@
1
+ import { type HTMLAttributes } from "react";
2
+ import type { DocumentPage as DocumentElement } from "../4-page/ds-document";
3
+ export type DocumentPageProps = HTMLAttributes<DocumentElement> & Partial<Pick<DocumentElement, "levels" | "label" | "literal" | "hideContents">>;
4
+ /**
5
+ * A document page: the children are the writing (native headings,
6
+ * paragraphs and a `<dl className="ds-definitions">`), in the light DOM so
7
+ * they render on the server; the element builds the contents from them.
8
+ * Browser-only registration stays in the product's runtime entry for SSR.
9
+ */
10
+ export declare const DocumentPage: import("react").ForwardRefExoticComponent<HTMLAttributes<DocumentElement> & Partial<Pick<DocumentElement, "label" | "literal" | "levels" | "hideContents">> & import("react").RefAttributes<DocumentElement>>;
11
+ //# sourceMappingURL=document.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document.d.ts","sourceRoot":"","sources":["../../DS1/react/document.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,cAAc,EAAE,MAAM,OAAO,CAAC;AACvE,OAAO,KAAK,EAAE,YAAY,IAAI,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE7E,MAAM,MAAM,iBAAiB,GAAG,cAAc,CAAC,eAAe,CAAC,GAC7D,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC;AAClF;;;;;GAKG;AACH,eAAO,MAAM,YAAY,+MAEvB,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { createElement, forwardRef } from "react";
2
+ /**
3
+ * A document page: the children are the writing (native headings,
4
+ * paragraphs and a `<dl className="ds-definitions">`), in the light DOM so
5
+ * they render on the server; the element builds the contents from them.
6
+ * Browser-only registration stays in the product's runtime entry for SSR.
7
+ */
8
+ export const DocumentPage = forwardRef(function DocumentPage({ hideContents, ...props }, ref) {
9
+ return createElement("ds-document", { ...props, "hide-contents": hideContents || undefined, "data-ds-prose": "", ref });
10
+ });
@@ -0,0 +1,34 @@
1
+ /** An empty state in React: the words stay in the light DOM, so they render on
2
+ * the server and read in tests; ds-empty draws them. Browser-only registration
3
+ * of ds-empty stays in the product's runtime entry. */
4
+ import { type HTMLAttributes, type ReactNode } from "react";
5
+ import type { Empty as EmptyElement } from "../2-core/ds-empty";
6
+ export type EmptyProps = Omit<HTMLAttributes<EmptyElement>, "title"> & {
7
+ /** The title. Unset, the shared words' "Nothing here yet" in the current language. */
8
+ heading?: ReactNode;
9
+ /** The line under the title; `children` take its place when given. */
10
+ text?: ReactNode;
11
+ /** An icon from the library on the square above the title. */
12
+ icon?: string;
13
+ /** The buttons or links that fill the place, on one row. */
14
+ actions?: ReactNode;
15
+ /** Centre the words in the space the element stands in. */
16
+ centered?: boolean;
17
+ /** Make the title a heading of this level (1–6). */
18
+ level?: number;
19
+ };
20
+ export declare const Empty: import("react").ForwardRefExoticComponent<Omit<HTMLAttributes<EmptyElement>, "title"> & {
21
+ /** The title. Unset, the shared words' "Nothing here yet" in the current language. */
22
+ heading?: ReactNode;
23
+ /** The line under the title; `children` take its place when given. */
24
+ text?: ReactNode;
25
+ /** An icon from the library on the square above the title. */
26
+ icon?: string;
27
+ /** The buttons or links that fill the place, on one row. */
28
+ actions?: ReactNode;
29
+ /** Centre the words in the space the element stands in. */
30
+ centered?: boolean;
31
+ /** Make the title a heading of this level (1–6). */
32
+ level?: number;
33
+ } & import("react").RefAttributes<EmptyElement>>;
34
+ //# sourceMappingURL=empty.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"empty.d.ts","sourceRoot":"","sources":["../../DS1/react/empty.ts"],"names":[],"mappings":"AAAA;;uDAEuD;AACvD,OAAO,EAAkC,KAAK,cAAc,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAC5F,OAAO,KAAK,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEhE,MAAM,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC,GAAG;IACrE,sFAAsF;IACtF,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,sEAAsE;IACtE,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,8DAA8D;IAC9D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,4DAA4D;IAC5D,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oDAAoD;IACpD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAKF,eAAO,MAAM,KAAK;IAjBhB,sFAAsF;cAC5E,SAAS;IACnB,sEAAsE;WAC/D,SAAS;IAChB,8DAA8D;WACvD,MAAM;IACb,4DAA4D;cAClD,SAAS;IACnB,2DAA2D;eAChD,OAAO;IAClB,oDAAoD;YAC5C,MAAM;gDAad,CAAC"}
@@ -0,0 +1,8 @@
1
+ /** An empty state in React: the words stay in the light DOM, so they render on
2
+ * the server and read in tests; ds-empty draws them. Browser-only registration
3
+ * of ds-empty stays in the product's runtime entry. */
4
+ import { createElement as h, forwardRef } from "react";
5
+ const title = (content) => content == null || content === false || content === "" ? null : h("span", { slot: "heading" }, content);
6
+ export const Empty = forwardRef(function Empty({ heading, text, icon, actions, centered, level, children, ...props }, ref) {
7
+ return h("ds-empty", { ...props, icon, centered: centered || undefined, level, ref }, title(heading), children ?? text, actions == null || actions === false ? null : h("div", { slot: "actions", style: { display: "contents" } }, actions));
8
+ });
@@ -13,7 +13,7 @@ export type FilePickerProps = Omit<InputHTMLAttributes<HTMLInputElement>, "type"
13
13
  children?: ReactNode;
14
14
  };
15
15
  /** The ref and events belong to the native input; classes only place the host. */
16
- export declare const FilePicker: import("react").ForwardRefExoticComponent<Omit<InputHTMLAttributes<HTMLInputElement>, "type" | "value" | "defaultValue" | "children"> & {
16
+ export declare const FilePicker: import("react").ForwardRefExoticComponent<Omit<InputHTMLAttributes<HTMLInputElement>, "value" | "type" | "defaultValue" | "children"> & {
17
17
  label: string;
18
18
  icon?: boolean;
19
19
  preview?: boolean;
@@ -0,0 +1,13 @@
1
+ import { type HTMLAttributes } from "react";
2
+ import type { Footer as FooterElement } from "../4-page/ds-footer";
3
+ export type { FooterColumn, FooterLink, FooterPreference } from "../4-page/ds-footer";
4
+ export type FooterProps = Omit<HTMLAttributes<FooterElement>, "columns"> & Partial<Pick<FooterElement, "brand" | "href" | "tagline" | "columns" | "label" | "owner" | "year" | "preferences" | "literal">>;
5
+ /**
6
+ * A site footer from data: `columns` is set as a property, so React passes
7
+ * the array as it stands. A brand, preferences or legal line of the page's own
8
+ * take `slot="brand"`, `slot="preferences"` and `slot="legal"`. A page that
9
+ * must render its links on the server writes the `.ds-footer` classes instead.
10
+ * Browser-only registration stays in the product's runtime entry for SSR.
11
+ */
12
+ export declare const Footer: import("react").ForwardRefExoticComponent<Omit<HTMLAttributes<FooterElement>, "columns"> & Partial<Pick<FooterElement, "label" | "href" | "literal" | "columns" | "year" | "preferences" | "brand" | "tagline" | "owner">> & import("react").RefAttributes<FooterElement>>;
13
+ //# sourceMappingURL=footer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"footer.d.ts","sourceRoot":"","sources":["../../DS1/react/footer.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,cAAc,EAAE,MAAM,OAAO,CAAC;AACvE,OAAO,KAAK,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEnE,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACtF,MAAM,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,EAAE,SAAS,CAAC,GACtE,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,aAAa,GAAG,SAAS,CAAC,CAAC,CAAC;AAClI;;;;;;GAMG;AACH,eAAO,MAAM,MAAM,4QAGjB,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { createElement, forwardRef } from "react";
2
+ /**
3
+ * A site footer from data: `columns` is set as a property, so React passes
4
+ * the array as it stands. A brand, preferences or legal line of the page's own
5
+ * take `slot="brand"`, `slot="preferences"` and `slot="legal"`. A page that
6
+ * must render its links on the server writes the `.ds-footer` classes instead.
7
+ * Browser-only registration stays in the product's runtime entry for SSR.
8
+ */
9
+ export const Footer = forwardRef(function Footer({ preferences, ...props }, ref) {
10
+ // `preferences` present but empty means every preference, as the attribute does.
11
+ return createElement("ds-footer", { ...props, preferences: preferences === undefined ? undefined : String(preferences), ref });
12
+ });
@@ -0,0 +1,12 @@
1
+ import { type HTMLAttributes } from "react";
2
+ import type { Header as HeaderElement } from "../4-page/ds-header";
3
+ export type HeaderProps = HTMLAttributes<HeaderElement> & Partial<Pick<HeaderElement, "brand" | "href" | "label" | "literal" | "sticky">>;
4
+ /**
5
+ * A site header. Its navigation is the children: `<a href>` links, in the
6
+ * light DOM so they render on the server; actions take `slot="actions"`, a
7
+ * brand of the page's own `slot="brand"`. Typed so a React product needs no
8
+ * `IntrinsicElements` entry of its own for `ds-header`. Browser-only
9
+ * registration stays in the product's runtime entry for SSR.
10
+ */
11
+ export declare const Header: import("react").ForwardRefExoticComponent<HTMLAttributes<HeaderElement> & Partial<Pick<HeaderElement, "label" | "href" | "literal" | "sticky" | "brand">> & import("react").RefAttributes<HeaderElement>>;
12
+ //# sourceMappingURL=header.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../DS1/react/header.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,cAAc,EAAE,MAAM,OAAO,CAAC;AACvE,OAAO,KAAK,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEnE,MAAM,MAAM,WAAW,GAAG,cAAc,CAAC,aAAa,CAAC,GACrD,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC;AAClF;;;;;;GAMG;AACH,eAAO,MAAM,MAAM,2MAEjB,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { createElement, forwardRef } from "react";
2
+ /**
3
+ * A site header. Its navigation is the children: `<a href>` links, in the
4
+ * light DOM so they render on the server; actions take `slot="actions"`, a
5
+ * brand of the page's own `slot="brand"`. Typed so a React product needs no
6
+ * `IntrinsicElements` entry of its own for `ds-header`. Browser-only
7
+ * registration stays in the product's runtime entry for SSR.
8
+ */
9
+ export const Header = forwardRef(function Header(props, ref) {
10
+ return createElement("ds-header", { ...props, ref });
11
+ });
@@ -9,27 +9,49 @@ export type InputProps = Omit<InputHTMLAttributes<InputElement>, "value" | "defa
9
9
  variant?: InputElement["variant"];
10
10
  revealable?: boolean;
11
11
  quietFocus?: boolean;
12
+ /** The label on the row above the field, as written. */
13
+ label?: string;
14
+ /** The label as a translation key, shown in the page's language. */
15
+ labelText?: string;
16
+ /** The placeholder as a translation key; `placeholder` is as written. */
17
+ placeholderKey?: string;
18
+ /** The error under the field, as written, in the danger colour. */
12
19
  error?: string;
13
- };
14
- type FieldProps = InputProps & {
20
+ /** The error as a translation key. */
21
+ errorText?: string;
22
+ /** Suggestions offered while typing; `list` names a `<datalist>` instead. */
23
+ suggestions?: InputElement["suggestions"];
24
+ /** A text area: the field across whole rows. */
25
+ multiline?: boolean;
15
26
  rows?: number;
16
27
  wrap?: "soft" | "hard" | "off";
17
28
  autoGrow?: boolean;
18
29
  maxRows?: number;
19
30
  };
20
- export type TextareaProps = Omit<FieldProps, "type" | "revealable" | "min" | "max" | "step" | "pattern"> & {
21
- variant?: "field" | "plain";
22
- };
23
- export declare const Input: import("react").ForwardRefExoticComponent<Omit<InputHTMLAttributes<InputElement>, "size" | "type" | "value" | "defaultValue"> & {
31
+ export declare const Input: import("react").ForwardRefExoticComponent<Omit<InputHTMLAttributes<InputElement>, "size" | "value" | "type" | "defaultValue"> & {
24
32
  value?: string | number;
25
33
  defaultValue?: string | number;
26
34
  type?: InputElement["type"];
27
35
  variant?: InputElement["variant"];
28
36
  revealable?: boolean;
29
37
  quietFocus?: boolean;
38
+ /** The label on the row above the field, as written. */
39
+ label?: string;
40
+ /** The label as a translation key, shown in the page's language. */
41
+ labelText?: string;
42
+ /** The placeholder as a translation key; `placeholder` is as written. */
43
+ placeholderKey?: string;
44
+ /** The error under the field, as written, in the danger colour. */
30
45
  error?: string;
31
- } & import("react").RefAttributes<InputElement>>;
32
- export declare const Textarea: import("react").ForwardRefExoticComponent<Omit<FieldProps, "pattern" | "type" | "revealable" | "min" | "max" | "step"> & {
33
- variant?: "field" | "plain";
46
+ /** The error as a translation key. */
47
+ errorText?: string;
48
+ /** Suggestions offered while typing; `list` names a `<datalist>` instead. */
49
+ suggestions?: InputElement["suggestions"];
50
+ /** A text area: the field across whole rows. */
51
+ multiline?: boolean;
52
+ rows?: number;
53
+ wrap?: "soft" | "hard" | "off";
54
+ autoGrow?: boolean;
55
+ maxRows?: number;
34
56
  } & import("react").RefAttributes<InputElement>>;
35
57
  //# sourceMappingURL=input.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../DS1/react/input.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,OAAO,EAUL,KAAK,mBAAmB,EAEzB,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAChE,YAAY,EAAE,YAAY,EAAE,CAAC;AAC7B,MAAM,MAAM,UAAU,GAAG,IAAI,CAC3B,mBAAmB,CAAC,YAAY,CAAC,EACjC,OAAO,GAAG,cAAc,GAAG,MAAM,GAAG,MAAM,CAC3C,GAAG;IACF,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,IAAI,CAAC,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IAC5B,OAAO,CAAC,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC;IAClC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAuBF,KAAK,UAAU,GAAG,UAAU,GAAG;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC;IAC/B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AACF,MAAM,MAAM,aAAa,GAAG,IAAI,CAC9B,UAAU,EACV,MAAM,GAAG,YAAY,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,GAAG,SAAS,CAC3D,GAAG;IAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAA;CAAE,CAAC;AA2HpC,eAAO,MAAM,KAAK;YAlKR,MAAM,GAAG,MAAM;mBACR,MAAM,GAAG,MAAM;WACvB,YAAY,CAAC,MAAM,CAAC;cACjB,YAAY,CAAC,SAAS,CAAC;iBACpB,OAAO;iBACP,OAAO;YACZ,MAAM;gDA4JyC,CAAC;AAC1D,eAAO,MAAM,QAAQ;cA5HL,OAAO,GAAG,OAAO;gDA4HiC,CAAC"}
1
+ {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../DS1/react/input.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,OAAO,EAUL,KAAK,mBAAmB,EAEzB,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAChE,YAAY,EAAE,YAAY,EAAE,CAAC;AAC7B,MAAM,MAAM,UAAU,GAAG,IAAI,CAC3B,mBAAmB,CAAC,YAAY,CAAC,EACjC,OAAO,GAAG,cAAc,GAAG,MAAM,GAAG,MAAM,CAC3C,GAAG;IACF,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,IAAI,CAAC,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IAC5B,OAAO,CAAC,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC;IAClC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,wDAAwD;IACxD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oEAAoE;IACpE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yEAAyE;IACzE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mEAAmE;IACnE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sCAAsC;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6EAA6E;IAC7E,WAAW,CAAC,EAAE,YAAY,CAAC,aAAa,CAAC,CAAC;IAC1C,gDAAgD;IAChD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC;IAC/B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAuBF,eAAO,MAAM,KAAK;YA/CR,MAAM,GAAG,MAAM;mBACR,MAAM,GAAG,MAAM;WACvB,YAAY,CAAC,MAAM,CAAC;cACjB,YAAY,CAAC,SAAS,CAAC;iBACpB,OAAO;iBACP,OAAO;IACpB,wDAAwD;YAChD,MAAM;IACd,oEAAoE;gBACxD,MAAM;IAClB,yEAAyE;qBACxD,MAAM;IACvB,mEAAmE;YAC3D,MAAM;IACd,sCAAsC;gBAC1B,MAAM;IAClB,6EAA6E;kBAC/D,YAAY,CAAC,aAAa,CAAC;IACzC,gDAAgD;gBACpC,OAAO;WACZ,MAAM;WACN,MAAM,GAAG,MAAM,GAAG,KAAK;eACnB,OAAO;cACR,MAAM;gDAuJhB,CAAC"}
@@ -28,101 +28,101 @@ function setRef(ref, field) {
28
28
  if (ref)
29
29
  ref.current = field;
30
30
  }
31
- function fieldAdapter(tag) {
32
- return forwardRef(function Field({ value, defaultValue, onChange, onInput, autoFocus, autoComplete, inputMode, readOnly, minLength, maxLength, min, max, step, spellCheck, form, type = "text", variant = "field", quietFocus, autoGrow, maxRows, ...props }, forwardedRef) {
33
- const field = useRef(null);
34
- const initial = useRef(String(defaultValue ?? ""));
35
- const [, refresh] = useReducer((version) => version + 1, 0);
36
- const controlled = value !== undefined;
37
- const ref = useCallback((element) => {
38
- field.current = element;
39
- return setRef(forwardedRef, element);
40
- }, [forwardedRef]);
41
- // React does not restore controlled values on custom elements. Reconcile
42
- // after every commit, including when an application rejects an edit.
43
- useCommitEffect(() => {
44
- if (controlled && field.current)
45
- field.current.value = String(value);
46
- // form is a read-only ElementInternals getter, not a writable property.
47
- if (form !== undefined)
48
- field.current?.setAttribute("form", form);
49
- else
50
- field.current?.removeAttribute("form");
51
- });
52
- useEffect(() => {
53
- const element = field.current;
54
- if (!element || !controlled)
55
- return;
56
- const reset = () => refresh();
57
- element.addEventListener("input-reset", reset);
58
- return () => element.removeEventListener("input-reset", reset);
59
- }, [controlled]);
60
- const attributes = { ...props };
61
- const listeners = [];
62
- for (const key of Object.keys(attributes)) {
63
- if (key.startsWith("aria-") && typeof attributes[key] === "boolean")
64
- attributes[key] = String(attributes[key]);
65
- if (/^on[A-Z]/.test(key) && typeof attributes[key] === "function") {
66
- const callback = attributes[key];
67
- const capture = key.endsWith("Capture");
68
- const name = key.slice(2, capture ? -7 : undefined);
69
- const native = { Focus: "focusin", Blur: "focusout", DoubleClick: "dblclick" }[name] ?? name.toLowerCase();
70
- listeners.push({
71
- name: native,
72
- capture,
73
- callback: (event) => {
74
- if (field.current)
75
- callback(reactEvent(event, field.current));
76
- },
77
- });
78
- delete attributes[key];
79
- }
31
+ export const Input = forwardRef(function Field({ value, defaultValue, onChange, onInput, autoFocus, autoComplete, inputMode, readOnly, minLength, maxLength, min, max, step, spellCheck, form, type = "text", variant = "field", quietFocus, multiline, autoGrow, maxRows, labelText, placeholderKey, errorText, ...props }, forwardedRef) {
32
+ const field = useRef(null);
33
+ const initial = useRef(String(defaultValue ?? ""));
34
+ const [, refresh] = useReducer((version) => version + 1, 0);
35
+ const controlled = value !== undefined;
36
+ const ref = useCallback((element) => {
37
+ field.current = element;
38
+ return setRef(forwardedRef, element);
39
+ }, [forwardedRef]);
40
+ // React does not restore controlled values on custom elements. Reconcile
41
+ // after every commit, including when an application rejects an edit.
42
+ useCommitEffect(() => {
43
+ if (controlled && field.current)
44
+ field.current.value = String(value);
45
+ // form is a read-only ElementInternals getter, not a writable property.
46
+ if (form !== undefined)
47
+ field.current?.setAttribute("form", form);
48
+ else
49
+ field.current?.removeAttribute("form");
50
+ });
51
+ useEffect(() => {
52
+ const element = field.current;
53
+ if (!element || !controlled)
54
+ return;
55
+ const reset = () => refresh();
56
+ element.addEventListener("input-reset", reset);
57
+ return () => element.removeEventListener("input-reset", reset);
58
+ }, [controlled]);
59
+ const attributes = { ...props };
60
+ const listeners = [];
61
+ for (const key of Object.keys(attributes)) {
62
+ if (key.startsWith("aria-") && typeof attributes[key] === "boolean")
63
+ attributes[key] = String(attributes[key]);
64
+ if (/^on[A-Z]/.test(key) && typeof attributes[key] === "function") {
65
+ const callback = attributes[key];
66
+ const capture = key.endsWith("Capture");
67
+ const name = key.slice(2, capture ? -7 : undefined);
68
+ const native = { Focus: "focusin", Blur: "focusout", DoubleClick: "dblclick" }[name] ?? name.toLowerCase();
69
+ listeners.push({
70
+ name: native,
71
+ capture,
72
+ callback: (event) => {
73
+ if (field.current)
74
+ callback(reactEvent(event, field.current));
75
+ },
76
+ });
77
+ delete attributes[key];
80
78
  }
81
- listeners.push({
82
- name: "input",
83
- capture: false,
84
- callback: (native) => {
85
- if (!field.current)
86
- return;
87
- const event = reactEvent(native, field.current);
88
- onInput?.(event);
89
- onChange?.(event);
90
- if (controlled)
91
- refresh();
92
- },
93
- });
94
- useCommitEffect(() => {
95
- const element = field.current;
96
- if (!element)
79
+ }
80
+ listeners.push({
81
+ name: "input",
82
+ capture: false,
83
+ callback: (native) => {
84
+ if (!field.current)
97
85
  return;
86
+ const event = reactEvent(native, field.current);
87
+ onInput?.(event);
88
+ onChange?.(event);
89
+ if (controlled)
90
+ refresh();
91
+ },
92
+ });
93
+ useCommitEffect(() => {
94
+ const element = field.current;
95
+ if (!element)
96
+ return;
97
+ for (const { name, callback, capture } of listeners)
98
+ element.addEventListener(name, callback, capture);
99
+ return () => {
98
100
  for (const { name, callback, capture } of listeners)
99
- element.addEventListener(name, callback, capture);
100
- return () => {
101
- for (const { name, callback, capture } of listeners)
102
- element.removeEventListener(name, callback, capture);
103
- };
104
- });
105
- return createElement(tag, {
106
- ...attributes,
107
- ref,
108
- type,
109
- variant,
110
- value: controlled ? String(value) : initial.current,
111
- autofocus: autoFocus,
112
- autocomplete: autoComplete,
113
- inputmode: inputMode,
114
- readonly: readOnly,
115
- minlength: minLength,
116
- maxlength: maxLength,
117
- min: min == null ? undefined : String(min),
118
- max: max == null ? undefined : String(max),
119
- step: step == null ? undefined : String(step),
120
- spellcheck: spellCheck === undefined ? undefined : String(spellCheck),
121
- "quiet-focus": quietFocus,
122
- "auto-grow": autoGrow,
123
- "max-rows": maxRows,
124
- });
101
+ element.removeEventListener(name, callback, capture);
102
+ };
125
103
  });
126
- }
127
- export const Input = fieldAdapter("ds-input");
128
- export const Textarea = fieldAdapter("ds-textarea");
104
+ return createElement("ds-input", {
105
+ ...attributes,
106
+ ref,
107
+ type,
108
+ variant,
109
+ value: controlled ? String(value) : initial.current,
110
+ autofocus: autoFocus,
111
+ autocomplete: autoComplete,
112
+ inputmode: inputMode,
113
+ readonly: readOnly,
114
+ minlength: minLength,
115
+ maxlength: maxLength,
116
+ min: min == null ? undefined : String(min),
117
+ max: max == null ? undefined : String(max),
118
+ step: step == null ? undefined : String(step),
119
+ spellcheck: spellCheck === undefined ? undefined : String(spellCheck),
120
+ "quiet-focus": quietFocus,
121
+ "label-text": labelText,
122
+ "placeholder-key": placeholderKey,
123
+ "error-text": errorText,
124
+ multiline: multiline || undefined,
125
+ "auto-grow": autoGrow,
126
+ "max-rows": maxRows,
127
+ });
128
+ });
@@ -0,0 +1,26 @@
1
+ /** A keyboard shortcut's hint in React: ds-kbd writes the shortcut as the
2
+ * reader's platform does (⇧⌘D, Ctrl+Shift+D). Browser-only registration of
3
+ * ds-kbd stays in the product's runtime entry; children are words of the
4
+ * product's own, shown when there is no `shortcut`. */
5
+ import { type HTMLAttributes, type ReactNode } from "react";
6
+ import type { Kbd as KbdElement } from "../2-core/ds-kbd";
7
+ import type { KeyPlatform } from "../0-face/keys";
8
+ export type KbdProps = HTMLAttributes<KbdElement> & {
9
+ /** The shortcut, written once for every platform: `mod+shift+d`, `escape`, `?`. */
10
+ shortcut?: string;
11
+ /** The words alone in the title grey, as a menu entry writes its shortcut. */
12
+ plain?: boolean;
13
+ /** Write it for this platform rather than the reader's own. */
14
+ platform?: KeyPlatform;
15
+ children?: ReactNode;
16
+ };
17
+ export declare const Kbd: import("react").ForwardRefExoticComponent<HTMLAttributes<KbdElement> & {
18
+ /** The shortcut, written once for every platform: `mod+shift+d`, `escape`, `?`. */
19
+ shortcut?: string;
20
+ /** The words alone in the title grey, as a menu entry writes its shortcut. */
21
+ plain?: boolean;
22
+ /** Write it for this platform rather than the reader's own. */
23
+ platform?: KeyPlatform;
24
+ children?: ReactNode;
25
+ } & import("react").RefAttributes<KbdElement>>;
26
+ //# sourceMappingURL=kbd.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kbd.d.ts","sourceRoot":"","sources":["../../DS1/react/kbd.ts"],"names":[],"mappings":"AAAA;;;uDAGuD;AACvD,OAAO,EAAkC,KAAK,cAAc,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAC5F,OAAO,KAAK,EAAE,GAAG,IAAI,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAElD,MAAM,MAAM,QAAQ,GAAG,cAAc,CAAC,UAAU,CAAC,GAAG;IAClD,mFAAmF;IACnF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8EAA8E;IAC9E,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,CAAC;AAEF,eAAO,MAAM,GAAG;IATd,mFAAmF;eACxE,MAAM;IACjB,8EAA8E;YACtE,OAAO;IACf,+DAA+D;eACpD,WAAW;eACX,SAAS;8CAKpB,CAAC"}
@@ -0,0 +1,8 @@
1
+ /** A keyboard shortcut's hint in React: ds-kbd writes the shortcut as the
2
+ * reader's platform does (⇧⌘D, Ctrl+Shift+D). Browser-only registration of
3
+ * ds-kbd stays in the product's runtime entry; children are words of the
4
+ * product's own, shown when there is no `shortcut`. */
5
+ import { createElement as h, forwardRef } from "react";
6
+ export const Kbd = forwardRef(function Kbd({ shortcut, plain, platform, children, ...props }, ref) {
7
+ return h("ds-kbd", { ...props, shortcut, plain: plain || undefined, platform, ref }, children);
8
+ });
@@ -0,0 +1,14 @@
1
+ import { type CSSProperties, type ReactNode } from "react";
2
+ export declare const loadingStyles: string;
3
+ /** SSR-safe automatic feedback. Decorative when a containing status owns the label.
4
+ * Shared markup and CSS work before hydration; no DOM runtime is imported.
5
+ * Unset, the label is the shared word "Loading" in the page's language. A
6
+ * spinner in a button or field is one control high, elsewhere one square. */
7
+ export declare function LoadingIndicator({ label, variant, decorative, className, style }: {
8
+ label?: string;
9
+ variant?: "bar" | "spinner";
10
+ decorative?: boolean;
11
+ className?: string;
12
+ style?: CSSProperties;
13
+ }): ReactNode;
14
+ //# sourceMappingURL=loading.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loading.d.ts","sourceRoot":"","sources":["../../DS1/react/loading.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,aAAa,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAGpF,eAAO,MAAM,aAAa,QAAS,CAAC;AACpC;;;6EAG6E;AAC7E,wBAAgB,gBAAgB,CAAC,EAAE,KAAK,EAAE,OAAe,EAAE,UAAkB,EAAE,SAAc,EAAE,KAAK,EAAE,EAAE;IACtG,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,aAAa,CAAC;CAC9G,GAAG,SAAS,CAOZ"}
@@ -0,0 +1,14 @@
1
+ import { createElement, Fragment } from "react";
2
+ import { getText } from "../0-face/i18n";
3
+ import styles from "../2-core/styles/ds-loading.css?inline";
4
+ export const loadingStyles = styles;
5
+ /** SSR-safe automatic feedback. Decorative when a containing status owns the label.
6
+ * Shared markup and CSS work before hydration; no DOM runtime is imported.
7
+ * Unset, the label is the shared word "Loading" in the page's language. A
8
+ * spinner in a button or field is one control high, elsewhere one square. */
9
+ export function LoadingIndicator({ label, variant = "bar", decorative = false, className = "", style }) {
10
+ const name = decorative ? undefined : label || getText("Loading") || "Loading";
11
+ return createElement(Fragment, null, createElement("style", null, styles), createElement("span", { className: `ds-loading ${className}`, style, "data-variant": variant,
12
+ role: decorative ? undefined : "status", "aria-label": name,
13
+ "aria-hidden": decorative || undefined, "aria-busy": decorative ? undefined : true }, createElement("span", { className: "ds-loading__fill", "aria-hidden": true })));
14
+ }