pixelize-design-library 2.4.1-beta.2 → 2.4.1-beta.4

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 (350) hide show
  1. package/dist/Components/Accordion/accordionColors.d.ts.map +1 -1
  2. package/dist/Components/Accordion/accordionColors.js +17 -3
  3. package/dist/Components/Checkbox/Checkbox.styles.d.ts.map +1 -1
  4. package/dist/Components/Checkbox/Checkbox.styles.js +13 -2
  5. package/dist/Components/CustomModulesTable/EditModuleModal.d.ts.map +1 -1
  6. package/dist/Components/CustomModulesTable/EditModuleModal.js +5 -1
  7. package/dist/Components/DatePicker/CalendarPanel.d.ts.map +1 -1
  8. package/dist/Components/DatePicker/CalendarPanel.js +3 -1
  9. package/dist/Components/Editor/joditThemeVars.d.ts.map +1 -1
  10. package/dist/Components/Editor/joditThemeVars.js +9 -0
  11. package/dist/Components/FilePreview/FilePreview.d.ts.map +1 -1
  12. package/dist/Components/FilePreview/FilePreview.js +3 -1
  13. package/dist/Components/FileUploader/FileUploader.js +2 -2
  14. package/dist/Components/FilterSidebar/FilterSidebar.js +1 -1
  15. package/dist/Components/LimitReachedModal/LimitReachedModal.d.ts +5 -0
  16. package/dist/Components/LimitReachedModal/LimitReachedModal.d.ts.map +1 -0
  17. package/dist/Components/LimitReachedModal/LimitReachedModal.js +40 -0
  18. package/dist/Components/LimitReachedModal/LimitReachedModalProps.d.ts +16 -0
  19. package/dist/Components/LimitReachedModal/LimitReachedModalProps.d.ts.map +1 -0
  20. package/dist/Components/LimitReachedModal/LimitReachedModalProps.js +2 -0
  21. package/dist/Components/LimitReachedModal/limitReachedCopy.d.ts +7 -0
  22. package/dist/Components/LimitReachedModal/limitReachedCopy.d.ts.map +1 -0
  23. package/dist/Components/LimitReachedModal/limitReachedCopy.js +54 -0
  24. package/dist/Components/NavigationBar/NavigationBar.d.ts.map +1 -1
  25. package/dist/Components/NavigationBar/NavigationBar.js +10 -6
  26. package/dist/Components/OrgSwitcher/OrgSwitcher.d.ts.map +1 -1
  27. package/dist/Components/OrgSwitcher/OrgSwitcher.js +22 -3
  28. package/dist/Components/OrgSwitcher/OrgSwitcherProps.d.ts +1 -0
  29. package/dist/Components/OrgSwitcher/OrgSwitcherProps.d.ts.map +1 -1
  30. package/dist/Components/OrgSwitcher/OrgSwitcherProps.js +3 -3
  31. package/dist/Components/OrganizationDetails/CreateOrgModal.js +6 -4
  32. package/dist/Components/OrganizationDetails/OrganizationDetails.d.ts.map +1 -1
  33. package/dist/Components/OrganizationDetails/OrganizationDetails.js +55 -7
  34. package/dist/Components/OrganizationDetails/OrganizationDetailsProps.d.ts +24 -14
  35. package/dist/Components/OrganizationDetails/OrganizationDetailsProps.d.ts.map +1 -1
  36. package/dist/Components/PlanBadge/PlanBadge.d.ts +12 -0
  37. package/dist/Components/PlanBadge/PlanBadge.d.ts.map +1 -0
  38. package/dist/Components/PlanBadge/PlanBadge.js +22 -0
  39. package/dist/Components/PlanBadge/PlanBadgeProps.d.ts +11 -0
  40. package/dist/Components/PlanBadge/PlanBadgeProps.d.ts.map +1 -0
  41. package/dist/Components/PlanBadge/PlanBadgeProps.js +2 -0
  42. package/dist/Components/PlanPill/PlanPill.d.ts +5 -0
  43. package/dist/Components/PlanPill/PlanPill.d.ts.map +1 -0
  44. package/dist/Components/PlanPill/PlanPill.js +42 -0
  45. package/dist/Components/PlanPill/PlanPillProps.d.ts +28 -0
  46. package/dist/Components/PlanPill/PlanPillProps.d.ts.map +1 -0
  47. package/dist/Components/PlanPill/PlanPillProps.js +2 -0
  48. package/dist/Components/PlanPill/planPillGradient.d.ts +22 -0
  49. package/dist/Components/PlanPill/planPillGradient.d.ts.map +1 -0
  50. package/dist/Components/PlanPill/planPillGradient.js +20 -0
  51. package/dist/Components/Search/Search.d.ts.map +1 -1
  52. package/dist/Components/Search/Search.js +4 -2
  53. package/dist/Components/Select/Select.styles.d.ts.map +1 -1
  54. package/dist/Components/Select/Select.styles.js +29 -20
  55. package/dist/Components/SelectSearch/SelectSearch.js +1 -1
  56. package/dist/Components/SideBar/SecondaryBar.d.ts.map +1 -1
  57. package/dist/Components/SideBar/SecondaryBar.js +10 -2
  58. package/dist/Components/SideBar/SideBar.js +1 -1
  59. package/dist/Components/SideBar/components/MenuItemBox.d.ts.map +1 -1
  60. package/dist/Components/SideBar/components/MenuItemBox.js +7 -6
  61. package/dist/Components/Table/components/tableRowHoverStyle.d.ts +9 -8
  62. package/dist/Components/Table/components/tableRowHoverStyle.d.ts.map +1 -1
  63. package/dist/Components/Table/components/tableRowHoverStyle.js +12 -12
  64. package/dist/Components/Table/settings/ManageColumns.js +2 -2
  65. package/dist/Components/UpgradeButton/UpgradeButton.d.ts.map +1 -1
  66. package/dist/Components/UpgradeButton/UpgradeButton.js +25 -7
  67. package/dist/Components/UserDetails/UserDetails.d.ts.map +1 -1
  68. package/dist/Components/UserDetails/UserDetails.js +5 -2
  69. package/dist/Theme/chakra/componentStyles.d.ts +2 -0
  70. package/dist/Theme/chakra/componentStyles.d.ts.map +1 -1
  71. package/dist/Theme/chakra/componentStyles.js +74 -0
  72. package/dist/Theme/chakra/createBrandTheme.d.ts.map +1 -1
  73. package/dist/Theme/chakra/createBrandTheme.js +47 -0
  74. package/dist/Theme/tokens/brands/index.d.ts.map +1 -1
  75. package/dist/Theme/tokens/brands/index.js +20 -18
  76. package/dist/Theme/tokens/brands/zinc/palette.dark.d.ts.map +1 -1
  77. package/dist/Theme/tokens/brands/zinc/palette.dark.js +4 -2
  78. package/dist/Theme/tokens/builders/outlineRung.d.ts +35 -0
  79. package/dist/Theme/tokens/builders/outlineRung.d.ts.map +1 -0
  80. package/dist/Theme/tokens/builders/outlineRung.js +69 -0
  81. package/dist/Theme/tokens/builders/statusTone.d.ts +35 -0
  82. package/dist/Theme/tokens/builders/statusTone.d.ts.map +1 -0
  83. package/dist/Theme/tokens/builders/statusTone.js +63 -0
  84. package/dist/Utils/planBadge.d.ts +39 -0
  85. package/dist/Utils/planBadge.d.ts.map +1 -0
  86. package/dist/Utils/planBadge.js +108 -0
  87. package/dist/Utils/planExpiry.d.ts +35 -0
  88. package/dist/Utils/planExpiry.d.ts.map +1 -0
  89. package/dist/Utils/planExpiry.js +115 -0
  90. package/dist/index.d.ts +14 -1
  91. package/dist/index.d.ts.map +1 -1
  92. package/dist/index.js +29 -3
  93. package/package.json +6 -2
  94. package/.claude/settings.local.json +0 -51
  95. package/.cursor/TASK-SETUP.md +0 -43
  96. package/.cursor/agents/be-impl.md +0 -37
  97. package/.cursor/agents/fe-impl.md +0 -39
  98. package/.cursor/agents/task-plan.md +0 -56
  99. package/.cursor/agents/test-create.md +0 -31
  100. package/.cursor/agents/test-exec.md +0 -26
  101. package/.cursor/hooks/task-hint.env +0 -1
  102. package/.cursor/hooks/task-skill-nudge.sh +0 -71
  103. package/.cursor/hooks/task-slash-guard.sh +0 -31
  104. package/.cursor/hooks.json +0 -13
  105. package/.cursor/modules/account-management/MODULE.md +0 -41
  106. package/.cursor/modules/buttons/MODULE.md +0 -47
  107. package/.cursor/modules/cards/MODULE.md +0 -55
  108. package/.cursor/modules/charts/MODULE.md +0 -40
  109. package/.cursor/modules/common/MODULE.md +0 -36
  110. package/.cursor/modules/contact-auth/MODULE.md +0 -19
  111. package/.cursor/modules/data-display/MODULE.md +0 -42
  112. package/.cursor/modules/feedback/MODULE.md +0 -38
  113. package/.cursor/modules/form/MODULE.md +0 -13
  114. package/.cursor/modules/inputs-basic/MODULE.md +0 -42
  115. package/.cursor/modules/inputs-date-file/MODULE.md +0 -67
  116. package/.cursor/modules/inputs-select/MODULE.md +0 -89
  117. package/.cursor/modules/inputs-toggle/MODULE.md +0 -24
  118. package/.cursor/modules/kanban/MODULE.md +0 -22
  119. package/.cursor/modules/layout-navigation/MODULE.md +0 -319
  120. package/.cursor/modules/overlays/MODULE.md +0 -82
  121. package/.cursor/modules/playground/MODULE.md +0 -28
  122. package/.cursor/modules/table/MODULE.md +0 -84
  123. package/.cursor/modules/theme/MODULE.md +0 -431
  124. package/.cursor/modules/types-exports/MODULE.md +0 -17
  125. package/.cursor/modules/utility-ui/MODULE.md +0 -50
  126. package/.cursor/modules/utils-hooks/MODULE.md +0 -35
  127. package/.cursor/pixelize-task-statusline.sh +0 -64
  128. package/.cursor/plans/blocked/.gitkeep +0 -0
  129. package/.cursor/plans/current.md +0 -12
  130. package/.cursor/plans/current.theme-tokens-dark-mode.md +0 -77
  131. package/.cursor/plans/current.theme-tokens-dark.md +0 -155
  132. package/.cursor/plans/done/.gitkeep +0 -0
  133. package/.cursor/rules +0 -31
  134. package/.cursor/skills/task/SKILL.md +0 -167
  135. package/CLAUDE.md +0 -148
  136. package/__mocks__/styleMock.js +0 -8
  137. package/coverage/clover.xml +0 -405
  138. package/coverage/coverage-final.json +0 -16
  139. package/coverage/coverage-summary.json +0 -50
  140. package/coverage/lcov-report/Button/Button.tsx.html +0 -244
  141. package/coverage/lcov-report/Button/index.html +0 -116
  142. package/coverage/lcov-report/Checkbox/Checkbox.tsx.html +0 -433
  143. package/coverage/lcov-report/Checkbox/index.html +0 -116
  144. package/coverage/lcov-report/Common/ErrorMessage.tsx.html +0 -148
  145. package/coverage/lcov-report/Common/FormLabel.tsx.html +0 -331
  146. package/coverage/lcov-report/Common/HelperText.tsx.html +0 -124
  147. package/coverage/lcov-report/Common/index.html +0 -146
  148. package/coverage/lcov-report/Components/Button/Button.tsx.html +0 -244
  149. package/coverage/lcov-report/Components/Button/index.html +0 -116
  150. package/coverage/lcov-report/Components/Checkbox/Checkbox.tsx.html +0 -433
  151. package/coverage/lcov-report/Components/Checkbox/index.html +0 -116
  152. package/coverage/lcov-report/Components/Common/ErrorMessage.tsx.html +0 -148
  153. package/coverage/lcov-report/Components/Common/FormLabel.tsx.html +0 -331
  154. package/coverage/lcov-report/Components/Common/HelperText.tsx.html +0 -124
  155. package/coverage/lcov-report/Components/Common/index.html +0 -146
  156. package/coverage/lcov-report/Components/CustomModulesTable/CustomModulesTable.tsx.html +0 -712
  157. package/coverage/lcov-report/Components/CustomModulesTable/DeleteModuleModal.tsx.html +0 -343
  158. package/coverage/lcov-report/Components/CustomModulesTable/EditModuleModal.tsx.html +0 -313
  159. package/coverage/lcov-report/Components/CustomModulesTable/index.html +0 -146
  160. package/coverage/lcov-report/Components/Divider/Divider.tsx.html +0 -133
  161. package/coverage/lcov-report/Components/Divider/index.html +0 -116
  162. package/coverage/lcov-report/Components/Dropdown/DropDown.tsx.html +0 -994
  163. package/coverage/lcov-report/Components/Dropdown/index.html +0 -116
  164. package/coverage/lcov-report/Components/EmptyState/EmptyState.tsx.html +0 -466
  165. package/coverage/lcov-report/Components/EmptyState/index.html +0 -116
  166. package/coverage/lcov-report/Components/Header/HeaderActions.tsx.html +0 -373
  167. package/coverage/lcov-report/Components/Header/index.html +0 -116
  168. package/coverage/lcov-report/Components/Input/TextInput.tsx.html +0 -487
  169. package/coverage/lcov-report/Components/Input/index.html +0 -116
  170. package/coverage/lcov-report/Components/Input/textInputIconSize.ts.html +0 -205
  171. package/coverage/lcov-report/Components/KanbanBoard/AccountCard.tsx.html +0 -547
  172. package/coverage/lcov-report/Components/KanbanBoard/AccountRow.tsx.html +0 -190
  173. package/coverage/lcov-report/Components/KanbanBoard/KanbanActions/KanbanActions.tsx.html +0 -247
  174. package/coverage/lcov-report/Components/KanbanBoard/KanbanActions/index.html +0 -116
  175. package/coverage/lcov-report/Components/KanbanBoard/KanbanBoard.tsx.html +0 -3598
  176. package/coverage/lcov-report/Components/KanbanBoard/MeasuredItem.tsx.html +0 -283
  177. package/coverage/lcov-report/Components/KanbanBoard/index.html +0 -161
  178. package/coverage/lcov-report/Components/OrganizationDetails/CreateOrgModal.tsx.html +0 -511
  179. package/coverage/lcov-report/Components/OrganizationDetails/DeleteOrgModal.tsx.html +0 -334
  180. package/coverage/lcov-report/Components/OrganizationDetails/OrganizationDetails.tsx.html +0 -1519
  181. package/coverage/lcov-report/Components/OrganizationDetails/index.html +0 -146
  182. package/coverage/lcov-report/Components/RolesPermission/DeleteRoleModal.tsx.html +0 -328
  183. package/coverage/lcov-report/Components/RolesPermission/RolesPermission.tsx.html +0 -1732
  184. package/coverage/lcov-report/Components/RolesPermission/index.html +0 -131
  185. package/coverage/lcov-report/Components/SearchSelect/SearchSelect.tsx.html +0 -2575
  186. package/coverage/lcov-report/Components/SearchSelect/SelectTruncatedLabel.tsx.html +0 -202
  187. package/coverage/lcov-report/Components/SearchSelect/index.html +0 -146
  188. package/coverage/lcov-report/Components/SearchSelect/searchSelectSize.ts.html +0 -496
  189. package/coverage/lcov-report/Components/Select/Select.tsx.html +0 -361
  190. package/coverage/lcov-report/Components/Select/index.html +0 -116
  191. package/coverage/lcov-report/Components/SideBar/components/OtherApps.tsx.html +0 -562
  192. package/coverage/lcov-report/Components/SideBar/components/OverflowTooltipText.tsx.html +0 -346
  193. package/coverage/lcov-report/Components/SideBar/components/index.html +0 -116
  194. package/coverage/lcov-report/Components/SignInActivityTable/SignInActivityTable.tsx.html +0 -490
  195. package/coverage/lcov-report/Components/SignInActivityTable/index.html +0 -116
  196. package/coverage/lcov-report/Components/Table/components/TableActions.tsx.html +0 -595
  197. package/coverage/lcov-report/Components/Table/components/TableBody.tsx.html +0 -2212
  198. package/coverage/lcov-report/Components/Table/components/TableGroupRow.tsx.html +0 -358
  199. package/coverage/lcov-report/Components/Table/components/TableLoading.tsx.html +0 -358
  200. package/coverage/lcov-report/Components/Table/components/index.html +0 -161
  201. package/coverage/lcov-report/Components/Table/settings/ManageColumns.tsx.html +0 -856
  202. package/coverage/lcov-report/Components/Table/settings/index.html +0 -116
  203. package/coverage/lcov-report/Components/Tag/Tag.styles.tsx.html +0 -331
  204. package/coverage/lcov-report/Components/Tag/Tag.tsx.html +0 -256
  205. package/coverage/lcov-report/Components/Tag/index.html +0 -131
  206. package/coverage/lcov-report/Components/ToolTip/ToolTip.tsx.html +0 -286
  207. package/coverage/lcov-report/Components/ToolTip/index.html +0 -116
  208. package/coverage/lcov-report/Components/UserDetails/AddUserModal.tsx.html +0 -709
  209. package/coverage/lcov-report/Components/UserDetails/ChangeRoleModal.tsx.html +0 -505
  210. package/coverage/lcov-report/Components/UserDetails/DeactivateConfirmModal.tsx.html +0 -379
  211. package/coverage/lcov-report/Components/UserDetails/UserDetails.tsx.html +0 -1900
  212. package/coverage/lcov-report/Components/UserDetails/index.html +0 -161
  213. package/coverage/lcov-report/EmptyState/EmptyState.tsx.html +0 -466
  214. package/coverage/lcov-report/EmptyState/index.html +0 -116
  215. package/coverage/lcov-report/Hooks/index.html +0 -116
  216. package/coverage/lcov-report/Hooks/usePreferences.ts.html +0 -421
  217. package/coverage/lcov-report/Input/TextInput.tsx.html +0 -487
  218. package/coverage/lcov-report/Input/index.html +0 -131
  219. package/coverage/lcov-report/Input/textInputIconSize.ts.html +0 -205
  220. package/coverage/lcov-report/KanbanBoard.tsx.html +0 -3481
  221. package/coverage/lcov-report/OrganizationDetails/CreateOrgModal.tsx.html +0 -511
  222. package/coverage/lcov-report/OrganizationDetails/DeleteOrgModal.tsx.html +0 -334
  223. package/coverage/lcov-report/OrganizationDetails/OrganizationDetails.tsx.html +0 -1519
  224. package/coverage/lcov-report/OrganizationDetails/index.html +0 -146
  225. package/coverage/lcov-report/RolesPermission/DeleteRoleModal.tsx.html +0 -328
  226. package/coverage/lcov-report/RolesPermission/RolesPermission.tsx.html +0 -1732
  227. package/coverage/lcov-report/RolesPermission/index.html +0 -116
  228. package/coverage/lcov-report/SearchSelect/SearchSelect.tsx.html +0 -2575
  229. package/coverage/lcov-report/SearchSelect/SelectTruncatedLabel.tsx.html +0 -202
  230. package/coverage/lcov-report/SearchSelect/index.html +0 -146
  231. package/coverage/lcov-report/SearchSelect/searchSelectSize.ts.html +0 -496
  232. package/coverage/lcov-report/Table/CompactSelect.tsx.html +0 -379
  233. package/coverage/lcov-report/Table/Components/ActiveFilters.tsx.html +0 -514
  234. package/coverage/lcov-report/Table/Components/HeaderActions.tsx.html +0 -373
  235. package/coverage/lcov-report/Table/Components/Pagination.tsx.html +0 -574
  236. package/coverage/lcov-report/Table/Components/TableActions.tsx.html +0 -574
  237. package/coverage/lcov-report/Table/Components/TableBody.tsx.html +0 -1027
  238. package/coverage/lcov-report/Table/Components/TableFilters.tsx.html +0 -397
  239. package/coverage/lcov-report/Table/Components/TableHeader.tsx.html +0 -1060
  240. package/coverage/lcov-report/Table/Components/TableLoading.tsx.html +0 -361
  241. package/coverage/lcov-report/Table/Components/TableSearch.tsx.html +0 -337
  242. package/coverage/lcov-report/Table/Components/index.html +0 -266
  243. package/coverage/lcov-report/Table/Components/useDebounce.ts.html +0 -178
  244. package/coverage/lcov-report/Table/Components/useTable.ts.html +0 -778
  245. package/coverage/lcov-report/Table/LeftFilterPane.tsx.html +0 -1810
  246. package/coverage/lcov-report/Table/SelectOperationControls.tsx.html +0 -178
  247. package/coverage/lcov-report/Table/Table.tsx.html +0 -1567
  248. package/coverage/lcov-report/Table/TableProps.tsx.html +0 -658
  249. package/coverage/lcov-report/Table/TableSettings/ManageColumns.tsx.html +0 -619
  250. package/coverage/lcov-report/Table/TableSettings/TableFilters.tsx.html +0 -229
  251. package/coverage/lcov-report/Table/TableSettings/TableSettings.tsx.html +0 -532
  252. package/coverage/lcov-report/Table/TableSettings/index.html +0 -146
  253. package/coverage/lcov-report/Table/TableToDo.tsx.html +0 -973
  254. package/coverage/lcov-report/Table/TextOperationControls.tsx.html +0 -271
  255. package/coverage/lcov-report/Table/filterTypes.ts.html +0 -97
  256. package/coverage/lcov-report/Table/index.html +0 -176
  257. package/coverage/lcov-report/Table/settings/ManageColumns.tsx.html +0 -856
  258. package/coverage/lcov-report/Table/settings/index.html +0 -116
  259. package/coverage/lcov-report/Tag/Tag.tsx.html +0 -256
  260. package/coverage/lcov-report/Tag/index.html +0 -116
  261. package/coverage/lcov-report/Theme/buildBrandTokens.ts.html +0 -175
  262. package/coverage/lcov-report/Theme/chartColorsFromTheme.ts.html +0 -214
  263. package/coverage/lcov-report/Theme/index.html +0 -131
  264. package/coverage/lcov-report/Theme/useCustomTheme.ts.html +0 -100
  265. package/coverage/lcov-report/ToolTip/ToolTip.tsx.html +0 -286
  266. package/coverage/lcov-report/ToolTip/index.html +0 -116
  267. package/coverage/lcov-report/UserDetails/AddUserModal.tsx.html +0 -709
  268. package/coverage/lcov-report/UserDetails/ChangeRoleModal.tsx.html +0 -505
  269. package/coverage/lcov-report/UserDetails/index.html +0 -116
  270. package/coverage/lcov-report/Utils/functions.ts.html +0 -106
  271. package/coverage/lcov-report/Utils/index.html +0 -116
  272. package/coverage/lcov-report/Utils/table.ts.html +0 -1189
  273. package/coverage/lcov-report/base.css +0 -224
  274. package/coverage/lcov-report/block-navigation.js +0 -87
  275. package/coverage/lcov-report/favicon.png +0 -0
  276. package/coverage/lcov-report/index.html +0 -251
  277. package/coverage/lcov-report/prettify.css +0 -1
  278. package/coverage/lcov-report/prettify.js +0 -2
  279. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  280. package/coverage/lcov-report/sorter.js +0 -210
  281. package/coverage/lcov.info +0 -981
  282. package/dist/Theme/Dark/theme.d.ts +0 -3
  283. package/dist/Theme/Dark/theme.d.ts.map +0 -1
  284. package/dist/Theme/Dark/theme.js +0 -277
  285. package/dist/Theme/Default/palette.d.ts +0 -375
  286. package/dist/Theme/Default/palette.d.ts.map +0 -1
  287. package/dist/Theme/Default/palette.js +0 -306
  288. package/dist/Theme/Default/theme.d.ts +0 -3
  289. package/dist/Theme/Default/theme.d.ts.map +0 -1
  290. package/dist/Theme/Default/theme.js +0 -19
  291. package/dist/Theme/Emerald/palette.d.ts +0 -375
  292. package/dist/Theme/Emerald/palette.d.ts.map +0 -1
  293. package/dist/Theme/Emerald/palette.js +0 -125
  294. package/dist/Theme/Emerald/theme.d.ts +0 -3
  295. package/dist/Theme/Emerald/theme.d.ts.map +0 -1
  296. package/dist/Theme/Emerald/theme.js +0 -19
  297. package/dist/Theme/Meadow/palette.d.ts +0 -375
  298. package/dist/Theme/Meadow/palette.d.ts.map +0 -1
  299. package/dist/Theme/Meadow/palette.js +0 -123
  300. package/dist/Theme/Meadow/theme.d.ts +0 -3
  301. package/dist/Theme/Meadow/theme.d.ts.map +0 -1
  302. package/dist/Theme/Meadow/theme.js +0 -19
  303. package/dist/Theme/Radiant/palette.d.ts +0 -375
  304. package/dist/Theme/Radiant/palette.d.ts.map +0 -1
  305. package/dist/Theme/Radiant/palette.js +0 -125
  306. package/dist/Theme/Radiant/theme.d.ts +0 -3
  307. package/dist/Theme/Radiant/theme.d.ts.map +0 -1
  308. package/dist/Theme/Radiant/theme.js +0 -19
  309. package/dist/Theme/Rosewood/palette.d.ts +0 -375
  310. package/dist/Theme/Rosewood/palette.d.ts.map +0 -1
  311. package/dist/Theme/Rosewood/palette.js +0 -125
  312. package/dist/Theme/Rosewood/theme.d.ts +0 -3
  313. package/dist/Theme/Rosewood/theme.d.ts.map +0 -1
  314. package/dist/Theme/Rosewood/theme.js +0 -19
  315. package/dist/Theme/Skyline/palette.d.ts +0 -375
  316. package/dist/Theme/Skyline/palette.d.ts.map +0 -1
  317. package/dist/Theme/Skyline/palette.js +0 -123
  318. package/dist/Theme/Skyline/theme.d.ts +0 -3
  319. package/dist/Theme/Skyline/theme.d.ts.map +0 -1
  320. package/dist/Theme/Skyline/theme.js +0 -19
  321. package/dist/Theme/Slate/palette.d.ts +0 -375
  322. package/dist/Theme/Slate/palette.d.ts.map +0 -1
  323. package/dist/Theme/Slate/palette.js +0 -123
  324. package/dist/Theme/Slate/theme.d.ts +0 -3
  325. package/dist/Theme/Slate/theme.d.ts.map +0 -1
  326. package/dist/Theme/Slate/theme.js +0 -19
  327. package/dist/Theme/buildBrandTokens.d.ts +0 -16
  328. package/dist/Theme/buildBrandTokens.d.ts.map +0 -1
  329. package/dist/Theme/buildBrandTokens.js +0 -33
  330. package/dist/Theme/chartColorsFromTheme.d.ts +0 -19
  331. package/dist/Theme/chartColorsFromTheme.d.ts.map +0 -1
  332. package/dist/Theme/chartColorsFromTheme.js +0 -34
  333. package/dist/Theme/common.d.ts +0 -167
  334. package/dist/Theme/common.d.ts.map +0 -1
  335. package/dist/Theme/common.js +0 -112
  336. package/dist/Theme/componentStyles.d.ts +0 -10
  337. package/dist/Theme/componentStyles.d.ts.map +0 -1
  338. package/dist/Theme/componentStyles.js +0 -19
  339. package/dist/Theme/fonts.d.ts +0 -37
  340. package/dist/Theme/fonts.d.ts.map +0 -1
  341. package/dist/Theme/fonts.js +0 -41
  342. package/dist/Theme/space.d.ts +0 -34
  343. package/dist/Theme/space.d.ts.map +0 -1
  344. package/dist/Theme/space.js +0 -35
  345. package/dist/Theme/theme.d.ts +0 -3
  346. package/dist/Theme/theme.d.ts.map +0 -1
  347. package/dist/Theme/theme.js +0 -12
  348. package/eslint.config.js +0 -48
  349. package/index.html +0 -13
  350. package/vite.config.ts +0 -13
