pixelize-design-library 2.3.1-beta.9 → 2.3.2

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 (193) hide show
  1. package/.cursor/TASK-SETUP.md +43 -0
  2. package/.cursor/agents/be-impl.md +37 -0
  3. package/.cursor/agents/fe-impl.md +39 -0
  4. package/.cursor/agents/task-plan.md +56 -0
  5. package/.cursor/agents/test-create.md +31 -0
  6. package/.cursor/agents/test-exec.md +26 -0
  7. package/.cursor/hooks/task-hint.env +1 -0
  8. package/.cursor/hooks/task-skill-nudge.sh +71 -0
  9. package/.cursor/hooks/task-slash-guard.sh +31 -0
  10. package/.cursor/hooks.json +13 -0
  11. package/.cursor/modules/account-management/MODULE.md +16 -0
  12. package/.cursor/modules/buttons/MODULE.md +13 -0
  13. package/.cursor/modules/cards/MODULE.md +13 -0
  14. package/.cursor/modules/charts/MODULE.md +13 -0
  15. package/.cursor/modules/common/MODULE.md +13 -0
  16. package/.cursor/modules/contact-auth/MODULE.md +13 -0
  17. package/.cursor/modules/data-display/MODULE.md +18 -0
  18. package/.cursor/modules/feedback/MODULE.md +14 -0
  19. package/.cursor/modules/form/MODULE.md +13 -0
  20. package/.cursor/modules/inputs-basic/MODULE.md +13 -0
  21. package/.cursor/modules/inputs-date-file/MODULE.md +19 -0
  22. package/.cursor/modules/inputs-select/MODULE.md +14 -0
  23. package/.cursor/modules/inputs-toggle/MODULE.md +13 -0
  24. package/.cursor/modules/kanban/MODULE.md +14 -0
  25. package/.cursor/modules/layout-navigation/MODULE.md +14 -0
  26. package/.cursor/modules/overlays/MODULE.md +13 -0
  27. package/.cursor/modules/playground/MODULE.md +15 -0
  28. package/.cursor/modules/table/MODULE.md +15 -0
  29. package/.cursor/modules/theme/MODULE.md +15 -0
  30. package/.cursor/modules/types-exports/MODULE.md +17 -0
  31. package/.cursor/modules/utility-ui/MODULE.md +15 -0
  32. package/.cursor/modules/utils-hooks/MODULE.md +13 -0
  33. package/.cursor/pixelize-task-statusline.sh +64 -0
  34. package/.cursor/plans/blocked/.gitkeep +0 -0
  35. package/.cursor/plans/current.md +35 -0
  36. package/.cursor/plans/done/.gitkeep +0 -0
  37. package/.cursor/rules +31 -0
  38. package/.cursor/skills/task/SKILL.md +167 -0
  39. package/CLAUDE.md +122 -0
  40. package/dist/Components/Card/PaymentCard/PaymentCard.d.ts +1 -1
  41. package/dist/Components/Card/PaymentCard/PaymentCard.js +3 -3
  42. package/dist/Components/Card/PaymentCard/PaymentCardProps.d.ts +1 -0
  43. package/dist/Components/CopyButton/CopyButton.d.ts +22 -0
  44. package/dist/Components/CopyButton/CopyButton.js +126 -0
  45. package/dist/Components/CustomModulesTable/CustomModulesTable.d.ts +4 -0
  46. package/dist/Components/CustomModulesTable/CustomModulesTable.js +182 -0
  47. package/dist/Components/CustomModulesTable/CustomModulesTable.test.d.ts +1 -0
  48. package/dist/Components/CustomModulesTable/CustomModulesTable.test.js +84 -0
  49. package/dist/Components/CustomModulesTable/CustomModulesTableProps.d.ts +54 -0
  50. package/dist/Components/CustomModulesTable/CustomModulesTableProps.js +2 -0
  51. package/dist/Components/CustomModulesTable/DeleteModuleModal.d.ts +4 -0
  52. package/dist/Components/CustomModulesTable/DeleteModuleModal.js +33 -0
  53. package/dist/Components/CustomModulesTable/EditModuleModal.d.ts +4 -0
  54. package/dist/Components/CustomModulesTable/EditModuleModal.js +63 -0
  55. package/dist/Components/Dropdown/DropDown.js +110 -28
  56. package/dist/Components/Dropdown/Dropdown.test.d.ts +1 -0
  57. package/dist/Components/Dropdown/Dropdown.test.js +102 -0
  58. package/dist/Components/Dropdown/DropdownProps.d.ts +4 -1
  59. package/dist/Components/EmptyState/EmptyState.d.ts +4 -0
  60. package/dist/Components/EmptyState/EmptyState.js +65 -0
  61. package/dist/Components/EmptyState/EmptyStateProps.d.ts +28 -0
  62. package/dist/Components/EmptyState/EmptyStateProps.js +2 -0
  63. package/dist/Components/FieldSelectModal/FieldSelectModal.d.ts +26 -0
  64. package/dist/Components/FieldSelectModal/FieldSelectModal.js +107 -0
  65. package/dist/Components/FilePreview/FilePreview.d.ts +6 -0
  66. package/dist/Components/FilePreview/FilePreview.js +190 -0
  67. package/dist/Components/FilePreview/FilePreviewProps.d.ts +26 -0
  68. package/dist/Components/FilePreview/FilePreviewProps.js +2 -0
  69. package/dist/Components/LazyWrapper/LazyWrapper.d.ts +10 -0
  70. package/dist/Components/LazyWrapper/LazyWrapper.js +50 -0
  71. package/dist/Components/MoreItems/MoreItems.d.ts +4 -0
  72. package/dist/Components/MoreItems/MoreItems.js +35 -0
  73. package/dist/Components/MoreItems/MoreItemsProps.d.ts +29 -0
  74. package/dist/Components/MoreItems/MoreItemsProps.js +2 -0
  75. package/dist/Components/OrgSwitcher/OrgSwitcher.d.ts +4 -0
  76. package/dist/Components/OrgSwitcher/OrgSwitcher.js +121 -0
  77. package/dist/Components/OrgSwitcher/OrgSwitcherProps.d.ts +41 -0
  78. package/dist/Components/OrgSwitcher/OrgSwitcherProps.js +25 -0
  79. package/dist/Components/OrganizationDetails/CreateOrgModal.d.ts +4 -0
  80. package/dist/Components/OrganizationDetails/CreateOrgModal.js +122 -0
  81. package/dist/Components/OrganizationDetails/DeleteOrgModal.d.ts +4 -0
  82. package/dist/Components/OrganizationDetails/DeleteOrgModal.js +29 -0
  83. package/dist/Components/OrganizationDetails/OrganizationDetails.d.ts +4 -0
  84. package/dist/Components/OrganizationDetails/OrganizationDetails.js +264 -0
  85. package/dist/Components/OrganizationDetails/OrganizationDetails.test.d.ts +1 -0
  86. package/dist/Components/OrganizationDetails/OrganizationDetails.test.js +122 -0
  87. package/dist/Components/OrganizationDetails/OrganizationDetailsProps.d.ts +88 -0
  88. package/dist/Components/OrganizationDetails/OrganizationDetailsProps.js +2 -0
  89. package/dist/Components/PdfViewer/PdfViewer.d.ts +15 -0
  90. package/dist/Components/PdfViewer/PdfViewer.js +29 -0
  91. package/dist/Components/RolesPermission/DeleteRoleModal.d.ts +4 -0
  92. package/dist/Components/RolesPermission/DeleteRoleModal.js +29 -0
  93. package/dist/Components/RolesPermission/RolesPermission.d.ts +4 -0
  94. package/dist/Components/RolesPermission/RolesPermission.js +243 -0
  95. package/dist/Components/RolesPermission/RolesPermission.test.d.ts +1 -0
  96. package/dist/Components/RolesPermission/RolesPermission.test.js +150 -0
  97. package/dist/Components/RolesPermission/RolesPermissionProps.d.ts +117 -0
  98. package/dist/Components/RolesPermission/RolesPermissionProps.js +2 -0
  99. package/dist/Components/ScrollToTop/ScrollToTop.d.ts +19 -0
  100. package/dist/Components/ScrollToTop/ScrollToTop.js +104 -0
  101. package/dist/Components/SideBar/components/OtherApps.test.js +3 -2
  102. package/dist/Components/SignInActivityTable/SignInActivityTable.d.ts +4 -0
  103. package/dist/Components/SignInActivityTable/SignInActivityTable.js +95 -0
  104. package/dist/Components/SignInActivityTable/SignInActivityTable.test.d.ts +1 -0
  105. package/dist/Components/SignInActivityTable/SignInActivityTable.test.js +63 -0
  106. package/dist/Components/SignInActivityTable/SignInActivityTableProps.d.ts +21 -0
  107. package/dist/Components/SignInActivityTable/SignInActivityTableProps.js +2 -0
  108. package/dist/Components/StageProgress/StageItem.d.ts +4 -0
  109. package/dist/Components/StageProgress/StageItem.js +137 -0
  110. package/dist/Components/StageProgress/StageProgress.d.ts +4 -0
  111. package/dist/Components/StageProgress/StageProgress.js +59 -0
  112. package/dist/Components/StageProgress/StageProgressProps.d.ts +85 -0
  113. package/dist/Components/StageProgress/StageProgressProps.js +27 -0
  114. package/dist/Components/StageProgress/StepperStage.d.ts +4 -0
  115. package/dist/Components/StageProgress/StepperStage.js +78 -0
  116. package/dist/Components/Table/Table.js +66 -45
  117. package/dist/Components/Table/TableProps.d.ts +4 -2
  118. package/dist/Components/Table/components/Pagination.js +1 -1
  119. package/dist/Components/Table/components/TableBody.js +15 -12
  120. package/dist/Components/Table/components/TableBody.virtualize.test.js +13 -3
  121. package/dist/Components/Table/components/TableHeader.d.ts +1 -1
  122. package/dist/Components/Table/components/TableHeader.js +9 -9
  123. package/dist/Components/Table/hooks/useTable.d.ts +1 -0
  124. package/dist/Components/Table/hooks/useTable.js +21 -8
  125. package/dist/Components/Table/settings/ManageColumns.test.js +1 -0
  126. package/dist/Components/Tag/Tag.d.ts +3 -11
  127. package/dist/Components/Tag/Tag.js +10 -2
  128. package/dist/Components/Tag/Tag.styles.d.ts +2 -2
  129. package/dist/Components/Tag/Tag.styles.js +58 -33
  130. package/dist/Components/Tag/Tag.test.d.ts +1 -0
  131. package/dist/Components/Tag/Tag.test.js +68 -0
  132. package/dist/Components/Tag/TagProps.d.ts +13 -0
  133. package/dist/Components/Tag/TagProps.js +2 -0
  134. package/dist/Components/UpgradeButton/UpgradeButton.d.ts +4 -0
  135. package/dist/Components/UpgradeButton/UpgradeButton.js +73 -0
  136. package/dist/Components/UpgradeButton/UpgradeButtonProps.d.ts +43 -0
  137. package/dist/Components/UpgradeButton/UpgradeButtonProps.js +2 -0
  138. package/dist/Components/UserDetails/AddUserModal.d.ts +4 -0
  139. package/dist/Components/UserDetails/AddUserModal.js +218 -0
  140. package/dist/Components/UserDetails/ChangeRoleModal.d.ts +4 -0
  141. package/dist/Components/UserDetails/ChangeRoleModal.js +150 -0
  142. package/dist/Components/UserDetails/DeactivateConfirmModal.d.ts +4 -0
  143. package/dist/Components/UserDetails/DeactivateConfirmModal.js +34 -0
  144. package/dist/Components/UserDetails/UserDetails.d.ts +4 -0
  145. package/dist/Components/UserDetails/UserDetails.js +263 -0
  146. package/dist/Components/UserDetails/UserDetails.test.d.ts +1 -0
  147. package/dist/Components/UserDetails/UserDetails.test.js +129 -0
  148. package/dist/Components/UserDetails/UserDetailsProps.d.ts +151 -0
  149. package/dist/Components/UserDetails/UserDetailsProps.js +2 -0
  150. package/dist/Theme/componentStyles.d.ts +1 -1
  151. package/dist/Theme/index.d.ts +4 -4
  152. package/dist/Theme/index.js +4 -4
  153. package/dist/index.d.ts +23 -1
  154. package/dist/index.js +37 -2
  155. package/package.json +2 -2
  156. package/.claude/settings.local.json +0 -44
  157. package/coverage/clover.xml +0 -638
  158. package/coverage/coverage-final.json +0 -20
  159. package/coverage/lcov-report/Table/CompactSelect.tsx.html +0 -379
  160. package/coverage/lcov-report/Table/Components/ActiveFilters.tsx.html +0 -514
  161. package/coverage/lcov-report/Table/Components/HeaderActions.tsx.html +0 -373
  162. package/coverage/lcov-report/Table/Components/Pagination.tsx.html +0 -574
  163. package/coverage/lcov-report/Table/Components/TableActions.tsx.html +0 -574
  164. package/coverage/lcov-report/Table/Components/TableBody.tsx.html +0 -1027
  165. package/coverage/lcov-report/Table/Components/TableFilters.tsx.html +0 -397
  166. package/coverage/lcov-report/Table/Components/TableHeader.tsx.html +0 -1060
  167. package/coverage/lcov-report/Table/Components/TableLoading.tsx.html +0 -361
  168. package/coverage/lcov-report/Table/Components/TableSearch.tsx.html +0 -337
  169. package/coverage/lcov-report/Table/Components/index.html +0 -266
  170. package/coverage/lcov-report/Table/Components/useDebounce.ts.html +0 -178
  171. package/coverage/lcov-report/Table/Components/useTable.ts.html +0 -778
  172. package/coverage/lcov-report/Table/LeftFilterPane.tsx.html +0 -1810
  173. package/coverage/lcov-report/Table/SelectOperationControls.tsx.html +0 -178
  174. package/coverage/lcov-report/Table/Table.tsx.html +0 -1567
  175. package/coverage/lcov-report/Table/TableProps.tsx.html +0 -658
  176. package/coverage/lcov-report/Table/TableSettings/ManageColumns.tsx.html +0 -619
  177. package/coverage/lcov-report/Table/TableSettings/TableFilters.tsx.html +0 -229
  178. package/coverage/lcov-report/Table/TableSettings/TableSettings.tsx.html +0 -532
  179. package/coverage/lcov-report/Table/TableSettings/index.html +0 -146
  180. package/coverage/lcov-report/Table/TableToDo.tsx.html +0 -973
  181. package/coverage/lcov-report/Table/TextOperationControls.tsx.html +0 -271
  182. package/coverage/lcov-report/Table/filterTypes.ts.html +0 -97
  183. package/coverage/lcov-report/Table/index.html +0 -176
  184. package/coverage/lcov-report/base.css +0 -224
  185. package/coverage/lcov-report/block-navigation.js +0 -87
  186. package/coverage/lcov-report/favicon.png +0 -0
  187. package/coverage/lcov-report/index.html +0 -146
  188. package/coverage/lcov-report/prettify.css +0 -1
  189. package/coverage/lcov-report/prettify.js +0 -2
  190. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  191. package/coverage/lcov-report/sorter.js +0 -210
  192. package/coverage/lcov.info +0 -1836
  193. package/dist/Assets/defaultLogo.tsx +0 -31
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ var react_1 = __importStar(require("react"));
37
+ var react_2 = require("@chakra-ui/react");
38
+ var useCustomTheme_1 = require("../../Theme/useCustomTheme");
39
+ var DefaultFallback = function (_a) {
40
+ var _b, _c;
41
+ var minHeight = _a.minHeight;
42
+ var theme = (0, useCustomTheme_1.useCustomTheme)();
43
+ return (react_1.default.createElement(react_2.Box, { display: "flex", alignItems: "center", justifyContent: "center", minHeight: minHeight, width: "100%", p: "2rem" },
44
+ react_1.default.createElement(react_2.Spinner, { thickness: "3px", speed: "0.65s", size: "lg", emptyColor: (_c = (_b = theme.colors.gray) === null || _b === void 0 ? void 0 : _b[100]) !== null && _c !== void 0 ? _c : "#EDF2F7", color: theme.colors.primary[500] })));
45
+ };
46
+ var LazyWrapper = function (_a) {
47
+ var children = _a.children, fallback = _a.fallback, _b = _a.minHeight, minHeight = _b === void 0 ? "400px" : _b;
48
+ return (react_1.default.createElement(react_1.Suspense, { fallback: fallback !== null && fallback !== void 0 ? fallback : react_1.default.createElement(DefaultFallback, { minHeight: minHeight }) }, children));
49
+ };
50
+ exports.default = LazyWrapper;
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import { MoreItemsProps } from "./MoreItemsProps";
3
+ declare const MoreItems: React.FC<MoreItemsProps>;
4
+ export default MoreItems;
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var react_1 = __importDefault(require("react"));
7
+ var react_2 = require("@chakra-ui/react");
8
+ var useCustomTheme_1 = require("../../Theme/useCustomTheme");
9
+ var MoreItems = function (_a) {
10
+ var _b, _c;
11
+ var items = _a.items, moreCount = _a.moreCount, triggerText = _a.triggerText, colorResolver = _a.colorResolver, _d = _a.hideDots, hideDots = _d === void 0 ? false : _d, _e = _a.columns, columns = _e === void 0 ? 2 : _e, _f = _a.minWidth, minWidth = _f === void 0 ? "260px" : _f, _g = _a.triggerMaxWidth, triggerMaxWidth = _g === void 0 ? "250px" : _g, _h = _a.trigger, trigger = _h === void 0 ? "hover" : _h, _j = _a.placement, placement = _j === void 0 ? "bottom-start" : _j;
12
+ var theme = (0, useCustomTheme_1.useCustomTheme)();
13
+ var count = moreCount !== null && moreCount !== void 0 ? moreCount : items.length;
14
+ if (count <= 0)
15
+ return triggerText ? react_1.default.createElement(react_1.default.Fragment, null, triggerText) : null;
16
+ return (react_1.default.createElement(react_2.Popover, { trigger: trigger, placement: placement, isLazy: true },
17
+ react_1.default.createElement(react_2.PopoverTrigger, null,
18
+ react_1.default.createElement(react_2.Box, { display: "inline-flex", alignItems: "center", maxW: triggerMaxWidth, cursor: "pointer" },
19
+ triggerText !== undefined && (react_1.default.createElement(react_2.Box, { as: "span", overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap" }, triggerText)),
20
+ react_1.default.createElement(react_2.Box, { as: "span", ml: "6px", px: "8px", py: "1px", fontSize: "12px", fontWeight: 600, lineHeight: "1.4", borderRadius: "full", color: (_b = theme.colors.primary[600]) !== null && _b !== void 0 ? _b : theme.colors.primary[500], bg: theme.colors.primary[50], transition: "all 0.15s ease", _hover: { bg: (_c = theme.colors.primary[100]) !== null && _c !== void 0 ? _c : theme.colors.primary[50] } },
21
+ "+",
22
+ count,
23
+ " more"))),
24
+ react_1.default.createElement(react_2.PopoverContent, { width: "auto", minWidth: minWidth, maxH: "280px", overflowY: "auto", borderRadius: "12px", boxShadow: "0 8px 24px rgba(0,0,0,0.12)", _focus: { outline: "none", boxShadow: "0 8px 24px rgba(0,0,0,0.12)" } },
25
+ react_1.default.createElement(react_2.PopoverArrow, null),
26
+ react_1.default.createElement(react_2.PopoverBody, { p: 3 },
27
+ react_1.default.createElement(react_2.SimpleGrid, { columns: columns, spacingX: 4, spacingY: 2 }, items === null || items === void 0 ? void 0 : items.map(function (item, index) {
28
+ var _a, _b, _c, _d, _e, _f, _g;
29
+ var color = (_b = (_a = item.color) !== null && _a !== void 0 ? _a : colorResolver === null || colorResolver === void 0 ? void 0 : colorResolver(item)) !== null && _b !== void 0 ? _b : ((_d = (_c = theme.colors.gray) === null || _c === void 0 ? void 0 : _c[400]) !== null && _d !== void 0 ? _d : "#A0AEC0");
30
+ return (react_1.default.createElement(react_2.Box, { key: (_e = item.id) !== null && _e !== void 0 ? _e : index, display: "flex", alignItems: "center", gap: "8px", minW: 0 },
31
+ !hideDots && (react_1.default.createElement(react_2.Box, { flexShrink: 0, width: "8px", height: "8px", borderRadius: "full", bg: color })),
32
+ react_1.default.createElement(react_2.Text, { fontSize: "13px", color: (_g = (_f = theme.colors.gray) === null || _f === void 0 ? void 0 : _f[700]) !== null && _g !== void 0 ? _g : "#2D3748", overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap" }, item.label)));
33
+ }))))));
34
+ };
35
+ exports.default = MoreItems;
@@ -0,0 +1,29 @@
1
+ import { ReactNode } from "react";
2
+ export interface MoreItem {
3
+ id: string | number;
4
+ label: string;
5
+ /** Optional leading dot color. Falls back to colorResolver or a neutral gray. */
6
+ color?: string;
7
+ }
8
+ export interface MoreItemsProps {
9
+ /** Items shown inside the popover. */
10
+ items: MoreItem[];
11
+ /** Number rendered in the "+N more" trigger. Defaults to items.length. */
12
+ moreCount?: number;
13
+ /** Text shown before the "+N more" pill (e.g. the first visible value). */
14
+ triggerText?: ReactNode;
15
+ /** Derive a dot color per item; takes precedence is given to item.color. */
16
+ colorResolver?: (item: MoreItem) => string | undefined;
17
+ /** Hide the colored leading dot entirely. */
18
+ hideDots?: boolean;
19
+ /** Columns inside the popover grid. */
20
+ columns?: number;
21
+ /** Min width of the popover panel. */
22
+ minWidth?: string;
23
+ /** Max width of the trigger before truncation. */
24
+ triggerMaxWidth?: string;
25
+ /** Open on "hover" (default) or "click". */
26
+ trigger?: "hover" | "click";
27
+ /** Popover placement. */
28
+ placement?: "bottom-start" | "bottom-end" | "bottom" | "top" | "right" | "left";
29
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import { OrgSwitcherProps } from "./OrgSwitcherProps";
3
+ declare const OrgSwitcher: React.FC<OrgSwitcherProps>;
4
+ export default OrgSwitcher;
@@ -0,0 +1,121 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ var desc = Object.getOwnPropertyDescriptor(m, k);
16
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
17
+ desc = { enumerable: true, get: function() { return m[k]; } };
18
+ }
19
+ Object.defineProperty(o, k2, desc);
20
+ }) : (function(o, m, k, k2) {
21
+ if (k2 === undefined) k2 = k;
22
+ o[k2] = m[k];
23
+ }));
24
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
25
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
26
+ }) : function(o, v) {
27
+ o["default"] = v;
28
+ });
29
+ var __importStar = (this && this.__importStar) || (function () {
30
+ var ownKeys = function(o) {
31
+ ownKeys = Object.getOwnPropertyNames || function (o) {
32
+ var ar = [];
33
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
34
+ return ar;
35
+ };
36
+ return ownKeys(o);
37
+ };
38
+ return function (mod) {
39
+ if (mod && mod.__esModule) return mod;
40
+ var result = {};
41
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
42
+ __setModuleDefault(result, mod);
43
+ return result;
44
+ };
45
+ })();
46
+ Object.defineProperty(exports, "__esModule", { value: true });
47
+ var react_1 = __importStar(require("react"));
48
+ var react_2 = require("@chakra-ui/react");
49
+ var lucide_react_1 = require("lucide-react");
50
+ var useCustomTheme_1 = require("../../Theme/useCustomTheme");
51
+ var OrgSwitcherProps_1 = require("./OrgSwitcherProps");
52
+ var sizeMap = {
53
+ sm: { h: "32px", avatar: "22px", font: "0.8rem", sub: "0.65rem", px: 2 },
54
+ md: { h: "40px", avatar: "28px", font: "0.9rem", sub: "0.7rem", px: 3 },
55
+ lg: { h: "48px", avatar: "34px", font: "1rem", sub: "0.78rem", px: 4 },
56
+ };
57
+ var Avatar = function (_a) {
58
+ var org = _a.org, boxSize = _a.boxSize, fontSize = _a.fontSize;
59
+ if (org.logoUrl) {
60
+ return (react_1.default.createElement(react_2.Image, { src: org.logoUrl, alt: org.name, boxSize: boxSize, borderRadius: "8px", objectFit: "cover", flexShrink: 0 }));
61
+ }
62
+ return (react_1.default.createElement(react_2.Flex, { align: "center", justify: "center", boxSize: boxSize, borderRadius: "8px", flexShrink: 0, bg: (0, OrgSwitcherProps_1.avatarColor)(org.name), color: "white", fontSize: fontSize, fontWeight: 700 }, (0, OrgSwitcherProps_1.orgInitial)(org.name)));
63
+ };
64
+ var OrgSwitcher = function (_a) {
65
+ var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x;
66
+ var organizations = _a.organizations, value = _a.value, onChange = _a.onChange, _y = _a.isLoading, isLoading = _y === void 0 ? false : _y, isSearchable = _a.isSearchable, _z = _a.searchThreshold, searchThreshold = _z === void 0 ? 6 : _z, _0 = _a.triggerVariant, triggerVariant = _0 === void 0 ? "ghost" : _0, _1 = _a.size, size = _1 === void 0 ? "md" : _1, _2 = _a.maxWidth, maxWidth = _2 === void 0 ? "200px" : _2, _3 = _a.menuMinWidth, menuMinWidth = _3 === void 0 ? "280px" : _3, _4 = _a.placeholder, placeholder = _4 === void 0 ? "Select organization" : _4, _5 = _a.ariaLabel, ariaLabel = _5 === void 0 ? "Switch organization" : _5, _6 = _a.showRole, showRole = _6 === void 0 ? true : _6;
67
+ var theme = (0, useCustomTheme_1.useCustomTheme)();
68
+ var s = sizeMap[size];
69
+ var _7 = (0, react_2.useDisclosure)(), isOpen = _7.isOpen, onOpen = _7.onOpen, onClose = _7.onClose;
70
+ var _8 = (0, react_1.useState)(""), query = _8[0], setQuery = _8[1];
71
+ var searchRef = (0, react_1.useRef)(null);
72
+ var selected = (0, react_1.useMemo)(function () { return organizations.find(function (o) { return o.id === value; }); }, [organizations, value]);
73
+ var showSearch = isSearchable !== null && isSearchable !== void 0 ? isSearchable : organizations.length >= searchThreshold;
74
+ var filtered = (0, react_1.useMemo)(function () {
75
+ if (!query.trim())
76
+ return organizations;
77
+ var q = query.toLowerCase();
78
+ return organizations.filter(function (o) { return o.name.toLowerCase().includes(q); });
79
+ }, [organizations, query]);
80
+ var triggerStyles = triggerVariant === "outline"
81
+ ? { border: "1px solid", borderColor: (_c = (_b = theme.colors.gray) === null || _b === void 0 ? void 0 : _b[200]) !== null && _c !== void 0 ? _c : "#E2E8F0", bg: theme.colors.white }
82
+ : triggerVariant === "subtle"
83
+ ? { bg: (_e = (_d = theme.colors.gray) === null || _d === void 0 ? void 0 : _d[50]) !== null && _e !== void 0 ? _e : "#F8FAFC" }
84
+ : { bg: "transparent" };
85
+ var handleSelect = function (org) {
86
+ onClose();
87
+ setQuery("");
88
+ if (org.id !== value)
89
+ onChange(org.id, org);
90
+ };
91
+ return (react_1.default.createElement(react_2.Popover, { isOpen: isOpen, onOpen: onOpen, onClose: function () {
92
+ onClose();
93
+ setQuery("");
94
+ }, placement: "bottom-start", initialFocusRef: showSearch ? searchRef : undefined, isLazy: true },
95
+ react_1.default.createElement(react_2.PopoverTrigger, null,
96
+ react_1.default.createElement(react_2.Flex, __assign({ as: "button", type: "button", "aria-label": ariaLabel, align: "center", gap: s.px === 2 ? "8px" : "10px", h: s.h, px: s.px, borderRadius: "10px", cursor: isLoading ? "default" : "pointer", opacity: isLoading ? 0.6 : 1, pointerEvents: isLoading ? "none" : "auto", transition: "background 0.15s ease", _hover: { bg: triggerVariant === "ghost" ? (_g = (_f = theme.colors.gray) === null || _f === void 0 ? void 0 : _f[100]) !== null && _g !== void 0 ? _g : "#F1F5F9" : undefined } }, triggerStyles),
97
+ selected ? (react_1.default.createElement(Avatar, { org: selected, boxSize: s.avatar, fontSize: s.sub })) : (react_1.default.createElement(react_2.Flex, { align: "center", justify: "center", boxSize: s.avatar, borderRadius: "8px", bg: (_j = (_h = theme.colors.gray) === null || _h === void 0 ? void 0 : _h[100]) !== null && _j !== void 0 ? _j : "#F1F5F9", color: (_l = (_k = theme.colors.gray) === null || _k === void 0 ? void 0 : _k[400]) !== null && _l !== void 0 ? _l : "#A0AEC0", flexShrink: 0 },
98
+ react_1.default.createElement(lucide_react_1.Building2, { size: 14 }))),
99
+ react_1.default.createElement(react_2.Text, { fontSize: s.font, fontWeight: 600, color: (_o = (_m = theme.colors.gray) === null || _m === void 0 ? void 0 : _m[700]) !== null && _o !== void 0 ? _o : "#2D3748", maxW: maxWidth, overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap", textAlign: "left" }, (_p = selected === null || selected === void 0 ? void 0 : selected.name) !== null && _p !== void 0 ? _p : placeholder),
100
+ isLoading ? (react_1.default.createElement(react_2.Spinner, { size: "xs", thickness: "1.5px", color: theme.colors.primary[500], flexShrink: 0 })) : (react_1.default.createElement(react_2.Box, { as: lucide_react_1.ChevronsUpDown, size: 16, color: (_r = (_q = theme.colors.gray) === null || _q === void 0 ? void 0 : _q[400]) !== null && _r !== void 0 ? _r : "#A0AEC0", flexShrink: 0 })))),
101
+ react_1.default.createElement(react_2.PopoverContent, { minW: menuMinWidth, w: "auto", borderRadius: "12px", overflow: "hidden", boxShadow: "0 10px 30px rgba(0,0,0,0.14)", _focus: { outline: "none", boxShadow: "0 10px 30px rgba(0,0,0,0.14)" } },
102
+ react_1.default.createElement(react_2.PopoverBody, { p: 0 },
103
+ showSearch && (react_1.default.createElement(react_2.Box, { p: 2, borderBottom: "1px solid", borderColor: (_t = (_s = theme.colors.gray) === null || _s === void 0 ? void 0 : _s[100]) !== null && _t !== void 0 ? _t : "#EDF2F7" },
104
+ react_1.default.createElement(react_2.InputGroup, { size: "sm" },
105
+ react_1.default.createElement(react_2.InputLeftElement, { pointerEvents: "none" },
106
+ react_1.default.createElement(lucide_react_1.Search, { size: 15, color: (_v = (_u = theme.colors.gray) === null || _u === void 0 ? void 0 : _u[400]) !== null && _v !== void 0 ? _v : "#A0AEC0" })),
107
+ react_1.default.createElement(react_2.Input, { ref: searchRef, placeholder: "Search organizations", value: query, onChange: function (e) { return setQuery(e.target.value); }, borderRadius: "8px" })))),
108
+ react_1.default.createElement(react_2.Box, { maxH: "320px", overflowY: "auto", py: 1 },
109
+ filtered.map(function (org) {
110
+ var _a, _b, _c, _d, _e, _f;
111
+ var isActive = org.id === value;
112
+ return (react_1.default.createElement(react_2.Flex, { key: org.id, align: "center", gap: "10px", px: 3, py: 2, cursor: "pointer", bg: isActive ? theme.colors.primary[50] : "transparent", transition: "background 0.12s ease", _hover: { bg: isActive ? theme.colors.primary[50] : (_b = (_a = theme.colors.gray) === null || _a === void 0 ? void 0 : _a[50]) !== null && _b !== void 0 ? _b : "#F8FAFC" }, onClick: function () { return handleSelect(org); } },
113
+ react_1.default.createElement(Avatar, { org: org, boxSize: s.avatar, fontSize: s.sub }),
114
+ react_1.default.createElement(react_2.Box, { flex: "1", minW: 0 },
115
+ react_1.default.createElement(react_2.Text, { fontSize: s.font, fontWeight: isActive ? 600 : 500, color: (_d = (_c = theme.colors.gray) === null || _c === void 0 ? void 0 : _c[800]) !== null && _d !== void 0 ? _d : "#1A202C", overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap" }, org.name),
116
+ showRole && org.role && (react_1.default.createElement(react_2.Text, { fontSize: s.sub, color: (_f = (_e = theme.colors.gray) === null || _e === void 0 ? void 0 : _e[500]) !== null && _f !== void 0 ? _f : "#718096", overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap" }, org.role))),
117
+ isActive && (react_1.default.createElement(react_2.Box, { as: lucide_react_1.Check, size: 16, color: theme.colors.primary[500], flexShrink: 0 }))));
118
+ }),
119
+ filtered.length === 0 && (react_1.default.createElement(react_2.Text, { fontSize: "sm", color: (_x = (_w = theme.colors.gray) === null || _w === void 0 ? void 0 : _w[500]) !== null && _x !== void 0 ? _x : "#718096", textAlign: "center", py: 6 }, "No organizations found")))))));
120
+ };
121
+ exports.default = OrgSwitcher;
@@ -0,0 +1,41 @@
1
+ export interface OrgOption {
2
+ id: string | number;
3
+ /** Organization display name. */
4
+ name: string;
5
+ /** Optional subtitle, e.g. the user's role/designation in that org. */
6
+ role?: string;
7
+ /** Optional logo image URL. Falls back to an initial-based avatar. */
8
+ logoUrl?: string;
9
+ }
10
+ export type OrgSwitcherSize = "sm" | "md" | "lg";
11
+ export interface OrgSwitcherProps {
12
+ /** Organizations to choose from. */
13
+ organizations: OrgOption[];
14
+ /** id of the currently active organization. */
15
+ value?: string | number;
16
+ /** Fired when a different organization is picked. */
17
+ onChange: (id: string | number, org: OrgOption) => void;
18
+ /** Shows an inline spinner and disables interaction (e.g. while switching). */
19
+ isLoading?: boolean;
20
+ /** Force the search box on/off. Auto-enabled when there are many orgs. */
21
+ isSearchable?: boolean;
22
+ /** Org count at/above which search auto-appears. Default 6. */
23
+ searchThreshold?: number;
24
+ /** Trigger styling. "ghost" suits a navbar; "outline"/"subtle" for forms. */
25
+ triggerVariant?: "ghost" | "outline" | "subtle";
26
+ size?: OrgSwitcherSize;
27
+ /** Max width of the trigger label before truncation. */
28
+ maxWidth?: string;
29
+ /** Min width of the dropdown panel. */
30
+ menuMinWidth?: string;
31
+ /** Shown when no org is selected. */
32
+ placeholder?: string;
33
+ /** Accessible label for the trigger. */
34
+ ariaLabel?: string;
35
+ /** Show the role subtitle inside the dropdown rows. Default true. */
36
+ showRole?: boolean;
37
+ }
38
+ /** Deterministically pick an avatar color from an org name. */
39
+ export declare const avatarColor: (seed: string) => string;
40
+ /** First letter (uppercased) of an org name, for the fallback avatar. */
41
+ export declare const orgInitial: (name: string) => string;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.orgInitial = exports.avatarColor = void 0;
4
+ var AVATAR_COLORS = [
5
+ "#6366F1",
6
+ "#0EA5E9",
7
+ "#10B981",
8
+ "#F59E0B",
9
+ "#EF4444",
10
+ "#EC4899",
11
+ "#8B5CF6",
12
+ "#14B8A6",
13
+ ];
14
+ /** Deterministically pick an avatar color from an org name. */
15
+ var avatarColor = function (seed) {
16
+ var hash = 0;
17
+ for (var i = 0; i < seed.length; i += 1) {
18
+ hash = seed.charCodeAt(i) + ((hash << 5) - hash);
19
+ }
20
+ return AVATAR_COLORS[Math.abs(hash) % AVATAR_COLORS.length];
21
+ };
22
+ exports.avatarColor = avatarColor;
23
+ /** First letter (uppercased) of an org name, for the fallback avatar. */
24
+ var orgInitial = function (name) { var _a, _b; return ((_b = (_a = name === null || name === void 0 ? void 0 : name.trim()) === null || _a === void 0 ? void 0 : _a[0]) !== null && _b !== void 0 ? _b : "?").toUpperCase(); };
25
+ exports.orgInitial = orgInitial;
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import { CreateOrgModalProps } from "./OrganizationDetailsProps";
3
+ declare const CreateOrgModal: React.FC<CreateOrgModalProps>;
4
+ export default CreateOrgModal;
@@ -0,0 +1,122 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ var desc = Object.getOwnPropertyDescriptor(m, k);
16
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
17
+ desc = { enumerable: true, get: function() { return m[k]; } };
18
+ }
19
+ Object.defineProperty(o, k2, desc);
20
+ }) : (function(o, m, k, k2) {
21
+ if (k2 === undefined) k2 = k;
22
+ o[k2] = m[k];
23
+ }));
24
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
25
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
26
+ }) : function(o, v) {
27
+ o["default"] = v;
28
+ });
29
+ var __importStar = (this && this.__importStar) || (function () {
30
+ var ownKeys = function(o) {
31
+ ownKeys = Object.getOwnPropertyNames || function (o) {
32
+ var ar = [];
33
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
34
+ return ar;
35
+ };
36
+ return ownKeys(o);
37
+ };
38
+ return function (mod) {
39
+ if (mod && mod.__esModule) return mod;
40
+ var result = {};
41
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
42
+ __setModuleDefault(result, mod);
43
+ return result;
44
+ };
45
+ })();
46
+ var __importDefault = (this && this.__importDefault) || function (mod) {
47
+ return (mod && mod.__esModule) ? mod : { "default": mod };
48
+ };
49
+ Object.defineProperty(exports, "__esModule", { value: true });
50
+ var react_1 = __importStar(require("react"));
51
+ var react_2 = require("@chakra-ui/react");
52
+ var useCustomTheme_1 = require("../../Theme/useCustomTheme");
53
+ var Button_1 = __importDefault(require("../Button/Button"));
54
+ var TextInput_1 = __importDefault(require("../Input/TextInput"));
55
+ var EMPTY = {
56
+ company_name: "",
57
+ company_address: "",
58
+ phone: "",
59
+ };
60
+ var CreateOrgModal = function (_a) {
61
+ var _b, _c, _d;
62
+ var isOpen = _a.isOpen, onClose = _a.onClose, isLoading = _a.isLoading, onSubmit = _a.onSubmit, labels = _a.labels;
63
+ var colors = (0, useCustomTheme_1.useCustomTheme)().colors;
64
+ var _e = (0, react_1.useState)(EMPTY), values = _e[0], setValues = _e[1];
65
+ var _f = (0, react_1.useState)({}), errors = _f[0], setErrors = _f[1];
66
+ (0, react_1.useEffect)(function () {
67
+ if (isOpen) {
68
+ setValues(EMPTY);
69
+ setErrors({});
70
+ }
71
+ }, [isOpen]);
72
+ var setField = function (key, value) {
73
+ setValues(function (prev) {
74
+ var _a;
75
+ return (__assign(__assign({}, prev), (_a = {}, _a[key] = value, _a)));
76
+ });
77
+ if (errors[key])
78
+ setErrors(function (prev) {
79
+ var _a;
80
+ return (__assign(__assign({}, prev), (_a = {}, _a[key] = undefined, _a)));
81
+ });
82
+ };
83
+ var validate = function () {
84
+ var next = {};
85
+ if (!values.company_name.trim())
86
+ next.company_name = labels.requiredField;
87
+ if (!values.company_address.trim())
88
+ next.company_address = labels.requiredField;
89
+ var digits = values.phone.replace(/\D/g, "");
90
+ if (!values.phone.trim()) {
91
+ next.phone = labels.requiredField;
92
+ }
93
+ else if (digits.length < 8) {
94
+ next.phone = labels.invalidPhone;
95
+ }
96
+ setErrors(next);
97
+ return Object.keys(next).length === 0;
98
+ };
99
+ var handleSubmit = function () {
100
+ if (!validate())
101
+ return;
102
+ onSubmit({
103
+ company_name: values.company_name.trim(),
104
+ company_address: values.company_address.trim(),
105
+ phone: values.phone.trim(),
106
+ });
107
+ };
108
+ return (react_1.default.createElement(react_2.Modal, { isOpen: isOpen, onClose: onClose, isCentered: true, autoFocus: false },
109
+ react_1.default.createElement(react_2.ModalOverlay, { backdropFilter: "blur(4px)" }),
110
+ react_1.default.createElement(react_2.ModalContent, { borderRadius: "2xl", overflow: "hidden" },
111
+ react_1.default.createElement(react_2.ModalHeader, { borderBottom: "1px solid", borderColor: (_c = (_b = colors === null || colors === void 0 ? void 0 : colors.boxborder) === null || _b === void 0 ? void 0 : _b[200]) !== null && _c !== void 0 ? _c : (_d = colors === null || colors === void 0 ? void 0 : colors.gray) === null || _d === void 0 ? void 0 : _d[200], fontSize: "1.05rem", fontWeight: 600 }, labels.createOrganization),
112
+ react_1.default.createElement(react_2.ModalCloseButton, null),
113
+ react_1.default.createElement(react_2.ModalBody, { py: 6 },
114
+ react_1.default.createElement(react_2.VStack, { spacing: 4, align: "stretch" },
115
+ react_1.default.createElement(TextInput_1.default, { label: labels.companyName, value: values.company_name, onChange: function (e) { return setField("company_name", e.target.value); }, isRequired: true, width: "100%", placeholder: "Enter Company Name", error: !!errors.company_name, errorMessage: errors.company_name }),
116
+ react_1.default.createElement(TextInput_1.default, { label: labels.companyAddress, value: values.company_address, onChange: function (e) { return setField("company_address", e.target.value); }, isRequired: true, width: "100%", placeholder: "Enter Company Address", error: !!errors.company_address, errorMessage: errors.company_address }),
117
+ react_1.default.createElement(TextInput_1.default, { label: labels.phone, value: values.phone, onChange: function (e) { return setField("phone", e.target.value); }, isRequired: true, width: "100%", placeholder: "Enter Phone Number", error: !!errors.phone, errorMessage: errors.phone })),
118
+ react_1.default.createElement(react_2.HStack, { justifyContent: "center", spacing: 4, mt: 6 },
119
+ react_1.default.createElement(Button_1.default, { label: labels.cancel, onClick: onClose, variant: "outline", colorScheme: "red", size: "sm" }),
120
+ react_1.default.createElement(Button_1.default, { label: labels.submit, onClick: handleSubmit, colorScheme: "primary", size: "sm", isLoading: isLoading }))))));
121
+ };
122
+ exports.default = CreateOrgModal;
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import { DeleteOrgModalProps } from "./OrganizationDetailsProps";
3
+ declare const DeleteOrgModal: React.FC<DeleteOrgModalProps>;
4
+ export default DeleteOrgModal;
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var react_1 = __importDefault(require("react"));
7
+ var react_2 = require("@chakra-ui/react");
8
+ var lucide_react_1 = require("lucide-react");
9
+ var useCustomTheme_1 = require("../../Theme/useCustomTheme");
10
+ var Button_1 = __importDefault(require("../Button/Button"));
11
+ var DeleteOrgModal = function (_a) {
12
+ var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
13
+ var isOpen = _a.isOpen, onClose = _a.onClose, isLoading = _a.isLoading, onConfirm = _a.onConfirm, labels = _a.labels;
14
+ var colors = (0, useCustomTheme_1.useCustomTheme)().colors;
15
+ return (react_1.default.createElement(react_2.Modal, { isOpen: isOpen, onClose: onClose, isCentered: true },
16
+ react_1.default.createElement(react_2.ModalOverlay, { backdropFilter: "blur(4px)" }),
17
+ react_1.default.createElement(react_2.ModalContent, { borderRadius: "2xl", overflow: "hidden" },
18
+ react_1.default.createElement(react_2.ModalHeader, { borderBottom: "1px solid", borderColor: (_c = (_b = colors === null || colors === void 0 ? void 0 : colors.boxborder) === null || _b === void 0 ? void 0 : _b[200]) !== null && _c !== void 0 ? _c : (_d = colors === null || colors === void 0 ? void 0 : colors.gray) === null || _d === void 0 ? void 0 : _d[200], display: "flex", alignItems: "center", gap: 3 },
19
+ react_1.default.createElement(react_2.Flex, { align: "center", justify: "center", boxSize: "36px", borderRadius: "full", bg: (_j = (_g = (_f = (_e = colors === null || colors === void 0 ? void 0 : colors.semantic) === null || _e === void 0 ? void 0 : _e.error) === null || _f === void 0 ? void 0 : _f[50]) !== null && _g !== void 0 ? _g : (_h = colors === null || colors === void 0 ? void 0 : colors.red) === null || _h === void 0 ? void 0 : _h[50]) !== null && _j !== void 0 ? _j : "#FEF2F2", color: (_p = (_m = (_l = (_k = colors === null || colors === void 0 ? void 0 : colors.semantic) === null || _k === void 0 ? void 0 : _k.error) === null || _l === void 0 ? void 0 : _l[500]) !== null && _m !== void 0 ? _m : (_o = colors === null || colors === void 0 ? void 0 : colors.red) === null || _o === void 0 ? void 0 : _o[500]) !== null && _p !== void 0 ? _p : "#EF4444" },
20
+ react_1.default.createElement(lucide_react_1.AlertTriangle, { size: 18 })),
21
+ react_1.default.createElement(react_2.Text, { fontSize: "1.05rem", fontWeight: 600 }, labels.confirmDeletion)),
22
+ react_1.default.createElement(react_2.ModalCloseButton, null),
23
+ react_1.default.createElement(react_2.ModalBody, { py: 6 },
24
+ react_1.default.createElement(react_2.Text, { color: (_q = colors === null || colors === void 0 ? void 0 : colors.gray) === null || _q === void 0 ? void 0 : _q[600], fontSize: "sm", mb: 5 }, labels.deleteConfirmText),
25
+ react_1.default.createElement(react_2.HStack, { justifyContent: "flex-end", spacing: 3 },
26
+ react_1.default.createElement(Button_1.default, { label: labels.cancel, onClick: onClose, variant: "outline", colorScheme: "gray", size: "sm" }),
27
+ react_1.default.createElement(Button_1.default, { label: labels.delete, onClick: onConfirm, colorScheme: "red", size: "sm", isLoading: isLoading, leftIcon: react_1.default.createElement(lucide_react_1.Trash2, { size: 15 }) }))))));
28
+ };
29
+ exports.default = DeleteOrgModal;
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import { OrganizationDetailsProps } from "./OrganizationDetailsProps";
3
+ declare const OrganizationDetails: React.FC<OrganizationDetailsProps>;
4
+ export default OrganizationDetails;