@eifi1/ui-kit 0.33.1 → 0.35.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 (1559) hide show
  1. package/README.md +512 -306
  2. package/dist/account/account-parts.d.ts +6 -8
  3. package/dist/account/account-parts.js +1 -2
  4. package/dist/account/account-parts.js.map +1 -1
  5. package/dist/{components → account}/account-settings-labels.d.ts +16 -10
  6. package/dist/{components → account}/account-settings-labels.js +3 -1
  7. package/dist/account/account-settings-labels.js.map +1 -0
  8. package/dist/{components → account}/account-settings.d.ts +53 -23
  9. package/dist/{components → account}/account-settings.js +97 -26
  10. package/dist/account/account-settings.js.map +1 -0
  11. package/dist/account/data-export-setting-labels.d.ts +2 -0
  12. package/dist/account/data-export-setting-labels.js +15 -0
  13. package/dist/account/data-export-setting-labels.js.map +1 -0
  14. package/dist/account/data-export-setting.d.ts +9 -11
  15. package/dist/account/data-export-setting.js +11 -27
  16. package/dist/account/data-export-setting.js.map +1 -1
  17. package/dist/account/delete-account-setting-labels.d.ts +2 -0
  18. package/dist/account/delete-account-setting-labels.js +23 -0
  19. package/dist/account/delete-account-setting-labels.js.map +1 -0
  20. package/dist/account/delete-account-setting.d.ts +132 -101
  21. package/dist/account/delete-account-setting.js +7 -23
  22. package/dist/account/delete-account-setting.js.map +1 -1
  23. package/dist/account/email-change-setting-labels.d.ts +2 -0
  24. package/dist/account/email-change-setting-labels.js +28 -0
  25. package/dist/account/email-change-setting-labels.js.map +1 -0
  26. package/dist/account/email-change-setting.d.ts +10 -12
  27. package/dist/account/email-change-setting.js +11 -30
  28. package/dist/account/email-change-setting.js.map +1 -1
  29. package/dist/{components → account}/passkeys-setting.d.ts +9 -12
  30. package/dist/{components → account}/passkeys-setting.js +10 -7
  31. package/dist/account/passkeys-setting.js.map +1 -0
  32. package/dist/account/sessions-setting-labels.d.ts +2 -0
  33. package/dist/account/sessions-setting-labels.js +22 -0
  34. package/dist/account/sessions-setting-labels.js.map +1 -0
  35. package/dist/account/sessions-setting.d.ts +12 -14
  36. package/dist/account/sessions-setting.js +8 -23
  37. package/dist/account/sessions-setting.js.map +1 -1
  38. package/dist/admin/admin-action-confirm-labels.d.ts +2 -0
  39. package/dist/admin/admin-action-confirm-labels.js +16 -0
  40. package/dist/admin/admin-action-confirm-labels.js.map +1 -0
  41. package/dist/admin/admin-action-confirm.d.ts +156 -101
  42. package/dist/admin/admin-action-confirm.js +17 -22
  43. package/dist/admin/admin-action-confirm.js.map +1 -1
  44. package/dist/admin/admin-action-log-labels.d.ts +2 -0
  45. package/dist/admin/admin-action-log-labels.js +73 -0
  46. package/dist/admin/admin-action-log-labels.js.map +1 -0
  47. package/dist/admin/admin-action-log.d.ts +98 -22
  48. package/dist/admin/admin-action-log.js +48 -45
  49. package/dist/admin/admin-action-log.js.map +1 -1
  50. package/dist/admin/admin-parts.d.ts +7 -14
  51. package/dist/admin/admin-parts.js +0 -4
  52. package/dist/admin/admin-parts.js.map +1 -1
  53. package/dist/admin/invitations-panel-labels.d.ts +2 -0
  54. package/dist/admin/invitations-panel-labels.js +29 -0
  55. package/dist/admin/invitations-panel-labels.js.map +1 -0
  56. package/dist/admin/invitations-panel.d.ts +167 -101
  57. package/dist/admin/invitations-panel.js +12 -31
  58. package/dist/admin/invitations-panel.js.map +1 -1
  59. package/dist/admin/plan-change-labels.d.ts +2 -0
  60. package/dist/admin/plan-change-labels.js +22 -0
  61. package/dist/admin/plan-change-labels.js.map +1 -0
  62. package/dist/admin/plan-change.d.ts +244 -101
  63. package/dist/admin/plan-change.js +16 -24
  64. package/dist/admin/plan-change.js.map +1 -1
  65. package/dist/admin/reviewer-scope-editor-labels.d.ts +2 -0
  66. package/dist/admin/reviewer-scope-editor-labels.js +14 -0
  67. package/dist/admin/reviewer-scope-editor-labels.js.map +1 -0
  68. package/dist/admin/reviewer-scope-editor.d.ts +95 -101
  69. package/dist/admin/reviewer-scope-editor.js +5 -13
  70. package/dist/admin/reviewer-scope-editor.js.map +1 -1
  71. package/dist/admin/role-select-labels.d.ts +2 -0
  72. package/dist/admin/role-select-labels.js +15 -0
  73. package/dist/admin/role-select-labels.js.map +1 -0
  74. package/dist/admin/role-select.d.ts +136 -101
  75. package/dist/admin/role-select.js +7 -18
  76. package/dist/admin/role-select.js.map +1 -1
  77. package/dist/admin/transfer-ownership-dialog-labels.d.ts +2 -0
  78. package/dist/admin/transfer-ownership-dialog-labels.js +18 -0
  79. package/dist/admin/transfer-ownership-dialog-labels.js.map +1 -0
  80. package/dist/admin/transfer-ownership-dialog.d.ts +81 -101
  81. package/dist/admin/transfer-ownership-dialog.js +3 -15
  82. package/dist/admin/transfer-ownership-dialog.js.map +1 -1
  83. package/dist/admin/user-roster-labels.d.ts +2 -0
  84. package/dist/admin/user-roster-labels.js +16 -0
  85. package/dist/admin/user-roster-labels.js.map +1 -0
  86. package/dist/admin/user-roster.d.ts +225 -101
  87. package/dist/admin/user-roster.js +4 -14
  88. package/dist/admin/user-roster.js.map +1 -1
  89. package/dist/auth/accept-invitation-labels.d.ts +2 -0
  90. package/dist/auth/accept-invitation-labels.js +20 -0
  91. package/dist/auth/accept-invitation-labels.js.map +1 -0
  92. package/dist/auth/accept-invitation.d.ts +11 -13
  93. package/dist/auth/accept-invitation.js +3 -16
  94. package/dist/auth/accept-invitation.js.map +1 -1
  95. package/dist/auth/auth-errors.d.ts +34 -23
  96. package/dist/auth/auth-errors.js +8 -4
  97. package/dist/auth/auth-errors.js.map +1 -1
  98. package/dist/auth/complete-name-dialog-labels.d.ts +2 -0
  99. package/dist/auth/complete-name-dialog-labels.js +14 -0
  100. package/dist/auth/complete-name-dialog-labels.js.map +1 -0
  101. package/dist/auth/complete-name-dialog.d.ts +9 -11
  102. package/dist/auth/complete-name-dialog.js +4 -11
  103. package/dist/auth/complete-name-dialog.js.map +1 -1
  104. package/dist/auth/email-tag.d.ts +2 -4
  105. package/dist/auth/forgot-password-form-labels.d.ts +3 -0
  106. package/dist/auth/forgot-password-form-labels.js +17 -0
  107. package/dist/auth/forgot-password-form-labels.js.map +1 -0
  108. package/dist/auth/forgot-password-form.d.ts +9 -12
  109. package/dist/auth/forgot-password-form.js +6 -15
  110. package/dist/auth/forgot-password-form.js.map +1 -1
  111. package/dist/auth/form-rules.d.ts +5 -7
  112. package/dist/auth/new-password-fields.d.ts +4 -8
  113. package/dist/auth/new-password-fields.js +1 -1
  114. package/dist/auth/new-password-fields.js.map +1 -1
  115. package/dist/auth/not-found-page-labels.d.ts +2 -0
  116. package/dist/auth/not-found-page-labels.js +11 -0
  117. package/dist/auth/not-found-page-labels.js.map +1 -0
  118. package/dist/auth/not-found-page.d.ts +9 -11
  119. package/dist/auth/not-found-page.js +5 -10
  120. package/dist/auth/not-found-page.js.map +1 -1
  121. package/dist/auth/register-form-labels.d.ts +3 -0
  122. package/dist/auth/register-form-labels.js +28 -0
  123. package/dist/auth/register-form-labels.js.map +1 -0
  124. package/dist/auth/register-form.d.ts +174 -101
  125. package/dist/auth/register-form.js +11 -31
  126. package/dist/auth/register-form.js.map +1 -1
  127. package/dist/auth/reset-password-form-labels.d.ts +3 -0
  128. package/dist/auth/reset-password-form-labels.js +24 -0
  129. package/dist/auth/reset-password-form-labels.js.map +1 -0
  130. package/dist/auth/reset-password-form.d.ts +12 -15
  131. package/dist/auth/reset-password-form.js +6 -22
  132. package/dist/auth/reset-password-form.js.map +1 -1
  133. package/dist/auth/sign-in-form-labels.d.ts +3 -0
  134. package/dist/auth/sign-in-form-labels.js +42 -0
  135. package/dist/auth/sign-in-form-labels.js.map +1 -0
  136. package/dist/auth/sign-in-form.d.ts +15 -19
  137. package/dist/auth/sign-in-form.js +12 -46
  138. package/dist/auth/sign-in-form.js.map +1 -1
  139. package/dist/auth/status-parts.d.ts +13 -17
  140. package/dist/auth/status-parts.js +3 -3
  141. package/dist/auth/status-parts.js.map +1 -1
  142. package/dist/auth/verify-email-labels.d.ts +2 -0
  143. package/dist/auth/verify-email-labels.js +25 -0
  144. package/dist/auth/verify-email-labels.js.map +1 -0
  145. package/dist/auth/verify-email.d.ts +15 -17
  146. package/dist/auth/verify-email.js +4 -21
  147. package/dist/auth/verify-email.js.map +1 -1
  148. package/dist/billing/billing-banner.d.ts +12 -110
  149. package/dist/billing/billing-banner.js +2 -1
  150. package/dist/billing/billing-banner.js.map +1 -1
  151. package/dist/billing/billing-labels.d.ts +168 -101
  152. package/dist/billing/billing-labels.js.map +1 -1
  153. package/dist/billing/billing-lock.d.ts +10 -110
  154. package/dist/billing/billing-overview.d.ts +7 -109
  155. package/dist/billing/billing-standing.d.ts +6 -108
  156. package/dist/billing/checkout-processing.d.ts +8 -111
  157. package/dist/billing/checkout-processing.js +2 -9
  158. package/dist/billing/checkout-processing.js.map +1 -1
  159. package/dist/billing/checkout-return.d.ts +5 -7
  160. package/dist/billing/pay-page.d.ts +15 -117
  161. package/dist/billing/plan-card.d.ts +14 -115
  162. package/dist/billing/plan-card.js +15 -13
  163. package/dist/billing/plan-card.js.map +1 -1
  164. package/dist/billing/plan-limit-notice.d.ts +12 -110
  165. package/dist/billing/plan-limit-notice.js +1 -1
  166. package/dist/billing/plan-limit-notice.js.map +1 -1
  167. package/dist/billing/plan-limit-toast.d.ts +6 -107
  168. package/dist/billing/plan-limit.d.ts +2 -4
  169. package/dist/billing/plan-price.d.ts +10 -12
  170. package/dist/billing/subscription-actions.d.ts +6 -109
  171. package/dist/billing/subscription-actions.js +2 -2
  172. package/dist/billing/subscription-actions.js.map +1 -1
  173. package/dist/billing/subscription-status-chip.d.ts +7 -108
  174. package/dist/chart.d.ts +12 -113
  175. package/dist/chart.js +4 -0
  176. package/dist/chart.js.map +1 -1
  177. package/dist/components/account-chips-labels.d.ts +10 -0
  178. package/dist/components/account-chips-labels.js +15 -0
  179. package/dist/components/account-chips-labels.js.map +1 -0
  180. package/dist/components/account-chips.d.ts +22 -44
  181. package/dist/components/account-chips.js +9 -14
  182. package/dist/components/account-chips.js.map +1 -1
  183. package/dist/components/alert-banner.d.ts +15 -11
  184. package/dist/components/alert-banner.js +28 -18
  185. package/dist/components/alert-banner.js.map +1 -1
  186. package/dist/components/amount-input.d.ts +64 -111
  187. package/dist/components/amount-input.js +259 -283
  188. package/dist/components/amount-input.js.map +1 -1
  189. package/dist/components/appearance-labels.d.ts +6 -10
  190. package/dist/components/appearance-labels.js.map +1 -1
  191. package/dist/components/authed-image-labels.d.ts +2 -0
  192. package/dist/components/authed-image-labels.js +10 -0
  193. package/dist/components/authed-image-labels.js.map +1 -0
  194. package/dist/components/authed-image.d.ts +11 -13
  195. package/dist/components/authed-image.js +2 -6
  196. package/dist/components/authed-image.js.map +1 -1
  197. package/dist/components/autocomplete.d.ts +13 -11
  198. package/dist/components/autocomplete.js +33 -28
  199. package/dist/components/autocomplete.js.map +1 -1
  200. package/dist/components/breadcrumbs-labels.d.ts +2 -0
  201. package/dist/components/breadcrumbs-labels.js +9 -0
  202. package/dist/components/breadcrumbs-labels.js.map +1 -0
  203. package/dist/components/breadcrumbs.d.ts +10 -12
  204. package/dist/components/breadcrumbs.js +7 -10
  205. package/dist/components/breadcrumbs.js.map +1 -1
  206. package/dist/components/bulk-action-bar-labels.d.ts +2 -0
  207. package/dist/components/bulk-action-bar-labels.js +10 -0
  208. package/dist/components/bulk-action-bar-labels.js.map +1 -0
  209. package/dist/components/bulk-action-bar.d.ts +10 -12
  210. package/dist/components/bulk-action-bar.js +9 -12
  211. package/dist/components/bulk-action-bar.js.map +1 -1
  212. package/dist/components/button-group.d.ts +7 -110
  213. package/dist/components/button-group.js +5 -5
  214. package/dist/components/button-group.js.map +1 -1
  215. package/dist/components/button-look.d.ts +88 -0
  216. package/dist/components/button-look.js +91 -0
  217. package/dist/components/button-look.js.map +1 -0
  218. package/dist/components/button.d.ts +153 -0
  219. package/dist/components/button.js +165 -0
  220. package/dist/components/button.js.map +1 -0
  221. package/dist/components/calculator.d.ts +6 -108
  222. package/dist/components/calculator.js +8 -7
  223. package/dist/components/calculator.js.map +1 -1
  224. package/dist/components/calendar-heatmap-labels.d.ts +3 -0
  225. package/dist/components/calendar-heatmap-labels.js +12 -0
  226. package/dist/components/calendar-heatmap-labels.js.map +1 -0
  227. package/dist/components/calendar-heatmap.d.ts +13 -16
  228. package/dist/components/calendar-heatmap.js +7 -13
  229. package/dist/components/calendar-heatmap.js.map +1 -1
  230. package/dist/components/card.d.ts +145 -0
  231. package/dist/components/card.js +186 -0
  232. package/dist/components/card.js.map +1 -0
  233. package/dist/components/chart-height.d.ts +4 -7
  234. package/dist/components/chart-zoom-core.d.ts +202 -0
  235. package/dist/components/chart-zoom-core.js +334 -0
  236. package/dist/components/chart-zoom-core.js.map +1 -0
  237. package/dist/components/chart-zoom.d.ts +2 -205
  238. package/dist/components/chart-zoom.js +2 -330
  239. package/dist/components/chart-zoom.js.map +1 -1
  240. package/dist/components/chart.d.ts +11 -15
  241. package/dist/components/chart.js +11 -11
  242. package/dist/components/chart.js.map +1 -1
  243. package/dist/components/checkbox-group.d.ts +6 -10
  244. package/dist/components/checkbox-group.js +10 -9
  245. package/dist/components/checkbox-group.js.map +1 -1
  246. package/dist/components/checkbox.d.ts +8 -12
  247. package/dist/components/checkbox.js +20 -18
  248. package/dist/components/checkbox.js.map +1 -1
  249. package/dist/components/chip-input.d.ts +69 -0
  250. package/dist/components/chip-input.js +220 -0
  251. package/dist/components/chip-input.js.map +1 -0
  252. package/dist/components/chip-labels.d.ts +2 -0
  253. package/dist/components/chip-labels.js +12 -0
  254. package/dist/components/chip-labels.js.map +1 -0
  255. package/dist/components/chip.d.ts +18 -93
  256. package/dist/components/chip.js +74 -426
  257. package/dist/components/chip.js.map +1 -1
  258. package/dist/components/choice-card.d.ts +21 -18
  259. package/dist/components/choice-card.js +45 -45
  260. package/dist/components/choice-card.js.map +1 -1
  261. package/dist/components/column-mapper-labels.d.ts +5 -0
  262. package/dist/components/column-mapper-labels.js +34 -0
  263. package/dist/components/column-mapper-labels.js.map +1 -0
  264. package/dist/components/column-mapper.d.ts +15 -17
  265. package/dist/components/column-mapper.js +11 -37
  266. package/dist/components/column-mapper.js.map +1 -1
  267. package/dist/components/combobox-core.d.ts +79 -40
  268. package/dist/components/combobox-core.js +187 -121
  269. package/dist/components/combobox-core.js.map +1 -1
  270. package/dist/components/combobox-suggestions.d.ts +76 -0
  271. package/dist/components/combobox-suggestions.js +56 -0
  272. package/dist/components/combobox-suggestions.js.map +1 -0
  273. package/dist/components/combobox.d.ts +15 -160
  274. package/dist/components/combobox.js +40 -507
  275. package/dist/components/combobox.js.map +1 -1
  276. package/dist/components/confirm-dialog-labels.d.ts +7 -0
  277. package/dist/components/confirm-dialog-labels.js +10 -0
  278. package/dist/components/confirm-dialog-labels.js.map +1 -0
  279. package/dist/components/confirm-dialog.d.ts +165 -101
  280. package/dist/components/confirm-dialog.js +2 -6
  281. package/dist/components/confirm-dialog.js.map +1 -1
  282. package/dist/components/copy-button-labels.d.ts +2 -0
  283. package/dist/components/copy-button-labels.js +12 -0
  284. package/dist/components/copy-button-labels.js.map +1 -0
  285. package/dist/components/copy-button.d.ts +74 -101
  286. package/dist/components/copy-button.js +4 -9
  287. package/dist/components/copy-button.js.map +1 -1
  288. package/dist/components/country-select-labels.d.ts +2 -0
  289. package/dist/components/country-select-labels.js +10 -0
  290. package/dist/components/country-select-labels.js.map +1 -0
  291. package/dist/components/country-select.d.ts +18 -15
  292. package/dist/components/country-select.js +49 -64
  293. package/dist/components/country-select.js.map +1 -1
  294. package/dist/components/currency-option-list.d.ts +58 -0
  295. package/dist/components/currency-option-list.js +107 -0
  296. package/dist/components/currency-option-list.js.map +1 -0
  297. package/dist/components/currency-select.d.ts +10 -30
  298. package/dist/components/currency-select.js +50 -133
  299. package/dist/components/currency-select.js.map +1 -1
  300. package/dist/components/danger-confirm-labels.d.ts +14 -0
  301. package/dist/components/danger-confirm-labels.js +17 -0
  302. package/dist/components/danger-confirm-labels.js.map +1 -0
  303. package/dist/components/danger-confirm.d.ts +448 -101
  304. package/dist/components/danger-confirm.js +40 -46
  305. package/dist/components/danger-confirm.js.map +1 -1
  306. package/dist/components/data-table-cells.d.ts +9 -24
  307. package/dist/components/data-table-cells.js +1 -1
  308. package/dist/components/data-table-cells.js.map +1 -1
  309. package/dist/components/data-table-column-settings.d.ts +16 -0
  310. package/dist/components/data-table-column-settings.js +119 -0
  311. package/dist/components/data-table-column-settings.js.map +1 -0
  312. package/dist/components/data-table-filter-popover.d.ts +5 -19
  313. package/dist/components/data-table-filter-popover.js +40 -23
  314. package/dist/components/data-table-filter-popover.js.map +1 -1
  315. package/dist/components/data-table-filters.d.ts +93 -15
  316. package/dist/components/data-table-filters.js +22 -7
  317. package/dist/components/data-table-filters.js.map +1 -1
  318. package/dist/components/data-table-head.d.ts +36 -0
  319. package/dist/components/data-table-head.js +190 -0
  320. package/dist/components/data-table-head.js.map +1 -0
  321. package/dist/components/data-table-labels.d.ts +83 -15
  322. package/dist/components/data-table-labels.js +4 -29
  323. package/dist/components/data-table-labels.js.map +1 -1
  324. package/dist/components/data-table-mobile.d.ts +106 -0
  325. package/dist/components/data-table-mobile.js +412 -0
  326. package/dist/components/data-table-mobile.js.map +1 -0
  327. package/dist/components/data-table-pagination.d.ts +6 -21
  328. package/dist/components/data-table-pagination.js +7 -7
  329. package/dist/components/data-table-pagination.js.map +1 -1
  330. package/dist/components/data-table-resize.d.ts +37 -0
  331. package/dist/components/data-table-resize.js +103 -0
  332. package/dist/components/data-table-resize.js.map +1 -0
  333. package/dist/components/data-table-row-actions.d.ts +24 -0
  334. package/dist/components/data-table-row-actions.js +95 -0
  335. package/dist/components/data-table-row-actions.js.map +1 -0
  336. package/dist/components/data-table-selection.d.ts +21 -0
  337. package/dist/components/data-table-selection.js +30 -0
  338. package/dist/components/data-table-selection.js.map +1 -0
  339. package/dist/components/data-table-shared.d.ts +93 -0
  340. package/dist/components/data-table-shared.js +99 -0
  341. package/dist/components/data-table-shared.js.map +1 -0
  342. package/dist/components/data-table-sort.d.ts +8 -10
  343. package/dist/components/data-table.d.ts +613 -15
  344. package/dist/components/data-table.js +150 -939
  345. package/dist/components/data-table.js.map +1 -1
  346. package/dist/components/date-field.d.ts +203 -0
  347. package/dist/components/date-field.js +270 -0
  348. package/dist/components/date-field.js.map +1 -0
  349. package/dist/components/date-picker.d.ts +6 -261
  350. package/dist/components/date-picker.js +24 -760
  351. package/dist/components/date-picker.js.map +1 -1
  352. package/dist/components/date-range-picker.d.ts +125 -0
  353. package/dist/components/date-range-picker.js +261 -0
  354. package/dist/components/date-range-picker.js.map +1 -0
  355. package/dist/components/description-list-labels.d.ts +2 -0
  356. package/dist/components/description-list-labels.js +8 -0
  357. package/dist/components/description-list-labels.js.map +1 -0
  358. package/dist/components/description-list.d.ts +13 -15
  359. package/dist/components/description-list.js +17 -11
  360. package/dist/components/description-list.js.map +1 -1
  361. package/dist/components/dialog-frame-labels.d.ts +2 -0
  362. package/dist/components/dialog-frame-labels.js +6 -0
  363. package/dist/components/dialog-frame-labels.js.map +1 -0
  364. package/dist/components/dialog-frame.d.ts +10 -12
  365. package/dist/components/dialog-frame.js +6 -6
  366. package/dist/components/dialog-frame.js.map +1 -1
  367. package/dist/components/disclosure.d.ts +6 -10
  368. package/dist/components/disclosure.js +11 -11
  369. package/dist/components/disclosure.js.map +1 -1
  370. package/dist/components/dropdown.d.ts +61 -30
  371. package/dist/components/dropdown.js +61 -30
  372. package/dist/components/dropdown.js.map +1 -1
  373. package/dist/components/empty-state.d.ts +64 -0
  374. package/dist/components/empty-state.js +70 -0
  375. package/dist/components/empty-state.js.map +1 -0
  376. package/dist/components/entity-combobox.d.ts +11 -12
  377. package/dist/components/entity-combobox.js +14 -13
  378. package/dist/components/entity-combobox.js.map +1 -1
  379. package/dist/components/error-boundary-labels.d.ts +2 -0
  380. package/dist/components/error-boundary-labels.js +19 -0
  381. package/dist/components/error-boundary-labels.js.map +1 -0
  382. package/dist/components/error-boundary.d.ts +17 -17
  383. package/dist/components/error-boundary.js +5 -17
  384. package/dist/components/error-boundary.js.map +1 -1
  385. package/dist/components/facing-pair.d.ts +7 -116
  386. package/dist/components/facing-pair.js +1 -1
  387. package/dist/components/facing-pair.js.map +1 -1
  388. package/dist/components/field-base.d.ts +255 -0
  389. package/dist/components/field-base.js +223 -0
  390. package/dist/components/field-base.js.map +1 -0
  391. package/dist/components/field-parts.d.ts +180 -87
  392. package/dist/components/field-parts.js +52 -33
  393. package/dist/components/field-parts.js.map +1 -1
  394. package/dist/components/field-strip.d.ts +12 -36
  395. package/dist/components/field-strip.js +24 -22
  396. package/dist/components/field-strip.js.map +1 -1
  397. package/dist/components/field-sync-labels.d.ts +2 -0
  398. package/dist/components/field-sync-labels.js +12 -0
  399. package/dist/components/field-sync-labels.js.map +1 -0
  400. package/dist/components/field-sync.d.ts +16 -19
  401. package/dist/components/field-sync.js +4 -14
  402. package/dist/components/field-sync.js.map +1 -1
  403. package/dist/components/field.d.ts +45 -10
  404. package/dist/components/field.js +10 -8
  405. package/dist/components/field.js.map +1 -1
  406. package/dist/components/file-button.d.ts +85 -101
  407. package/dist/components/file-button.js +23 -169
  408. package/dist/components/file-button.js.map +1 -1
  409. package/dist/components/file-dropzone.d.ts +9 -110
  410. package/dist/components/file-dropzone.js +22 -22
  411. package/dist/components/file-dropzone.js.map +1 -1
  412. package/dist/components/floating-panel-labels.d.ts +2 -0
  413. package/dist/components/floating-panel-labels.js +9 -0
  414. package/dist/components/floating-panel-labels.js.map +1 -0
  415. package/dist/components/floating-panel.d.ts +17 -21
  416. package/dist/components/floating-panel.js +19 -18
  417. package/dist/components/floating-panel.js.map +1 -1
  418. package/dist/components/focus-ring.d.ts +9 -6
  419. package/dist/components/focus-ring.js +2 -2
  420. package/dist/components/focus-ring.js.map +1 -1
  421. package/dist/components/form-actions-labels.d.ts +2 -0
  422. package/dist/components/form-actions-labels.js +10 -0
  423. package/dist/components/form-actions-labels.js.map +1 -0
  424. package/dist/components/form-actions.d.ts +280 -101
  425. package/dist/components/form-actions.js +10 -20
  426. package/dist/components/form-actions.js.map +1 -1
  427. package/dist/components/full-bleed-dialog.d.ts +7 -8
  428. package/dist/components/full-bleed-dialog.js +14 -13
  429. package/dist/components/full-bleed-dialog.js.map +1 -1
  430. package/dist/components/grouped-picker.d.ts +21 -16
  431. package/dist/components/grouped-picker.js +76 -62
  432. package/dist/components/grouped-picker.js.map +1 -1
  433. package/dist/components/help-popover.d.ts +60 -0
  434. package/dist/components/help-popover.js +48 -0
  435. package/dist/components/help-popover.js.map +1 -0
  436. package/dist/components/hover-menu.d.ts +12 -18
  437. package/dist/components/hover-menu.js +19 -18
  438. package/dist/components/hover-menu.js.map +1 -1
  439. package/dist/components/iban-input-labels.d.ts +2 -0
  440. package/dist/components/iban-input-labels.js +13 -0
  441. package/dist/components/iban-input-labels.js.map +1 -0
  442. package/dist/components/iban-input.d.ts +73 -101
  443. package/dist/components/iban-input.js +22 -15
  444. package/dist/components/iban-input.js.map +1 -1
  445. package/dist/components/icon-button.d.ts +300 -0
  446. package/dist/components/icon-button.js +465 -0
  447. package/dist/components/icon-button.js.map +1 -0
  448. package/dist/components/icon-picker-labels.d.ts +2 -0
  449. package/dist/components/icon-picker-labels.js +12 -0
  450. package/dist/components/icon-picker-labels.js.map +1 -0
  451. package/dist/components/icon-picker.d.ts +13 -13
  452. package/dist/components/icon-picker.js +18 -17
  453. package/dist/components/icon-picker.js.map +1 -1
  454. package/dist/components/image-grid-labels.d.ts +2 -0
  455. package/dist/components/image-grid-labels.js +10 -0
  456. package/dist/components/image-grid-labels.js.map +1 -0
  457. package/dist/components/image-grid.d.ts +12 -14
  458. package/dist/components/image-grid.js +6 -10
  459. package/dist/components/image-grid.js.map +1 -1
  460. package/dist/components/inline-edit-field-labels.d.ts +2 -0
  461. package/dist/components/inline-edit-field-labels.js +10 -0
  462. package/dist/components/inline-edit-field-labels.js.map +1 -0
  463. package/dist/components/inline-edit-field.d.ts +11 -13
  464. package/dist/components/inline-edit-field.js +11 -13
  465. package/dist/components/inline-edit-field.js.map +1 -1
  466. package/dist/components/inline-entity-combobox.d.ts +155 -0
  467. package/dist/components/inline-entity-combobox.js +467 -0
  468. package/dist/components/inline-entity-combobox.js.map +1 -0
  469. package/dist/components/input.d.ts +98 -0
  470. package/dist/components/input.js +219 -0
  471. package/dist/components/input.js.map +1 -0
  472. package/dist/components/jump-calendar.d.ts +8 -0
  473. package/dist/components/jump-calendar.js +274 -0
  474. package/dist/components/jump-calendar.js.map +1 -0
  475. package/dist/components/language-select.d.ts +20 -111
  476. package/dist/components/language-select.js +12 -7
  477. package/dist/components/language-select.js.map +1 -1
  478. package/dist/components/legal-labels.d.ts +2 -0
  479. package/dist/components/legal-labels.js +100 -0
  480. package/dist/components/legal-labels.js.map +1 -0
  481. package/dist/components/legal-page.d.ts +17 -118
  482. package/dist/components/legal-page.js +2 -2
  483. package/dist/components/legal-page.js.map +1 -1
  484. package/dist/components/legal.d.ts +353 -101
  485. package/dist/components/legal.js +7 -101
  486. package/dist/components/legal.js.map +1 -1
  487. package/dist/components/lightbox-labels.d.ts +2 -0
  488. package/dist/components/lightbox-labels.js +17 -0
  489. package/dist/components/lightbox-labels.js.map +1 -0
  490. package/dist/components/lightbox.d.ts +12 -14
  491. package/dist/components/lightbox.js +9 -19
  492. package/dist/components/lightbox.js.map +1 -1
  493. package/dist/components/line-items-labels.d.ts +2 -0
  494. package/dist/components/line-items-labels.js +13 -0
  495. package/dist/components/line-items-labels.js.map +1 -0
  496. package/dist/components/line-items.d.ts +16 -18
  497. package/dist/components/line-items.js +18 -26
  498. package/dist/components/line-items.js.map +1 -1
  499. package/dist/components/list-labels.d.ts +2 -0
  500. package/dist/components/list-labels.js +9 -0
  501. package/dist/components/list-labels.js.map +1 -0
  502. package/dist/components/list.d.ts +32 -21
  503. package/dist/components/list.js +41 -25
  504. package/dist/components/list.js.map +1 -1
  505. package/dist/components/loading-state.d.ts +5 -9
  506. package/dist/components/loading-state.js +2 -2
  507. package/dist/components/loading-state.js.map +1 -1
  508. package/dist/components/measured-grid-labels.d.ts +4 -0
  509. package/dist/components/measured-grid-labels.js +21 -0
  510. package/dist/components/measured-grid-labels.js.map +1 -0
  511. package/dist/components/measured-grid.d.ts +13 -17
  512. package/dist/components/measured-grid.js +31 -50
  513. package/dist/components/measured-grid.js.map +1 -1
  514. package/dist/components/menu-item.d.ts +10 -10
  515. package/dist/components/menu-item.js +9 -9
  516. package/dist/components/menu-item.js.map +1 -1
  517. package/dist/components/mini-calendar-labels.d.ts +4 -0
  518. package/dist/components/mini-calendar-labels.js +14 -0
  519. package/dist/components/mini-calendar-labels.js.map +1 -0
  520. package/dist/components/mini-calendar.d.ts +10 -14
  521. package/dist/components/mini-calendar.js +22 -29
  522. package/dist/components/mini-calendar.js.map +1 -1
  523. package/dist/components/modal.d.ts +34 -18
  524. package/dist/components/modal.js +13 -13
  525. package/dist/components/modal.js.map +1 -1
  526. package/dist/components/money-draft.d.ts +34 -0
  527. package/dist/components/money-draft.js +39 -0
  528. package/dist/components/money-draft.js.map +1 -0
  529. package/dist/components/money-field.d.ts +13 -111
  530. package/dist/components/money-field.js +6 -22
  531. package/dist/components/money-field.js.map +1 -1
  532. package/dist/components/month-picker-labels.d.ts +5 -0
  533. package/dist/components/month-picker-labels.js +18 -0
  534. package/dist/components/month-picker-labels.js.map +1 -0
  535. package/dist/components/month-picker.d.ts +15 -13
  536. package/dist/components/month-picker.js +34 -32
  537. package/dist/components/month-picker.js.map +1 -1
  538. package/dist/components/multi-entity-combobox.d.ts +9 -11
  539. package/dist/components/multi-entity-combobox.js +14 -13
  540. package/dist/components/multi-entity-combobox.js.map +1 -1
  541. package/dist/components/multi-select.d.ts +74 -25
  542. package/dist/components/multi-select.js +166 -197
  543. package/dist/components/multi-select.js.map +1 -1
  544. package/dist/components/nav-pills.d.ts +9 -10
  545. package/dist/components/nav-pills.js +53 -42
  546. package/dist/components/nav-pills.js.map +1 -1
  547. package/dist/components/number-field.d.ts +6 -111
  548. package/dist/components/number-field.js +2 -3
  549. package/dist/components/number-field.js.map +1 -1
  550. package/dist/components/number-input.d.ts +28 -112
  551. package/dist/components/number-input.js +33 -67
  552. package/dist/components/number-input.js.map +1 -1
  553. package/dist/components/numeric-field.d.ts +85 -0
  554. package/dist/components/numeric-field.js +71 -0
  555. package/dist/components/numeric-field.js.map +1 -0
  556. package/dist/components/numpad-sheet.d.ts +5 -108
  557. package/dist/components/numpad-sheet.js +7 -7
  558. package/dist/components/numpad-sheet.js.map +1 -1
  559. package/dist/components/one-time-code-input.d.ts +6 -7
  560. package/dist/components/one-time-code-input.js +119 -124
  561. package/dist/components/one-time-code-input.js.map +1 -1
  562. package/dist/components/page-contents-labels.d.ts +2 -0
  563. package/dist/components/page-contents-labels.js +8 -0
  564. package/dist/components/page-contents-labels.js.map +1 -0
  565. package/dist/components/page-contents.d.ts +13 -15
  566. package/dist/components/page-contents.js +7 -9
  567. package/dist/components/page-contents.js.map +1 -1
  568. package/dist/components/page-header.d.ts +10 -10
  569. package/dist/components/page-header.js +3 -3
  570. package/dist/components/page-header.js.map +1 -1
  571. package/dist/components/password-strength-labels.d.ts +2 -0
  572. package/dist/components/password-strength-labels.js +21 -0
  573. package/dist/components/password-strength-labels.js.map +1 -0
  574. package/dist/components/password-strength.d.ts +15 -17
  575. package/dist/components/password-strength.js +7 -22
  576. package/dist/components/password-strength.js.map +1 -1
  577. package/dist/components/phone-input-labels.d.ts +2 -0
  578. package/dist/components/phone-input-labels.js +9 -0
  579. package/dist/components/phone-input-labels.js.map +1 -0
  580. package/dist/components/phone-input.d.ts +75 -101
  581. package/dist/components/phone-input.js +20 -23
  582. package/dist/components/phone-input.js.map +1 -1
  583. package/dist/components/picker-sheet.d.ts +20 -8
  584. package/dist/components/picker-sheet.js +22 -11
  585. package/dist/components/picker-sheet.js.map +1 -1
  586. package/dist/components/pie-chart-labels.d.ts +2 -4
  587. package/dist/components/pie-chart.d.ts +8 -11
  588. package/dist/components/pie-chart.js +5 -5
  589. package/dist/components/pie-chart.js.map +1 -1
  590. package/dist/components/popover-labels.d.ts +2 -0
  591. package/dist/components/popover-labels.js +11 -0
  592. package/dist/components/popover-labels.js.map +1 -0
  593. package/dist/components/popover.d.ts +13 -11
  594. package/dist/components/popover.js +15 -21
  595. package/dist/components/popover.js.map +1 -1
  596. package/dist/components/progress-bar-labels.d.ts +2 -0
  597. package/dist/components/progress-bar-labels.js +9 -0
  598. package/dist/components/progress-bar-labels.js.map +1 -0
  599. package/dist/components/progress-bar.d.ts +16 -15
  600. package/dist/components/progress-bar.js +22 -20
  601. package/dist/components/progress-bar.js.map +1 -1
  602. package/dist/components/qr-code.d.ts +4 -8
  603. package/dist/components/qr-code.js.map +1 -1
  604. package/dist/components/reauth-dialog-labels.d.ts +2 -0
  605. package/dist/components/reauth-dialog-labels.js +12 -0
  606. package/dist/components/reauth-dialog-labels.js.map +1 -0
  607. package/dist/components/reauth-dialog.d.ts +8 -10
  608. package/dist/components/reauth-dialog.js +3 -8
  609. package/dist/components/reauth-dialog.js.map +1 -1
  610. package/dist/components/row-actions-labels.d.ts +2 -0
  611. package/dist/components/row-actions-labels.js +9 -0
  612. package/dist/components/row-actions-labels.js.map +1 -0
  613. package/dist/components/row-actions.d.ts +224 -101
  614. package/dist/components/row-actions.js +4 -5
  615. package/dist/components/row-actions.js.map +1 -1
  616. package/dist/components/scroll-area.d.ts +6 -9
  617. package/dist/components/scroll-area.js +4 -10
  618. package/dist/components/scroll-area.js.map +1 -1
  619. package/dist/components/search-field.d.ts +12 -27
  620. package/dist/components/search-field.js +13 -16
  621. package/dist/components/search-field.js.map +1 -1
  622. package/dist/components/select.d.ts +69 -0
  623. package/dist/components/select.js +164 -0
  624. package/dist/components/select.js.map +1 -0
  625. package/dist/components/separator.d.ts +3 -7
  626. package/dist/components/separator.js.map +1 -1
  627. package/dist/components/series-chart-axes.d.ts +120 -0
  628. package/dist/components/series-chart-axes.js +164 -0
  629. package/dist/components/series-chart-axes.js.map +1 -0
  630. package/dist/components/series-chart-budget.d.ts +8 -9
  631. package/dist/components/series-chart-labels.d.ts +2 -4
  632. package/dist/components/series-chart-thin.d.ts +34 -0
  633. package/dist/components/series-chart-thin.js +103 -0
  634. package/dist/components/series-chart-thin.js.map +1 -0
  635. package/dist/components/series-chart-ticks.d.ts +9 -11
  636. package/dist/components/series-chart.d.ts +64 -214
  637. package/dist/components/series-chart.js +69 -160
  638. package/dist/components/series-chart.js.map +1 -1
  639. package/dist/components/server-wake-labels.d.ts +2 -0
  640. package/dist/components/server-wake-labels.js +9 -0
  641. package/dist/components/server-wake-labels.js.map +1 -0
  642. package/dist/components/server-wake.d.ts +29 -26
  643. package/dist/components/server-wake.js +15 -35
  644. package/dist/components/server-wake.js.map +1 -1
  645. package/dist/components/settings-fields.d.ts +50 -120
  646. package/dist/components/settings-fields.js +13 -3
  647. package/dist/components/settings-fields.js.map +1 -1
  648. package/dist/components/share-card-labels.d.ts +2 -0
  649. package/dist/components/share-card-labels.js +29 -0
  650. package/dist/components/share-card-labels.js.map +1 -0
  651. package/dist/components/share-card.d.ts +188 -101
  652. package/dist/components/share-card.js +16 -34
  653. package/dist/components/share-card.js.map +1 -1
  654. package/dist/components/sign-chip-labels.d.ts +2 -0
  655. package/dist/components/sign-chip-labels.js +11 -0
  656. package/dist/components/sign-chip-labels.js.map +1 -0
  657. package/dist/components/sign-chip.d.ts +7 -9
  658. package/dist/components/sign-chip.js +2 -7
  659. package/dist/components/sign-chip.js.map +1 -1
  660. package/dist/components/signature-pad-labels.d.ts +2 -0
  661. package/dist/components/signature-pad-labels.js +23 -0
  662. package/dist/components/signature-pad-labels.js.map +1 -0
  663. package/dist/components/signature-pad.d.ts +16 -15
  664. package/dist/components/signature-pad.js +22 -35
  665. package/dist/components/signature-pad.js.map +1 -1
  666. package/dist/components/signed-amount-labels.d.ts +2 -0
  667. package/dist/components/signed-amount-labels.js +9 -0
  668. package/dist/components/signed-amount-labels.js.map +1 -0
  669. package/dist/components/signed-amount.d.ts +19 -21
  670. package/dist/components/signed-amount.js +12 -15
  671. package/dist/components/signed-amount.js.map +1 -1
  672. package/dist/components/skeleton.d.ts +5 -9
  673. package/dist/components/skeleton.js +1 -1
  674. package/dist/components/skeleton.js.map +1 -1
  675. package/dist/components/slider.d.ts +16 -11
  676. package/dist/components/slider.js +23 -18
  677. package/dist/components/slider.js.map +1 -1
  678. package/dist/components/sparkline-labels.d.ts +2 -0
  679. package/dist/components/sparkline-labels.js +13 -0
  680. package/dist/components/sparkline-labels.js.map +1 -0
  681. package/dist/components/sparkline.d.ts +10 -12
  682. package/dist/components/sparkline.js +10 -17
  683. package/dist/components/sparkline.js.map +1 -1
  684. package/dist/components/spinner.d.ts +45 -0
  685. package/dist/components/spinner.js +39 -0
  686. package/dist/components/spinner.js.map +1 -0
  687. package/dist/components/stat-tile-labels.d.ts +2 -0
  688. package/dist/components/stat-tile-labels.js +14 -0
  689. package/dist/components/stat-tile-labels.js.map +1 -0
  690. package/dist/components/stat-tile.d.ts +21 -17
  691. package/dist/components/stat-tile.js +25 -32
  692. package/dist/components/stat-tile.js.map +1 -1
  693. package/dist/components/status-dot.d.ts +8 -20
  694. package/dist/components/status-dot.js +13 -12
  695. package/dist/components/status-dot.js.map +1 -1
  696. package/dist/components/swatch-picker-labels.d.ts +2 -0
  697. package/dist/components/swatch-picker-labels.js +9 -0
  698. package/dist/components/swatch-picker-labels.js.map +1 -0
  699. package/dist/components/swatch-picker.d.ts +14 -14
  700. package/dist/components/swatch-picker.js +14 -8
  701. package/dist/components/swatch-picker.js.map +1 -1
  702. package/dist/components/swipeable-row.d.ts +11 -39
  703. package/dist/components/swipeable-row.js +13 -18
  704. package/dist/components/swipeable-row.js.map +1 -1
  705. package/dist/components/switch.d.ts +10 -13
  706. package/dist/components/switch.js +13 -12
  707. package/dist/components/switch.js.map +1 -1
  708. package/dist/components/table.d.ts +28 -31
  709. package/dist/components/table.js +15 -15
  710. package/dist/components/table.js.map +1 -1
  711. package/dist/components/tabs.d.ts +182 -0
  712. package/dist/components/tabs.js +312 -0
  713. package/dist/components/tabs.js.map +1 -0
  714. package/dist/components/text-link.d.ts +17 -119
  715. package/dist/components/text-link.js +7 -7
  716. package/dist/components/text-link.js.map +1 -1
  717. package/dist/components/text.d.ts +14 -13
  718. package/dist/components/text.js +5 -5
  719. package/dist/components/text.js.map +1 -1
  720. package/dist/components/textarea.d.ts +20 -0
  721. package/dist/components/textarea.js +161 -0
  722. package/dist/components/textarea.js.map +1 -0
  723. package/dist/components/tile-radio.d.ts +6 -10
  724. package/dist/components/tile-radio.js +6 -6
  725. package/dist/components/tile-radio.js.map +1 -1
  726. package/dist/components/time-input.d.ts +5 -108
  727. package/dist/components/time-input.js +14 -5
  728. package/dist/components/time-input.js.map +1 -1
  729. package/dist/components/toast-labels.d.ts +2 -0
  730. package/dist/components/toast-labels.js +11 -0
  731. package/dist/components/toast-labels.js.map +1 -0
  732. package/dist/components/toast.d.ts +21 -23
  733. package/dist/components/toast.js +1 -6
  734. package/dist/components/toast.js.map +1 -1
  735. package/dist/components/toggle-group.d.ts +26 -26
  736. package/dist/components/toggle-group.js +43 -19
  737. package/dist/components/toggle-group.js.map +1 -1
  738. package/dist/components/toggle-legend.d.ts +18 -21
  739. package/dist/components/toggle-legend.js +3 -3
  740. package/dist/components/toggle-legend.js.map +1 -1
  741. package/dist/components/tooltip.d.ts +24 -15
  742. package/dist/components/tooltip.js +24 -14
  743. package/dist/components/tooltip.js.map +1 -1
  744. package/dist/components/translation-review-editor.d.ts +8 -10
  745. package/dist/components/translation-review-editor.js +6 -5
  746. package/dist/components/translation-review-editor.js.map +1 -1
  747. package/dist/components/translation-review-labels.d.ts +4 -7
  748. package/dist/components/translation-review-parts.d.ts +19 -28
  749. package/dist/components/translation-review-parts.js +4 -7
  750. package/dist/components/translation-review-parts.js.map +1 -1
  751. package/dist/components/translation-review.d.ts +35 -25
  752. package/dist/components/translation-review.js +24 -13
  753. package/dist/components/translation-review.js.map +1 -1
  754. package/dist/components/tree-view.d.ts +7 -11
  755. package/dist/components/tree-view.js +8 -8
  756. package/dist/components/tree-view.js.map +1 -1
  757. package/dist/components/treemap.d.ts +9 -13
  758. package/dist/components/trigger-aria.d.ts +2 -4
  759. package/dist/components/ui-labels.d.ts +5 -0
  760. package/dist/components/ui-labels.js +20 -0
  761. package/dist/components/ui-labels.js.map +1 -0
  762. package/dist/components/use-anchor-dir.d.ts +3 -6
  763. package/dist/components/use-mobile-reveal.d.ts +2 -6
  764. package/dist/components/use-table-state.d.ts +182 -15
  765. package/dist/components/use-table-state.js +53 -8
  766. package/dist/components/use-table-state.js.map +1 -1
  767. package/dist/components/user-avatar.d.ts +10 -23
  768. package/dist/components/user-avatar.js +1 -1
  769. package/dist/components/user-avatar.js.map +1 -1
  770. package/dist/components/wizard-stepper.d.ts +4 -7
  771. package/dist/components/wizard-stepper.js +3 -3
  772. package/dist/components/wizard-stepper.js.map +1 -1
  773. package/dist/components/write-lock-labels.d.ts +2 -0
  774. package/dist/components/write-lock-labels.js +8 -0
  775. package/dist/components/write-lock-labels.js.map +1 -0
  776. package/dist/components/write-lock.d.ts +16 -18
  777. package/dist/components/write-lock.js +4 -8
  778. package/dist/components/write-lock.js.map +1 -1
  779. package/dist/currencies.d.ts +23 -0
  780. package/dist/currencies.js +38 -0
  781. package/dist/currencies.js.map +1 -0
  782. package/dist/data-table.d.ts +10 -18
  783. package/dist/data-table.js.map +1 -1
  784. package/dist/demo/demo-banner.d.ts +15 -13
  785. package/dist/demo/demo-banner.js +5 -19
  786. package/dist/demo/demo-banner.js.map +1 -1
  787. package/dist/demo/demo-countdown.d.ts +7 -9
  788. package/dist/demo/demo-ended.d.ts +10 -13
  789. package/dist/demo/demo-ended.js +4 -4
  790. package/dist/demo/demo-ended.js.map +1 -1
  791. package/dist/demo/demo-labels.d.ts +4 -5
  792. package/dist/demo/demo-labels.js.map +1 -1
  793. package/dist/demo/demo-session.d.ts +3 -5
  794. package/dist/demo/demo-start.d.ts +8 -11
  795. package/dist/demo/demo-start.js +3 -2
  796. package/dist/demo/demo-start.js.map +1 -1
  797. package/dist/eslint/index.d.ts +83 -0
  798. package/dist/eslint/index.js +69 -0
  799. package/dist/eslint/index.js.map +1 -0
  800. package/dist/eslint/role-utilities.d.ts +48 -0
  801. package/dist/eslint/role-utilities.generated.d.ts +2 -0
  802. package/dist/eslint/role-utilities.generated.js +143 -0
  803. package/dist/eslint/role-utilities.generated.js.map +1 -0
  804. package/dist/eslint/role-utilities.js +43 -0
  805. package/dist/eslint/role-utilities.js.map +1 -0
  806. package/dist/feedback/feedback-attachment-labels.d.ts +16 -0
  807. package/dist/feedback/feedback-attachment-labels.js +17 -0
  808. package/dist/feedback/feedback-attachment-labels.js.map +1 -0
  809. package/dist/feedback/feedback-attachment.d.ts +312 -101
  810. package/dist/feedback/feedback-attachment.js +31 -42
  811. package/dist/feedback/feedback-attachment.js.map +1 -1
  812. package/dist/feedback/feedback-capture.d.ts +2 -4
  813. package/dist/feedback/feedback-context-labels.d.ts +2 -0
  814. package/dist/feedback/feedback-context-labels.js +9 -0
  815. package/dist/feedback/feedback-context-labels.js.map +1 -0
  816. package/dist/feedback/feedback-context.d.ts +110 -101
  817. package/dist/feedback/feedback-context.js +4 -7
  818. package/dist/feedback/feedback-context.js.map +1 -1
  819. package/dist/feedback/feedback-crash.d.ts +8 -110
  820. package/dist/feedback/feedback-dialog-labels.d.ts +12 -0
  821. package/dist/feedback/feedback-dialog-labels.js +17 -0
  822. package/dist/feedback/feedback-dialog-labels.js.map +1 -0
  823. package/dist/feedback/feedback-dialog.d.ts +186 -101
  824. package/dist/feedback/feedback-dialog.js +8 -18
  825. package/dist/feedback/feedback-dialog.js.map +1 -1
  826. package/dist/feedback/feedback-inbox.d.ts +236 -101
  827. package/dist/feedback/feedback-inbox.js +31 -141
  828. package/dist/feedback/feedback-inbox.js.map +1 -1
  829. package/dist/feedback/feedback-labels.d.ts +83 -101
  830. package/dist/feedback/feedback-labels.js.map +1 -1
  831. package/dist/feedback/feedback-menu-labels.d.ts +2 -0
  832. package/dist/feedback/feedback-menu-labels.js +10 -0
  833. package/dist/feedback/feedback-menu-labels.js.map +1 -0
  834. package/dist/feedback/feedback-menu.d.ts +83 -101
  835. package/dist/feedback/feedback-menu.js +3 -7
  836. package/dist/feedback/feedback-menu.js.map +1 -1
  837. package/dist/feedback/feedback-record.d.ts +239 -101
  838. package/dist/feedback/feedback-record.js +7 -2
  839. package/dist/feedback/feedback-record.js.map +1 -1
  840. package/dist/feedback/feedback-row-detail-labels.d.ts +2 -0
  841. package/dist/feedback/feedback-row-detail-labels.js +31 -0
  842. package/dist/feedback/feedback-row-detail-labels.js.map +1 -0
  843. package/dist/feedback/feedback-row-detail.d.ts +315 -101
  844. package/dist/feedback/feedback-row-detail.js +11 -37
  845. package/dist/feedback/feedback-row-detail.js.map +1 -1
  846. package/dist/feedback/feedback-status-undo.d.ts +66 -101
  847. package/dist/feedback/feedback-status-undo.js.map +1 -1
  848. package/dist/feedback/feedback-submit-dialog.d.ts +39 -0
  849. package/dist/feedback/feedback-submit-dialog.js +66 -0
  850. package/dist/feedback/feedback-submit-dialog.js.map +1 -0
  851. package/dist/feedback/feedback-submit.d.ts +13 -109
  852. package/dist/feedback/feedback-submit.js +19 -40
  853. package/dist/feedback/feedback-submit.js.map +1 -1
  854. package/dist/feedback/feedback-swipe.d.ts +9 -110
  855. package/dist/feedback/feedback-swipe.js +1 -1
  856. package/dist/feedback/feedback-swipe.js.map +1 -1
  857. package/dist/feedback/feedback-table-labels.d.ts +2 -0
  858. package/dist/feedback/feedback-table-labels.js +26 -0
  859. package/dist/feedback/feedback-table-labels.js.map +1 -0
  860. package/dist/feedback/feedback-table.d.ts +314 -101
  861. package/dist/feedback/feedback-table.js +11 -31
  862. package/dist/feedback/feedback-table.js.map +1 -1
  863. package/dist/feedback/feedback-thread-labels.d.ts +3 -0
  864. package/dist/feedback/feedback-thread-labels.js +21 -0
  865. package/dist/feedback/feedback-thread-labels.js.map +1 -0
  866. package/dist/feedback/feedback-thread.d.ts +373 -101
  867. package/dist/feedback/feedback-thread.js +26 -35
  868. package/dist/feedback/feedback-thread.js.map +1 -1
  869. package/dist/feedback/feedback-vocabulary.d.ts +98 -0
  870. package/dist/feedback/feedback-vocabulary.js +143 -0
  871. package/dist/feedback/feedback-vocabulary.js.map +1 -0
  872. package/dist/feedback.d.ts +15 -105
  873. package/dist/hooks/use-anchored-panel.d.ts +77 -15
  874. package/dist/hooks/use-anchored-panel.js +34 -1
  875. package/dist/hooks/use-anchored-panel.js.map +1 -1
  876. package/dist/hooks/use-anchored-rect.d.ts +15 -6
  877. package/dist/hooks/use-anchored-rect.js +2 -1
  878. package/dist/hooks/use-anchored-rect.js.map +1 -1
  879. package/dist/hooks/use-announce.d.ts +4 -6
  880. package/dist/hooks/use-authed-src.d.ts +5 -7
  881. package/dist/hooks/use-authed-src.js +3 -7
  882. package/dist/hooks/use-authed-src.js.map +1 -1
  883. package/dist/hooks/use-body-scroll-lock.d.ts +1 -3
  884. package/dist/hooks/use-breakpoint.d.ts +16 -17
  885. package/dist/hooks/use-breakpoint.js.map +1 -1
  886. package/dist/hooks/use-close-transition.d.ts +8 -8
  887. package/dist/hooks/use-close-transition.js +5 -4
  888. package/dist/hooks/use-close-transition.js.map +1 -1
  889. package/dist/hooks/use-copy-to-clipboard.d.ts +5 -7
  890. package/dist/hooks/use-debounce.d.ts +13 -6
  891. package/dist/hooks/use-debounce.js.map +1 -1
  892. package/dist/hooks/use-dismiss.d.ts +50 -11
  893. package/dist/hooks/use-dismiss.js +80 -9
  894. package/dist/hooks/use-dismiss.js.map +1 -1
  895. package/dist/hooks/use-file-drop.d.ts +8 -110
  896. package/dist/hooks/use-file-drop.js +1 -1
  897. package/dist/hooks/use-file-drop.js.map +1 -1
  898. package/dist/hooks/use-file-picker-labels.d.ts +2 -0
  899. package/dist/hooks/use-file-picker-labels.js +25 -0
  900. package/dist/hooks/use-file-picker-labels.js.map +1 -0
  901. package/dist/hooks/use-file-picker.d.ts +164 -0
  902. package/dist/hooks/use-file-picker.js +149 -0
  903. package/dist/hooks/use-file-picker.js.map +1 -0
  904. package/dist/hooks/use-focus-trap.d.ts +2 -4
  905. package/dist/hooks/use-focus-trap.js +2 -1
  906. package/dist/hooks/use-focus-trap.js.map +1 -1
  907. package/dist/hooks/use-hotkey.d.ts +7 -9
  908. package/dist/hooks/use-large-text.d.ts +3 -5
  909. package/dist/hooks/use-media-query.d.ts +1 -3
  910. package/dist/hooks/use-noindex.d.ts +1 -3
  911. package/dist/hooks/use-overlay-history.d.ts +1 -3
  912. package/dist/hooks/use-row-swipe.d.ts +5 -8
  913. package/dist/hooks/use-search-param-state.d.ts +10 -11
  914. package/dist/hooks/use-windowed-rows.d.ts +4 -7
  915. package/dist/i18n/defaults.d.ts +11 -105
  916. package/dist/i18n/defaults.js +82 -82
  917. package/dist/i18n/defaults.js.map +1 -1
  918. package/dist/i18n/german.d.ts +2 -105
  919. package/dist/i18n/german.js +52 -8
  920. package/dist/i18n/german.js.map +1 -1
  921. package/dist/i18n/kit-labels.d.ts +619 -101
  922. package/dist/i18n/kit-labels.js +22 -97
  923. package/dist/i18n/kit-labels.js.map +1 -1
  924. package/dist/i18n/languages.d.ts +197 -101
  925. package/dist/i18n/locales/de-CH.d.ts +3 -106
  926. package/dist/i18n/locales/en.d.ts +4 -105
  927. package/dist/i18n/locales/en.js +1834 -4
  928. package/dist/i18n/locales/en.js.map +7 -1
  929. package/dist/i18n/locales/es.d.ts +3 -106
  930. package/dist/i18n/locales/es.js +52 -8
  931. package/dist/i18n/locales/es.js.map +1 -1
  932. package/dist/i18n/locales/fr.d.ts +3 -106
  933. package/dist/i18n/locales/fr.js +56 -10
  934. package/dist/i18n/locales/fr.js.map +1 -1
  935. package/dist/i18n/locales/hu.d.ts +3 -106
  936. package/dist/i18n/locales/hu.js +52 -8
  937. package/dist/i18n/locales/hu.js.map +1 -1
  938. package/dist/i18n/locales/it.d.ts +3 -106
  939. package/dist/i18n/locales/it.js +56 -10
  940. package/dist/i18n/locales/it.js.map +1 -1
  941. package/dist/i18n/locales/zh.d.ts +3 -106
  942. package/dist/i18n/locales/zh.js +51 -8
  943. package/dist/i18n/locales/zh.js.map +1 -1
  944. package/dist/i18n/plurals.d.ts +3 -5
  945. package/dist/i18n/review.d.ts +5 -107
  946. package/dist/i18n/review.js +4 -0
  947. package/dist/i18n/review.js.map +1 -1
  948. package/dist/i18n/shared-labels.d.ts +17 -0
  949. package/dist/i18n/shared-labels.js +111 -0
  950. package/dist/i18n/shared-labels.js.map +1 -0
  951. package/dist/i18n/swiss.d.ts +1 -3
  952. package/dist/index.d.ts +330 -249
  953. package/dist/index.js +188 -215
  954. package/dist/index.js.map +1 -1
  955. package/dist/landing/access.d.ts +7 -9
  956. package/dist/landing/access.js.map +1 -1
  957. package/dist/landing/landing-actions.d.ts +9 -109
  958. package/dist/landing/landing-actions.js +1 -1
  959. package/dist/landing/landing-actions.js.map +1 -1
  960. package/dist/landing/landing-labels.d.ts +4 -5
  961. package/dist/landing/landing-labels.js.map +1 -1
  962. package/dist/landing/landing-sections.d.ts +21 -121
  963. package/dist/landing/landing-sections.js +15 -15
  964. package/dist/landing/landing-sections.js.map +1 -1
  965. package/dist/landing/page-seo.d.ts +7 -9
  966. package/dist/landing/public-header.d.ts +10 -111
  967. package/dist/landing/public-header.js +1 -1
  968. package/dist/landing/public-header.js.map +1 -1
  969. package/dist/landing/routing.d.ts +16 -120
  970. package/dist/landing/routing.js +2 -6
  971. package/dist/landing/routing.js.map +1 -1
  972. package/dist/lib/calc.d.ts +7 -9
  973. package/dist/lib/chip-edge-snap.d.ts +10 -0
  974. package/dist/lib/chip-edge-snap.js +131 -0
  975. package/dist/lib/chip-edge-snap.js.map +1 -0
  976. package/dist/lib/clipping.d.ts +2 -4
  977. package/dist/lib/cn.d.ts +2 -5
  978. package/dist/lib/cn.js +6 -1
  979. package/dist/lib/cn.js.map +1 -1
  980. package/dist/lib/column-mapping.d.ts +10 -13
  981. package/dist/lib/countries.d.ts +3 -5
  982. package/dist/lib/dates.d.ts +25 -25
  983. package/dist/lib/dates.js.map +1 -1
  984. package/dist/lib/decimal-marks.d.ts +8 -8
  985. package/dist/lib/decimal-marks.js +1 -1
  986. package/dist/lib/decimal-marks.js.map +1 -1
  987. package/dist/lib/direction.d.ts +4 -6
  988. package/dist/lib/document-navigation.d.ts +1 -3
  989. package/dist/lib/download.d.ts +67 -0
  990. package/dist/lib/download.js +89 -0
  991. package/dist/lib/download.js.map +1 -0
  992. package/dist/lib/floating-stack.d.ts +8 -6
  993. package/dist/lib/floating-stack.js.map +1 -1
  994. package/dist/lib/format.d.ts +24 -23
  995. package/dist/lib/format.js +3 -3
  996. package/dist/lib/format.js.map +1 -1
  997. package/dist/lib/iban.d.ts +9 -11
  998. package/dist/lib/ime.d.ts +17 -0
  999. package/dist/lib/ime.js +13 -0
  1000. package/dist/lib/ime.js.map +1 -0
  1001. package/dist/lib/isin.d.ts +3 -5
  1002. package/dist/lib/logger.d.ts +4 -6
  1003. package/dist/lib/person-name.d.ts +3 -5
  1004. package/dist/lib/phone.d.ts +9 -11
  1005. package/dist/lib/presence.d.ts +15 -0
  1006. package/dist/lib/presence.js +8 -0
  1007. package/dist/lib/presence.js.map +1 -0
  1008. package/dist/lib/qr-encode.d.ts +4 -6
  1009. package/dist/lib/reduced-motion.d.ts +18 -0
  1010. package/dist/lib/reduced-motion.js +9 -0
  1011. package/dist/lib/reduced-motion.js.map +1 -0
  1012. package/dist/lib/refs.d.ts +13 -0
  1013. package/dist/lib/refs.js +15 -0
  1014. package/dist/lib/refs.js.map +1 -0
  1015. package/dist/lib/round.d.ts +22 -0
  1016. package/dist/lib/round.js +15 -0
  1017. package/dist/lib/round.js.map +1 -0
  1018. package/dist/lib/safe-storage.d.ts +14 -4
  1019. package/dist/lib/safe-storage.js +24 -9
  1020. package/dist/lib/safe-storage.js.map +1 -1
  1021. package/dist/lib/server-wake.d.ts +13 -14
  1022. package/dist/lib/session-refresh.d.ts +200 -0
  1023. package/dist/lib/session-refresh.js +187 -0
  1024. package/dist/lib/session-refresh.js.map +1 -0
  1025. package/dist/lib/strip-fade.d.ts +10 -13
  1026. package/dist/lib/table-text.d.ts +14 -16
  1027. package/dist/lib/text-match.d.ts +41 -0
  1028. package/dist/lib/text-match.js +23 -0
  1029. package/dist/lib/text-match.js.map +1 -0
  1030. package/dist/lib/translation-review.d.ts +44 -45
  1031. package/dist/lib/translation-review.js +3 -2
  1032. package/dist/lib/translation-review.js.map +1 -1
  1033. package/dist/rhf/fields.d.ts +131 -197
  1034. package/dist/rhf/fields.js +46 -54
  1035. package/dist/rhf/fields.js.map +1 -1
  1036. package/dist/rhf/form-core.d.ts +154 -0
  1037. package/dist/rhf/form-core.js +143 -0
  1038. package/dist/rhf/form-core.js.map +1 -0
  1039. package/dist/rhf/form.d.ts +9 -175
  1040. package/dist/rhf/form.js +2 -139
  1041. package/dist/rhf/form.js.map +1 -1
  1042. package/dist/rhf/line-items.d.ts +40 -11
  1043. package/dist/rhf/line-items.js.map +1 -1
  1044. package/dist/rhf/use-rhf-wizard-step.d.ts +3 -6
  1045. package/dist/rhf/use-rhf-wizard-step.js.map +1 -1
  1046. package/dist/rhf.d.ts +4 -118
  1047. package/dist/rhf.js.map +1 -1
  1048. package/dist/search/command-palette-labels.d.ts +2 -0
  1049. package/dist/search/command-palette-labels.js +15 -0
  1050. package/dist/search/command-palette-labels.js.map +1 -0
  1051. package/dist/search/command-palette.d.ts +10 -13
  1052. package/dist/search/command-palette.js +25 -44
  1053. package/dist/search/command-palette.js.map +1 -1
  1054. package/dist/search/global-search-labels.d.ts +2 -0
  1055. package/dist/search/global-search-labels.js +12 -0
  1056. package/dist/search/global-search-labels.js.map +1 -0
  1057. package/dist/search/global-search.d.ts +17 -16
  1058. package/dist/search/global-search.js +12 -12
  1059. package/dist/search/global-search.js.map +1 -1
  1060. package/dist/search/search-index.d.ts +13 -14
  1061. package/dist/search/search-index.js +2 -1
  1062. package/dist/search/search-index.js.map +1 -1
  1063. package/dist/search/use-command-key.d.ts +9 -0
  1064. package/dist/search/use-command-key.js +18 -0
  1065. package/dist/search/use-command-key.js.map +1 -0
  1066. package/dist/search.d.ts +3 -4
  1067. package/dist/settings/settings-card-classes.d.ts +11 -0
  1068. package/dist/settings/settings-card-classes.js +8 -0
  1069. package/dist/settings/settings-card-classes.js.map +1 -0
  1070. package/dist/settings/settings-catalogue.d.ts +11 -14
  1071. package/dist/settings/settings-context.d.ts +4 -8
  1072. package/dist/settings/settings-heading.d.ts +8 -12
  1073. package/dist/settings/settings-heading.js +1 -1
  1074. package/dist/settings/settings-heading.js.map +1 -1
  1075. package/dist/settings/settings-labels.d.ts +6 -7
  1076. package/dist/settings/settings-labels.js.map +1 -1
  1077. package/dist/settings/settings-layout.d.ts +36 -13
  1078. package/dist/settings/settings-layout.js +25 -4
  1079. package/dist/settings/settings-layout.js.map +1 -1
  1080. package/dist/settings/settings-section.d.ts +4 -107
  1081. package/dist/settings/settings-section.js +2 -2
  1082. package/dist/settings/settings-section.js.map +1 -1
  1083. package/dist/settings/use-account-appearance.d.ts +11 -16
  1084. package/dist/settings/use-account-language.d.ts +8 -10
  1085. package/dist/settings/use-settings-focus.d.ts +3 -5
  1086. package/dist/settings/use-settings-focus.js +2 -4
  1087. package/dist/settings/use-settings-focus.js.map +1 -1
  1088. package/dist/settings/use-settings-route.d.ts +11 -16
  1089. package/dist/shell/app-shell-labels.d.ts +2 -0
  1090. package/dist/shell/app-shell-labels.js +9 -0
  1091. package/dist/shell/app-shell-labels.js.map +1 -0
  1092. package/dist/shell/app-shell.d.ts +216 -101
  1093. package/dist/shell/app-shell.js +51 -35
  1094. package/dist/shell/app-shell.js.map +1 -1
  1095. package/dist/shell/auth-layout.d.ts +6 -9
  1096. package/dist/shell/auth-layout.js +6 -6
  1097. package/dist/shell/auth-layout.js.map +1 -1
  1098. package/dist/shell/company-switcher-labels.d.ts +2 -0
  1099. package/dist/shell/company-switcher-labels.js +12 -0
  1100. package/dist/shell/company-switcher-labels.js.map +1 -0
  1101. package/dist/shell/company-switcher.d.ts +9 -11
  1102. package/dist/shell/company-switcher.js +3 -9
  1103. package/dist/shell/company-switcher.js.map +1 -1
  1104. package/dist/shell/option-switcher-menu.d.ts +7 -9
  1105. package/dist/shell/option-switcher-menu.js +4 -4
  1106. package/dist/shell/option-switcher-menu.js.map +1 -1
  1107. package/dist/shell/role-switcher.d.ts +3 -7
  1108. package/dist/shell/role-switcher.js +3 -3
  1109. package/dist/shell/role-switcher.js.map +1 -1
  1110. package/dist/shell/top-bar-brand.d.ts +4 -107
  1111. package/dist/shell/top-bar-brand.js +1 -1
  1112. package/dist/shell/top-bar-brand.js.map +1 -1
  1113. package/dist/shell/top-bar.d.ts +6 -9
  1114. package/dist/shell/top-bar.js +1 -1
  1115. package/dist/shell/top-bar.js.map +1 -1
  1116. package/dist/shell/topbar-action-menu.d.ts +18 -31
  1117. package/dist/shell/topbar-action-menu.js +10 -10
  1118. package/dist/shell/topbar-action-menu.js.map +1 -1
  1119. package/dist/shell/topbar-controls.d.ts +14 -21
  1120. package/dist/shell/topbar-controls.js +11 -11
  1121. package/dist/shell/topbar-controls.js.map +1 -1
  1122. package/dist/shell.d.ts +25 -116
  1123. package/dist/shell.js.map +1 -1
  1124. package/dist/table-text.d.ts +1 -1
  1125. package/dist/testing/css-variables.d.ts +4 -6
  1126. package/dist/testing/css-variables.generated.d.ts +2 -4
  1127. package/dist/testing/index.d.ts +2 -1
  1128. package/dist/testing/index.js +11 -1
  1129. package/dist/testing/index.js.map +1 -1
  1130. package/dist/testing/viewport.d.ts +116 -0
  1131. package/dist/testing/viewport.js +203 -0
  1132. package/dist/testing/viewport.js.map +1 -0
  1133. package/dist/theme/chart-palette.d.ts +7 -9
  1134. package/dist/theme/color.d.ts +14 -16
  1135. package/dist/theme/color.js +2 -1
  1136. package/dist/theme/color.js.map +1 -1
  1137. package/dist/theme/contrast-tokens.d.ts +13 -17
  1138. package/dist/theme/contrast.d.ts +22 -27
  1139. package/dist/theme/palette-derive.d.ts +16 -22
  1140. package/dist/theme/palette-derive.js +15 -7
  1141. package/dist/theme/palette-derive.js.map +1 -1
  1142. package/dist/theme/palette-presets.d.ts +18 -15
  1143. package/dist/theme/palette-presets.js +66 -345
  1144. package/dist/theme/palette-presets.js.map +1 -1
  1145. package/dist/theme/palette-store.d.ts +10 -13
  1146. package/dist/theme/text-size.d.ts +21 -26
  1147. package/dist/theme/theme-store.d.ts +9 -14
  1148. package/dist/tour/tour-labels.d.ts +2 -0
  1149. package/dist/tour/tour-labels.js +13 -0
  1150. package/dist/tour/tour-labels.js.map +1 -0
  1151. package/dist/tour/tour.d.ts +12 -14
  1152. package/dist/tour/tour.js +9 -20
  1153. package/dist/tour/tour.js.map +1 -1
  1154. package/dist/tour.d.ts +1 -2
  1155. package/dist/wizard/stepper-nav.d.ts +8 -108
  1156. package/dist/wizard/stepper-nav.js +15 -14
  1157. package/dist/wizard/stepper-nav.js.map +1 -1
  1158. package/dist/wizard/types.d.ts +13 -18
  1159. package/dist/wizard/types.js +2 -24
  1160. package/dist/wizard/types.js.map +1 -1
  1161. package/dist/wizard/use-wizard.d.ts +2 -6
  1162. package/dist/wizard/validation.d.ts +3 -7
  1163. package/dist/wizard/wizard-context.d.ts +7 -11
  1164. package/dist/wizard/wizard-labels.d.ts +4 -0
  1165. package/dist/wizard/wizard-labels.js +24 -0
  1166. package/dist/wizard/wizard-labels.js.map +1 -0
  1167. package/dist/wizard/wizard-step.d.ts +3 -7
  1168. package/dist/wizard/wizard-step.js +2 -2
  1169. package/dist/wizard/wizard-step.js.map +1 -1
  1170. package/dist/wizard/wizard-summary.d.ts +5 -8
  1171. package/dist/wizard/wizard-summary.js +6 -5
  1172. package/dist/wizard/wizard-summary.js.map +1 -1
  1173. package/dist/wizard.d.ts +7 -107
  1174. package/package.json +17 -6
  1175. package/src/account/account-parts.ts +3 -3
  1176. package/src/{components → account}/account-settings-labels.ts +11 -1
  1177. package/src/{components → account}/account-settings.tsx +145 -34
  1178. package/src/account/data-export-setting-labels.ts +20 -0
  1179. package/src/account/data-export-setting.tsx +19 -38
  1180. package/src/account/delete-account-setting-labels.ts +33 -0
  1181. package/src/account/delete-account-setting.tsx +13 -35
  1182. package/src/account/email-change-setting-labels.ts +32 -0
  1183. package/src/account/email-change-setting.tsx +17 -36
  1184. package/src/{components → account}/passkeys-setting.tsx +14 -9
  1185. package/src/account/sessions-setting-labels.ts +24 -0
  1186. package/src/account/sessions-setting.tsx +14 -28
  1187. package/src/admin/admin-action-confirm-labels.ts +19 -0
  1188. package/src/admin/admin-action-confirm.tsx +59 -38
  1189. package/src/admin/admin-action-log-labels.ts +74 -0
  1190. package/src/admin/admin-action-log.tsx +180 -54
  1191. package/src/admin/admin-parts.ts +0 -7
  1192. package/src/admin/invitations-panel-labels.ts +31 -0
  1193. package/src/admin/invitations-panel.tsx +16 -34
  1194. package/src/admin/plan-change-labels.ts +23 -0
  1195. package/src/admin/plan-change.tsx +58 -34
  1196. package/src/admin/reviewer-scope-editor-labels.ts +16 -0
  1197. package/src/admin/reviewer-scope-editor.tsx +9 -15
  1198. package/src/admin/role-select-labels.ts +16 -0
  1199. package/src/admin/role-select.tsx +13 -23
  1200. package/src/admin/transfer-ownership-dialog-labels.ts +20 -0
  1201. package/src/admin/transfer-ownership-dialog.tsx +7 -17
  1202. package/src/admin/user-roster-labels.ts +17 -0
  1203. package/src/admin/user-roster.tsx +9 -17
  1204. package/src/auth/accept-invitation-labels.ts +21 -0
  1205. package/src/auth/accept-invitation.tsx +9 -20
  1206. package/src/auth/auth-errors.ts +29 -13
  1207. package/src/auth/complete-name-dialog-labels.ts +16 -0
  1208. package/src/auth/complete-name-dialog.tsx +8 -13
  1209. package/src/auth/forgot-password-form-labels.ts +20 -0
  1210. package/src/auth/forgot-password-form.tsx +12 -20
  1211. package/src/auth/new-password-fields.tsx +1 -1
  1212. package/src/auth/not-found-page-labels.ts +12 -0
  1213. package/src/auth/not-found-page.tsx +11 -14
  1214. package/src/auth/register-form-labels.ts +31 -0
  1215. package/src/auth/register-form.tsx +18 -38
  1216. package/src/auth/reset-password-form-labels.ts +27 -0
  1217. package/src/auth/reset-password-form.tsx +12 -27
  1218. package/src/auth/sign-in-form-labels.ts +44 -0
  1219. package/src/auth/sign-in-form.tsx +18 -51
  1220. package/src/auth/status-parts.tsx +3 -3
  1221. package/src/auth/verify-email-labels.ts +26 -0
  1222. package/src/auth/verify-email.tsx +15 -30
  1223. package/src/billing/billing-banner.tsx +7 -3
  1224. package/src/billing/billing-labels.ts +1 -1
  1225. package/src/billing/checkout-processing.ts +2 -12
  1226. package/src/billing/plan-card.tsx +26 -27
  1227. package/src/billing/plan-limit-notice.tsx +6 -3
  1228. package/src/billing/subscription-actions.tsx +4 -4
  1229. package/src/chart.ts +9 -1
  1230. package/src/components/account-chips-labels.ts +16 -0
  1231. package/src/components/account-chips.tsx +13 -16
  1232. package/src/components/alert-banner.tsx +39 -19
  1233. package/src/components/amount-input.tsx +458 -406
  1234. package/src/components/appearance-labels.ts +2 -2
  1235. package/src/components/authed-image-labels.ts +11 -0
  1236. package/src/components/authed-image.tsx +6 -8
  1237. package/src/components/autocomplete.tsx +79 -78
  1238. package/src/components/breadcrumbs-labels.ts +10 -0
  1239. package/src/components/breadcrumbs.tsx +17 -14
  1240. package/src/components/bulk-action-bar-labels.ts +11 -0
  1241. package/src/components/bulk-action-bar.tsx +15 -16
  1242. package/src/components/button-group.tsx +7 -7
  1243. package/src/components/button-look.ts +230 -0
  1244. package/src/components/button.tsx +339 -0
  1245. package/src/components/calculator.tsx +14 -12
  1246. package/src/components/calendar-heatmap-labels.ts +15 -0
  1247. package/src/components/calendar-heatmap.tsx +13 -19
  1248. package/src/components/card.tsx +381 -0
  1249. package/src/components/chart-zoom-core.tsx +653 -0
  1250. package/src/components/chart-zoom.tsx +21 -648
  1251. package/src/components/chart.tsx +11 -11
  1252. package/src/components/checkbox-group.tsx +13 -10
  1253. package/src/components/checkbox.tsx +43 -42
  1254. package/src/components/chip-input.tsx +370 -0
  1255. package/src/components/chip-labels.ts +13 -0
  1256. package/src/components/chip.tsx +115 -711
  1257. package/src/components/choice-card.tsx +83 -85
  1258. package/src/components/column-mapper-labels.ts +45 -0
  1259. package/src/components/column-mapper.tsx +16 -51
  1260. package/src/components/combobox-core.tsx +346 -194
  1261. package/src/components/combobox-suggestions.tsx +129 -0
  1262. package/src/components/combobox.tsx +70 -896
  1263. package/src/components/confirm-dialog-labels.ts +13 -0
  1264. package/src/components/confirm-dialog.tsx +4 -8
  1265. package/src/components/copy-button-labels.ts +13 -0
  1266. package/src/components/copy-button.tsx +15 -13
  1267. package/src/components/country-select-labels.ts +11 -0
  1268. package/src/components/country-select.tsx +74 -89
  1269. package/src/components/currency-option-list.tsx +182 -0
  1270. package/src/components/currency-select.tsx +85 -196
  1271. package/src/components/danger-confirm-labels.ts +20 -0
  1272. package/src/components/danger-confirm.tsx +72 -80
  1273. package/src/components/data-table-cells.tsx +5 -5
  1274. package/src/components/data-table-column-settings.tsx +137 -0
  1275. package/src/components/data-table-filter-popover.tsx +51 -25
  1276. package/src/components/data-table-filters.ts +48 -11
  1277. package/src/components/data-table-head.tsx +258 -0
  1278. package/src/components/data-table-labels.ts +21 -71
  1279. package/src/components/data-table-mobile.tsx +594 -0
  1280. package/src/components/data-table-pagination.tsx +11 -10
  1281. package/src/components/data-table-resize.ts +187 -0
  1282. package/src/components/data-table-row-actions.tsx +152 -0
  1283. package/src/components/data-table-selection.ts +55 -0
  1284. package/src/components/data-table-shared.tsx +225 -0
  1285. package/src/components/data-table.tsx +205 -1315
  1286. package/src/components/date-field.tsx +627 -0
  1287. package/src/components/date-picker.tsx +58 -1446
  1288. package/src/components/date-range-picker.tsx +490 -0
  1289. package/src/components/description-list-labels.ts +9 -0
  1290. package/src/components/description-list.tsx +31 -15
  1291. package/src/components/dialog-frame-labels.ts +7 -0
  1292. package/src/components/dialog-frame.tsx +11 -7
  1293. package/src/components/disclosure.tsx +14 -14
  1294. package/src/components/dropdown.tsx +129 -43
  1295. package/src/components/empty-state.tsx +137 -0
  1296. package/src/components/entity-combobox.tsx +18 -13
  1297. package/src/components/error-boundary-labels.ts +20 -0
  1298. package/src/components/error-boundary.tsx +10 -20
  1299. package/src/components/facing-pair.ts +1 -1
  1300. package/src/components/field-base.tsx +604 -0
  1301. package/src/components/field-parts.tsx +192 -77
  1302. package/src/components/field-strip.tsx +12 -33
  1303. package/src/components/field-sync-labels.ts +13 -0
  1304. package/src/components/field-sync.tsx +8 -16
  1305. package/src/components/field.tsx +17 -15
  1306. package/src/components/file-button.tsx +64 -412
  1307. package/src/components/file-dropzone.tsx +36 -33
  1308. package/src/components/floating-panel-labels.ts +10 -0
  1309. package/src/components/floating-panel.tsx +32 -21
  1310. package/src/components/focus-ring.ts +9 -4
  1311. package/src/components/form-actions-labels.ts +11 -0
  1312. package/src/components/form-actions.tsx +17 -21
  1313. package/src/components/full-bleed-dialog.tsx +28 -25
  1314. package/src/components/grouped-picker.tsx +118 -96
  1315. package/src/components/help-popover.tsx +115 -0
  1316. package/src/components/hover-menu.tsx +45 -38
  1317. package/src/components/iban-input-labels.ts +15 -0
  1318. package/src/components/iban-input.tsx +25 -20
  1319. package/src/components/icon-button.tsx +945 -0
  1320. package/src/components/icon-picker-labels.ts +13 -0
  1321. package/src/components/icon-picker.tsx +27 -24
  1322. package/src/components/image-grid-labels.ts +11 -0
  1323. package/src/components/image-grid.tsx +13 -15
  1324. package/src/components/inline-edit-field-labels.ts +11 -0
  1325. package/src/components/inline-edit-field.tsx +20 -19
  1326. package/src/components/inline-entity-combobox.tsx +789 -0
  1327. package/src/components/input.tsx +380 -0
  1328. package/src/components/jump-calendar.tsx +385 -0
  1329. package/src/components/language-select.tsx +31 -16
  1330. package/src/components/legal-labels.ts +99 -0
  1331. package/src/components/legal-page.tsx +2 -2
  1332. package/src/components/legal.tsx +11 -101
  1333. package/src/components/lightbox-labels.ts +18 -0
  1334. package/src/components/lightbox.tsx +13 -21
  1335. package/src/components/line-items-labels.ts +14 -0
  1336. package/src/components/line-items.tsx +24 -31
  1337. package/src/components/list-labels.ts +10 -0
  1338. package/src/components/list.tsx +98 -75
  1339. package/src/components/loading-state.tsx +4 -4
  1340. package/src/components/measured-grid-labels.ts +25 -0
  1341. package/src/components/measured-grid.tsx +39 -62
  1342. package/src/components/menu-item.tsx +29 -26
  1343. package/src/components/mini-calendar-labels.ts +17 -0
  1344. package/src/components/mini-calendar.tsx +38 -45
  1345. package/src/components/modal.tsx +49 -20
  1346. package/src/components/money-draft.ts +72 -0
  1347. package/src/components/money-field.tsx +16 -30
  1348. package/src/components/month-picker-labels.ts +22 -0
  1349. package/src/components/month-picker.tsx +59 -45
  1350. package/src/components/multi-entity-combobox.tsx +17 -12
  1351. package/src/components/multi-select.tsx +300 -292
  1352. package/src/components/nav-pills.tsx +19 -8
  1353. package/src/components/number-field.tsx +7 -5
  1354. package/src/components/number-input.tsx +69 -99
  1355. package/src/components/numeric-field.ts +161 -0
  1356. package/src/components/numpad-sheet.tsx +16 -16
  1357. package/src/components/one-time-code-input.tsx +154 -169
  1358. package/src/components/page-contents-labels.ts +9 -0
  1359. package/src/components/page-contents.tsx +15 -15
  1360. package/src/components/page-header.tsx +9 -5
  1361. package/src/components/password-strength-labels.ts +23 -0
  1362. package/src/components/password-strength.tsx +13 -27
  1363. package/src/components/phone-input-labels.ts +10 -0
  1364. package/src/components/phone-input.tsx +42 -57
  1365. package/src/components/picker-sheet.tsx +47 -18
  1366. package/src/components/pie-chart.tsx +11 -9
  1367. package/src/components/popover-labels.ts +14 -0
  1368. package/src/components/popover.tsx +36 -37
  1369. package/src/components/progress-bar-labels.ts +10 -0
  1370. package/src/components/progress-bar.tsx +32 -23
  1371. package/src/components/qr-code.tsx +2 -2
  1372. package/src/components/reauth-dialog-labels.ts +13 -0
  1373. package/src/components/reauth-dialog.tsx +7 -10
  1374. package/src/components/row-actions-labels.ts +10 -0
  1375. package/src/components/row-actions.tsx +11 -10
  1376. package/src/components/scroll-area.tsx +4 -10
  1377. package/src/components/search-field.tsx +35 -49
  1378. package/src/components/select.tsx +302 -0
  1379. package/src/components/separator.tsx +2 -2
  1380. package/src/components/series-chart-axes.ts +329 -0
  1381. package/src/components/series-chart-thin.ts +180 -0
  1382. package/src/components/series-chart.tsx +125 -326
  1383. package/src/components/server-wake-labels.ts +11 -0
  1384. package/src/components/server-wake.tsx +39 -66
  1385. package/src/components/settings-fields.tsx +50 -19
  1386. package/src/components/share-card-labels.ts +30 -0
  1387. package/src/components/share-card.tsx +22 -37
  1388. package/src/components/sign-chip-labels.ts +12 -0
  1389. package/src/components/sign-chip.tsx +6 -9
  1390. package/src/components/signature-pad-labels.ts +24 -0
  1391. package/src/components/signature-pad.tsx +48 -57
  1392. package/src/components/signed-amount-labels.ts +10 -0
  1393. package/src/components/signed-amount.tsx +21 -22
  1394. package/src/components/skeleton.tsx +1 -1
  1395. package/src/components/slider.tsx +51 -39
  1396. package/src/components/sparkline-labels.ts +14 -0
  1397. package/src/components/sparkline.tsx +16 -21
  1398. package/src/components/spinner.tsx +81 -0
  1399. package/src/components/stat-tile-labels.ts +15 -0
  1400. package/src/components/stat-tile.tsx +39 -38
  1401. package/src/components/status-dot.tsx +17 -14
  1402. package/src/components/swatch-picker-labels.ts +10 -0
  1403. package/src/components/swatch-picker.tsx +23 -16
  1404. package/src/components/swipeable-row.tsx +17 -39
  1405. package/src/components/switch.tsx +33 -32
  1406. package/src/components/table.tsx +15 -15
  1407. package/src/components/tabs.tsx +660 -0
  1408. package/src/components/text-link.tsx +7 -7
  1409. package/src/components/text.tsx +10 -6
  1410. package/src/components/textarea.tsx +323 -0
  1411. package/src/components/tile-radio.tsx +6 -6
  1412. package/src/components/time-input.tsx +15 -7
  1413. package/src/components/toast-labels.ts +12 -0
  1414. package/src/components/toast.tsx +5 -8
  1415. package/src/components/toggle-group.tsx +105 -42
  1416. package/src/components/toggle-legend.tsx +6 -6
  1417. package/src/components/tooltip.tsx +47 -27
  1418. package/src/components/translation-review-editor.tsx +8 -7
  1419. package/src/components/translation-review-parts.tsx +9 -13
  1420. package/src/components/translation-review.tsx +50 -20
  1421. package/src/components/tree-view.tsx +14 -12
  1422. package/src/components/ui-labels.ts +22 -0
  1423. package/src/components/use-table-state.ts +91 -10
  1424. package/src/components/user-avatar.tsx +5 -5
  1425. package/src/components/wizard-stepper.tsx +7 -6
  1426. package/src/components/write-lock-labels.ts +9 -0
  1427. package/src/components/write-lock.tsx +10 -12
  1428. package/src/currencies.ts +70 -0
  1429. package/src/data-table.ts +4 -0
  1430. package/src/demo/demo-banner.tsx +16 -27
  1431. package/src/demo/demo-ended.tsx +8 -7
  1432. package/src/demo/demo-labels.ts +2 -2
  1433. package/src/demo/demo-start.tsx +7 -5
  1434. package/src/eslint/index.ts +161 -0
  1435. package/src/eslint/role-utilities.generated.ts +146 -0
  1436. package/src/eslint/role-utilities.ts +99 -0
  1437. package/src/feedback/feedback-attachment-labels.ts +36 -0
  1438. package/src/feedback/feedback-attachment.tsx +42 -66
  1439. package/src/feedback/feedback-context-labels.ts +10 -0
  1440. package/src/feedback/feedback-context.tsx +8 -9
  1441. package/src/feedback/feedback-dialog-labels.ts +28 -0
  1442. package/src/feedback/feedback-dialog.tsx +14 -44
  1443. package/src/feedback/feedback-inbox.tsx +49 -252
  1444. package/src/feedback/feedback-labels.ts +5 -5
  1445. package/src/feedback/feedback-menu-labels.ts +11 -0
  1446. package/src/feedback/feedback-menu.tsx +13 -11
  1447. package/src/feedback/feedback-record.ts +21 -7
  1448. package/src/feedback/feedback-row-detail-labels.ts +33 -0
  1449. package/src/feedback/feedback-row-detail.tsx +30 -43
  1450. package/src/feedback/feedback-status-undo.ts +3 -2
  1451. package/src/feedback/feedback-submit-dialog.tsx +109 -0
  1452. package/src/feedback/feedback-submit.tsx +45 -55
  1453. package/src/feedback/feedback-swipe.tsx +1 -1
  1454. package/src/feedback/feedback-table-labels.ts +27 -0
  1455. package/src/feedback/feedback-table.tsx +24 -40
  1456. package/src/feedback/feedback-thread-labels.ts +22 -0
  1457. package/src/feedback/feedback-thread.tsx +46 -50
  1458. package/src/feedback/feedback-vocabulary.ts +252 -0
  1459. package/src/hooks/use-anchored-panel.ts +102 -2
  1460. package/src/hooks/use-anchored-rect.ts +11 -9
  1461. package/src/hooks/use-authed-src.ts +13 -7
  1462. package/src/hooks/use-breakpoint.ts +5 -4
  1463. package/src/hooks/use-close-transition.ts +9 -10
  1464. package/src/hooks/use-debounce.ts +9 -0
  1465. package/src/hooks/use-dismiss.ts +210 -18
  1466. package/src/hooks/use-file-drop.ts +2 -2
  1467. package/src/hooks/use-file-picker-labels.ts +29 -0
  1468. package/src/hooks/use-file-picker.tsx +363 -0
  1469. package/src/hooks/use-focus-trap.ts +19 -6
  1470. package/src/i18n/defaults.ts +91 -82
  1471. package/src/i18n/german.ts +50 -6
  1472. package/src/i18n/kit-labels.tsx +85 -124
  1473. package/src/i18n/locales/en.ts +46 -0
  1474. package/src/i18n/locales/es.ts +50 -6
  1475. package/src/i18n/locales/fr.ts +55 -9
  1476. package/src/i18n/locales/hu.ts +50 -6
  1477. package/src/i18n/locales/it.ts +54 -8
  1478. package/src/i18n/locales/zh.ts +49 -6
  1479. package/src/i18n/review.ts +4 -0
  1480. package/src/i18n/shared-labels.ts +135 -0
  1481. package/src/index.ts +414 -404
  1482. package/src/landing/access.ts +2 -1
  1483. package/src/landing/landing-actions.tsx +6 -5
  1484. package/src/landing/landing-labels.ts +2 -2
  1485. package/src/landing/landing-sections.tsx +24 -23
  1486. package/src/landing/public-header.tsx +3 -2
  1487. package/src/landing/routing.tsx +2 -7
  1488. package/src/lib/chip-edge-snap.ts +212 -0
  1489. package/src/lib/cn.ts +13 -1
  1490. package/src/lib/dates.ts +4 -2
  1491. package/src/lib/decimal-marks.ts +4 -2
  1492. package/src/lib/download.ts +172 -0
  1493. package/src/lib/floating-stack.ts +5 -1
  1494. package/src/lib/format.ts +5 -3
  1495. package/src/lib/ime.ts +24 -0
  1496. package/src/lib/presence.ts +18 -0
  1497. package/src/lib/reduced-motion.ts +21 -0
  1498. package/src/lib/refs.ts +22 -0
  1499. package/src/lib/round.ts +38 -0
  1500. package/src/lib/safe-storage.ts +35 -11
  1501. package/src/lib/session-refresh.ts +473 -0
  1502. package/src/lib/text-match.ts +60 -0
  1503. package/src/lib/translation-review.ts +7 -6
  1504. package/src/rhf/fields.tsx +141 -189
  1505. package/src/rhf/form-core.tsx +328 -0
  1506. package/src/rhf/form.tsx +9 -320
  1507. package/src/rhf/line-items.tsx +2 -2
  1508. package/src/rhf/use-rhf-wizard-step.ts +4 -4
  1509. package/src/rhf.ts +4 -2
  1510. package/src/search/command-palette-labels.ts +16 -0
  1511. package/src/search/command-palette.tsx +37 -50
  1512. package/src/search/global-search-labels.ts +13 -0
  1513. package/src/search/global-search.tsx +50 -24
  1514. package/src/search/search-index.ts +5 -6
  1515. package/src/search/use-command-key.ts +22 -0
  1516. package/src/settings/settings-card-classes.ts +11 -0
  1517. package/src/settings/settings-heading.tsx +1 -1
  1518. package/src/settings/settings-labels.ts +2 -2
  1519. package/src/settings/settings-layout.tsx +65 -6
  1520. package/src/settings/settings-section.tsx +5 -5
  1521. package/src/settings/use-settings-focus.ts +2 -5
  1522. package/src/shell/app-shell-labels.ts +10 -0
  1523. package/src/shell/app-shell.tsx +79 -53
  1524. package/src/shell/auth-layout.tsx +11 -10
  1525. package/src/shell/company-switcher-labels.ts +13 -0
  1526. package/src/shell/company-switcher.tsx +7 -11
  1527. package/src/shell/option-switcher-menu.tsx +7 -5
  1528. package/src/shell/role-switcher.tsx +4 -4
  1529. package/src/shell/top-bar-brand.tsx +1 -1
  1530. package/src/shell/top-bar.tsx +6 -5
  1531. package/src/shell/topbar-action-menu.tsx +21 -19
  1532. package/src/shell/topbar-controls.tsx +15 -15
  1533. package/src/shell.ts +1 -1
  1534. package/src/testing/index.ts +13 -0
  1535. package/src/testing/viewport.ts +357 -0
  1536. package/src/theme/color.ts +7 -1
  1537. package/src/theme/palette-derive.ts +29 -7
  1538. package/src/theme/palette-presets.ts +82 -355
  1539. package/src/tour/tour-labels.ts +14 -0
  1540. package/src/tour/tour.tsx +13 -23
  1541. package/src/wizard/stepper-nav.tsx +19 -18
  1542. package/src/wizard/types.ts +3 -26
  1543. package/src/wizard/wizard-labels.ts +29 -0
  1544. package/src/wizard/wizard-step.tsx +2 -2
  1545. package/src/wizard/wizard-summary.tsx +8 -7
  1546. package/tokens.css +45 -14
  1547. package/dist/components/account-settings-labels.js.map +0 -1
  1548. package/dist/components/account-settings.js.map +0 -1
  1549. package/dist/components/choice-parts.d.ts +0 -24
  1550. package/dist/components/choice-parts.js +0 -18
  1551. package/dist/components/choice-parts.js.map +0 -1
  1552. package/dist/components/passkeys-setting.js.map +0 -1
  1553. package/dist/components/ui.d.ts +0 -101
  1554. package/dist/components/ui.js +0 -1955
  1555. package/dist/components/ui.js.map +0 -1
  1556. package/dist/data-table-labels-BJ5JE_X2.d.ts +0 -923
  1557. package/dist/delete-account-setting-DAgGBrbn.d.ts +0 -8167
  1558. package/src/components/choice-parts.ts +0 -33
  1559. package/src/components/ui.tsx +0 -4233
