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
package/dist/index.js CHANGED
@@ -37,9 +37,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
37
37
  return (mod && mod.__esModule) ? mod : { "default": mod };
38
38
  };
39
39
  Object.defineProperty(exports, "__esModule", { value: true });
40
- exports.Loading = exports.KanbanBoard = exports.InputSwitch = exports.InputTextArea = exports.HeaderActions = exports.Header = exports.OrganizationDetails = exports.SignInActivityTable = exports.CustomModulesTable = exports.RolesPermission = exports.UserDetails = exports.UpgradeButton = exports.OrgSwitcher = exports.StageItem = exports.StageProgress = exports.CopyButton = exports.ScrollToTop = exports.PdfViewer = exports.MoreItems = exports.LazyWrapper = exports.FormWrapper = exports.FilterSidebar = exports.FileUploader = exports.FileUpload = exports.FilePreviewTrigger = exports.FilePreview = exports.FieldSelectModal = exports.WorkspaceTrayPreview = exports.WorkspaceTray = exports.WorkspaceWindow = exports.EmptyState = exports.Editor = exports.Dropdown = exports.DrawerFooter = exports.DrawerBody = exports.DrawerHeader = exports.Drawer = exports.DatePicker = exports.ContactForm = exports.Checkbox = exports.Card = exports.ButtonGroupIcon = exports.Button = exports.Breadcrumbs = exports.ApexLineChart = exports.ApexPolarChart = exports.ApexPieChart = exports.ApexBarChart = exports.AlertDialog = exports.Accordian = void 0;
41
- exports.ThemeSwitcher = exports.useThemeMode = exports.PixelizeThemeProvider = exports.debounce = exports.ThemesList = exports.useCustomTheme = exports.useIsTruncated = exports.useSidebarPrefs = exports.VerifyEmailOtp = exports.useToaster = exports.OverflowToolTip = exports.ToolTip = exports.Toaster = exports.Timeline = exports.TextInput = exports.Tag = exports.TableToggle = exports.Table = exports.Switch = exports.Skeletons = exports.Slider = exports.SideBar = exports.SelectSearch = exports.SearchSelect = exports.SelectV2 = exports.Select = exports.Search = exports.Reorder = exports.RadioButtonGroup = exports.RadioButton = exports.ProgressBar = exports.ProfilePhotoViewer = exports.ProfileCardFooter = exports.ProfileCardBody = exports.ProfileCardHeader = exports.ProfileCard = exports.ProductDetails = exports.ProductCard = exports.PinInput = exports.PhoneNumberInput = exports.PaymentCard = exports.NumberInput = exports.MultiSelect = exports.NoteTextArea = exports.Notification = exports.NavigationBar = exports.ModalFooter = exports.ModalBody = exports.ModalHeader = exports.Modal = void 0;
42
- exports.contrastRatio = exports.relativeLuminance = exports.mix = exports.withLightness = exports.hslToHex = exports.hexToHsl = exports.hslToRgb = exports.rgbToHsl = exports.rgbToHex = exports.compositeOver = exports.hexToRgba = exports.hexToRgb = exports.DARK_CANVAS_LUMINANCE = exports.AA_NORMAL_TEXT = exports.pickAccentText = exports.accentTextOnCanvas = exports.onGradient = exports.onFilled = exports.isDarkCanvas = exports.buildDarkPalette = exports.themeNames = exports.palettes = exports.darkPalettes = exports.lightPalettes = exports.brandThemes = void 0;
40
+ exports.CustomModulesTable = exports.RolesPermission = exports.UserDetails = exports.splitMonthsAndDays = exports.resolvePlanBadge = exports.formatPlanRemaining = exports.formatPlanExpiry = exports.formatPlanElapsed = exports.PlanBadge = exports.PlanPill = exports.UpgradeButton = exports.LimitReachedModal = exports.OrgSwitcher = exports.StageItem = exports.StageProgress = exports.CopyButton = exports.ScrollToTop = exports.PdfViewer = exports.MoreItems = exports.LazyWrapper = exports.FormWrapper = exports.FilterSidebar = exports.FileUploader = exports.FileUpload = exports.FilePreviewTrigger = exports.FilePreview = exports.FieldSelectModal = exports.WorkspaceTrayPreview = exports.WorkspaceTray = exports.WorkspaceWindow = exports.EmptyState = exports.Editor = exports.Dropdown = exports.DrawerFooter = exports.DrawerBody = exports.DrawerHeader = exports.Drawer = exports.DatePicker = exports.ContactForm = exports.Checkbox = exports.Card = exports.ButtonGroupIcon = exports.Button = exports.Breadcrumbs = exports.ApexLineChart = exports.ApexPolarChart = exports.ApexPieChart = exports.ApexBarChart = exports.AlertDialog = exports.Accordian = void 0;
41
+ exports.VerifyEmailOtp = exports.useToaster = exports.OverflowToolTip = exports.ToolTip = exports.Toaster = exports.Timeline = exports.TextInput = exports.Tag = exports.TableToggle = exports.Table = exports.Switch = exports.Skeletons = exports.Slider = exports.SideBar = exports.SelectSearch = exports.SearchSelect = exports.SelectV2 = exports.Select = exports.Search = exports.Reorder = exports.RadioButtonGroup = exports.RadioButton = exports.ProgressBar = exports.ProfilePhotoViewer = exports.ProfileCardFooter = exports.ProfileCardBody = exports.ProfileCardHeader = exports.ProfileCard = exports.ProductDetails = exports.ProductCard = exports.PinInput = exports.PhoneNumberInput = exports.PaymentCard = exports.NumberInput = exports.MultiSelect = exports.NoteTextArea = exports.Notification = exports.NavigationBar = exports.ModalFooter = exports.ModalBody = exports.ModalHeader = exports.Modal = exports.Loading = exports.KanbanBoard = exports.InputSwitch = exports.InputTextArea = exports.HeaderActions = exports.Header = exports.OrganizationDetails = exports.SignInActivityTable = void 0;
42
+ exports.contrastRatio = exports.relativeLuminance = exports.mix = exports.withLightness = exports.hslToHex = exports.hexToHsl = exports.hslToRgb = exports.rgbToHsl = exports.rgbToHex = exports.compositeOver = exports.hexToRgba = exports.hexToRgb = exports.DARK_CANVAS_LUMINANCE = exports.AA_NORMAL_TEXT = exports.pickAccentText = exports.accentTextOnCanvas = exports.onGradient = exports.onFilled = exports.isDarkCanvas = exports.resolveStatusTone = exports.resolveAvatarFill = exports.meetsBodyText = exports.avatarFillFor = exports.AVATAR_SEEDS = exports.withOutlineRung = exports.liftToContrast = exports.AA_NON_TEXT = exports.buildDarkPalette = exports.themeNames = exports.palettes = exports.darkPalettes = exports.lightPalettes = exports.brandThemes = exports.ThemeSwitcher = exports.useThemeMode = exports.PixelizeThemeProvider = exports.debounce = exports.ThemesList = exports.useCustomTheme = exports.useIsTruncated = exports.useSidebarPrefs = void 0;
43
43
  const Accordion_1 = __importDefault(require("./Components/Accordion/Accordion"));
