@algorithm-shift/design-system 1.2.995 → 1.2.996

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.
package/dist/index.js CHANGED
@@ -3280,6 +3280,7 @@ function LazyMultiSelectDropdown({
3280
3280
  }) {
3281
3281
  const [isOpen, setIsOpen] = (0, import_react29.useState)(false);
3282
3282
  const [searchTerm, setSearchTerm] = (0, import_react29.useState)("");
3283
+ const [selectedDetails, setSelectedDetails] = (0, import_react29.useState)({});
3283
3284
  const dropdownRef = (0, import_react29.useRef)(null);
3284
3285
  const observerTarget = (0, import_react29.useRef)(null);
3285
3286
  const ensureUnique = (arr) => {
@@ -3331,8 +3332,28 @@ function LazyMultiSelectDropdown({
3331
3332
  }
3332
3333
  };
3333
3334
  const selectedOptions = (0, import_react29.useMemo)(() => {
3334
- return lazyOptions.filter((opt) => normalizedValue.includes(opt.value));
3335
- }, [lazyOptions, normalizedValue]);
3335
+ return normalizedValue.map((id2) => {
3336
+ const fromLazy = lazyOptions.find((opt) => opt.value === id2);
3337
+ if (fromLazy) return fromLazy;
3338
+ if (selectedDetails[id2]) return selectedDetails[id2];
3339
+ return { value: id2, label: id2 };
3340
+ });
3341
+ }, [normalizedValue, lazyOptions, selectedDetails]);
3342
+ (0, import_react29.useEffect)(() => {
3343
+ const newDetails = { ...selectedDetails };
3344
+ normalizedValue.forEach((id2) => {
3345
+ const option = lazyOptions.find((opt) => opt.value === id2);
3346
+ if (option && !newDetails[id2]) {
3347
+ newDetails[id2] = option;
3348
+ }
3349
+ });
3350
+ Object.keys(newDetails).forEach((key) => {
3351
+ if (!normalizedValue.includes(key)) {
3352
+ delete newDetails[key];
3353
+ }
3354
+ });
3355
+ setSelectedDetails(newDetails);
3356
+ }, [normalizedValue, lazyOptions]);
3336
3357
  (0, import_react29.useEffect)(() => {
3337
3358
  const handleClick = (e) => {
3338
3359
  if (dropdownRef.current && !dropdownRef.current.contains(e.target)) {
@@ -3358,7 +3379,7 @@ function LazyMultiSelectDropdown({
3358
3379
  setSearchTerm(term);
3359
3380
  search(term);
3360
3381
  };
3361
- const toggleSelect = (val) => {
3382
+ const toggleSelect = (0, import_react29.useCallback)((val) => {
3362
3383
  let updated;
3363
3384
  if (normalizedValue.includes(val)) {
3364
3385
  updated = normalizedValue.filter((v) => v !== val);
@@ -3366,14 +3387,18 @@ function LazyMultiSelectDropdown({
3366
3387
  updated = ensureUnique([...normalizedValue, val]);
3367
3388
  }
3368
3389
  onChange?.(convertOutput(updated), id);
3369
- };
3390
+ }, [normalizedValue, onChange, id, convertOutput]);
3370
3391
  const removeTag = (val) => {
3371
3392
  const updated = normalizedValue.filter((v) => v !== val);
3372
3393
  onChange?.(convertOutput(updated), id);
3373
3394
  };
3374
3395
  const handleFocus = () => {
3375
- if (!disabled) setIsOpen(true);
3376
- if (lazyOptions.length === 0) loadPage(1, "");
3396
+ if (!disabled) {
3397
+ setIsOpen(true);
3398
+ if (lazyOptions.length === 0) {
3399
+ loadPage(1, "");
3400
+ }
3401
+ }
3377
3402
  };
3378
3403
  return /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("div", { ref: dropdownRef, className: "relative w-full", children: [
3379
3404
  /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)(
@@ -4010,9 +4035,9 @@ function DataTable({
4010
4035
  setLocalPageSize(newSize);
4011
4036
  };
4012
4037
  const pageSizeOptions = React10.useMemo(() => {
4013
- const options = [10, 20, 50, 100].filter((size) => size < totalRecords);
4038
+ const options = [5, 10, 20, 50, 100].filter((size) => size < totalRecords);
4014
4039
  if (options.length === 0) {
4015
- options.push(10);
4040
+ options.push(5);
4016
4041
  }
4017
4042
  return options;
4018
4043
  }, [totalRecords]);
@@ -5166,7 +5191,59 @@ var Tabs_default = Tabs;
5166
5191
 
5167
5192
  // src/components/Navigation/Stages/Stages.tsx
5168
5193
  var import_react33 = __toESM(require("react"));
5194
+
5195
+ // src/components/ui/tooltip.tsx
5196
+ var TooltipPrimitive = __toESM(require("@radix-ui/react-tooltip"));
5169
5197
  var import_jsx_runtime60 = require("react/jsx-runtime");
5198
+ function TooltipProvider({
5199
+ delayDuration = 0,
5200
+ ...props
5201
+ }) {
5202
+ return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
5203
+ TooltipPrimitive.Provider,
5204
+ {
5205
+ "data-slot": "tooltip-provider",
5206
+ delayDuration,
5207
+ ...props
5208
+ }
5209
+ );
5210
+ }
5211
+ function Tooltip({
5212
+ ...props
5213
+ }) {
5214
+ return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(TooltipProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(TooltipPrimitive.Root, { "data-slot": "tooltip", ...props }) });
5215
+ }
5216
+ function TooltipTrigger({
5217
+ ...props
5218
+ }) {
5219
+ return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(TooltipPrimitive.Trigger, { "data-slot": "tooltip-trigger", ...props });
5220
+ }
5221
+ function TooltipContent({
5222
+ className,
5223
+ sideOffset = 0,
5224
+ children,
5225
+ ...props
5226
+ }) {
5227
+ return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(TooltipPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)(
5228
+ TooltipPrimitive.Content,
5229
+ {
5230
+ "data-slot": "tooltip-content",
5231
+ sideOffset,
5232
+ className: cn(
5233
+ "bg-foreground text-background animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance",
5234
+ className
5235
+ ),
5236
+ ...props,
5237
+ children: [
5238
+ children,
5239
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(TooltipPrimitive.Arrow, { className: "bg-foreground fill-foreground z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]" })
5240
+ ]
5241
+ }
5242
+ ) });
5243
+ }
5244
+
5245
+ // src/components/Navigation/Stages/Stages.tsx
5246
+ var import_jsx_runtime61 = require("react/jsx-runtime");
5170
5247
  var StagesComponent = ({
5171
5248
  stages,
5172
5249
  isShowBtn,
@@ -5184,6 +5261,8 @@ var StagesComponent = ({
5184
5261
  }) => {
5185
5262
  const [activeStage, setActiveStage] = (0, import_react33.useState)("");
5186
5263
  const [isCompleted, setIsCompleted] = (0, import_react33.useState)(false);
5264
+ const [activeChildStage, setActiveChildStage] = (0, import_react33.useState)(null);
5265
+ const [activeRootStage, setActiveRootStage] = (0, import_react33.useState)(null);
5187
5266
  (0, import_react33.useEffect)(() => {
5188
5267
  if (currentStage) {
5189
5268
  setActiveStage(currentStage);
@@ -5194,6 +5273,9 @@ var StagesComponent = ({
5194
5273
  const updateStage = (stageKey) => {
5195
5274
  setActiveStage(stageKey);
5196
5275
  onStageChange?.(stageKey);
5276
+ const { activeRoot, activeChild } = findStageContext(stages, stageKey);
5277
+ setActiveRootStage(activeRoot);
5278
+ setActiveChildStage(activeChild);
5197
5279
  };
5198
5280
  const nextStage = () => {
5199
5281
  if (!stages || stages.length === 0) return;
@@ -5219,9 +5301,41 @@ var StagesComponent = ({
5219
5301
  onStageChange?.(stageKey);
5220
5302
  }
5221
5303
  };
5222
- const isAllStagesCompleted = isCompleted || currentStage === lastStage;
5304
+ const findStageContext = (nodes, curr, root = null) => {
5305
+ if (!nodes || nodes.length === 0) {
5306
+ return { activeRoot: null, activeChild: null };
5307
+ }
5308
+ if (!Array.isArray(nodes)) {
5309
+ return { activeRoot: null, activeChild: null };
5310
+ }
5311
+ for (const node of nodes) {
5312
+ const currentRoot = root ?? node;
5313
+ if (node?.[dataKey] === curr) {
5314
+ return {
5315
+ activeRoot: root ?? node,
5316
+ activeChild: node
5317
+ };
5318
+ }
5319
+ const result = findStageContext(node?.children, curr, currentRoot);
5320
+ if (result.activeChild) {
5321
+ return result;
5322
+ }
5323
+ }
5324
+ return { activeRoot: null, activeChild: null };
5325
+ };
5326
+ (0, import_react33.useEffect)(() => {
5327
+ if (!currentStage || !Array.isArray(stages)) {
5328
+ setActiveRootStage(null);
5329
+ setActiveChildStage(null);
5330
+ return;
5331
+ }
5332
+ const { activeRoot, activeChild } = findStageContext(stages, currentStage);
5333
+ setActiveRootStage(activeRoot);
5334
+ setActiveChildStage(activeChild);
5335
+ }, [currentStage, stages]);
5336
+ const isAllStagesCompleted = isCompleted || activeRootStage?.[dataKey] === lastStage;
5223
5337
  const disabled = isAllStagesCompleted || loading || saving;
5224
- return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className, style, children: /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)(
5338
+ return /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { className, style, children: /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)(
5225
5339
  "div",
5226
5340
  {
5227
5341
  className: `
@@ -5231,8 +5345,8 @@ var StagesComponent = ({
5231
5345
  ${isMobile ? "p-3 sm:p-4" : "p-2"}
5232
5346
  `,
5233
5347
  children: [
5234
- /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "flex items-center flex-shrink-0 order-1 lg:order-1", children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("button", { className: "p-2 hover:bg-gray-100 rounded flex-shrink-0", children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("svg", { className: "w-4 h-4 text-gray-600", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M19 9l-7 7-7-7" }) }) }) }),
5235
- /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
5348
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { className: "flex items-center flex-shrink-0 order-1 lg:order-1", children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("button", { className: "p-2 hover:bg-gray-100 rounded flex-shrink-0", children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("svg", { className: "w-4 h-4 text-gray-600", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M19 9l-7 7-7-7" }) }) }) }),
5349
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
5236
5350
  "div",
5237
5351
  {
5238
5352
  className: `
@@ -5240,7 +5354,7 @@ var StagesComponent = ({
5240
5354
  flex-wrap gap-2 sm:gap-2 lg:gap-3 w-full lg:w-auto
5241
5355
  ${isMobile ? "order-2 mt-2 lg:mt-0" : "order-2"}
5242
5356
  `,
5243
- children: loading ? Array(6).fill(null).map((_, index) => /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
5357
+ children: loading ? Array(6).fill(null).map((_, index) => /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
5244
5358
  "button",
5245
5359
  {
5246
5360
  className: `
@@ -5254,41 +5368,49 @@ var StagesComponent = ({
5254
5368
  disabled: true
5255
5369
  },
5256
5370
  index
5257
- )) : stages?.length > 0 && stages?.map((stage, index) => {
5371
+ )) : (stages || [])?.length > 0 && stages?.map((stage, index) => {
5258
5372
  const currentIndex = stages.findIndex((s) => s[dataKey] === activeStage);
5259
5373
  const isCompletedStage = isAllStagesCompleted || index <= currentIndex;
5260
5374
  const isActive = !isAllStagesCompleted && index === currentIndex;
5261
- return /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)(import_react33.default.Fragment, { children: [
5262
- /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
5375
+ let stageColor = !stage.isSuccess ? "bg-red-50 text-red-700 border-2 border-red-700" : "bg-green-50 text-green-700 border-2 border-green-700";
5376
+ let stageLabel = stage[dataLabel];
5377
+ if (stage[dataKey] !== activeChildStage?.[dataKey] && activeRootStage?.[dataKey] === stage[dataKey]) {
5378
+ stageLabel = activeChildStage?.[dataLabel] || stageLabel;
5379
+ stageColor = activeChildStage?.isSuccess ? "bg-green-50 text-green-700 border-2 border-green-700" : "bg-red-50 text-red-700 border-2 border-red-700";
5380
+ }
5381
+ const stageKey = typeof stage[dataKey] === "string" ? stage[dataKey] : JSON.stringify(stage[dataKey]);
5382
+ return /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_react33.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)(Tooltip, { delayDuration: 500, disableHoverableContent: true, children: [
5383
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(TooltipTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
5263
5384
  "button",
5264
5385
  {
5265
5386
  className: `
5266
5387
  min-w-[70px] sm:min-w-[80px] w-full sm:w-auto px-3 sm:px-4 py-1.5 sm:py-2
5267
5388
  rounded-full text-xs sm:text-sm font-medium transition-colors duration-200
5268
- whitespace-normal sm:whitespace-nowrap flex-shrink-0
5269
- ${isActive ? "bg-green-700 text-white shadow-md" : isCompletedStage ? "bg-green-50 text-green-700 border-2 border-green-700" : "bg-white text-gray-700 hover:bg-gray-100 border border-gray-200"}
5389
+ whitespace-normal sm:whitespace-nowrap flex-shrink-0 max-w-[150px] text-ellipsis overflow-hidden
5390
+ ${isActive ? "bg-green-700 text-white shadow-md" : isCompletedStage ? stageColor : "bg-white text-gray-700 hover:bg-gray-100 border border-gray-200"}
5270
5391
  ${isMobile ? "flex-1 text-center py-2.5" : ""}
5271
5392
  `,
5272
5393
  onClick: () => {
5273
5394
  if (isAllStagesCompleted) return;
5274
5395
  onStageClick(stage[dataKey]);
5275
5396
  },
5276
- children: stage[dataLabel]
5397
+ children: stageLabel
5277
5398
  }
5278
- ),
5279
- !isMobile && index < stages.length - 1 && /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "hidden sm:flex sm:flex-shrink-0 w-3 h-px bg-gray-300 sm:w-4" })
5280
- ] }, stage.id);
5399
+ ) }),
5400
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(TooltipContent, { className: "max-w-[400px] p-3 text-xs text-muted-foreground space-y-2", children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("span", { children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("b", { children: stageLabel }) }) }),
5401
+ !isMobile && index < stages.length - 1 && /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { className: "hidden sm:flex sm:flex-shrink-0 w-3 h-px bg-gray-300 sm:w-4" })
5402
+ ] }, stageKey) }, stageKey);
5281
5403
  })
5282
5404
  }
5283
5405
  ),
5284
- isShowBtn && /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
5406
+ isShowBtn && /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
5285
5407
  "div",
5286
5408
  {
5287
5409
  className: `
5288
5410
  flex items-center flex-shrink-0 w-full lg:w-auto
5289
5411
  ${isMobile ? "order-3 mt-3 lg:mt-0" : "order-3"}
5290
5412
  `,
5291
- children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
5413
+ children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
5292
5414
  "button",
5293
5415
  {
5294
5416
  className: `
@@ -5310,20 +5432,20 @@ var StagesComponent = ({
5310
5432
  var Stages_default = StagesComponent;
5311
5433
 
5312
5434
  // src/components/Navigation/Spacer/Spacer.tsx
5313
- var import_jsx_runtime61 = require("react/jsx-runtime");
5435
+ var import_jsx_runtime62 = require("react/jsx-runtime");
5314
5436
  var Spacer = ({ className, style }) => {
5315
- return /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { className: `${className}`, style });
5437
+ return /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { className: `${className}`, style });
5316
5438
  };
5317
5439
  var Spacer_default = Spacer;
5318
5440
 
5319
5441
  // src/components/Navigation/Profile/Profile.tsx
5320
- var import_jsx_runtime62 = require("react/jsx-runtime");
5442
+ var import_jsx_runtime63 = require("react/jsx-runtime");
5321
5443
 
5322
5444
  // src/components/Navigation/Notification/Notification.tsx
5323
- var import_jsx_runtime63 = require("react/jsx-runtime");
5445
+ var import_jsx_runtime64 = require("react/jsx-runtime");
5324
5446
 
5325
5447
  // src/components/Navigation/Logo/Logo.tsx
5326
- var import_jsx_runtime64 = require("react/jsx-runtime");
5448
+ var import_jsx_runtime65 = require("react/jsx-runtime");
5327
5449
 
5328
5450
  // src/components/Navigation/Navbar/Navbar.tsx
5329
5451
  var import_react34 = require("react");
@@ -5335,8 +5457,8 @@ var import_navigation3 = require("next/navigation");
5335
5457
  // src/components/ui/avatar.tsx
5336
5458
  var React12 = __toESM(require("react"));
5337
5459
  var AvatarPrimitive = __toESM(require("@radix-ui/react-avatar"));
5338
- var import_jsx_runtime65 = require("react/jsx-runtime");
5339
- var Avatar = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
5460
+ var import_jsx_runtime66 = require("react/jsx-runtime");
5461
+ var Avatar = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
5340
5462
  AvatarPrimitive.Root,
5341
5463
  {
5342
5464
  ref,
@@ -5348,7 +5470,7 @@ var Avatar = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ *
5348
5470
  }
5349
5471
  ));
5350
5472
  Avatar.displayName = AvatarPrimitive.Root.displayName;
5351
- var AvatarImage = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
5473
+ var AvatarImage = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
5352
5474
  AvatarPrimitive.Image,
5353
5475
  {
5354
5476
  ref,
@@ -5357,7 +5479,7 @@ var AvatarImage = React12.forwardRef(({ className, ...props }, ref) => /* @__PUR
5357
5479
  }
5358
5480
  ));
5359
5481
  AvatarImage.displayName = AvatarPrimitive.Image.displayName;
5360
- var AvatarFallback = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
5482
+ var AvatarFallback = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
5361
5483
  AvatarPrimitive.Fallback,
5362
5484
  {
5363
5485
  ref,
@@ -5371,7 +5493,7 @@ var AvatarFallback = React12.forwardRef(({ className, ...props }, ref) => /* @__
5371
5493
  AvatarFallback.displayName = AvatarPrimitive.Fallback.displayName;
5372
5494
 
5373
5495
  // src/components/Navigation/Navbar/Navbar.tsx
5374
- var import_jsx_runtime66 = require("react/jsx-runtime");
5496
+ var import_jsx_runtime67 = require("react/jsx-runtime");
5375
5497
  function Navbar({
5376
5498
  style,
5377
5499
  badgeType,
@@ -5429,9 +5551,9 @@ function Navbar({
5429
5551
  }
5430
5552
  return list;
5431
5553
  }, [source, navList, list]);
5432
- const RenderSearchInput = () => /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { className: "flex-1 px-2", children: /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("div", { className: "relative w-full max-w-md border border-gray-300 rounded-md", children: [
5433
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_lucide_react18.Search, { className: "absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 dark:text-white text-gray-400" }),
5434
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
5554
+ const RenderSearchInput = () => /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("div", { className: "flex-1 px-2", children: /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("div", { className: "relative w-full max-w-md border border-gray-300 rounded-md", children: [
5555
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_lucide_react18.Search, { className: "absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 dark:text-white text-gray-400" }),
5556
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5435
5557
  Input,
5436
5558
  {
5437
5559
  placeholder: "Search",
@@ -5447,23 +5569,23 @@ function Navbar({
5447
5569
  }
5448
5570
  )
5449
5571
  ] }) });
5450
- return /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(import_jsx_runtime66.Fragment, { children: [
5451
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
5572
+ return /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(import_jsx_runtime67.Fragment, { children: [
5573
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5452
5574
  "nav",
5453
5575
  {
5454
5576
  className: "w-full min-h-[75px] border-b border-gray-200 dark:border-gray-800 dark:bg-gray-800 bg-white shadow-sm",
5455
5577
  style,
5456
- children: /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("div", { className: "mx-auto flex max-w-[90%] items-center justify-between px-4 py-4", children: [
5457
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
5578
+ children: /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("div", { className: "mx-auto flex max-w-[90%] items-center justify-between px-4 py-4", children: [
5579
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5458
5580
  import_link4.default,
5459
5581
  {
5460
5582
  href: "/",
5461
5583
  onClick: (e) => handleBuilderExit(e, "/"),
5462
5584
  className: "flex items-center space-x-2",
5463
- children: imageUrl ? /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_image2.default, { src: imageUrl, alt: altText, width: 180, height: 40 }) : /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "font-semibold text-blue-700", children: "Logo" })
5585
+ children: imageUrl ? /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_image2.default, { src: imageUrl, alt: altText, width: 180, height: 40 }) : /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("span", { className: "font-semibold text-blue-700", children: "Logo" })
5464
5586
  }
5465
5587
  ),
5466
- isDesktop && /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { className: "hidden md:flex items-center space-x-6", children: formattedMenu.map((item) => /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
5588
+ isDesktop && /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("div", { className: "hidden md:flex items-center space-x-6", children: formattedMenu.map((item) => /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5467
5589
  import_link4.default,
5468
5590
  {
5469
5591
  href: item.url,
@@ -5473,23 +5595,23 @@ function Navbar({
5473
5595
  },
5474
5596
  item.id
5475
5597
  )) }),
5476
- /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("div", { className: "flex items-center space-x-3", children: [
5477
- (isDesktop || isTablet) && /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(RenderSearchInput, {}),
5478
- /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("div", { className: "relative bg-gray-200 dark:bg-gray-700 rounded-md", children: [
5479
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(Button, { variant: "ghost", size: "icon", children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_lucide_react18.Bell, { className: "h-5 w-5 text-gray-700 dark:text-gray-300" }) }),
5480
- badgeType === "number" && !(hideBadgeWhenZero && badgeCount === 0) && Number(badgeCount) > 0 ? /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "absolute -top-1 -right-1 h-4 w-4 flex items-center justify-center bg-red-500 rounded-full text-white text-[10px]", children: badgeCount }) : !hideBadgeWhenZero && /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "absolute -top-1 -right-1 h-2 w-2 bg-red-500 rounded-full" })
5598
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("div", { className: "flex items-center space-x-3", children: [
5599
+ (isDesktop || isTablet) && /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(RenderSearchInput, {}),
5600
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("div", { className: "relative bg-gray-200 dark:bg-gray-700 rounded-md", children: [
5601
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(Button, { variant: "ghost", size: "icon", children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_lucide_react18.Bell, { className: "h-5 w-5 text-gray-700 dark:text-gray-300" }) }),
5602
+ badgeType === "number" && !(hideBadgeWhenZero && badgeCount === 0) && Number(badgeCount) > 0 ? /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("span", { className: "absolute -top-1 -right-1 h-4 w-4 flex items-center justify-center bg-red-500 rounded-full text-white text-[10px]", children: badgeCount }) : !hideBadgeWhenZero && /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("span", { className: "absolute -top-1 -right-1 h-2 w-2 bg-red-500 rounded-full" })
5481
5603
  ] }),
5482
- /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(DropdownMenu, { children: [
5483
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("div", { className: "flex items-center space-x-2 cursor-pointer", children: [
5484
- !isMobile && showName && /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("h4", { className: "text-gray-900 dark:text-gray-300 text-sm", children: userName }),
5485
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(Avatar, { className: "h-8 w-8", children: profileType === "avatar" ? /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(AvatarImage, { src: "/images/appbuilder/toolset/profile.svg", alt: "profile" }) : /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { className: "bg-green-700 text-white h-full w-full rounded-full flex items-center justify-center text-xs", children: getInitials(userName) }) }),
5486
- (isMobile || isTablet) && /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(Button, { variant: "ghost", size: "icon", children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_lucide_react18.Menu, { className: "h-6 w-6" }) })
5604
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(DropdownMenu, { children: [
5605
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("div", { className: "flex items-center space-x-2 cursor-pointer", children: [
5606
+ !isMobile && showName && /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("h4", { className: "text-gray-900 dark:text-gray-300 text-sm", children: userName }),
5607
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(Avatar, { className: "h-8 w-8", children: profileType === "avatar" ? /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(AvatarImage, { src: "/images/appbuilder/toolset/profile.svg", alt: "profile" }) : /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("div", { className: "bg-green-700 text-white h-full w-full rounded-full flex items-center justify-center text-xs", children: getInitials(userName) }) }),
5608
+ (isMobile || isTablet) && /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(Button, { variant: "ghost", size: "icon", children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_lucide_react18.Menu, { className: "h-6 w-6" }) })
5487
5609
  ] }) }),
5488
- /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(DropdownMenuContent, { align: "end", className: "bg-white dark:bg-gray-800", children: [
5489
- profileMenu.map((item) => /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(DropdownMenuItem, { children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_link4.default, { href: item.url, onClick: (e) => handleBuilderExit(e, item.url), children: item.header }) }, item.id)),
5490
- (isMobile || isTablet) && /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(import_jsx_runtime66.Fragment, { children: [
5491
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(DropdownMenuSeparator, {}),
5492
- formattedMenu.map((item) => /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(DropdownMenuItem, { children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_link4.default, { href: item.url, onClick: (e) => handleBuilderExit(e, item.url), children: item.header }) }, item.id))
5610
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(DropdownMenuContent, { align: "end", className: "bg-white dark:bg-gray-800", children: [
5611
+ profileMenu.map((item) => /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(DropdownMenuItem, { children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_link4.default, { href: item.url, onClick: (e) => handleBuilderExit(e, item.url), children: item.header }) }, item.id)),
5612
+ (isMobile || isTablet) && /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(import_jsx_runtime67.Fragment, { children: [
5613
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(DropdownMenuSeparator, {}),
5614
+ formattedMenu.map((item) => /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(DropdownMenuItem, { children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_link4.default, { href: item.url, onClick: (e) => handleBuilderExit(e, item.url), children: item.header }) }, item.id))
5493
5615
  ] })
5494
5616
  ] })
5495
5617
  ] })
@@ -5497,7 +5619,7 @@ function Navbar({
5497
5619
  ] })
5498
5620
  }
5499
5621
  ),
5500
- isMobile && /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { className: "p-3", children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(RenderSearchInput, {}) })
5622
+ isMobile && /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("div", { className: "p-3", children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(RenderSearchInput, {}) })
5501
5623
  ] });
5502
5624
  }
5503
5625
 
@@ -5505,7 +5627,7 @@ function Navbar({
5505
5627
  var import_react35 = __toESM(require("react"));
5506
5628
  var import_axios3 = __toESM(require("axios"));
5507
5629
  var import_recharts = require("recharts");
5508
- var import_jsx_runtime67 = require("react/jsx-runtime");
5630
+ var import_jsx_runtime68 = require("react/jsx-runtime");
5509
5631
  var getRandomColor = () => {
5510
5632
  const palette = [
5511
5633
  "#2563eb",
@@ -5632,27 +5754,27 @@ var ChartComponent = ({
5632
5754
  const chartType = props.chartType || "bar";
5633
5755
  const legendsPosition = ["middle", "bottom"].includes(props.legendsPosition) ? props.legendsPosition : "top";
5634
5756
  if (effectiveLoading || data.length === 0) {
5635
- return /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(
5757
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
5636
5758
  "div",
5637
5759
  {
5638
5760
  className: `relative flex flex-col w-full h-[300px] md:h-[400px] bg-gradient-to-br from-gray-50 to-gray-100 rounded-xl p-6 ${className}`,
5639
5761
  style,
5640
5762
  children: [
5641
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("div", { className: "mb-6 flex justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("div", { className: "inline-flex items-center space-x-2 bg-white/90 px-6 py-2.5 rounded-xl backdrop-blur-sm border border-gray-200 shadow-lg", children: [
5642
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("div", { className: "w-5 h-5 border-2 border-gray-400 border-t-blue-500 rounded-full animate-spin" }),
5643
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("span", { className: "text-sm font-medium text-gray-700 bg-gradient-to-r from-gray-300 bg-clip-text animate-pulse", children: "Loading chart data..." })
5763
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "mb-6 flex justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "inline-flex items-center space-x-2 bg-white/90 px-6 py-2.5 rounded-xl backdrop-blur-sm border border-gray-200 shadow-lg", children: [
5764
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "w-5 h-5 border-2 border-gray-400 border-t-blue-500 rounded-full animate-spin" }),
5765
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { className: "text-sm font-medium text-gray-700 bg-gradient-to-r from-gray-300 bg-clip-text animate-pulse", children: "Loading chart data..." })
5644
5766
  ] }) }),
5645
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("div", { className: "absolute inset-0 bg-gradient-to-r from-transparent via-white/60 to-transparent animate-shimmer rounded-xl" }),
5646
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("div", { className: "flex-1 relative w-full h-full min-h-[240px] md:min-h-[320px] bg-white/80 rounded-lg border border-gray-200/50 shadow-sm", children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("div", { className: "absolute bottom-0 left-4 right-4 flex gap-2 h-[200px] md:h-[280px] justify-center items-end", children: [...Array(20)].map((_, idx) => {
5767
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "absolute inset-0 bg-gradient-to-r from-transparent via-white/60 to-transparent animate-shimmer rounded-xl" }),
5768
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "flex-1 relative w-full h-full min-h-[240px] md:min-h-[320px] bg-white/80 rounded-lg border border-gray-200/50 shadow-sm", children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "absolute bottom-0 left-4 right-4 flex gap-2 h-[200px] md:h-[280px] justify-center items-end", children: [...Array(20)].map((_, idx) => {
5647
5769
  const randomHeight = `${Math.floor(Math.random() * 76) + 20}%`;
5648
- return /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(
5770
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
5649
5771
  "div",
5650
5772
  {
5651
5773
  className: `relative w-10 md:w-12 flex-1 max-w-[48px] rounded-t-lg bg-gradient-to-t from-gray-100 via-gray-200 to-transparent shadow-lg border border-gray-200/50 animate-slide-up stagger-${idx} overflow-hidden`,
5652
5774
  style: { height: randomHeight, animationDelay: `${idx * 0.08}s` },
5653
5775
  children: [
5654
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("div", { className: "absolute inset-0 bg-gradient-to-r from-white/40 via-transparent to-white/40 animate-shimmer-bar" }),
5655
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("div", { className: "absolute bottom-1 left-1/2 w-4 h-1 rounded-full transform -translate-x-1/2 blur-sm" })
5776
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "absolute inset-0 bg-gradient-to-r from-white/40 via-transparent to-white/40 animate-shimmer-bar" }),
5777
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "absolute bottom-1 left-1/2 w-4 h-1 rounded-full transform -translate-x-1/2 blur-sm" })
5656
5778
  ]
5657
5779
  },
5658
5780
  `bar-${idx}`
@@ -5662,9 +5784,9 @@ var ChartComponent = ({
5662
5784
  }
5663
5785
  );
5664
5786
  }
5665
- return /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("div", { className: `${className} h-[450px]`, style, children: [
5666
- isPaginationEnabled && rawMeta && /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("div", { className: "flex items-center justify-between mb-4 px-2", children: [
5667
- /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("div", { className: "text-sm text-gray-600 hidden sm:block", children: [
5787
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: `${className} h-[450px]`, style, children: [
5788
+ isPaginationEnabled && rawMeta && /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex items-center justify-between mb-4 px-2", children: [
5789
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "text-sm text-gray-600 hidden sm:block", children: [
5668
5790
  "Page ",
5669
5791
  rawMeta.page,
5670
5792
  " of ",
@@ -5673,52 +5795,52 @@ var ChartComponent = ({
5673
5795
  rawMeta.total.toLocaleString(),
5674
5796
  " total records)"
5675
5797
  ] }),
5676
- /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("div", { className: "flex items-center space-x-2 sm:hidden w-full justify-center", children: [
5677
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5798
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex items-center space-x-2 sm:hidden w-full justify-center", children: [
5799
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
5678
5800
  "button",
5679
5801
  {
5680
5802
  onClick: () => handlePageChange(currentPage - 1),
5681
5803
  disabled: currentPage === 1 || localLoading,
5682
5804
  className: "flex-1 px-3 py-2 text-xs font-medium rounded-lg border bg-white shadow-sm hover:bg-gray-50 disabled:opacity-50 disabled:cursor-not-allowed transition-all duration-200 flex items-center justify-center space-x-1 min-w-0",
5683
- children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("span", { children: "\u2190 Prev" })
5805
+ children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { children: "\u2190 Prev" })
5684
5806
  }
5685
5807
  ),
5686
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("span", { className: "px-2 py-2 text-xs font-semibold text-gray-700 min-w-[36px] text-center flex-shrink-0", children: currentPage }),
5687
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5808
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { className: "px-2 py-2 text-xs font-semibold text-gray-700 min-w-[36px] text-center flex-shrink-0", children: currentPage }),
5809
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
5688
5810
  "button",
5689
5811
  {
5690
5812
  onClick: () => handlePageChange(currentPage + 1),
5691
5813
  disabled: currentPage >= rawMeta.pages || localLoading,
5692
5814
  className: "flex-1 px-3 py-2 text-xs font-medium rounded-lg border bg-white shadow-sm hover:bg-gray-50 disabled:opacity-50 disabled:cursor-not-allowed transition-all duration-200 flex items-center justify-center space-x-1 min-w-0",
5693
- children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("span", { children: "Next \u2192" })
5815
+ children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { children: "Next \u2192" })
5694
5816
  }
5695
5817
  )
5696
5818
  ] }),
5697
- /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("div", { className: "flex items-center space-x-2 hidden sm:flex", children: [
5698
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5819
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex items-center space-x-2 hidden sm:flex", children: [
5820
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
5699
5821
  "button",
5700
5822
  {
5701
5823
  onClick: () => handlePageChange(currentPage - 1),
5702
5824
  disabled: currentPage === 1 || localLoading,
5703
5825
  className: "px-3 py-1.5 text-sm font-medium rounded-lg border bg-white shadow-sm hover:bg-gray-50 disabled:opacity-50 disabled:cursor-not-allowed transition-all duration-200 flex items-center space-x-1",
5704
- children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("span", { children: "\u2190 Prev" })
5826
+ children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { children: "\u2190 Prev" })
5705
5827
  }
5706
5828
  ),
5707
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("span", { className: "px-3 py-1 text-sm font-medium text-gray-700", children: currentPage }),
5708
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5829
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { className: "px-3 py-1 text-sm font-medium text-gray-700", children: currentPage }),
5830
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
5709
5831
  "button",
5710
5832
  {
5711
5833
  onClick: () => handlePageChange(currentPage + 1),
5712
5834
  disabled: currentPage >= rawMeta.pages || localLoading,
5713
5835
  className: "px-3 py-1.5 text-sm font-medium rounded-lg border bg-white shadow-sm hover:bg-gray-50 disabled:opacity-50 disabled:cursor-not-allowed transition-all duration-200 flex items-center space-x-1",
5714
- children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("span", { children: "Next \u2192" })
5836
+ children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { children: "Next \u2192" })
5715
5837
  }
5716
5838
  )
5717
5839
  ] })
5718
5840
  ] }),
5719
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_recharts.ResponsiveContainer, { width: "100%", height: "100%", children: chartType === "bar" ? /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(import_recharts.BarChart, { data, children: [
5720
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_recharts.CartesianGrid, { strokeDasharray: "3 3" }),
5721
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5841
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_recharts.ResponsiveContainer, { width: "100%", height: "100%", children: chartType === "bar" ? /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(import_recharts.BarChart, { data, children: [
5842
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_recharts.CartesianGrid, { strokeDasharray: "3 3" }),
5843
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
5722
5844
  import_recharts.XAxis,
5723
5845
  {
5724
5846
  dataKey: dataLabel,
@@ -5736,7 +5858,7 @@ var ChartComponent = ({
5736
5858
  className: "hidden sm:block"
5737
5859
  }
5738
5860
  ),
5739
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5861
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
5740
5862
  import_recharts.YAxis,
5741
5863
  {
5742
5864
  tickFormatter: (value) => `${(value / 1e3).toFixed(0)}k`,
@@ -5749,9 +5871,9 @@ var ChartComponent = ({
5749
5871
  width: 60
5750
5872
  }
5751
5873
  ),
5752
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_recharts.Tooltip, { formatter: (value) => [`${value}`, "Count"] }),
5753
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_recharts.Legend, { verticalAlign: legendsPosition, align: "center" }),
5754
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5874
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_recharts.Tooltip, { formatter: (value) => [`${value}`, "Count"] }),
5875
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_recharts.Legend, { verticalAlign: legendsPosition, align: "center" }),
5876
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
5755
5877
  import_recharts.Bar,
5756
5878
  {
5757
5879
  dataKey,
@@ -5759,13 +5881,13 @@ var ChartComponent = ({
5759
5881
  isAnimationActive: false
5760
5882
  }
5761
5883
  )
5762
- ] }) : /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(import_recharts.AreaChart, { data, children: [
5763
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("defs", { children: /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("linearGradient", { id: "colorCount", x1: "0", y1: "0", x2: "0", y2: "1", children: [
5764
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("stop", { offset: "5%", stopColor: "#00695C", stopOpacity: 0.8 }),
5765
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("stop", { offset: "95%", stopColor: "#00695C", stopOpacity: 0 })
5884
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(import_recharts.AreaChart, { data, children: [
5885
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("defs", { children: /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("linearGradient", { id: "colorCount", x1: "0", y1: "0", x2: "0", y2: "1", children: [
5886
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("stop", { offset: "5%", stopColor: "#00695C", stopOpacity: 0.8 }),
5887
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("stop", { offset: "95%", stopColor: "#00695C", stopOpacity: 0 })
5766
5888
  ] }) }),
5767
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_recharts.CartesianGrid, { strokeDasharray: "3 3" }),
5768
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5889
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_recharts.CartesianGrid, { strokeDasharray: "3 3" }),
5890
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
5769
5891
  import_recharts.XAxis,
5770
5892
  {
5771
5893
  dataKey: dataLabel,
@@ -5779,7 +5901,7 @@ var ChartComponent = ({
5779
5901
  }
5780
5902
  }
5781
5903
  ),
5782
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5904
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
5783
5905
  import_recharts.YAxis,
5784
5906
  {
5785
5907
  tickFormatter: (value) => `${(value / 1e3).toFixed(0)}k`,
@@ -5792,8 +5914,8 @@ var ChartComponent = ({
5792
5914
  width: 60
5793
5915
  }
5794
5916
  ),
5795
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_recharts.Tooltip, { formatter: (value) => `${value}k` }),
5796
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5917
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_recharts.Tooltip, { formatter: (value) => `${value}k` }),
5918
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
5797
5919
  import_recharts.Area,
5798
5920
  {
5799
5921
  type: "monotone",
@@ -5813,7 +5935,7 @@ var BarChart_default = import_react35.default.memo(ChartComponent);
5813
5935
  var import_react36 = __toESM(require("react"));
5814
5936
  var import_axios4 = __toESM(require("axios"));
5815
5937
  var import_recharts2 = require("recharts");
5816
- var import_jsx_runtime68 = require("react/jsx-runtime");
5938
+ var import_jsx_runtime69 = require("react/jsx-runtime");
5817
5939
  var getRandomColor2 = () => {
5818
5940
  const palette = [
5819
5941
  "#2563eb",
@@ -5982,32 +6104,32 @@ var DonutChart = ({
5982
6104
  }, []);
5983
6105
  const renderLegends = (0, import_react36.useMemo)(() => {
5984
6106
  if (!showLegends) return null;
5985
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "flex flex-wrap justify-center gap-2 mt-4 w-full max-w-4xl", children: chartData.map((d, index) => {
6107
+ return /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "flex flex-wrap justify-center gap-2 mt-4 w-full max-w-4xl", children: chartData.map((d, index) => {
5986
6108
  const actualValue = data.find(
5987
6109
  (item) => item[dataLabel] === d[dataLabel]
5988
6110
  )?.[dataKey] ?? d[dataKey];
5989
6111
  const displayValue = actualValue >= 1e3 ? `${(actualValue / 1e3).toFixed(0)}k` : actualValue.toLocaleString();
5990
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
6112
+ return /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(
5991
6113
  "div",
5992
6114
  {
5993
6115
  className: "flex items-center space-x-2 rounded-lg border border-gray-200/50 px-3 py-1.5 w-[48%] sm:w-[32%] md:w-auto bg-white/80 backdrop-blur-sm shadow-sm hover:shadow-md transition-all",
5994
6116
  children: [
5995
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
6117
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
5996
6118
  "span",
5997
6119
  {
5998
6120
  className: "inline-block w-[12px] h-[12px] rounded-full shrink-0 border-2 border-white/50",
5999
6121
  style: { backgroundColor: d.color }
6000
6122
  }
6001
6123
  ),
6002
- /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "min-w-0 flex-1", children: [
6003
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { className: "text-gray-900 text-[11px] md:text-[13px] font-semibold block truncate leading-tight", children: d[dataLabel] }),
6004
- /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex items-center gap-1 text-xs text-gray-600 font-medium", children: [
6005
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { children: displayValue }),
6006
- /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("span", { children: [
6124
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "min-w-0 flex-1", children: [
6125
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("span", { className: "text-gray-900 text-[11px] md:text-[13px] font-semibold block truncate leading-tight", children: d[dataLabel] }),
6126
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "flex items-center gap-1 text-xs text-gray-600 font-medium", children: [
6127
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("span", { children: displayValue }),
6128
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("span", { children: [
6007
6129
  (actualValue / total * 100).toFixed(1),
6008
6130
  "%"
6009
6131
  ] }),
6010
- d.isBoosted && /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { className: "text-[9px] px-1 py-0.5 bg-blue-100 text-blue-700 rounded-full", children: "min" })
6132
+ d.isBoosted && /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("span", { className: "text-[9px] px-1 py-0.5 bg-blue-100 text-blue-700 rounded-full", children: "min" })
6011
6133
  ] })
6012
6134
  ] })
6013
6135
  ]
@@ -6018,26 +6140,26 @@ var DonutChart = ({
6018
6140
  }, [chartData, data, dataLabel, dataKey, total, showLegends]);
6019
6141
  if (!mounted) return null;
6020
6142
  if (effectiveLoading || data.length === 0) {
6021
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
6143
+ return /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(
6022
6144
  "div",
6023
6145
  {
6024
6146
  className: `relative flex flex-col items-center w-full h-[300px] md:h-[400px] bg-gradient-to-br from-gray-50 to-gray-100 rounded-xl p-6 ${className}`,
6025
6147
  style,
6026
6148
  children: [
6027
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "absolute inset-0 bg-gradient-to-r from-transparent via-white/60 to-transparent animate-shimmer rounded-xl" }),
6028
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "mt-6 text-center", children: /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "inline-flex items-center space-x-2 bg-white/80 px-6 py-2 rounded-full backdrop-blur-sm border border-gray-200 shadow-lg", children: [
6029
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "w-5 h-5 border-2 border-gray-300 border-t-blue-400 rounded-full animate-spin" }),
6030
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { className: "text-sm font-medium text-gray-600 bg-gradient-to-r from-gray-300 bg-clip-text animate-pulse", children: "Loading chart data..." })
6149
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "absolute inset-0 bg-gradient-to-r from-transparent via-white/60 to-transparent animate-shimmer rounded-xl" }),
6150
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "mt-6 text-center", children: /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "inline-flex items-center space-x-2 bg-white/80 px-6 py-2 rounded-full backdrop-blur-sm border border-gray-200 shadow-lg", children: [
6151
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "w-5 h-5 border-2 border-gray-300 border-t-blue-400 rounded-full animate-spin" }),
6152
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("span", { className: "text-sm font-medium text-gray-600 bg-gradient-to-r from-gray-300 bg-clip-text animate-pulse", children: "Loading chart data..." })
6031
6153
  ] }) }),
6032
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "flex flex-wrap justify-center gap-3 mt-8 w-full max-w-4xl", children: [...Array(18)].map((_, idx) => /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
6154
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "flex flex-wrap justify-center gap-3 mt-8 w-full max-w-4xl", children: [...Array(18)].map((_, idx) => /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(
6033
6155
  "div",
6034
6156
  {
6035
6157
  className: `h-10 w-[48%] sm:w-[32%] md:w-32 rounded-xl bg-gradient-to-r from-gray-200 via-gray-300/50 to-gray-200 p-3 flex items-center space-x-3 animate-slide-up stagger-${idx} shadow-sm border border-gray-200/50`,
6036
6158
  children: [
6037
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "w-4 h-4 rounded-full bg-gradient-to-r from-blue-300 to-purple-300 animate-pulse" }),
6038
- /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex-1 space-y-1", children: [
6039
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "h-3 w-20 bg-gray-300 rounded animate-pulse" }),
6040
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "h-2.5 w-16 bg-gray-200/60 rounded animate-pulse-delayed" })
6159
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "w-4 h-4 rounded-full bg-gradient-to-r from-blue-300 to-purple-300 animate-pulse" }),
6160
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "flex-1 space-y-1", children: [
6161
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "h-3 w-20 bg-gray-300 rounded animate-pulse" }),
6162
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "h-2.5 w-16 bg-gray-200/60 rounded animate-pulse-delayed" })
6041
6163
  ] })
6042
6164
  ]
6043
6165
  },
@@ -6050,10 +6172,10 @@ var DonutChart = ({
6050
6172
  const { inner, outer } = getDynamicRadius();
6051
6173
  const innerRadius = inner;
6052
6174
  const outerRadius = outer;
6053
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: `relative flex flex-col items-center ${className}`, style, children: [
6054
- /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "relative w-full md:w-[75%] h-[280px] md:h-[380px] flex items-center justify-center mb-2", children: [
6055
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_recharts2.ResponsiveContainer, { width: "100%", height: "100%", children: /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(import_recharts2.PieChart, { children: [
6056
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
6175
+ return /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: `relative flex flex-col items-center ${className}`, style, children: [
6176
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "relative w-full md:w-[75%] h-[280px] md:h-[380px] flex items-center justify-center mb-2", children: [
6177
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_recharts2.ResponsiveContainer, { width: "100%", height: "100%", children: /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(import_recharts2.PieChart, { children: [
6178
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
6057
6179
  import_recharts2.Pie,
6058
6180
  {
6059
6181
  data: chartData,
@@ -6066,7 +6188,7 @@ var DonutChart = ({
6066
6188
  isAnimationActive: true,
6067
6189
  animationDuration: 800,
6068
6190
  minAngle: 3,
6069
- children: chartData.map((entry, index) => /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
6191
+ children: chartData.map((entry, index) => /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
6070
6192
  import_recharts2.Cell,
6071
6193
  {
6072
6194
  fill: entry.color,
@@ -6077,7 +6199,7 @@ var DonutChart = ({
6077
6199
  ))
6078
6200
  }
6079
6201
  ),
6080
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
6202
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
6081
6203
  import_recharts2.Tooltip,
6082
6204
  {
6083
6205
  formatter: (value, name, payload) => {
@@ -6100,9 +6222,9 @@ var DonutChart = ({
6100
6222
  }
6101
6223
  )
6102
6224
  ] }) }),
6103
- total > 0 && /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: `absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 text-center pointer-events-none ${forceMobile ? "text-xl px-2" : "text-3xl px-4"} font-bold bg-white/90 backdrop-blur-sm rounded-full py-1 shadow-lg`, children: /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "text-[#1f2937] leading-tight", children: [
6225
+ total > 0 && /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: `absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 text-center pointer-events-none ${forceMobile ? "text-xl px-2" : "text-3xl px-4"} font-bold bg-white/90 backdrop-blur-sm rounded-full py-1 shadow-lg`, children: /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "text-[#1f2937] leading-tight", children: [
6104
6226
  formattedTotal,
6105
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { className: "text-sm md:text-base font-normal text-gray-600 block md:inline-block md:ml-1", children: "total" })
6227
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("span", { className: "text-sm md:text-base font-normal text-gray-600 block md:inline-block md:ml-1", children: "total" })
6106
6228
  ] }) })
6107
6229
  ] }),
6108
6230
  renderLegends
@@ -6111,10 +6233,10 @@ var DonutChart = ({
6111
6233
  var PieChart_default = import_react36.default.memo(DonutChart);
6112
6234
 
6113
6235
  // src/components/Blocks/EmailComposer.tsx
6114
- var import_jsx_runtime69 = require("react/jsx-runtime");
6236
+ var import_jsx_runtime70 = require("react/jsx-runtime");
6115
6237
  function EmailComposer({ className, style, to, setTo, showCc, setShowCc, showBcc, setShowBcc, cc, setCc, bcc, setBcc, subject, setSubject, body, setBody }) {
6116
- return /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className, style, children: /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "border rounded-md shadow bg-[#fff] p-4 mx-auto z-[50] relative", children: [
6117
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "mb-3", children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
6238
+ return /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("div", { className, style, children: /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)("div", { className: "border rounded-md shadow bg-[#fff] p-4 mx-auto z-[50] relative", children: [
6239
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("div", { className: "mb-3", children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
6118
6240
  "input",
6119
6241
  {
6120
6242
  type: "email",
@@ -6123,8 +6245,8 @@ function EmailComposer({ className, style, to, setTo, showCc, setShowCc, showBcc
6123
6245
  required: true
6124
6246
  }
6125
6247
  ) }),
6126
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "mb-3", children: /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "flex items-center gap-2", children: [
6127
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
6248
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("div", { className: "mb-3", children: /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)("div", { className: "flex items-center gap-2", children: [
6249
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
6128
6250
  "input",
6129
6251
  {
6130
6252
  type: "email",
@@ -6135,7 +6257,7 @@ function EmailComposer({ className, style, to, setTo, showCc, setShowCc, showBcc
6135
6257
  required: true
6136
6258
  }
6137
6259
  ),
6138
- !showCc && /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
6260
+ !showCc && /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
6139
6261
  "button",
6140
6262
  {
6141
6263
  onClick: () => setShowCc?.(true),
@@ -6143,7 +6265,7 @@ function EmailComposer({ className, style, to, setTo, showCc, setShowCc, showBcc
6143
6265
  children: "Cc"
6144
6266
  }
6145
6267
  ),
6146
- !showBcc && /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
6268
+ !showBcc && /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
6147
6269
  "button",
6148
6270
  {
6149
6271
  onClick: () => setShowBcc?.(true),
@@ -6152,7 +6274,7 @@ function EmailComposer({ className, style, to, setTo, showCc, setShowCc, showBcc
6152
6274
  }
6153
6275
  )
6154
6276
  ] }) }),
6155
- showCc && /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "mb-3", children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
6277
+ showCc && /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("div", { className: "mb-3", children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
6156
6278
  "input",
6157
6279
  {
6158
6280
  type: "text",
@@ -6162,7 +6284,7 @@ function EmailComposer({ className, style, to, setTo, showCc, setShowCc, showBcc
6162
6284
  className: "w-full flex-1 border-2 rounded-md h-[40px] px-3 focus:outline-none border-[#E9E9E9] text-[#383838]"
6163
6285
  }
6164
6286
  ) }),
6165
- showBcc && /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "mb-3", children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
6287
+ showBcc && /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("div", { className: "mb-3", children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
6166
6288
  "input",
6167
6289
  {
6168
6290
  type: "text",
@@ -6172,7 +6294,7 @@ function EmailComposer({ className, style, to, setTo, showCc, setShowCc, showBcc
6172
6294
  className: "w-full flex-1 border-2 rounded-md h-[40px] px-3 focus:outline-none border-[#E9E9E9] text-[#383838]"
6173
6295
  }
6174
6296
  ) }),
6175
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "mb-3", children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
6297
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("div", { className: "mb-3", children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
6176
6298
  "input",
6177
6299
  {
6178
6300
  type: "text",
@@ -6182,11 +6304,11 @@ function EmailComposer({ className, style, to, setTo, showCc, setShowCc, showBcc
6182
6304
  className: "w-full flex-1 border-2 rounded-md h-[40px] px-3 focus:outline-none border-[#E9E9E9] text-[#383838]"
6183
6305
  }
6184
6306
  ) }),
6185
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "mb-4", children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(MyEditor, { value: body, onChange: setBody }) }),
6186
- /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "flex justify-end gap-2", children: [
6187
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("button", { className: "px-4 py-2 rounded-md text-gray-600 hover:bg-gray-100", children: "Discard" }),
6188
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("button", { className: "px-4 py-2 rounded-md border text-[#12715B] border-[#12715B]", children: "Reset" }),
6189
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("button", { className: "px-4 py-2 rounded-md bg-[#12715B] text-white", children: "Send" })
6307
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("div", { className: "mb-4", children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(MyEditor, { value: body, onChange: setBody }) }),
6308
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)("div", { className: "flex justify-end gap-2", children: [
6309
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("button", { className: "px-4 py-2 rounded-md text-gray-600 hover:bg-gray-100", children: "Discard" }),
6310
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("button", { className: "px-4 py-2 rounded-md border text-[#12715B] border-[#12715B]", children: "Reset" }),
6311
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("button", { className: "px-4 py-2 rounded-md bg-[#12715B] text-white", children: "Send" })
6190
6312
  ] })
6191
6313
  ] }) });
6192
6314
  }
@@ -6194,10 +6316,10 @@ function EmailComposer({ className, style, to, setTo, showCc, setShowCc, showBcc
6194
6316
  // src/components/ui/sonner.tsx
6195
6317
  var import_next_themes = require("next-themes");
6196
6318
  var import_sonner2 = require("sonner");
6197
- var import_jsx_runtime70 = require("react/jsx-runtime");
6319
+ var import_jsx_runtime71 = require("react/jsx-runtime");
6198
6320
  var Toaster = ({ ...props }) => {
6199
6321
  const { theme = "system" } = (0, import_next_themes.useTheme)();
6200
- return /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
6322
+ return /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
6201
6323
  import_sonner2.Toaster,
6202
6324
  {
6203
6325
  theme,