@@ -0,0 +1,28 @@
1
+ "use client";
2
+ import { englishRateLimited } from "./auth-errors.js";
3
+ const DEFAULT_REGISTER_LABELS = {
4
+ firstName: "First name",
5
+ lastName: "Last name",
6
+ email: "Email",
7
+ emailTagUse: (address) => `Use ${address}`,
8
+ emailTagHint: "Many providers deliver name+tag@\u2026 to the same inbox, so mail from this app is easy to filter and trace. Check yours does before you rely on it: you would sign in with the tagged address.",
9
+ invitedEmailHint: "The address your invitation was sent to.",
10
+ invitedTagNote: "The tagged address gets a confirmation mail of its own.",
11
+ password: "Password",
12
+ confirmPassword: "Repeat password",
13
+ passwordMismatch: "The passwords don't match.",
14
+ language: "Language",
15
+ submit: "Create account",
16
+ haveAccount: "Already have an account?",
17
+ signIn: "Sign in",
18
+ emailTaken: "An account with this email address already exists.",
19
+ registrationClosed: "New accounts are by invitation only. Ask the operator to invite your email address.",
20
+ invitationInvalid: "This invitation link is not valid.",
21
+ invitationExpired: "This invitation has expired. Ask for a new one.",
22
+ failed: "Registration failed. Please try again.",
23
+ rateLimited: englishRateLimited
24
+ };
25
+ export {
26
+ DEFAULT_REGISTER_LABELS
27
+ };
28
+ //# sourceMappingURL=register-form-labels.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/auth/register-form-labels.ts"],"sourcesContent":["// The English words of ./register-form, in a module with no component code: the English\n// catalogue (src/i18n/defaults.ts) imports them without the component, so `en` loads as one\n// chunk like the other languages (0.34, KS U8). ./register-form re-exports them.\n\nimport { englishRateLimited } from \"./auth-errors\";\nimport type { RegisterLabels } from \"./register-form\";\n\n/** `Required`: every key, the 0.30 one included, has its English here. */\nexport const DEFAULT_REGISTER_LABELS: Required<RegisterLabels> = {\n firstName: \"First name\",\n lastName: \"Last name\",\n email: \"Email\",\n emailTagUse: (address) => `Use ${address}`,\n emailTagHint:\n \"Many providers deliver name+tag@… to the same inbox, so mail from this app is easy to filter and trace. Check yours does before you rely on it: you would sign in with the tagged address.\",\n invitedEmailHint: \"The address your invitation was sent to.\",\n invitedTagNote: \"The tagged address gets a confirmation mail of its own.\",\n password: \"Password\",\n confirmPassword: \"Repeat password\",\n passwordMismatch: \"The passwords don't match.\",\n language: \"Language\",\n submit: \"Create account\",\n haveAccount: \"Already have an account?\",\n signIn: \"Sign in\",\n emailTaken: \"An account with this email address already exists.\",\n registrationClosed: \"New accounts are by invitation only. Ask the operator to invite your email address.\",\n invitationInvalid: \"This invitation link is not valid.\",\n invitationExpired: \"This invitation has expired. Ask for a new one.\",\n failed: \"Registration failed. Please try again.\",\n rateLimited: englishRateLimited,\n};\n"],"mappings":";AAIA,SAAS,0BAA0B;AAI5B,MAAM,0BAAoD;AAAA,EAC/D,WAAW;AAAA,EACX,UAAU;AAAA,EACV,OAAO;AAAA,EACP,aAAa,CAAC,YAAY,OAAO,OAAO;AAAA,EACxC,cACE;AAAA,EACF,kBAAkB;AAAA,EAClB,gBAAgB;AAAA,EAChB,UAAU;AAAA,EACV,iBAAiB;AAAA,EACjB,kBAAkB;AAAA,EAClB,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,aAAa;AAAA,EACb,QAAQ;AAAA,EACR,YAAY;AAAA,EACZ,oBAAoB;AAAA,EACpB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,QAAQ;AAAA,EACR,aAAa;AACf;","names":[]}
@@ -1,101 +1,174 @@
1
- import 'react';
2
- export { cM as DEFAULT_REGISTER_LABELS, eF as RegisterForm, eG as RegisterFormProps, eH as RegisterLabels, eI as RegisterValues } from '../delete-account-setting-DAgGBrbn.js';
3
- import '../components/tooltip.js';
4
- import '../hooks/use-anchored-rect.js';
5
- import '../lib/clipping.js';
6
- import '../data-table-labels-BJ5JE_X2.js';
7
- import '../components/data-table-sort.js';
8
- import '../components/swipeable-row.js';
9
- import '../components/status-dot.js';
10
- import '../components/progress-bar.js';
11
- import '../components/signed-amount.js';
12
- import '../components/stat-tile.js';
13
- import '../components/chip.js';
14
- import 'lucide-react';
15
- import '../components/field-parts.js';
16
- import '../components/write-lock.js';
17
- import '../components/mini-calendar.js';
18
- import '../components/calendar-heatmap.js';
19
- import '../components/popover.js';
20
- import '../hooks/use-breakpoint.js';
21
- import '../components/field-sync.js';
22
- import '../wizard/types.js';
23
- import '../tour/tour.js';
24
- import '../search/command-palette.js';
25
- import '../search/global-search.js';
26
- import '../search/search-index.js';
27
- import '../components/month-picker.js';
28
- import '../components/page-contents.js';
29
- import '../components/series-chart-labels.js';
30
- import '../components/pie-chart-labels.js';
31
- import '../components/sparkline.js';
32
- import '../components/signature-pad.js';
33
- import '../components/password-strength.js';
34
- import '../components/swatch-picker.js';
35
- import '../components/tile-radio.js';
36
- import '../components/icon-picker.js';
37
- import '../components/dialog-frame.js';
38
- import '../components/modal.js';
39
- import '../hooks/use-search-param-state.js';
40
- import '../components/measured-grid.js';
41
- import '../components/user-avatar.js';
42
- import '../lib/person-name.js';
43
- import '../shell/topbar-action-menu.js';
44
- import '../components/menu-item.js';
45
- import '../components/floating-panel.js';
46
- import '../hooks/use-authed-src.js';
47
- import '../components/account-settings-labels.js';
48
- import '../components/bulk-action-bar.js';
49
- import '../components/list.js';
50
- import '../components/breadcrumbs.js';
51
- import '../components/toast.js';
52
- import '../components/description-list.js';
53
- import '../components/line-items.js';
54
- import '../components/error-boundary.js';
55
- import '../components/authed-image.js';
56
- import '../components/image-grid.js';
57
- import '../components/lightbox.js';
58
- import './sign-in-form.js';
59
- import '../landing/access.js';
60
- import '../landing/landing-labels.js';
61
- import '../shell/topbar-controls.js';
62
- import '../theme/palette-presets.js';
63
- import '../theme/chart-palette.js';
64
- import '../theme/theme-store.js';
65
- import 'zustand/middleware';
66
- import 'zustand';
67
- import './complete-name-dialog.js';
68
- import './forgot-password-form.js';
69
- import './status-parts.js';
70
- import './reset-password-form.js';
71
- import './verify-email.js';
72
- import './not-found-page.js';
73
- import './accept-invitation.js';
74
- import '../shell/company-switcher.js';
75
- import '../account/email-change-setting.js';
76
- import '../account/sessions-setting.js';
77
- import '../lib/format.js';
78
- import '../account/data-export-setting.js';
79
- import '../components/account-chips.js';
80
- import '../admin/admin-parts.js';
81
- import '../admin/admin-action-log.js';
82
- import '../settings/settings-labels.js';
83
- import '../demo/demo-labels.js';
84
- import '../i18n/plurals.js';
85
- import '../components/appearance-labels.js';
86
- import '../theme/contrast.js';
87
- import '../theme/text-size.js';
88
- import '../components/reauth-dialog.js';
89
- import '../components/server-wake.js';
90
- import '../lib/server-wake.js';
91
- import '../components/translation-review-labels.js';
92
- import '../lib/translation-review.js';
93
- import '../components/country-select.js';
94
- import '../components/inline-edit-field.js';
95
- import '../lib/iban.js';
96
- import '../lib/phone.js';
97
- import '../components/sign-chip.js';
98
- import '../components/column-mapper.js';
99
- import '../lib/column-mapping.js';
100
- import '../lib/table-text.js';
101
- import '../components/focus-ring.js';
1
+ import type { ComponentPropsWithRef, ReactNode } from "react";
2
+ import { type LabelOverride } from "../i18n/kit-labels.js";
3
+ import type { KitLanguageCode } from "../i18n/languages.js";
4
+ import { DEFAULT_REGISTER_LABELS } from "./register-form-labels.js";
5
+ /** What `RegisterForm` hands `onSubmit` — the core of `POST /auth/register` (§4.2). The
6
+ * app adds its own fields (kastlan's company, keksdose's currency) and the
7
+ * `invite_token` it read from the URL. */
8
+ export interface RegisterValues {
9
+ /** Trimmed, 1–120 characters. */
10
+ firstName: string;
11
+ /** Trimmed, 1–120 characters. */
12
+ lastName: string;
13
+ /** Trimmed. Lower-casing is the server's (§3.1); a tag is never stripped (§4.5). */
14
+ email: string;
15
+ /** As typed: at least 8 characters, at most 72 bytes. */
16
+ password: string;
17
+ /** The language picked — one of `languages` — for every mail to the user (§3.1). */
18
+ locale: KitLanguageCode;
19
+ }
20
+ /**
21
+ * Every string `RegisterForm` renders — the `register` namespace of `<UiKitProvider
22
+ * labels>`, overridable per instance through `labels`. keksdose's words where it has
23
+ * them. The terms checkbox speaks `legal.accept`, the strength meter `passwordStrength`.
24
+ */
25
+ export interface RegisterLabels {
26
+ firstName: string;
27
+ lastName: string;
28
+ email: string;
29
+ /** The address-tag button (§4.5), given the exact address it would use — and, with an
30
+ * invitation, the button back to the invited address. */
31
+ emailTagUse: (address: string) => string;
32
+ /** The line after the address-tag button. */
33
+ emailTagHint: string;
34
+ /** Under an invited (read-only) email field. */
35
+ invitedEmailHint: string;
36
+ /** Once the invitee took the tagged address: it is not the invited one, so it is
37
+ * confirmed by a mail of its own (§4.3). */
38
+ invitedTagNote: string;
39
+ password: string;
40
+ confirmPassword: string;
41
+ passwordMismatch: string;
42
+ language: string;
43
+ /** The submit button. */
44
+ submit: string;
45
+ /** Before the link to `signInHref`. */
46
+ haveAccount: string;
47
+ /** The link to `signInHref`. */
48
+ signIn: string;
49
+ /** `email_taken`, under the email field. */
50
+ emailTaken: string;
51
+ /** `registration_closed` — the gate refused the address (§4.3). */
52
+ registrationClosed: string;
53
+ /** `invitation_invalid` — the invitation link is unknown or spent. */
54
+ invitationInvalid: string;
55
+ /** `invitation_expired`. */
56
+ invitationExpired: string;
57
+ /** Any other failure. */
58
+ failed: string;
59
+ /** 0.30.0: the request was throttled — HTTP 429 ({@link isRateLimited}) — given the
60
+ * `Retry-After` wait in seconds, or `undefined` without one. OPTIONAL, like every key
61
+ * added to a shipped interface (an annotated call site must keep compiling); the
62
+ * provider's `register`, then English, fill it. */
63
+ rateLimited?: (seconds?: number) => string;
64
+ }
65
+ export { DEFAULT_REGISTER_LABELS };
66
+ export interface RegisterFormProps extends Omit<ComponentPropsWithRef<"div">, "onSubmit" | "children"> {
67
+ /**
68
+ * The form was submitted with everything filled in. Send it (`POST /auth/register`,
69
+ * §4.2) and resolve once the user is signed in, or reject with the client's error:
70
+ * `email_taken` shows under the email field, `registration_closed` and the
71
+ * invitation codes above the button, anything else as "Registration failed". The form
72
+ * never sends a request itself (§8): keksdose must see the password on its way.
73
+ *
74
+ * On resolve the form stays busy while the app navigates.
75
+ */
76
+ onSubmit: (values: RegisterValues) => Promise<unknown>;
77
+ /**
78
+ * The app's address tag (`"kastlan"`, §4.5). Once the email is plausible, a button
79
+ * under it offers the tagged address — "Use ada+kastlan@example.com" — with a line on
80
+ * why; one click puts it in the field. Never applied on its own. Left out, no offer.
81
+ */
82
+ emailTag?: string;
83
+ /**
84
+ * The address of the invitation this sign-up comes from (§4.4): the field starts with
85
+ * it and is read-only. With `emailTag`, the invitee may still take the tagged form of
86
+ * it — the server accepts exactly that variant — and go back.
87
+ */
88
+ invitedEmail?: string;
89
+ /**
90
+ * 0.30.0: an address to start with that stays EDITABLE, with the `+tag` suggestion still
91
+ * offered — for a link anyone can build (keksdose's token-free `/register?email=…`
92
+ * beta link, kept while an app moves to invitations). Unlike `invitedEmail` it proves
93
+ * nothing, so it locks nothing. `invitedEmail` wins when both are given.
94
+ */
95
+ defaultEmail?: string;
96
+ /**
97
+ * The language field's value — controlled. Pass the app's UI language
98
+ * (`i18n.resolvedLanguage`) with `onLocaleChange` switching it, and the field IS the
99
+ * app's language switch, with no copy of its own to drift from a second switcher on
100
+ * the page (keksdose's register page has one in its header). Any tag; it shows (and
101
+ * submits) the offered code it resolves to. Left out, the form keeps its own, starting
102
+ * from `defaultLocale`, else the provider's language, else the browser's.
103
+ */
104
+ locale?: string;
105
+ /** The uncontrolled language field's start value. */
106
+ defaultLocale?: string;
107
+ /** A language was picked. */
108
+ onLocaleChange?: (code: KitLanguageCode) => void;
109
+ /** The languages to offer, in order. Default all seven. */
110
+ languages?: readonly KitLanguageCode[];
111
+ /**
112
+ * The app's own language field in place of the kit's select — keksdose's
113
+ * `LanguageSetting` bound to its i18n. `null` draws none (an app with one language);
114
+ * the submitted `locale` is then `locale`'s.
115
+ */
116
+ languageField?: ReactNode;
117
+ /** Above the form — keksdose's closed-beta banner. */
118
+ aboveForm?: ReactNode;
119
+ /** Under the email field and its tag offer — an app's own hint. */
120
+ underEmail?: ReactNode;
121
+ /** The app's sign-up fields (§4.1 item 7): kastlan's Company, keksdose's reporting
122
+ * currency. Their values are the app's; say whether they are complete with
123
+ * `appFieldsComplete`. */
124
+ appFields?: ReactNode;
125
+ /** After the app fields, before the terms — keksdose's privacy-mode note. */
126
+ afterFields?: ReactNode;
127
+ /** Whether the app fields are filled in as required — kastlan's Company without an
128
+ * invitation. The submit waits for it. Default `true`. */
129
+ appFieldsComplete?: boolean;
130
+ /** The terms checkbox's links. Default `/terms` and `/privacy`. */
131
+ termsHref?: string;
132
+ privacyHref?: string;
133
+ /** "Already have an account? Sign in" goes here — `/login`. Left out, no line. */
134
+ signInHref?: string;
135
+ /** The app's own words for a failure the kit cannot know (the device offline, a
136
+ * throttle with its wait), or `undefined` for the kit's. Asked first, for every
137
+ * failure; a bare `429` needs none since 0.30.0 — the kit says `rateLimited`. */
138
+ describeError?: (error: unknown) => ReactNode | undefined;
139
+ labels?: LabelOverride<RegisterLabels>;
140
+ }
141
+ /**
142
+ * Sign-up for every app (docs/auth-harmonization.md §4.1, §8): first and last name,
143
+ * email with the address-tag offer, password with the strength meter and its
144
+ * confirmation, language, the app's own fields in a slot, and the terms. keksdose's
145
+ * `RegisterPage` (features/auth/register-page.tsx) with its slots made props.
146
+ *
147
+ * **It never sends a request.** `onSubmit` gets the values; what the request carries
148
+ * besides them (kastlan's company, keksdose's currency, the `invite_token`) is the
149
+ * app's, as are the role and the associations, which never come from the form (§4.3).
150
+ *
151
+ * **The submit waits for a complete form**: both names (1–120 characters after
152
+ * trimming), a plausible address, a password of at least 8 characters and at most 72
153
+ * bytes, the same password again, the terms ticked, and `appFieldsComplete`. Nothing
154
+ * else is a rule — the strength checklist is advice (keksdose #124), and the kit adds
155
+ * none of its own (§8). So there is never a failed attempt for a missing field, and no
156
+ * field error to show for one.
157
+ *
158
+ * **The address tag** (§4.5) is offered under the email field as one click with the
159
+ * exact result on the button, never applied: sub-addressing is a convention the
160
+ * receiving server may or may not implement, and a silent rewrite would send the
161
+ * verification mail down a path nobody checked. With an invitation the field is fixed
162
+ * to the invited address; the invitee may still take its tagged form, and is told it
163
+ * will be confirmed by a mail of its own (§4.3).
164
+ *
165
+ * **Refusals** are read by code ({@link authErrorCode}): `email_taken` under the email
166
+ * field, which takes the focus; `registration_closed`, `invitation_invalid` and
167
+ * `invitation_expired` above the button; anything else as "Registration failed", unless
168
+ * `describeError` has the app's words.
169
+ *
170
+ * Laid out for a 390 px phone: the names sit side by side only where the form is at
171
+ * least 20rem wide (a container query), which the narrow `AuthLayout` card is on a
172
+ * desktop and a phone is not.
173
+ */
174
+ export declare function RegisterForm({ onSubmit, emailTag, invitedEmail, defaultEmail, locale: localeProp, defaultLocale, onLocaleChange, languages, languageField, aboveForm, underEmail, appFields, afterFields, appFieldsComplete, termsHref, privacyHref, signInHref, describeError, labels: labelsProp, className, ...rest }: RegisterFormProps): import("react").JSX.Element;
@@ -5,37 +5,17 @@ import { useKitLabels, useKitLocale } from "../i18n/kit-labels.js";
5
5
  import { KIT_LANGUAGES, resolveLanguage } from "../i18n/languages.js";