@@ -0,0 +1,35 @@
1
+ import type { PaletteProps, ResolvedColorMode } from "../types";
2
+ /**
3
+ * The floor a hover/active state's step off its own resting surface must clear to be seen at
4
+ * all — same value the SideBar ladder, Accordion, and NavigationBar hover states are held to.
5
+ * A "hover" a user cannot perceive is not a hover.
6
+ */
7
+ export declare const MIN_PERCEPTIBLE_STEP = 1.15;
8
+ /** WCAG 1.4.11 — a control outline is a UI component boundary, held to 3:1. */
9
+ export declare const AA_NON_TEXT = 3;
10
+ /**
11
+ * Walks a hex toward `target` contrast against `backdrop`, keeping its hue and saturation so the
12
+ * result still reads as the same colour. Darkens when `mode` is light, lightens when dark, and
13
+ * stops at the FIRST passing step so nothing overshoots to black or white.
14
+ */
15
+ export declare function liftToContrast(hex: string, backdrop: string, mode: ResolvedColorMode, target?: number): string;
16
+ /**
17
+ * `boxborder[500]` is the rung every control outline reads (Checkbox, SearchSelect, the date
18
+ * pickers, the editor's inputs). It was authored as a decorative value — measured 1.30-2.56:1
19
+ * across brands, so those controls rendered effectively borderless in BOTH modes. Resolved here
20
+ * rather than hand-pinned per brand: a copied hex goes stale the moment a canvas moves.
21
+ *
22
+ * `border[*]` is deliberately untouched — that ramp draws table gridlines, which are decorative
23
+ * and outside 1.4.11.
24
+ */
25
+ export declare function withOutlineRung(palette: PaletteProps, mode: ResolvedColorMode): PaletteProps;
26
+ /**
27
+ * A hover/active tint resolved against the surface it actually sits on, guaranteed to clear
28
+ * `MIN_PERCEPTIBLE_STEP`. Written for the recurring shape found across NavigationBar, UserDetails
29
+ * and Accordion: a pale `primary[50]`/`gray[50]` tint that measures near-1.0 on a near-white
30
+ * surface — invisible — with no dark-mode branch, so the same call site is wrong in both modes at
31
+ * once. `restSurface` is required rather than assumed white/black: a menu item's hover sits on
32
+ * its OWN list background, not necessarily the page canvas.
33
+ */
34
+ export declare function resolveHoverTint(seed: string, restSurface: string): string;
35
+ //# sourceMappingURL=outlineRung.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outlineRung.d.ts","sourceRoot":"","sources":["../../../../src/Theme/tokens/builders/outlineRung.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAEhE;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,OAAO,CAAC;AAEzC,+EAA+E;AAC/E,eAAO,MAAM,WAAW,IAAI,CAAC;AAE7B;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,iBAAiB,EACvB,MAAM,GAAE,MAAoB,GAC3B,MAAM,CAaR;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,iBAAiB,GAAG,YAAY,CAc5F;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAG1E"}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AA_NON_TEXT = exports.MIN_PERCEPTIBLE_STEP = void 0;
4
+ exports.liftToContrast = liftToContrast;
5
+ exports.withOutlineRung = withOutlineRung;
6
+ exports.resolveHoverTint = resolveHoverTint;
7
+ const color_1 = require("./color");
8
+ const accentText_1 = require("./accentText");
9
+ /**
10
+ * The floor a hover/active state's step off its own resting surface must clear to be seen at
11
+ * all — same value the SideBar ladder, Accordion, and NavigationBar hover states are held to.
12
+ * A "hover" a user cannot perceive is not a hover.
13
+ */
14
+ exports.MIN_PERCEPTIBLE_STEP = 1.15;
15
+ /** WCAG 1.4.11 — a control outline is a UI component boundary, held to 3:1. */
16
+ exports.AA_NON_TEXT = 3;
17
+ /**
18
+ * Walks a hex toward `target` contrast against `backdrop`, keeping its hue and saturation so the
19
+ * result still reads as the same colour. Darkens when `mode` is light, lightens when dark, and
20
+ * stops at the FIRST passing step so nothing overshoots to black or white.
21
+ */
22
+ function liftToContrast(hex, backdrop, mode, target = exports.AA_NON_TEXT) {
23
+ if ((0, color_1.contrastRatio)(hex, backdrop) >= target)
24
+ return hex;
25
+ const { s } = (0, color_1.hexToHsl)(hex);
26
+ const step = mode === "dark" ? 1 : -1;
27
+ let { l } = (0, color_1.hexToHsl)(hex);
28
+ while (l > 0 && l < 100) {
29
+ l += step;
30
+ const next = (0, color_1.withLightness)(hex, l, s);
31
+ if ((0, color_1.contrastRatio)(next, backdrop) >= target)
32
+ return next;
33
+ }
34
+ return (0, color_1.withLightness)(hex, mode === "dark" ? 100 : 0, s);
35
+ }
36
+ /**
37
+ * `boxborder[500]` is the rung every control outline reads (Checkbox, SearchSelect, the date
38
+ * pickers, the editor's inputs). It was authored as a decorative value — measured 1.30-2.56:1
39
+ * across brands, so those controls rendered effectively borderless in BOTH modes. Resolved here
40
+ * rather than hand-pinned per brand: a copied hex goes stale the moment a canvas moves.
41
+ *
42
+ * `border[*]` is deliberately untouched — that ramp draws table gridlines, which are decorative
43
+ * and outside 1.4.11.
44
+ */
45
+ function withOutlineRung(palette, mode) {
46
+ const current = palette.boxborder[500];
47
+ // The border sits between the control's fill and the surface behind it; hold it to the
48
+ // harder of the two.
49
+ const backdrop = (0, color_1.contrastRatio)(current, palette.backgroundColor.main) <=
50
+ (0, color_1.contrastRatio)(current, palette.background[50])
51
+ ? palette.backgroundColor.main
52
+ : palette.background[50];
53
+ const resolved = liftToContrast(current, backdrop, mode);
54
+ if (resolved === current)
55
+ return palette;
56
+ return { ...palette, boxborder: { ...palette.boxborder, 500: resolved } };
57
+ }
58
+ /**
59
+ * A hover/active tint resolved against the surface it actually sits on, guaranteed to clear
60
+ * `MIN_PERCEPTIBLE_STEP`. Written for the recurring shape found across NavigationBar, UserDetails
61
+ * and Accordion: a pale `primary[50]`/`gray[50]` tint that measures near-1.0 on a near-white
62
+ * surface — invisible — with no dark-mode branch, so the same call site is wrong in both modes at
63
+ * once. `restSurface` is required rather than assumed white/black: a menu item's hover sits on
64
+ * its OWN list background, not necessarily the page canvas.
65
+ */
66
+ function resolveHoverTint(seed, restSurface) {
67
+ const mode = (0, accentText_1.isDarkCanvas)(restSurface) ? "dark" : "light";
68
+ return liftToContrast(seed, restSurface, mode, exports.MIN_PERCEPTIBLE_STEP);
69
+ }
@@ -0,0 +1,35 @@
1
+ import type { ColorScale, ResolvedColorMode } from "../types";
2
+ export type StatusTone = {
3
+ /** Chip fill. */
4
+ bg: string;
5
+ /** Label ink, guaranteed >= 4.5:1 on `bg`. */
6
+ fg: string;
7
+ /** Chip outline, guaranteed >= 3:1 on `bg`. */
8
+ border: string;
9
+ };
10
+ /**
11
+ * Status chips (open / in-progress / resolved …) were authored as `X.500` text on an `X.100`
12
+ * tint, which measures 3.3-4.4:1 — under the 4.5:1 body-text bar in BOTH modes. The ink is
13
+ * resolved from the scale's own hue instead of pinned, so every brand and both modes land on the
14
+ * lightest ink that still passes rather than a hand-copied hex that goes stale.
15
+ *
16
+ * `reverseScale` flips the utility ramps in dark, so `X.100` is already a dark tint there and the
17
+ * ink walks lighter instead of darker — hence the mode argument.
18
+ */
19
+ export declare function resolveStatusTone(scale: ColorScale, mode: ResolvedColorMode): StatusTone;
20
+ /**
21
+ * Avatar initials are drawn white on a generated fill. The seed hues in use measured 1.92:1
22
+ * (`#eab308`), 2.54:1 (`#10b981`) and 3.76:1 (`#ef4444`) — failing in light mode too, not just
23
+ * dark. Darkening the fill keeps the intended hue and the white-initials look while clearing AA.
24
+ */
25
+ export declare function resolveAvatarFill(hex: string, target?: number): string;
26
+ /**
27
+ * Hue set for generated avatars. Values are seeds, not final fills — always pass them through
28
+ * `resolveAvatarFill` so the white initials stay legible.
29
+ */
30
+ export declare const AVATAR_SEEDS: readonly ["#ef4444", "#f97316", "#eab308", "#22c55e", "#10b981", "#06b6d4", "#3b82f6", "#8b5cf6", "#ec4899"];
31
+ /** Stable per-name avatar fill: same name always yields the same accessible colour. */
32
+ export declare function avatarFillFor(seedText: string): string;
33
+ /** True when `fg` clears the body-text bar on `bg` — exported for consumer assertions. */
34
+ export declare const meetsBodyText: (fg: string, bg: string) => boolean;
35
+ //# sourceMappingURL=statusTone.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"statusTone.d.ts","sourceRoot":"","sources":["../../../../src/Theme/tokens/builders/statusTone.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE9D,MAAM,MAAM,UAAU,GAAG;IACvB,iBAAiB;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,8CAA8C;IAC9C,EAAE,EAAE,MAAM,CAAC;IACX,+CAA+C;IAC/C,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,iBAAiB,GAAG,UAAU,CAUxF;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,MAAuB,GAAG,MAAM,CAGtF;AAED;;;GAGG;AACH,eAAO,MAAM,YAAY,8GAUf,CAAC;AAEX,uFAAuF;AACvF,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAMtD;AAED,0FAA0F;AAC1F,eAAO,MAAM,aAAa,GAAI,IAAI,MAAM,EAAE,IAAI,MAAM,KAAG,OACd,CAAC"}
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.meetsBodyText = exports.AVATAR_SEEDS = void 0;
4
+ exports.resolveStatusTone = resolveStatusTone;
5
+ exports.resolveAvatarFill = resolveAvatarFill;
6
+ exports.avatarFillFor = avatarFillFor;
7
+ const color_1 = require("./color");
8
+ const accentText_1 = require("./accentText");
9
+ const outlineRung_1 = require("./outlineRung");
10
+ /**
11
+ * Status chips (open / in-progress / resolved …) were authored as `X.500` text on an `X.100`
12
+ * tint, which measures 3.3-4.4:1 — under the 4.5:1 body-text bar in BOTH modes. The ink is
13
+ * resolved from the scale's own hue instead of pinned, so every brand and both modes land on the
14
+ * lightest ink that still passes rather than a hand-copied hex that goes stale.
15
+ *
16
+ * `reverseScale` flips the utility ramps in dark, so `X.100` is already a dark tint there and the
17
+ * ink walks lighter instead of darker — hence the mode argument.
18
+ */
19
+ function resolveStatusTone(scale, mode) {
20
+ const bg = scale[100];
21
+ const inkSeed = mode === "dark" ? scale[300] : scale[700];
22
+ const edgeSeed = mode === "dark" ? scale[400] : scale[300];
23
+ return {
24
+ bg,
25
+ fg: (0, outlineRung_1.liftToContrast)(inkSeed, bg, mode, accentText_1.AA_NORMAL_TEXT),
26
+ border: (0, outlineRung_1.liftToContrast)(edgeSeed, bg, mode, outlineRung_1.AA_NON_TEXT),
27
+ };
28
+ }
29
+ /**
30
+ * Avatar initials are drawn white on a generated fill. The seed hues in use measured 1.92:1
31
+ * (`#eab308`), 2.54:1 (`#10b981`) and 3.76:1 (`#ef4444`) — failing in light mode too, not just
32
+ * dark. Darkening the fill keeps the intended hue and the white-initials look while clearing AA.
33
+ */
34
+ function resolveAvatarFill(hex, target = accentText_1.AA_NORMAL_TEXT) {
35
+ // "light" walks downward in lightness — i.e. darken until white ink clears the bar.
36
+ return (0, outlineRung_1.liftToContrast)(hex, "#ffffff", "light", target);
37
+ }
38
+ /**
39
+ * Hue set for generated avatars. Values are seeds, not final fills — always pass them through
40
+ * `resolveAvatarFill` so the white initials stay legible.
41
+ */
42
+ exports.AVATAR_SEEDS = [
43
+ "#ef4444",
44
+ "#f97316",
45
+ "#eab308",
46
+ "#22c55e",
47
+ "#10b981",
48
+ "#06b6d4",
49
+ "#3b82f6",
50
+ "#8b5cf6",
51
+ "#ec4899",
52
+ ];
53
+ /** Stable per-name avatar fill: same name always yields the same accessible colour. */
54
+ function avatarFillFor(seedText) {
55
+ let hash = 0;
56
+ for (let i = 0; i < seedText.length; i++) {
57
+ hash = (hash * 31 + seedText.charCodeAt(i)) >>> 0;
58
+ }
59
+ return resolveAvatarFill(exports.AVATAR_SEEDS[hash % exports.AVATAR_SEEDS.length]);
60
+ }
61
+ /** True when `fg` clears the body-text bar on `bg` — exported for consumer assertions. */
62
+ const meetsBodyText = (fg, bg) => (0, color_1.contrastRatio)(fg, bg) >= accentText_1.AA_NORMAL_TEXT;
63
+ exports.meetsBodyText = meetsBodyText;
@@ -0,0 +1,39 @@
1
+ import { PlanPillTone } from "../Components/PlanPill/PlanPillProps";
2
+ import { PlanExpiryInput } from "./planExpiry";
3
+ export type PlanBadgeInput = {
4
+ /**
5
+ * Whether the org is on any plan at all. Defaults to true, so a caller that
6
+ * only knows the plan's name/code can omit it.
7
+ */
8
+ hasPlan?: boolean;
9
+ planName?: string | null;
10
+ /** Plan code, e.g. `"free"`. Used to detect the free plan when `isFreePlan` is omitted. */
11
+ planCode?: string | null;
12
+ /** Legacy numeric plan id, where `1` is the free plan. */
13
+ planId?: number | null;
14
+ /** Explicit free-plan flag. Overrides detection from `planCode`/`planId`/`planName`. */
15
+ isFreePlan?: boolean;
16
+ isTrial?: boolean;
17
+ isExpired?: boolean;
18
+ expiryDate?: PlanExpiryInput;
19
+ /** The badge is hidden entirely for anyone who cannot act on it. */
20
+ canManageBilling?: boolean;
21
+ /** Injectable clock, for tests. */
22
+ now?: Date;
23
+ };
24
+ export type PlanBadgeResult = {
25
+ visible: boolean;
26
+ label: string;
27
+ mobileLabel: string;
28
+ subtitle: string;
29
+ tone: PlanPillTone;
30
+ };
31
+ /**
32
+ * Turns an org's plan state into the label, urgency tone and inset-chip text for
33
+ * a `PlanPill` — the "Upgrade your plan" badge in an app's top bar.
34
+ *
35
+ * Copy and thresholds are centralized here so every app shows the same badge for
36
+ * the same org.
37
+ */
38
+ export declare function resolvePlanBadge(input: PlanBadgeInput): PlanBadgeResult;
39
+ //# sourceMappingURL=planBadge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"planBadge.d.ts","sourceRoot":"","sources":["../../src/Utils/planBadge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AACpE,OAAO,EACL,eAAe,EAGhB,MAAM,cAAc,CAAC;AAEtB,MAAM,MAAM,cAAc,GAAG;IAC3B;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,2FAA2F;IAC3F,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,0DAA0D;IAC1D,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,wFAAwF;IACxF,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,oEAAoE;IACpE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,mCAAmC;IACnC,GAAG,CAAC,EAAE,IAAI,CAAC;CACZ,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,YAAY,CAAC;CACpB,CAAC;AA0DF;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,cAAc,GAAG,eAAe,CAuDvE"}
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolvePlanBadge = resolvePlanBadge;
4
+ const planExpiry_1 = require("./planExpiry");
5
+ const UPGRADE_LABEL = "Upgrade your plan";
6
+ const UPGRADE_MOBILE_LABEL = "Upgrade";
7
+ const EXPIRED_MOBILE_LABEL = "Expired";
8
+ const TRIAL_LABEL = "Trial";
9
+ const GENERIC_PLAN_NAME = "Plan";
10
+ const LEGACY_FREE_PLAN_ID = 1;
11
+ const TRIAL_DANGER_DAYS = 3;
12
+ const ACTIVE_WARNING_DAYS = 15;
13
+ const HIDDEN = {
14
+ visible: false,
15
+ label: "",
16
+ mobileLabel: "",
17
+ subtitle: "",
18
+ tone: "normal",
19
+ };
20
+ const upgrade = (subtitle, tone = "normal") => ({
21
+ visible: true,
22
+ label: UPGRADE_LABEL,
23
+ mobileLabel: UPGRADE_MOBILE_LABEL,
24
+ subtitle,
25
+ tone,
26
+ });
27
+ const normalize = (value) => String(value !== null && value !== void 0 ? value : "")
28
+ .trim()
29
+ .toLowerCase();
30
+ function isFreePlan(input, planName) {
31
+ if (input.isFreePlan !== undefined)
32
+ return input.isFreePlan;
33
+ if (normalize(input.planCode) === "free")
34
+ return true;
35
+ if (input.planId !== null && input.planId !== undefined) {
36
+ return Number(input.planId) === LEGACY_FREE_PLAN_ID;
37
+ }
38
+ return normalize(planName) === "free";
39
+ }
40
+ /** Whole days from today to the expiry day; null when there is no usable date. */
41
+ function daysUntil(expiryDate, now) {
42
+ if (expiryDate === null || expiryDate === undefined || expiryDate === "") {
43
+ return null;
44
+ }
45
+ const expiry = expiryDate instanceof Date ? expiryDate : new Date(expiryDate);
46
+ if (isNaN(expiry.getTime()))
47
+ return null;
48
+ const startOfDay = (d) => new Date(d.getFullYear(), d.getMonth(), d.getDate());
49
+ return Math.round((startOfDay(expiry).getTime() - startOfDay(now).getTime()) / 86400000);
50
+ }
51
+ /**
52
+ * Turns an org's plan state into the label, urgency tone and inset-chip text for
53
+ * a `PlanPill` — the "Upgrade your plan" badge in an app's top bar.
54
+ *
55
+ * Copy and thresholds are centralized here so every app shows the same badge for
56
+ * the same org.
57
+ */
58
+ function resolvePlanBadge(input) {
59
+ var _a, _b;
60
+ if (!input.canManageBilling)
61
+ return HIDDEN;
62
+ const now = (_a = input.now) !== null && _a !== void 0 ? _a : new Date();
63
+ const planName = ((_b = input.planName) === null || _b === void 0 ? void 0 : _b.trim()) || "";
64
+ const daysLeft = daysUntil(input.expiryDate, now);
65
+ const remaining = (0, planExpiry_1.formatPlanRemaining)(input.expiryDate, now);
66
+ const elapsed = (0, planExpiry_1.formatPlanElapsed)(input.expiryDate, now);
67
+ // Checked before the expiry branch: a lapsed org is downgraded to free, and
68
+ // "Free expired" is not a state worth shouting about.
69
+ if (isFreePlan(input, planName))
70
+ return upgrade("");
71
+ if (input.isExpired || elapsed !== "") {
72
+ // "<plan> expired" as the label with the elapsed time in the inset chip —
73
+ // folding both behind "Upgrade your plan" made the pill wide enough to
74
+ // crowd the header.
75
+ return {
76
+ visible: true,
77
+ label: `${planName || GENERIC_PLAN_NAME} expired`,
78
+ mobileLabel: EXPIRED_MOBILE_LABEL,
79
+ subtitle: elapsed,
80
+ tone: "danger",
81
+ };
82
+ }
83
+ if (input.hasPlan === false)
84
+ return upgrade("");
85
+ if (input.isTrial) {
86
+ return {
87
+ visible: true,
88
+ label: TRIAL_LABEL,
89
+ mobileLabel: TRIAL_LABEL,
90
+ subtitle: remaining,
91
+ tone: daysLeft !== null && daysLeft <= TRIAL_DANGER_DAYS
92
+ ? "danger"
93
+ : "warning",
94
+ };
95
+ }
96
+ const tone = daysLeft !== null && daysLeft < ACTIVE_WARNING_DAYS ? "warning" : "normal";
97
+ // An active paid plan names itself — falling through to "Upgrade your plan"
98
+ // told users with years remaining that they were on nothing.
99
+ if (!planName)
100
+ return upgrade(remaining, tone);
101
+ return {
102
+ visible: true,
103
+ label: planName,
104
+ mobileLabel: planName,
105
+ subtitle: remaining,
106
+ tone,
107
+ };
108
+ }
@@ -0,0 +1,35 @@
1
+ export type PlanExpiryInput = string | number | Date | null | undefined;
2
+ /**
3
+ * Calendar months + leftover days between two dates.
4
+ * Anchoring on a real month boundary keeps "1 month" honest across 28/30/31-day
5
+ * months, so Jan 31 → Feb 28 reads as 28 days rather than a whole month.
6
+ */
7
+ export declare function splitMonthsAndDays(from: Date, to: Date): {
8
+ months: number;
9
+ days: number;
10
+ };
11
+ /**
12
+ * Time left on a plan, compactly: `"3mo left"` once a whole month remains,
13
+ * `"18d left"` below that. Intended for `UpgradeButton`'s `subtitle`, so it
14
+ * stays one short line. Returns `""` when there is no usable date or the plan
15
+ * has already lapsed — an expired plan is a different message, which the
16
+ * consuming app owns.
17
+ */
18
+ export declare function formatPlanExpiry(expiryDate: PlanExpiryInput, now?: Date): string;
19
+ /**
20
+ * Time left on a plan, to the minute in the final day: `"3mo left"`, `"18d left"`,
21
+ * then `"23h 45m left"` down to `"1m left"`. `""` once lapsed.
22
+ *
23
+ * Differs from `formatPlanExpiry` only in that last day: a calendar-day count
24
+ * reads as "Expires today" for the whole day, which goes stale next to a live
25
+ * countdown. Prefer this for a badge that sits on screen; `formatPlanExpiry`
26
+ * stays the cheaper day-granular option.
27
+ */
28
+ export declare function formatPlanRemaining(expiryDate: PlanExpiryInput, now?: Date): string;
29
+ /**
30
+ * How long ago a plan lapsed: `"1h 10m ago"` under a day, `"2d ago"` / `"1mo ago"`
31
+ * beyond it. `""` while the plan is still live — so a badge can say how stale a
32
+ * lapse is rather than a bare "expired".
33
+ */
34
+ export declare function formatPlanElapsed(expiryDate: PlanExpiryInput, now?: Date): string;
35
+ //# sourceMappingURL=planExpiry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"planExpiry.d.ts","sourceRoot":"","sources":["../../src/Utils/planExpiry.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC;AAoCxE;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,IAAI,EACV,EAAE,EAAE,IAAI,GACP;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAOlC;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,eAAe,EAC3B,GAAG,CAAC,EAAE,IAAI,GACT,MAAM,CAaR;AAYD;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,eAAe,EAC3B,GAAG,CAAC,EAAE,IAAI,GACT,MAAM,CAgBR;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,eAAe,EAC3B,GAAG,CAAC,EAAE,IAAI,GACT,MAAM,CAgBR"}
@@ -0,0 +1,115 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.splitMonthsAndDays = splitMonthsAndDays;
4
+ exports.formatPlanExpiry = formatPlanExpiry;
5
+ exports.formatPlanRemaining = formatPlanRemaining;
6
+ exports.formatPlanElapsed = formatPlanElapsed;
7
+ const MS_PER_DAY = 24 * 60 * 60 * 1000;
8
+ function toDate(value) {
9
+ if (value === null || value === undefined || value === "")
10
+ return null;
11
+ const date = value instanceof Date ? new Date(value.getTime()) : new Date(value);
12
+ return isNaN(date.getTime()) ? null : date;
13
+ }
14
+ function startOfDay(date) {
15
+ return new Date(date.getFullYear(), date.getMonth(), date.getDate());
16
+ }
17
+ function addCalendarMonths(date, months) {
18
+ const lastDayOfTarget = new Date(date.getFullYear(), date.getMonth() + months + 1, 0).getDate();
19
+ return new Date(date.getFullYear(), date.getMonth() + months, Math.min(date.getDate(), lastDayOfTarget));
20
+ }
21
+ function daysBetween(from, to) {
22
+ return Math.round((to.getTime() - from.getTime()) / MS_PER_DAY);
23
+ }
24
+ /** Compact units (`2mo`, `5d`) — this reads inside a badge subtitle, where
25
+ * "2 months 5 days left" wraps. */
26
+ function unit(count, suffix) {
27
+ return `${count}${suffix}`;
28
+ }
29
+ /**
30
+ * Calendar months + leftover days between two dates.
31
+ * Anchoring on a real month boundary keeps "1 month" honest across 28/30/31-day
32
+ * months, so Jan 31 → Feb 28 reads as 28 days rather than a whole month.
33
+ */
34
+ function splitMonthsAndDays(from, to) {
35
+ let months = (to.getFullYear() - from.getFullYear()) * 12 +
36
+ (to.getMonth() - from.getMonth());
37
+ if (to.getDate() < from.getDate())
38
+ months -= 1;
39
+ if (months < 0)
40
+ months = 0;
41
+ return { months, days: daysBetween(addCalendarMonths(from, months), to) };
42
+ }
43
+ /**
44
+ * Time left on a plan, compactly: `"3mo left"` once a whole month remains,
45
+ * `"18d left"` below that. Intended for `UpgradeButton`'s `subtitle`, so it
46
+ * stays one short line. Returns `""` when there is no usable date or the plan
47
+ * has already lapsed — an expired plan is a different message, which the
48
+ * consuming app owns.
49
+ */
50
+ function formatPlanExpiry(expiryDate, now) {
51
+ const expiry = toDate(expiryDate);
52
+ if (!expiry)
53
+ return "";
54
+ const expiryDay = startOfDay(expiry);
55
+ const today = startOfDay(now !== null && now !== void 0 ? now : new Date());
56
+ const daysLeft = daysBetween(today, expiryDay);
57
+ if (daysLeft < 0)
58
+ return "";
59
+ if (daysLeft === 0)
60
+ return "Expires today";
61
+ const { months, days } = splitMonthsAndDays(today, expiryDay);
62
+ return months > 0 ? `${unit(months, "mo")} left` : `${unit(days, "d")} left`;
63
+ }
64
+ /** Never reports `0m`; the final stretch reads `1m`. */
65
+ function formatHoursMinutes(ms, suffix) {
66
+ const totalMinutes = Math.floor(ms / 60000);
67
+ const hours = Math.floor(totalMinutes / 60);
68
+ const minutes = totalMinutes % 60;
69
+ return hours > 0
70
+ ? `${unit(hours, "h")} ${unit(minutes, "m")} ${suffix}`
71
+ : `${unit(Math.max(minutes, 1), "m")} ${suffix}`;
72
+ }
73
+ /**
74
+ * Time left on a plan, to the minute in the final day: `"3mo left"`, `"18d left"`,
75
+ * then `"23h 45m left"` down to `"1m left"`. `""` once lapsed.
76
+ *
77
+ * Differs from `formatPlanExpiry` only in that last day: a calendar-day count
78
+ * reads as "Expires today" for the whole day, which goes stale next to a live
79
+ * countdown. Prefer this for a badge that sits on screen; `formatPlanExpiry`
80
+ * stays the cheaper day-granular option.
81
+ */
82
+ function formatPlanRemaining(expiryDate, now) {
83
+ const expiry = toDate(expiryDate);
84
+ if (!expiry)
85
+ return "";
86
+ const referenceNow = now !== null && now !== void 0 ? now : new Date();
87
+ const msLeft = expiry.getTime() - referenceNow.getTime();
88
+ if (msLeft < 0)
89
+ return "";
90
+ if (msLeft < MS_PER_DAY) {
91
+ return msLeft === 0 ? "Expires today" : formatHoursMinutes(msLeft, "left");
92
+ }
93
+ const { months, days } = splitMonthsAndDays(startOfDay(referenceNow), startOfDay(expiry));
94
+ return months > 0 ? `${unit(months, "mo")} left` : `${unit(days, "d")} left`;
95
+ }
96
+ /**
97
+ * How long ago a plan lapsed: `"1h 10m ago"` under a day, `"2d ago"` / `"1mo ago"`
98
+ * beyond it. `""` while the plan is still live — so a badge can say how stale a
99
+ * lapse is rather than a bare "expired".
100
+ */
101
+ function formatPlanElapsed(expiryDate, now) {
102
+ const expiry = toDate(expiryDate);
103
+ if (!expiry)
104
+ return "";
105
+ const referenceNow = now !== null && now !== void 0 ? now : new Date();
106
+ const msAgo = referenceNow.getTime() - expiry.getTime();
107
+ if (msAgo <= 0)
108
+ return "";
109
+ if (msAgo < MS_PER_DAY)
110
+ return formatHoursMinutes(msAgo, "ago");
111
+ const { months, days } = splitMonthsAndDays(startOfDay(expiry), startOfDay(referenceNow));
112
+ return months > 0
113
+ ? `${unit(months, "mo")} ago`
114
+ : `${unit(Math.max(days, 1), "d")} ago`;
115
+ }
package/dist/index.d.ts CHANGED
@@ -78,12 +78,17 @@ import StageProgress from "./Components/StageProgress/StageProgress";
78
78
  import StageItem from "./Components/StageProgress/StageItem";
