@eifi1/ui-kit 0.32.2 → 0.33.1

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 (400) hide show
  1. package/README.md +17 -9
  2. package/dist/account/delete-account-setting.d.ts +11 -10
  3. package/dist/account/delete-account-setting.js +2 -1
  4. package/dist/account/delete-account-setting.js.map +1 -1
  5. package/dist/account/email-change-setting.d.ts +5 -0
  6. package/dist/account/email-change-setting.js +4 -3
  7. package/dist/account/email-change-setting.js.map +1 -1
  8. package/dist/account/sessions-setting.d.ts +4 -0
  9. package/dist/account/sessions-setting.js +3 -2
  10. package/dist/account/sessions-setting.js.map +1 -1
  11. package/dist/admin/admin-action-confirm.d.ts +11 -10
  12. package/dist/admin/admin-action-confirm.js.map +1 -1
  13. package/dist/admin/invitations-panel.d.ts +11 -10
  14. package/dist/admin/invitations-panel.js +4 -3
  15. package/dist/admin/invitations-panel.js.map +1 -1
  16. package/dist/admin/plan-change.d.ts +101 -0
  17. package/dist/admin/plan-change.js +210 -0
  18. package/dist/admin/plan-change.js.map +1 -0
  19. package/dist/admin/reviewer-scope-editor.d.ts +11 -10
  20. package/dist/admin/reviewer-scope-editor.js.map +1 -1
  21. package/dist/admin/role-select.d.ts +8 -7
  22. package/dist/admin/role-select.js.map +1 -1
  23. package/dist/admin/transfer-ownership-dialog.d.ts +11 -10
  24. package/dist/admin/user-roster.d.ts +8 -7
  25. package/dist/admin/user-roster.js +2 -2
  26. package/dist/admin/user-roster.js.map +1 -1
  27. package/dist/auth/auth-errors.d.ts +13 -2
  28. package/dist/auth/auth-errors.js +5 -1
  29. package/dist/auth/auth-errors.js.map +1 -1
  30. package/dist/auth/complete-name-dialog.d.ts +4 -1
  31. package/dist/auth/complete-name-dialog.js +2 -1
  32. package/dist/auth/complete-name-dialog.js.map +1 -1
  33. package/dist/auth/register-form.d.ts +11 -10
  34. package/dist/billing/billing-banner.d.ts +14 -11
  35. package/dist/billing/billing-banner.js.map +1 -1
  36. package/dist/billing/billing-labels.d.ts +11 -10
  37. package/dist/billing/billing-labels.js +10 -1
  38. package/dist/billing/billing-labels.js.map +1 -1
  39. package/dist/billing/billing-lock.d.ts +40 -12
  40. package/dist/billing/billing-lock.js +9 -3
  41. package/dist/billing/billing-lock.js.map +1 -1
  42. package/dist/billing/billing-overview.d.ts +155 -0
  43. package/dist/billing/billing-overview.js +2 -0
  44. package/dist/billing/billing-overview.js.map +1 -0
  45. package/dist/billing/billing-standing.d.ts +11 -10
  46. package/dist/billing/checkout-processing.d.ts +218 -0
  47. package/dist/billing/checkout-processing.js +198 -0
  48. package/dist/billing/checkout-processing.js.map +1 -0
  49. package/dist/billing/checkout-return.d.ts +51 -0
  50. package/dist/billing/checkout-return.js +43 -0
  51. package/dist/billing/checkout-return.js.map +1 -0
  52. package/dist/billing/pay-page.d.ts +215 -0
  53. package/dist/billing/pay-page.js +113 -0
  54. package/dist/billing/pay-page.js.map +1 -0
  55. package/dist/billing/plan-card.d.ts +11 -10
  56. package/dist/billing/plan-limit-notice.d.ts +11 -10
  57. package/dist/billing/plan-limit-toast.d.ts +144 -0
  58. package/dist/billing/plan-limit-toast.js +40 -0
  59. package/dist/billing/plan-limit-toast.js.map +1 -0
  60. package/dist/billing/subscription-actions.d.ts +39 -15
  61. package/dist/billing/subscription-actions.js +9 -2
  62. package/dist/billing/subscription-actions.js.map +1 -1
  63. package/dist/billing/subscription-status-chip.d.ts +10 -9
  64. package/dist/bin/eifi1-pay-page.mjs +166 -0
  65. package/dist/chart.d.ts +11 -10
  66. package/dist/components/account-chips.d.ts +6 -1
  67. package/dist/components/account-settings.d.ts +4 -1
  68. package/dist/components/account-settings.js +2 -1
  69. package/dist/components/account-settings.js.map +1 -1
  70. package/dist/components/amount-input.d.ts +11 -10
  71. package/dist/components/autocomplete.d.ts +2 -1
  72. package/dist/components/autocomplete.js +5 -3
  73. package/dist/components/autocomplete.js.map +1 -1
  74. package/dist/components/button-group.d.ts +11 -10
  75. package/dist/components/button-group.js +1 -1
  76. package/dist/components/button-group.js.map +1 -1
  77. package/dist/components/calculator.d.ts +11 -10
  78. package/dist/components/calculator.js +3 -3
  79. package/dist/components/calculator.js.map +1 -1
  80. package/dist/components/checkbox-group.d.ts +2 -1
  81. package/dist/components/checkbox-group.js.map +1 -1
  82. package/dist/components/checkbox.d.ts +2 -1
  83. package/dist/components/checkbox.js.map +1 -1
  84. package/dist/components/chip.d.ts +2 -1
  85. package/dist/components/chip.js +19 -17
  86. package/dist/components/chip.js.map +1 -1
  87. package/dist/components/choice-card.d.ts +3 -1
  88. package/dist/components/choice-card.js +1 -1
  89. package/dist/components/choice-card.js.map +1 -1
  90. package/dist/components/combobox-core.js +2 -1
  91. package/dist/components/combobox-core.js.map +1 -1
  92. package/dist/components/combobox.d.ts +4 -3
  93. package/dist/components/combobox.js +2 -2
  94. package/dist/components/combobox.js.map +1 -1
  95. package/dist/components/confirm-dialog.d.ts +11 -10
  96. package/dist/components/confirm-dialog.js +6 -3
  97. package/dist/components/confirm-dialog.js.map +1 -1
  98. package/dist/components/copy-button.d.ts +12 -11
  99. package/dist/components/country-select.d.ts +2 -1
  100. package/dist/components/country-select.js.map +1 -1
  101. package/dist/components/danger-confirm.d.ts +11 -10
  102. package/dist/components/danger-confirm.js.map +1 -1
  103. package/dist/components/data-table-cells.d.ts +12 -1
  104. package/dist/components/data-table-filter-popover.d.ts +12 -1
  105. package/dist/components/data-table-filters.d.ts +12 -1
  106. package/dist/components/data-table-labels.d.ts +12 -1
  107. package/dist/components/data-table-pagination.d.ts +12 -1
  108. package/dist/components/data-table.d.ts +12 -1
  109. package/dist/components/data-table.js +3 -3
  110. package/dist/components/data-table.js.map +1 -1
  111. package/dist/components/date-picker.js +6 -4
  112. package/dist/components/date-picker.js.map +1 -1
  113. package/dist/components/dropdown.js +9 -1
  114. package/dist/components/dropdown.js.map +1 -1
  115. package/dist/components/entity-combobox.d.ts +3 -2
  116. package/dist/components/entity-combobox.js.map +1 -1
  117. package/dist/components/facing-pair.d.ts +11 -10
  118. package/dist/components/field-parts.d.ts +32 -4
  119. package/dist/components/field-parts.js +54 -19
  120. package/dist/components/field-parts.js.map +1 -1
  121. package/dist/components/file-button.d.ts +11 -10
  122. package/dist/components/file-button.js +3 -2
  123. package/dist/components/file-button.js.map +1 -1
  124. package/dist/components/file-dropzone.d.ts +12 -11
  125. package/dist/components/file-dropzone.js.map +1 -1
  126. package/dist/components/floating-panel.js +5 -5
  127. package/dist/components/floating-panel.js.map +1 -1
  128. package/dist/components/form-actions.d.ts +10 -9
  129. package/dist/components/form-actions.js +3 -3
  130. package/dist/components/form-actions.js.map +1 -1
  131. package/dist/components/full-bleed-dialog.js.map +1 -1
  132. package/dist/components/iban-input.d.ts +11 -10
  133. package/dist/components/inline-edit-field.d.ts +2 -1
  134. package/dist/components/inline-edit-field.js +6 -6
  135. package/dist/components/inline-edit-field.js.map +1 -1
  136. package/dist/components/language-select.d.ts +11 -10
  137. package/dist/components/legal-page.d.ts +11 -10
  138. package/dist/components/legal.d.ts +11 -10
  139. package/dist/components/list.d.ts +2 -1
  140. package/dist/components/list.js +4 -5
  141. package/dist/components/list.js.map +1 -1
  142. package/dist/components/modal.js.map +1 -1
  143. package/dist/components/money-field.d.ts +11 -10
  144. package/dist/components/month-picker.js +54 -44
  145. package/dist/components/month-picker.js.map +1 -1
  146. package/dist/components/multi-entity-combobox.d.ts +3 -2
  147. package/dist/components/multi-entity-combobox.js.map +1 -1
  148. package/dist/components/number-field.d.ts +18 -10
  149. package/dist/components/number-field.js.map +1 -1
  150. package/dist/components/number-input.d.ts +37 -10
  151. package/dist/components/number-input.js +27 -12
  152. package/dist/components/number-input.js.map +1 -1
  153. package/dist/components/numpad-sheet.d.ts +11 -10
  154. package/dist/components/numpad-sheet.js +2 -2
  155. package/dist/components/numpad-sheet.js.map +1 -1
  156. package/dist/components/phone-input.d.ts +11 -10
  157. package/dist/components/popover.js +6 -2
  158. package/dist/components/popover.js.map +1 -1
  159. package/dist/components/row-actions.d.ts +6 -5
  160. package/dist/components/row-actions.js +130 -32
  161. package/dist/components/row-actions.js.map +1 -1
  162. package/dist/components/series-chart.d.ts +11 -10
  163. package/dist/components/settings-fields.d.ts +11 -10
  164. package/dist/components/share-card.d.ts +8 -7
  165. package/dist/components/share-card.js +26 -10
  166. package/dist/components/share-card.js.map +1 -1
  167. package/dist/components/skeleton.d.ts +10 -2
  168. package/dist/components/skeleton.js.map +1 -1
  169. package/dist/components/status-dot.d.ts +1 -0
  170. package/dist/components/status-dot.js +2 -2
  171. package/dist/components/status-dot.js.map +1 -1
  172. package/dist/components/swatch-picker.d.ts +2 -1
  173. package/dist/components/swatch-picker.js.map +1 -1
  174. package/dist/components/swipeable-row.d.ts +88 -17
  175. package/dist/components/swipeable-row.js +46 -9
  176. package/dist/components/swipeable-row.js.map +1 -1
  177. package/dist/components/switch.d.ts +2 -1
  178. package/dist/components/switch.js.map +1 -1
  179. package/dist/components/table.d.ts +2 -1
  180. package/dist/components/table.js +6 -0
  181. package/dist/components/table.js.map +1 -1
  182. package/dist/components/text-link.d.ts +10 -9
  183. package/dist/components/time-input.d.ts +11 -10
  184. package/dist/components/toggle-group.d.ts +2 -1
  185. package/dist/components/toggle-group.js +1 -1
  186. package/dist/components/toggle-group.js.map +1 -1
  187. package/dist/components/translation-review-editor.d.ts +4 -0
  188. package/dist/components/translation-review-editor.js +4 -3
  189. package/dist/components/translation-review-editor.js.map +1 -1
  190. package/dist/components/translation-review-parts.d.ts +1 -0
  191. package/dist/components/translation-review.d.ts +1 -0
  192. package/dist/components/translation-review.js +15 -18
  193. package/dist/components/translation-review.js.map +1 -1
  194. package/dist/components/ui.d.ts +10 -9
  195. package/dist/components/ui.js +47 -27
  196. package/dist/components/ui.js.map +1 -1
  197. package/dist/components/use-table-state.d.ts +12 -1
  198. package/dist/components/user-avatar.d.ts +1 -0
  199. package/dist/components/write-lock.d.ts +101 -13
  200. package/dist/components/write-lock.js +37 -13
  201. package/dist/components/write-lock.js.map +1 -1
  202. package/dist/{data-table-labels-kpAAVi6g.d.ts → data-table-labels-BJ5JE_X2.d.ts} +17 -0
  203. package/dist/data-table.d.ts +12 -1
  204. package/dist/{delete-account-setting-Dy4kJgUm.d.ts → delete-account-setting-DAgGBrbn.d.ts} +393 -42
  205. package/dist/feedback/feedback-attachment.d.ts +11 -10
  206. package/dist/feedback/feedback-attachment.js +7 -7
  207. package/dist/feedback/feedback-attachment.js.map +1 -1
  208. package/dist/feedback/feedback-context.d.ts +11 -10
  209. package/dist/feedback/feedback-crash.d.ts +11 -10
  210. package/dist/feedback/feedback-dialog.d.ts +11 -10
  211. package/dist/feedback/feedback-inbox.d.ts +10 -9
  212. package/dist/feedback/feedback-inbox.js +7 -3
  213. package/dist/feedback/feedback-inbox.js.map +1 -1
  214. package/dist/feedback/feedback-labels.d.ts +11 -10
  215. package/dist/feedback/feedback-menu.d.ts +4 -3
  216. package/dist/feedback/feedback-record.d.ts +11 -10
  217. package/dist/feedback/feedback-row-detail.d.ts +11 -10
  218. package/dist/feedback/feedback-row-detail.js.map +1 -1
  219. package/dist/feedback/feedback-status-undo.d.ts +11 -10
  220. package/dist/feedback/feedback-submit.d.ts +11 -10
  221. package/dist/feedback/feedback-swipe.d.ts +11 -10
  222. package/dist/feedback/feedback-swipe.js +3 -6
  223. package/dist/feedback/feedback-swipe.js.map +1 -1
  224. package/dist/feedback/feedback-table.d.ts +11 -10
  225. package/dist/feedback/feedback-table.js.map +1 -1
  226. package/dist/feedback/feedback-thread.d.ts +11 -10
  227. package/dist/feedback/feedback-thread.js +5 -1
  228. package/dist/feedback/feedback-thread.js.map +1 -1
  229. package/dist/feedback.d.ts +11 -10
  230. package/dist/hooks/use-anchored-panel.d.ts +37 -7
  231. package/dist/hooks/use-anchored-panel.js +6 -7
  232. package/dist/hooks/use-anchored-panel.js.map +1 -1
  233. package/dist/hooks/use-file-drop.d.ts +11 -10
  234. package/dist/hooks/use-focus-trap.d.ts +8 -0
  235. package/dist/hooks/use-focus-trap.js +17 -11
  236. package/dist/hooks/use-focus-trap.js.map +1 -1
  237. package/dist/i18n/defaults.d.ts +11 -10
  238. package/dist/i18n/defaults.js +2 -0
  239. package/dist/i18n/defaults.js.map +1 -1
  240. package/dist/i18n/german.d.ts +11 -10
  241. package/dist/i18n/german.js +37 -1
  242. package/dist/i18n/german.js.map +1 -1
  243. package/dist/i18n/kit-labels.d.ts +5 -4
  244. package/dist/i18n/kit-labels.js.map +1 -1
  245. package/dist/i18n/languages.d.ts +11 -10
  246. package/dist/i18n/locales/de-CH.d.ts +11 -10
  247. package/dist/i18n/locales/en.d.ts +11 -10
  248. package/dist/i18n/locales/es.d.ts +11 -10
  249. package/dist/i18n/locales/es.js +35 -1
  250. package/dist/i18n/locales/es.js.map +1 -1
  251. package/dist/i18n/locales/fr.d.ts +11 -10
  252. package/dist/i18n/locales/fr.js +37 -1
  253. package/dist/i18n/locales/fr.js.map +1 -1
  254. package/dist/i18n/locales/hu.d.ts +11 -10
  255. package/dist/i18n/locales/hu.js +38 -1
  256. package/dist/i18n/locales/hu.js.map +1 -1
  257. package/dist/i18n/locales/it.d.ts +11 -10
  258. package/dist/i18n/locales/it.js +35 -1
  259. package/dist/i18n/locales/it.js.map +1 -1
  260. package/dist/i18n/locales/zh.d.ts +11 -10
  261. package/dist/i18n/locales/zh.js +35 -1
  262. package/dist/i18n/locales/zh.js.map +1 -1
  263. package/dist/i18n/plurals.d.ts +20 -1
  264. package/dist/i18n/plurals.js +11 -0
  265. package/dist/i18n/plurals.js.map +1 -1
  266. package/dist/i18n/review.d.ts +11 -10
  267. package/dist/i18n/review.js +8 -1
  268. package/dist/i18n/review.js.map +1 -1
  269. package/dist/index.d.ts +11 -6
  270. package/dist/index.js +40 -2
  271. package/dist/index.js.map +1 -1
  272. package/dist/landing/landing-actions.d.ts +11 -10
  273. package/dist/landing/landing-sections.d.ts +11 -10
  274. package/dist/landing/public-header.d.ts +11 -10
  275. package/dist/landing/routing.d.ts +11 -10
  276. package/dist/pay/.well-known/apple-developer-merchantid-domain-association +1 -0
  277. package/dist/pay/index.html +30 -0
  278. package/dist/pay/pay.css +126 -0
  279. package/dist/pay/pay.js +198 -0
  280. package/dist/rhf/fields.d.ts +11 -10
  281. package/dist/rhf/form.d.ts +11 -10
  282. package/dist/rhf.d.ts +11 -10
  283. package/dist/settings/settings-section.d.ts +11 -10
  284. package/dist/shell/app-shell.d.ts +10 -9
  285. package/dist/shell/top-bar-brand.d.ts +11 -10
  286. package/dist/shell/topbar-action-menu.d.ts +1 -0
  287. package/dist/shell.d.ts +11 -10
  288. package/dist/testing/css-variables.d.ts +74 -0
  289. package/dist/testing/css-variables.generated.d.ts +7 -0
  290. package/dist/testing/css-variables.generated.js +8 -0
  291. package/dist/testing/css-variables.generated.js.map +1 -0
  292. package/dist/testing/css-variables.js +93 -0
  293. package/dist/testing/css-variables.js.map +1 -0
  294. package/dist/testing/index.d.ts +1 -0
  295. package/dist/testing/index.js +12 -0
  296. package/dist/testing/index.js.map +1 -0
  297. package/dist/theme/contrast-tokens.d.ts +44 -1
  298. package/dist/theme/contrast-tokens.js +21 -0
  299. package/dist/theme/contrast-tokens.js.map +1 -1
  300. package/dist/theme/contrast.d.ts +2 -2
  301. package/dist/theme/palette-derive.js +60 -11
  302. package/dist/theme/palette-derive.js.map +1 -1
  303. package/dist/theme/palette-presets.js +45 -43
  304. package/dist/theme/palette-presets.js.map +1 -1
  305. package/dist/wizard/stepper-nav.d.ts +12 -11
  306. package/dist/wizard/stepper-nav.js.map +1 -1
  307. package/dist/wizard.d.ts +11 -10
  308. package/package.json +10 -2
  309. package/src/account/delete-account-setting.tsx +6 -1
  310. package/src/account/email-change-setting.tsx +9 -3
  311. package/src/account/sessions-setting.tsx +7 -2
  312. package/src/admin/admin-action-confirm.tsx +2 -1
  313. package/src/admin/invitations-panel.tsx +9 -3
  314. package/src/admin/plan-change.tsx +487 -0
  315. package/src/admin/reviewer-scope-editor.tsx +2 -1
  316. package/src/admin/role-select.tsx +2 -1
  317. package/src/admin/user-roster.tsx +5 -3
  318. package/src/auth/auth-errors.ts +25 -2
  319. package/src/auth/complete-name-dialog.tsx +6 -2
  320. package/src/billing/billing-banner.tsx +3 -1
  321. package/src/billing/billing-labels.ts +45 -0
  322. package/src/billing/billing-lock.ts +36 -3
  323. package/src/billing/billing-overview.ts +58 -0
  324. package/src/billing/checkout-processing.ts +391 -0
  325. package/src/billing/checkout-return.ts +90 -0
  326. package/src/billing/pay-page.ts +246 -0
  327. package/src/billing/plan-limit-toast.tsx +91 -0
  328. package/src/billing/subscription-actions.tsx +41 -8
  329. package/src/components/account-settings.tsx +6 -2
  330. package/src/components/autocomplete.tsx +10 -4
  331. package/src/components/button-group.tsx +4 -1
  332. package/src/components/calculator.tsx +10 -6
  333. package/src/components/checkbox-group.tsx +2 -2
  334. package/src/components/checkbox.tsx +2 -1
  335. package/src/components/chip.tsx +37 -32
  336. package/src/components/choice-card.tsx +4 -2
  337. package/src/components/combobox-core.tsx +5 -2
  338. package/src/components/combobox.tsx +8 -6
  339. package/src/components/confirm-dialog.tsx +13 -6
  340. package/src/components/country-select.tsx +2 -2
  341. package/src/components/danger-confirm.tsx +2 -2
  342. package/src/components/data-table.tsx +20 -9
  343. package/src/components/date-picker.tsx +10 -7
  344. package/src/components/dropdown.tsx +12 -2
  345. package/src/components/entity-combobox.tsx +3 -3
  346. package/src/components/field-parts.tsx +61 -14
  347. package/src/components/file-button.tsx +5 -4
  348. package/src/components/file-dropzone.tsx +2 -2
  349. package/src/components/floating-panel.tsx +7 -5
  350. package/src/components/form-actions.tsx +12 -5
  351. package/src/components/full-bleed-dialog.tsx +6 -0
  352. package/src/components/inline-edit-field.tsx +13 -13
  353. package/src/components/list.tsx +10 -9
  354. package/src/components/modal.tsx +5 -0
  355. package/src/components/month-picker.tsx +8 -2
  356. package/src/components/multi-entity-combobox.tsx +3 -3
  357. package/src/components/number-field.tsx +7 -0
  358. package/src/components/number-input.tsx +71 -11
  359. package/src/components/numpad-sheet.tsx +8 -4
  360. package/src/components/popover.tsx +6 -2
  361. package/src/components/row-actions.tsx +208 -58
  362. package/src/components/share-card.tsx +67 -13
  363. package/src/components/skeleton.tsx +10 -2
  364. package/src/components/status-dot.tsx +7 -7
  365. package/src/components/swatch-picker.tsx +2 -2
  366. package/src/components/swipeable-row.tsx +138 -27
  367. package/src/components/switch.tsx +2 -1
  368. package/src/components/table.tsx +8 -1
  369. package/src/components/toggle-group.tsx +5 -3
  370. package/src/components/translation-review-editor.tsx +8 -3
  371. package/src/components/translation-review.tsx +18 -22
  372. package/src/components/ui.tsx +92 -43
  373. package/src/components/write-lock.tsx +150 -24
  374. package/src/feedback/feedback-attachment.tsx +13 -9
  375. package/src/feedback/feedback-inbox.tsx +10 -6
  376. package/src/feedback/feedback-row-detail.tsx +3 -2
  377. package/src/feedback/feedback-swipe.tsx +6 -11
  378. package/src/feedback/feedback-table.tsx +2 -1
  379. package/src/feedback/feedback-thread.tsx +20 -1
  380. package/src/hooks/use-anchored-panel.ts +60 -14
  381. package/src/hooks/use-focus-trap.ts +55 -12
  382. package/src/i18n/defaults.ts +2 -0
  383. package/src/i18n/german.ts +41 -0
  384. package/src/i18n/kit-labels.tsx +4 -0
  385. package/src/i18n/locales/es.ts +35 -0
  386. package/src/i18n/locales/fr.ts +41 -0
  387. package/src/i18n/locales/hu.ts +39 -0
  388. package/src/i18n/locales/it.ts +36 -0
  389. package/src/i18n/locales/zh.ts +34 -0
  390. package/src/i18n/plurals.ts +29 -0
  391. package/src/i18n/review.ts +7 -0
  392. package/src/index.ts +51 -5
  393. package/src/testing/css-variables.generated.ts +112 -0
  394. package/src/testing/css-variables.ts +191 -0
  395. package/src/testing/index.ts +13 -0
  396. package/src/theme/contrast-tokens.ts +53 -2
  397. package/src/theme/palette-derive.ts +87 -10
  398. package/src/theme/palette-presets.ts +45 -43
  399. package/src/wizard/stepper-nav.tsx +2 -1
  400. package/tokens.css +324 -46