6
6
  import { cn } from "../lib/cn.js";
7
7
  import { AlertBanner } from "../components/alert-banner.js";
8
- import { hasMessage } from "../components/choice-parts.js";
8
+ import { hasContent } from "../lib/presence.js";
9
9
  import { LanguageSelect } from "../components/language-select.js";
10
10
  import { LegalAcceptCheckbox } from "../components/legal-page.js";
11
11
  import { TextLink } from "../components/text-link.js";
12
- import { Button, Input } from "../components/ui.js";
13
- import { authErrorCode, englishRateLimited, isRateLimited, retryAfterSeconds } from "./auth-errors.js";
12
+ import { Button } from "../components/button.js";
13
+ import { Input } from "../components/input.js";
14
+ import { authErrorCode, isRateLimited, retryAfterSeconds } from "./auth-errors.js";
14
15
  import { emailParts, taggedEmail } from "./email-tag.js";
15
16
  import { newPasswordProblem, personNameOk, PERSON_NAME_MAX_LENGTH } from "./form-rules.js";
16
17
  import { NewPasswordFields } from "./new-password-fields.js";
17
- const DEFAULT_REGISTER_LABELS = {
18
- firstName: "First name",
19
- lastName: "Last name",
20
- email: "Email",
21
- emailTagUse: (address) => `Use ${address}`,
22
- emailTagHint: "Many providers deliver name+tag@\u2026 to the same inbox, so mail from this app is easy to filter and trace. Check yours does before you rely on it: you would sign in with the tagged address.",
23
- invitedEmailHint: "The address your invitation was sent to.",
24
- invitedTagNote: "The tagged address gets a confirmation mail of its own.",
25
- password: "Password",
26
- confirmPassword: "Repeat password",
27
- passwordMismatch: "The passwords don't match.",
28
- language: "Language",
29
- submit: "Create account",
30
- haveAccount: "Already have an account?",
31
- signIn: "Sign in",
32
- emailTaken: "An account with this email address already exists.",
33
- registrationClosed: "New accounts are by invitation only. Ask the operator to invite your email address.",
34
- invitationInvalid: "This invitation link is not valid.",
35
- invitationExpired: "This invitation has expired. Ask for a new one.",
36
- failed: "Registration failed. Please try again.",
37
- rateLimited: englishRateLimited
38
- };
18
+ import { DEFAULT_REGISTER_LABELS } from "./register-form-labels.js";
39
19
  const ALL_CODES = KIT_LANGUAGES.map((language) => language.code);