79
79
  import OrgSwitcher from "./Components/OrgSwitcher/OrgSwitcher";
80
80
  import UpgradeButton from "./Components/UpgradeButton/UpgradeButton";
81
+ import PlanPill from "./Components/PlanPill/PlanPill";
82
+ import PlanBadge from "./Components/PlanBadge/PlanBadge";
83
+ import LimitReachedModal from "./Components/LimitReachedModal/LimitReachedModal";
84
+ import { formatPlanElapsed, formatPlanExpiry, formatPlanRemaining, splitMonthsAndDays } from "./Utils/planExpiry";
85
+ import { resolvePlanBadge } from "./Utils/planBadge";
81
86
  import UserDetails from "./Components/UserDetails/UserDetails";
82
87
  import RolesPermission from "./Components/RolesPermission/RolesPermission";
83
88
  import CustomModulesTable from "./Components/CustomModulesTable/CustomModulesTable";
84
89
  import SignInActivityTable from "./Components/SignInActivityTable/SignInActivityTable";
85
90
  import OrganizationDetails from "./Components/OrganizationDetails/OrganizationDetails";
86
- export { Accordian, AlertDialog, ApexBarChart, ApexPieChart, ApexPolarChart, ApexLineChart, Breadcrumbs, Button, ButtonGroupIcon, Card, Checkbox, ContactForm, DatePicker, Drawer, DrawerHeader, DrawerBody, DrawerFooter, Dropdown, Editor, EmptyState, WorkspaceWindow, WorkspaceTray, WorkspaceTrayPreview, FieldSelectModal, FilePreview, FilePreviewTrigger, FileUpload, FileUploader, FilterSidebar, FormWrapper, LazyWrapper, MoreItems, PdfViewer, ScrollToTop, CopyButton, StageProgress, StageItem, OrgSwitcher, UpgradeButton, UserDetails, RolesPermission, CustomModulesTable, SignInActivityTable, OrganizationDetails, Header, HeaderActions, InputTextArea, InputSwitch, KanbanBoard, Loading, Modal, ModalHeader, ModalBody, ModalFooter, NavigationBar, Notification, NoteTextArea, MultiSelect, NumberInput, PaymentCard, PhoneNumberInput, PinInput, ProductCard, ProductDetails, ProfileCard, ProfileCardHeader, ProfileCardBody, ProfileCardFooter, ProfilePhotoViewer, ProgressBar, RadioButton, RadioButtonGroup, Reorder, Search, Select, SelectV2, SearchSelect, SelectSearch, SideBar, Slider, Skeletons, Switch, Table, TableToggle, Tag, TextInput, Timeline, Toaster, ToolTip, OverflowToolTip, useToaster, VerifyEmailOtp, useSidebarPrefs, useIsTruncated, useCustomTheme, ThemesList, debounce, };
91
+ export { Accordian, AlertDialog, ApexBarChart, ApexPieChart, ApexPolarChart, ApexLineChart, Breadcrumbs, Button, ButtonGroupIcon, Card, Checkbox, ContactForm, DatePicker, Drawer, DrawerHeader, DrawerBody, DrawerFooter, Dropdown, Editor, EmptyState, WorkspaceWindow, WorkspaceTray, WorkspaceTrayPreview, FieldSelectModal, FilePreview, FilePreviewTrigger, FileUpload, FileUploader, FilterSidebar, FormWrapper, LazyWrapper, MoreItems, PdfViewer, ScrollToTop, CopyButton, StageProgress, StageItem, OrgSwitcher, LimitReachedModal, UpgradeButton, PlanPill, PlanBadge, formatPlanElapsed, formatPlanExpiry, formatPlanRemaining, resolvePlanBadge, splitMonthsAndDays, UserDetails, RolesPermission, CustomModulesTable, SignInActivityTable, OrganizationDetails, Header, HeaderActions, InputTextArea, InputSwitch, KanbanBoard, Loading, Modal, ModalHeader, ModalBody, ModalFooter, NavigationBar, Notification, NoteTextArea, MultiSelect, NumberInput, PaymentCard, PhoneNumberInput, PinInput, ProductCard, ProductDetails, ProfileCard, ProfileCardHeader, ProfileCardBody, ProfileCardFooter, ProfilePhotoViewer, ProgressBar, RadioButton, RadioButtonGroup, Reorder, Search, Select, SelectV2, SearchSelect, SelectSearch, SideBar, Slider, Skeletons, Switch, Table, TableToggle, Tag, TextInput, Timeline, Toaster, ToolTip, OverflowToolTip, useToaster, VerifyEmailOtp, useSidebarPrefs, useIsTruncated, useCustomTheme, ThemesList, debounce, };
87
92
  export default withTheme;