@@ -21,5 +21,24 @@
21
21
  * // i18next-http-backend: { parse: (data, lng) => withAllPlurals(JSON.parse(data), lng) }
22
22
  */
23
23
  declare function withAllPlurals<T extends Record<string, unknown>>(catalogue: T, locale: string): T & Record<string, unknown>;
24
+ /**
25
+ * A word in the plural forms a count can ask for, `other` required: an app's
26
+ * `key_one` / `key_other` pair, or any of CLDR's categories (`zero`, `one`, `two`, `few`,
27
+ * `many`). A category left out reads `other`, the stand-in {@link withAllPlurals} fills
28
+ * a catalogue with — so English's two forms serve every language, as in the apps'
29
+ * catalogues.
30
+ *
31
+ * { one: t("planUsage.budget_one"), other: t("planUsage.budget_other") }
32
+ */
33
+ type PluralForms = {
34
+ other: string;
35
+ } & Partial<Record<Intl.LDMLPluralRule, string>>;
36
+ /**
37
+ * The form of `forms` that `count` takes in `locale` — CLDR's cardinal category for it,
38
+ * through `Intl.PluralRules`, else `other`. A locale `Intl` cannot read reads as the
39
+ * runtime's, as everywhere the kit formats (and `undefined` is the runtime's). For the
40
+ * kit's own parts that put an app's word after a count: `planColumn`'s usage.
41
+ */
42
+ declare function pluralForm(count: number, forms: PluralForms, locale?: string): string;
24
43
 
25
- export { withAllPlurals };
44
+ export { type PluralForms, pluralForm, withAllPlurals };
@@ -27,7 +27,18 @@ function pluralCategories(locale, type) {
27
27
  return [];
28
28
  }
29
29
  }
30
+ function pluralForm(count, forms, locale) {
31
+ return forms[pluralCategory(count, locale)] ?? forms.other;
32
+ }
33
+ function pluralCategory(count, locale) {
34
+ try {
35
+ return new Intl.PluralRules(locale).select(count);
36
+ } catch {
37
+ return new Intl.PluralRules().select(count);
38
+ }
39
+ }
30
40
  export {
41
+ pluralForm,
31
42
  withAllPlurals
32
43
  };
33
44
  //# sourceMappingURL=plurals.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/i18n/plurals.ts"],"sourcesContent":["/**\n * Every plural category a language has, filled from the key family's `_other` — for an\n * app's i18next catalogue, before i18next sees it.\n *\n * The apps write English's two forms, `key_one` and `key_other`, in every language: that\n * is the key set their parity tests hold each catalogue to, and no translator should have\n * to know which categories CLDR assigns. But CLDR gives French, Italian and Spanish a\n * third, `many` (1 000 000, « 1,5 million »), and i18next asks for `key_many` there and\n * nothing else — so without it the count fell down the fallback chain and printed German\n * in a French sentence. Kurvenschmiede found it and filled the gap in memory; kastlan\n * wrote the same function again (0.19 adoption). This is that function, once.\n *\n * `_other` is the right stand-in: CLDR's `many` shares its wording with `other` in all\n * three. An ordinal family (`key_ordinal_one`, `…_ordinal_other`) is filled from the\n * language's ORDINAL categories. A category the catalogue already has is left alone, and\n * the input is not changed: a new tree comes back. A locale `Intl` cannot read (`\"\"`,\n * `\"x\"` — a backend `parse` called without a language) adds nothing rather than throwing,\n * so one odd call cannot fail a whole namespace load (kastlan, 0.20 adoption).\n *\n * i18n.addResourceBundle(lng, \"translation\", withAllPlurals(catalogue, lng));\n * // i18next-http-backend: { parse: (data, lng) => withAllPlurals(JSON.parse(data), lng) }\n */\nexport function withAllPlurals<T extends Record<string, unknown>>(catalogue: T, locale: string): T & Record<string, unknown> {\n const cardinal = pluralCategories(locale, \"cardinal\");\n const ordinal = pluralCategories(locale, \"ordinal\");\n const fill = (tree: Record<string, unknown>): Record<string, unknown> => {\n const out: Record<string, unknown> = {};\n for (const [key, value] of Object.entries(tree)) {\n out[key] =\n value !== null && typeof value === \"object\" && !Array.isArray(value)\n ? fill(value as Record<string, unknown>)\n : value;\n }\n for (const [key, value] of Object.entries(tree)) {\n if (!key.endsWith(\"_other\") || typeof value !== \"string\") continue;\n const base = key.slice(0, -\"_other\".length);\n const categories = base.endsWith(\"_ordinal\") ? ordinal : cardinal;\n for (const category of categories) {\n const name = `${base}_${category}`;\n if (!(name in out)) out[name] = value;\n }\n }\n return out;\n };\n return fill(catalogue) as T & Record<string, unknown>;\n}\n\nfunction pluralCategories(locale: string, type: Intl.PluralRuleType): readonly string[] {\n try {\n return new Intl.PluralRules(locale, { type }).resolvedOptions().pluralCategories;\n } catch {\n return [];\n }\n}\n"],"mappings":";AAsBO,SAAS,eAAkD,WAAc,QAA6C;AAC3H,QAAM,WAAW,iBAAiB,QAAQ,UAAU;AACpD,QAAM,UAAU,iBAAiB,QAAQ,SAAS;AAClD,QAAM,OAAO,CAAC,SAA2D;AACvE,UAAM,MAA+B,CAAC;AACtC,eAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAQ,IAAI,GAAG;AAC/C,UAAI,GAAG,IACL,UAAU,QAAQ,OAAO,UAAU,YAAY,CAAC,MAAM,QAAQ,KAAK,IAC/D,KAAK,KAAgC,IACrC;AAAA,IACR;AACA,eAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAQ,IAAI,GAAG;AAC/C,UAAI,CAAC,IAAI,SAAS,QAAQ,KAAK,OAAO,UAAU,SAAU;AAC1D,YAAM,OAAO,IAAI,MAAM,GAAG,CAAC,SAAS,MAAM;AAC1C,YAAM,aAAa,KAAK,SAAS,UAAU,IAAI,UAAU;AACzD,iBAAW,YAAY,YAAY;AACjC,cAAM,OAAO,GAAG,IAAI,IAAI,QAAQ;AAChC,YAAI,EAAE,QAAQ,KAAM,KAAI,IAAI,IAAI;AAAA,MAClC;AAAA,IACF;AACA,WAAO;AAAA,EACT;AACA,SAAO,KAAK,SAAS;AACvB;AAEA,SAAS,iBAAiB,QAAgB,MAA8C;AACtF,MAAI;AACF,WAAO,IAAI,KAAK,YAAY,QAAQ,EAAE,KAAK,CAAC,EAAE,gBAAgB,EAAE;AAAA,EAClE,QAAQ;AACN,WAAO,CAAC;AAAA,EACV;AACF;","names":[]}
