@datatechsolutions/ui 2.8.2 → 2.8.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -9641,8 +9641,8 @@ var ACCENT_MAP = {
9641
9641
  icon: "text-amber-500 dark:text-amber-400"
9642
9642
  },
9643
9643
  "building-storefront": {
9644
- container: "bg-blue-50/80 dark:bg-blue-900/30 border-blue-100/50 dark:border-blue-800/30",
9645
- icon: "text-blue-500 dark:text-blue-400"
9644
+ container: "bg-amber-50/80 dark:bg-amber-900/30 border-amber-100/50 dark:border-amber-800/30",
9645
+ icon: "text-amber-600 dark:text-amber-400"
9646
9646
  },
9647
9647
  "shopping-bag": {
9648
9648
  container: "bg-rose-50/80 dark:bg-rose-900/30 border-rose-100/50 dark:border-rose-800/30",
@@ -10169,6 +10169,64 @@ function SettingsDialog({
10169
10169
  }
10170
10170
  );
10171
10171
  }
10172
+ function GlassDetailModal({
10173
+ open,
10174
+ onClose,
10175
+ gradient,
10176
+ icon,
10177
+ label,
10178
+ title,
10179
+ subtitle,
10180
+ headerActions,
10181
+ sections,
10182
+ defaultSection,
10183
+ maxWidth = "5xl",
10184
+ footer
10185
+ }) {
10186
+ const [activeSection, setActiveSection] = React12.useState(
10187
+ defaultSection ?? sections[0]?.id ?? ""
10188
+ );
10189
+ const activeContent = sections.find((s2) => s2.id === activeSection)?.content;
10190
+ return /* @__PURE__ */ jsxRuntime.jsx(
10191
+ GlassModalShell,
10192
+ {
10193
+ open,
10194
+ onClose,
10195
+ gradient,
10196
+ icon,
10197
+ label,
10198
+ title,
10199
+ subtitle,
10200
+ headerActions,
10201
+ maxWidth,
10202
+ footer,
10203
+ children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex min-h-[50vh]", children: [
10204
+ /* @__PURE__ */ jsxRuntime.jsx("nav", { className: "w-48 shrink-0 border-r border-white/10 pr-4", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-0.5", children: sections.map((section) => {
10205
+ const isActive = section.id === activeSection;
10206
+ return /* @__PURE__ */ jsxRuntime.jsxs(
10207
+ "button",
10208
+ {
10209
+ type: "button",
10210
+ onClick: () => setActiveSection(section.id),
10211
+ className: `
10212
+ flex w-full items-center gap-2.5 rounded-lg px-3 py-2 text-left text-[13px]
10213
+ transition-all duration-150
10214
+ ${isActive ? "bg-white/10 text-white font-medium" : "text-slate-400 hover:bg-white/5 hover:text-slate-200"}
10215
+ `,
10216
+ children: [
10217
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: `shrink-0 ${isActive ? "text-blue-400" : "text-slate-500"}`, children: section.icon }),
10218
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex-1 truncate", children: section.label }),
10219
+ section.badge
10220
+ ]
10221
+ },
10222
+ section.id
10223
+ );
10224
+ }) }) }),
10225
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex-1 overflow-y-auto pl-6", children: activeContent })
10226
+ ] })
10227
+ }
10228
+ );
10229
+ }
10172
10230
  function Fieldset2({
10173
10231
  className,
10174
10232
  ...props
@@ -17461,6 +17519,7 @@ exports.FormTextarea = FormTextarea;
17461
17519
  exports.FormToggle = FormToggle;
17462
17520
  exports.GeoMapCanvas = GeoMapCanvas;
17463
17521
  exports.GeoMapLegend = GeoMapLegend;
17522
+ exports.GlassDetailModal = GlassDetailModal;
17464
17523
  exports.GlassFormModal = GlassFormModal;
17465
17524
  exports.GlassModal = GlassModal;
17466
17525
  exports.GlassModalShell = GlassModalShell;
@@ -17674,5 +17733,5 @@ exports.useGeoMapState = useGeoMapState;
17674
17733
  exports.useNotifications = useNotifications;
17675
17734
  exports.usePlatformShellStore = usePlatformShellStore;
17676
17735
  exports.usePullToRefresh = usePullToRefresh;
17677
- //# sourceMappingURL=chunk-EBSYPO4E.js.map
17678
- //# sourceMappingURL=chunk-EBSYPO4E.js.map
17736
+ //# sourceMappingURL=chunk-Q2O7XJN5.js.map
17737
+ //# sourceMappingURL=chunk-Q2O7XJN5.js.map