88
93
  export type { UserDetailsProps, UserDetailsLabels, UserListItem, SelectedUserDetail, UserDetailRow, RoleOption, AddUserFormValues, ChangeRoleSubmitPayload, } from "./Components/UserDetails/UserDetailsProps";
89
94
  export type { WorkspaceWindowProps, WorkspaceWindowState, WorkspaceTrayProps, WorkspaceTrayItem, WorkspaceTrayPreviewProps, } from "./Components/WorkspaceWindow/WorkspaceWindowProps";
@@ -98,9 +103,17 @@ export type { PixelizeThemeProviderProps, ThemeModeContextValue, ThemeSwitcherPr
98
103
  export { brandThemes } from "./Theme";
99
104
  export { lightPalettes, darkPalettes, palettes, themeNames, } from "./Theme/tokens/brands";
100
105
  export { buildDarkPalette } from "./Theme/tokens/builders/buildDarkPalette";
106
+ export { AA_NON_TEXT, liftToContrast, withOutlineRung, } from "./Theme/tokens/builders/outlineRung";
107
+ export { AVATAR_SEEDS, avatarFillFor, meetsBodyText, resolveAvatarFill, resolveStatusTone, } from "./Theme/tokens/builders/statusTone";
108
+ export type { StatusTone } from "./Theme/tokens/builders/statusTone";
101
109
  export type { ColorMode, ResolvedColorMode, ThemeName, PaletteProps, ColorScale, BrandScale, SemanticColors, NamedSurfaces, } from "./Theme/tokens/types";
102
110
  export { isDarkCanvas, onFilled, onGradient, accentTextOnCanvas, pickAccentText, AA_NORMAL_TEXT, DARK_CANVAS_LUMINANCE, } from "./Theme/tokens/builders/accentText";
103
111
  export { hexToRgb, hexToRgba, compositeOver, rgbToHex, rgbToHsl, hslToRgb, hexToHsl, hslToHex, withLightness, mix, relativeLuminance, contrastRatio, } from "./Theme/tokens/builders/color";
104
112
  export type { Rgb, Hsl } from "./Theme/tokens/builders/color";
105
113
  export type { SelectV2Props, SelectV2Size, OptionProp as SelectV2Option } from "./Components/SelectV2/SelectV2Props";
114
+ export type { PlanPillProps, PlanPillTone } from "./Components/PlanPill/PlanPillProps";
115
+ export type { PlanBadgeProps } from "./Components/PlanBadge/PlanBadgeProps";
116
+ export type { PlanBadgeInput, PlanBadgeResult } from "./Utils/planBadge";
117
+ export type { PlanExpiryInput } from "./Utils/planExpiry";
118
+ export type { LimitReachedModalProps, LimitKind, } from "./Components/LimitReachedModal/LimitReachedModalProps";
106
119
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,SAAS,MAAM,kCAAkC,CAAC;AACzD,OAAO,WAAW,MAAM,sCAAsC,CAAC;AAC/D,OAAO,YAAY,MAAM,mDAAmD,CAAC;AAC7E,OAAO,YAAY,MAAM,mDAAmD,CAAC;AAC7E,OAAO,cAAc,MAAM,yDAAyD,CAAC;AACrF,OAAO,WAAW,MAAM,sCAAsC,CAAC;AAC/D,OAAO,MAAM,MAAM,4BAA4B,CAAC;AAChD,OAAO,eAAe,MAAM,8CAA8C,CAAC;AAC3E,OAAO,IAAI,MAAM,wBAAwB,CAAC;AAC1C,OAAO,QAAQ,MAAM,gCAAgC,CAAC;AACtD,OAAO,WAAW,MAAM,sCAAsC,CAAC;AAE/D,OAAO,MAAM,EAAE,EACX,YAAY,EACZ,UAAU,EACV,YAAY,EACf,MAAM,4BAA4B,CAAC;AACpC,OAAO,QAAQ,MAAM,gCAAgC,CAAC;AACtD,OAAO,MAAM,MAAM,4BAA4B,CAAC;AAChD,OAAO,UAAU,MAAM,oCAAoC,CAAC;AAC5D,OAAO,YAAY,MAAM,wCAAwC,CAAC;AAClE,OAAO,WAAW,MAAM,+BAA+B,CAAC;AACxD,OAAO,MAAM,MAAM,4BAA4B,CAAC;AAChD,OAAO,aAAa,MAAM,mCAAmC,CAAC;AAC9D,OAAO,aAAa,MAAM,0CAA0C,CAAC;AACrE,OAAO,WAAW,MAAM,sCAAsC,CAAC;AAC/D,OAAO,OAAO,MAAM,8BAA8B,CAAC;AACnD,OAAO,KAAK,EAAE,EACV,WAAW,EACX,SAAS,EACT,WAAW,EACd,MAAM,0BAA0B,CAAC;AAClC,OAAO,WAAW,MAAM,sCAAsC,CAAC;AAC/D,OAAO,aAAa,MAAM,0CAA0C,CAAC;AACrE,OAAO,YAAY,MAAM,wCAAwC,CAAC;AAClE,OAAO,WAAW,MAAM,sCAAsC,CAAC;AAC/D,OAAO,QAAQ,MAAM,gCAAgC,CAAC;AACtD,OAAO,WAAW,EAAE,EAChB,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACpB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,kBAAkB,MAAM,oDAAoD,CAAC;AACpF,OAAO,WAAW,MAAM,sCAAsC,CAAC;AAC/D,OAAO,EACH,WAAW,EACX,gBAAgB,EACnB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,OAAO,MAAM,8BAA8B,CAAC;AACnD,OAAO,MAAM,MAAM,4BAA4B,CAAC;AAChD,OAAO,MAAM,MAAM,4BAA4B,CAAC;AAChD,OAAO,QAAQ,MAAM,gCAAgC,CAAC;AACtD,OAAO,YAAY,MAAM,wCAAwC,CAAC;AAClE,OAAO,YAAY,MAAM,wCAAwC,CAAC;AAClE,OAAO,OAAO,MAAM,8BAA8B,CAAC;AACnD,OAAO,MAAM,MAAM,4BAA4B,CAAC;AAChD,OAAO,SAAS,MAAM,kCAAkC,CAAC;AACzD,OAAO,MAAM,MAAM,4BAA4B,CAAC;AAChD,OAAO,KAAK,MAAM,0BAA0B,CAAC;AAC7C,OAAO,GAAG,MAAM,sBAAsB,CAAC;AACvC,OAAO,SAAS,MAAM,8BAA8B,CAAC;AACrD,OAAO,QAAQ,MAAM,gCAAgC,CAAC;AACtD,OAAO,OAAO,EAAE,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,OAAO,MAAM,8BAA8B,CAAC;AACnD,OAAO,eAAe,MAAM,sCAAsC,CAAC;AACnE,OAAO,cAAc,MAAM,uDAAuD,CAAC;AACnF,OAAO,WAAW,MAAM,iCAAiC,CAAC;AAC1D,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,WAAW,MAAM,sCAAsC,CAAC;AAC/D,OAAO,cAAc,MAAM,4CAA4C,CAAC;AACxE,OAAO,gBAAgB,MAAM,qCAAqC,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AACpE,OAAO,WAAW,MAAM,2CAA2C,CAAC;AACpE,OAAO,aAAa,MAAM,qDAAqD,CAAC;AAChF,OAAO,YAAY,MAAM,wCAAwC,CAAC;AAClE,OAAO,UAAU,MAAM,yCAAyC,CAAC;AACjE,OAAO,aAAa,MAAM,0CAA0C,CAAC;AACrE,OAAO,UAAU,MAAM,oCAAoC,CAAC;AAC5D,OAAO,eAAe,EAAE,EACpB,aAAa,EAChB,MAAM,8CAA8C,CAAC;AACtD,OAAO,oBAAoB,MAAM,mDAAmD,CAAC;AACrF,OAAO,SAAS,MAAM,kCAAkC,CAAC;AACzD,OAAO,WAAW,MAAM,sCAAsC,CAAC;AAC/D,OAAO,UAAU,MAAM,oCAAoC,CAAC;AAC5D,OAAO,gBAAgB,MAAM,gDAAgD,CAAC;AAC9E,OAAO,SAAS,MAAM,kCAAkC,CAAC;AACzD,OAAO,WAAW,MAAM,sCAAsC,CAAC;AAC/D,OAAO,WAAW,EAAE,EAChB,kBAAkB,EACrB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,aAAa,MAAM,0CAA0C,CAAC;AACrE,OAAO,SAAS,MAAM,sCAAsC,CAAC;AAC7D,OAAO,WAAW,MAAM,sCAAsC,CAAC;AAC/D,OAAO,aAAa,MAAM,0CAA0C,CAAC;AACrE,OAAO,QAAQ,MAAM,gCAAgC,CAAC;AACtD,OAAO,SAAS,MAAM,kCAAkC,CAAC;AACzD,OAAO,iBAAiB,MAAM,kDAAkD,CAAC;AACjF,OAAO,EACH,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,kBAAkB,EACrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,WAAW,MAAM,sCAAsC,CAAC;AAC/D,OAAO,eAAe,MAAM,8CAA8C,CAAC;AAC3E,OAAO,kBAAkB,MAAM,oDAAoD,CAAC;AACpF,OAAO,mBAAmB,MAAM,sDAAsD,CAAC;AACvF,OAAO,mBAAmB,MAAM,sDAAsD,CAAC;AAEvF,OAAO,EAEH,SAAS,EACT,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,aAAa,EACb,WAAW,EACX,MAAM,EACN,eAAe,EACf,IAAI,EACJ,QAAQ,EACR,WAAW,EACX,UAAU,EACV,MAAM,EACN,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,QAAQ,EACR,MAAM,EACN,UAAU,EACV,eAAe,EACf,aAAa,EACb,oBAAoB,EACpB,gBAAgB,EAChB,WAAW,EACX,kBAAkB,EAClB,UAAU,EACV,YAAY,EACZ,aAAa,EACb,WAAW,EACX,WAAW,EACX,SAAS,EACT,SAAS,EACT,WAAW,EACX,UAAU,EACV,aAAa,EACb,SAAS,EACT,WAAW,EACX,iBAAiB,EACjB,aAAa,EACb,QAAQ,EACR,SAAS,EACT,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,WAAW,EACX,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,MAAM,EACN,aAAa,EACb,aAAa,EACb,WAAW,EACX,WAAW,EACX,OAAO,EACP,KAAK,EACL,WAAW,EACX,SAAS,EACT,WAAW,EACX,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,QAAQ,EACR,WAAW,EACX,cAAc,EACd,WAAW,EACX,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,OAAO,EACP,MAAM,EACN,MAAM,EACN,QAAQ,EACR,YAAY,EACZ,YAAY,EACZ,OAAO,EACP,MAAM,EACN,SAAS,EACT,MAAM,EACN,KAAK,EACL,WAAW,EACX,GAAG,EACH,SAAS,EACT,QAAQ,EACR,OAAO,EACP,OAAO,EACP,eAAe,EACf,UAAU,EACV,cAAc,EAEd,eAAe,EACf,cAAc,EAEd,cAAc,EACd,UAAU,EAEV,QAAQ,GACX,CAAC;AACF,eAAe,SAAS,CAAC;AAEzB,YAAY,EACR,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,UAAU,EACV,iBAAiB,EACjB,uBAAuB,GAC1B,MAAM,2CAA2C,CAAC;AAEnD,YAAY,EACR,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,yBAAyB,GAC5B,MAAM,mDAAmD,CAAC;AAE3D,YAAY,EACR,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,UAAU,EACV,aAAa,EACb,QAAQ,GACX,MAAM,mDAAmD,CAAC;AAE3D,YAAY,EACR,uBAAuB,EACvB,wBAAwB,EACxB,UAAU,EACV,mBAAmB,GACtB,MAAM,yDAAyD,CAAC;AAEjE,YAAY,EACR,wBAAwB,EACxB,oBAAoB,EACpB,YAAY,GACf,MAAM,2DAA2D,CAAC;AAEnE,YAAY,EACR,wBAAwB,EACxB,yBAAyB,EACzB,gBAAgB,EAChB,mBAAmB,GACtB,MAAM,2DAA2D,CAAC;AAEnE,YAAY,EACR,YAAY,EACZ,sBAAsB,EACtB,qBAAqB,GACxB,MAAM,yBAAyB,CAAC;AAQjC,OAAO,EACH,qBAAqB,EACrB,YAAY,EACZ,aAAa,GAChB,MAAM,kBAAkB,CAAC;AAE1B,YAAY,EACR,0BAA0B,EAC1B,qBAAqB,EACrB,kBAAkB,GACrB,MAAM,kBAAkB,CAAC;AAE1B,qFAAqF;AACrF,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAGtC,OAAO,EACH,aAAa,EACb,YAAY,EACZ,QAAQ,EACR,UAAU,GACb,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAK5E,OAAO,EACH,WAAW,EACX,cAAc,EACd,eAAe,GAClB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACH,YAAY,EACZ,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,iBAAiB,GACpB,MAAM,oCAAoC,CAAC;AAC5C,YAAY,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAErE,YAAY,EACR,SAAS,EACT,iBAAiB,EACjB,SAAS,EACT,YAAY,EACZ,UAAU,EACV,UAAU,EACV,cAAc,EACd,aAAa,GAChB,MAAM,sBAAsB,CAAC;AAM9B,OAAO,EACH,YAAY,EACZ,QAAQ,EACR,UAAU,EACV,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,qBAAqB,GACxB,MAAM,oCAAoC,CAAC;AAM5C,OAAO,EACH,QAAQ,EACR,SAAS,EACT,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,aAAa,EACb,GAAG,EACH,iBAAiB,EACjB,aAAa,GAChB,MAAM,+BAA+B,CAAC;AACvC,YAAY,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,+BAA+B,CAAC;AAI9D,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,UAAU,IAAI,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAErH,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAIvF,YAAY,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAC5E,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzE,YAAY,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAK1D,YAAY,EACR,sBAAsB,EACtB,SAAS,GACZ,MAAM,uDAAuD,CAAC"}