1
+ {"version":3,"sources":["../../src/i18n/plurals.ts"],"sourcesContent":["/**\n * Every plural category a language has, filled from the key family's `_other` — for an\n * app's i18next catalogue, before i18next sees it.\n *\n * The apps write English's two forms, `key_one` and `key_other`, in every language: that\n * is the key set their parity tests hold each catalogue to, and no translator should have\n * to know which categories CLDR assigns. But CLDR gives French, Italian and Spanish a\n * third, `many` (1 000 000, « 1,5 million »), and i18next asks for `key_many` there and\n * nothing else — so without it the count fell down the fallback chain and printed German\n * in a French sentence. Kurvenschmiede found it and filled the gap in memory; kastlan\n * wrote the same function again (0.19 adoption). This is that function, once.\n *\n * `_other` is the right stand-in: CLDR's `many` shares its wording with `other` in all\n * three. An ordinal family (`key_ordinal_one`, `…_ordinal_other`) is filled from the\n * language's ORDINAL categories. A category the catalogue already has is left alone, and\n * the input is not changed: a new tree comes back. A locale `Intl` cannot read (`\"\"`,\n * `\"x\"` — a backend `parse` called without a language) adds nothing rather than throwing,\n * so one odd call cannot fail a whole namespace load (kastlan, 0.20 adoption).\n *\n * i18n.addResourceBundle(lng, \"translation\", withAllPlurals(catalogue, lng));\n * // i18next-http-backend: { parse: (data, lng) => withAllPlurals(JSON.parse(data), lng) }\n */\nexport function withAllPlurals<T extends Record<string, unknown>>(catalogue: T, locale: string): T & Record<string, unknown> {\n const cardinal = pluralCategories(locale, \"cardinal\");\n const ordinal = pluralCategories(locale, \"ordinal\");\n const fill = (tree: Record<string, unknown>): Record<string, unknown> => {\n const out: Record<string, unknown> = {};\n for (const [key, value] of Object.entries(tree)) {\n out[key] =\n value !== null && typeof value === \"object\" && !Array.isArray(value)\n ? fill(value as Record<string, unknown>)\n : value;\n }\n for (const [key, value] of Object.entries(tree)) {\n if (!key.endsWith(\"_other\") || typeof value !== \"string\") continue;\n const base = key.slice(0, -\"_other\".length);\n const categories = base.endsWith(\"_ordinal\") ? ordinal : cardinal;\n for (const category of categories) {\n const name = `${base}_${category}`;\n if (!(name in out)) out[name] = value;\n }\n }\n return out;\n };\n return fill(catalogue) as T & Record<string, unknown>;\n}\n\nfunction pluralCategories(locale: string, type: Intl.PluralRuleType): readonly string[] {\n try {\n return new Intl.PluralRules(locale, { type }).resolvedOptions().pluralCategories;\n } catch {\n return [];\n }\n}\n\n/**\n * A word in the plural forms a count can ask for, `other` required: an app's\n * `key_one` / `key_other` pair, or any of CLDR's categories (`zero`, `one`, `two`, `few`,\n * `many`). A category left out reads `other`, the stand-in {@link withAllPlurals} fills\n * a catalogue with — so English's two forms serve every language, as in the apps'\n * catalogues.\n *\n * { one: t(\"planUsage.budget_one\"), other: t(\"planUsage.budget_other\") }\n */\nexport type PluralForms = { other: string } & Partial<Record<Intl.LDMLPluralRule, string>>;\n\n/**\n * The form of `forms` that `count` takes in `locale` — CLDR's cardinal category for it,\n * through `Intl.PluralRules`, else `other`. A locale `Intl` cannot read reads as the\n * runtime's, as everywhere the kit formats (and `undefined` is the runtime's). For the\n * kit's own parts that put an app's word after a count: `planColumn`'s usage.\n */\nexport function pluralForm(count: number, forms: PluralForms, locale?: string): string {\n return forms[pluralCategory(count, locale)] ?? forms.other;\n}\n\nfunction pluralCategory(count: number, locale: string | undefined): Intl.LDMLPluralRule {\n try {\n return new Intl.PluralRules(locale).select(count);\n } catch {\n return new Intl.PluralRules().select(count);\n }\n}\n"],"mappings":";AAsBO,SAAS,eAAkD,WAAc,QAA6C;AAC3H,QAAM,WAAW,iBAAiB,QAAQ,UAAU;AACpD,QAAM,UAAU,iBAAiB,QAAQ,SAAS;AAClD,QAAM,OAAO,CAAC,SAA2D;AACvE,UAAM,MAA+B,CAAC;AACtC,eAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAQ,IAAI,GAAG;AAC/C,UAAI,GAAG,IACL,UAAU,QAAQ,OAAO,UAAU,YAAY,CAAC,MAAM,QAAQ,KAAK,IAC/D,KAAK,KAAgC,IACrC;AAAA,IACR;AACA,eAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAQ,IAAI,GAAG;AAC/C,UAAI,CAAC,IAAI,SAAS,QAAQ,KAAK,OAAO,UAAU,SAAU;AAC1D,YAAM,OAAO,IAAI,MAAM,GAAG,CAAC,SAAS,MAAM;AAC1C,YAAM,aAAa,KAAK,SAAS,UAAU,IAAI,UAAU;AACzD,iBAAW,YAAY,YAAY;AACjC,cAAM,OAAO,GAAG,IAAI,IAAI,QAAQ;AAChC,YAAI,EAAE,QAAQ,KAAM,KAAI,IAAI,IAAI;AAAA,MAClC;AAAA,IACF;AACA,WAAO;AAAA,EACT;AACA,SAAO,KAAK,SAAS;AACvB;AAEA,SAAS,iBAAiB,QAAgB,MAA8C;AACtF,MAAI;AACF,WAAO,IAAI,KAAK,YAAY,QAAQ,EAAE,KAAK,CAAC,EAAE,gBAAgB,EAAE;AAAA,EAClE,QAAQ;AACN,WAAO,CAAC;AAAA,EACV;AACF;AAmBO,SAAS,WAAW,OAAe,OAAoB,QAAyB;AACrF,SAAO,MAAM,eAAe,OAAO,MAAM,CAAC,KAAK,MAAM;AACvD;AAEA,SAAS,eAAe,OAAe,QAAiD;AACtF,MAAI;AACF,WAAO,IAAI,KAAK,YAAY,MAAM,EAAE,OAAO,KAAK;AAAA,EAClD,QAAQ;AACN,WAAO,IAAI,KAAK,YAAY,EAAE,OAAO,KAAK;AAAA,EAC5C;AACF;","names":[]}
@@ -1,18 +1,23 @@
1
- import { eg as LegalOperator, fx as UiKitLabels } from '../delete-account-setting-Dy4kJgUm.js';
1
+ import { eh as LegalOperator, fJ as UiKitLabels } from '../delete-account-setting-DAgGBrbn.js';
2
2
  import 'react';
3
3
  import '../components/tooltip.js';
4
4
  import '../hooks/use-anchored-rect.js';
5
5
  import '../lib/clipping.js';
6
- import '../data-table-labels-kpAAVi6g.js';
6
+ import '../data-table-labels-BJ5JE_X2.js';
7
7
  import '../components/data-table-sort.js';
8
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';
9
17
  import '../components/mini-calendar.js';
10
18
  import '../components/calendar-heatmap.js';
11
19
  import '../components/popover.js';
12
20
  import '../hooks/use-breakpoint.js';
13
- import '../components/chip.js';
14
- import 'lucide-react';
15
- import '../components/field-parts.js';
16
21
  import '../components/field-sync.js';
17
22
  import '../wizard/types.js';
18
23
  import '../tour/tour.js';
@@ -24,7 +29,6 @@ import '../components/page-contents.js';
24
29
  import '../components/series-chart-labels.js';
25
30
  import '../components/pie-chart-labels.js';
26
31
  import '../components/sparkline.js';
27
- import '../components/stat-tile.js';
28
32
  import '../components/signature-pad.js';
29
33
  import '../components/password-strength.js';
30
34
  import '../components/swatch-picker.js';
@@ -36,9 +40,6 @@ import '../hooks/use-search-param-state.js';
36
40
  import '../components/measured-grid.js';
37
41
  import '../components/user-avatar.js';
38
42
  import '../lib/person-name.js';
39
- import '../components/status-dot.js';
40
- import '../components/progress-bar.js';
41
- import '../components/signed-amount.js';
42
43
  import '../shell/topbar-action-menu.js';
43
44
  import '../components/menu-item.js';
44
45
  import '../components/floating-panel.js';
@@ -54,7 +55,6 @@ import '../components/error-boundary.js';
54
55
  import '../components/authed-image.js';
55
56
  import '../components/image-grid.js';
56
57
  import '../components/lightbox.js';
57
- import '../components/write-lock.js';
58
58
  import '../auth/sign-in-form.js';
59
59
  import '../landing/access.js';
60
60
  import '../landing/landing-labels.js';
@@ -81,6 +81,7 @@ import '../admin/admin-parts.js';
81
81
  import '../admin/admin-action-log.js';
82
82
  import '../settings/settings-labels.js';
83
83
  import '../demo/demo-labels.js';
84
+ import './plurals.js';
84
85
  import '../components/appearance-labels.js';
85
86
  import '../theme/contrast.js';
86
87
  import '../theme/text-size.js';
@@ -293,7 +293,14 @@ const KIT_LABEL_SAMPLES = {
293
293
  "billing.guestReadOnly": [["{{item}}"], [void 0]],
294
294
  "billing.usage": [["{{used}}", "{{limit}}"]],
295
295
  "billing.contactSubject": [["{{dimension}}"]],
296
- "billing.waitingChanges": one
296
+ "billing.waitingChanges": one,
297
+ // 0.33.0: the limit's figure line (§14.11) and the operator's plan parts (§14.12).
298
+ "billing.limitUsageLine": [["{{dimension}}", "{{used}}", "{{limit}}"]],
299
+ "planChange.current": [["{{plan}}"]],
300
+ "planChange.changed": [["{{from}}", "{{to}}"]],
301
+ "planChange.set": [["{{to}}"]],
302
+ "planChange.untilDone": [["{{date}}"]],
303
+ "planChange.usageOf": [["{{used}}", "{{limit}}", "{{dimension}}"]]
297
304
  };
