@eifi1/ui-kit 0.31.0 → 0.32.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (565) hide show
  1. package/README.md +53 -30
  2. package/dist/account/delete-account-setting.d.ts +8 -3
  3. package/dist/admin/admin-action-confirm.d.ts +8 -3
  4. package/dist/admin/admin-parts.d.ts +8 -1
  5. package/dist/admin/admin-parts.js +1 -1
  6. package/dist/admin/admin-parts.js.map +1 -1
  7. package/dist/admin/invitations-panel.d.ts +8 -3
  8. package/dist/admin/invitations-panel.js +29 -26
  9. package/dist/admin/invitations-panel.js.map +1 -1
  10. package/dist/admin/reviewer-scope-editor.d.ts +8 -3
  11. package/dist/admin/role-select.d.ts +10 -5
  12. package/dist/admin/transfer-ownership-dialog.d.ts +8 -3
  13. package/dist/admin/user-roster.d.ts +10 -5
  14. package/dist/admin/user-roster.js +8 -47
  15. package/dist/admin/user-roster.js.map +1 -1
  16. package/dist/auth/auth-errors.d.ts +43 -8
  17. package/dist/auth/auth-errors.js +24 -1
  18. package/dist/auth/auth-errors.js.map +1 -1
  19. package/dist/auth/register-form.d.ts +8 -3
  20. package/dist/auth/reset-password-form.d.ts +1 -1
  21. package/dist/auth/reset-password-form.js +2 -1
  22. package/dist/auth/reset-password-form.js.map +1 -1
  23. package/dist/auth/verify-email.d.ts +4 -0
  24. package/dist/auth/verify-email.js +3 -2
  25. package/dist/auth/verify-email.js.map +1 -1
  26. package/dist/billing/billing-banner.d.ts +184 -0
  27. package/dist/billing/billing-banner.js +98 -0
  28. package/dist/billing/billing-banner.js.map +1 -0
  29. package/dist/billing/billing-labels.d.ts +100 -0
  30. package/dist/billing/billing-labels.js +74 -0
  31. package/dist/billing/billing-labels.js.map +1 -0
  32. package/dist/billing/billing-lock.d.ts +158 -0
  33. package/dist/billing/billing-lock.js +17 -0
  34. package/dist/billing/billing-lock.js.map +1 -0
  35. package/dist/billing/billing-standing.d.ts +149 -0
  36. package/dist/billing/billing-standing.js +28 -0
  37. package/dist/billing/billing-standing.js.map +1 -0
  38. package/dist/billing/plan-card.d.ts +248 -0
  39. package/dist/billing/plan-card.js +248 -0
  40. package/dist/billing/plan-card.js.map +1 -0
  41. package/dist/billing/plan-limit-notice.d.ts +156 -0
  42. package/dist/billing/plan-limit-notice.js +76 -0
  43. package/dist/billing/plan-limit-notice.js.map +1 -0
  44. package/dist/billing/plan-limit.d.ts +34 -0
  45. package/dist/billing/plan-limit.js +20 -0
  46. package/dist/billing/plan-limit.js.map +1 -0
  47. package/dist/billing/plan-price.d.ts +61 -0
  48. package/dist/billing/plan-price.js +45 -0
  49. package/dist/billing/plan-price.js.map +1 -0
  50. package/dist/billing/subscription-actions.d.ts +133 -0
  51. package/dist/billing/subscription-actions.js +28 -0
  52. package/dist/billing/subscription-actions.js.map +1 -0
  53. package/dist/billing/subscription-status-chip.d.ts +149 -0
  54. package/dist/billing/subscription-status-chip.js +48 -0
  55. package/dist/billing/subscription-status-chip.js.map +1 -0
  56. package/dist/chart.d.ts +9 -3
  57. package/dist/components/account-chips.d.ts +16 -4
  58. package/dist/components/account-chips.js +21 -3
  59. package/dist/components/account-chips.js.map +1 -1
  60. package/dist/components/alert-banner.d.ts +6 -1
  61. package/dist/components/alert-banner.js +4 -3
  62. package/dist/components/alert-banner.js.map +1 -1
  63. package/dist/components/amount-input.d.ts +8 -3
  64. package/dist/components/amount-input.js +5 -5
  65. package/dist/components/amount-input.js.map +1 -1
  66. package/dist/components/appearance-labels.d.ts +32 -0
  67. package/dist/components/appearance-labels.js +18 -0
  68. package/dist/components/appearance-labels.js.map +1 -0
  69. package/dist/components/autocomplete.js +2 -2
  70. package/dist/components/autocomplete.js.map +1 -1
  71. package/dist/components/breadcrumbs.js +3 -2
  72. package/dist/components/breadcrumbs.js.map +1 -1
  73. package/dist/components/bulk-action-bar.d.ts +2 -2
  74. package/dist/components/bulk-action-bar.js +7 -12
  75. package/dist/components/bulk-action-bar.js.map +1 -1
  76. package/dist/components/button-group.d.ts +8 -3
  77. package/dist/components/calculator.d.ts +8 -3
  78. package/dist/components/calculator.js +4 -3
  79. package/dist/components/calculator.js.map +1 -1
  80. package/dist/components/calendar-heatmap.js +5 -5
  81. package/dist/components/calendar-heatmap.js.map +1 -1
  82. package/dist/components/chart-height.d.ts +23 -0
  83. package/dist/components/chart-height.js +15 -0
  84. package/dist/components/chart-height.js.map +1 -0
  85. package/dist/components/chart-zoom.js +6 -1
  86. package/dist/components/chart-zoom.js.map +1 -1
  87. package/dist/components/checkbox-group.js +2 -2
  88. package/dist/components/checkbox-group.js.map +1 -1
  89. package/dist/components/checkbox.d.ts +10 -0
  90. package/dist/components/checkbox.js +25 -10
  91. package/dist/components/checkbox.js.map +1 -1
  92. package/dist/components/chip.d.ts +19 -3
  93. package/dist/components/chip.js +47 -21
  94. package/dist/components/chip.js.map +1 -1
  95. package/dist/components/choice-card.d.ts +1 -1
  96. package/dist/components/choice-card.js +8 -7
  97. package/dist/components/choice-card.js.map +1 -1
  98. package/dist/components/column-mapper.js +1 -1
  99. package/dist/components/column-mapper.js.map +1 -1
  100. package/dist/components/combobox-core.js +8 -7
  101. package/dist/components/combobox-core.js.map +1 -1
  102. package/dist/components/combobox.js +8 -8
  103. package/dist/components/combobox.js.map +1 -1
  104. package/dist/components/confirm-dialog.d.ts +8 -3
  105. package/dist/components/confirm-dialog.js +7 -1
  106. package/dist/components/confirm-dialog.js.map +1 -1
  107. package/dist/components/copy-button.d.ts +10 -5
  108. package/dist/components/country-select.js +1 -1
  109. package/dist/components/country-select.js.map +1 -1
  110. package/dist/components/currency-select.js +3 -3
  111. package/dist/components/currency-select.js.map +1 -1
  112. package/dist/components/danger-confirm.d.ts +8 -3
  113. package/dist/components/data-table-cells.d.ts +1 -1
  114. package/dist/components/data-table-filter-popover.d.ts +1 -1
  115. package/dist/components/data-table-filter-popover.js +4 -1
  116. package/dist/components/data-table-filter-popover.js.map +1 -1
  117. package/dist/components/data-table-filters.d.ts +1 -1
  118. package/dist/components/data-table-labels.d.ts +1 -1
  119. package/dist/components/data-table-pagination.d.ts +1 -1
  120. package/dist/components/data-table.d.ts +1 -1
  121. package/dist/components/data-table.js +123 -52
  122. package/dist/components/data-table.js.map +1 -1
  123. package/dist/components/date-picker.d.ts +1 -1
  124. package/dist/components/date-picker.js +7 -5
  125. package/dist/components/date-picker.js.map +1 -1
  126. package/dist/components/description-list.js +2 -2
  127. package/dist/components/description-list.js.map +1 -1
  128. package/dist/components/dialog-frame.js +2 -1
  129. package/dist/components/dialog-frame.js.map +1 -1
  130. package/dist/components/disclosure.js +3 -2
  131. package/dist/components/disclosure.js.map +1 -1
  132. package/dist/components/dropdown.d.ts +1 -1
  133. package/dist/components/dropdown.js +7 -1
  134. package/dist/components/dropdown.js.map +1 -1
  135. package/dist/components/facing-pair.d.ts +19 -6
  136. package/dist/components/facing-pair.js +3 -2
  137. package/dist/components/facing-pair.js.map +1 -1
  138. package/dist/components/field-parts.d.ts +102 -6
  139. package/dist/components/field-parts.js +81 -6
  140. package/dist/components/field-parts.js.map +1 -1
  141. package/dist/components/field-sync.d.ts +4 -1
  142. package/dist/components/field-sync.js +12 -2
  143. package/dist/components/field-sync.js.map +1 -1
  144. package/dist/components/field.js +2 -2
  145. package/dist/components/field.js.map +1 -1
  146. package/dist/components/file-button.d.ts +8 -3
  147. package/dist/components/file-dropzone.d.ts +8 -3
  148. package/dist/components/floating-panel.js +7 -4
  149. package/dist/components/floating-panel.js.map +1 -1
  150. package/dist/components/focus-ring.d.ts +12 -0
  151. package/dist/components/focus-ring.js +8 -0
  152. package/dist/components/focus-ring.js.map +1 -0
  153. package/dist/components/form-actions.d.ts +8 -3
  154. package/dist/components/form-actions.js +33 -19
  155. package/dist/components/form-actions.js.map +1 -1
  156. package/dist/components/full-bleed-dialog.d.ts +11 -1
  157. package/dist/components/full-bleed-dialog.js +3 -1
  158. package/dist/components/full-bleed-dialog.js.map +1 -1
  159. package/dist/components/iban-input.d.ts +8 -3
  160. package/dist/components/image-grid.js +1 -1
  161. package/dist/components/image-grid.js.map +1 -1
  162. package/dist/components/inline-edit-field.js +6 -3
  163. package/dist/components/inline-edit-field.js.map +1 -1
  164. package/dist/components/language-select.d.ts +8 -3
  165. package/dist/components/legal-page.d.ts +26 -5
  166. package/dist/components/legal-page.js +3 -1
  167. package/dist/components/legal-page.js.map +1 -1
  168. package/dist/components/legal.d.ts +8 -3
  169. package/dist/components/legal.js +2 -1
  170. package/dist/components/legal.js.map +1 -1
  171. package/dist/components/lightbox.js +24 -2
  172. package/dist/components/lightbox.js.map +1 -1
  173. package/dist/components/line-items.js +2 -1
  174. package/dist/components/line-items.js.map +1 -1
  175. package/dist/components/list.d.ts +5 -0
  176. package/dist/components/list.js +13 -9
  177. package/dist/components/list.js.map +1 -1
  178. package/dist/components/measured-grid.d.ts +3 -1
  179. package/dist/components/measured-grid.js +38 -20
  180. package/dist/components/measured-grid.js.map +1 -1
  181. package/dist/components/menu-item.js +2 -1
  182. package/dist/components/menu-item.js.map +1 -1
  183. package/dist/components/mini-calendar.js +8 -4
  184. package/dist/components/mini-calendar.js.map +1 -1
  185. package/dist/components/money-field.d.ts +8 -3
  186. package/dist/components/month-picker.js +9 -5
  187. package/dist/components/month-picker.js.map +1 -1
  188. package/dist/components/nav-pills.js +1 -1
  189. package/dist/components/nav-pills.js.map +1 -1
  190. package/dist/components/number-field.d.ts +8 -3
  191. package/dist/components/number-input.d.ts +11 -4
  192. package/dist/components/number-input.js +8 -6
  193. package/dist/components/number-input.js.map +1 -1
  194. package/dist/components/numpad-sheet.d.ts +8 -3
  195. package/dist/components/numpad-sheet.js +2 -1
  196. package/dist/components/numpad-sheet.js.map +1 -1
  197. package/dist/components/one-time-code-input.js +2 -2
  198. package/dist/components/one-time-code-input.js.map +1 -1
  199. package/dist/components/page-contents.js +2 -2
  200. package/dist/components/page-contents.js.map +1 -1
  201. package/dist/components/phone-input.d.ts +8 -3
  202. package/dist/components/phone-input.js +2 -2
  203. package/dist/components/phone-input.js.map +1 -1
  204. package/dist/components/pie-chart.d.ts +8 -2
  205. package/dist/components/pie-chart.js +11 -7
  206. package/dist/components/pie-chart.js.map +1 -1
  207. package/dist/components/popover.d.ts +9 -1
  208. package/dist/components/popover.js +8 -4
  209. package/dist/components/popover.js.map +1 -1
  210. package/dist/components/row-actions.d.ts +100 -0
  211. package/dist/components/row-actions.js +165 -0
  212. package/dist/components/row-actions.js.map +1 -0
  213. package/dist/components/scroll-area.js +1 -1
  214. package/dist/components/scroll-area.js.map +1 -1
  215. package/dist/components/search-field.js +3 -2
  216. package/dist/components/search-field.js.map +1 -1
  217. package/dist/components/series-chart-budget.d.ts +30 -7
  218. package/dist/components/series-chart-budget.js +12 -4
  219. package/dist/components/series-chart-budget.js.map +1 -1
  220. package/dist/components/series-chart-ticks.d.ts +7 -1
  221. package/dist/components/series-chart-ticks.js +6 -0
  222. package/dist/components/series-chart-ticks.js.map +1 -1
  223. package/dist/components/series-chart.d.ts +58 -28
  224. package/dist/components/series-chart.js +42 -32
  225. package/dist/components/series-chart.js.map +1 -1
  226. package/dist/components/settings-fields.d.ts +51 -6
  227. package/dist/components/settings-fields.js +37 -0
  228. package/dist/components/settings-fields.js.map +1 -1
  229. package/dist/components/share-card.d.ts +11 -6
  230. package/dist/components/share-card.js +2 -0
  231. package/dist/components/share-card.js.map +1 -1
  232. package/dist/components/sign-chip.d.ts +4 -0
  233. package/dist/components/sign-chip.js +17 -4
  234. package/dist/components/sign-chip.js.map +1 -1
  235. package/dist/components/signature-pad.d.ts +3 -1
  236. package/dist/components/signature-pad.js +8 -5
  237. package/dist/components/signature-pad.js.map +1 -1
  238. package/dist/components/slider.js +7 -6
  239. package/dist/components/slider.js.map +1 -1
  240. package/dist/components/sparkline.d.ts +5 -1
  241. package/dist/components/sparkline.js +4 -2
  242. package/dist/components/sparkline.js.map +1 -1
  243. package/dist/components/stat-tile.d.ts +17 -1
  244. package/dist/components/stat-tile.js +48 -20
  245. package/dist/components/stat-tile.js.map +1 -1
  246. package/dist/components/status-dot.d.ts +4 -0
  247. package/dist/components/swipeable-row.js +2 -1
  248. package/dist/components/swipeable-row.js.map +1 -1
  249. package/dist/components/switch.d.ts +21 -7
  250. package/dist/components/switch.js +24 -11
  251. package/dist/components/switch.js.map +1 -1
  252. package/dist/components/table.js +2 -2
  253. package/dist/components/table.js.map +1 -1
  254. package/dist/components/text-link.d.ts +8 -3
  255. package/dist/components/text-link.js +1 -1
  256. package/dist/components/text-link.js.map +1 -1
  257. package/dist/components/text.d.ts +7 -2
  258. package/dist/components/text.js +5 -5
  259. package/dist/components/text.js.map +1 -1
  260. package/dist/components/tile-radio.js +2 -1
  261. package/dist/components/tile-radio.js.map +1 -1
  262. package/dist/components/time-input.d.ts +8 -3
  263. package/dist/components/toast.d.ts +18 -2
  264. package/dist/components/toast.js +8 -5
  265. package/dist/components/toast.js.map +1 -1
  266. package/dist/components/toggle-group.d.ts +16 -1
  267. package/dist/components/toggle-group.js +40 -11
  268. package/dist/components/toggle-group.js.map +1 -1
  269. package/dist/components/toggle-legend.d.ts +10 -1
  270. package/dist/components/toggle-legend.js +21 -7
  271. package/dist/components/toggle-legend.js.map +1 -1
  272. package/dist/components/translation-review-parts.d.ts +4 -0
  273. package/dist/components/translation-review.d.ts +4 -0
  274. package/dist/components/translation-review.js +3 -3
  275. package/dist/components/translation-review.js.map +1 -1
  276. package/dist/components/tree-view.js +3 -2
  277. package/dist/components/tree-view.js.map +1 -1
  278. package/dist/components/treemap.d.ts +5 -2
  279. package/dist/components/treemap.js +33 -16
  280. package/dist/components/treemap.js.map +1 -1
  281. package/dist/components/ui.d.ts +8 -3
  282. package/dist/components/ui.js +202 -114
  283. package/dist/components/ui.js.map +1 -1
  284. package/dist/components/use-table-state.d.ts +1 -1
  285. package/dist/components/user-avatar.d.ts +5 -1
  286. package/dist/components/user-avatar.js +1 -1
  287. package/dist/components/user-avatar.js.map +1 -1
  288. package/dist/{data-table-labels-DUELeXpa.d.ts → data-table-labels-kpAAVi6g.d.ts} +26 -2
  289. package/dist/data-table.d.ts +1 -1
  290. package/dist/{delete-account-setting-DCFS5Vof.d.ts → delete-account-setting-BvdQdbv3.d.ts} +613 -58
  291. package/dist/demo/demo-banner.js +1 -0
  292. package/dist/demo/demo-banner.js.map +1 -1
  293. package/dist/feedback/feedback-attachment.d.ts +8 -3
  294. package/dist/feedback/feedback-context.d.ts +8 -3
  295. package/dist/feedback/feedback-crash.d.ts +8 -3
  296. package/dist/feedback/feedback-dialog.d.ts +8 -3
  297. package/dist/feedback/feedback-dialog.js +3 -3
  298. package/dist/feedback/feedback-dialog.js.map +1 -1
  299. package/dist/feedback/feedback-inbox.d.ts +8 -3
  300. package/dist/feedback/feedback-inbox.js +2 -2
  301. package/dist/feedback/feedback-inbox.js.map +1 -1
  302. package/dist/feedback/feedback-labels.d.ts +8 -3
  303. package/dist/feedback/feedback-menu.d.ts +9 -4
  304. package/dist/feedback/feedback-record.d.ts +8 -3
  305. package/dist/feedback/feedback-row-detail.d.ts +8 -3
  306. package/dist/feedback/feedback-status-undo.d.ts +8 -3
  307. package/dist/feedback/feedback-submit.d.ts +8 -3
  308. package/dist/feedback/feedback-swipe.d.ts +8 -3
  309. package/dist/feedback/feedback-table.d.ts +8 -3
  310. package/dist/feedback/feedback-thread.d.ts +8 -3
  311. package/dist/feedback/feedback-thread.js +3 -3
  312. package/dist/feedback/feedback-thread.js.map +1 -1
  313. package/dist/feedback.d.ts +8 -3
  314. package/dist/hooks/use-anchored-panel.d.ts +32 -3
  315. package/dist/hooks/use-anchored-panel.js +21 -3
  316. package/dist/hooks/use-anchored-panel.js.map +1 -1
  317. package/dist/hooks/use-breakpoint.d.ts +77 -0
  318. package/dist/hooks/use-breakpoint.js +50 -0
  319. package/dist/hooks/use-breakpoint.js.map +1 -0
  320. package/dist/hooks/use-file-drop.d.ts +8 -3
  321. package/dist/hooks/use-large-text.d.ts +29 -0
  322. package/dist/hooks/use-large-text.js +20 -0
  323. package/dist/hooks/use-large-text.js.map +1 -0
  324. package/dist/hooks/use-windowed-rows.d.ts +52 -8
  325. package/dist/hooks/use-windowed-rows.js +94 -5
  326. package/dist/hooks/use-windowed-rows.js.map +1 -1
  327. package/dist/i18n/defaults.d.ts +8 -3
  328. package/dist/i18n/defaults.js +8 -0
  329. package/dist/i18n/defaults.js.map +1 -1
  330. package/dist/i18n/german.d.ts +8 -3
  331. package/dist/i18n/german.js +91 -3
  332. package/dist/i18n/german.js.map +1 -1
  333. package/dist/i18n/kit-labels.d.ts +8 -3
  334. package/dist/i18n/kit-labels.js.map +1 -1
  335. package/dist/i18n/languages.d.ts +10 -5
  336. package/dist/i18n/locales/de-CH.d.ts +8 -3
  337. package/dist/i18n/locales/en.d.ts +8 -3
  338. package/dist/i18n/locales/es.d.ts +8 -3
  339. package/dist/i18n/locales/es.js +86 -3
  340. package/dist/i18n/locales/es.js.map +1 -1
  341. package/dist/i18n/locales/fr.d.ts +8 -3
  342. package/dist/i18n/locales/fr.js +88 -3
  343. package/dist/i18n/locales/fr.js.map +1 -1
  344. package/dist/i18n/locales/hu.d.ts +8 -3
  345. package/dist/i18n/locales/hu.js +88 -3
  346. package/dist/i18n/locales/hu.js.map +1 -1
  347. package/dist/i18n/locales/it.d.ts +8 -3
  348. package/dist/i18n/locales/it.js +89 -3
  349. package/dist/i18n/locales/it.js.map +1 -1
  350. package/dist/i18n/locales/zh.d.ts +8 -3
  351. package/dist/i18n/locales/zh.js +86 -3
  352. package/dist/i18n/locales/zh.js.map +1 -1
  353. package/dist/i18n/review.d.ts +8 -3
  354. package/dist/i18n/review.js +16 -1
  355. package/dist/i18n/review.js.map +1 -1
  356. package/dist/index.d.ts +29 -13
  357. package/dist/index.js +77 -5
  358. package/dist/index.js.map +1 -1
  359. package/dist/landing/landing-actions.d.ts +12 -5
  360. package/dist/landing/landing-actions.js +1 -1
  361. package/dist/landing/landing-actions.js.map +1 -1
  362. package/dist/landing/landing-sections.d.ts +8 -3
  363. package/dist/landing/public-header.d.ts +9 -4
  364. package/dist/landing/public-header.js +3 -3
  365. package/dist/landing/public-header.js.map +1 -1
  366. package/dist/landing/routing.d.ts +27 -9
  367. package/dist/landing/routing.js +5 -2
  368. package/dist/landing/routing.js.map +1 -1
  369. package/dist/lib/cn.js +3 -2
  370. package/dist/lib/cn.js.map +1 -1
  371. package/dist/rhf/fields.d.ts +8 -3
  372. package/dist/rhf/fields.js +1 -1
  373. package/dist/rhf/fields.js.map +1 -1
  374. package/dist/rhf/form.d.ts +8 -3
  375. package/dist/rhf/form.js +2 -2
  376. package/dist/rhf/form.js.map +1 -1
  377. package/dist/rhf.d.ts +8 -3
  378. package/dist/search/command-palette.d.ts +1 -1
  379. package/dist/search/command-palette.js +9 -8
  380. package/dist/search/command-palette.js.map +1 -1
  381. package/dist/settings/settings-labels.d.ts +8 -1
  382. package/dist/settings/settings-labels.js +7 -2
  383. package/dist/settings/settings-labels.js.map +1 -1
  384. package/dist/settings/settings-layout.js +2 -1
  385. package/dist/settings/settings-layout.js.map +1 -1
  386. package/dist/settings/settings-section.d.ts +8 -3
  387. package/dist/settings/use-account-appearance.d.ts +92 -0
  388. package/dist/settings/use-account-appearance.js +63 -0
  389. package/dist/settings/use-account-appearance.js.map +1 -0
  390. package/dist/settings/use-settings-route.d.ts +1 -1
  391. package/dist/settings/use-settings-route.js +2 -3
  392. package/dist/settings/use-settings-route.js.map +1 -1
  393. package/dist/shell/app-shell.d.ts +12 -171
  394. package/dist/shell/app-shell.js +144 -28
  395. package/dist/shell/app-shell.js.map +1 -1
  396. package/dist/shell/auth-layout.js +1 -1
  397. package/dist/shell/auth-layout.js.map +1 -1
  398. package/dist/shell/option-switcher-menu.js +1 -1
  399. package/dist/shell/option-switcher-menu.js.map +1 -1
  400. package/dist/shell/top-bar-brand.d.ts +8 -3
  401. package/dist/shell/top-bar-brand.js +3 -1
  402. package/dist/shell/top-bar-brand.js.map +1 -1
  403. package/dist/shell/topbar-action-menu.d.ts +4 -0
  404. package/dist/shell/topbar-action-menu.js +3 -3
  405. package/dist/shell/topbar-action-menu.js.map +1 -1
  406. package/dist/shell/topbar-controls.js +4 -4
  407. package/dist/shell/topbar-controls.js.map +1 -1
  408. package/dist/shell.d.ts +10 -6
  409. package/dist/shell.js.map +1 -1
  410. package/dist/theme/contrast-tokens.d.ts +41 -0
  411. package/dist/theme/contrast-tokens.js +59 -0
  412. package/dist/theme/contrast-tokens.js.map +1 -0
  413. package/dist/theme/contrast.d.ts +109 -0
  414. package/dist/theme/contrast.js +128 -0
  415. package/dist/theme/contrast.js.map +1 -0
  416. package/dist/theme/palette-presets.d.ts +12 -1
  417. package/dist/theme/palette-presets.js +9 -4
  418. package/dist/theme/palette-presets.js.map +1 -1
  419. package/dist/theme/palette-store.js.map +1 -1
  420. package/dist/theme/text-size.d.ts +157 -0
  421. package/dist/theme/text-size.js +121 -0
  422. package/dist/theme/text-size.js.map +1 -0
  423. package/dist/wizard/stepper-nav.d.ts +8 -3
  424. package/dist/wizard.d.ts +8 -3
  425. package/package.json +1 -1
  426. package/src/admin/admin-parts.ts +9 -2
  427. package/src/admin/invitations-panel.tsx +36 -29
  428. package/src/admin/user-roster.tsx +17 -72
  429. package/src/auth/auth-errors.ts +68 -7
  430. package/src/auth/reset-password-form.tsx +6 -2
  431. package/src/auth/verify-email.tsx +14 -2
  432. package/src/billing/billing-banner.tsx +205 -0
  433. package/src/billing/billing-labels.ts +224 -0
  434. package/src/billing/billing-lock.ts +75 -0
  435. package/src/billing/billing-standing.ts +72 -0
  436. package/src/billing/plan-card.tsx +458 -0
  437. package/src/billing/plan-limit-notice.tsx +145 -0
  438. package/src/billing/plan-limit.ts +53 -0
  439. package/src/billing/plan-price.ts +101 -0
  440. package/src/billing/subscription-actions.tsx +76 -0
  441. package/src/billing/subscription-status-chip.tsx +95 -0
  442. package/src/components/account-chips.tsx +36 -10
  443. package/src/components/alert-banner.tsx +11 -6
  444. package/src/components/amount-input.tsx +5 -5
  445. package/src/components/appearance-labels.ts +40 -0
  446. package/src/components/autocomplete.tsx +2 -2
  447. package/src/components/breadcrumbs.tsx +3 -3
  448. package/src/components/bulk-action-bar.tsx +11 -14
  449. package/src/components/calculator.tsx +4 -3
  450. package/src/components/calendar-heatmap.tsx +5 -5
  451. package/src/components/chart-height.ts +30 -0
  452. package/src/components/chart-zoom.tsx +6 -1
  453. package/src/components/checkbox-group.tsx +2 -2
  454. package/src/components/checkbox.tsx +62 -20
  455. package/src/components/chip.tsx +105 -24
  456. package/src/components/choice-card.tsx +15 -10
  457. package/src/components/column-mapper.tsx +1 -1
  458. package/src/components/combobox-core.tsx +8 -7
  459. package/src/components/combobox.tsx +8 -8
  460. package/src/components/confirm-dialog.tsx +20 -1
  461. package/src/components/country-select.tsx +1 -1
  462. package/src/components/currency-select.tsx +3 -3
  463. package/src/components/data-table-filter-popover.tsx +7 -1
  464. package/src/components/data-table.tsx +160 -43
  465. package/src/components/date-picker.tsx +12 -9
  466. package/src/components/description-list.tsx +2 -2
  467. package/src/components/dialog-frame.tsx +2 -1
  468. package/src/components/disclosure.tsx +3 -2
  469. package/src/components/dropdown.tsx +10 -2
  470. package/src/components/facing-pair.ts +12 -5
  471. package/src/components/field-parts.tsx +190 -7
  472. package/src/components/field-sync.tsx +17 -3
  473. package/src/components/field.tsx +2 -2
  474. package/src/components/floating-panel.tsx +7 -4
  475. package/src/components/focus-ring.ts +12 -0
  476. package/src/components/form-actions.tsx +55 -18
  477. package/src/components/full-bleed-dialog.tsx +18 -4
  478. package/src/components/image-grid.tsx +1 -1
  479. package/src/components/inline-edit-field.tsx +6 -3
  480. package/src/components/legal-page.tsx +28 -2
  481. package/src/components/legal.tsx +19 -1
  482. package/src/components/lightbox.tsx +24 -2
  483. package/src/components/line-items.tsx +7 -1
  484. package/src/components/list.tsx +36 -10
  485. package/src/components/measured-grid.tsx +49 -24
  486. package/src/components/menu-item.tsx +2 -2
  487. package/src/components/mini-calendar.tsx +8 -4
  488. package/src/components/month-picker.tsx +9 -5
  489. package/src/components/nav-pills.tsx +1 -1
  490. package/src/components/number-input.tsx +14 -7
  491. package/src/components/numpad-sheet.tsx +2 -2
  492. package/src/components/one-time-code-input.tsx +2 -2
  493. package/src/components/page-contents.tsx +2 -2
  494. package/src/components/phone-input.tsx +2 -2
  495. package/src/components/pie-chart.tsx +19 -9
  496. package/src/components/popover.tsx +22 -5
  497. package/src/components/row-actions.tsx +344 -0
  498. package/src/components/scroll-area.tsx +1 -1
  499. package/src/components/search-field.tsx +4 -2
  500. package/src/components/series-chart-budget.ts +40 -8
  501. package/src/components/series-chart-ticks.ts +10 -0
  502. package/src/components/series-chart.tsx +123 -72
  503. package/src/components/settings-fields.tsx +81 -2
  504. package/src/components/share-card.tsx +10 -0
  505. package/src/components/sign-chip.tsx +28 -4
  506. package/src/components/signature-pad.tsx +13 -7
  507. package/src/components/slider.tsx +22 -9
  508. package/src/components/sparkline.tsx +11 -3
  509. package/src/components/stat-tile.tsx +70 -14
  510. package/src/components/swipeable-row.tsx +2 -1
  511. package/src/components/switch.tsx +57 -23
  512. package/src/components/table.tsx +2 -2
  513. package/src/components/text-link.tsx +1 -1
  514. package/src/components/text.tsx +11 -6
  515. package/src/components/tile-radio.tsx +4 -1
  516. package/src/components/toast.tsx +27 -7
  517. package/src/components/toggle-group.tsx +99 -12
  518. package/src/components/toggle-legend.tsx +53 -8
  519. package/src/components/translation-review.tsx +10 -5
  520. package/src/components/tree-view.tsx +3 -2
  521. package/src/components/treemap.tsx +27 -10
  522. package/src/components/ui.tsx +331 -145
  523. package/src/components/user-avatar.tsx +1 -1
  524. package/src/demo/demo-banner.tsx +5 -0
  525. package/src/feedback/feedback-dialog.tsx +3 -3
  526. package/src/feedback/feedback-inbox.tsx +2 -2
  527. package/src/feedback/feedback-thread.tsx +3 -3
  528. package/src/hooks/use-anchored-panel.ts +67 -5
  529. package/src/hooks/use-breakpoint.ts +121 -0
  530. package/src/hooks/use-large-text.ts +41 -0
  531. package/src/hooks/use-windowed-rows.ts +168 -12
  532. package/src/i18n/defaults.ts +8 -0
  533. package/src/i18n/german.ts +105 -1
  534. package/src/i18n/kit-labels.tsx +12 -0
  535. package/src/i18n/locales/es.ts +96 -1
  536. package/src/i18n/locales/fr.ts +100 -1
  537. package/src/i18n/locales/hu.ts +98 -1
  538. package/src/i18n/locales/it.ts +101 -1
  539. package/src/i18n/locales/zh.ts +92 -1
  540. package/src/i18n/review.ts +15 -0
  541. package/src/index.ts +82 -8
  542. package/src/landing/landing-actions.tsx +9 -5
  543. package/src/landing/public-header.tsx +4 -4
  544. package/src/landing/routing.tsx +22 -5
  545. package/src/lib/cn.ts +13 -2
  546. package/src/rhf/fields.tsx +1 -1
  547. package/src/rhf/form.tsx +2 -2
  548. package/src/search/command-palette.tsx +10 -9
  549. package/src/settings/settings-labels.ts +13 -1
  550. package/src/settings/settings-layout.tsx +2 -1
  551. package/src/settings/use-account-appearance.ts +148 -0
  552. package/src/settings/use-settings-route.ts +3 -4
  553. package/src/shell/app-shell.tsx +278 -54
  554. package/src/shell/auth-layout.tsx +1 -1
  555. package/src/shell/option-switcher-menu.tsx +1 -1
  556. package/src/shell/top-bar-brand.tsx +3 -1
  557. package/src/shell/topbar-action-menu.tsx +3 -3
  558. package/src/shell/topbar-controls.tsx +4 -4
  559. package/src/shell.ts +7 -1
  560. package/src/theme/contrast-tokens.ts +112 -0
  561. package/src/theme/contrast.ts +224 -0
  562. package/src/theme/palette-presets.ts +24 -4
  563. package/src/theme/palette-store.ts +6 -1
  564. package/src/theme/text-size.ts +267 -0
  565. package/tokens.css +143 -1