44
44
  exports.Accordian = Accordion_1.default;
45
45
  const AlertDialog_1 = __importDefault(require("./Components/AlertDialog/AlertDialog"));
@@ -213,6 +213,19 @@ const OrgSwitcher_1 = __importDefault(require("./Components/OrgSwitcher/OrgSwitc
213
213
  exports.OrgSwitcher = OrgSwitcher_1.default;
214
214
  const UpgradeButton_1 = __importDefault(require("./Components/UpgradeButton/UpgradeButton"));
215
215
  exports.UpgradeButton = UpgradeButton_1.default;
216
+ const PlanPill_1 = __importDefault(require("./Components/PlanPill/PlanPill"));
217
+ exports.PlanPill = PlanPill_1.default;
218
+ const PlanBadge_1 = __importDefault(require("./Components/PlanBadge/PlanBadge"));
219
+ exports.PlanBadge = PlanBadge_1.default;
220
+ const LimitReachedModal_1 = __importDefault(require("./Components/LimitReachedModal/LimitReachedModal"));
221
+ exports.LimitReachedModal = LimitReachedModal_1.default;
222
+ const planExpiry_1 = require("./Utils/planExpiry");
223
+ Object.defineProperty(exports, "formatPlanElapsed", { enumerable: true, get: function () { return planExpiry_1.formatPlanElapsed; } });
224
+ Object.defineProperty(exports, "formatPlanExpiry", { enumerable: true, get: function () { return planExpiry_1.formatPlanExpiry; } });
225
+ Object.defineProperty(exports, "formatPlanRemaining", { enumerable: true, get: function () { return planExpiry_1.formatPlanRemaining; } });
226
+ Object.defineProperty(exports, "splitMonthsAndDays", { enumerable: true, get: function () { return planExpiry_1.splitMonthsAndDays; } });
227
+ const planBadge_1 = require("./Utils/planBadge");
228
+ Object.defineProperty(exports, "resolvePlanBadge", { enumerable: true, get: function () { return planBadge_1.resolvePlanBadge; } });
216
229
  const UserDetails_1 = __importDefault(require("./Components/UserDetails/UserDetails"));
217
230
  exports.UserDetails = UserDetails_1.default;
218
231
  const RolesPermission_1 = __importDefault(require("./Components/RolesPermission/RolesPermission"));
@@ -245,6 +258,19 @@ Object.defineProperty(exports, "palettes", { enumerable: true, get: function ()
245
258
  Object.defineProperty(exports, "themeNames", { enumerable: true, get: function () { return brands_1.themeNames; } });
246
259
  var buildDarkPalette_1 = require("./Theme/tokens/builders/buildDarkPalette");
247
260
  Object.defineProperty(exports, "buildDarkPalette", { enumerable: true, get: function () { return buildDarkPalette_1.buildDarkPalette; } });
261
+ // Contrast-resolved recipes for the two surfaces apps kept hand-rolling (and failing AA on):
262
+ // status chips and generated avatars. Consumers pass a scale/seed and get tokens that already
263
+ // clear the bar, instead of pinning hexes that go stale when a palette moves.
264
+ var outlineRung_1 = require("./Theme/tokens/builders/outlineRung");
265
+ Object.defineProperty(exports, "AA_NON_TEXT", { enumerable: true, get: function () { return outlineRung_1.AA_NON_TEXT; } });
266
+ Object.defineProperty(exports, "liftToContrast", { enumerable: true, get: function () { return outlineRung_1.liftToContrast; } });
267
+ Object.defineProperty(exports, "withOutlineRung", { enumerable: true, get: function () { return outlineRung_1.withOutlineRung; } });
268
+ var statusTone_1 = require("./Theme/tokens/builders/statusTone");
269
+ Object.defineProperty(exports, "AVATAR_SEEDS", { enumerable: true, get: function () { return statusTone_1.AVATAR_SEEDS; } });
270
+ Object.defineProperty(exports, "avatarFillFor", { enumerable: true, get: function () { return statusTone_1.avatarFillFor; } });
271
+ Object.defineProperty(exports, "meetsBodyText", { enumerable: true, get: function () { return statusTone_1.meetsBodyText; } });
272
+ Object.defineProperty(exports, "resolveAvatarFill", { enumerable: true, get: function () { return statusTone_1.resolveAvatarFill; } });
273
+ Object.defineProperty(exports, "resolveStatusTone", { enumerable: true, get: function () { return statusTone_1.resolveStatusTone; } });
248
274
  // WCAG contrast + accent-picking helpers this library uses internally to keep text readable
249
275
  // against any canvas/fill a palette produces. Pure and dependency-free — consumers building
250
276
  // custom components against `ColorScale`/`PaletteProps` tokens can reuse the same logic instead
package/package.json CHANGED
@@ -1,10 +1,14 @@
1
1
  {
2
2
  "name": "pixelize-design-library",
3
- "version": "2.4.1-beta.2",
3
+ "version": "2.4.1-beta.4",
4
4
  "private": false,
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",
7
7
  "types": "dist/index.d.ts",
8
+ "files": [
9
+ "dist",
10
+ "README.md"
11
+ ],
8
12
  "dependencies": {
9
13
  "@fontsource-variable/inter": "^5.2.8",
10
14
  "@hello-pangea/dnd": "^18.0.1",
@@ -133,4 +137,4 @@
133
137
  "react": "^18.3.1",
134
138
  "react-dom": "^18.3.1"
135
139
  }
136
- }
140
+ }
@@ -1,51 +0,0 @@
1
- {
2
- "permissions": {
3
- "allow": [
4
- "Bash(git ls-tree *)",
5
- "Bash(npx --no-install tsc --noEmit)",
6
- "Bash(git fsck *)",
7
- "Bash(npx tsc *)",
8
- "Bash(curl -s http://localhost:5174/ -o /dev/null -w \"HTTP %{http_code}\\\\n\")",
9
- "Bash(curl -s \"http://localhost:5174/src/Components/Table/Components/TableBody.tsx\" -o /dev/null -w \"transform TableBody: HTTP %{http_code}\\\\n\")",
10
- "Read(//private/tmp/**)",
11
- "Bash(npx jest *)",
12
- "Bash(pkill -f \"vite\")",
13
- "Bash(grep -rln -E \"import\\\\s+\\\\w+\\\\s*\\(,\\\\s*\\\\{[^}]*\\\\}\\)?\\\\s*from\\\\s+['\\\\\"]pixelize-design-library['\\\\\"]\" src)",
14
- "Bash(ps -p 44521 60411 -o pid,command)",
15
- "Bash(node -e \"const p=require\\('./package.json'\\); console.log\\(JSON.stringify\\(p.scripts,null,2\\)\\)\")",
16
- "Bash(echo \"=== total errors: $\\(npx tsc --noEmit -p tsconfig.json 2>&1)",
17
- "Bash(echo \"=== total: $\\(npx tsc --noEmit -p tsconfig.json 2>&1)",
18
- "Bash(echo \"exit=$?\")",
19
- "Read(//tmp/**)",
20
- "Bash(git mv *)",
21
- "Bash(git rm *)",
22
- "Bash(node -e \"console.log\\(require\\('@emotion/react/package.json'\\).version\\)\")",
23
- "Bash(node -e \"console.log\\('jodit-react', require\\('jodit-react/package.json'\\).version\\); try{console.log\\('jodit', require\\('jodit/package.json'\\).version\\)}catch\\(e\\){}\")",
24
- "Bash(node -e \"console.log\\('playwright', require\\('playwright/package.json'\\).version\\)\")",
25
- "Bash(node -e \"console.log\\('puppeteer', require\\('puppeteer/package.json'\\).version\\)\")",
26
- "Bash(node -e \"console.log\\('ws', require\\('ws/package.json'\\).version\\)\")",
27
- "Bash(node -e \"console.log\\('node', process.version\\)\")",
28
- "Bash(grep -E \"\\\\.tsx?$\")",
29
- "Bash(node -e \"console.log\\(require.resolve\\('@chakra-ui/styled-system'\\)\\)\")",
30
- "Bash(node -e \"const p=require.resolve\\('@chakra-ui/react'\\);console.log\\(p\\)\")",
31
- "Bash(sed -n '31,45p' src/Pages/table.tsx)",
32
- "Bash(perl -0pi -e 's/\\\\n\\\\s*content: \\\\\\(\\\\\\) => <>Hello<\\\\/>,?//' src/Pages/table.tsx)",
33
- "Bash(cd /Users/mahesh/Applications/Pixelize/CRM/Micro-Components *)",
34
- "Bash(node -e \"console.log\\(require\\('./node_modules/pixelize-design-library/package.json'\\).version\\)\")",
35
- "Bash(node -e \"console.log\\(JSON.stringify\\(require\\('./node_modules/pixelize-authenticator/package.json'\\).dependencies\\)\\)\")",
36
- "Bash(node -e \"console.log\\(require\\('./node_modules/pixelize-authenticator/package.json'\\).version\\)\")",
37
- "Bash(node -e \"console.log\\(require\\('./node_modules/pixelize-authenticator/node_modules/pixelize-design-library/package.json'\\).version\\)\")",
38
- "Bash(echo \"tsc exit code: $?\")",
39
- "Bash(./node_modules/.bin/tsc --noEmit --skipLibCheck)",
40
- "Bash(./node_modules/.bin/tsc --noEmit)",
41
- "Bash(echo \"tsc exit: $?\")",
42
- "Bash(echo \"local tsc exit: $?\")",
43
- "Bash(ls -la src/pages/Tasks/TaskComponent/)",
44
- "Bash(wc -l src/pages/Tasks/TaskComponent/*.tsx)"
45
- ],
46
- "additionalDirectories": [
47
- "/private/tmp",
48
- "/tmp"
49
- ]
50
- }
51
- }
@@ -1,43 +0,0 @@
1
- # Task pipeline — one-time developer setup
2
-
3
- Hooks in this repo work automatically after clone.
4
-
5
- ## Recommended (global skills + status line)
6
-
7
- ```bash
8
- git clone git@github.com:pixelize-tech/pixelize-cursor-setup.git
9
- cd pixelize-cursor-setup && ./install.sh
10
- ```
11
-
12
- Installs all cross-repo `/` skills (`crm-task`, `social-task`, …), status line, and `cli-config.json`. Restart Cursor.
13
-
14
- Repo: https://github.com/pixelize-tech/pixelize-cursor-setup
15
-
16
- ## Manual status line only
17
-
18
- 1. Copy the script to your user Cursor folder:
19
-
20
- ```bash
21
- cp .cursor/pixelize-task-statusline.sh ~/.cursor/pixelize-task-statusline.sh
22
- chmod +x ~/.cursor/pixelize-task-statusline.sh
23
- ```
24
-
25
- 2. Add to `~/.cursor/cli-config.json` (merge if the file already exists):
26
-
27
- ```json
28
- {
29
- "statusLine": {
30
- "type": "command",
31
- "command": "~/.cursor/pixelize-task-statusline.sh",
32
- "padding": 0
33
- }
34
- }
35
- ```
36
-
37
- 3. Restart Cursor or open a new Agent chat.
38
-
39
- ## Task skill (feature work)
40
-
41
- - Pick **`task`** from the **`/`** menu, then describe your goal.
42
- - Do **not** type `/task` in the message body — a hook will block it (zero tokens wasted).
43
- - See repo `CLAUDE.md` for the cross-repo skill name if applicable.
@@ -1,37 +0,0 @@
1
- ---
2
- name: be-impl
3
- description: >-
4
- Handles build, exports, and publish pipeline changes. Use in @task phase 2
5
- when plan includes index.ts, tsc build, or npm publish steps.
6
- ---
7
-
8
- You are the lib-impl (build/export) agent for **Pixelize Design Library** (Micro-Components).
9
-
10
- Note: This repo has no backend API. This agent covers build pipeline, not crm-service.
11
-
12
- ## When invoked
13
-
14
- 1. Read CLAUDE.md and .cursor/rules
15
- 2. Read the plan from .cursor/plans/current.md
16
- 3. Read `.cursor/modules/types-exports/MODULE.md`
17
-
18
- ## Workflow
19
-
20
- 1. Work only inside Micro-Components
21
- 2. Update `src/index.ts` exports
22
- 3. Verify `tsconfig.json` and build output in `dist/`
23
- 4. Run `npm run build` to validate
24
- 5. Update MODULE.md if export surface changes
25
- 6. Do not run `npm publish` unless user explicitly requests
26
-
27
- ## Output
28
-
29
- - Done / Blocked lists
30
- - Files changed
31
- - Build result (pass/fail)
32
-
33
- ## Rules
34
-
35
- - Never edit `dist/` directly — change `src/` and rebuild
36
- - Never commit without user confirmation
37
- - Never break existing exports without noting semver impact
@@ -1,39 +0,0 @@
1
- ---
2
- name: fe-impl
3
- description: >-
4
- Implements component changes from an approved plan. Use in @task phase 2
5
- for UI components, theme, and playground pages.
6
- ---
7
-
8
- You are the fe-impl (component implementation) agent for **Pixelize Design Library** (Micro-Components).
9
-
10
- ## When invoked
11
-
12
- 1. Read CLAUDE.md and .cursor/rules
13
- 2. Read the plan from .cursor/plans/current.md — do not replan
14
- 3. Read `.cursor/modules/<domain>/MODULE.md` for every domain you will touch
15
- 4. Read one existing similar component before starting
16
-
17
- ## Workflow
18
-
19
- 1. Work only inside Micro-Components
20
- 2. Implement in `src/Components/<Name>/`
21
- 3. Add/update demo in `src/Pages/` if needed for playground
22
- 4. Export from `src/index.ts` for public API
23
- 5. Use Chakra + theme tokens from `src/Theme/` — match existing patterns
24
- 6. Always handle null/undefined, loading, and error states
25
- 7. Update `.cursor/modules/<domain>/MODULE.md` after implementation
26
- 8. Keep changes minimal — no scope creep
27
-
28
- ## Output
29
-
30
- - Done: bullet list of completed tasks
31
- - Files changed: every file path with one-line description
32
- - Blocked: anything not completed with exact reason
33
- - Notes for test-create: what needs Jest coverage
34
-
35
- ## Rules
36
-
37
- - Never add app-specific CRM/API logic to library components
38
- - Never commit
39
- - No placeholder files or fake demo data
@@ -1,56 +0,0 @@
1
- ---
2
- name: task-plan
3
- description: >-
4
- Creates implementation plans from user goals. Use in @task phase 1, or when
5
- a structured plan is needed before coding.
6
- ---
7
-
8
- You are the task-plan agent for **Pixelize Design Library** (Micro-Components). Produce a concrete actionable plan — do not write code.
9
-
10
- ## When invoked
11
-
12
- 1. Read CLAUDE.md and .cursor/rules
13
- 2. Read .cursor/plans/current.md if it exists — user may be resuming
14
- 3. Read `.cursor/modules/<domain>/MODULE.md` for every component domain touched
15
- 4. Ask a question only if the goal is genuinely ambiguous
16
- 5. Output a plan implementation agents can execute without replanning
17
-
18
- ## Plan format
19
-
20
- # [Component / task title]
21
-
22
- ## Goal
23
-
24
- One paragraph
25
-
26
- ## Type
27
-
28
- feat / fix / refactor / chore
29
-
30
- ## Scope
31
-
32
- - In scope: ...
33
- - Out of scope: ...
34
- - Agents needed: fe-impl / lib-impl (build-export) / both
35
-
36
- ## Tasks
37
-
38
- ### Component (fe-impl)
39
-
40
- - [ ] Task with file paths under `src/Components/` and acceptance criteria
41
-
42
- ### Build / export (lib-impl)
43
-
44
- - [ ] index.ts export, build, version bump if publishing
45
-
46
- ### Tests
47
-
48
- - [ ] Jest test files and coverage targets
49
-
50
- ## Risks / assumptions
51
-
52
- ## Rules
53
-
54
- - Never write production code
55
- - Save approved plan to .cursor/plans/current.md
56
- - End with: Ready for implementation — list which agents run next
@@ -1,31 +0,0 @@
1
- ---
2
- name: test-create
3
- description: >-
4
- Writes Jest tests for completed component work. Use in @task phase 3a
5
- after fe-impl, before test-exec.
6
- ---
7
-
8
- You are the test-create agent for **Pixelize Design Library** (Micro-Components).
9
-
10
- ## When invoked
11
-
12
- 1. Read the plan from .cursor/plans/current.md
13
- 2. Read fe-impl output summary
14
- 3. Read existing `*.test.tsx` files to match conventions
15
-
16
- ## Coverage required
17
-
18
- - Happy path render
19
- - Minimum 2 edge cases (empty, disabled, error props)
20
- - 1 regression test per bugfix
21
-
22
- ## Output
23
-
24
- - Tests added/updated: file paths and what each covers
25
- - Run command: `npm test` from Micro-Components root
26
-
27
- ## Rules
28
-
29
- - Never change production code
30
- - Never commit
31
- - Follow existing Jest + Testing Library patterns
@@ -1,26 +0,0 @@
1
- ---
2
- name: test-exec
3
- description: >-
4
- Runs Jest tests after test-create. Use in @task phase 3b.
5
- ---
6
-
7
- You are the test-exec agent for **Pixelize Design Library** (Micro-Components).
8
-
9
- ## When invoked
10
-
11
- 1. Read test-create output
12
- 2. Run `npm test` from Micro-Components root
13
- 3. Report pass/fail with relevant failure output
14
-
15
- ## Output
16
-
17
- - Test run result: pass / fail
18
- - Failed test names and error snippets if any
19
- - Recommendation: proceed to review or fix
20
-
21
- ## Rules
22
-
23
- - Never commit
24
- - Never modify production code unless fixing test failures is in scope
25
- - Never disable, skip, or comment out tests to make them pass
26
- - Never change test assertions to match wrong behavior — fix the implementation
@@ -1 +0,0 @@
1
- REPO_HINT="/ → task (this repo) or / → design-task"
@@ -1,71 +0,0 @@
1
- #!/usr/bin/env bash
2
- # Block first message without / task skill; flag session for status-line warning. Zero tokens.
3
- set -euo pipefail
4
-
5
- STATE_FILE="${HOME}/.cursor/pixelize-skill-session-state.json"
6
- SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
7
- # shellcheck disable=SC1091
8
- source "$SCRIPT_DIR/task-hint.env"
9
-
10
- INPUT=$(cat)
11
- PROMPT=$(echo "$INPUT" | jq -r '.prompt // empty')
12
- CONV_ID=$(echo "$INPUT" | jq -r '.conversation_id // empty')
13
-
14
- if [[ -z "$CONV_ID" ]]; then
15
- echo '{"continue":true}'
16
- exit 0
17
- fi
18
-
19
- has_skill() {
20
- echo "$PROMPT" | grep -qiE '^\s*/(task|crm-task|social-task|tickets-task|crm-mobile-task|design-task|hrms-task)\b'
21
- }
22
-
23
- ensure_state_file() {
24
- mkdir -p "$(dirname "$STATE_FILE")"
25
- [[ -f "$STATE_FILE" ]] || echo '{}' >"$STATE_FILE"
26
- }
27
-
28
- update_state() {
29
- local first_nudge="$1"
30
- local chatting="$2"
31
- ensure_state_file
32
- local tmp
33
- tmp=$(mktemp)
34
- jq --arg id "$CONV_ID" \
35
- --argjson first "$first_nudge" \
36
- --argjson chatting "$chatting" \
37
- '.[$id] = {first_nudge_done: $first, chatting_without_skill: $chatting}' \
38
- "$STATE_FILE" >"$tmp" && mv "$tmp" "$STATE_FILE"
39
- }
40
-
41
- if has_skill; then
42
- if [[ -f "$STATE_FILE" ]] && jq -e --arg id "$CONV_ID" '.[$id]' "$STATE_FILE" >/dev/null 2>&1; then
43
- update_state true false
44
- fi
45
- echo '{"continue":true}'
46
- exit 0
47
- fi
48
-
49
- ensure_state_file
50
- FIRST_DONE=$(jq -r --arg id "$CONV_ID" '.[$id].first_nudge_done // false' "$STATE_FILE")
51
-
52
- if [[ "$FIRST_DONE" != "true" ]]; then
53
- update_state true false
54
- MSG="━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
55
- NO TASK SKILL LOADED
56
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
57
-
58
- You are chatting WITHOUT a pipeline skill.
59
-
60
- For feature / bugfix work, use the / menu first:
61
- ${REPO_HINT}
62
-
63
- Then type your goal in the SAME input (do not type the skill name).
64
-
65
- Send this message AGAIN to continue without a skill."
66
- jq -n --arg msg "$MSG" '{continue: false, user_message: $msg}'
67
- exit 0
68
- fi
69
-
70
- update_state true true
71
- echo '{"continue":true}'
@@ -1,31 +0,0 @@
1
- #!/usr/bin/env bash
2
- # Blocks plain-text task skill names (not / menu picks). Zero API tokens.
3
- set -euo pipefail
4
-
5
- SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
6
- # shellcheck disable=SC1091
7
- source "$SCRIPT_DIR/task-hint.env"
8
-
9
- INPUT=$(cat)
10
- PROMPT=$(echo "$INPUT" | jq -r '.prompt // empty')
11
-
12
- # Menu picker embeds "/tickets-task ..." in prompt; attachments stay empty.
13
- # Only block plain-text mistakes: skill name at start without a leading slash.
14
- if echo "$PROMPT" | grep -qiE '^\s*@?(task|crm-task|social-task|tickets-task|crm-mobile-task|design-task|hrms-task)\b'; then
15
- MSG="⚠️ TASK PIPELINE NOT ACTIVE
16
-
17
- You typed a task command as plain text. The skill was NOT loaded.
18
-
19
- To run the pipeline:
20
- 1. Click the chat input
21
- 2. Type / and pick the skill from the menu
22
- 3. Send your goal
23
-
24
- For this repo use: ${REPO_HINT}
25
-
26
- Do not type task skill names in the message body — use the / menu picker."
27
- jq -n --arg msg "$MSG" '{continue: false, user_message: $msg}'
28
- exit 0
29
- fi
30
-
31
- echo '{"continue":true}'
@@ -1,13 +0,0 @@
1
- {
2
- "version": 1,
3
- "hooks": {
4
- "beforeSubmitPrompt": [
5
- {
6
- "command": ".cursor/hooks/task-slash-guard.sh"
7
- },
8
- {
9
- "command": ".cursor/hooks/task-skill-nudge.sh"
10
- }
11
- ]
12
- }
13
- }
@@ -1,41 +0,0 @@
1
- # Account Management
2
-
3
- ## Purpose
4
-
5
- Account/admin-facing components: UserDetails, RolesPermission, CustomModulesTable, SignInActivityTable, OrganizationDetails, OrgSwitcher, UpgradeButton.
6
-
7
- ## Key paths
8
-
9
- - `src/Components/UserDetails/`, `RolesPermission/`, `CustomModulesTable/`, `SignInActivityTable/`, `OrganizationDetails/`, `OrgSwitcher/`, `UpgradeButton/`
10
- - Tests: `UserDetails.test.tsx`, `RolesPermission.test.tsx`, `CustomModulesTable.test.tsx`, `SignInActivityTable.test.tsx`, `OrganizationDetails.test.tsx`
11
-
12
- ## Key rules
13
-
14
- - UserDetails, RolesPermission, CustomModulesTable, OrganizationDetails bundle their own action modals (Add/Edit/Delete/ChangeRole) in the same folder
15
- - Each exports typed Props/Labels from `<Name>Props.tsx` via `src/index.ts` — keep props API-generic, no CRM/API logic in the library
16
- - Labels are injectable for i18n; consumers pass data and handlers (props in, events out)
17
-
18
- ## Dark mode
19
-
20
- - Every component here reads colors via `useCustomTheme()`, so all follow the active light/dark palette
21
- - Tables/detail views alias tokens once at the top — `border`/`surface`/`muted`/`heading`/`headBg` from `boxborder[200]`/`background[50]`/`gray[500]`/`gray[800]`/`gray[50]`; reuse those names when adding UI
22
- - `surface` reads `background[50]`, never `colors.white` — white is a foreground token and stays white in dark
23
- - Remaining hex literals are `??` fallbacks, not live values: a hand-built palette may omit rungs (tests `jest.mock` a partial one), so keep the fallback when adding a token read
24
- - Fixed by design, not palette-following: `avatarColor()`'s `AVATAR_COLORS` (OrgSwitcher — deterministic identity fill seeded by org name, white label on top) and `UpgradeButton`'s `iconColor` default (icon on a gradient fill). Colored fills/foregrounds, not canvas surfaces
25
- - **OrgSwitcher popover bg bug (same class as the ButtonGroupIcon menu bug in `buttons`):** `PopoverContent` had no `bg=`, so it fell through to Chakra's baseStyle `var(--popper-bg)` — hardcoded to `colors.white`, gated behind Chakra's own `_dark` which this app's palette-swap dark mode never triggers — rendering a white popover in dark mode regardless of theme. Fixed with an explicit `bg={theme.colors.backgroundColor.light}`; now also covered app-wide by the theme-level `Popover` style override (`Theme/chakra/Popover.styles.ts`, overlays module / theme module Wave H)
26
- - OrgSwitcher trigger border: `borderColor` switched from `gray[200]` to `boxborder?.[800] ?? gray[200]` — it styles a real `<button>`, so its border is a control boundary needing WCAG 1.4.11 (>=3.0 non-text contrast) against any surface up to `muted`, which `gray[200]` failed in dark. Org name/role text switched from `gray[800]`/`gray[500]` to `text[900]`/`text[500]` — mode-adaptive text tokens, the correct choice over mode-invariant gray literals for body text
27
- - UserDetails avatar initials color: replaced the fixed `primary[600]` rung with `accentTextOnCanvas(colors.primary, avatarBg)` (guarded `colors?.primary ? accentTextOnCanvas(...) : "#4F46E5"` fallback) — picks contrast dynamically against the avatar bg instead of assuming one fixed rung clears AA 4.5 for every brand's dark palette
28
- - **Avatar badge/container ring bug (theme-level fix):** Chakra's own `Avatar` baseStyle
29
- hardcodes the badge/container cutout border to `colors.white` (a ring meant to match the
30
- surface the avatar sits on), behind `_dark`, same never-triggered gate as Modal/Menu — every
31
- bare `<Avatar>`/`<AvatarBadge>` (used here in `UserDetails`, `OrgSwitcher`,
32
- `OrganizationDetails`, plus `NavigationBar`/`Notification`/`SelectSearch` elsewhere) rendered a
33
- white ring on the dark canvas. Fixed centrally in `Theme/chakra/Avatar.styles.ts` (registered
34
- in `componentStyles.ts`), not per-component.
35
- - **Modal surface bug (QA-caught, blocking) — 6 action modals:** `AddUserModal`,
36
- `DeactivateConfirmModal`, `ChangeRoleModal` (UserDetails), `DeleteRoleModal` (RolesPermission),
37
- `CreateOrgModal`, `DeleteOrgModal` (OrganizationDetails) all rendered a raw Chakra `ModalContent`
38
- with no explicit `bg=`, hitting the same Chakra-hardcoded-`colors.white`-behind-`_dark` bug as
39
- `Modal`/`AlertDialog` (overlays module) and `Drawer` (layout-navigation module). Fixed with
40
- `bg={colors?.background?.[50]}` (`colors` was already destructured from `useCustomTheme()` in
41
- every one of these files, so no new hook import was needed).
@@ -1,47 +0,0 @@
1
- # Buttons
2
-
3
- ## Purpose
4
-
5
- Button, ButtonGroupIcon, Buttons variants.
6
-
7
- ## Key paths
8
-
9
- - `src/Components/Button/`, `ButtonGroupIcon/`, `Buttons/`
10
-
11
- ## Key rules
12
-
13
- - Match Chakra button theming via design tokens
14
- - `Button.styles.ts` variants are `({ theme })` functions reading `theme.colors` — no hex
15
- literals, so they follow whichever palette the theme carries (light or dark)
16
- - Filled labels (`solid` bg, and `outline`/`ghost` hover/active fills) no longer hardcode
17
- `theme.colors.white` — they pick ink via `onFilled(fill, white, black)`
18
- (`Theme/tokens/builders/accentText.ts`), which provably clears AA 4.5 by preferring white and
19
- falling back to black only when the fill itself can't carry white. Never use white for a button
20
- *surface* either way
21
-
22
- ## Dark mode
23
-
24
- - `outline` / `ghost` / `link` text sits on the canvas, so it goes through
25
- `accentTextOnCanvas(scale, colors.backgroundColor.main)` instead of `[500]` directly.
26
- `[500]` is pinned dark enough to carry a white label on `solid`, leaving it ~4.2 as text on
27
- the dark canvas; the helper steps to a lighter rung there to clear AA 4.5. Light canvases
28
- return `[500]` unchanged, so existing apps are pixel-identical.
29
- - **Ghost hover gotcha:** brand scales are *lifted* for dark, not reversed, so `primary[50]`
30
- stays near-white — a white chip on a near-black canvas. On dark canvases the hover/active
31
- tint uses the translucent `scale.opacity[16]` / `[24]` so it composites over the canvas.
32
- Only brand scales carry `opacity`; utility scales (red, green…) fall back to `[50]`, which
33
- is already dark because those scales *are* reversed for dark.
34
- - **Solid/outline label-ink fix:** `Button.styles.ts` derives each state's label from *that
35
- state's* fill (`labelFor`, per hover/active/loading) instead of assuming white always works —
36
- some brands' dark `primary[500]` fails AA against white (radiant/emerald/rosewood measure
37
- 4.37/3.38/3.46) and now fall back to black. `Button.styles.test.ts` verifies this with real
38
- `contrastRatio` checks per brand rather than asserting a fixed white label.
39
- - **ButtonGroupIcon menu bug (new, generalizable):** Chakra's `MenuItem` baseStyle renders
40
- `background: var(--menu-bg)` at rest, and `MenuList`'s baseStyle hardcodes that var to `#fff`
41
- behind `_dark` — which this app's theme-swap dark mode (palette swapped, Chakra `colorMode`
42
- stays `"light"`) never triggers. Setting `bg=` on `MenuList` alone recolors the list but not the
43
- inherited var, so items rendered white at rest until hover/focus masked it. Fixed here via
44
- `sx={{ "--menu-bg": theme.colors.backgroundColor.light }}` alongside `bg=`.
45
- - **Known gap:** any other Chakra `Menu`/`Popover` usage is at risk of the same bug. A known
46
- remaining instance — `Trail`/`EditableCell.tsx` (data-display module) — is **not fixed** in
47
- this pass.
@@ -1,55 +0,0 @@
1
- # Cards
2
-
3
- ## Purpose
4
-
5
- Card, PaymentCard, ProfileCard, ProductCard, ProductDetails.
6
-
7
- ## Key paths
8
-
9
- - `src/Components/Card/`, `Card/PaymentCard/`, `ProfileCard/`, `ProductCard/`, `ProductDetails/`
10
-
11
- ## Key rules
12
-
13
- - ProfileCard has Header/Body/Footer subcomponents
14
-
15
- ## Dark mode
16
-
17
- PaymentCard, ProductCard, ProductPrice, ProductDtlPrice and ProductImageSlider read their colors
18
- from `useCustomTheme()` instead of hex literals, so they follow the active light/dark palette.
19
-
20
- - Surfaces use `colors.background[50]`, never `colors.white` — `white` is a foreground token and
21
- stays white in dark. Covers the card body, the ProductPrice dropdown panel and its radio dot,
22
- the unselected pack chip in ProductDtlPrice, and the play-button circle in ProductImageSlider.
23
- - PaymentCard's badge/button label no longer hardcodes `colors.white` — it's picked per
24
- `buttonColor` via `onFilled()` (`Theme/tokens/builders/accentText`), which falls back to
25
- `colors.black` when white would fail AA on that fill. Guarantees WCAG AA across the
26
- active/upgrade/popular/default button colors instead of assuming white always works.
27
- - The product components keep Chakra literals for offer/pack chrome (`red.50`, `orange.50`,
28
- `green.100`). Those are dark-aware already — the theme carries the palette as `colors`, and
29
- `buildDarkPalette` reverses utility hue ramps so index roles survive (`red.50` = pale badge
30
- background in light, deep in dark). They track the hue, not the brand accent.
31
- - ProductPrice's struck-through original price bumped `gray.400` → `gray.500` (still a raw
32
- Chakra literal, not a theme token) for AA contrast against the card surface.
33
- - ProductTags' label swapped `colors.black` → `colors.text[900]` (mode-adaptive ink token) so it
34
- stays legible in dark mode.
35
- - **Known gap:** ProductReview's rating chip (`bg="teal.50"` / `color="teal.900"`) and its star
36
- fill (`RATING_STAR_FILL`, a pinned `#ECC94B` hex — see in-file comment) are still raw
37
- Chakra/hex literals, not `useCustomTheme()` tokens. Pre-existing pattern, not worsened by this
38
- pass, but won't track brand hue or dark mode — needs a mode-stable "rating gold" token added to
39
- `pixelize-design-library` before this can move off literals.
40
-
41
- ## WCAG contrast pass (Wave D, QA-driven)
42
-
43
- - **ProductPrice.tsx** — dropdown-arrow `red.400` (on `red.50` canvas) and discounted/final-price
44
- `red.500` text (on `red.50`/`background[50]` depending on selection state) failed AA (2.6-3.7:1).
45
- Fixed via `accentTextOnCanvas(theme.colors.red, <the actual local canvas>)` at each of the 3
46
- call sites, matching the canvas each already renders on (including the existing `isSelected`
47
- bg ternary). The dot-fill `bg="red.500"` (a filled swatch, not text) was left unchanged — it
48
- clears the 3:1 non-text bar against `background[50]`.
49
- - **ProductDtlPrice.tsx** — price `Text` hardcoded `theme.colors.red[500]` (≈3.46:1 vs the page
50
- canvas, fails) and the pack-swatch `color="orange.600"` (≈2.47-2.67:1 vs either bg state,
51
- fails) both routed through `accentTextOnCanvas`. `borderColor`/`bg` on the swatch button are
52
- decorative and were left alone.
53
- - **ProductImageSlider.tsx** — checked, not changed: all 6 `theme.colors.red[500]` Play-icon
54
- usages sit on an opaque `background[50]` circular scrim (not the raw image), so the applicable
55
- bar is 3:1 (graphical object, not text) — clears at ≈3.68:1 light / ≈6.48:1 dark.