298
305
  export {
299
306
  KIT_LABEL_SAMPLES,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/i18n/review.ts"],"sourcesContent":["import { legalOperatorText } from \"../components/legal\";\nimport type { LegalOperator, LegalOperatorText } from \"../components/legal\";\nimport type { UiKitLabels } from \"./kit-labels\";\n\n/**\n * The kit's words as a flat `key → text` list, for an app's translation review.\n *\n * keksdose reviews its own locale bundles on its /translations page — one verdict per\n * locale and key, stored with the text the reviewer saw, so a later change re-opens it.\n * The kit's words appear on the same screens but live in TypeScript, not in the app's\n * bundles, and 143 of them are functions (`(count) => \"3 results\"`; 0.28.0, every one\n * listed in {@link KIT_LABEL_SAMPLES}), which a bundle flattener skips. This turns a\n * label tree into rows that page can join on.\n *\n * - A string label is one row under its dot path: `common.close`. An array of words\n * (weekday names) is one row per entry: `miniCalendar.weekdays.0`.\n * - A function label is called with fixed samples. Text arguments are i18next-style\n * placeholders (`{{name}}`), so a translation that drops one is caught by the same\n * placeholder check the app runs on its own strings. Counts are real numbers, twice\n * where the wording may depend on them — 1 and 3 — so a reviewer sees singular and\n * plural. The key names the sample: `combobox.resultCount(1)`,\n * `shareCard.removeConfirm(name)`, `serverWake.waking()`.\n * - The legal sections that name the operator (0.28) take one object; its sample is a\n * placeholder per field and the key calls it `operator`:\n * `legal.sections.privacy.controller.body(operator)`. Pass the app's operator in\n * `options` and those rows read the real sentence — same keys — so the lawyer\n * reviewing the `legal` area reads what the page says:\n *\n * kitLabelStrings(UI_KIT_LABELS_DE_CH, { operator: OPERATOR, locale: \"de-CH\" })\n *\n * Keys depend only on the samples, never on the locale, so the rows of `de-CH` and of the\n * English reference line up key by key. Pass exactly the tree the app hands\n * `UiKitProvider` — its overrides included — and review what users see:\n *\n * kitLabelStrings(UI_KIT_LABELS_DE_CH) // the rows for de-CH\n * kitLabelStrings(DEFAULT_UI_KIT_LABELS) // the English reference\n *\n * A label that throws on its sample becomes a row starting with \"⚠\", so one broken\n * override shows up on the page instead of taking the page down.\n */\nexport function kitLabelStrings(labels: UiKitLabels, options: KitLabelStringsOptions = {}): Record<string, string> {\n const out: Record<string, string> = {};\n const operator = options.operator && legalOperatorText(options.operator, options.locale);\n const walk = (node: unknown, path: string) => {\n if (typeof node === \"string\") {\n out[path] = node;\n } else if (typeof node === \"function\") {\n for (const args of KIT_LABEL_SAMPLES[path] ?? [[]]) {\n // The key is the SAMPLE's (`…body(operator)`), whatever the label is called with,\n // so rows with and without the app's operator join on the same keys.\n const called = operator ? args.map((arg) => (arg === LEGAL_OPERATOR_SAMPLE ? operator : arg)) : args;\n out[`${path}(${args.map(sampleName).filter((a) => a !== \"\").join(\", \")})`] = render(\n node as (...args: unknown[]) => unknown,\n called,\n );\n }\n } else if (node !== null && typeof node === \"object\") {\n for (const [key, value] of Object.entries(node)) walk(value, path ? `${path}.${key}` : key);\n }\n };\n walk(labels, \"\");\n return out;\n}\n\nexport interface KitLabelStringsOptions {\n /**\n * The app's operator (0.28): the legal sections that name it — the imprint's operator\n * and contact, the controller, the privacy contact, the governing law — are rendered\n * with the real values instead of `{{name}}`-style placeholders, so a reviewer (the\n * lawyer, under the `legal` area) reads the sentence the page shows. The keys do not\n * change: `legal.sections.impressum.operator.body(operator)` either way.\n */\n operator?: LegalOperator;\n /** The language the operator's country is named in — the locale these rows are\n * for (\"de-CH\" → \"Schweiz\"). Default English. */\n locale?: string;\n}\n\nfunction render(label: (...args: unknown[]) => unknown, args: readonly unknown[]): string {\n try {\n return String(label(...args));\n } catch (error) {\n return `⚠ ${error instanceof Error ? error.message : String(error)}`;\n }\n}\n\n/** How a sample argument is written in the key: a placeholder by its name, a number as\n * itself, an empty string as `\"\"`, a missing optional argument not at all. */\nfunction sampleName(arg: unknown): string {\n if (arg === undefined) return \"\";\n if (arg === LEGAL_OPERATOR_SAMPLE) return \"operator\";\n if (typeof arg === \"string\") return /^\\{\\{(\\w+)\\}\\}$/.exec(arg)?.[1] ?? JSON.stringify(arg);\n return String(arg);\n}\n\nconst one = [[1], [3]] as const;\n\n/**\n * The legal sections' operator (0.28) as placeholders, one per field — so a translation\n * that drops the city or the email is caught by the same check as a dropped `{{name}}`\n * anywhere else. Named `operator` in the key; {@link kitLabelStrings}' `operator` option\n * swaps the app's real values in for it.\n */\nconst LEGAL_OPERATOR_SAMPLE: LegalOperatorText = Object.freeze({\n name: \"{{name}}\",\n postalCode: \"{{postalCode}}\",\n city: \"{{city}}\",\n region: \"{{region}}\",\n country: \"{{country}}\",\n email: \"{{email}}\",\n bindingLanguage: \"{{bindingLanguage}}\",\n});\nconst operatorSample = [[LEGAL_OPERATOR_SAMPLE]] as const;\n\n/**\n * The sample arguments of every function label in {@link UiKitLabels}, by dot path.\n * `src/i18n/__tests__/review.test.ts` fails when a function label has no entry here, so\n * a new one cannot ship un-reviewable.\n */\nexport const KIT_LABEL_SAMPLES: Readonly<Record<string, readonly (readonly unknown[])[]>> = {\n \"common.fieldValue\": [[\"{{field}}\", \"{{value}}\"]],\n \"dataTable.filterResults\": [\n [1, 1],\n [3, 12],\n ],\n \"dataTable.sortedAscending\": [[\"{{column}}\"]],\n \"dataTable.sortedDescending\": [[\"{{column}}\"]],\n \"dataTable.sortCleared\": [[\"{{column}}\"]],\n \"dataTable.pageChanged\": [[2, 5]],\n \"dataTable.pageRange\": [[1, 25, 1240]],\n \"dataTable.rowCount\": [[1], [1240]],\n \"dataTable.columnsCount\": [[3, 8]],\n \"miniCalendar.day\": [[\"{{date}}\"]],\n \"miniCalendar.startSelected\": [[\"{{date}}\"]],\n \"miniCalendar.rangeSelected\": [[\"{{from}}\", \"{{to}}\"]],\n \"calendarHeatmap.day\": [[\"{{date}}\", \"{{value}}\"]],\n \"calendarHeatmap.truncated\": one,\n \"monthPicker.month\": [[\"{{monthYear}}\"]],\n \"combobox.create\": [[\"{{query}}\"]],\n \"combobox.selectedCount\": one,\n \"combobox.resultCount\": one,\n \"combobox.minChars\": one,\n \"multiSelect.selectedCount\": one,\n \"chipInput.added\": [[\"{{value}}\"]],\n \"chipInput.removed\": [[\"{{value}}\"]],\n \"chipInput.atLimit\": one,\n \"chipInput.duplicate\": [[\"{{value}}\"]],\n \"tabs.remove\": [[\"{{tab}}\"]],\n \"appShell.toggleGroup\": [[\"{{group}}\"]],\n \"topBar.role\": [[\"{{role}}\"]],\n \"file.size\": [[2_500_000]],\n \"wizard.step\": [[2, 4]],\n \"tour.step\": [[2, 4]],\n \"globalSearch.shortcut\": [[\"{{keys}}\"]],\n \"pieChart.slice\": [[\"{{label}}\", \"{{value}}\", \"{{percent}}\"]],\n \"sparkline.rising\": [[\"{{first}}\", \"{{last}}\"]],\n \"sparkline.falling\": [[\"{{first}}\", \"{{last}}\"]],\n \"sparkline.flat\": [[\"{{value}}\"]],\n \"sparkline.single\": [[\"{{value}}\"]],\n \"sparkline.named\": [[\"{{name}}\", \"{{summary}}\"]],\n \"statTile.increase\": [[\"{{amount}}\"]],\n \"statTile.decrease\": [[\"{{amount}}\"]],\n \"statTile.better\": [[\"{{change}}\"]],\n \"statTile.worse\": [[\"{{change}}\"]],\n \"signaturePad.viewTyped\": [[\"{{name}}\"]],\n \"passwordStrength.announcement\": [[\"{{level}}\"]],\n \"passwordStrength.ruleLength\": [[12]],\n \"passwordStrength.optional\": [[\"{{rule}}\"]],\n \"passwordStrength.tooLong\": [[72]],\n \"dangerConfirm.phrase\": [[\"{{phrase}}\"]],\n \"dangerConfirm.needsPhrase\": [[\"{{phrase}}\"]],\n \"iconPicker.resultCount\": one,\n \"filePicker.rejectedType\": [[\"{{name}}\"]],\n \"filePicker.rejectedTypeOnly\": [[\"{{accept}}\", \"{{name}}\"]],\n \"filePicker.rejectedSize\": [[\"{{name}}\", \"{{maxSize}}\"]],\n \"filePicker.rejectedCount\": [\n [\"{{name}}\", 1],\n [\"{{name}}\", 3],\n ],\n \"filePicker.rejectedInvalid\": [[\"{{name}}\"]],\n \"filePicker.rejectedMany\": one,\n \"filePicker.rejectedPick\": one,\n \"filePicker.selected\": [\n [1, \"{{firstName}}\"],\n [3, \"{{firstName}}\"],\n ],\n \"filePicker.remove\": [[\"{{name}}\"]],\n \"filePicker.removed\": [[\"{{name}}\"]],\n \"filePicker.hint\": [[\"{{accept}}\"], [\"\"]],\n \"measuredGrid.removeRow\": [[3]],\n \"measuredGrid.cell\": [[\"{{column}}\", 3]],\n \"measuredGrid.lineError\": [[3]],\n \"measuredGrid.points\": one,\n \"measuredGrid.problems\": one,\n \"feedbackAttachment.attachmentRemoveFile\": [[\"{{name}}\"]],\n \"feedbackAttachment.attachmentLimit\": one,\n \"feedbackAttachment.attachmentUploadFailed\": [[\"{{name}}\"]],\n \"feedbackComposer.sendHint\": [[\"{{modifier}}\"]],\n \"feedbackDialog.submitHint\": [[true], [false]],\n \"feedbackToast.attachmentTooMany\": one,\n \"feedbackToast.statusChanged\": [[\"{{status}}\", \"{{title}}\"]],\n \"feedbackToast.statusRestored\": [[\"{{status}}\", \"{{title}}\"]],\n \"feedbackPage.userFallback\": [[42]],\n // A real value, not a placeholder: the chip upper-cases what it is given, and\n // \"{{ENVIRONMENT}}\" would read as a placeholder of that name.\n \"feedbackPage.environment\": [[\"dev\"]],\n \"feedbackPage.reworkChip\": one,\n \"feedbackDetail.download\": [[\"{{name}}\"]],\n \"feedbackDetail.resolvedAt\": [[\"{{date}}\"]],\n \"accountSettings.passkeys.renameItem\": [[\"{{name}}\"]],\n \"accountSettings.passkeys.renameField\": [[\"{{name}}\"]],\n \"accountSettings.passkeys.deleteItem\": [[\"{{name}}\"]],\n \"accountSettings.passkeys.deleteConfirm\": [[\"{{name}}\"]],\n \"accountSettings.passkeys.created\": [[\"{{date}}\"]],\n \"accountSettings.passkeys.lastUsed\": [[\"{{date}}\"]],\n \"confirmDialog.typed\": [[\"{{text}}\"]],\n \"floatingPanel.badge\": one,\n \"bulkActionBar.selected\": one,\n \"form.submitShortcut\": [[true], [false]],\n \"lineItems.remove\": [[3]],\n \"lineItems.confirmRemove\": [[3]],\n \"lineItems.row\": [[3]],\n \"lineItems.cell\": [[\"{{column}}\", 3]],\n \"progressBar.overLimit\": [[\"{{amount}}\"]],\n \"signedAmount.positive\": [[\"{{amount}}\"]],\n \"signedAmount.negative\": [[\"{{amount}}\"]],\n \"errorBoundary.reportedAs\": [[\"{{reference}}\"]],\n \"authedImage.failedImage\": [[\"{{alt}}\"]],\n \"imageGrid.item\": [[2, 5]],\n \"imageGrid.actions\": [[\"{{name}}\"]],\n \"lightbox.counter\": [[2, 5]],\n \"lightbox.position\": [[2, 5]],\n \"shareCard.roleOf\": [[\"{{name}}\"]],\n \"shareCard.teamHint\": [[\"{{name}}\"]],\n \"shareCard.removeConfirm\": [[\"{{name}}\"]],\n \"shareCard.revokePendingConfirm\": [[\"{{name}}\"]],\n \"serverWake.waking\": [[\"{{appName}}\"], [undefined]],\n \"translationReview.filterCount\": [\n [\"{{status}}\", 1],\n [\"{{status}}\", 3],\n ],\n \"translationReview.placeholdersOnly\": one,\n \"translationReview.progress\": [\n [1, 1],\n [3, 12],\n ],\n \"translationReview.localeProgress\": [[3, 12]],\n \"translationReview.placeholderMismatch\": [[\"{{reference}}\", \"{{text}}\"]],\n \"translationReview.lastApproved\": [[\"{{name}}\", \"{{date}}\"]],\n \"translationReview.lastFlagged\": [[\"{{name}}\", \"{{date}}\"]],\n \"translationReview.scope\": [[\"{{areas}}\"]],\n \"translationReview.exportCorrections\": [[0], [1], [3]],\n \"translationReview.approvedToast\": one,\n \"translationReview.clearedToast\": one,\n \"translationReview.groupCount\": [\n [1, 12],\n [3, 12],\n ],\n \"translationReview.approveGroup\": one,\n \"translationReview.confirmGroup\": [\n [1, \"{{group}}\"],\n [3, \"{{group}}\"],\n ],\n \"characterCount.count\": [[12, 80]],\n \"characterCount.remaining\": one,\n \"inlineEdit.edit\": [[\"{{label}}\"]],\n \"ibanInput.country\": [[\"{{code}}\"]],\n \"ibanInput.length\": [[20, 21]],\n \"signChip.direction\": [[\"{{current}}\", \"{{next}}\"]],\n \"signChip.switchTo\": [[\"{{next}}\"]],\n \"rowActions.actionsFor\": [[\"{{name}}\"]],\n \"columnMapper.readError\": [[\"{{name}}\"]],\n \"columnMapper.summary\": [\n [1, 1],\n [3, 12],\n ],\n \"columnMapper.unreadCount\": one,\n \"columnMapper.unreadLine\": [[3]],\n \"columnMapper.unreadMore\": one,\n \"columnMapper.columnN\": [[3]],\n \"columnMapper.roleOf\": [[\"{{column}}\"]],\n \"columnMapper.requiredRole\": [[\"{{role}}\"]],\n \"columnMapper.requiredRoleShort\": [[\"{{role}}\"]],\n \"columnMapper.previewOf\": [\n [1, 12],\n [10, 250],\n ],\n \"columnMapper.oneOf\": [[\"{{roles}}\"]],\n \"columnMapper.missing\": [[\"{{roles}}\"]],\n \"legal.sections.impressum.operator.body\": operatorSample,\n \"legal.sections.impressum.contact.body\": operatorSample,\n \"legal.sections.privacy.controller.body\": operatorSample,\n \"legal.sections.privacy.contact.body\": operatorSample,\n \"legal.sections.terms.law.body\": operatorSample,\n // 0.28.1: the binding language, named in the reader's language.\n \"legal.sections.terms.language.body\": operatorSample,\n \"legal.translation.note\": operatorSample,\n \"legal.translation.show\": operatorSample,\n // 0.29.0: the sign-in and sign-up parts (docs/auth-harmonization.md).\n \"signIn.tagHint\": [[\"{{taggedAddress}}\"]],\n \"register.emailTagUse\": [[\"{{address}}\"]],\n \"forgotPassword.sent\": [[\"{{email}}\"]],\n \"resetPassword.intro\": [[\"{{email}}\"]],\n \"verifyEmail.resendIn\": [[30]],\n \"acceptInvitation.joined\": [[\"{{name}}\"]],\n \"companySwitcher.current\": [[\"{{name}}\"]],\n // 0.30.0: the user administration and the account's own settings\n // (docs/user-admin-harmonization.md). `rateLimited` with and without a wait.\n \"signIn.recoveryCodeHint\": [[16]],\n \"signIn.rateLimited\": [[], [30], [300]],\n \"register.rateLimited\": [[], [30], [300]],\n \"forgotPassword.rateLimited\": [[], [30], [300]],\n \"resetPassword.rateLimited\": [[], [30], [300]],\n \"verifyEmail.rateLimited\": [[], [30], [300]],\n \"emailChange.emailTagUse\": [[\"{{address}}\"]],\n \"emailChange.pending\": [[\"{{newEmail}}\"]],\n \"emailChange.pendingHint\": [[\"{{currentEmail}}\"]],\n \"emailChange.confirmed\": [[\"{{email}}\"]],\n \"emailChange.rateLimited\": [[], [30], [300]],\n \"sessions.lastActive\": [[\"{{when}}\"]],\n \"sessions.ip\": [[\"{{address}}\"]],\n \"sessions.revokeItem\": [[\"{{device}}\"]],\n \"deleteAccount.afterDays\": [[1], [30]],\n \"deleteAccount.handOver\": [[1], [3]],\n \"deleteAccount.lastAdminOf\": [[\"{{companies}}\"]],\n \"deleteAccount.rateLimited\": [[], [30], [300]],\n \"dataExport.rateLimited\": [[], [30], [300]],\n \"userRoster.actionsFor\": [[\"{{name}}\"]],\n \"roleSelect.roleOf\": [[\"{{name}}\"]],\n \"roleSelect.unavailable\": [[\"{{role}}\", \"{{reason}}\"]],\n \"adminActionLog.by\": [[\"{{actor}}\"]],\n \"adminActionLog.filteredTo\": [[\"{{target}}\"]],\n \"adminActionLog.filterBy\": [[\"{{target}}\"]],\n \"transferOwnership.title\": [[\"{{name}}\"]],\n \"transferOwnership.unavailable\": [[\"{{account}}\", \"{{reason}}\"]],\n \"invitations.sent\": [[\"{{date}}\"]],\n \"invitations.expires\": [[\"{{date}}\"]],\n \"invitations.invitedBy\": [[\"{{name}}\"]],\n \"invitations.resend\": [[\"{{email}}\"]],\n \"invitations.revoke\": [[\"{{email}}\"]],\n \"invitations.linkReady\": [[\"{{email}}\"]],\n \"invitations.notSent\": [[\"{{email}}\"]],\n \"accountState.deletionOn\": [[\"{{date}}\"]],\n // 0.31.0: the settings shell, the landing page and the demo\n // (docs/settings-harmonization.md, docs/landing-demo-harmonization.md). An optional\n // argument both given and left out: the subject without an app name, the refusal\n // without a `Retry-After`.\n \"settings.noMatches\": [[\"{{query}}\"]],\n \"settings.matchCount\": one,\n \"landing.accessSubject\": [[\"{{app}}\"], [undefined]],\n \"demo.rateLimited\": [[], [1], [3]],\n \"demo.hoursLeft\": [\n [1, 1],\n [3, 12],\n ],\n \"demo.minutesLeft\": one,\n // 0.32.0: the subscription parts (docs/billing-harmonization.md §7). A trial or a grant\n // ending today, tomorrow and in five days; the guest's notice with and without the\n // item's name.\n \"billing.choose\": [[\"{{plan}}\"]],\n \"billing.upgrade\": [[\"{{plan}}\"]],\n \"billing.downgrade\": [[\"{{plan}}\"]],\n \"billing.trialEnding\": [[0], [1], [5]],\n \"billing.grantEnding\": [[0], [1], [5]],\n \"billing.guestReadOnly\": [[\"{{item}}\"], [undefined]],\n \"billing.usage\": [[\"{{used}}\", \"{{limit}}\"]],\n \"billing.contactSubject\": [[\"{{dimension}}\"]],\n \"billing.waitingChanges\": one,\n};\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../src/i18n/review.ts"],"sourcesContent":["import { legalOperatorText } from \"../components/legal\";\nimport type { LegalOperator, LegalOperatorText } from \"../components/legal\";\nimport type { UiKitLabels } from \"./kit-labels\";\n\n/**\n * The kit's words as a flat `key → text` list, for an app's translation review.\n *\n * keksdose reviews its own locale bundles on its /translations page — one verdict per\n * locale and key, stored with the text the reviewer saw, so a later change re-opens it.\n * The kit's words appear on the same screens but live in TypeScript, not in the app's\n * bundles, and 143 of them are functions (`(count) => \"3 results\"`; 0.28.0, every one\n * listed in {@link KIT_LABEL_SAMPLES}), which a bundle flattener skips. This turns a\n * label tree into rows that page can join on.\n *\n * - A string label is one row under its dot path: `common.close`. An array of words\n * (weekday names) is one row per entry: `miniCalendar.weekdays.0`.\n * - A function label is called with fixed samples. Text arguments are i18next-style\n * placeholders (`{{name}}`), so a translation that drops one is caught by the same\n * placeholder check the app runs on its own strings. Counts are real numbers, twice\n * where the wording may depend on them — 1 and 3 — so a reviewer sees singular and\n * plural. The key names the sample: `combobox.resultCount(1)`,\n * `shareCard.removeConfirm(name)`, `serverWake.waking()`.\n * - The legal sections that name the operator (0.28) take one object; its sample is a\n * placeholder per field and the key calls it `operator`:\n * `legal.sections.privacy.controller.body(operator)`. Pass the app's operator in\n * `options` and those rows read the real sentence — same keys — so the lawyer\n * reviewing the `legal` area reads what the page says:\n *\n * kitLabelStrings(UI_KIT_LABELS_DE_CH, { operator: OPERATOR, locale: \"de-CH\" })\n *\n * Keys depend only on the samples, never on the locale, so the rows of `de-CH` and of the\n * English reference line up key by key. Pass exactly the tree the app hands\n * `UiKitProvider` — its overrides included — and review what users see:\n *\n * kitLabelStrings(UI_KIT_LABELS_DE_CH) // the rows for de-CH\n * kitLabelStrings(DEFAULT_UI_KIT_LABELS) // the English reference\n *\n * A label that throws on its sample becomes a row starting with \"⚠\", so one broken\n * override shows up on the page instead of taking the page down.\n */\nexport function kitLabelStrings(labels: UiKitLabels, options: KitLabelStringsOptions = {}): Record<string, string> {\n const out: Record<string, string> = {};\n const operator = options.operator && legalOperatorText(options.operator, options.locale);\n const walk = (node: unknown, path: string) => {\n if (typeof node === \"string\") {\n out[path] = node;\n } else if (typeof node === \"function\") {\n for (const args of KIT_LABEL_SAMPLES[path] ?? [[]]) {\n // The key is the SAMPLE's (`…body(operator)`), whatever the label is called with,\n // so rows with and without the app's operator join on the same keys.\n const called = operator ? args.map((arg) => (arg === LEGAL_OPERATOR_SAMPLE ? operator : arg)) : args;\n out[`${path}(${args.map(sampleName).filter((a) => a !== \"\").join(\", \")})`] = render(\n node as (...args: unknown[]) => unknown,\n called,\n );\n }\n } else if (node !== null && typeof node === \"object\") {\n for (const [key, value] of Object.entries(node)) walk(value, path ? `${path}.${key}` : key);\n }\n };\n walk(labels, \"\");\n return out;\n}\n\nexport interface KitLabelStringsOptions {\n /**\n * The app's operator (0.28): the legal sections that name it — the imprint's operator\n * and contact, the controller, the privacy contact, the governing law — are rendered\n * with the real values instead of `{{name}}`-style placeholders, so a reviewer (the\n * lawyer, under the `legal` area) reads the sentence the page shows. The keys do not\n * change: `legal.sections.impressum.operator.body(operator)` either way.\n */\n operator?: LegalOperator;\n /** The language the operator's country is named in — the locale these rows are\n * for (\"de-CH\" → \"Schweiz\"). Default English. */\n locale?: string;\n}\n\nfunction render(label: (...args: unknown[]) => unknown, args: readonly unknown[]): string {\n try {\n return String(label(...args));\n } catch (error) {\n return `⚠ ${error instanceof Error ? error.message : String(error)}`;\n }\n}\n\n/** How a sample argument is written in the key: a placeholder by its name, a number as\n * itself, an empty string as `\"\"`, a missing optional argument not at all. */\nfunction sampleName(arg: unknown): string {\n if (arg === undefined) return \"\";\n if (arg === LEGAL_OPERATOR_SAMPLE) return \"operator\";\n if (typeof arg === \"string\") return /^\\{\\{(\\w+)\\}\\}$/.exec(arg)?.[1] ?? JSON.stringify(arg);\n return String(arg);\n}\n\nconst one = [[1], [3]] as const;\n\n/**\n * The legal sections' operator (0.28) as placeholders, one per field — so a translation\n * that drops the city or the email is caught by the same check as a dropped `{{name}}`\n * anywhere else. Named `operator` in the key; {@link kitLabelStrings}' `operator` option\n * swaps the app's real values in for it.\n */\nconst LEGAL_OPERATOR_SAMPLE: LegalOperatorText = Object.freeze({\n name: \"{{name}}\",\n postalCode: \"{{postalCode}}\",\n city: \"{{city}}\",\n region: \"{{region}}\",\n country: \"{{country}}\",\n email: \"{{email}}\",\n bindingLanguage: \"{{bindingLanguage}}\",\n});\nconst operatorSample = [[LEGAL_OPERATOR_SAMPLE]] as const;\n\n/**\n * The sample arguments of every function label in {@link UiKitLabels}, by dot path.\n * `src/i18n/__tests__/review.test.ts` fails when a function label has no entry here, so\n * a new one cannot ship un-reviewable.\n */\nexport const KIT_LABEL_SAMPLES: Readonly<Record<string, readonly (readonly unknown[])[]>> = {\n \"common.fieldValue\": [[\"{{field}}\", \"{{value}}\"]],\n \"dataTable.filterResults\": [\n [1, 1],\n [3, 12],\n ],\n \"dataTable.sortedAscending\": [[\"{{column}}\"]],\n \"dataTable.sortedDescending\": [[\"{{column}}\"]],\n \"dataTable.sortCleared\": [[\"{{column}}\"]],\n \"dataTable.pageChanged\": [[2, 5]],\n \"dataTable.pageRange\": [[1, 25, 1240]],\n \"dataTable.rowCount\": [[1], [1240]],\n \"dataTable.columnsCount\": [[3, 8]],\n \"miniCalendar.day\": [[\"{{date}}\"]],\n \"miniCalendar.startSelected\": [[\"{{date}}\"]],\n \"miniCalendar.rangeSelected\": [[\"{{from}}\", \"{{to}}\"]],\n \"calendarHeatmap.day\": [[\"{{date}}\", \"{{value}}\"]],\n \"calendarHeatmap.truncated\": one,\n \"monthPicker.month\": [[\"{{monthYear}}\"]],\n \"combobox.create\": [[\"{{query}}\"]],\n \"combobox.selectedCount\": one,\n \"combobox.resultCount\": one,\n \"combobox.minChars\": one,\n \"multiSelect.selectedCount\": one,\n \"chipInput.added\": [[\"{{value}}\"]],\n \"chipInput.removed\": [[\"{{value}}\"]],\n \"chipInput.atLimit\": one,\n \"chipInput.duplicate\": [[\"{{value}}\"]],\n \"tabs.remove\": [[\"{{tab}}\"]],\n \"appShell.toggleGroup\": [[\"{{group}}\"]],\n \"topBar.role\": [[\"{{role}}\"]],\n \"file.size\": [[2_500_000]],\n \"wizard.step\": [[2, 4]],\n \"tour.step\": [[2, 4]],\n \"globalSearch.shortcut\": [[\"{{keys}}\"]],\n \"pieChart.slice\": [[\"{{label}}\", \"{{value}}\", \"{{percent}}\"]],\n \"sparkline.rising\": [[\"{{first}}\", \"{{last}}\"]],\n \"sparkline.falling\": [[\"{{first}}\", \"{{last}}\"]],\n \"sparkline.flat\": [[\"{{value}}\"]],\n \"sparkline.single\": [[\"{{value}}\"]],\n \"sparkline.named\": [[\"{{name}}\", \"{{summary}}\"]],\n \"statTile.increase\": [[\"{{amount}}\"]],\n \"statTile.decrease\": [[\"{{amount}}\"]],\n \"statTile.better\": [[\"{{change}}\"]],\n \"statTile.worse\": [[\"{{change}}\"]],\n \"signaturePad.viewTyped\": [[\"{{name}}\"]],\n \"passwordStrength.announcement\": [[\"{{level}}\"]],\n \"passwordStrength.ruleLength\": [[12]],\n \"passwordStrength.optional\": [[\"{{rule}}\"]],\n \"passwordStrength.tooLong\": [[72]],\n \"dangerConfirm.phrase\": [[\"{{phrase}}\"]],\n \"dangerConfirm.needsPhrase\": [[\"{{phrase}}\"]],\n \"iconPicker.resultCount\": one,\n \"filePicker.rejectedType\": [[\"{{name}}\"]],\n \"filePicker.rejectedTypeOnly\": [[\"{{accept}}\", \"{{name}}\"]],\n \"filePicker.rejectedSize\": [[\"{{name}}\", \"{{maxSize}}\"]],\n \"filePicker.rejectedCount\": [\n [\"{{name}}\", 1],\n [\"{{name}}\", 3],\n ],\n \"filePicker.rejectedInvalid\": [[\"{{name}}\"]],\n \"filePicker.rejectedMany\": one,\n \"filePicker.rejectedPick\": one,\n \"filePicker.selected\": [\n [1, \"{{firstName}}\"],\n [3, \"{{firstName}}\"],\n ],\n \"filePicker.remove\": [[\"{{name}}\"]],\n \"filePicker.removed\": [[\"{{name}}\"]],\n \"filePicker.hint\": [[\"{{accept}}\"], [\"\"]],\n \"measuredGrid.removeRow\": [[3]],\n \"measuredGrid.cell\": [[\"{{column}}\", 3]],\n \"measuredGrid.lineError\": [[3]],\n \"measuredGrid.points\": one,\n \"measuredGrid.problems\": one,\n \"feedbackAttachment.attachmentRemoveFile\": [[\"{{name}}\"]],\n \"feedbackAttachment.attachmentLimit\": one,\n \"feedbackAttachment.attachmentUploadFailed\": [[\"{{name}}\"]],\n \"feedbackComposer.sendHint\": [[\"{{modifier}}\"]],\n \"feedbackDialog.submitHint\": [[true], [false]],\n \"feedbackToast.attachmentTooMany\": one,\n \"feedbackToast.statusChanged\": [[\"{{status}}\", \"{{title}}\"]],\n \"feedbackToast.statusRestored\": [[\"{{status}}\", \"{{title}}\"]],\n \"feedbackPage.userFallback\": [[42]],\n // A real value, not a placeholder: the chip upper-cases what it is given, and\n // \"{{ENVIRONMENT}}\" would read as a placeholder of that name.\n \"feedbackPage.environment\": [[\"dev\"]],\n \"feedbackPage.reworkChip\": one,\n \"feedbackDetail.download\": [[\"{{name}}\"]],\n \"feedbackDetail.resolvedAt\": [[\"{{date}}\"]],\n \"accountSettings.passkeys.renameItem\": [[\"{{name}}\"]],\n \"accountSettings.passkeys.renameField\": [[\"{{name}}\"]],\n \"accountSettings.passkeys.deleteItem\": [[\"{{name}}\"]],\n \"accountSettings.passkeys.deleteConfirm\": [[\"{{name}}\"]],\n \"accountSettings.passkeys.created\": [[\"{{date}}\"]],\n \"accountSettings.passkeys.lastUsed\": [[\"{{date}}\"]],\n \"confirmDialog.typed\": [[\"{{text}}\"]],\n \"floatingPanel.badge\": one,\n \"bulkActionBar.selected\": one,\n \"form.submitShortcut\": [[true], [false]],\n \"lineItems.remove\": [[3]],\n \"lineItems.confirmRemove\": [[3]],\n \"lineItems.row\": [[3]],\n \"lineItems.cell\": [[\"{{column}}\", 3]],\n \"progressBar.overLimit\": [[\"{{amount}}\"]],\n \"signedAmount.positive\": [[\"{{amount}}\"]],\n \"signedAmount.negative\": [[\"{{amount}}\"]],\n \"errorBoundary.reportedAs\": [[\"{{reference}}\"]],\n \"authedImage.failedImage\": [[\"{{alt}}\"]],\n \"imageGrid.item\": [[2, 5]],\n \"imageGrid.actions\": [[\"{{name}}\"]],\n \"lightbox.counter\": [[2, 5]],\n \"lightbox.position\": [[2, 5]],\n \"shareCard.roleOf\": [[\"{{name}}\"]],\n \"shareCard.teamHint\": [[\"{{name}}\"]],\n \"shareCard.removeConfirm\": [[\"{{name}}\"]],\n \"shareCard.revokePendingConfirm\": [[\"{{name}}\"]],\n \"serverWake.waking\": [[\"{{appName}}\"], [undefined]],\n \"translationReview.filterCount\": [\n [\"{{status}}\", 1],\n [\"{{status}}\", 3],\n ],\n \"translationReview.placeholdersOnly\": one,\n \"translationReview.progress\": [\n [1, 1],\n [3, 12],\n ],\n \"translationReview.localeProgress\": [[3, 12]],\n \"translationReview.placeholderMismatch\": [[\"{{reference}}\", \"{{text}}\"]],\n \"translationReview.lastApproved\": [[\"{{name}}\", \"{{date}}\"]],\n \"translationReview.lastFlagged\": [[\"{{name}}\", \"{{date}}\"]],\n \"translationReview.scope\": [[\"{{areas}}\"]],\n \"translationReview.exportCorrections\": [[0], [1], [3]],\n \"translationReview.approvedToast\": one,\n \"translationReview.clearedToast\": one,\n \"translationReview.groupCount\": [\n [1, 12],\n [3, 12],\n ],\n \"translationReview.approveGroup\": one,\n \"translationReview.confirmGroup\": [\n [1, \"{{group}}\"],\n [3, \"{{group}}\"],\n ],\n \"characterCount.count\": [[12, 80]],\n \"characterCount.remaining\": one,\n \"inlineEdit.edit\": [[\"{{label}}\"]],\n \"ibanInput.country\": [[\"{{code}}\"]],\n \"ibanInput.length\": [[20, 21]],\n \"signChip.direction\": [[\"{{current}}\", \"{{next}}\"]],\n \"signChip.switchTo\": [[\"{{next}}\"]],\n \"rowActions.actionsFor\": [[\"{{name}}\"]],\n \"columnMapper.readError\": [[\"{{name}}\"]],\n \"columnMapper.summary\": [\n [1, 1],\n [3, 12],\n ],\n \"columnMapper.unreadCount\": one,\n \"columnMapper.unreadLine\": [[3]],\n \"columnMapper.unreadMore\": one,\n \"columnMapper.columnN\": [[3]],\n \"columnMapper.roleOf\": [[\"{{column}}\"]],\n \"columnMapper.requiredRole\": [[\"{{role}}\"]],\n \"columnMapper.requiredRoleShort\": [[\"{{role}}\"]],\n \"columnMapper.previewOf\": [\n [1, 12],\n [10, 250],\n ],\n \"columnMapper.oneOf\": [[\"{{roles}}\"]],\n \"columnMapper.missing\": [[\"{{roles}}\"]],\n \"legal.sections.impressum.operator.body\": operatorSample,\n \"legal.sections.impressum.contact.body\": operatorSample,\n \"legal.sections.privacy.controller.body\": operatorSample,\n \"legal.sections.privacy.contact.body\": operatorSample,\n \"legal.sections.terms.law.body\": operatorSample,\n // 0.28.1: the binding language, named in the reader's language.\n \"legal.sections.terms.language.body\": operatorSample,\n \"legal.translation.note\": operatorSample,\n \"legal.translation.show\": operatorSample,\n // 0.29.0: the sign-in and sign-up parts (docs/auth-harmonization.md).\n \"signIn.tagHint\": [[\"{{taggedAddress}}\"]],\n \"register.emailTagUse\": [[\"{{address}}\"]],\n \"forgotPassword.sent\": [[\"{{email}}\"]],\n \"resetPassword.intro\": [[\"{{email}}\"]],\n \"verifyEmail.resendIn\": [[30]],\n \"acceptInvitation.joined\": [[\"{{name}}\"]],\n \"companySwitcher.current\": [[\"{{name}}\"]],\n // 0.30.0: the user administration and the account's own settings\n // (docs/user-admin-harmonization.md). `rateLimited` with and without a wait.\n \"signIn.recoveryCodeHint\": [[16]],\n \"signIn.rateLimited\": [[], [30], [300]],\n \"register.rateLimited\": [[], [30], [300]],\n \"forgotPassword.rateLimited\": [[], [30], [300]],\n \"resetPassword.rateLimited\": [[], [30], [300]],\n \"verifyEmail.rateLimited\": [[], [30], [300]],\n \"emailChange.emailTagUse\": [[\"{{address}}\"]],\n \"emailChange.pending\": [[\"{{newEmail}}\"]],\n \"emailChange.pendingHint\": [[\"{{currentEmail}}\"]],\n \"emailChange.confirmed\": [[\"{{email}}\"]],\n \"emailChange.rateLimited\": [[], [30], [300]],\n \"sessions.lastActive\": [[\"{{when}}\"]],\n \"sessions.ip\": [[\"{{address}}\"]],\n \"sessions.revokeItem\": [[\"{{device}}\"]],\n \"deleteAccount.afterDays\": [[1], [30]],\n \"deleteAccount.handOver\": [[1], [3]],\n \"deleteAccount.lastAdminOf\": [[\"{{companies}}\"]],\n \"deleteAccount.rateLimited\": [[], [30], [300]],\n \"dataExport.rateLimited\": [[], [30], [300]],\n \"userRoster.actionsFor\": [[\"{{name}}\"]],\n \"roleSelect.roleOf\": [[\"{{name}}\"]],\n \"roleSelect.unavailable\": [[\"{{role}}\", \"{{reason}}\"]],\n \"adminActionLog.by\": [[\"{{actor}}\"]],\n \"adminActionLog.filteredTo\": [[\"{{target}}\"]],\n \"adminActionLog.filterBy\": [[\"{{target}}\"]],\n \"transferOwnership.title\": [[\"{{name}}\"]],\n \"transferOwnership.unavailable\": [[\"{{account}}\", \"{{reason}}\"]],\n \"invitations.sent\": [[\"{{date}}\"]],\n \"invitations.expires\": [[\"{{date}}\"]],\n \"invitations.invitedBy\": [[\"{{name}}\"]],\n \"invitations.resend\": [[\"{{email}}\"]],\n \"invitations.revoke\": [[\"{{email}}\"]],\n \"invitations.linkReady\": [[\"{{email}}\"]],\n \"invitations.notSent\": [[\"{{email}}\"]],\n \"accountState.deletionOn\": [[\"{{date}}\"]],\n // 0.31.0: the settings shell, the landing page and the demo\n // (docs/settings-harmonization.md, docs/landing-demo-harmonization.md). An optional\n // argument both given and left out: the subject without an app name, the refusal\n // without a `Retry-After`.\n \"settings.noMatches\": [[\"{{query}}\"]],\n \"settings.matchCount\": one,\n \"landing.accessSubject\": [[\"{{app}}\"], [undefined]],\n \"demo.rateLimited\": [[], [1], [3]],\n \"demo.hoursLeft\": [\n [1, 1],\n [3, 12],\n ],\n \"demo.minutesLeft\": one,\n // 0.32.0: the subscription parts (docs/billing-harmonization.md §7). A trial or a grant\n // ending today, tomorrow and in five days; the guest's notice with and without the\n // item's name.\n \"billing.choose\": [[\"{{plan}}\"]],\n \"billing.upgrade\": [[\"{{plan}}\"]],\n \"billing.downgrade\": [[\"{{plan}}\"]],\n \"billing.trialEnding\": [[0], [1], [5]],\n \"billing.grantEnding\": [[0], [1], [5]],\n \"billing.guestReadOnly\": [[\"{{item}}\"], [undefined]],\n \"billing.usage\": [[\"{{used}}\", \"{{limit}}\"]],\n \"billing.contactSubject\": [[\"{{dimension}}\"]],\n \"billing.waitingChanges\": one,\n // 0.33.0: the limit's figure line (§14.11) and the operator's plan parts (§14.12).\n \"billing.limitUsageLine\": [[\"{{dimension}}\", \"{{used}}\", \"{{limit}}\"]],\n \"planChange.current\": [[\"{{plan}}\"]],\n \"planChange.changed\": [[\"{{from}}\", \"{{to}}\"]],\n \"planChange.set\": [[\"{{to}}\"]],\n \"planChange.untilDone\": [[\"{{date}}\"]],\n \"planChange.usageOf\": [[\"{{used}}\", \"{{limit}}\", \"{{dimension}}\"]],\n};\n"],"mappings":"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","names":[]}