40
20
  function browserLanguages() {
41
21
  if (typeof navigator === "undefined") return [];
@@ -125,13 +105,13 @@ function RegisterForm({
125
105
  setBusy(null);
126
106
  const own = describeError?.(error);
127
107
  const code = authErrorCode(error);
128
- if (code === "email_taken" && !hasMessage(own)) {
108
+ if (code === "email_taken" && !hasContent(own)) {
129
109
  setTaken(values.email);
130
110
  emailRef.current?.focus();
131
111
  return;
132
112
  }
133
113
  setFailure(
134
- hasMessage(own) ? own : isRateLimited(error) ? (labels.rateLimited ?? DEFAULT_REGISTER_LABELS.rateLimited)(retryAfterSeconds(error)) : code === "registration_closed" ? labels.registrationClosed : code === "invitation_invalid" ? labels.invitationInvalid : code === "invitation_expired" ? labels.invitationExpired : labels.failed
114
+ hasContent(own) ? own : isRateLimited(error) ? (labels.rateLimited ?? DEFAULT_REGISTER_LABELS.rateLimited)(retryAfterSeconds(error)) : code === "registration_closed" ? labels.registrationClosed : code === "invitation_invalid" ? labels.invitationInvalid : code === "invitation_expired" ? labels.invitationExpired : labels.failed
135
115
  );
136
116
  }
137
117
  );
@@ -184,7 +164,7 @@ function RegisterForm({
184
164
  required: true
185
165
  }
186
166
  ),
187
- suggestion && /* @__PURE__ */ jsxs("p", { className: "mt-1 text-xs text-[var(--text-muted)]", children: [
167
+ suggestion && /* @__PURE__ */ jsxs("p", { className: "mt-1 text-xs text-muted", children: [
188
168
  /* @__PURE__ */ jsx(
189
169
  Button,
190
170
  {
@@ -201,7 +181,7 @@ function RegisterForm({
201
181
  " ",
202
182
  /* @__PURE__ */ jsx("span", { id: tagHintId, children: labels.emailTagHint })
203
183
  ] }),
204
- backToInvited !== null && /* @__PURE__ */ jsxs("p", { className: "mt-1 text-xs text-[var(--text-muted)]", children: [
184
+ backToInvited !== null && /* @__PURE__ */ jsxs("p", { className: "mt-1 text-xs text-muted", children: [
205
185
  /* @__PURE__ */ jsx("span", { children: labels.invitedTagNote }),
206
186
  " ",
207
187
  /* @__PURE__ */ jsx(
@@ -253,10 +233,10 @@ function RegisterForm({
253
233
  disabled: working
254
234
  }
255
235
  ),
256
- hasMessage(failure) && /* @__PURE__ */ jsx(AlertBanner, { tone: "danger", size: "sm", role: "alert", children: failure }),
236
+ hasContent(failure) && /* @__PURE__ */ jsx(AlertBanner, { tone: "danger", size: "sm", role: "alert", children: failure }),
257
237
  /* @__PURE__ */ jsx(Button, { type: "submit", className: "w-full", disabled: !working && !canSubmit, pending: working, children: labels.submit })
258
238
  ] }),
259
- signInHref !== void 0 && /* @__PURE__ */ jsxs("p", { className: "text-center text-sm text-[var(--text-secondary)]", children: [
239
+ signInHref !== void 0 && /* @__PURE__ */ jsxs("p", { className: "text-center text-sm text-secondary", children: [
260
240
  labels.haveAccount,
261
241
  " ",
262
242
  /* @__PURE__ */ jsx(TextLink, { href: signInHref, tone: "primary", children: labels.signIn })
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/auth/register-form.tsx"],"sourcesContent":["import { useEffect, useId, useRef, useState } from \"react\";\nimport type { ComponentPropsWithoutRef, FormEvent, ReactNode } from \"react\";\n\nimport { useKitLabels, useKitLocale } from \"../i18n/kit-labels\";\nimport { KIT_LANGUAGES, resolveLanguage } from \"../i18n/languages\";\nimport type { KitLanguageCode } from \"../i18n/languages\";\nimport { cn } from \"../lib/cn\";\nimport { AlertBanner } from \"../components/alert-banner\";\nimport { hasMessage } from \"../components/choice-parts\";\nimport { LanguageSelect } from \"../components/language-select\";\nimport { LegalAcceptCheckbox } from \"../components/legal-page\";\nimport { TextLink } from \"../components/text-link\";\nimport { Button, Input } from \"../components/ui\";\nimport { authErrorCode, englishRateLimited, isRateLimited, retryAfterSeconds } from \"./auth-errors\";\nimport { emailParts, taggedEmail } from \"./email-tag\";\nimport { newPasswordProblem, personNameOk, PERSON_NAME_MAX_LENGTH } from \"./form-rules\";\nimport { NewPasswordFields } from \"./new-password-fields\";\n\n/** What `RegisterForm` hands `onSubmit` — the core of `POST /auth/register` (§4.2). The\n * app adds its own fields (kastlan's company, keksdose's currency) and the\n * `invite_token` it read from the URL. */\nexport interface RegisterValues {\n /** Trimmed, 1–120 characters. */\n firstName: string;\n /** Trimmed, 1–120 characters. */\n lastName: string;\n /** Trimmed. Lower-casing is the server's (§3.1); a tag is never stripped (§4.5). */\n email: string;\n /** As typed: at least 8 characters, at most 72 bytes. */\n password: string;\n /** The language picked — one of `languages` — for every mail to the user (§3.1). */\n locale: KitLanguageCode;\n}\n\n/**\n * Every string `RegisterForm` renders — the `register` namespace of `<UiKitProvider\n * labels>`, overridable per instance through `labels`. keksdose's words where it has\n * them. The terms checkbox speaks `legal.accept`, the strength meter `passwordStrength`.\n */\nexport interface RegisterLabels {\n firstName: string;\n lastName: string;\n email: string;\n /** The address-tag button (§4.5), given the exact address it would use — and, with an\n * invitation, the button back to the invited address. */\n emailTagUse: (address: string) => string;\n /** The line after the address-tag button. */\n emailTagHint: string;\n /** Under an invited (read-only) email field. */\n invitedEmailHint: string;\n /** Once the invitee took the tagged address: it is not the invited one, so it is\n * confirmed by a mail of its own (§4.3). */\n invitedTagNote: string;\n password: string;\n confirmPassword: string;\n passwordMismatch: string;\n language: string;\n /** The submit button. */\n submit: string;\n /** Before the link to `signInHref`. */\n haveAccount: string;\n /** The link to `signInHref`. */\n signIn: string;\n /** `email_taken`, under the email field. */\n emailTaken: string;\n /** `registration_closed` — the gate refused the address (§4.3). */\n registrationClosed: string;\n /** `invitation_invalid` — the invitation link is unknown or spent. */\n invitationInvalid: string;\n /** `invitation_expired`. */\n invitationExpired: string;\n /** Any other failure. */\n failed: string;\n /** 0.30.0: the request was throttled — HTTP 429 ({@link isRateLimited}) — given the\n * `Retry-After` wait in seconds, or `undefined` without one. OPTIONAL, like every key\n * added to a shipped interface (an annotated call site must keep compiling); the\n * provider's `register`, then English, fill it. */\n rateLimited?: (seconds?: number) => string;\n}\n\n/** `Required`: every key, the 0.30 one included, has its English here. */\nexport const DEFAULT_REGISTER_LABELS: Required<RegisterLabels> = {\n firstName: \"First name\",\n lastName: \"Last name\",\n email: \"Email\",\n emailTagUse: (address) => `Use ${address}`,\n emailTagHint:\n \"Many providers deliver name+tag@… to the same inbox, so mail from this app is easy to filter and trace. Check yours does before you rely on it: you would sign in with the tagged address.\",\n invitedEmailHint: \"The address your invitation was sent to.\",\n invitedTagNote: \"The tagged address gets a confirmation mail of its own.\",\n password: \"Password\",\n confirmPassword: \"Repeat password\",\n passwordMismatch: \"The passwords don't match.\",\n language: \"Language\",\n submit: \"Create account\",\n haveAccount: \"Already have an account?\",\n signIn: \"Sign in\",\n emailTaken: \"An account with this email address already exists.\",\n registrationClosed: \"New accounts are by invitation only. Ask the operator to invite your email address.\",\n invitationInvalid: \"This invitation link is not valid.\",\n invitationExpired: \"This invitation has expired. Ask for a new one.\",\n failed: \"Registration failed. Please try again.\",\n rateLimited: englishRateLimited,\n};\n\nexport interface RegisterFormProps extends Omit<ComponentPropsWithoutRef<\"div\">, \"onSubmit\" | \"children\"> {\n /**\n * The form was submitted with everything filled in. Send it (`POST /auth/register`,\n * §4.2) and resolve once the user is signed in, or reject with the client's error:\n * `email_taken` shows under the email field, `registration_closed` and the\n * invitation codes above the button, anything else as \"Registration failed\". The form\n * never sends a request itself (§8): keksdose must see the password on its way.\n *\n * On resolve the form stays busy while the app navigates.\n */\n onSubmit: (values: RegisterValues) => Promise<unknown>;\n /**\n * The app's address tag (`\"kastlan\"`, §4.5). Once the email is plausible, a button\n * under it offers the tagged address — \"Use ada+kastlan@example.com\" — with a line on\n * why; one click puts it in the field. Never applied on its own. Left out, no offer.\n */\n emailTag?: string;\n /**\n * The address of the invitation this sign-up comes from (§4.4): the field starts with\n * it and is read-only. With `emailTag`, the invitee may still take the tagged form of\n * it — the server accepts exactly that variant — and go back.\n */\n invitedEmail?: string;\n /**\n * 0.29.1: an address to start with that stays EDITABLE, with the `+tag` suggestion still\n * offered — for a link anyone can build (keksdose's token-free `/register?email=…`\n * beta link, kept while an app moves to invitations). Unlike `invitedEmail` it proves\n * nothing, so it locks nothing. `invitedEmail` wins when both are given.\n */\n defaultEmail?: string;\n /**\n * The language field's value — controlled. Pass the app's UI language\n * (`i18n.resolvedLanguage`) with `onLocaleChange` switching it, and the field IS the\n * app's language switch, with no copy of its own to drift from a second switcher on\n * the page (keksdose's register page has one in its header). Any tag; it shows (and\n * submits) the offered code it resolves to. Left out, the form keeps its own, starting\n * from `defaultLocale`, else the provider's language, else the browser's.\n */\n locale?: string;\n /** The uncontrolled language field's start value. */\n defaultLocale?: string;\n /** A language was picked. */\n onLocaleChange?: (code: KitLanguageCode) => void;\n /** The languages to offer, in order. Default all seven. */\n languages?: readonly KitLanguageCode[];\n /**\n * The app's own language field in place of the kit's select — keksdose's\n * `LanguageSetting` bound to its i18n. `null` draws none (an app with one language);\n * the submitted `locale` is then `locale`'s.\n */\n languageField?: ReactNode;\n /** Above the form — keksdose's closed-beta banner. */\n aboveForm?: ReactNode;\n /** Under the email field and its tag offer — an app's own hint. */\n underEmail?: ReactNode;\n /** The app's sign-up fields (§4.1 item 7): kastlan's Company, keksdose's reporting\n * currency. Their values are the app's; say whether they are complete with\n * `appFieldsComplete`. */\n appFields?: ReactNode;\n /** After the app fields, before the terms — keksdose's privacy-mode note. */\n afterFields?: ReactNode;\n /** Whether the app fields are filled in as required — kastlan's Company without an\n * invitation. The submit waits for it. Default `true`. */\n appFieldsComplete?: boolean;\n /** The terms checkbox's links. Default `/terms` and `/privacy`. */\n termsHref?: string;\n privacyHref?: string;\n /** \"Already have an account? Sign in\" goes here — `/login`. Left out, no line. */\n signInHref?: string;\n /** The app's own words for a failure the kit cannot know (the device offline, a\n * throttle with its wait), or `undefined` for the kit's. Asked first, for every\n * failure; a bare `429` needs none since 0.30.0 — the kit says `rateLimited`. */\n describeError?: (error: unknown) => ReactNode | undefined;\n labels?: Partial<RegisterLabels>;\n}\n\nconst ALL_CODES: readonly KitLanguageCode[] = KIT_LANGUAGES.map((language) => language.code);\n\n/** The browser's languages, in its order — absent outside a browser. */\nfunction browserLanguages(): readonly string[] {\n if (typeof navigator === \"undefined\") return [];\n return navigator.languages?.length ? navigator.languages : [navigator.language];\n}\n\ntype Busy = \"sending\" | \"done\" | null;\n\n/**\n * Sign-up for every app (docs/auth-harmonization.md §4.1, §8): first and last name,\n * email with the address-tag offer, password with the strength meter and its\n * confirmation, language, the app's own fields in a slot, and the terms. keksdose's\n * `RegisterPage` (features/auth/register-page.tsx) with its slots made props.\n *\n * **It never sends a request.** `onSubmit` gets the values; what the request carries\n * besides them (kastlan's company, keksdose's currency, the `invite_token`) is the\n * app's, as are the role and the associations, which never come from the form (§4.3).\n *\n * **The submit waits for a complete form**: both names (1–120 characters after\n * trimming), a plausible address, a password of at least 8 characters and at most 72\n * bytes, the same password again, the terms ticked, and `appFieldsComplete`. Nothing\n * else is a rule — the strength checklist is advice (keksdose #124), and the kit adds\n * none of its own (§8). So there is never a failed attempt for a missing field, and no\n * field error to show for one.\n *\n * **The address tag** (§4.5) is offered under the email field as one click with the\n * exact result on the button, never applied: sub-addressing is a convention the\n * receiving server may or may not implement, and a silent rewrite would send the\n * verification mail down a path nobody checked. With an invitation the field is fixed\n * to the invited address; the invitee may still take its tagged form, and is told it\n * will be confirmed by a mail of its own (§4.3).\n *\n * **Refusals** are read by code ({@link authErrorCode}): `email_taken` under the email\n * field, which takes the focus; `registration_closed`, `invitation_invalid` and\n * `invitation_expired` above the button; anything else as \"Registration failed\", unless\n * `describeError` has the app's words.\n *\n * Laid out for a 390 px phone: the names sit side by side only where the form is at\n * least 20rem wide (a container query), which the narrow `AuthLayout` card is on a\n * desktop and a phone is not.\n */\nexport function RegisterForm({\n onSubmit,\n emailTag,\n invitedEmail,\n defaultEmail,\n locale: localeProp,\n defaultLocale,\n onLocaleChange,\n languages = ALL_CODES,\n languageField,\n aboveForm,\n underEmail,\n appFields,\n afterFields,\n appFieldsComplete = true,\n termsHref,\n privacyHref,\n signInHref,\n describeError,\n labels: labelsProp,\n className,\n ...rest\n}: RegisterFormProps) {\n const labels = useKitLabels(\"register\", DEFAULT_REGISTER_LABELS, labelsProp);\n const kitLocale = useKitLocale();\n const invited = invitedEmail !== undefined;\n const [firstName, setFirstName] = useState(\"\");\n const [lastName, setLastName] = useState(\"\");\n const [email, setEmail] = useState(invitedEmail ?? defaultEmail ?? \"\");\n const [password, setPassword] = useState(\"\");\n const [confirm, setConfirm] = useState(\"\");\n const [ownLocale, setOwnLocale] = useState<string>(\n () => defaultLocale ?? resolveLanguage([kitLocale, ...browserLanguages()], languages),\n );\n const [accepted, setAccepted] = useState(false);\n const [busy, setBusy] = useState<Busy>(null);\n // `email_taken` belongs to the address it was answered for; another one clears it.\n const [taken, setTaken] = useState<string | null>(null);\n const [failure, setFailure] = useState<ReactNode>(null);\n const emailRef = useRef<HTMLInputElement>(null);\n const tagHintId = useId();\n\n const mounted = useRef(true);\n useEffect(() => {\n mounted.current = true;\n return () => {\n mounted.current = false;\n };\n }, []);\n\n // What the field shows is what is submitted: the offered code the value resolves to.\n const locale = resolveLanguage([localeProp ?? ownLocale], languages);\n const changeLocale = (code: KitLanguageCode) => {\n if (localeProp === undefined) setOwnLocale(code);\n onLocaleChange?.(code);\n };\n\n const working = busy !== null;\n const suggestion = emailTag ? taggedEmail(email, emailTag) : null;\n // The invitee took the tagged address: offer the way back to the invited one.\n const backToInvited =\n invitedEmail !== undefined && email.trim() !== invitedEmail.trim() ? invitedEmail.trim() : null;\n const canSubmit =\n personNameOk(firstName) &&\n personNameOk(lastName) &&\n emailParts(email) !== null &&\n newPasswordProblem(password, confirm) === null &&\n accepted &&\n appFieldsComplete;\n\n const submit = (e: FormEvent) => {\n e.preventDefault();\n if (!canSubmit || working) return;\n const values: RegisterValues = {\n firstName: firstName.trim(),\n lastName: lastName.trim(),\n email: email.trim(),\n password,\n locale,\n };\n setBusy(\"sending\");\n setFailure(null);\n setTaken(null);\n let result: Promise<unknown>;\n try {\n result = Promise.resolve(onSubmit(values));\n } catch (error) {\n result = Promise.reject(error);\n }\n result.then(\n () => {\n if (mounted.current) setBusy(\"done\");\n },\n (error: unknown) => {\n if (!mounted.current) return;\n setBusy(null);\n const own = describeError?.(error);\n const code = authErrorCode(error);\n if (code === \"email_taken\" && !hasMessage(own)) {\n setTaken(values.email);\n emailRef.current?.focus();\n return;\n }\n setFailure(\n hasMessage(own)\n ? own\n : isRateLimited(error)\n ? (labels.rateLimited ?? DEFAULT_REGISTER_LABELS.rateLimited)(retryAfterSeconds(error))\n : code === \"registration_closed\"\n ? labels.registrationClosed\n : code === \"invitation_invalid\"\n ? labels.invitationInvalid\n : code === \"invitation_expired\"\n ? labels.invitationExpired\n : labels.failed,\n );\n },\n );\n };\n\n return (\n <div {...rest} className={cn(\"@container space-y-4\", className)}>\n {aboveForm}\n <form className=\"space-y-3\" noValidate onSubmit={submit}>\n <div className=\"grid gap-3 @xs:grid-cols-2\">\n <Input\n name=\"given-name\"\n autoComplete=\"given-name\"\n label={labels.firstName}\n value={firstName}\n onChange={(e) => setFirstName(e.target.value)}\n maxLength={PERSON_NAME_MAX_LENGTH}\n readOnly={working}\n required\n />\n <Input\n name=\"family-name\"\n autoComplete=\"family-name\"\n label={labels.lastName}\n value={lastName}\n onChange={(e) => setLastName(e.target.value)}\n maxLength={PERSON_NAME_MAX_LENGTH}\n readOnly={working}\n required\n />\n </div>\n\n <div>\n <Input\n ref={emailRef}\n type=\"email\"\n name=\"email\"\n autoComplete=\"email\"\n label={labels.email}\n value={email}\n onChange={(e) => setEmail(e.target.value)}\n readOnly={invited || working}\n hint={invited ? labels.invitedEmailHint : undefined}\n error={taken !== null && taken === email.trim() ? labels.emailTaken : undefined}\n required\n />\n {/* The tag, offered rather than applied (§4.5): one click, the exact address\n on the button, reversible by typing — or, invited, by the button back. */}\n {suggestion && (\n <p className=\"mt-1 text-xs text-[var(--text-muted)]\">\n <Button\n type=\"button\"\n variant=\"link\"\n size=\"sm\"\n className=\"h-auto p-0 align-baseline\"\n disabled={working}\n aria-describedby={tagHintId}\n onClick={() => setEmail(suggestion)}\n >\n {labels.emailTagUse(suggestion)}\n </Button>{\" \"}\n <span id={tagHintId}>{labels.emailTagHint}</span>\n </p>\n )}\n {backToInvited !== null && (\n <p className=\"mt-1 text-xs text-[var(--text-muted)]\">\n <span>{labels.invitedTagNote}</span>{\" \"}\n <Button\n type=\"button\"\n variant=\"link\"\n size=\"sm\"\n className=\"h-auto p-0 align-baseline\"\n disabled={working}\n onClick={() => setEmail(backToInvited)}\n >\n {labels.emailTagUse(backToInvited)}\n </Button>\n </p>\n )}\n {underEmail}\n </div>\n\n <NewPasswordFields\n password={password}\n confirm={confirm}\n onPasswordChange={setPassword}\n onConfirmChange={setConfirm}\n busy={working}\n text={{ password: labels.password, confirm: labels.confirmPassword, mismatch: labels.passwordMismatch }}\n />\n\n {languageField === undefined ? (\n <LanguageSelect\n name=\"locale\"\n label={labels.language}\n value={locale}\n codes={languages}\n onChange={changeLocale}\n disabled={working}\n />\n ) : (\n languageField\n )}\n\n {appFields}\n {afterFields}\n\n {/* The kit's terms checkbox (legal contract §3.4). Never an error: an unticked\n box keeps the submit disabled, so there is no failed attempt to explain. */}\n <LegalAcceptCheckbox\n checked={accepted}\n onCheckedChange={setAccepted}\n termsHref={termsHref}\n privacyHref={privacyHref}\n disabled={working}\n />\n\n {hasMessage(failure) && (\n <AlertBanner tone=\"danger\" size=\"sm\" role=\"alert\">\n {failure}\n </AlertBanner>\n )}\n\n <Button type=\"submit\" className=\"w-full\" disabled={!working && !canSubmit} pending={working}>\n {labels.submit}\n </Button>\n </form>\n {signInHref !== undefined && (\n <p className=\"text-center text-sm text-[var(--text-secondary)]\">\n {labels.haveAccount}{\" \"}\n <TextLink href={signInHref} tone=\"primary\">\n {labels.signIn}\n </TextLink>\n </p>\n )}\n </div>\n );\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../src/auth/register-form.tsx"],"sourcesContent":["import { useEffect, useId, useRef, useState } from \"react\";\nimport type { ComponentPropsWithRef, FormEvent, ReactNode } from \"react\";\n\nimport { useKitLabels, useKitLocale, type LabelOverride } from \"../i18n/kit-labels\";\nimport { KIT_LANGUAGES, resolveLanguage } from \"../i18n/languages\";\nimport type { KitLanguageCode } from \"../i18n/languages\";\nimport { cn } from \"../lib/cn\";\nimport { AlertBanner } from \"../components/alert-banner\";\nimport { hasContent } from \"../lib/presence\";\nimport { LanguageSelect } from \"../components/language-select\";\nimport { LegalAcceptCheckbox } from \"../components/legal-page\";\nimport { TextLink } from \"../components/text-link\";\nimport { Button } from \"../components/button\";\nimport { Input } from \"../components/input\";\nimport { authErrorCode, isRateLimited, retryAfterSeconds } from \"./auth-errors\";\nimport { emailParts, taggedEmail } from \"./email-tag\";\nimport { newPasswordProblem, personNameOk, PERSON_NAME_MAX_LENGTH } from \"./form-rules\";\nimport { NewPasswordFields } from \"./new-password-fields\";\nimport { DEFAULT_REGISTER_LABELS } from \"./register-form-labels\";\n\n/** What `RegisterForm` hands `onSubmit` — the core of `POST /auth/register` (§4.2). The\n * app adds its own fields (kastlan's company, keksdose's currency) and the\n * `invite_token` it read from the URL. */\nexport interface RegisterValues {\n /** Trimmed, 1–120 characters. */\n firstName: string;\n /** Trimmed, 1–120 characters. */\n lastName: string;\n /** Trimmed. Lower-casing is the server's (§3.1); a tag is never stripped (§4.5). */\n email: string;\n /** As typed: at least 8 characters, at most 72 bytes. */\n password: string;\n /** The language picked — one of `languages` — for every mail to the user (§3.1). */\n locale: KitLanguageCode;\n}\n\n/**\n * Every string `RegisterForm` renders — the `register` namespace of `<UiKitProvider\n * labels>`, overridable per instance through `labels`. keksdose's words where it has\n * them. The terms checkbox speaks `legal.accept`, the strength meter `passwordStrength`.\n */\nexport interface RegisterLabels {\n firstName: string;\n lastName: string;\n email: string;\n /** The address-tag button (§4.5), given the exact address it would use — and, with an\n * invitation, the button back to the invited address. */\n emailTagUse: (address: string) => string;\n /** The line after the address-tag button. */\n emailTagHint: string;\n /** Under an invited (read-only) email field. */\n invitedEmailHint: string;\n /** Once the invitee took the tagged address: it is not the invited one, so it is\n * confirmed by a mail of its own (§4.3). */\n invitedTagNote: string;\n password: string;\n confirmPassword: string;\n passwordMismatch: string;\n language: string;\n /** The submit button. */\n submit: string;\n /** Before the link to `signInHref`. */\n haveAccount: string;\n /** The link to `signInHref`. */\n signIn: string;\n /** `email_taken`, under the email field. */\n emailTaken: string;\n /** `registration_closed` — the gate refused the address (§4.3). */\n registrationClosed: string;\n /** `invitation_invalid` — the invitation link is unknown or spent. */\n invitationInvalid: string;\n /** `invitation_expired`. */\n invitationExpired: string;\n /** Any other failure. */\n failed: string;\n /** 0.30.0: the request was throttled — HTTP 429 ({@link isRateLimited}) — given the\n * `Retry-After` wait in seconds, or `undefined` without one. OPTIONAL, like every key\n * added to a shipped interface (an annotated call site must keep compiling); the\n * provider's `register`, then English, fill it. */\n rateLimited?: (seconds?: number) => string;\n}\n\n// Defined in ./register-form-labels, which holds no component code (0.34, KS U8).\nexport { DEFAULT_REGISTER_LABELS };\n\nexport interface RegisterFormProps extends Omit<ComponentPropsWithRef<\"div\">, \"onSubmit\" | \"children\"> {\n /**\n * The form was submitted with everything filled in. Send it (`POST /auth/register`,\n * §4.2) and resolve once the user is signed in, or reject with the client's error:\n * `email_taken` shows under the email field, `registration_closed` and the\n * invitation codes above the button, anything else as \"Registration failed\". The form\n * never sends a request itself (§8): keksdose must see the password on its way.\n *\n * On resolve the form stays busy while the app navigates.\n */\n onSubmit: (values: RegisterValues) => Promise<unknown>;\n /**\n * The app's address tag (`\"kastlan\"`, §4.5). Once the email is plausible, a button\n * under it offers the tagged address — \"Use ada+kastlan@example.com\" — with a line on\n * why; one click puts it in the field. Never applied on its own. Left out, no offer.\n */\n emailTag?: string;\n /**\n * The address of the invitation this sign-up comes from (§4.4): the field starts with\n * it and is read-only. With `emailTag`, the invitee may still take the tagged form of\n * it — the server accepts exactly that variant — and go back.\n */\n invitedEmail?: string;\n /**\n * 0.30.0: an address to start with that stays EDITABLE, with the `+tag` suggestion still\n * offered — for a link anyone can build (keksdose's token-free `/register?email=…`\n * beta link, kept while an app moves to invitations). Unlike `invitedEmail` it proves\n * nothing, so it locks nothing. `invitedEmail` wins when both are given.\n */\n defaultEmail?: string;\n /**\n * The language field's value — controlled. Pass the app's UI language\n * (`i18n.resolvedLanguage`) with `onLocaleChange` switching it, and the field IS the\n * app's language switch, with no copy of its own to drift from a second switcher on\n * the page (keksdose's register page has one in its header). Any tag; it shows (and\n * submits) the offered code it resolves to. Left out, the form keeps its own, starting\n * from `defaultLocale`, else the provider's language, else the browser's.\n */\n locale?: string;\n /** The uncontrolled language field's start value. */\n defaultLocale?: string;\n /** A language was picked. */\n onLocaleChange?: (code: KitLanguageCode) => void;\n /** The languages to offer, in order. Default all seven. */\n languages?: readonly KitLanguageCode[];\n /**\n * The app's own language field in place of the kit's select — keksdose's\n * `LanguageSetting` bound to its i18n. `null` draws none (an app with one language);\n * the submitted `locale` is then `locale`'s.\n */\n languageField?: ReactNode;\n /** Above the form — keksdose's closed-beta banner. */\n aboveForm?: ReactNode;\n /** Under the email field and its tag offer — an app's own hint. */\n underEmail?: ReactNode;\n /** The app's sign-up fields (§4.1 item 7): kastlan's Company, keksdose's reporting\n * currency. Their values are the app's; say whether they are complete with\n * `appFieldsComplete`. */\n appFields?: ReactNode;\n /** After the app fields, before the terms — keksdose's privacy-mode note. */\n afterFields?: ReactNode;\n /** Whether the app fields are filled in as required — kastlan's Company without an\n * invitation. The submit waits for it. Default `true`. */\n appFieldsComplete?: boolean;\n /** The terms checkbox's links. Default `/terms` and `/privacy`. */\n termsHref?: string;\n privacyHref?: string;\n /** \"Already have an account? Sign in\" goes here — `/login`. Left out, no line. */\n signInHref?: string;\n /** The app's own words for a failure the kit cannot know (the device offline, a\n * throttle with its wait), or `undefined` for the kit's. Asked first, for every\n * failure; a bare `429` needs none since 0.30.0 — the kit says `rateLimited`. */\n describeError?: (error: unknown) => ReactNode | undefined;\n labels?: LabelOverride<RegisterLabels>;\n}\n\nconst ALL_CODES: readonly KitLanguageCode[] = KIT_LANGUAGES.map((language) => language.code);\n\n/** The browser's languages, in its order — absent outside a browser. */\nfunction browserLanguages(): readonly string[] {\n if (typeof navigator === \"undefined\") return [];\n return navigator.languages?.length ? navigator.languages : [navigator.language];\n}\n\ntype Busy = \"sending\" | \"done\" | null;\n\n/**\n * Sign-up for every app (docs/auth-harmonization.md §4.1, §8): first and last name,\n * email with the address-tag offer, password with the strength meter and its\n * confirmation, language, the app's own fields in a slot, and the terms. keksdose's\n * `RegisterPage` (features/auth/register-page.tsx) with its slots made props.\n *\n * **It never sends a request.** `onSubmit` gets the values; what the request carries\n * besides them (kastlan's company, keksdose's currency, the `invite_token`) is the\n * app's, as are the role and the associations, which never come from the form (§4.3).\n *\n * **The submit waits for a complete form**: both names (1–120 characters after\n * trimming), a plausible address, a password of at least 8 characters and at most 72\n * bytes, the same password again, the terms ticked, and `appFieldsComplete`. Nothing\n * else is a rule — the strength checklist is advice (keksdose #124), and the kit adds\n * none of its own (§8). So there is never a failed attempt for a missing field, and no\n * field error to show for one.\n *\n * **The address tag** (§4.5) is offered under the email field as one click with the\n * exact result on the button, never applied: sub-addressing is a convention the\n * receiving server may or may not implement, and a silent rewrite would send the\n * verification mail down a path nobody checked. With an invitation the field is fixed\n * to the invited address; the invitee may still take its tagged form, and is told it\n * will be confirmed by a mail of its own (§4.3).\n *\n * **Refusals** are read by code ({@link authErrorCode}): `email_taken` under the email\n * field, which takes the focus; `registration_closed`, `invitation_invalid` and\n * `invitation_expired` above the button; anything else as \"Registration failed\", unless\n * `describeError` has the app's words.\n *\n * Laid out for a 390 px phone: the names sit side by side only where the form is at\n * least 20rem wide (a container query), which the narrow `AuthLayout` card is on a\n * desktop and a phone is not.\n */\nexport function RegisterForm({\n onSubmit,\n emailTag,\n invitedEmail,\n defaultEmail,\n locale: localeProp,\n defaultLocale,\n onLocaleChange,\n languages = ALL_CODES,\n languageField,\n aboveForm,\n underEmail,\n appFields,\n afterFields,\n appFieldsComplete = true,\n termsHref,\n privacyHref,\n signInHref,\n describeError,\n labels: labelsProp,\n className,\n ...rest\n}: RegisterFormProps) {\n const labels = useKitLabels(\"register\", DEFAULT_REGISTER_LABELS, labelsProp);\n const kitLocale = useKitLocale();\n const invited = invitedEmail !== undefined;\n const [firstName, setFirstName] = useState(\"\");\n const [lastName, setLastName] = useState(\"\");\n const [email, setEmail] = useState(invitedEmail ?? defaultEmail ?? \"\");\n const [password, setPassword] = useState(\"\");\n const [confirm, setConfirm] = useState(\"\");\n const [ownLocale, setOwnLocale] = useState<string>(\n () => defaultLocale ?? resolveLanguage([kitLocale, ...browserLanguages()], languages),\n );\n const [accepted, setAccepted] = useState(false);\n const [busy, setBusy] = useState<Busy>(null);\n // `email_taken` belongs to the address it was answered for; another one clears it.\n const [taken, setTaken] = useState<string | null>(null);\n const [failure, setFailure] = useState<ReactNode>(null);\n const emailRef = useRef<HTMLInputElement>(null);\n const tagHintId = useId();\n\n const mounted = useRef(true);\n useEffect(() => {\n mounted.current = true;\n return () => {\n mounted.current = false;\n };\n }, []);\n\n // What the field shows is what is submitted: the offered code the value resolves to.\n const locale = resolveLanguage([localeProp ?? ownLocale], languages);\n const changeLocale = (code: KitLanguageCode) => {\n if (localeProp === undefined) setOwnLocale(code);\n onLocaleChange?.(code);\n };\n\n const working = busy !== null;\n const suggestion = emailTag ? taggedEmail(email, emailTag) : null;\n // The invitee took the tagged address: offer the way back to the invited one.\n const backToInvited =\n invitedEmail !== undefined && email.trim() !== invitedEmail.trim() ? invitedEmail.trim() : null;\n const canSubmit =\n personNameOk(firstName) &&\n personNameOk(lastName) &&\n emailParts(email) !== null &&\n newPasswordProblem(password, confirm) === null &&\n accepted &&\n appFieldsComplete;\n\n const submit = (e: FormEvent) => {\n e.preventDefault();\n if (!canSubmit || working) return;\n const values: RegisterValues = {\n firstName: firstName.trim(),\n lastName: lastName.trim(),\n email: email.trim(),\n password,\n locale,\n };\n setBusy(\"sending\");\n setFailure(null);\n setTaken(null);\n let result: Promise<unknown>;\n try {\n result = Promise.resolve(onSubmit(values));\n } catch (error) {\n result = Promise.reject(error);\n }\n result.then(\n () => {\n if (mounted.current) setBusy(\"done\");\n },\n (error: unknown) => {\n if (!mounted.current) return;\n setBusy(null);\n const own = describeError?.(error);\n const code = authErrorCode(error);\n if (code === \"email_taken\" && !hasContent(own)) {\n setTaken(values.email);\n emailRef.current?.focus();\n return;\n }\n setFailure(\n hasContent(own)\n ? own\n : isRateLimited(error)\n ? (labels.rateLimited ?? DEFAULT_REGISTER_LABELS.rateLimited)(retryAfterSeconds(error))\n : code === \"registration_closed\"\n ? labels.registrationClosed\n : code === \"invitation_invalid\"\n ? labels.invitationInvalid\n : code === \"invitation_expired\"\n ? labels.invitationExpired\n : labels.failed,\n );\n },\n );\n };\n\n return (\n <div {...rest} className={cn(\"@container space-y-4\", className)}>\n {aboveForm}\n <form className=\"space-y-3\" noValidate onSubmit={submit}>\n <div className=\"grid gap-3 @xs:grid-cols-2\">\n <Input\n name=\"given-name\"\n autoComplete=\"given-name\"\n label={labels.firstName}\n value={firstName}\n onChange={(e) => setFirstName(e.target.value)}\n maxLength={PERSON_NAME_MAX_LENGTH}\n readOnly={working}\n required\n />\n <Input\n name=\"family-name\"\n autoComplete=\"family-name\"\n label={labels.lastName}\n value={lastName}\n onChange={(e) => setLastName(e.target.value)}\n maxLength={PERSON_NAME_MAX_LENGTH}\n readOnly={working}\n required\n />\n </div>\n\n <div>\n <Input\n ref={emailRef}\n type=\"email\"\n name=\"email\"\n autoComplete=\"email\"\n label={labels.email}\n value={email}\n onChange={(e) => setEmail(e.target.value)}\n readOnly={invited || working}\n hint={invited ? labels.invitedEmailHint : undefined}\n error={taken !== null && taken === email.trim() ? labels.emailTaken : undefined}\n required\n />\n {/* The tag, offered rather than applied (§4.5): one click, the exact address\n on the button, reversible by typing — or, invited, by the button back. */}\n {suggestion && (\n <p className=\"mt-1 text-xs text-muted\">\n <Button\n type=\"button\"\n variant=\"link\"\n size=\"sm\"\n className=\"h-auto p-0 align-baseline\"\n disabled={working}\n aria-describedby={tagHintId}\n onClick={() => setEmail(suggestion)}\n >\n {labels.emailTagUse(suggestion)}\n </Button>{\" \"}\n <span id={tagHintId}>{labels.emailTagHint}</span>\n </p>\n )}\n {backToInvited !== null && (\n <p className=\"mt-1 text-xs text-muted\">\n <span>{labels.invitedTagNote}</span>{\" \"}\n <Button\n type=\"button\"\n variant=\"link\"\n size=\"sm\"\n className=\"h-auto p-0 align-baseline\"\n disabled={working}\n onClick={() => setEmail(backToInvited)}\n >\n {labels.emailTagUse(backToInvited)}\n </Button>\n </p>\n )}\n {underEmail}\n </div>\n\n <NewPasswordFields\n password={password}\n confirm={confirm}\n onPasswordChange={setPassword}\n onConfirmChange={setConfirm}\n busy={working}\n text={{ password: labels.password, confirm: labels.confirmPassword, mismatch: labels.passwordMismatch }}\n />\n\n {languageField === undefined ? (\n <LanguageSelect\n name=\"locale\"\n label={labels.language}\n value={locale}\n codes={languages}\n onChange={changeLocale}\n disabled={working}\n />\n ) : (\n languageField\n )}\n\n {appFields}\n {afterFields}\n\n {/* The kit's terms checkbox (legal contract §3.4). Never an error: an unticked\n box keeps the submit disabled, so there is no failed attempt to explain. */}\n <LegalAcceptCheckbox\n checked={accepted}\n onCheckedChange={setAccepted}\n termsHref={termsHref}\n privacyHref={privacyHref}\n disabled={working}\n />\n\n {hasContent(failure) && (\n <AlertBanner tone=\"danger\" size=\"sm\" role=\"alert\">\n {failure}\n </AlertBanner>\n )}\n\n <Button type=\"submit\" className=\"w-full\" disabled={!working && !canSubmit} pending={working}>\n {labels.submit}\n </Button>\n </form>\n {signInHref !== undefined && (\n <p className=\"text-center text-sm text-secondary\">\n {labels.haveAccount}{\" \"}\n <TextLink href={signInHref} tone=\"primary\">\n {labels.signIn}\n </TextLink>\n </p>\n )}\n </div>\n );\n}\n"],"mappings":"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","names":[]}
@@ -0,0 +1,3 @@
1
+ import type { ResetPasswordLabels } from "./reset-password-form.js";
2
+ /** `Required`: every key, the 0.30 one included, has its English here. */
3
+ export declare const DEFAULT_RESET_PASSWORD_LABELS: Required<ResetPasswordLabels>;
@@ -0,0 +1,24 @@
1
+ "use client";
2
+ import { englishRateLimited } from "./auth-errors.js";
3
+ const DEFAULT_RESET_PASSWORD_LABELS = {
4
+ title: "Choose a new password",
5
+ checking: "Checking the link\u2026",
6
+ intro: (email) => `You\u2019re setting a new password for ${email}.`,
7
+ newPassword: "New password",
8
+ confirmPassword: "Repeat new password",
9
+ mismatch: "The passwords don\u2019t match.",
10
+ submit: "Save password",
11
+ failed: "The password could not be changed.",
12
+ noToken: "This link is incomplete.",
13
+ invalid: "This link is invalid or has expired.",
14
+ invalidHint: "Links are valid for one hour and work only once. Just request a new one.",
15
+ requestNew: "Request a new link",
16
+ success: "Your password has been changed. You can sign in with it now.",
17
+ sessionsEnded: "Signed-in devices were signed out \u2014 you\u2019ll need to sign in again there.",
18
+ signIn: "Go to sign in",
19
+ rateLimited: englishRateLimited
20
+ };
21
+ export {
22
+ DEFAULT_RESET_PASSWORD_LABELS
23
+ };
24
+ //# sourceMappingURL=reset-password-form-labels.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/auth/reset-password-form-labels.ts"],"sourcesContent":["// The English words of ./reset-password-form, in a module with no component code: the\n// English catalogue (src/i18n/defaults.ts) imports them without the component, so `en`\n// loads as one chunk like the other languages (0.34, KS U8). ./reset-password-form\n// re-exports them.\n\nimport { englishRateLimited } from \"./auth-errors\";\nimport type { ResetPasswordLabels } from \"./reset-password-form\";\n\n/** `Required`: every key, the 0.30 one included, has its English here. */\nexport const DEFAULT_RESET_PASSWORD_LABELS: Required<ResetPasswordLabels> = {\n title: \"Choose a new password\",\n checking: \"Checking the link…\",\n intro: (email) => `You’re setting a new password for ${email}.`,\n newPassword: \"New password\",\n confirmPassword: \"Repeat new password\",\n mismatch: \"The passwords don’t match.\",\n submit: \"Save password\",\n failed: \"The password could not be changed.\",\n noToken: \"This link is incomplete.\",\n invalid: \"This link is invalid or has expired.\",\n invalidHint: \"Links are valid for one hour and work only once. Just request a new one.\",\n requestNew: \"Request a new link\",\n success: \"Your password has been changed. You can sign in with it now.\",\n sessionsEnded: \"Signed-in devices were signed out — you’ll need to sign in again there.\",\n signIn: \"Go to sign in\",\n rateLimited: englishRateLimited,\n};\n"],"mappings":";AAKA,SAAS,0BAA0B;AAI5B,MAAM,gCAA+D;AAAA,EAC1E,OAAO;AAAA,EACP,UAAU;AAAA,EACV,OAAO,CAAC,UAAU,0CAAqC,KAAK;AAAA,EAC5D,aAAa;AAAA,EACb,iBAAiB;AAAA,EACjB,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,SAAS;AAAA,EACT,aAAa;AAAA,EACb,YAAY;AAAA,EACZ,SAAS;AAAA,EACT,eAAe;AAAA,EACf,QAAQ;AAAA,EACR,aAAa;AACf;","names":[]}