@@ -26,6 +26,10 @@ export function germanLabels(numberLocale: string): UiKitLabels {
26
26
  !seconds || seconds <= 0
27
27
  ? "Zu viele Versuche. Bitte warten Sie einen Moment und versuchen Sie es dann noch einmal."
28
28
  : `Zu viele Versuche. Versuchen Sie es in ${wait(seconds)} erneut.`;
29
+ // 0.32.0 — when a trial or a grant ends, as `inDays` in src/billing/billing-labels.ts:
30
+ // 0 (or less) is today, 1 tomorrow.
31
+ const inDays = (days: number) =>
32
+ days <= 0 ? "heute" : days === 1 ? "morgen" : `in ${n(days)} Tagen`;
29
33
 
30
34
  return {
31
35
  feedbackAttachment: {
@@ -816,6 +820,10 @@ export function germanLabels(numberLocale: string): UiKitLabels {
816
820
  disclaimer: {
817
821
  title: "Haftung für Inhalte und Links",
818
822
  body: "Dies ist ein privates, nicht-kommerzielles Projekt, das im Rahmen einer geschlossenen Beta ohne Gewähr bereitgestellt wird. Für verlinkte externe Websites sind deren Betreiber verantwortlich; auf deren Inhalte haben wir keinen Einfluss.",
823
+ // 0.32.0 — the commercial variant (docs/billing-harmonization.md §8). "Tarif"
824
+ // and "Abonnement" as the `billing` namespace; "MWST", the Swiss abbreviation.
825
+ commercial:
826
+ "Dies ist ein kommerzieller Dienst. Kostenpflichtige Tarife verkauft unser Wiederverkäufer, der als Merchant of Record auftritt: Er verkauft das Abonnement im eigenen Namen, nimmt die Zahlung entgegen, stellt die Rechnung aus und rechnet die MWST ab, und für den Kauf gelten seine Verkaufsbedingungen. Wir achten darauf, dass die Inhalte dieses Dienstes richtig sind, können aber keine Gewähr für ihre Vollständigkeit und Aktualität übernehmen. Für verlinkte externe Websites sind deren Betreiber verantwortlich; auf deren Inhalte haben wir keinen Einfluss.",
819
827
  },
820
828
  },
821
829
  privacy: {
@@ -994,6 +1002,7 @@ export function germanLabels(numberLocale: string): UiKitLabels {
994
1002
  resendIn: (seconds) => `In ${n(seconds)} s erneut senden`,
995
1003
  resent: "Bestätigungs-E-Mail gesendet",
996
1004
  resendError: "Bestätigungs-E-Mail konnte nicht gesendet werden",
1005
+ rateLimited,
997
1006
  banner: "Bitte bestätigen Sie Ihre E-Mail-Adresse.",
998
1007
  dismiss: "Später",
999
1008
  },
@@ -1270,6 +1279,7 @@ export function germanLabels(numberLocale: string): UiKitLabels {
1270
1279
  outflow: "Ausgabe",
1271
1280
  inflow: "Einnahme",
1272
1281
  direction: (current, next) => `Richtung: ${current} – zu ${next} wechseln`,
1282
+ switchTo: (next) => `Zu ${next} wechseln`,
1273
1283
  },
1274
1284
  columnMapper: {
1275
1285
  paste: "Tabelle einfügen",
@@ -1398,7 +1408,7 @@ export function germanLabels(numberLocale: string): UiKitLabels {
1398
1408
  },
1399
1409
  security: {
1400
1410
  title: "Sicherheit",
1401
- help: "Wie Sie sich anmelden: Passwort, Zwei-Faktor-Codes, Passkeys und Sitzungen.",
1411
+ help: "Wie Sie sich anmelden und wo Sie angemeldet sind.",
1402
1412
  },
1403
1413
  notifications: {
1404
1414
  title: "Benachrichtigungen",
@@ -1449,5 +1459,99 @@ export function germanLabels(numberLocale: string): UiKitLabels {
1449
1459
  "Die Beispieldaten werden regelmäßig zurückgesetzt; was Sie in der Demo selbst angelegt haben, wird gelöscht.",
1450
1460
  restart: "Neue Demo starten",
1451
1461
  },
1462
+ // 0.32.0 — docs/billing-harmonization.md §7, §10 and §12.24: "Tarif" is what is
1463
+ // bought (Free, Pro), "Abonnement" the standing arrangement and the settings group.
1464
+ // Formal "Sie".
1465
+ billing: {
1466
+ group: "Abonnement",
1467
+ plans: "Tarife",
1468
+ interval: "Abrechnungszeitraum",
1469
+ yearly: "Jährlich",
1470
+ monthly: "Monatlich",
1471
+ // As `currency.currency`.
1472
+ currency: "Währung",
1473
+ perYear: "pro Jahr",
1474
+ perMonth: "pro Monat",
1475
+ // The Swiss abbreviation (§12.17).
1476
+ vatIncluded: "inkl. MWST",
1477
+ free: "Kostenlos",
1478
+ notOffered: "Für diesen Abrechnungszeitraum nicht erhältlich",
1479
+ // As `progressBar.unlimited`.
1480
+ unlimited: "Unbegrenzt",
1481
+ limits: "Limits",
1482
+ features: "Inbegriffen",
1483
+ current: "Aktueller Tarif",
1484
+ choose: (plan) => `${plan} wählen`,
1485
+ upgrade: (plan) => `Auf ${plan} upgraden`,
1486
+ downgrade: (plan) => `Auf ${plan} wechseln`,
1487
+ isCurrent: "Das ist Ihr aktueller Tarif.",
1488
+ pickFirst: "Wählen Sie zuerst einen Tarif.",
1489
+ status: {
1490
+ trialing: "Testphase",
1491
+ active: "Aktiv",
1492
+ past_due: "Zahlung überfällig",
1493
+ canceled: "Gekündigt",
1494
+ // As `invitations.status.expired`.
1495
+ expired: "Abgelaufen",
1496
+ // Not "Kostenlos", the price of the Free plan: free by the operator's grant.
1497
+ comped: "Kostenlos gewährt",
1498
+ },
1499
+ trialEnding: (days) =>
1500
+ `Ihre Testphase endet ${inDays(days)}. Danach können Sie weiterhin alles ansehen, für Änderungen brauchen Sie aber einen Tarif.`,
1501
+ grantEnding: (days) =>
1502
+ `Ihr kostenloser Zugang endet ${inDays(days)}. Danach können Sie weiterhin alles ansehen, für Änderungen brauchen Sie aber einen Tarif.`,
1503
+ paymentFailed:
1504
+ "Ihre letzte Zahlung ist nicht durchgegangen. Aktualisieren Sie Ihre Zahlungsmethode, um Ihren Tarif zu behalten.",
1505
+ planEnded:
1506
+ "Ihr Tarif ist abgelaufen. Sie können weiterhin alles ansehen und exportieren; wählen Sie einen Tarif, um wieder Änderungen vorzunehmen.",
1507
+ // "Nur angesehen", as `writeLock.reason` ("Nur zum Ansehen"). Never why: the owner's
1508
+ // payment status is the owner's personal data (§12.6).
1509
+ guestReadOnly: (item) =>
1510
+ item
1511
+ ? `„${item}“ kann vorerst nur angesehen werden; der Eigentümer kann diese Einschränkung aufheben.`
1512
+ : "Dies kann vorerst nur angesehen werden; der Eigentümer kann diese Einschränkung aufheben.",
1513
+ processing:
1514
+ "Ihre Zahlung wird verarbeitet. Ihr Tarif beginnt, sobald sie bestätigt ist; diese Seite aktualisiert sich von selbst.",
1515
+ choosePlan: "Tarif wählen",
1516
+ updatePayment: "Zahlungsmethode aktualisieren",
1517
+ checkAgain: "Erneut prüfen",
1518
+ lockReason: "Ihr Tarif ist abgelaufen. Wählen Sie einen Tarif, um wieder Änderungen vorzunehmen.",
1519
+ // As `characterCount.limitReached` ("Zeichenlimit erreicht").
1520
+ limitReached: "Tariflimit erreicht",
1521
+ limitUpgrade: "Um mehr hinzuzufügen, wählen Sie einen Tarif mit einem höheren Limit.",
1522
+ limitContact: "Um mehr hinzuzufügen, fragen Sie uns nach einem höheren Limit.",
1523
+ askForMore: "Mehr anfragen",
1524
+ // Both figures arrive formatted.
1525
+ usage: (used, limit) => `${used} von ${limit}`,
1526
+ contactSubject: (dimension) => `Tariflimit: ${dimension}`,
1527
+ manage: "Zahlung und Rechnungen",
1528
+ // §312k BGB: the button that leads to the cancellation says exactly this (§12.26).
1529
+ cancel: "Verträge hier kündigen",
1530
+ waitingChanges: (count) =>
1531
+ count === 1
1532
+ ? `${n(count)} Änderung wartet auf einen Tarif`
1533
+ : `${n(count)} Änderungen warten auf einen Tarif`,
1534
+ // "Verwerfen", as `wizard.cancelConfirmLabel`.
1535
+ discardWaiting: "Wartende Änderungen verwerfen",
1536
+ },
1537
+ // 0.32.0 — docs/text-size-harmonization.md §6: the text-size and contrast settings in
1538
+ // the "Darstellung" group.
1539
+ appearance: {
1540
+ textSize: "Textgröße",
1541
+ textSizeHelp: "Größere Buchstaben und ein Layout, das ihnen Platz macht.",
1542
+ textSizes: { normal: "Normal", large: "Groß", xlarge: "Sehr groß" },
1543
+ contrast: "Kontrast",
1544
+ contrastHelp:
1545
+ "Mehr Kontrast macht dezente Texte und Linien dunkler und Fokusrahmen dicker. „System“ richtet sich nach diesem Gerät.",
1546
+ contrastModes: { system: "System", standard: "Standard", more: "Mehr" },
1547
+ },
1548
+ rowActions: {
1549
+ actions: "Aktionen",
1550
+ actionsFor: (name) => `Aktionen für ${name}`,
1551
+ },
1552
+ appShellMore: {
1553
+ more: "Mehr",
1554
+ moreTitle: "Weitere Seiten",
1555
+ },
1452
1556
  };
1453
1557
  }
@@ -80,6 +80,10 @@ import type { InvitationsLabels } from "../admin/invitations-panel";
80
80
  import type { SettingsLabels } from "../settings/settings-labels";
81
81
  import type { LandingLabels } from "../landing/landing-labels";
82
82
  import type { DemoLabels } from "../demo/demo-labels";
83
+ import type { BillingLabels } from "../billing/billing-labels";
84
+ import type { AppearanceLabels } from "../components/appearance-labels";
85
+ import type { RowActionsLabels } from "../components/row-actions";
86
+ import type { AppShellMoreLabels } from "../shell/app-shell";
83
87
  import type { AccountStateLabels } from "../components/account-chips";
84
88
  import type { ShareCardLabels } from "../components/share-card";
85
89
  import type { ReauthDialogLabels } from "../components/reauth-dialog";
@@ -392,6 +396,14 @@ export interface UiKitLabels {
392
396
  landing: LandingLabels;
393
397
  /** 0.31.0: the demo's start, banner and end (§5). */
394
398
  demo: DemoLabels;
399
+ /** 0.32.0: plans, standing, banners and the limit notice (docs/billing-harmonization.md §7). */
400
+ billing: BillingLabels;
401
+ /** 0.32.0: the text-size and contrast settings (docs/text-size-harmonization.md §6). */
402
+ appearance: AppearanceLabels;
403
+ /** 0.32.0: a row's actions folded into a "⋯" menu at Large (text size §10.8). */
404
+ rowActions: RowActionsLabels;
405
+ /** 0.32.0: the phone bar's "More" cell and sheet (text size §10.7). */
406
+ appShellMore: AppShellMoreLabels;
395
407
  /** 0.22.0: the screen-reader words of `Input` / `Textarea`'s `showCount` counter. */
396
408
  characterCount: CharacterCountLabels;
397
409
  /** 0.22.0: `CountrySelect`. Its list's "no results" and counts are `combobox`'s. */
@@ -23,6 +23,10 @@ export function uiKitLabelsEs(numberLocale = "es-ES"): UiKitLabels {
23
23
  !seconds || seconds <= 0
24
24
  ? "Demasiados intentos. Espere un momento e inténtelo de nuevo."
25
25
  : `Demasiados intentos. Inténtelo de nuevo en ${wait(seconds)}.`;
26
+ // 0.32.0 — when a trial or a grant ends, as `inDays` in src/billing/billing-labels.ts:
27
+ // 0 (or less) is today, 1 tomorrow.
28
+ const inDays = (days: number) =>
29
+ days <= 0 ? "hoy" : days === 1 ? "mañana" : `dentro de ${n(days)} ${plural(days, "día", "días")}`;
26
30
 
27
31
  return {
28
32
  feedbackAttachment: {
@@ -796,6 +800,10 @@ export function uiKitLabelsEs(numberLocale = "es-ES"): UiKitLabels {
796
800
  disclaimer: {
797
801
  title: "Responsabilidad por contenidos y enlaces",
798
802
  body: "Este es un proyecto privado y sin fines comerciales, que se ofrece sin garantía durante una beta cerrada. Los sitios externos que enlazamos son responsabilidad de sus respectivos operadores; no tenemos control sobre su contenido.",
803
+ // 0.32.0 — the commercial variant (docs/billing-harmonization.md §8). "Plan"
804
+ // and "suscripción" as the `billing` namespace.
805
+ commercial:
806
+ "Este es un servicio comercial. Los planes de pago los vende nuestro revendedor, que actúa como Merchant of Record: vende la suscripción en su propio nombre, cobra el pago, emite la factura y gestiona el IVA, y sus condiciones de venta se aplican a la compra. Procuramos que el contenido de este servicio sea correcto, pero no podemos garantizar que esté completo ni actualizado. Los sitios externos que enlazamos son responsabilidad de sus respectivos operadores; no tenemos control sobre su contenido.",
799
807
  },
800
808
  },
801
809
  privacy: {
@@ -975,6 +983,7 @@ export function uiKitLabelsEs(numberLocale = "es-ES"): UiKitLabels {
975
983
  resendIn: (seconds) => `Enviar de nuevo en ${n(seconds)} s`,
976
984
  resent: "Correo de confirmación enviado",
977
985
  resendError: "No se pudo enviar el correo de confirmación",
986
+ rateLimited,
978
987
  banner: "Confirme su dirección de correo electrónico.",
979
988
  dismiss: "Ahora no",
980
989
  },
@@ -1241,6 +1250,7 @@ export function uiKitLabelsEs(numberLocale = "es-ES"): UiKitLabels {
1241
1250
  outflow: "Salida",
1242
1251
  inflow: "Entrada",
1243
1252
  direction: (current, next) => `Dirección: ${current} — cambiar a ${next}`,
1253
+ switchTo: (next) => `Cambiar a ${next}`,
1244
1254
  },
1245
1255
  columnMapper: {
1246
1256
  paste: "Pegar una tabla",
@@ -1363,7 +1373,7 @@ export function uiKitLabelsEs(numberLocale = "es-ES"): UiKitLabels {
1363
1373
  },
1364
1374
  security: {
1365
1375
  title: "Seguridad",
1366
- help: "Cómo inicia sesión: contraseña, verificación en dos pasos, llaves de acceso y sesiones.",
1376
+ help: "Cómo inicia sesión, y en qué dispositivos tiene la sesión abierta.",
1367
1377
  },
1368
1378
  notifications: {
1369
1379
  title: "Notificaciones",
@@ -1414,6 +1424,91 @@ export function uiKitLabelsEs(numberLocale = "es-ES"): UiKitLabels {
1414
1424
  "Los datos de ejemplo se restablecen con regularidad; su propio trabajo en la demo se elimina.",
1415
1425
  restart: "Iniciar una nueva demo",
1416
1426
  },
1427
+ // 0.32.0 — docs/billing-harmonization.md §7, §10 and §12.24: "plan" is what is bought
1428
+ // (Free, Pro), "suscripción" the standing arrangement and the settings group. "Usted".
1429
+ billing: {
1430
+ group: "Suscripción",
1431
+ plans: "Planes",
1432
+ interval: "Periodo de facturación",
1433
+ yearly: "Anual",
1434
+ monthly: "Mensual",
1435
+ // As `currency.currency`.
1436
+ currency: "Moneda",
1437
+ perYear: "al año",
1438
+ perMonth: "al mes",
1439
+ vatIncluded: "IVA incluido",
1440
+ free: "Gratis",
1441
+ notOffered: "No disponible para este periodo de facturación",
1442
+ // As `progressBar.unlimited`.
1443
+ unlimited: "Ilimitado",
1444
+ limits: "Límites",
1445
+ features: "Incluido",
1446
+ current: "Plan actual",
1447
+ choose: (plan) => `Elegir ${plan}`,
1448
+ upgrade: (plan) => `Mejorar a ${plan}`,
1449
+ downgrade: (plan) => `Cambiar a ${plan}`,
1450
+ isCurrent: "Este es su plan actual.",
1451
+ pickFirst: "Elija primero un plan.",
1452
+ // Agreeing with "suscripción"; "caducada", as `invitations.status.expired`.
1453
+ status: {
1454
+ trialing: "Prueba",
1455
+ active: "Activa",
1456
+ past_due: "Pago vencido",
1457
+ canceled: "Cancelada",
1458
+ expired: "Caducada",
1459
+ comped: "De cortesía",
1460
+ },
1461
+ trialEnding: (days) =>
1462
+ `Su periodo de prueba termina ${inDays(days)}. Después podrá seguir viéndolo todo, pero necesitará un plan para hacer cambios.`,
1463
+ grantEnding: (days) =>
1464
+ `Su acceso gratuito termina ${inDays(days)}. Después podrá seguir viéndolo todo, pero necesitará un plan para hacer cambios.`,
1465
+ paymentFailed: "Su último pago no se ha completado. Actualice su método de pago para conservar su plan.",
1466
+ planEnded:
1467
+ "Su plan ha terminado. Puede seguir viendo y exportando todo; elija un plan para volver a hacer cambios.",
1468
+ // Never why: the owner's payment status is the owner's personal data (§12.6).
1469
+ guestReadOnly: (item) =>
1470
+ item
1471
+ ? `«${item}» es de solo lectura por ahora; su propietario puede levantar esa restricción.`
1472
+ : "Esto es de solo lectura por ahora; su propietario puede levantar esa restricción.",
1473
+ processing:
1474
+ "Su pago se está procesando. Su plan empieza en cuanto se confirme; esta página se actualiza sola.",
1475
+ choosePlan: "Elegir un plan",
1476
+ updatePayment: "Actualizar el método de pago",
1477
+ checkAgain: "Volver a comprobar",
1478
+ lockReason: "Su plan ha terminado. Elija un plan para volver a hacer cambios.",
1479
+ // As `characterCount.limitReached` ("Límite de caracteres alcanzado").
1480
+ limitReached: "Límite del plan alcanzado",
1481
+ limitUpgrade: "Para añadir más, elija un plan con un límite mayor.",
1482
+ limitContact: "Para añadir más, pídanos un límite mayor.",
1483
+ askForMore: "Pedir más",
1484
+ // Both figures arrive formatted; "de", as `characterCount.count`.
1485
+ usage: (used, limit) => `${used} de ${limit}`,
1486
+ contactSubject: (dimension) => `Límite del plan: ${dimension}`,
1487
+ manage: "Pagos y facturas",
1488
+ cancel: "Cancelar la suscripción",
1489
+ waitingChanges: (count) => `${n(count)} ${plural(count, "cambio", "cambios")} a la espera de un plan`,
1490
+ // "Descartar", as `wizard.cancelConfirmLabel`.
1491
+ discardWaiting: "Descartar los cambios en espera",
1492
+ },
1493
+ // 0.32.0 — docs/text-size-harmonization.md §6: the text-size and contrast settings in
1494
+ // the "Apariencia" group.
1495
+ appearance: {
1496
+ textSize: "Tamaño del texto",
1497
+ textSizeHelp: "Letras más grandes y un diseño que les hace sitio.",
1498
+ textSizes: { normal: "Normal", large: "Grande", xlarge: "Muy grande" },
1499
+ contrast: "Contraste",
1500
+ contrastHelp:
1501
+ "El contraste aumentado oscurece los textos tenues y las líneas, y engrosa los marcos de foco. «Sistema» sigue el ajuste de este dispositivo.",
1502
+ contrastModes: { system: "Sistema", standard: "Estándar", more: "Aumentado" },
1503
+ },
1504
+ rowActions: {
1505
+ actions: "Acciones",
1506
+ actionsFor: (name) => `Acciones de ${name}`,
1507
+ },
1508
+ appShellMore: {
1509
+ more: "Más",
1510
+ moreTitle: "Más páginas",
1511
+ },
1417
1512
  };
1418
1513
  }
1419
1514
 
@@ -23,6 +23,10 @@ export function uiKitLabelsFr(numberLocale = "fr-FR"): UiKitLabels {
23
23
  !seconds || seconds <= 0
24
24
  ? "Trop de tentatives. Veuillez patienter un instant, puis réessayer."
25
25
  : `Trop de tentatives. Réessayez dans ${wait(seconds)}.`;
26
+ // 0.32.0 — when a trial or a grant ends, as `inDays` in src/billing/billing-labels.ts:
27
+ // 0 (or less) is today, 1 tomorrow.
28
+ const inDays = (days: number) =>
29
+ days <= 0 ? "aujourd’hui" : days === 1 ? "demain" : `dans ${n(days)} ${plural(days, "jour", "jours")}`;
26
30
 
27
31
  return {
28
32
  feedbackAttachment: {
@@ -814,6 +818,10 @@ export function uiKitLabelsFr(numberLocale = "fr-FR"): UiKitLabels {
814
818
  disclaimer: {
815
819
  title: "Responsabilité pour les contenus et les liens",
816
820
  body: "Il s’agit d’un projet privé et non commercial, proposé dans le cadre d’une bêta fermée, sans garantie. Les sites externes vers lesquels nous renvoyons relèvent de la responsabilité de leurs exploitants respectifs\u202f; nous n’avons aucun contrôle sur leur contenu.",
821
+ // 0.32.0 — the commercial variant (docs/billing-harmonization.md §8).
822
+ // "Formule" and "abonnement" as the `billing` namespace.
823
+ commercial:
824
+ "Il s’agit d’un service commercial. Les formules payantes sont vendues par notre revendeur, qui agit en qualité de Merchant of Record\u00a0: il vend l’abonnement en son nom propre, encaisse le paiement, émet la facture et se charge de la TVA, et ses conditions de vente s’appliquent à l’achat. Nous veillons à l’exactitude du contenu de ce service, mais ne pouvons pas garantir qu’il soit complet ou à jour. Les sites externes vers lesquels nous renvoyons relèvent de la responsabilité de leurs exploitants respectifs\u202f; nous n’avons aucun contrôle sur leur contenu.",
817
825
  },
818
826
  },
819
827
  privacy: {
@@ -997,6 +1005,7 @@ export function uiKitLabelsFr(numberLocale = "fr-FR"): UiKitLabels {
997
1005
  resendIn: (seconds) => `Envoyer à nouveau dans ${n(seconds)}\u00a0s`,
998
1006
  resent: "E-mail de confirmation envoyé",
999
1007
  resendError: "Impossible d’envoyer l’e-mail de confirmation",
1008
+ rateLimited,
1000
1009
  banner: "Veuillez confirmer votre adresse e-mail.",
1001
1010
  dismiss: "Pas maintenant",
1002
1011
  },
@@ -1267,6 +1276,7 @@ export function uiKitLabelsFr(numberLocale = "fr-FR"): UiKitLabels {
1267
1276
  outflow: "Sortie",
1268
1277
  inflow: "Entrée",
1269
1278
  direction: (current, next) => `Sens\u00a0: ${current} — passer à ${next}`,
1279
+ switchTo: (next) => `Passer à ${next}`,
1270
1280
  },
1271
1281
  columnMapper: {
1272
1282
  paste: "Coller un tableau",
@@ -1390,7 +1400,7 @@ export function uiKitLabelsFr(numberLocale = "fr-FR"): UiKitLabels {
1390
1400
  },
1391
1401
  security: {
1392
1402
  title: "Sécurité",
1393
- help: "Comment vous vous connectez\u00a0: mot de passe, codes 2FA, clés d’accès et sessions.",
1403
+ help: "Votre connexion, et les appareils où elle est ouverte.",
1394
1404
  },
1395
1405
  notifications: {
1396
1406
  title: "Notifications",
@@ -1442,6 +1452,95 @@ export function uiKitLabelsFr(numberLocale = "fr-FR"): UiKitLabels {
1442
1452
  "Les données d’exemple sont réinitialisées régulièrement\u202f; ce que vous avez créé dans la démo est supprimé.",
1443
1453
  restart: "Lancer une nouvelle démo",
1444
1454
  },
1455
+ // 0.32.0 — docs/billing-harmonization.md §7, §10 and §12.24: "formule" is what is
1456
+ // bought (Free, Pro), "abonnement" the standing arrangement and the settings group;
1457
+ // "résilier", the word for ending a contract. "Vous".
1458
+ billing: {
1459
+ group: "Abonnement",
1460
+ plans: "Formules",
1461
+ interval: "Période de facturation",
1462
+ // Agreeing with "période".
1463
+ yearly: "Annuelle",
1464
+ monthly: "Mensuelle",
1465
+ // As `currency.currency`.
1466
+ currency: "Devise",
1467
+ perYear: "par an",
1468
+ perMonth: "par mois",
1469
+ vatIncluded: "TVA incluse",
1470
+ free: "Gratuit",
1471
+ notOffered: "Non proposée pour cette période de facturation",
1472
+ // As `progressBar.unlimited`.
1473
+ unlimited: "Illimité",
1474
+ limits: "Limites",
1475
+ features: "Inclus",
1476
+ current: "Formule actuelle",
1477
+ choose: (plan) => `Choisir ${plan}`,
1478
+ upgrade: (plan) => `Passer à ${plan}`,
1479
+ downgrade: (plan) => `Changer pour ${plan}`,
1480
+ isCurrent: "C’est votre formule actuelle.",
1481
+ pickFirst: "Choisissez d’abord une formule.",
1482
+ // Agreeing with "abonnement".
1483
+ status: {
1484
+ trialing: "Essai",
1485
+ active: "Actif",
1486
+ past_due: "Paiement en retard",
1487
+ canceled: "Résilié",
1488
+ expired: "Expiré",
1489
+ comped: "Offert",
1490
+ },
1491
+ trialEnding: (days) =>
1492
+ `Votre période d’essai se termine ${inDays(days)}. Vous pourrez ensuite continuer à tout consulter, mais il vous faudra une formule pour apporter des modifications.`,
1493
+ grantEnding: (days) =>
1494
+ `Votre accès gratuit se termine ${inDays(days)}. Vous pourrez ensuite continuer à tout consulter, mais il vous faudra une formule pour apporter des modifications.`,
1495
+ paymentFailed:
1496
+ "Votre dernier paiement n’a pas abouti. Mettez à jour votre moyen de paiement pour conserver votre formule.",
1497
+ planEnded:
1498
+ "Votre formule a pris fin. Vous pouvez encore tout consulter et exporter\u202f; choisissez une formule pour pouvoir de nouveau apporter des modifications.",
1499
+ // Never why: the owner's payment status is the owner's personal data (§12.6).
1500
+ guestReadOnly: (item) =>
1501
+ item
1502
+ ? `«\u202f${item}\u202f» est en lecture seule pour le moment\u202f; son propriétaire peut lever cette restriction.`
1503
+ : "Ceci est en lecture seule pour le moment\u202f; son propriétaire peut lever cette restriction.",
1504
+ processing:
1505
+ "Votre paiement est en cours de traitement. Votre formule démarre dès qu’il est confirmé\u202f; cette page se met à jour d’elle-même.",
1506
+ choosePlan: "Choisir une formule",
1507
+ updatePayment: "Mettre à jour le moyen de paiement",
1508
+ checkAgain: "Vérifier à nouveau",
1509
+ lockReason: "Votre formule a pris fin. Choisissez une formule pour pouvoir de nouveau apporter des modifications.",
1510
+ // As `characterCount.limitReached` ("Limite de caractères atteinte").
1511
+ limitReached: "Limite de la formule atteinte",
1512
+ limitUpgrade: "Pour en ajouter davantage, choisissez une formule avec une limite plus élevée.",
1513
+ limitContact: "Pour en ajouter davantage, demandez-nous une limite plus élevée.",
1514
+ askForMore: "Demander plus",
1515
+ // Both figures arrive formatted; "sur", as `characterCount.count`.
1516
+ usage: (used, limit) => `${used} sur ${limit}`,
1517
+ contactSubject: (dimension) => `Limite de la formule\u00a0: ${dimension}`,
1518
+ manage: "Paiement et factures",
1519
+ cancel: "Résilier l’abonnement",
1520
+ waitingChanges: (count) =>
1521
+ `${n(count)} ${plural(count, "modification en attente", "modifications en attente")} d’une formule`,
1522
+ // "Abandonner", as `wizard.cancelConfirmLabel`.
1523
+ discardWaiting: "Abandonner les modifications en attente",
1524
+ },
1525
+ // 0.32.0 — docs/text-size-harmonization.md §6: the text-size and contrast settings in
1526
+ // the "Apparence" group. The steps agree with "taille", the modes with "contraste".
1527
+ appearance: {
1528
+ textSize: "Taille du texte",
1529
+ textSizeHelp: "Des lettres plus grandes, et une mise en page qui leur fait de la place.",
1530
+ textSizes: { normal: "Normale", large: "Grande", xlarge: "Très grande" },
1531
+ contrast: "Contraste",
1532
+ contrastHelp:
1533
+ "Le contraste renforcé assombrit les textes discrets et les lignes, et épaissit les contours de focus. «\u202fSystème\u202f» suit le réglage de cet appareil.",
1534
+ contrastModes: { system: "Système", standard: "Standard", more: "Renforcé" },
1535
+ },
1536
+ rowActions: {
1537
+ actions: "Actions",
1538
+ actionsFor: (name) => `Actions pour ${name}`,
1539
+ },
1540
+ appShellMore: {
1541
+ more: "Plus",
1542
+ moreTitle: "Autres pages",
1543
+ },
1445
1544
  };
1446
1545
  }
1447
1546
 
@@ -22,6 +22,9 @@ export function uiKitLabelsHu(numberLocale = "hu-HU"): UiKitLabels {
22
22
  !seconds || seconds <= 0
23
23
  ? "Túl sok próbálkozás. Várjon egy kicsit, majd próbálja újra."
24
24
  : `Túl sok próbálkozás. Próbálja újra ${wait(seconds)} múlva.`;
25
+ // 0.32.0 — when a trial or a grant ends, as `inDays` in src/billing/billing-labels.ts:
26
+ // 0 (or less) is today, 1 tomorrow. The numeral stays bare ("5 nap múlva").
27
+ const inDays = (days: number) => (days <= 0 ? "ma" : days === 1 ? "holnap" : `${n(days)} nap múlva`);
25
28
 
26
29
  return {
27
30
  feedbackAttachment: {
@@ -804,6 +807,10 @@ export function uiKitLabelsHu(numberLocale = "hu-HU"): UiKitLabels {
804
807
  disclaimer: {
805
808
  title: "Felelősség a tartalmakért és a hivatkozásokért",
806
809
  body: "Ez egy magán, nem kereskedelmi projekt, amelyet zárt béta keretében, szavatosság nélkül kínálunk. Az általunk hivatkozott külső oldalakért azok üzemeltetői felelősek; tartalmukra nincs befolyásunk.",
810
+ // 0.32.0 — the commercial variant (docs/billing-harmonization.md §8).
811
+ // "Csomag" and "előfizetés" as the `billing` namespace.
812
+ commercial:
813
+ "Ez egy kereskedelmi szolgáltatás. A fizetős csomagokat viszonteladónk értékesíti, amely Merchant of Record szerepben jár el: a saját nevében értékesíti az előfizetést, beszedi a vételárat, kiállítja a számlát és elszámolja az áfát, a vásárlásra pedig az ő értékesítési feltételei vonatkoznak. Igyekszünk gondoskodni arról, hogy a szolgáltatás tartalma pontos legyen, de nem tudjuk szavatolni, hogy teljes és naprakész legyen. Az általunk hivatkozott külső oldalakért azok üzemeltetői felelősek; tartalmukra nincs befolyásunk.",
807
814
  },
808
815
  },
809
816
  privacy: {
@@ -986,6 +993,7 @@ export function uiKitLabelsHu(numberLocale = "hu-HU"): UiKitLabels {
986
993
  resendIn: (seconds) => `Újraküldés ${n(seconds)} mp múlva`,
987
994
  resent: "Megerősítő e-mail elküldve",
988
995
  resendError: "Nem sikerült elküldeni a megerősítő e-mailt",
996
+ rateLimited,
989
997
  banner: "Kérjük, erősítse meg az e-mail-címét.",
990
998
  dismiss: "Most nem",
991
999
  },
@@ -1244,6 +1252,7 @@ export function uiKitLabelsHu(numberLocale = "hu-HU"): UiKitLabels {
1244
1252
  outflow: "Kiadás",
1245
1253
  inflow: "Bevétel",
1246
1254
  direction: (current, next) => `Irány: ${current} – váltás erre: ${next}`,
1255
+ switchTo: (next) => `Váltás erre: ${next}`,
1247
1256
  },
1248
1257
  columnMapper: {
1249
1258
  paste: "Táblázat beillesztése",
@@ -1365,7 +1374,7 @@ export function uiKitLabelsHu(numberLocale = "hu-HU"): UiKitLabels {
1365
1374
  },
1366
1375
  security: {
1367
1376
  title: "Biztonság",
1368
- help: "Hogyan jelentkezik be: jelszó, ellenőrző kódok, hozzáférési kulcsok és munkamenetek.",
1377
+ help: "Hogyan jelentkezik be, és hol van bejelentkezve.",
1369
1378
  },
1370
1379
  notifications: {
1371
1380
  title: "Értesítések",
@@ -1416,6 +1425,94 @@ export function uiKitLabelsHu(numberLocale = "hu-HU"): UiKitLabels {
1416
1425
  "A mintaadatokat rendszeresen visszaállítjuk, a demóban létrehozott saját munkáját pedig töröljük.",
1417
1426
  restart: "Új demó indítása",
1418
1427
  },
1428
+ // 0.32.0 — docs/billing-harmonization.md §7, §10 and §12.24: "csomag" is what is bought
1429
+ // (Free, Pro), "előfizetés" the standing arrangement and the settings group. The plan's
1430
+ // name takes no case ending: it follows a colon or a possessive ("Pro választása").
1431
+ billing: {
1432
+ group: "Előfizetés",
1433
+ plans: "Csomagok",
1434
+ interval: "Számlázási időszak",
1435
+ yearly: "Éves",
1436
+ monthly: "Havi",
1437
+ // As `currency.currency`.
1438
+ currency: "Pénznem",
1439
+ perYear: "évente",
1440
+ perMonth: "havonta",
1441
+ vatIncluded: "Áfával együtt",
1442
+ free: "Ingyenes",
1443
+ notOffered: "Ebben a számlázási időszakban nem érhető el",
1444
+ // As `progressBar.unlimited`.
1445
+ unlimited: "Korlátlan",
1446
+ limits: "Korlátok",
1447
+ features: "A csomag tartalma",
1448
+ current: "Jelenlegi csomag",
1449
+ choose: (plan) => `${plan} választása`,
1450
+ upgrade: (plan) => `Váltás nagyobb csomagra: ${plan}`,
1451
+ downgrade: (plan) => `Váltás erre a csomagra: ${plan}`,
1452
+ isCurrent: "Ez az Ön jelenlegi csomagja.",
1453
+ pickFirst: "Előbb válasszon egy csomagot.",
1454
+ // "Lejárt", as `invitations.status.expired`.
1455
+ status: {
1456
+ trialing: "Próbaidőszak",
1457
+ active: "Aktív",
1458
+ past_due: "Fizetés késésben",
1459
+ canceled: "Lemondva",
1460
+ expired: "Lejárt",
1461
+ comped: "Ingyenesen biztosítva",
1462
+ },
1463
+ trialEnding: (days) =>
1464
+ `A próbaidőszaka ${inDays(days)} ér véget. Utána is mindent megtekinthet, de a módosításokhoz csomagra lesz szüksége.`,
1465
+ grantEnding: (days) =>
1466
+ `Az ingyenes hozzáférése ${inDays(days)} ér véget. Utána is mindent megtekinthet, de a módosításokhoz csomagra lesz szüksége.`,
1467
+ paymentFailed:
1468
+ "A legutóbbi fizetése nem sikerült. A csomagja megtartásához frissítse a fizetési módját.",
1469
+ planEnded:
1470
+ "A csomagja lejárt. Továbbra is mindent megtekinthet és exportálhat; ha ismét módosítani szeretne, válasszon csomagot.",
1471
+ // Never why: the owner's payment status is the owner's personal data (§12.6).
1472
+ guestReadOnly: (item) =>
1473
+ item
1474
+ ? `„${item}” egyelőre csak olvasható; a tulajdonosa feloldhatja ezt a korlátozást.`
1475
+ : "Ez egyelőre csak olvasható; a tulajdonosa feloldhatja ezt a korlátozást.",
1476
+ processing:
1477
+ "A fizetése feldolgozás alatt áll. A csomagja a megerősítés után azonnal elindul; ez az oldal magától frissül.",
1478
+ choosePlan: "Csomag választása",
1479
+ updatePayment: "Fizetési mód frissítése",
1480
+ checkAgain: "Újraellenőrzés",
1481
+ lockReason: "A csomagja lejárt. Ha ismét módosítani szeretne, válasszon csomagot.",
1482
+ // As `characterCount.limitReached` ("Elérte a karakterkorlátot").
1483
+ limitReached: "Elérte a csomag korlátját",
1484
+ limitUpgrade: "Továbbiak hozzáadásához válasszon magasabb korlátú csomagot.",
1485
+ limitContact: "Továbbiak hozzáadásához kérjen tőlünk magasabb korlátot.",
1486
+ askForMore: "Bővítés kérése",
1487
+ // Both figures arrive formatted and stay bare, as `characterCount.count` (convention 3).
1488
+ usage: (used, limit) => `${used} / ${limit}`,
1489
+ contactSubject: (dimension) => `Csomagkorlát: ${dimension}`,
1490
+ manage: "Fizetés és számlák",
1491
+ cancel: "Előfizetés lemondása",
1492
+ // No plural after a numeral (convention 2).
1493
+ waitingChanges: (count) => `${n(count)} módosítás csomagra vár`,
1494
+ // "Elvetés", as `wizard.cancelConfirmLabel`.
1495
+ discardWaiting: "Várakozó módosítások elvetése",
1496
+ },
1497
+ // 0.32.0 — docs/text-size-harmonization.md §6: the text-size and contrast settings in
1498
+ // the "Megjelenés" group.
1499
+ appearance: {
1500
+ textSize: "Szövegméret",
1501
+ textSizeHelp: "Nagyobb betűk, és olyan elrendezés, amely helyet ad nekik.",
1502
+ textSizes: { normal: "Normál", large: "Nagy", xlarge: "Nagyon nagy" },
1503
+ contrast: "Kontraszt",
1504
+ contrastHelp:
1505
+ "A fokozott kontraszt sötétebbé teszi a halvány szövegeket és vonalakat, a fókuszkereteket pedig vastagabbá. A „Rendszer” ennek az eszköznek a beállítását követi.",
1506
+ contrastModes: { system: "Rendszer", standard: "Normál", more: "Fokozott" },
1507
+ },
1508
+ rowActions: {
1509
+ actions: "Műveletek",
1510
+ actionsFor: (name) => `${name} – műveletek`,
1511
+ },
1512
+ appShellMore: {
1513
+ more: "Továbbiak",
1514
+ moreTitle: "További oldalak",
1515
+ },
1419
1516
  };
1420
1517
  }
1421
1518