package/dist/index.d.ts CHANGED
@@ -26,12 +26,12 @@ export { AnchorRole, ChartRampReport, ContrastCheck, ContrastReport, DeriveOptio
26
26
  export { ALTERNATIVE_PRESETS, DEFAULT_PRESET, DERIVED_PRESETS, IMPRINT_PRESET, PALETTES, PalettePreset, TokenSet, applyTokenSet, presetById } from './theme/palette-presets.js';
27
27
  export { ThemeMode, ThemePreference, ThemeState, ThemeStore, applyPersistedTheme, createThemeStore } from './theme/theme-store.js';
28
28
  export { PaletteStore, applyPersistedPalette, createPaletteStore } from './theme/palette-store.js';
29
- export { bt as AdminActionConfirm, bu as AdminActionConfirmProps, bv as AdminActionConfirmValues, bw as AdminActionLabels, bx as AdminActionTarget, by as AdminConfirmLevel, bz as AdminUserStateFields, bA as AppShell, bB as AppShellLabels, bC as AppShellMoreLabels, bD as AppShellNavItem, bE as AppShellProps, bF as AppShellSidebarFooterItem, bG as AppShellSubItem, bH as BillingLabels, bI as Button, bJ as ButtonClassesOptions, bK as ButtonLinkProps, bL as ButtonProps, bM as ButtonSize, bN as ButtonTone, bO as ButtonVariant, bP as CalculatorLabels, bQ as Card, bR as CardAction, bS as CardActionProps, bT as CardContent, bU as CardContentProps, bV as CardDensity, bW as CardDescription, bX as CardDescriptionProps, bY as CardFooter, bZ as CardFooterProps, b_ as CardHeader, b$ as CardHeaderProps, c0 as CardProps, c1 as CardTitle, c2 as CardTitleLevel, c3 as CardTitleProps, c4 as CardTone, c5 as CharacterCountLabels, c6 as ChartTooltipPlacement, C as ChatComposer, a as ChatComposerHandle, b as ChatComposerLabels, c as ChatComposerProps, d as ChatComposerSlotContext, c7 as ComboboxLabels, c8 as CommonLabels, c9 as ConfirmDialogLabels, ca as ConfirmFn, cb as ConfirmOptions, cc as ConfirmProvider, cd as ConfirmProviderProps, ce as ConfirmTone, cf as CopyButton, cg as CopyButtonLabels, ch as CopyButtonProps, ci as CurrencyLabels, cj as CurrentPasswordInput, ck as CurrentPasswordInputLabels, cl as CurrentPasswordInputProps, cm as DEFAULT_ADMIN_ACTION_LABELS, cn as DEFAULT_APP_SHELL_LABELS, co as DEFAULT_APP_SHELL_MORE_LABELS, D as DEFAULT_ATTACHMENT_ACCEPT, cp as DEFAULT_BILLING_LABELS, cq as DEFAULT_CALCULATOR_LABELS, cr as DEFAULT_CHARACTER_COUNT_LABELS, cs as DEFAULT_COMBOBOX_LABELS, ct as DEFAULT_COMMON_LABELS, cu as DEFAULT_CONFIRM_DIALOG_LABELS, cv as DEFAULT_COPY_BUTTON_LABELS, cw as DEFAULT_CURRENCY_LABELS, cx as DEFAULT_DANGER_CONFIRM_LABELS, cy as DEFAULT_DATE_PICKER_LABELS, cz as DEFAULT_DELETE_ACCOUNT_LABELS, e as DEFAULT_FEEDBACK_ATTACHMENT_LABELS, f as DEFAULT_FEEDBACK_CATEGORY_LABELS, g as DEFAULT_FEEDBACK_COMPOSER_LABELS, h as DEFAULT_FEEDBACK_CONTEXT_LABELS, i as DEFAULT_FEEDBACK_DETAIL_LABELS, j as DEFAULT_FEEDBACK_DIALOG_LABELS, k as DEFAULT_FEEDBACK_MENU_LABELS, l as DEFAULT_FEEDBACK_PAGE_LABELS, m as DEFAULT_FEEDBACK_STATUS_LABELS, n as DEFAULT_FEEDBACK_THREAD_LABELS, o as DEFAULT_FEEDBACK_TOAST_LABELS, cA as DEFAULT_FILE_LABELS, cB as DEFAULT_FILE_PICKER_LABELS, cC as DEFAULT_FORM_ACTIONS_LABELS, cD as DEFAULT_IBAN_INPUT_LABELS, cE as DEFAULT_INVITATIONS_LABELS, cF as DEFAULT_LEGAL_LABELS, p as DEFAULT_MAX_ATTACHMENTS, q as DEFAULT_MAX_ATTACHMENT_BYTES, cG as DEFAULT_MOBILE_BAR_MAX, cH as DEFAULT_MULTI_SELECT_LABELS, cI as DEFAULT_PASSWORD_REVEAL_LABELS, cJ as DEFAULT_PHONE_INPUT_LABELS, cK as DEFAULT_PICKER_SHEET_LABELS, cL as DEFAULT_REGISTER_LABELS, cM as DEFAULT_REVIEWER_SCOPE_LABELS, cN as DEFAULT_ROLE_SELECT_LABELS, cO as DEFAULT_ROW_ACTIONS_LABELS, cP as DEFAULT_SHARE_CARD_LABELS, cQ as DEFAULT_SWIPEABLE_ROW_LABELS, cR as DEFAULT_TABS_LABELS, cS as DEFAULT_TOP_BAR_LABELS, cT as DEFAULT_TRANSFER_OWNERSHIP_LABELS, cU as DEFAULT_USER_ROSTER_LABELS, cV as DangerConfirm, cW as DangerConfirmLabels, cX as DangerConfirmProps, cY as DangerConfirmValues, cZ as DangerConsequence, c_ as DatePickerLabels, c$ as DeleteAccountConsequence, d0 as DeleteAccountLabels, d1 as DeleteAccountSetting, d2 as DeleteAccountSettingProps, d3 as DeleteAccountValues, d4 as DeletionMode, d5 as EmptyState, d6 as EmptyStateProps, F as FEEDBACK_ATTACHMENT_ACCEPT, r as FEEDBACK_AUTHOR_EDITABLE_STATUSES, s as FEEDBACK_AWAITING_STATUSES, t as FEEDBACK_CATEGORY_META, u as FEEDBACK_CATEGORY_ORDER, v as FEEDBACK_PICKABLE_CATEGORIES, w as FEEDBACK_REWORKABLE_STATUSES, x as FEEDBACK_STATUS_META, y as FEEDBACK_STATUS_ORDER, z as FEEDBACK_UNDO_DURATION, d7 as FIELD_BASE, d8 as FIELD_DISPLAY, d9 as FIELD_FLOATING_PAD, da as FIELD_INVALID, db as FIELD_TOUCH_TEXT, dc as FIELD_TRIGGER, dd as FIELD_WRITABLE_LOOK, de as FLOATING_INPUT_CLASS, df as FLOATING_LABEL_CLASS, A as FeedbackAttachmentError, B as FeedbackAttachmentErrorInfo, E as FeedbackAttachmentField, G as FeedbackAttachmentFieldLabels, H as FeedbackAttachmentFieldMultipleProps, I as FeedbackAttachmentFieldProps, J as FeedbackAttachmentFieldRefsProps, K as FeedbackAttachmentFieldSingleProps, L as FeedbackAttachmentLabels, M as FeedbackAttachmentRef, N as FeedbackAttachmentRefsError, O as FeedbackAwaitingToggle, P as FeedbackAwaitingToggleProps, Q as FeedbackCategory, R as FeedbackCategoryBadge, S as FeedbackCategoryLabels, T as FeedbackCategoryOption, U as FeedbackColumnsOptions, V as FeedbackComposer, W as FeedbackComposerAttachment, X as FeedbackComposerHandle, Y as FeedbackComposerLabels, Z as FeedbackComposerProps, _ as FeedbackComposerSlotContext, $ as FeedbackContext, a0 as FeedbackContextBox, a1 as FeedbackContextBoxProps, a2 as FeedbackContextInput, a3 as FeedbackContextLabels, a4 as FeedbackDetail, a5 as FeedbackDetailLabels, a6 as FeedbackDetailPatch, a7 as FeedbackDetailSection, a8 as FeedbackDetailUpdate, a9 as FeedbackDialog, aa as FeedbackDialogLabels, ab as FeedbackDialogMultipleProps, ac as FeedbackDialogProps, ad as FeedbackDialogSingleProps, ae as FeedbackDialogTextLabels, af as FeedbackEmptyState, ag as FeedbackEmptyStateProps, ah as FeedbackEnvironment, ai as FeedbackMenu, aj as FeedbackMenuLabels, ak as FeedbackMenuProps, al as FeedbackMobileCard, am as FeedbackMobileCardProps, an as FeedbackMultipleSubmission, ao as FeedbackNoteAttachment, ap as FeedbackNoteEditor, aq as FeedbackPageLabels, ar as FeedbackProse, as as FeedbackRecord, at as FeedbackRenderDate, au as FeedbackReworkSection, av as FeedbackReworkSectionProps, aw as FeedbackRowAccess, ax as FeedbackRowDetail, ay as FeedbackRowDetailProps, az as FeedbackStatus, aA as FeedbackStatusBadge, aB as FeedbackStatusChange, aC as FeedbackStatusLabels, aD as FeedbackStatusMutate, aE as FeedbackStatusPatch, aF as FeedbackStatusRow, aG as FeedbackStatusTransitions, aH as FeedbackStatusUndoOptions, aI as FeedbackSubject, aJ as FeedbackSubjectProps, aK as FeedbackSubmission, aL as FeedbackSubmitHint, aM as FeedbackSubmitter, aN as FeedbackTableRow, aO as FeedbackThread, aP as FeedbackThreadAttachment, aQ as FeedbackThreadEvent, aR as FeedbackThreadItem, aS as FeedbackThreadLabels, aT as FeedbackThreadMessage, aU as FeedbackThreadProps, aV as FeedbackToastLabels, aW as FeedbackUpload, dg as FieldChevron, dh as FieldChevronProps, di as FileButton, dj as FileButtonProps, dk as FileLabels, dl as FilePickerLabels, dm as FileRejection, dn as FileRejectionReason, dp as FileScreenOptions, dq as FloatingField, dr as FloatingFieldProps, ds as FormActions, dt as FormActionsAlign, du as FormActionsDestructive, dv as FormActionsLabels, dw as FormActionsPlacement, dx as FormActionsProps, dy as FormActionsStack, dz as FormActionsStickyWithin, dA as FormActionsSubmitProps, dB as FormActionsSubmitShortcut, dC as IbanInput, dD as IbanInputLabels, dE as IbanInputProps, dF as IconButton, dG as IconButtonGlyphSize, dH as IconButtonLinkProps, dI as IconButtonProps, dJ as IconButtonSize, dK as IconButtonTone, dL as IconButtonToneColor, dM as IconButtonVariant, dN as Input, dO as InputProps, dP as InvitationDraft, dQ as InvitationRow, dR as InvitationScope, dS as InvitationSentAnswer, dT as InvitationStatus, dU as InvitationsLabels, dV as InvitationsPanel, dW as InvitationsPanelProps, dX as KIT_LANGUAGES, dY as KitDateFormatContext, dZ as KitDateFormatter, d_ as KitLanguage, d$ as KitLanguageCode, e0 as KitLinkComponent, e1 as KitLinkProps, e2 as LEGAL_HREFS, e3 as Label, e4 as LabelOverride, e5 as LabelProps, e6 as LegalDisclaimerSectionLabels, e7 as LegalFooter, e8 as LegalFooterProps, e9 as LegalFramedSectionLabels, ea as LegalLabels, eb as LegalLayout, ec as LegalLayoutProps, ed as LegalLink, ee as LegalLinks, ef as LegalLinksProps, eg as LegalOperator, eh as LegalOperatorSectionLabels, ei as LegalOperatorText, ej as LegalPageKey, ek as LegalSection, el as LegalSectionProps, em as LegalTextSectionLabels, en as MultiSelectLabels, eo as PHONE_QUERY, ep as PasswordRevealLabels, eq as PhoneInput, er as PhoneInputLabels, es as PhoneInputProps, et as PickerSheetLabels, eu as RegisterForm, ev as RegisterFormProps, ew as RegisterLabels, ex as RegisterValues, ey as ResponsiveFormActionsPlacement, ez as ReviewerScope, eA as ReviewerScopeArea, eB as ReviewerScopeEditor, eC as ReviewerScopeEditorProps, eD as ReviewerScopeLabels, eE as ReviewerScopeLanguage, eF as RoleEditing, eG as RoleLock, eH as RoleLockCode, eI as RoleSelect, eJ as RoleSelectLabels, eK as RoleSelectProps, eL as RolesEditor, eM as RolesEditorProps, eN as RosterState, eO as RowAction, eP as RowActionList, eQ as RowActions, eR as RowActionsCollapse, eS as RowActionsColumnOptions, eT as RowActionsLabels, eU as RowActionsProps, eV as RowActionsSize, eW as SUBSCRIPTION_STATUSES, eX as Select, eY as SelectProps, eZ as ShareAddRequest, e_ as ShareCandidate, e$ as ShareCard, f0 as ShareCardLabels, f1 as ShareCardProps, f2 as ShareDialog, f3 as ShareDialogProps, f4 as ShareGrantee, f5 as SharePanel, f6 as SharePanelProps, f7 as SharePendingGrant, f8 as ShareRole, f9 as Spinner, fa as SpinnerProps, fb as SubscriptionStatus, fc as SwipeableRowLabels, fd as TOUCH_TARGET_LARGE, fe as TabItem, ff as Tabs, fg as TabsLabels, fh as TabsProps, fi as Textarea, fj as TextareaProps, fk as TopBarLabels, fl as TransferCandidate, fm as TransferOwnershipDialog, fn as TransferOwnershipDialogProps, fo as TransferOwnershipLabels, fp as TransferUnavailable, fq as TransferValues, fr as TypedConfirmField, fs as TypedConfirmFieldLabels, ft as TypedConfirmFieldProps, fu as TypedMatch, fv as USER_ROSTER_SORT_KEYS, fw as UiKitLabelOverrides, fx as UiKitLabels, fy as UiKitProvider, fz as UiKitProviderProps, aX as UseFeedbackColumnsOptions, fA as UseFilePickerOptions, fB as UseFilePickerReturn, fC as UserIdentityCell, fD as UserIdentityCellProps, fE as UserRosterColumnsOptions, fF as UserRosterLabels, fG as UserRosterRow, fH as UserRosterSortKey, fI as UserRowAction, fJ as UserRowActionList, fK as UserRowActions, fL as UserRowActionsProps, fM as adminUserStates, aY as appendRework, aZ as attachmentName, fN as buttonClasses, a_ as feedbackAttachmentLine, a$ as feedbackAttachmentUrls, b0 as feedbackCategoryRank, b1 as feedbackColumns, b2 as feedbackContext, b3 as feedbackEnvironment, b4 as feedbackMobileGroupBy, b5 as feedbackPageHref, b6 as feedbackPagePath, b7 as feedbackPageUrl, b8 as feedbackRowAccess, b9 as feedbackSubmitter, ba as feedbackSubmitterEmail, fO as formatFileSize, fP as formatLocaleOf, bb as isFeedbackAwaiting, bc as isImageAttachment, fQ as languageOptions, fR as legalOperatorText, fS as loadUiKitLabels, fT as matchesAccept, fU as missingKitLabels, bd as nextFeedbackStatus, be as pastedName, fV as peekUiKitLabels, bf as replaceDescription, fW as resolveLanguage, fX as resolvePasswordRevealLabels, bg as reworkCount, fY as rowActionsColumn, bh as selectableFeedbackStatuses, bi as splitBodyAttachments, bj as splitDescription, fZ as splitMobileBar, f_ as typedMatches, f$ as useBillingLabels, g0 as useConfirm, bk as useFeedbackCategoryLabels, bl as useFeedbackColumns, bm as useFeedbackDetailLabels, bn as useFeedbackPageLabels, bo as useFeedbackRenderDate, bp as useFeedbackStatusLabels, bq as useFeedbackStatusUndo, br as useFeedbackToastLabels, g1 as useFilePicker, g2 as useKitChartTooltipPlacement, g3 as useKitDateFormatter, g4 as useKitFileLabels, g5 as useKitLabelOverrides, g6 as useKitLabels, g7 as useKitLink, g8 as useKitLocale, g9 as useKitWeekStart, ga as useLegalLabels, gb as useUiKitLabels, gc as useUserRosterColumns, gd as userRosterColumns, ge as userRosterSort, bs as visibleFeedbackStatuses } from './delete-account-setting-Dy4kJgUm.js';
29
+ export { bt as AdminActionConfirm, bu as AdminActionConfirmProps, bv as AdminActionConfirmValues, bw as AdminActionLabels, bx as AdminActionTarget, by as AdminConfirmLevel, bz as AdminUserStateFields, bA as AppShell, bB as AppShellLabels, bC as AppShellMoreLabels, bD as AppShellNavItem, bE as AppShellProps, bF as AppShellSidebarFooterItem, bG as AppShellSubItem, bH as BillingLabels, bI as Button, bJ as ButtonClassesOptions, bK as ButtonLinkProps, bL as ButtonProps, bM as ButtonSize, bN as ButtonTone, bO as ButtonVariant, bP as CalculatorLabels, bQ as Card, bR as CardAction, bS as CardActionProps, bT as CardContent, bU as CardContentProps, bV as CardDensity, bW as CardDescription, bX as CardDescriptionProps, bY as CardFooter, bZ as CardFooterProps, b_ as CardHeader, b$ as CardHeaderProps, c0 as CardProps, c1 as CardTitle, c2 as CardTitleLevel, c3 as CardTitleProps, c4 as CardTone, c5 as CharacterCountLabels, c6 as ChartTooltipPlacement, C as ChatComposer, a as ChatComposerHandle, b as ChatComposerLabels, c as ChatComposerProps, d as ChatComposerSlotContext, c7 as ComboboxLabels, c8 as CommonLabels, c9 as ConfirmDialogLabels, ca as ConfirmFn, cb as ConfirmOptions, cc as ConfirmProvider, cd as ConfirmProviderProps, ce as ConfirmTone, cf as CopyButton, cg as CopyButtonLabels, ch as CopyButtonProps, ci as CurrencyLabels, cj as CurrentPasswordInput, ck as CurrentPasswordInputLabels, cl as CurrentPasswordInputProps, cm as DEFAULT_ADMIN_ACTION_LABELS, cn as DEFAULT_APP_SHELL_LABELS, co as DEFAULT_APP_SHELL_MORE_LABELS, D as DEFAULT_ATTACHMENT_ACCEPT, cp as DEFAULT_BILLING_LABELS, cq as DEFAULT_CALCULATOR_LABELS, cr as DEFAULT_CHARACTER_COUNT_LABELS, cs as DEFAULT_COMBOBOX_LABELS, ct as DEFAULT_COMMON_LABELS, cu as DEFAULT_CONFIRM_DIALOG_LABELS, cv as DEFAULT_COPY_BUTTON_LABELS, cw as DEFAULT_CURRENCY_LABELS, cx as DEFAULT_DANGER_CONFIRM_LABELS, cy as DEFAULT_DATE_PICKER_LABELS, cz as DEFAULT_DELETE_ACCOUNT_LABELS, e as DEFAULT_FEEDBACK_ATTACHMENT_LABELS, f as DEFAULT_FEEDBACK_CATEGORY_LABELS, g as DEFAULT_FEEDBACK_COMPOSER_LABELS, h as DEFAULT_FEEDBACK_CONTEXT_LABELS, i as DEFAULT_FEEDBACK_DETAIL_LABELS, j as DEFAULT_FEEDBACK_DIALOG_LABELS, k as DEFAULT_FEEDBACK_MENU_LABELS, l as DEFAULT_FEEDBACK_PAGE_LABELS, m as DEFAULT_FEEDBACK_STATUS_LABELS, n as DEFAULT_FEEDBACK_THREAD_LABELS, o as DEFAULT_FEEDBACK_TOAST_LABELS, cA as DEFAULT_FILE_LABELS, cB as DEFAULT_FILE_PICKER_LABELS, cC as DEFAULT_FORM_ACTIONS_LABELS, cD as DEFAULT_IBAN_INPUT_LABELS, cE as DEFAULT_INVITATIONS_LABELS, cF as DEFAULT_LEGAL_LABELS, p as DEFAULT_MAX_ATTACHMENTS, q as DEFAULT_MAX_ATTACHMENT_BYTES, cG as DEFAULT_MOBILE_BAR_MAX, cH as DEFAULT_MULTI_SELECT_LABELS, cI as DEFAULT_PASSWORD_REVEAL_LABELS, cJ as DEFAULT_PHONE_INPUT_LABELS, cK as DEFAULT_PICKER_SHEET_LABELS, cL as DEFAULT_PLAN_CHANGE_LABELS, cM as DEFAULT_REGISTER_LABELS, cN as DEFAULT_REVIEWER_SCOPE_LABELS, cO as DEFAULT_ROLE_SELECT_LABELS, cP as DEFAULT_ROW_ACTIONS_LABELS, cQ as DEFAULT_SHARE_CARD_LABELS, cR as DEFAULT_SWIPEABLE_ROW_LABELS, cS as DEFAULT_TABS_LABELS, cT as DEFAULT_TOP_BAR_LABELS, cU as DEFAULT_TRANSFER_OWNERSHIP_LABELS, cV as DEFAULT_USER_ROSTER_LABELS, cW as DangerConfirm, cX as DangerConfirmLabels, cY as DangerConfirmProps, cZ as DangerConfirmValues, c_ as DangerConsequence, c$ as DatePickerLabels, d0 as DeleteAccountConsequence, d1 as DeleteAccountLabels, d2 as DeleteAccountSetting, d3 as DeleteAccountSettingProps, d4 as DeleteAccountValues, d5 as DeletionMode, d6 as EmptyState, d7 as EmptyStateProps, F as FEEDBACK_ATTACHMENT_ACCEPT, r as FEEDBACK_AUTHOR_EDITABLE_STATUSES, s as FEEDBACK_AWAITING_STATUSES, t as FEEDBACK_CATEGORY_META, u as FEEDBACK_CATEGORY_ORDER, v as FEEDBACK_PICKABLE_CATEGORIES, w as FEEDBACK_REWORKABLE_STATUSES, x as FEEDBACK_STATUS_META, y as FEEDBACK_STATUS_ORDER, z as FEEDBACK_UNDO_DURATION, d8 as FIELD_BASE, d9 as FIELD_DISPLAY, da as FIELD_FLOATING_PAD, db as FIELD_INVALID, dc as FIELD_TOUCH_TEXT, dd as FIELD_TRIGGER, de as FIELD_WRITABLE_LOOK, df as FLOATING_INPUT_CLASS, dg as FLOATING_LABEL_CLASS, A as FeedbackAttachmentError, B as FeedbackAttachmentErrorInfo, E as FeedbackAttachmentField, G as FeedbackAttachmentFieldLabels, H as FeedbackAttachmentFieldMultipleProps, I as FeedbackAttachmentFieldProps, J as FeedbackAttachmentFieldRefsProps, K as FeedbackAttachmentFieldSingleProps, L as FeedbackAttachmentLabels, M as FeedbackAttachmentRef, N as FeedbackAttachmentRefsError, O as FeedbackAwaitingToggle, P as FeedbackAwaitingToggleProps, Q as FeedbackCategory, R as FeedbackCategoryBadge, S as FeedbackCategoryLabels, T as FeedbackCategoryOption, U as FeedbackColumnsOptions, V as FeedbackComposer, W as FeedbackComposerAttachment, X as FeedbackComposerHandle, Y as FeedbackComposerLabels, Z as FeedbackComposerProps, _ as FeedbackComposerSlotContext, $ as FeedbackContext, a0 as FeedbackContextBox, a1 as FeedbackContextBoxProps, a2 as FeedbackContextInput, a3 as FeedbackContextLabels, a4 as FeedbackDetail, a5 as FeedbackDetailLabels, a6 as FeedbackDetailPatch, a7 as FeedbackDetailSection, a8 as FeedbackDetailUpdate, a9 as FeedbackDialog, aa as FeedbackDialogLabels, ab as FeedbackDialogMultipleProps, ac as FeedbackDialogProps, ad as FeedbackDialogSingleProps, ae as FeedbackDialogTextLabels, af as FeedbackEmptyState, ag as FeedbackEmptyStateProps, ah as FeedbackEnvironment, ai as FeedbackMenu, aj as FeedbackMenuLabels, ak as FeedbackMenuProps, al as FeedbackMobileCard, am as FeedbackMobileCardProps, an as FeedbackMultipleSubmission, ao as FeedbackNoteAttachment, ap as FeedbackNoteEditor, aq as FeedbackPageLabels, ar as FeedbackProse, as as FeedbackRecord, at as FeedbackRenderDate, au as FeedbackReworkSection, av as FeedbackReworkSectionProps, aw as FeedbackRowAccess, ax as FeedbackRowDetail, ay as FeedbackRowDetailProps, az as FeedbackStatus, aA as FeedbackStatusBadge, aB as FeedbackStatusChange, aC as FeedbackStatusLabels, aD as FeedbackStatusMutate, aE as FeedbackStatusPatch, aF as FeedbackStatusRow, aG as FeedbackStatusTransitions, aH as FeedbackStatusUndoOptions, aI as FeedbackSubject, aJ as FeedbackSubjectProps, aK as FeedbackSubmission, aL as FeedbackSubmitHint, aM as FeedbackSubmitter, aN as FeedbackTableRow, aO as FeedbackThread, aP as FeedbackThreadAttachment, aQ as FeedbackThreadEvent, aR as FeedbackThreadItem, aS as FeedbackThreadLabels, aT as FeedbackThreadMessage, aU as FeedbackThreadProps, aV as FeedbackToastLabels, aW as FeedbackUpload, dh as FieldChevron, di as FieldChevronProps, dj as FileButton, dk as FileButtonProps, dl as FileLabels, dm as FilePickerLabels, dn as FileRejection, dp as FileRejectionReason, dq as FileScreenOptions, dr as FloatingField, ds as FloatingFieldProps, dt as FormActions, du as FormActionsAlign, dv as FormActionsDestructive, dw as FormActionsLabels, dx as FormActionsPlacement, dy as FormActionsProps, dz as FormActionsStack, dA as FormActionsStickyWithin, dB as FormActionsSubmitProps, dC as FormActionsSubmitShortcut, dD as IbanInput, dE as IbanInputLabels, dF as IbanInputProps, dG as IconButton, dH as IconButtonGlyphSize, dI as IconButtonLinkProps, dJ as IconButtonProps, dK as IconButtonSize, dL as IconButtonTone, dM as IconButtonToneColor, dN as IconButtonVariant, dO as Input, dP as InputProps, dQ as InvitationDraft, dR as InvitationRow, dS as InvitationScope, dT as InvitationSentAnswer, dU as InvitationStatus, dV as InvitationsLabels, dW as InvitationsPanel, dX as InvitationsPanelProps, dY as KIT_LANGUAGES, dZ as KitDateFormatContext, d_ as KitDateFormatter, d$ as KitLanguage, e0 as KitLanguageCode, e1 as KitLinkComponent, e2 as KitLinkProps, e3 as LEGAL_HREFS, e4 as Label, e5 as LabelOverride, e6 as LabelProps, e7 as LegalDisclaimerSectionLabels, e8 as LegalFooter, e9 as LegalFooterProps, ea as LegalFramedSectionLabels, eb as LegalLabels, ec as LegalLayout, ed as LegalLayoutProps, ee as LegalLink, ef as LegalLinks, eg as LegalLinksProps, eh as LegalOperator, ei as LegalOperatorSectionLabels, ej as LegalOperatorText, ek as LegalPageKey, el as LegalSection, em as LegalSectionProps, en as LegalTextSectionLabels, eo as MultiSelectLabels, ep as PHONE_QUERY, eq as PasswordRevealLabels, er as PhoneInput, es as PhoneInputLabels, et as PhoneInputProps, eu as PickerSheetLabels, ev as PlanChange, ew as PlanChangeConfirm, ex as PlanChangeConfirmProps, ey as PlanChangeLabels, ez as PlanChangeLine, eA as PlanChangeOutcome, eB as PlanChangeResultOptions, eC as PlanChangeTone, eD as PlanColumnOptions, eE as PlanColumnUsage, eF as RegisterForm, eG as RegisterFormProps, eH as RegisterLabels, eI as RegisterValues, eJ as ResponsiveFormActionsPlacement, eK as ReviewerScope, eL as ReviewerScopeArea, eM as ReviewerScopeEditor, eN as ReviewerScopeEditorProps, eO as ReviewerScopeLabels, eP as ReviewerScopeLanguage, eQ as RoleEditing, eR as RoleLock, eS as RoleLockCode, eT as RoleSelect, eU as RoleSelectLabels, eV as RoleSelectProps, eW as RolesEditor, eX as RolesEditorProps, eY as RosterState, eZ as RowAction, e_ as RowActionList, e$ as RowActionTone, f0 as RowActions, f1 as RowActionsCollapse, f2 as RowActionsColumnOptions, f3 as RowActionsLabels, f4 as RowActionsProps, f5 as RowActionsSize, f6 as SUBSCRIPTION_STATUSES, f7 as Select, f8 as SelectProps, f9 as ShareAddRequest, fa as ShareCandidate, fb as ShareCard, fc as ShareCardLabels, fd as ShareCardProps, fe as ShareDialog, ff as ShareDialogProps, fg as ShareGrantee, fh as SharePanel, fi as SharePanelProps, fj as SharePendingGrant, fk as ShareRole, fl as Spinner, fm as SpinnerProps, fn as SubscriptionStatus, fo as SwipeableRowLabels, fp as TOUCH_TARGET_LARGE, fq as TabItem, fr as Tabs, fs as TabsLabels, ft as TabsProps, fu as Textarea, fv as TextareaProps, fw as TopBarLabels, fx as TransferCandidate, fy as TransferOwnershipDialog, fz as TransferOwnershipDialogProps, fA as TransferOwnershipLabels, fB as TransferUnavailable, fC as TransferValues, fD as TypedConfirmField, fE as TypedConfirmFieldLabels, fF as TypedConfirmFieldProps, fG as TypedMatch, fH as USER_ROSTER_SORT_KEYS, fI as UiKitLabelOverrides, fJ as UiKitLabels, fK as UiKitProvider, fL as UiKitProviderProps, aX as UseFeedbackColumnsOptions, fM as UseFilePickerOptions, fN as UseFilePickerReturn, fO as UserIdentityCell, fP as UserIdentityCellProps, fQ as UserRosterColumnsOptions, fR as UserRosterLabels, fS as UserRosterRow, fT as UserRosterSortKey, fU as UserRowAction, fV as UserRowActionList, fW as UserRowActions, fX as UserRowActionsProps, fY as adminUserStates, aY as appendRework, aZ as attachmentName, fZ as buttonClasses, a_ as feedbackAttachmentLine, a$ as feedbackAttachmentUrls, b0 as feedbackCategoryRank, b1 as feedbackColumns, b2 as feedbackContext, b3 as feedbackEnvironment, b4 as feedbackMobileGroupBy, b5 as feedbackPageHref, b6 as feedbackPagePath, b7 as feedbackPageUrl, b8 as feedbackRowAccess, b9 as feedbackSubmitter, ba as feedbackSubmitterEmail, f_ as formatFileSize, f$ as formatLocaleOf, bb as isFeedbackAwaiting, bc as isImageAttachment, g0 as languageOptions, g1 as legalOperatorText, g2 as loadUiKitLabels, g3 as matchesAccept, g4 as missingKitLabels, bd as nextFeedbackStatus, be as pastedName, g5 as peekUiKitLabels, g6 as planColumn, bf as replaceDescription, g7 as resolveLanguage, g8 as resolvePasswordRevealLabels, bg as reworkCount, g9 as rowActionsColumn, bh as selectableFeedbackStatuses, bi as splitBodyAttachments, bj as splitDescription, ga as splitMobileBar, gb as typedMatches, gc as useBillingLabels, gd as useConfirm, bk as useFeedbackCategoryLabels, bl as useFeedbackColumns, bm as useFeedbackDetailLabels, bn as useFeedbackPageLabels, bo as useFeedbackRenderDate, bp as useFeedbackStatusLabels, bq as useFeedbackStatusUndo, br as useFeedbackToastLabels, ge as useFilePicker, gf as useKitChartTooltipPlacement, gg as useKitDateFormatter, gh as useKitFileLabels, gi as useKitLabelOverrides, gj as useKitLabels, gk as useKitLink, gl as useKitLocale, gm as useKitWeekStart, gn as useLegalLabels, go as usePlanChangeResult, gp as usePlanColumn, gq as useUiKitLabels, gr as useUserRosterColumns, gs as userRosterColumns, gt as userRosterSort, bs as visibleFeedbackStatuses } from './delete-account-setting-DAgGBrbn.js';
30
30
  export { Field, FieldControlProps, FieldLabelVisibility, FieldProps, FieldRenderMeta } from './components/field.js';
31
31
  export { SearchField, SearchFieldProps } from './components/search-field.js';
32
32
  export { DropdownPanel, DropdownPanelProps, DropdownSearchHeader, DropdownSearchHeaderProps, useDropdown, useDropdownSearch } from './components/dropdown.js';
33
33
  export { DEFAULT_POPOVER_LABELS, Popover, PopoverLabels, PopoverProps } from './components/popover.js';
34
- export { SwipeAction, SwipeableRow, SwipeableRowProps } from './components/swipeable-row.js';
34
+ export { SwipeAction, SwipePaint, SwipeTone, SwipeableRow, SwipeableRowProps } from './components/swipeable-row.js';
35
35
  export { CalculatorButton, CalculatorButtonLabels } from './components/calculator.js';
36
36
  export { NumberPadSheet, NumberPadSheetLabels } from './components/numpad-sheet.js';
37
37
  export { NumberInput, stepNumber } from './components/number-input.js';
@@ -98,7 +98,7 @@ export { DatePicker, DatePickerProps, DateRangeCommit, DateRangeDraftSummary, Da
98
98
  export { TreeItemState, TreeNode, TreeRow, TreeRowProps, TreeView, TreeViewProps } from './components/tree-view.js';
99
99
  export { ChartConfig, ChartContainer, ChartLegend, ChartLegendContent, ChartSeriesConfig, ChartTooltip, ChartTooltipContent, useChart } from './components/chart.js';
100
100
  export { DEFAULT_DESCRIPTION_LIST_LABELS, DescriptionItem, DescriptionItemProps, DescriptionList, DescriptionListColumns, DescriptionListDensity, DescriptionListLabels, DescriptionListLayout, DescriptionListProps } from './components/description-list.js';
101
- export { DEFAULT_WRITE_LOCK_LABELS, WriteLock, WriteLockLabels, WriteLockProvider, WriteLockProviderProps, useWriteLock } from './components/write-lock.js';
101
+ export { COMMIT_EXCEPT_BILLING, CommitScope, DEFAULT_WRITE_LOCK_LABELS, WriteLock, WriteLockHold, WriteLockKind, WriteLockLabels, WriteLockProvider, WriteLockProviderProps, useWriteLock, writeLockFor } from './components/write-lock.js';
102
102
  export { ACCOUNT_STATE_TONES, AccountState, AccountStateChip, AccountStateChipProps, AccountStateLabels, DEFAULT_ACCOUNT_STATE_LABELS, DateColumnOptions, DateMark, DateMarkProps, RoleChip, RoleChipProps, RoleDefinition, RoleVocabulary, dateColumn } from './components/account-chips.js';
103
103
  export { AxiosLikeInstance, ServerWakeAxiosConfig, ServerWakeFilter, ServerWakeOptions, ServerWakeRequest, ServerWakeStage, ServerWakeWatcher, attachServerWake, createServerWake, serverWake, watchReadsAnd, wrapFetch } from './lib/server-wake.js';
104
104
  export { DEFAULT_SERVER_WAKE_LABELS, ServerWakeLabels, ServerWakeNotice, ServerWakeNoticeProps, useServerWakeStage } from './components/server-wake.js';
@@ -123,7 +123,7 @@ export { PageHeader, PageHeaderActionsAlign, PageHeaderMobileLayout, PageHeaderP
123
123
  export { BreadcrumbItem, BreadcrumbLinkProps, Breadcrumbs, BreadcrumbsLabels, BreadcrumbsProps, DEFAULT_BREADCRUMBS_LABELS } from './components/breadcrumbs.js';
124
124
  export { TextLink, TextLinkCurrent, TextLinkProps, TextLinkRenderProps, TextLinkTone, TextLinkUnderline } from './components/text-link.js';
125
125
  export { DEFAULT_TOAST_LABELS, TOASTER_OFFSET_BOTTOM, TOASTER_OFFSET_TOP, TOAST_ACTION_DURATION, ToastAction, ToastId, ToastLabels, ToastOptions, ToastPosition, ToastPromiseOptions, ToastRedoOptions, ToastSwipeDirection, ToastUndoOptions, Toaster, ToasterOffset, ToasterProps, toast } from './components/toast.js';
126
- export { C as ColumnFilter, D as DEFAULT_DATA_TABLE_LABELS, a as DEFAULT_DATA_TABLE_SORT_LABELS, b as DataTable, G as DataTableCellProps, c as DataTableChrome, d as DataTableColumn, e as DataTableDensity, H as DataTableHeadProps, f as DataTableLabels, g as DataTableProps, h as DataTableRowAction, i as DataTableSortLabels, F as FilterState, j as FilterValue, M as MobileSwipeActions, S as ServerPagination, T as TableUrlState, k as TableUrlStateProps, l as TableUrlSync, U as UseTableUrlStateOptions, m as UseTableUrlStateReturn, n as dateFilter, o as decodeFilterValue, p as decodeFilterValueOfType, q as defaultFilterState, r as encodeFilterValue, s as filterHref, t as isFilterActive, u as missingDataTableLabels, v as numberFilter, w as readTableUrlState, x as resolveDataTableLabels, y as resolveFilter, z as rowMatches, A as selectFilter, B as textFilter, E as useTableUrlState } from './data-table-labels-kpAAVi6g.js';
126
+ export { C as ColumnFilter, D as DEFAULT_DATA_TABLE_LABELS, a as DEFAULT_DATA_TABLE_SORT_LABELS, b as DataTable, G as DataTableCellProps, c as DataTableChrome, d as DataTableColumn, e as DataTableDensity, H as DataTableHeadProps, f as DataTableLabels, g as DataTableProps, h as DataTableRowAction, i as DataTableSortLabels, F as FilterState, j as FilterValue, M as MobileSwipeActions, S as ServerPagination, T as TableUrlState, k as TableUrlStateProps, l as TableUrlSync, U as UseTableUrlStateOptions, m as UseTableUrlStateReturn, n as dateFilter, o as decodeFilterValue, p as decodeFilterValueOfType, q as defaultFilterState, r as encodeFilterValue, s as filterHref, t as isFilterActive, u as missingDataTableLabels, v as numberFilter, w as readTableUrlState, x as resolveDataTableLabels, y as resolveFilter, z as rowMatches, A as selectFilter, B as textFilter, E as useTableUrlState } from './data-table-labels-BJ5JE_X2.js';
127
127
  export { SortCycle, SortDir, SortState, SortStepOptions, decodeSorts, encodeSorts, nextSorts, normalizeSorts } from './components/data-table-sort.js';
128
128
  export { PAGE_SIZE_OPTIONS, Pagination } from './components/data-table-pagination.js';
129
129
  export { FilterPopover } from './components/data-table-filter-popover.js';
@@ -152,7 +152,7 @@ export { SEARCH_TIER_POINTS, SearchEntry, SearchHit, SearchIndex, SearchIndexOpt
152
152
  export { DEFAULT_GLOBAL_SEARCH_LABELS, GlobalSearch, GlobalSearchLabels, GlobalSearchProps, GlobalSearchSource, GlobalSearchSourceGroup, GlobalSearchSuggestion, GlobalSearchTriggerProps } from './search/global-search.js';
153
153
  export { DEFAULT_UI_KIT_LABELS } from './i18n/defaults.js';
154
154
  export { KitLabelStringsOptions, kitLabelStrings } from './i18n/review.js';
155
- export { withAllPlurals } from './i18n/plurals.js';
155
+ export { PluralForms, withAllPlurals } from './i18n/plurals.js';
156
156
  export { ApiTranslationReview, ApiTranslationReviewWrite, DEFAULT_TRANSLATION_REVIEW_FILTER, DEFAULT_TRANSLATION_REVIEW_SWIPE, REVIEW_STATUSES, ReviewStatus, TRANSLATION_REVIEW_SWIPE_ACTIONS, TranslationCorrection, TranslationReview, TranslationReviewFilter, TranslationReviewKey, TranslationReviewSwipeAction, TranslationReviewSwipeBinding, TranslationReviewUndo, TranslationReviewWrite, TranslationRow, TranslationRowGroup, TranslationRowsInput, TranslationSummary, TranslationVerdict, dropReviews, filterTranslationRows, flattenStrings, fromApiReview, groupTranslationRows, keyInArea, keyInAreas, keyNamespace, mergeReviews, placeholderMismatch, placeholderTokens, reviewAreaOf, reviewStatus, reviewUndo, reviewWrite, summariseRows, toApiWrite, translationCorrections, translationReviewSwipePlan, translationRows, unreviewedRows } from './lib/translation-review.js';
157
157
  export { TranslationReviewGroupBy, TranslationReviewOrigin, TranslationReviewPanel, TranslationReviewPanelProps, TranslationReviewSaveInfo } from './components/translation-review.js';
158
158
  export { LEGAL_SKELETON, LegalAcceptCheckbox, LegalAcceptCheckboxProps, LegalDisclaimerVariant, LegalKitSection, LegalKitSectionKey, LegalKitSectionProps, LegalPage, LegalPageProps, LegalSectionOwner, LegalSkeletonEntry, LegalSkeletonPage } from './components/legal-page.js';
@@ -207,9 +207,14 @@ export { SUBSCRIPTION_STATUS_TONES, SubscriptionStatusChip, SubscriptionStatusCh
207
207
  export { BillingBanner, BillingBannerKind, BillingBannerProps } from './billing/billing-banner.js';
208
208
  export { PlanLimitNotice, PlanLimitNoticeProps, planLimitMailto } from './billing/plan-limit-notice.js';
209
209
  export { PlanLimitRefusal, isPlanLimit } from './billing/plan-limit.js';
210
- export { BillingLockReasonOptions, CombinedWriteLock, WriteLockSource, combineWriteLocks, useBillingLockReason } from './billing/billing-lock.js';
210
+ export { BillingLockReasonOptions, CombinedWriteLock, WriteLockSource, combineWriteLocks, useBillingLockReason, useBillingWriteLock } from './billing/billing-lock.js';
211
211
  export { BillingStanding, billingDaysLeft, billingLockAt, isBillingReadOnly } from './billing/billing-standing.js';
212
212
  export { SubscriptionActions, SubscriptionActionsProps } from './billing/subscription-actions.js';
213
+ export { CHECKOUT_RETURN_PARAM, CHECKOUT_RETURN_VALUE, checkoutReturnUrl, isCheckoutReturn, withoutCheckoutReturn } from './billing/checkout-return.js';
214
+ export { CheckoutOverview, CheckoutProcessingOptions, checkoutFingerprint, checkoutLanded, noteCheckoutStarted, useCheckoutProcessing } from './billing/checkout-processing.js';
215
+ export { PAY_PAGE_LANG_PARAM, PaddleEnvironment, paddleLocale, payPageUrl } from './billing/pay-page.js';
216
+ export { BillingOverview, PortalRequest, PortalTarget, SubscriptionSource } from './billing/billing-overview.js';
217
+ export { PlanLimitToastOptions, usePlanLimitToast } from './billing/plan-limit-toast.js';
213
218
  export { CheckboxGroup, CheckboxGroupLegendVisibility, CheckboxGroupOption, CheckboxGroupProps } from './components/checkbox-group.js';
214
219
  export { OneTimeCodeInput, OneTimeCodeInputProps } from './components/one-time-code-input.js';
215
220
  export { LanguageSelect, LanguageSelectProps } from './components/language-select.js';
package/dist/index.js CHANGED
@@ -114,7 +114,7 @@ export * from "./components/tree-view.js";
114
114
  export * from "./components/chart.js";
115
115
  export * from "./components/description-list.js";
116
116
  export * from "./components/form-actions.js";
117
- import { WriteLockProvider, useWriteLock, DEFAULT_WRITE_LOCK_LABELS } from "./components/write-lock.js";
117
+ import { WriteLockProvider, useWriteLock, writeLockFor, COMMIT_EXCEPT_BILLING, DEFAULT_WRITE_LOCK_LABELS } from "./components/write-lock.js";
118
118
  import { RoleChip, AccountStateChip, DateMark, dateColumn, DEFAULT_ACCOUNT_STATE_LABELS, ACCOUNT_STATE_TONES } from "./components/account-chips.js";
119
119
  import { createServerWake, serverWake, watchReadsAnd, attachServerWake, wrapFetch } from "./lib/server-wake.js";
120
120
  import { ServerWakeNotice, useServerWakeStage, DEFAULT_SERVER_WAKE_LABELS } from "./components/server-wake.js";
@@ -331,9 +331,26 @@ import { SubscriptionStatusChip, SUBSCRIPTION_STATUS_TONES } from "./billing/sub
331
331
  import { BillingBanner } from "./billing/billing-banner.js";
332
332
  import { PlanLimitNotice, planLimitMailto } from "./billing/plan-limit-notice.js";
333
333
  import { isPlanLimit } from "./billing/plan-limit.js";
334
- import { combineWriteLocks, useBillingLockReason } from "./billing/billing-lock.js";
334
+ import { combineWriteLocks, useBillingLockReason, useBillingWriteLock } from "./billing/billing-lock.js";
335
335
  import { billingLockAt, isBillingReadOnly, billingDaysLeft } from "./billing/billing-standing.js";
336
336
  import { SubscriptionActions } from "./billing/subscription-actions.js";
337
+ import {
338
+ CHECKOUT_RETURN_PARAM,
339
+ CHECKOUT_RETURN_VALUE,
340
+ isCheckoutReturn,
341
+ withoutCheckoutReturn,
342
+ checkoutReturnUrl
343
+ } from "./billing/checkout-return.js";
344
+ import { checkoutFingerprint, checkoutLanded, noteCheckoutStarted, useCheckoutProcessing } from "./billing/checkout-processing.js";
345
+ import { PAY_PAGE_LANG_PARAM, paddleLocale, payPageUrl } from "./billing/pay-page.js";
346
+ import { usePlanLimitToast } from "./billing/plan-limit-toast.js";
347
+ import {
348
+ planColumn,
349
+ usePlanColumn,
350
+ PlanChangeConfirm,
351
+ usePlanChangeResult,
352
+ DEFAULT_PLAN_CHANGE_LABELS
353
+ } from "./admin/plan-change.js";
337
354
  export * from "./components/checkbox-group.js";
338
355
  export * from "./components/one-time-code-input.js";
339
356
  export * from "./components/language-select.js";
@@ -383,6 +400,9 @@ export {
383
400
  BILLING_INTERVALS,
384
401
  BREAKPOINT_REM,
385
402
  BillingBanner,
403
+ CHECKOUT_RETURN_PARAM,
404
+ CHECKOUT_RETURN_VALUE,
405
+ COMMIT_EXCEPT_BILLING,
386
406
  COUNTRY_CODES,
387
407
  CompanySwitcher,
388
408
  CompleteNameDialog,
@@ -410,6 +430,7 @@ export {
410
430
  DEFAULT_LAST_VISITED_EXCLUDES,
411
431
  DEFAULT_LEGAL_LABELS,
412
432
  DEFAULT_NOT_FOUND_LABELS,
433
+ DEFAULT_PLAN_CHANGE_LABELS,
413
434
  DEFAULT_REAUTH_DIALOG_LABELS,
414
435
  DEFAULT_REGISTER_LABELS,
415
436
  DEFAULT_RESET_PASSWORD_LABELS,
@@ -462,9 +483,11 @@ export {
462
483
  NEXT_PARAM,
463
484
  NotFoundPage,
464
485
  OVERLAY_EXIT_MS,
486
+ PAY_PAGE_LANG_PARAM,
465
487
  PHONE_COUNTRIES,
466
488
  PHONE_DIAL_CODES,
467
489
  PlanCard,
490
+ PlanChangeConfirm,
468
491
  PlanLimitNotice,
469
492
  PlanPicker,
470
493
  PublicFooter,
@@ -532,6 +555,9 @@ export {
532
555
  billingDaysLeft,
533
556
  billingLockAt,
534
557
  breakpointQuery,
558
+ checkoutFingerprint,
559
+ checkoutLanded,
560
+ checkoutReturnUrl,
535
561
  clearLastVisitedPage,
536
562
  cn,
537
563
  combineWriteLocks,
@@ -560,6 +586,7 @@ export {
560
586
  isAuthError,
561
587
  isBillingError,
562
588
  isBillingReadOnly,
589
+ isCheckoutReturn,
563
590
  isDemoSession,
564
591
  isE164,
565
592
  isPlanLimit,
@@ -581,11 +608,15 @@ export {
581
608
  metaContent,
582
609
  minorToMajor,
583
610
  missingRoles,
611
+ noteCheckoutStarted,
612
+ paddleLocale,
584
613
  parseHotkey,
585
614
  parsePhone,
615
+ payPageUrl,
586
616
  personInitials,
587
617
  placeholderMismatch,
588
618
  placeholderTokens,
619
+ planColumn,
589
620
  planLimitMailto,
590
621
  planPrice,
591
622
  planRelation,
@@ -632,8 +663,10 @@ export {
632
663
  useAuthedSrc,
633
664
  useBillingLabels,
634
665
  useBillingLockReason,
666
+ useBillingWriteLock,
635
667
  useBodyScrollLock,
636
668
  useBreakpoint,
669
+ useCheckoutProcessing,
637
670
  useCloseTransition,
638
671
  useCoarsePointer,
639
672
  useCopyToClipboard,
@@ -658,6 +691,9 @@ export {
658
691
  useOverlayHistory,
659
692
  usePageSeo,
660
693
  usePhoneLayout,
694
+ usePlanChangeResult,
695
+ usePlanColumn,
696
+ usePlanLimitToast,
661
697
  useRemPx,
662
698
  useRowSwipe,
663
699
  useSearchParamState,
@@ -680,7 +716,9 @@ export {
680
716
  visibleSettingsGroups,
681
717
  watchReadsAnd,
682
718
  withAllPlurals,
719
+ withoutCheckoutReturn,
683
720
  wrapFetch,
721
+ writeLockFor,
684
722
  writeStored
685
723
  };
686
724
  //# sourceMappingURL=index.js.map