@nswds/app 1.43.0 → 1.45.0

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
@@ -8,15 +8,16 @@ import * as AvatarPrimitive from '@radix-ui/react-avatar';
8
8
  import * as Headless4 from '@headlessui/react';
9
9
  import { PopoverGroup, Popover as Popover$1, PopoverButton, PopoverPanel } from '@headlessui/react';
10
10
  import * as React16 from 'react';
11
- import React16__default, { forwardRef, useEffect, createContext, useRef, useState, useMemo, useId, useContext, Fragment as Fragment$1, useLayoutEffect, useCallback, useInsertionEffect, createElement, Component } from 'react';
11
+ import React16__default, { forwardRef, useEffect, createContext, useRef, useState, Suspense, useId, useMemo, useContext, Fragment as Fragment$1, useLayoutEffect, useCallback, useInsertionEffect, createElement, Component } from 'react';
12
12
  import Link10 from 'next/link';
13
13
  import * as culori from 'culori';
14
14
  import { Slot } from '@radix-ui/react-slot';
15
- import { usePathname, useRouter } from 'next/navigation';
15
+ import { usePathname, useRouter, useSearchParams } from 'next/navigation';
16
16
  import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
17
17
  import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
18
18
  import { useTheme, ThemeProvider as ThemeProvider$1 } from 'next-themes';
19
19
  import * as TooltipPrimitive from '@radix-ui/react-tooltip';
20
+ import * as ScrollAreaPrimitive from '@radix-ui/react-scroll-area';
20
21
  import Prism from 'prismjs';
21
22
  import 'prismjs/components/prism-bash';
22
23
  import 'prismjs/components/prism-css';
@@ -27,13 +28,13 @@ import 'prismjs/components/prism-tsx';
27
28
  import 'prismjs/components/prism-typescript';
28
29
  import * as SelectPrimitive from '@radix-ui/react-select';
29
30
  import * as PopoverPrimitive from '@radix-ui/react-popover';
31
+ import { useCopyToClipboard } from '@uidotdev/usehooks';
32
+ import { Toaster as Toaster$1, toast } from 'sonner';
30
33
  import * as LabelPrimitive from '@radix-ui/react-label';
31
34
  import * as RadioGroupPrimitive from '@radix-ui/react-radio-group';
32
35
  import { CircleIcon, ChevronLeftIcon, ChevronRightIcon, ChevronDownIcon, ArrowLeft, ArrowRight, MinusIcon } from 'lucide-react';
33
36
  import * as TabsPrimitive2 from '@radix-ui/react-tabs';
34
37
  import * as CollapsiblePrimitive from '@radix-ui/react-collapsible';
35
- import { useCopyToClipboard } from '@uidotdev/usehooks';
36
- import { Toaster as Toaster$1, toast } from 'sonner';
37
38
  import { Command as Command$1 } from 'cmdk';
38
39
  import * as DialogPrimitive from '@radix-ui/react-dialog';
39
40
  import * as ContextMenuPrimitive from '@radix-ui/react-context-menu';
@@ -46,7 +47,6 @@ import * as MenubarPrimitive from '@radix-ui/react-menubar';
46
47
  import * as NavigationMenuPrimitive from '@radix-ui/react-navigation-menu';
47
48
  import * as ProgressPrimitive from '@radix-ui/react-progress';
48
49
  import * as ResizablePrimitive from 'react-resizable-panels';
49
- import * as ScrollAreaPrimitive from '@radix-ui/react-scroll-area';
50
50
  import * as SliderPrimitive from '@radix-ui/react-slider';
51
51
  import * as RechartsPrimitive from 'recharts';
52
52
  import { ResponsiveContainer, AreaChart as AreaChart$1, CartesianGrid, XAxis, Label, YAxis, Tooltip as Tooltip$1, Legend, Area, Dot, Line, BarChart as BarChart$1, Bar, ComposedChart, PieChart, Pie, LineChart as LineChart$1, Sector } from 'recharts';
@@ -194,23 +194,23 @@ var focusInput = [
194
194
  // base
195
195
  "focus:ring-2",
196
196
  // ring color
197
- "focus:ring-blue-200 dark:focus:ring-blue-700/30",
197
+ "focus:ring-primary-200 dark:focus:ring-primary-700/30",
198
198
  // border color
199
- "focus:border-blue-500 dark:focus:border-blue-700"
199
+ "focus:border-primary-500 dark:focus:border-primary-700"
200
200
  ];
201
201
  var hasErrorInput = [
202
202
  // base
203
203
  "ring-2",
204
204
  // border color
205
- "border-red-500 dark:border-red-700",
205
+ "border-danger-500 dark:border-danger-700",
206
206
  // ring color
207
- "ring-red-200 dark:ring-red-700/30"
207
+ "ring-danger-200 dark:ring-danger-700/30"
208
208
  ];
209
209
  var focusRing = [
210
210
  // base
211
211
  "outline outline-offset-2 outline-0 focus-visible:outline-2",
212
212
  // outline color
213
- "outline-blue-500 dark:outline-blue-500"
213
+ "outline-primary-500 dark:outline-primary-500"
214
214
  ];
215
215
  function Accordion({ ...props }) {
216
216
  return /* @__PURE__ */ jsx(AccordionPrimitive.Root, { "data-slot": "accordion", ...props });
@@ -223,10 +223,7 @@ function AccordionItem({
223
223
  AccordionPrimitive.Item,
224
224
  {
225
225
  "data-slot": "accordion-item",
226
- className: cn(
227
- "border-nsw-grey-200 dark:border-nsw-grey-200/20 border-b last:border-b-0",
228
- className
229
- ),
226
+ className: cn("border-grey-200 dark:border-grey-200/20 border-b last:border-b-0", className),
230
227
  ...props
231
228
  }
232
229
  );
@@ -243,17 +240,17 @@ function AccordionTrigger({
243
240
  className: cn(
244
241
  [
245
242
  // Base
246
- "bg-nsw-grey-50 flex flex-1 cursor-pointer items-start justify-between gap-4 p-4 text-left text-base font-medium transition-all",
243
+ "bg-grey-50 flex flex-1 cursor-pointer items-start justify-between gap-4 p-4 text-left text-base font-medium transition-all",
247
244
  // Focus
248
245
  "focus-visible:border-ring focus-visible:ring-ring/50 outline-none focus-visible:ring-[2px]",
249
246
  // State
250
- "hover:bg-nsw-grey-100 hover:text-nsw-grey-850 [&[data-state=open]>svg]:rotate-180",
247
+ "hover:bg-grey-100 hover:text-grey-850 [&[data-state=open]>svg]:rotate-180",
251
248
  // Disabled
252
249
  "data-disabled:pointer-events-none data-disabled:opacity-50",
253
250
  // Dark mode
254
- "dark:bg-nsw-grey-800 dark:hover:bg-nsw-grey-700 dark:text-white",
251
+ "dark:bg-grey-800 dark:hover:bg-grey-700 dark:text-white",
255
252
  // Dark mode hover
256
- "dark:hover:bg-nsw-grey-700 dark:hover:text-white [&[data-state=open]>svg]:rotate-180"
253
+ "dark:hover:bg-grey-700 dark:hover:text-white [&[data-state=open]>svg]:rotate-180"
257
254
  ],
258
255
  className
259
256
  ),
@@ -280,6 +277,9 @@ function AccordionContent({
280
277
  }
281
278
  );
282
279
  }
280
+ function AuthLayout({ children }) {
281
+ return /* @__PURE__ */ jsx("main", { className: "flex min-h-dvh flex-col p-2", children: /* @__PURE__ */ jsx("div", { className: "lg:ring-grey-950/5 dark:lg:bg-grey-900 flex grow items-center justify-center p-6 lg:rounded-sm lg:bg-white lg:p-10 lg:shadow-xs lg:ring-1 dark:lg:ring-white/10", children }) });
282
+ }
283
283
  var alertVariants = cva(
284
284
  "relative w-full rounded-lg border px-4 py-3 text-sm grid has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] grid-cols-[0_1fr] has-[>svg]:gap-x-3 gap-y-0.5 items-start [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current",
285
285
  {
@@ -1898,7 +1898,7 @@ function Card({ className, ...props }) {
1898
1898
  {
1899
1899
  "data-slot": "card",
1900
1900
  className: cn(
1901
- "border-nsw-grey-200 dark:border-nsw-grey-50 bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6",
1901
+ "border-grey-200 dark:border-grey-50 bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6",
1902
1902
  className
1903
1903
  ),
1904
1904
  ...props
@@ -1993,640 +1993,73 @@ function Checkbox({ className, ...props }) {
1993
1993
  }
1994
1994
  );
1995
1995
  }
1996
- var Social = {
1997
- Facebook: (props) => /* @__PURE__ */ jsx("svg", { fill: "currentColor", viewBox: "0 0 24 24", "data-slot": "icon", ...props, children: /* @__PURE__ */ jsx(
1998
- "path",
1999
- {
2000
- fillRule: "evenodd",
2001
- d: "M22 12c0-5.523-4.477-10-10-10S2 6.477 2 12c0 4.991 3.657 9.128 8.438 9.878v-6.987h-2.54V12h2.54V9.797c0-2.506 1.492-3.89 3.777-3.89 1.094 0 2.238.195 2.238.195v2.46h-1.26c-1.243 0-1.63.771-1.63 1.562V12h2.773l-.443 2.89h-2.33v6.988C18.343 21.128 22 16.991 22 12z",
2002
- clipRule: "evenodd"
2003
- }
2004
- ) }),
2005
- Github: (props) => /* @__PURE__ */ jsx("svg", { fill: "currentColor", viewBox: "0 0 24 24", "data-slot": "icon", ...props, children: /* @__PURE__ */ jsx(
2006
- "path",
2007
- {
2008
- fillRule: "evenodd",
2009
- d: "M12 2C6.477 2 2 6.484 2 12.017c0 4.425 2.865 8.18 6.839 9.504.5.092.682-.217.682-.483 0-.237-.008-.868-.013-1.703-2.782.605-3.369-1.343-3.369-1.343-.454-1.158-1.11-1.466-1.11-1.466-.908-.62.069-.608.069-.608 1.003.07 1.531 1.032 1.531 1.032.892 1.53 2.341 1.088 2.91.832.092-.647.35-1.088.636-1.338-2.22-.253-4.555-1.113-4.555-4.951 0-1.093.39-1.988 1.029-2.688-.103-.253-.446-1.272.098-2.65 0 0 .84-.27 2.75 1.026A9.564 9.564 0 0112 6.844c.85.004 1.705.115 2.504.337 1.909-1.296 2.747-1.027 2.747-1.027.546 1.379.202 2.398.1 2.651.64.7 1.028 1.595 1.028 2.688 0 3.848-2.339 4.695-4.566 4.943.359.309.678.92.678 1.855 0 1.338-.012 2.419-.012 2.747 0 .268.18.58.688.482A10.019 10.019 0 0022 12.017C22 6.484 17.522 2 12 2z",
2010
- clipRule: "evenodd"
2011
- }
2012
- ) }),
2013
- Instagram: (props) => /* @__PURE__ */ jsx("svg", { fill: "currentColor", viewBox: "0 0 24 24", "data-slot": "icon", ...props, children: /* @__PURE__ */ jsx(
2014
- "path",
2015
- {
2016
- fillRule: "evenodd",
2017
- d: "M12.315 2c2.43 0 2.784.013 3.808.06 1.064.049 1.791.218 2.427.465a4.902 4.902 0 011.772 1.153 4.902 4.902 0 011.153 1.772c.247.636.416 1.363.465 2.427.048 1.067.06 1.407.06 4.123v.08c0 2.643-.012 2.987-.06 4.043-.049 1.064-.218 1.791-.465 2.427a4.902 4.902 0 01-1.153 1.772 4.902 4.902 0 01-1.772 1.153c-.636.247-1.363.416-2.427.465-1.067.048-1.407.06-4.123.06h-.08c-2.643 0-2.987-.012-4.043-.06-1.064-.049-1.791-.218-2.427-.465a4.902 4.902 0 01-1.772-1.153 4.902 4.902 0 01-1.153-1.772c-.247-.636-.416-1.363-.465-2.427-.047-1.024-.06-1.379-.06-3.808v-.63c0-2.43.013-2.784.06-3.808.049-1.064.218-1.791.465-2.427a4.902 4.902 0 011.153-1.772A4.902 4.902 0 015.45 2.525c.636-.247 1.363-.416 2.427-.465C8.901 2.013 9.256 2 11.685 2h.63zm-.081 1.802h-.468c-2.456 0-2.784.011-3.807.058-.975.045-1.504.207-1.857.344-.467.182-.8.398-1.15.748-.35.35-.566.683-.748 1.15-.137.353-.3.882-.344 1.857-.047 1.023-.058 1.351-.058 3.807v.468c0 2.456.011 2.784.058 3.807.045.975.207 1.504.344 1.857.182.466.399.8.748 1.15.35.35.683.566 1.15.748.353.137.882.3 1.857.344 1.054.048 1.37.058 4.041.058h.08c2.597 0 2.917-.01 3.96-.058.976-.045 1.505-.207 1.858-.344.466-.182.8-.398 1.15-.748.35-.35.566-.683.748-1.15.137-.353.3-.882.344-1.857.048-1.055.058-1.37.058-4.041v-.08c0-2.597-.01-2.917-.058-3.96-.045-.976-.207-1.505-.344-1.858a3.097 3.097 0 00-.748-1.15 3.098 3.098 0 00-1.15-.748c-.353-.137-.882-.3-1.857-.344-1.023-.047-1.351-.058-3.807-.058zM12 6.865a5.135 5.135 0 110 10.27 5.135 5.135 0 010-10.27zm0 1.802a3.333 3.333 0 100 6.666 3.333 3.333 0 000-6.666zm5.338-3.205a1.2 1.2 0 110 2.4 1.2 1.2 0 010-2.4z",
2018
- clipRule: "evenodd"
2019
- }
2020
- ) }),
2021
- LinkedIn: (props) => /* @__PURE__ */ jsx("svg", { fill: "currentColor", viewBox: "0 0 24 24", "data-slot": "icon", ...props, children: /* @__PURE__ */ jsx("path", { d: "M19 3A2 2 0 0 1 21 5V19A2 2 0 0 1 19 21H5A2 2 0 0 1 3 19V5A2 2 0 0 1 5 3H19M18.5 18.5V13.2A3.26 3.26 0 0 0 15.24 9.94C14.39 9.94 13.4 10.46 12.92 11.24V10.13H10.13V18.5H12.92V13.57C12.92 12.8 13.54 12.17 14.31 12.17A1.4 1.4 0 0 1 15.71 13.57V18.5H18.5M6.88 8.56A1.68 1.68 0 0 0 8.56 6.88C8.56 5.95 7.81 5.19 6.88 5.19A1.69 1.69 0 0 0 5.19 6.88C5.19 7.81 5.95 8.56 6.88 8.56M8.27 18.5V10.13H5.5V18.5H8.27Z" }) }),
2022
- X: (props) => /* @__PURE__ */ jsx("svg", { fill: "currentColor", viewBox: "0 0 24 24", "data-slot": "icon", ...props, children: /* @__PURE__ */ jsx("path", { d: "M13.6823 10.6218L20.2391 3H18.6854L12.9921 9.61788L8.44486 3H3.2002L10.0765 13.0074L3.2002 21H4.75404L10.7663 14.0113L15.5685 21H20.8131L13.6819 10.6218H13.6823ZM11.5541 13.0956L10.8574 12.0991L5.31391 4.16971H7.70053L12.1742 10.5689L12.8709 11.5655L18.6861 19.8835H16.2995L11.5541 13.096V13.0956Z" }) }),
2023
- YouTube: (props) => /* @__PURE__ */ jsx("svg", { fill: "currentColor", viewBox: "0 0 24 24", "data-slot": "icon", ...props, children: /* @__PURE__ */ jsx(
2024
- "path",
2025
- {
2026
- fillRule: "evenodd",
2027
- d: "M19.812 5.418c.861.23 1.538.907 1.768 1.768C21.998 8.746 22 12 22 12s0 3.255-.418 4.814a2.504 2.504 0 0 1-1.768 1.768c-1.56.419-7.814.419-7.814.419s-6.255 0-7.814-.419a2.505 2.505 0 0 1-1.768-1.768C2 15.255 2 12 2 12s0-3.255.417-4.814a2.507 2.507 0 0 1 1.768-1.768C5.744 5 11.998 5 11.998 5s6.255 0 7.814.418ZM15.194 12 10 15V9l5.194 3Z",
2028
- clipRule: "evenodd"
2029
- }
2030
- ) })
2031
- };
2032
- function TooltipProvider({
2033
- delayDuration,
2034
- ...props
2035
- }) {
2036
- return /* @__PURE__ */ jsx(
2037
- TooltipPrimitive.Provider,
2038
- {
2039
- "data-slot": "tooltip-provider",
2040
- delayDuration,
2041
- ...props
2042
- }
2043
- );
2044
- }
2045
- function Tooltip({ ...props }) {
2046
- return /* @__PURE__ */ jsx(TooltipPrimitive.Root, { "data-slot": "tooltip", ...props });
2047
- }
2048
- function TooltipTrigger({ ...props }) {
2049
- return /* @__PURE__ */ jsx(TooltipPrimitive.Trigger, { "data-slot": "tooltip-trigger", ...props });
2050
- }
2051
- function TooltipContent({
2052
- className,
2053
- sideOffset = 0,
2054
- children,
2055
- ...props
2056
- }) {
2057
- return /* @__PURE__ */ jsx(TooltipPrimitive.Portal, { children: /* @__PURE__ */ jsxs(
2058
- TooltipPrimitive.Content,
2059
- {
2060
- "data-slot": "tooltip-content",
2061
- sideOffset,
2062
- className: cn(
2063
- "bg-nsw-grey-800 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 text-white",
2064
- className
2065
- ),
2066
- ...props,
2067
- children: [
2068
- children,
2069
- /* @__PURE__ */ jsx(TooltipPrimitive.Arrow, { className: "bg-nsw-grey-800 fill-nsw-grey-800 z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]" })
2070
- ]
2071
- }
2072
- ) });
2073
- }
2074
- function PreWithCopy(props) {
2075
- const textInput = useRef(null);
2076
- const [isJustCopied, setJustCopied] = useState(false);
2077
- function handleCopy() {
2078
- if (textInput.current) {
2079
- navigator.clipboard.writeText(textInput.current.textContent || "");
2080
- setJustCopied(true);
2081
- setTimeout(() => setJustCopied(false), 2e3);
2082
- }
2083
- }
2084
- return /* @__PURE__ */ jsxs("div", { className: "group relative", children: [
2085
- /* @__PURE__ */ jsx(
2086
- "pre",
2087
- {
2088
- ref: textInput,
2089
- ...props,
2090
- className: twMerge("max-h-[40rem] overflow-auto", props.className)
2091
- }
2092
- ),
2093
- /* @__PURE__ */ jsxs(
2094
- "button",
2095
- {
2096
- className: "absolute top-2 right-2 m-0.5 inline-flex h-8 items-center justify-center rounded-lg border border-gray-200 bg-white px-2.5 py-2 text-gray-900 opacity-0 transition-opacity group-hover:opacity-100 hover:bg-gray-100 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-400 dark:hover:bg-gray-700",
2097
- "aria-label": "Copy code to clipboard",
2098
- onClick: handleCopy,
2099
- children: [
2100
- /* @__PURE__ */ jsx("span", { className: twMerge(isJustCopied && "hidden"), children: /* @__PURE__ */ jsxs("span", { className: "inline-flex items-center", children: [
2101
- /* @__PURE__ */ jsx(Icons.copy, { className: "me-1.5 size-3" }),
2102
- /* @__PURE__ */ jsx("span", { className: "text-xs font-semibold", children: "Copy code" })
2103
- ] }) }),
2104
- /* @__PURE__ */ jsx("span", { className: twMerge(isJustCopied ? "block" : "hidden"), children: /* @__PURE__ */ jsxs("span", { className: "inline-flex items-center", children: [
2105
- /* @__PURE__ */ jsx(Icons.check, { className: "text-primary-700 dark:text-primary-500 me-1.5 size-3" }),
2106
- /* @__PURE__ */ jsx("span", { className: "text-primary-700 dark:text-primary-500 text-xs font-semibold", children: "Copied" })
2107
- ] }) })
2108
- ]
2109
- }
2110
- )
2111
- ] });
2112
- }
2113
- Prism.manual = true;
2114
- function CodeHighlight({
2115
- code,
2116
- language,
2117
- className,
2118
- withCopy = false,
2119
- ...props
2120
- }) {
2121
- const highlightedCode = Prism.highlight(code.trim(), Prism.languages[language], language);
2122
- const Component2 = withCopy ? PreWithCopy : "pre";
2123
- return /* @__PURE__ */ jsx(Component2, { className: twMerge(`language-${language}`, className), ...props, children: /* @__PURE__ */ jsx(
2124
- "code",
2125
- {
2126
- className: `language-${language}`,
2127
- dangerouslySetInnerHTML: { __html: highlightedCode }
2128
- }
2129
- ) });
2130
- }
2131
- function Select({ ...props }) {
2132
- return /* @__PURE__ */ jsx(SelectPrimitive.Root, { "data-slot": "select", ...props });
2133
- }
2134
- function SelectGroup({ ...props }) {
2135
- return /* @__PURE__ */ jsx(SelectPrimitive.Group, { "data-slot": "select-group", ...props });
2136
- }
2137
- function SelectValue({ ...props }) {
2138
- return /* @__PURE__ */ jsx(SelectPrimitive.Value, { "data-slot": "select-value", ...props });
2139
- }
2140
- function SelectTrigger({
2141
- className,
2142
- size = "default",
2143
- children,
2144
- ...props
2145
- }) {
2146
- return /* @__PURE__ */ jsxs(
2147
- SelectPrimitive.Trigger,
2148
- {
2149
- "data-slot": "select-trigger",
2150
- "data-size": size,
2151
- className: cn(
2152
- // Base styles
2153
- "border-grey-600 [&_svg:not([class*='text-'])]:text-grey-600 flex w-full items-center justify-between gap-2 rounded-sm border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
2154
- // Disabled styles
2155
- "disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50",
2156
- // aria-invalid styles
2157
- "aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
2158
- // Focus styles
2159
- "focus:outline-primary-650/70 focus:outline focus:outline-2 focus:outline-offset-2",
2160
- // Placeholder styles
2161
- "data-[placeholder]:text-grey-600",
2162
- // Dark mode styles
2163
- "dark:bg-input/30 dark:hover:bg-input/50",
2164
- // Size styles
2165
- "data-[size=default]:h-12 data-[size=sm]:h-9",
2166
- className
2167
- ),
2168
- ...props,
2169
- children: [
2170
- children,
2171
- /* @__PURE__ */ jsx(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ jsx(Icons.chevron_down, { className: "size-6 opacity-80" }) })
2172
- ]
2173
- }
2174
- );
2175
- }
2176
- function SelectContent({
2177
- className,
2178
- children,
2179
- position = "popper",
2180
- ...props
2181
- }) {
2182
- return /* @__PURE__ */ jsx(SelectPrimitive.Portal, { children: /* @__PURE__ */ jsxs(
2183
- SelectPrimitive.Content,
2184
- {
2185
- "data-slot": "select-content",
2186
- className: cn(
2187
- // Base styles
2188
- "text-grey-800 border-grey-200 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-sm border bg-white shadow-md",
2189
- // State styles
2190
- "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-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",
2191
- position === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",
2192
- className
2193
- ),
2194
- position,
2195
- ...props,
2196
- children: [
2197
- /* @__PURE__ */ jsx(SelectScrollUpButton, {}),
2198
- /* @__PURE__ */ jsx(
2199
- SelectPrimitive.Viewport,
2200
- {
2201
- className: cn(
2202
- "p-1",
2203
- position === "popper" && "h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"
2204
- ),
2205
- children
2206
- }
2207
- ),
2208
- /* @__PURE__ */ jsx(SelectScrollDownButton, {})
2209
- ]
2210
- }
2211
- ) });
2212
- }
2213
- function SelectLabel({ className, ...props }) {
2214
- return /* @__PURE__ */ jsx(
2215
- SelectPrimitive.Label,
2216
- {
2217
- "data-slot": "select-label",
2218
- className: cn("text-grey-600 px-2 py-1.5 text-xs", className),
2219
- ...props
2220
- }
2221
- );
2222
- }
2223
- function SelectItem({
2224
- className,
2225
- children,
2226
- ...props
2227
- }) {
2228
- return /* @__PURE__ */ jsxs(
2229
- SelectPrimitive.Item,
2230
- {
2231
- "data-slot": "select-item",
2232
- className: cn(
2233
- "focus:bg-primary-800/10 focus:text-primary-800 [&_svg:not([class*='text-'])]:text-grey-600 relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none focus:font-bold data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-6 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",
2234
- className
2235
- ),
2236
- ...props,
2237
- children: [
2238
- /* @__PURE__ */ jsx("span", { className: "absolute right-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ jsx(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx(Icons.check, { className: "size-6" }) }) }),
2239
- /* @__PURE__ */ jsx(SelectPrimitive.ItemText, { children })
2240
- ]
2241
- }
2242
- );
2243
- }
2244
- function SelectSeparator({
2245
- className,
2246
- ...props
2247
- }) {
2248
- return /* @__PURE__ */ jsx(
2249
- SelectPrimitive.Separator,
2250
- {
2251
- "data-slot": "select-separator",
2252
- className: cn("bg-primary-800/20 pointer-events-none -mx-1 my-1 h-px", className),
2253
- ...props
2254
- }
2255
- );
2256
- }
2257
- function SelectScrollUpButton({
2258
- className,
2259
- ...props
2260
- }) {
2261
- return /* @__PURE__ */ jsx(
2262
- SelectPrimitive.ScrollUpButton,
2263
- {
2264
- "data-slot": "select-scroll-up-button",
2265
- className: cn("flex cursor-default items-center justify-center py-1", className),
2266
- ...props,
2267
- children: /* @__PURE__ */ jsx(Icons.chevron_up, { className: "size-6" })
2268
- }
2269
- );
2270
- }
2271
- function SelectScrollDownButton({
2272
- className,
2273
- ...props
2274
- }) {
2275
- return /* @__PURE__ */ jsx(
2276
- SelectPrimitive.ScrollDownButton,
2277
- {
2278
- "data-slot": "select-scroll-down-button",
2279
- className: cn("flex cursor-default items-center justify-center py-1", className),
2280
- ...props,
2281
- children: /* @__PURE__ */ jsx(Icons.chevron_down, { className: "size-6" })
2282
- }
2283
- );
2284
- }
2285
- function Popover({ ...props }) {
2286
- return /* @__PURE__ */ jsx(PopoverPrimitive.Root, { "data-slot": "popover", ...props });
2287
- }
2288
- function PopoverTrigger({ ...props }) {
2289
- return /* @__PURE__ */ jsx(PopoverPrimitive.Trigger, { "data-slot": "popover-trigger", ...props });
2290
- }
2291
- function PopoverContent({
2292
- className,
2293
- align = "center",
2294
- sideOffset = 4,
2295
- ...props
2296
- }) {
2297
- return /* @__PURE__ */ jsx(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx(
2298
- PopoverPrimitive.Content,
2299
- {
2300
- "data-slot": "popover-content",
2301
- align,
2302
- sideOffset,
2303
- className: cn(
2304
- [
2305
- // Base
2306
- "bg-background text-foreground z-50 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border p-4 shadow-md outline-hidden",
2307
- // Open
2308
- "data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
2309
- // Closed
2310
- "data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95",
2311
- // Side
2312
- "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"
2313
- ],
2314
- className
2315
- ),
2316
- ...props
2317
- }
2318
- ) });
2319
- }
2320
- function PopoverAnchor({ ...props }) {
2321
- return /* @__PURE__ */ jsx(PopoverPrimitive.Anchor, { "data-slot": "popover-anchor", ...props });
2322
- }
2323
- function Label3({ className, ...props }) {
2324
- return /* @__PURE__ */ jsx(
2325
- LabelPrimitive.Root,
2326
- {
2327
- "data-slot": "label",
2328
- className: cn(
2329
- // Base
2330
- "flex items-center gap-2",
2331
- "text-grey-900 text-base/6 font-semibold select-none",
2332
- // Dark mode
2333
- "dark:group-data-[disabled=true]:text-grey-400 dark:text-white",
2334
- // Disabled state
2335
- "group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",
2336
- className
2337
- ),
2338
- ...props
2339
- }
2340
- );
2341
- }
2342
- function RadioGroup2({
2343
- className,
2344
- ...props
2345
- }) {
2346
- return /* @__PURE__ */ jsx(
2347
- RadioGroupPrimitive.Root,
2348
- {
2349
- "data-slot": "radio-group",
2350
- className: cn("grid gap-3", className),
2351
- ...props
2352
- }
2353
- );
2354
- }
2355
- function RadioGroupItem({
2356
- className,
2357
- ...props
2358
- }) {
2359
- return /* @__PURE__ */ jsx(
2360
- RadioGroupPrimitive.Item,
2361
- {
2362
- "data-slot": "radio-group-item",
2363
- className: cn(
2364
- // Base styles
2365
- "border-primary-800 text-primary-800 aspect-square size-8 shrink-0 rounded-full border shadow-xs transition-[color,box-shadow] outline-none",
2366
- // Dark mode styles
2367
- "dark:bg-input/30",
2368
- // Focus styles
2369
- "focus:border-grey-600 focus:ring-primary-650/70 ring-offset-white focus:ring-2 focus:ring-offset-2 focus:outline-none",
2370
- // aria-invalid styles
2371
- "aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
2372
- // Disabled styles
2373
- "disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50",
2374
- className
2375
- ),
2376
- ...props,
2377
- children: /* @__PURE__ */ jsx(
2378
- RadioGroupPrimitive.Indicator,
2379
- {
2380
- "data-slot": "radio-group-indicator",
2381
- className: cn(
2382
- // Base styles
2383
- "relative flex items-center justify-center"
2384
- ),
2385
- children: /* @__PURE__ */ jsx(CircleIcon, { className: "fill-primary-800 absolute top-1/2 left-1/2 size-6 -translate-x-1/2 -translate-y-1/2" })
2386
- }
2387
- )
2388
- }
2389
- );
2390
- }
2391
- function SegmentedControl({
2392
- className,
2393
- ...props
2394
- }) {
2395
- return /* @__PURE__ */ jsx(
2396
- TabsPrimitive2.Root,
2397
- {
2398
- "data-slot": "tabs",
2399
- className: cn("flex flex-col gap-2", className),
2400
- ...props
2401
- }
2402
- );
2403
- }
2404
- function SegmentedControlList({
2405
- className,
2406
- ...props
2407
- }) {
2408
- return /* @__PURE__ */ jsx(
2409
- TabsPrimitive2.List,
2410
- {
2411
- "data-slot": "segmented-control-list",
2412
- className: cn(
2413
- "bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center rounded-lg p-[3px]",
2414
- className
2415
- ),
2416
- ...props
2417
- }
2418
- );
2419
- }
2420
- function SegmentedControlTrigger({
2421
- className,
2422
- ...props
2423
- }) {
2424
- return /* @__PURE__ */ jsx(
2425
- TabsPrimitive2.Trigger,
2426
- {
2427
- "data-slot": "segmented-control-trigger",
2428
- className: cn(
2429
- "data-[state=active]:bg-background dark:data-[state=active]:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 text-foreground dark:text-muted-foreground inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
2430
- className
2431
- ),
2432
- ...props
2433
- }
2434
- );
2435
- }
2436
- var findGreyKey = (themes) => Object.keys(themes).find((k) => k.toLowerCase().includes("grey")) ?? "";
2437
- function ThemeSelector({
2438
- themeCategory,
2439
- setThemeCategory,
2440
- primaryColor,
2441
- setPrimaryColor,
2442
- accentColor,
2443
- setAccentColor,
2444
- greyColor,
2445
- setGreyColor,
2446
- availableAccentColors,
2447
- colorThemes: colorThemes2
2448
- }) {
2449
- const handleCategoryChange = (newCategory) => {
2450
- setThemeCategory(newCategory);
2451
- const availableColors = Object.keys(colorThemes2[newCategory]);
2452
- const neutral = findGreyKey(colorThemes2[newCategory]);
2453
- if (neutral && neutral !== greyColor) {
2454
- setGreyColor(neutral);
2455
- }
2456
- if (availableColors.length > 0) {
2457
- if (availableColors.includes(primaryColor)) {
2458
- const newAccentColor = availableColors.find((color2) => color2 !== primaryColor);
2459
- if (newAccentColor && newAccentColor !== accentColor) {
2460
- setAccentColor(newAccentColor);
2461
- }
2462
- } else {
2463
- setPrimaryColor(availableColors[0]);
2464
- if (availableColors.length > 1) {
2465
- setAccentColor(availableColors[1]);
2466
- }
2467
- }
2468
- }
2469
- };
2470
- const labelStyles = {
2471
- base: [
2472
- // Base
2473
- "group relative flex w-full items-center gap-2 rounded-sm border px-3 py-2",
2474
- // Light mode
2475
- "border-nsw-grey-200 bg-background",
2476
- // Hover
2477
- "hover:bg-primary-800/10 hover:text-foreground",
2478
- // Active
2479
- "[&:has([data-state=checked])]:border-nsw-grey-800",
2480
- // Dark mode
2481
- "",
2482
- // Dark hover
2483
- "dark:hover:bg-white/10",
2484
- // Dark active
2485
- "dark:group-data-[state=checked]:border-nsw-grey-400"
2486
- ],
2487
- label: [
2488
- // Base
2489
- "cursor-pointer flex items-center justify-between",
2490
- // Active
2491
- ""
2492
- ]
2493
- };
2494
- return /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-6", children: [
2495
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-2", children: [
2496
- /* @__PURE__ */ jsx("h3", { className: "font-medium", children: "Theme Category" }),
2497
- /* @__PURE__ */ jsx(
2498
- SegmentedControl,
2499
- {
2500
- value: themeCategory,
2501
- onValueChange: (value) => handleCategoryChange(value),
2502
- children: /* @__PURE__ */ jsxs(SegmentedControlList, { className: "w-full", children: [
2503
- /* @__PURE__ */ jsx(SegmentedControlTrigger, { value: "brand", children: "Brand Colors" }),
2504
- /* @__PURE__ */ jsx(SegmentedControlTrigger, { value: "aboriginal", children: "Aboriginal Colors" })
2505
- ] })
2506
- }
2507
- )
2508
- ] }),
2509
- /* @__PURE__ */ jsxs("div", { className: "grid gap-6", children: [
2510
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-3", children: [
2511
- /* @__PURE__ */ jsx("h3", { className: "font-medium", children: "Primary Color" }),
2512
- /* @__PURE__ */ jsx(
2513
- RadioGroup2,
2514
- {
2515
- value: primaryColor,
2516
- onValueChange: (value) => setPrimaryColor(value),
2517
- className: "grid grid-cols-2 gap-2",
2518
- children: Object.entries(colorThemes2[themeCategory]).map(([key, theme2]) => /* @__PURE__ */ jsxs("div", { className: cn(labelStyles.base, ""), children: [
2519
- /* @__PURE__ */ jsx(RadioGroupItem, { value: key, id: `primary-${key}`, className: "peer sr-only" }),
2520
- /* @__PURE__ */ jsxs(Label3, { htmlFor: `primary-${key}`, className: cn(labelStyles.label, ""), children: [
2521
- /* @__PURE__ */ jsx(
2522
- "div",
2523
- {
2524
- className: "h-5 w-5 flex-none rounded-full",
2525
- style: { backgroundColor: theme2.colors[3].hex }
2526
- }
2527
- ),
2528
- /* @__PURE__ */ jsx("span", { className: "shrink", children: theme2.colors[3].name?.replace(/\b(NSW|0[1-4])\b/g, "").replace(/\s+/g, " ").trim() }),
2529
- /* @__PURE__ */ jsx("span", { className: "absolute inset-0", "aria-hidden": true })
2530
- ] })
2531
- ] }, key))
2532
- }
2533
- )
2534
- ] }),
2535
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-3", children: [
2536
- /* @__PURE__ */ jsx("h3", { className: "font-medium", children: "Accent Color" }),
2537
- /* @__PURE__ */ jsx(
2538
- RadioGroup2,
2539
- {
2540
- value: accentColor,
2541
- onValueChange: (value) => setAccentColor(value),
2542
- className: "grid grid-cols-2 gap-2",
2543
- children: availableAccentColors.map((key) => /* @__PURE__ */ jsxs("div", { className: cn(labelStyles.base, ""), children: [
2544
- /* @__PURE__ */ jsx(RadioGroupItem, { value: key, id: `accent-${key}`, className: "peer sr-only" }),
2545
- /* @__PURE__ */ jsxs(Label3, { htmlFor: `accent-${key}`, className: cn(labelStyles.label, ""), children: [
2546
- /* @__PURE__ */ jsx(
2547
- "div",
2548
- {
2549
- className: "size-5 flex-none rounded-full",
2550
- style: { backgroundColor: colorThemes2[themeCategory][key].colors[2].hex }
2551
- }
2552
- ),
2553
- /* @__PURE__ */ jsx("span", { className: "shrink", children: colorThemes2[themeCategory][key].colors[2].name?.replace(/\b(NSW|0[1-4])\b/g, "").replace(/\s+/g, " ").trim() }),
2554
- /* @__PURE__ */ jsx("span", { className: "absolute inset-0", "aria-hidden": true })
2555
- ] })
2556
- ] }, key))
2557
- }
2558
- )
2559
- ] })
2560
- ] })
2561
- ] });
2562
- }
2563
-
2564
- // src/lib/color-palette.ts
2565
- var brand = {
2566
- grey: [
2567
- oklchConverter("#22272b"),
2568
- oklchConverter("#495054"),
2569
- oklchConverter("#cdd3d6"),
2570
- oklchConverter("#ebebeb")
2571
- ],
2572
- green: [
2573
- oklchConverter("#004000"),
2574
- oklchConverter("#00aa45"),
2575
- oklchConverter("#a8edb3"),
2576
- oklchConverter("#dbfadf")
2577
- ],
2578
- teal: [
2579
- oklchConverter("#0b3f47"),
2580
- oklchConverter("#2e808e"),
2581
- oklchConverter("#8cdbe5"),
2582
- oklchConverter("#d1eeea")
2583
- ],
2584
- blue: [
2585
- oklchConverter("#002664"),
2586
- oklchConverter("#146cfd"),
2587
- oklchConverter("#8ce0ff"),
2588
- oklchConverter("#cbedfd")
2589
- ],
2590
- purple: [
2591
- oklchConverter("#441170"),
2592
- oklchConverter("#8055f1"),
2593
- oklchConverter("#cebfff"),
2594
- oklchConverter("#e6e1fd")
2595
- ],
2596
- fuchsia: [
2597
- oklchConverter("#65004d"),
2598
- oklchConverter("#d912ae"),
2599
- oklchConverter("#f4b5e6"),
2600
- oklchConverter("#fddef2")
2601
- ],
2602
- red: [
2603
- oklchConverter("#630019"),
2604
- oklchConverter("#d7153a"),
2605
- oklchConverter("#ffb8c1"),
2606
- oklchConverter("#ffe6ea")
2607
- ],
2608
- orange: [
2609
- oklchConverter("#941b00"),
2610
- oklchConverter("#f3631b"),
2611
- oklchConverter("#ffce99"),
2612
- oklchConverter("#fdeddf")
2613
- ],
2614
- yellow: [
2615
- oklchConverter("#694800"),
2616
- oklchConverter("#faaf05"),
2617
- oklchConverter("#fde79a"),
2618
- oklchConverter("#fff4cf")
2619
- ],
2620
- brown: [
2621
- oklchConverter("#523719"),
2622
- oklchConverter("#b68d5d"),
2623
- oklchConverter("#e8d0b5"),
2624
- oklchConverter("#ede3d7")
2625
- ]
1996
+
1997
+ // src/lib/color-palette.ts
1998
+ var brand = {
1999
+ grey: [
2000
+ oklchConverter("#22272b"),
2001
+ oklchConverter("#495054"),
2002
+ oklchConverter("#cdd3d6"),
2003
+ oklchConverter("#ebebeb")
2004
+ ],
2005
+ green: [
2006
+ oklchConverter("#004000"),
2007
+ oklchConverter("#00aa45"),
2008
+ oklchConverter("#a8edb3"),
2009
+ oklchConverter("#dbfadf")
2010
+ ],
2011
+ teal: [
2012
+ oklchConverter("#0b3f47"),
2013
+ oklchConverter("#2e808e"),
2014
+ oklchConverter("#8cdbe5"),
2015
+ oklchConverter("#d1eeea")
2016
+ ],
2017
+ blue: [
2018
+ oklchConverter("#002664"),
2019
+ oklchConverter("#146cfd"),
2020
+ oklchConverter("#8ce0ff"),
2021
+ oklchConverter("#cbedfd")
2022
+ ],
2023
+ purple: [
2024
+ oklchConverter("#441170"),
2025
+ oklchConverter("#8055f1"),
2026
+ oklchConverter("#cebfff"),
2027
+ oklchConverter("#e6e1fd")
2028
+ ],
2029
+ fuchsia: [
2030
+ oklchConverter("#65004d"),
2031
+ oklchConverter("#d912ae"),
2032
+ oklchConverter("#f4b5e6"),
2033
+ oklchConverter("#fddef2")
2034
+ ],
2035
+ red: [
2036
+ oklchConverter("#630019"),
2037
+ oklchConverter("#d7153a"),
2038
+ oklchConverter("#ffb8c1"),
2039
+ oklchConverter("#ffe6ea")
2040
+ ],
2041
+ orange: [
2042
+ oklchConverter("#941b00"),
2043
+ oklchConverter("#f3631b"),
2044
+ oklchConverter("#ffce99"),
2045
+ oklchConverter("#fdeddf")
2046
+ ],
2047
+ yellow: [
2048
+ oklchConverter("#694800"),
2049
+ oklchConverter("#faaf05"),
2050
+ oklchConverter("#fde79a"),
2051
+ oklchConverter("#fff4cf")
2052
+ ],
2053
+ brown: [
2054
+ oklchConverter("#523719"),
2055
+ oklchConverter("#b68d5d"),
2056
+ oklchConverter("#e8d0b5"),
2057
+ oklchConverter("#ede3d7")
2058
+ ]
2626
2059
  };
2627
2060
  var aboriginal = {
2628
2061
  grey: [
2629
- oklchConverter("#2D2D2D"),
2062
+ oklchConverter("#272727"),
2630
2063
  oklchConverter("#555555"),
2631
2064
  oklchConverter("#CCC6C2"),
2632
2065
  oklchConverter("#E5E3E0")
@@ -4427,7 +3860,7 @@ var colors = {
4427
3860
  hex: "#f4aa7d",
4428
3861
  rgb: "rgb(244, 170, 125)",
4429
3862
  hsl: "hsl(22.69, 84.4%, 72.35%)",
4430
- name: "Orange Clay"
3863
+ name: "Clay Orange"
4431
3864
  },
4432
3865
  {
4433
3866
  token: "nsw-aboriginal-orange-450",
@@ -4456,7 +3889,7 @@ var colors = {
4456
3889
  hex: "#ee6314",
4457
3890
  rgb: "rgb(238, 99, 20)",
4458
3891
  hsl: "hsl(21.74, 86.51%, 50.59%)",
4459
- name: "Ochre Orange"
3892
+ name: "Orange Ochre"
4460
3893
  },
4461
3894
  {
4462
3895
  token: "nsw-aboriginal-orange-650",
@@ -5137,7 +4570,7 @@ var colors = {
5137
4570
  hex: "#c99ac2",
5138
4571
  rgb: "rgb(201, 154, 194)",
5139
4572
  hsl: "hsl(308.94, 30.32%, 69.61%)",
5140
- name: "Lilli Pilli Purple"
4573
+ name: "Lilli pilli Purple"
5141
4574
  },
5142
4575
  {
5143
4576
  token: "nsw-aboriginal-purple-450",
@@ -5312,53 +4745,53 @@ var colors = {
5312
4745
  },
5313
4746
  {
5314
4747
  token: "nsw-aboriginal-grey-650",
5315
- oklch: "oklch(0.4114406365077532 0 none)",
5316
- hex: "#4b4b4b",
5317
- rgb: "rgb(75, 75, 75)",
5318
- hsl: "hsl(223.81, 0%, 29.26%)"
4748
+ oklch: "oklch(0.40533514521305436 0 none)",
4749
+ hex: "#494949",
4750
+ rgb: "rgb(73, 73, 73)",
4751
+ hsl: "hsl(223.81, 0%, 28.62%)"
5319
4752
  },
5320
4753
  {
5321
4754
  token: "nsw-aboriginal-grey-700",
5322
- oklch: "oklch(0.3733480790552275 0 none)",
5323
- hex: "#404040",
5324
- rgb: "rgb(64, 64, 64)",
5325
- hsl: "hsl(223.81, 0%, 25.29%)"
4755
+ oklch: "oklch(0.3611370964658298 0 none)",
4756
+ hex: "#3d3d3d",
4757
+ rgb: "rgb(61, 61, 61)",
4758
+ hsl: "hsl(223.81, 0%, 24.04%)"
5326
4759
  },
5327
4760
  {
5328
4761
  token: "nsw-aboriginal-grey-750",
5329
- oklch: "oklch(0.3352555216027018 0 none)",
5330
- hex: "#373737",
5331
- rgb: "rgb(55, 55, 55)",
5332
- hsl: "hsl(223.81, 0%, 21.41%)"
4762
+ oklch: "oklch(0.3169390477186052 0 none)",
4763
+ hex: "#323232",
4764
+ rgb: "rgb(50, 50, 50)",
4765
+ hsl: "hsl(223.81, 0%, 19.59%)"
5333
4766
  },
5334
4767
  {
5335
4768
  token: "nsw-aboriginal-grey-800",
5336
- oklch: "oklch(0.29716296415017607 0 none)",
5337
- hex: "#2d2d2d",
5338
- rgb: "rgb(45, 45, 45)",
5339
- hsl: "hsl(223.81, 0%, 17.65%)",
4769
+ oklch: "oklch(0.27274099897138065 0 none)",
4770
+ hex: "#272727",
4771
+ rgb: "rgb(39, 39, 39)",
4772
+ hsl: "hsl(223.81, 0%, 15.29%)",
5340
4773
  name: "Charcoal Grey"
5341
4774
  },
5342
4775
  {
5343
4776
  token: "nsw-aboriginal-grey-850",
5344
- oklch: "oklch(0.24515944542389526 0 none)",
5345
- hex: "#202020",
5346
- rgb: "rgb(32, 32, 32)",
5347
- hsl: "hsl(223.81, 0%, 12.7%)"
4777
+ oklch: "oklch(0.22501132415138902 0 none)",
4778
+ hex: "#1c1c1c",
4779
+ rgb: "rgb(28, 28, 28)",
4780
+ hsl: "hsl(223.81, 0%, 10.85%)"
5348
4781
  },
5349
4782
  {
5350
4783
  token: "nsw-aboriginal-grey-900",
5351
- oklch: "oklch(0.19315592669761444 0 none)",
5352
- hex: "#141414",
5353
- rgb: "rgb(20, 20, 20)",
5354
- hsl: "hsl(223.81, 0%, 8.01%)"
4784
+ oklch: "oklch(0.17728164933139742 0 none)",
4785
+ hex: "#111111",
4786
+ rgb: "rgb(17, 17, 17)",
4787
+ hsl: "hsl(223.81, 0%, 6.64%)"
5355
4788
  },
5356
4789
  {
5357
4790
  token: "nsw-aboriginal-grey-950",
5358
- oklch: "oklch(0.14115240797133363 0 none)",
5359
- hex: "#090909",
5360
- rgb: "rgb(9, 9, 9)",
5361
- hsl: "hsl(223.81, 0%, 3.63%)"
4791
+ oklch: "oklch(0.12955197451140582 0 none)",
4792
+ hex: "#070707",
4793
+ rgb: "rgb(7, 7, 7)",
4794
+ hsl: "hsl(223.81, 0%, 2.81%)"
5362
4795
  }
5363
4796
  ]
5364
4797
  }
@@ -5782,161 +5215,961 @@ var colors = {
5782
5215
  hsl: "hsl(354.47, 100%, 6.66%)"
5783
5216
  },
5784
5217
  {
5785
- token: "danger-950",
5786
- oklch: "oklch(0.1161203356926361 0.0540467578507486 20.66788633547393)",
5787
- hex: "#140001",
5788
- rgb: "rgb(20, 0, 1)",
5789
- hsl: "hsl(355.5, 100%, 3.76%)"
5218
+ token: "danger-950",
5219
+ oklch: "oklch(0.1161203356926361 0.0540467578507486 20.66788633547393)",
5220
+ hex: "#140001",
5221
+ rgb: "rgb(20, 0, 1)",
5222
+ hsl: "hsl(355.5, 100%, 3.76%)"
5223
+ }
5224
+ ]
5225
+ },
5226
+ info: {
5227
+ name: "Info",
5228
+ colors: [
5229
+ {
5230
+ token: "info-50",
5231
+ oklch: "oklch(0.9472470414070251 0.01319114316017373 261.49146551846417)",
5232
+ hex: "#e9eef7",
5233
+ rgb: "rgb(233, 238, 247)",
5234
+ hsl: "hsl(217.99, 45.88%, 94%)"
5235
+ },
5236
+ {
5237
+ token: "info-100",
5238
+ oklch: "oklch(0.8944940828140502 0.02232347304029401 261.49146551846417)",
5239
+ hex: "#d4ddeb",
5240
+ rgb: "rgb(212, 221, 235)",
5241
+ hsl: "hsl(218, 37.47%, 87.77%)"
5242
+ },
5243
+ {
5244
+ token: "info-150",
5245
+ oklch: "oklch(0.8417411242210754 0.03145580292041429 261.49146551846417)",
5246
+ hex: "#c0cce0",
5247
+ rgb: "rgb(192, 204, 224)",
5248
+ hsl: "hsl(218.02, 34.49%, 81.6%)"
5249
+ },
5250
+ {
5251
+ token: "info-200",
5252
+ oklch: "oklch(0.7889881656281005 0.04058813280053457 261.49146551846417)",
5253
+ hex: "#acbbd5",
5254
+ rgb: "rgb(172, 187, 213)",
5255
+ hsl: "hsl(218.05, 32.8%, 75.49%)",
5256
+ name: "Info 04"
5257
+ },
5258
+ {
5259
+ token: "info-250",
5260
+ oklch: "oklch(0.7327975333484203 0.05432284288357939 261.7505460408388)",
5261
+ hex: "#96a9cc",
5262
+ rgb: "rgb(150, 169, 204)",
5263
+ hsl: "hsl(218.29, 34.23%, 69.31%)"
5264
+ },
5265
+ {
5266
+ token: "info-300",
5267
+ oklch: "oklch(0.6766069010687401 0.06805755296662422 262.0096265632134)",
5268
+ hex: "#8098c2",
5269
+ rgb: "rgb(128, 152, 194)",
5270
+ hsl: "hsl(218.57, 34.87%, 63.2%)"
5271
+ },
5272
+ {
5273
+ token: "info-350",
5274
+ oklch: "oklch(0.62041626878906 0.08179226304966905 262.268707085588)",
5275
+ hex: "#6b86b8",
5276
+ rgb: "rgb(107, 134, 184)",
5277
+ hsl: "hsl(218.9, 35.05%, 57.15%)"
5278
+ },
5279
+ {
5280
+ token: "info-400",
5281
+ oklch: "oklch(0.5642256365093798 0.09552697313271387 262.52778760796264)",
5282
+ hex: "#5775ae",
5283
+ rgb: "rgb(87, 117, 174)",
5284
+ hsl: "hsl(219.31, 34.94%, 51.18%)",
5285
+ name: "Info 03"
5286
+ },
5287
+ {
5288
+ token: "info-450",
5289
+ oklch: "oklch(0.5358247299257868 0.10246599429811404 262.4837143651888)",
5290
+ hex: "#4d6ca9",
5291
+ rgb: "rgb(77, 108, 169)",
5292
+ hsl: "hsl(219.41, 37.55%, 48.13%)"
5293
+ },
5294
+ {
5295
+ token: "info-500",
5296
+ oklch: "oklch(0.5074238233421937 0.10940501546351422 262.4396411224149)",
5297
+ hex: "#4264a4",
5298
+ rgb: "rgb(66, 100, 164)",
5299
+ hsl: "hsl(219.52, 42.28%, 45.1%)"
5300
+ },
5301
+ {
5302
+ token: "info-550",
5303
+ oklch: "oklch(0.47902291675860065 0.1163440366289144 262.395567879641)",
5304
+ hex: "#385b9e",
5305
+ rgb: "rgb(56, 91, 158)",
5306
+ hsl: "hsl(219.66, 47.62%, 42.06%)"
5307
+ },
5308
+ {
5309
+ token: "info-600",
5310
+ oklch: "oklch(0.4506220101750076 0.12328305779431457 262.3514946368672)",
5311
+ hex: "#2e5299",
5312
+ rgb: "rgb(46, 82, 153)",
5313
+ hsl: "hsl(219.81, 53.77%, 39.02%)",
5314
+ name: "Info 02"
5315
+ },
5316
+ {
5317
+ token: "info-650",
5318
+ oklch: "oklch(0.3914472612047992 0.10948475002303204 262.3659717757216)",
5319
+ hex: "#23427f",
5320
+ rgb: "rgb(35, 66, 127)",
5321
+ hsl: "hsl(219.87, 56.39%, 31.92%)"
5322
+ },
5323
+ {
5324
+ token: "info-700",
5325
+ oklch: "oklch(0.33227251223459087 0.09568644225174952 262.3804489145761)",
5326
+ hex: "#193366",
5327
+ rgb: "rgb(25, 51, 102)",
5328
+ hsl: "hsl(219.93, 60.27%, 25.07%)"
5329
+ },
5330
+ {
5331
+ token: "info-750",
5332
+ oklch: "oklch(0.2730977632643825 0.08188813448046699 262.3949260534306)",
5333
+ hex: "#10254f",
5334
+ rgb: "rgb(16, 37, 79)",
5335
+ hsl: "hsl(220.02, 66.59%, 18.51%)"
5336
+ },
5337
+ {
5338
+ token: "info-800",
5339
+ oklch: "oklch(0.21392301429417415 0.06808982670918445 262.409403192285)",
5340
+ hex: "#071738",
5341
+ rgb: "rgb(7, 23, 56)",
5342
+ hsl: "hsl(220.41, 77.78%, 12.35%)",
5343
+ name: "Info 01"
5344
+ },
5345
+ {
5346
+ token: "info-850",
5347
+ oklch: "oklch(0.1764864867926937 0.057876352702806784 262.409403192285)",
5348
+ hex: "#040f2a",
5349
+ rgb: "rgb(4, 15, 42)",
5350
+ hsl: "hsl(222.21, 84%, 8.9%)"
5351
+ },
5352
+ {
5353
+ token: "info-900",
5354
+ oklch: "oklch(0.13904995929121322 0.047662878696429115 262.409403192285)",
5355
+ hex: "#02071c",
5356
+ rgb: "rgb(2, 7, 28)",
5357
+ hsl: "hsl(226.63, 89.54%, 5.83%)"
5358
+ },
5359
+ {
5360
+ token: "info-950",
5361
+ oklch: "oklch(0.10161343178973273 0.03744940469005145 262.409403192285)",
5362
+ hex: "#00030f",
5363
+ rgb: "rgb(0, 3, 15)",
5364
+ hsl: "hsl(230.65, 94.13%, 3.12%)"
5365
+ }
5366
+ ]
5367
+ }
5368
+ }
5369
+ };
5370
+ var colorThemes = generateColorThemes(colors);
5371
+ var Social = {
5372
+ Facebook: (props) => /* @__PURE__ */ jsx("svg", { fill: "currentColor", viewBox: "0 0 24 24", "data-slot": "icon", ...props, children: /* @__PURE__ */ jsx(
5373
+ "path",
5374
+ {
5375
+ fillRule: "evenodd",
5376
+ d: "M22 12c0-5.523-4.477-10-10-10S2 6.477 2 12c0 4.991 3.657 9.128 8.438 9.878v-6.987h-2.54V12h2.54V9.797c0-2.506 1.492-3.89 3.777-3.89 1.094 0 2.238.195 2.238.195v2.46h-1.26c-1.243 0-1.63.771-1.63 1.562V12h2.773l-.443 2.89h-2.33v6.988C18.343 21.128 22 16.991 22 12z",
5377
+ clipRule: "evenodd"
5378
+ }
5379
+ ) }),
5380
+ Figma: (props) => /* @__PURE__ */ jsx("svg", { fill: "currentColor", viewBox: "0 0 24 24", "data-slot": "icon", ...props, children: /* @__PURE__ */ jsx(
5381
+ "path",
5382
+ {
5383
+ fillRule: "evenodd",
5384
+ d: "M22 12c0-5.523-4.477-10-10-10S2 6.477 2 12c0 4.991 3.657 9.128 8.438 9.878v-6.987h-2.54V12h2.54V9.797c0-2.506 1.492-3.89 3.777-3.89 1.094 0 2.238.195 2.238.195v2.46h-1.26c-1.243 0-1.63.771-1.63 1.562V12h2.773l-.443 2.89h-2.33v6.988C18.343 21.128 22 16.991 22 12z",
5385
+ clipRule: "evenodd"
5386
+ }
5387
+ ) }),
5388
+ Github: (props) => /* @__PURE__ */ jsx("svg", { fill: "currentColor", viewBox: "0 0 24 24", "data-slot": "icon", ...props, children: /* @__PURE__ */ jsx(
5389
+ "path",
5390
+ {
5391
+ fillRule: "evenodd",
5392
+ d: "M12 2C6.477 2 2 6.484 2 12.017c0 4.425 2.865 8.18 6.839 9.504.5.092.682-.217.682-.483 0-.237-.008-.868-.013-1.703-2.782.605-3.369-1.343-3.369-1.343-.454-1.158-1.11-1.466-1.11-1.466-.908-.62.069-.608.069-.608 1.003.07 1.531 1.032 1.531 1.032.892 1.53 2.341 1.088 2.91.832.092-.647.35-1.088.636-1.338-2.22-.253-4.555-1.113-4.555-4.951 0-1.093.39-1.988 1.029-2.688-.103-.253-.446-1.272.098-2.65 0 0 .84-.27 2.75 1.026A9.564 9.564 0 0112 6.844c.85.004 1.705.115 2.504.337 1.909-1.296 2.747-1.027 2.747-1.027.546 1.379.202 2.398.1 2.651.64.7 1.028 1.595 1.028 2.688 0 3.848-2.339 4.695-4.566 4.943.359.309.678.92.678 1.855 0 1.338-.012 2.419-.012 2.747 0 .268.18.58.688.482A10.019 10.019 0 0022 12.017C22 6.484 17.522 2 12 2z",
5393
+ clipRule: "evenodd"
5394
+ }
5395
+ ) }),
5396
+ Instagram: (props) => /* @__PURE__ */ jsx("svg", { fill: "currentColor", viewBox: "0 0 24 24", "data-slot": "icon", ...props, children: /* @__PURE__ */ jsx(
5397
+ "path",
5398
+ {
5399
+ fillRule: "evenodd",
5400
+ d: "M12.315 2c2.43 0 2.784.013 3.808.06 1.064.049 1.791.218 2.427.465a4.902 4.902 0 011.772 1.153 4.902 4.902 0 011.153 1.772c.247.636.416 1.363.465 2.427.048 1.067.06 1.407.06 4.123v.08c0 2.643-.012 2.987-.06 4.043-.049 1.064-.218 1.791-.465 2.427a4.902 4.902 0 01-1.153 1.772 4.902 4.902 0 01-1.772 1.153c-.636.247-1.363.416-2.427.465-1.067.048-1.407.06-4.123.06h-.08c-2.643 0-2.987-.012-4.043-.06-1.064-.049-1.791-.218-2.427-.465a4.902 4.902 0 01-1.772-1.153 4.902 4.902 0 01-1.153-1.772c-.247-.636-.416-1.363-.465-2.427-.047-1.024-.06-1.379-.06-3.808v-.63c0-2.43.013-2.784.06-3.808.049-1.064.218-1.791.465-2.427a4.902 4.902 0 011.153-1.772A4.902 4.902 0 015.45 2.525c.636-.247 1.363-.416 2.427-.465C8.901 2.013 9.256 2 11.685 2h.63zm-.081 1.802h-.468c-2.456 0-2.784.011-3.807.058-.975.045-1.504.207-1.857.344-.467.182-.8.398-1.15.748-.35.35-.566.683-.748 1.15-.137.353-.3.882-.344 1.857-.047 1.023-.058 1.351-.058 3.807v.468c0 2.456.011 2.784.058 3.807.045.975.207 1.504.344 1.857.182.466.399.8.748 1.15.35.35.683.566 1.15.748.353.137.882.3 1.857.344 1.054.048 1.37.058 4.041.058h.08c2.597 0 2.917-.01 3.96-.058.976-.045 1.505-.207 1.858-.344.466-.182.8-.398 1.15-.748.35-.35.566-.683.748-1.15.137-.353.3-.882.344-1.857.048-1.055.058-1.37.058-4.041v-.08c0-2.597-.01-2.917-.058-3.96-.045-.976-.207-1.505-.344-1.858a3.097 3.097 0 00-.748-1.15 3.098 3.098 0 00-1.15-.748c-.353-.137-.882-.3-1.857-.344-1.023-.047-1.351-.058-3.807-.058zM12 6.865a5.135 5.135 0 110 10.27 5.135 5.135 0 010-10.27zm0 1.802a3.333 3.333 0 100 6.666 3.333 3.333 0 000-6.666zm5.338-3.205a1.2 1.2 0 110 2.4 1.2 1.2 0 010-2.4z",
5401
+ clipRule: "evenodd"
5402
+ }
5403
+ ) }),
5404
+ LinkedIn: (props) => /* @__PURE__ */ jsx("svg", { fill: "currentColor", viewBox: "0 0 24 24", "data-slot": "icon", ...props, children: /* @__PURE__ */ jsx("path", { d: "M19 3A2 2 0 0 1 21 5V19A2 2 0 0 1 19 21H5A2 2 0 0 1 3 19V5A2 2 0 0 1 5 3H19M18.5 18.5V13.2A3.26 3.26 0 0 0 15.24 9.94C14.39 9.94 13.4 10.46 12.92 11.24V10.13H10.13V18.5H12.92V13.57C12.92 12.8 13.54 12.17 14.31 12.17A1.4 1.4 0 0 1 15.71 13.57V18.5H18.5M6.88 8.56A1.68 1.68 0 0 0 8.56 6.88C8.56 5.95 7.81 5.19 6.88 5.19A1.69 1.69 0 0 0 5.19 6.88C5.19 7.81 5.95 8.56 6.88 8.56M8.27 18.5V10.13H5.5V18.5H8.27Z" }) }),
5405
+ X: (props) => /* @__PURE__ */ jsx("svg", { fill: "currentColor", viewBox: "0 0 24 24", "data-slot": "icon", ...props, children: /* @__PURE__ */ jsx("path", { d: "M13.6823 10.6218L20.2391 3H18.6854L12.9921 9.61788L8.44486 3H3.2002L10.0765 13.0074L3.2002 21H4.75404L10.7663 14.0113L15.5685 21H20.8131L13.6819 10.6218H13.6823ZM11.5541 13.0956L10.8574 12.0991L5.31391 4.16971H7.70053L12.1742 10.5689L12.8709 11.5655L18.6861 19.8835H16.2995L11.5541 13.096V13.0956Z" }) }),
5406
+ YouTube: (props) => /* @__PURE__ */ jsx("svg", { fill: "currentColor", viewBox: "0 0 24 24", "data-slot": "icon", ...props, children: /* @__PURE__ */ jsx(
5407
+ "path",
5408
+ {
5409
+ fillRule: "evenodd",
5410
+ d: "M19.812 5.418c.861.23 1.538.907 1.768 1.768C21.998 8.746 22 12 22 12s0 3.255-.418 4.814a2.504 2.504 0 0 1-1.768 1.768c-1.56.419-7.814.419-7.814.419s-6.255 0-7.814-.419a2.505 2.505 0 0 1-1.768-1.768C2 15.255 2 12 2 12s0-3.255.417-4.814a2.507 2.507 0 0 1 1.768-1.768C5.744 5 11.998 5 11.998 5s6.255 0 7.814.418ZM15.194 12 10 15V9l5.194 3Z",
5411
+ clipRule: "evenodd"
5412
+ }
5413
+ ) })
5414
+ };
5415
+ function TooltipProvider({
5416
+ delayDuration,
5417
+ ...props
5418
+ }) {
5419
+ return /* @__PURE__ */ jsx(
5420
+ TooltipPrimitive.Provider,
5421
+ {
5422
+ "data-slot": "tooltip-provider",
5423
+ delayDuration,
5424
+ ...props
5425
+ }
5426
+ );
5427
+ }
5428
+ function Tooltip({ ...props }) {
5429
+ return /* @__PURE__ */ jsx(TooltipPrimitive.Root, { "data-slot": "tooltip", ...props });
5430
+ }
5431
+ function TooltipTrigger({ ...props }) {
5432
+ return /* @__PURE__ */ jsx(TooltipPrimitive.Trigger, { "data-slot": "tooltip-trigger", ...props });
5433
+ }
5434
+ function TooltipContent({
5435
+ className,
5436
+ sideOffset = 0,
5437
+ children,
5438
+ ...props
5439
+ }) {
5440
+ return /* @__PURE__ */ jsx(TooltipPrimitive.Portal, { children: /* @__PURE__ */ jsxs(
5441
+ TooltipPrimitive.Content,
5442
+ {
5443
+ "data-slot": "tooltip-content",
5444
+ sideOffset,
5445
+ className: cn(
5446
+ "bg-grey-800 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 text-white",
5447
+ className
5448
+ ),
5449
+ ...props,
5450
+ children: [
5451
+ children,
5452
+ /* @__PURE__ */ jsx(TooltipPrimitive.Arrow, { className: "bg-grey-800 fill-grey-800 z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]" })
5453
+ ]
5454
+ }
5455
+ ) });
5456
+ }
5457
+ function ScrollArea({
5458
+ className,
5459
+ children,
5460
+ ...props
5461
+ }) {
5462
+ return /* @__PURE__ */ jsxs(
5463
+ ScrollAreaPrimitive.Root,
5464
+ {
5465
+ "data-slot": "scroll-area",
5466
+ className: cn("relative", className),
5467
+ ...props,
5468
+ children: [
5469
+ /* @__PURE__ */ jsx(
5470
+ ScrollAreaPrimitive.Viewport,
5471
+ {
5472
+ "data-slot": "scroll-area-viewport",
5473
+ className: "focus-visible:ring-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1",
5474
+ children
5475
+ }
5476
+ ),
5477
+ /* @__PURE__ */ jsx(ScrollBar, {}),
5478
+ /* @__PURE__ */ jsx(ScrollAreaPrimitive.Corner, {})
5479
+ ]
5480
+ }
5481
+ );
5482
+ }
5483
+ function ScrollBar({
5484
+ className,
5485
+ orientation = "vertical",
5486
+ ...props
5487
+ }) {
5488
+ return /* @__PURE__ */ jsx(
5489
+ ScrollAreaPrimitive.ScrollAreaScrollbar,
5490
+ {
5491
+ "data-slot": "scroll-area-scrollbar",
5492
+ orientation,
5493
+ className: cn(
5494
+ "flex touch-none p-px transition-colors select-none",
5495
+ orientation === "vertical" && "h-full w-2.5 border-l border-l-transparent",
5496
+ orientation === "horizontal" && "h-2.5 flex-col border-t border-t-transparent",
5497
+ className
5498
+ ),
5499
+ ...props,
5500
+ children: /* @__PURE__ */ jsx(
5501
+ ScrollAreaPrimitive.ScrollAreaThumb,
5502
+ {
5503
+ "data-slot": "scroll-area-thumb",
5504
+ className: "bg-border relative flex-1 rounded-full"
5790
5505
  }
5506
+ )
5507
+ }
5508
+ );
5509
+ }
5510
+ function PreWithCopy(props) {
5511
+ const textInput = useRef(null);
5512
+ const [isJustCopied, setJustCopied] = useState(false);
5513
+ function handleCopy() {
5514
+ if (textInput.current) {
5515
+ navigator.clipboard.writeText(textInput.current.textContent || "");
5516
+ setJustCopied(true);
5517
+ setTimeout(() => setJustCopied(false), 2e3);
5518
+ }
5519
+ }
5520
+ return /* @__PURE__ */ jsxs("div", { className: "group relative", children: [
5521
+ /* @__PURE__ */ jsx(
5522
+ "pre",
5523
+ {
5524
+ ref: textInput,
5525
+ ...props,
5526
+ className: twMerge("max-h-[40rem] overflow-auto", props.className)
5527
+ }
5528
+ ),
5529
+ /* @__PURE__ */ jsxs(
5530
+ "button",
5531
+ {
5532
+ className: "absolute top-2 right-2 m-0.5 inline-flex h-8 items-center justify-center rounded-lg border border-gray-200 bg-white px-2.5 py-2 text-gray-900 opacity-0 transition-opacity group-hover:opacity-100 hover:bg-gray-100 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-400 dark:hover:bg-gray-700",
5533
+ "aria-label": "Copy code to clipboard",
5534
+ onClick: handleCopy,
5535
+ children: [
5536
+ /* @__PURE__ */ jsx("span", { className: twMerge(isJustCopied && "hidden"), children: /* @__PURE__ */ jsxs("span", { className: "inline-flex items-center", children: [
5537
+ /* @__PURE__ */ jsx(Icons.copy, { className: "me-1.5 size-3" }),
5538
+ /* @__PURE__ */ jsx("span", { className: "text-xs font-semibold", children: "Copy code" })
5539
+ ] }) }),
5540
+ /* @__PURE__ */ jsx("span", { className: twMerge(isJustCopied ? "block" : "hidden"), children: /* @__PURE__ */ jsxs("span", { className: "inline-flex items-center", children: [
5541
+ /* @__PURE__ */ jsx(Icons.check, { className: "text-primary-700 dark:text-primary-500 me-1.5 size-3" }),
5542
+ /* @__PURE__ */ jsx("span", { className: "text-primary-700 dark:text-primary-500 text-xs font-semibold", children: "Copied" })
5543
+ ] }) })
5544
+ ]
5545
+ }
5546
+ )
5547
+ ] });
5548
+ }
5549
+ Prism.manual = true;
5550
+ function CodeHighlight({
5551
+ code,
5552
+ language,
5553
+ className,
5554
+ withCopy = false,
5555
+ ...props
5556
+ }) {
5557
+ const highlightedCode = Prism.highlight(code.trim(), Prism.languages[language], language);
5558
+ const Component2 = withCopy ? PreWithCopy : "pre";
5559
+ return /* @__PURE__ */ jsx(Component2, { className: twMerge(`language-${language}`, className), ...props, children: /* @__PURE__ */ jsx(
5560
+ "code",
5561
+ {
5562
+ className: `language-${language}`,
5563
+ dangerouslySetInnerHTML: { __html: highlightedCode }
5564
+ }
5565
+ ) });
5566
+ }
5567
+ function Select({ ...props }) {
5568
+ return /* @__PURE__ */ jsx(SelectPrimitive.Root, { "data-slot": "select", ...props });
5569
+ }
5570
+ function SelectGroup({ ...props }) {
5571
+ return /* @__PURE__ */ jsx(SelectPrimitive.Group, { "data-slot": "select-group", ...props });
5572
+ }
5573
+ function SelectValue({ ...props }) {
5574
+ return /* @__PURE__ */ jsx(SelectPrimitive.Value, { "data-slot": "select-value", ...props });
5575
+ }
5576
+ function SelectTrigger({
5577
+ className,
5578
+ size = "default",
5579
+ children,
5580
+ ...props
5581
+ }) {
5582
+ return /* @__PURE__ */ jsxs(
5583
+ SelectPrimitive.Trigger,
5584
+ {
5585
+ "data-slot": "select-trigger",
5586
+ "data-size": size,
5587
+ className: cn(
5588
+ // Base styles
5589
+ "border-grey-600 [&_svg:not([class*='text-'])]:text-grey-600 flex w-full items-center justify-between gap-2 rounded-sm border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
5590
+ // Disabled styles
5591
+ "disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50",
5592
+ // aria-invalid styles
5593
+ "aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
5594
+ // Focus styles
5595
+ "focus:outline-primary-650/70 focus:outline focus:outline-2 focus:outline-offset-2",
5596
+ // Placeholder styles
5597
+ "data-[placeholder]:text-grey-600",
5598
+ // Dark mode styles
5599
+ "dark:bg-input/30 dark:hover:bg-input/50",
5600
+ // Size styles
5601
+ "data-[size=default]:h-12 data-[size=sm]:h-9",
5602
+ className
5603
+ ),
5604
+ ...props,
5605
+ children: [
5606
+ children,
5607
+ /* @__PURE__ */ jsx(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ jsx(Icons.chevron_down, { className: "size-6 opacity-80" }) })
5608
+ ]
5609
+ }
5610
+ );
5611
+ }
5612
+ function SelectContent({
5613
+ className,
5614
+ children,
5615
+ position = "popper",
5616
+ ...props
5617
+ }) {
5618
+ return /* @__PURE__ */ jsx(SelectPrimitive.Portal, { children: /* @__PURE__ */ jsxs(
5619
+ SelectPrimitive.Content,
5620
+ {
5621
+ "data-slot": "select-content",
5622
+ className: cn(
5623
+ // Base styles
5624
+ "text-grey-800 border-grey-200 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-sm border bg-white shadow-md",
5625
+ // State styles
5626
+ "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-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",
5627
+ position === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",
5628
+ className
5629
+ ),
5630
+ position,
5631
+ ...props,
5632
+ children: [
5633
+ /* @__PURE__ */ jsx(SelectScrollUpButton, {}),
5634
+ /* @__PURE__ */ jsx(
5635
+ SelectPrimitive.Viewport,
5636
+ {
5637
+ className: cn(
5638
+ "p-1",
5639
+ position === "popper" && "h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"
5640
+ ),
5641
+ children
5642
+ }
5643
+ ),
5644
+ /* @__PURE__ */ jsx(SelectScrollDownButton, {})
5791
5645
  ]
5792
- },
5793
- info: {
5794
- name: "Info",
5795
- colors: [
5796
- {
5797
- token: "info-50",
5798
- oklch: "oklch(0.9472470414070251 0.01319114316017373 261.49146551846417)",
5799
- hex: "#e9eef7",
5800
- rgb: "rgb(233, 238, 247)",
5801
- hsl: "hsl(217.99, 45.88%, 94%)"
5802
- },
5803
- {
5804
- token: "info-100",
5805
- oklch: "oklch(0.8944940828140502 0.02232347304029401 261.49146551846417)",
5806
- hex: "#d4ddeb",
5807
- rgb: "rgb(212, 221, 235)",
5808
- hsl: "hsl(218, 37.47%, 87.77%)"
5809
- },
5810
- {
5811
- token: "info-150",
5812
- oklch: "oklch(0.8417411242210754 0.03145580292041429 261.49146551846417)",
5813
- hex: "#c0cce0",
5814
- rgb: "rgb(192, 204, 224)",
5815
- hsl: "hsl(218.02, 34.49%, 81.6%)"
5816
- },
5817
- {
5818
- token: "info-200",
5819
- oklch: "oklch(0.7889881656281005 0.04058813280053457 261.49146551846417)",
5820
- hex: "#acbbd5",
5821
- rgb: "rgb(172, 187, 213)",
5822
- hsl: "hsl(218.05, 32.8%, 75.49%)",
5823
- name: "Info 04"
5824
- },
5825
- {
5826
- token: "info-250",
5827
- oklch: "oklch(0.7327975333484203 0.05432284288357939 261.7505460408388)",
5828
- hex: "#96a9cc",
5829
- rgb: "rgb(150, 169, 204)",
5830
- hsl: "hsl(218.29, 34.23%, 69.31%)"
5831
- },
5832
- {
5833
- token: "info-300",
5834
- oklch: "oklch(0.6766069010687401 0.06805755296662422 262.0096265632134)",
5835
- hex: "#8098c2",
5836
- rgb: "rgb(128, 152, 194)",
5837
- hsl: "hsl(218.57, 34.87%, 63.2%)"
5838
- },
5839
- {
5840
- token: "info-350",
5841
- oklch: "oklch(0.62041626878906 0.08179226304966905 262.268707085588)",
5842
- hex: "#6b86b8",
5843
- rgb: "rgb(107, 134, 184)",
5844
- hsl: "hsl(218.9, 35.05%, 57.15%)"
5845
- },
5846
- {
5847
- token: "info-400",
5848
- oklch: "oklch(0.5642256365093798 0.09552697313271387 262.52778760796264)",
5849
- hex: "#5775ae",
5850
- rgb: "rgb(87, 117, 174)",
5851
- hsl: "hsl(219.31, 34.94%, 51.18%)",
5852
- name: "Info 03"
5853
- },
5854
- {
5855
- token: "info-450",
5856
- oklch: "oklch(0.5358247299257868 0.10246599429811404 262.4837143651888)",
5857
- hex: "#4d6ca9",
5858
- rgb: "rgb(77, 108, 169)",
5859
- hsl: "hsl(219.41, 37.55%, 48.13%)"
5860
- },
5861
- {
5862
- token: "info-500",
5863
- oklch: "oklch(0.5074238233421937 0.10940501546351422 262.4396411224149)",
5864
- hex: "#4264a4",
5865
- rgb: "rgb(66, 100, 164)",
5866
- hsl: "hsl(219.52, 42.28%, 45.1%)"
5867
- },
5868
- {
5869
- token: "info-550",
5870
- oklch: "oklch(0.47902291675860065 0.1163440366289144 262.395567879641)",
5871
- hex: "#385b9e",
5872
- rgb: "rgb(56, 91, 158)",
5873
- hsl: "hsl(219.66, 47.62%, 42.06%)"
5874
- },
5875
- {
5876
- token: "info-600",
5877
- oklch: "oklch(0.4506220101750076 0.12328305779431457 262.3514946368672)",
5878
- hex: "#2e5299",
5879
- rgb: "rgb(46, 82, 153)",
5880
- hsl: "hsl(219.81, 53.77%, 39.02%)",
5881
- name: "Info 02"
5882
- },
5883
- {
5884
- token: "info-650",
5885
- oklch: "oklch(0.3914472612047992 0.10948475002303204 262.3659717757216)",
5886
- hex: "#23427f",
5887
- rgb: "rgb(35, 66, 127)",
5888
- hsl: "hsl(219.87, 56.39%, 31.92%)"
5889
- },
5890
- {
5891
- token: "info-700",
5892
- oklch: "oklch(0.33227251223459087 0.09568644225174952 262.3804489145761)",
5893
- hex: "#193366",
5894
- rgb: "rgb(25, 51, 102)",
5895
- hsl: "hsl(219.93, 60.27%, 25.07%)"
5896
- },
5897
- {
5898
- token: "info-750",
5899
- oklch: "oklch(0.2730977632643825 0.08188813448046699 262.3949260534306)",
5900
- hex: "#10254f",
5901
- rgb: "rgb(16, 37, 79)",
5902
- hsl: "hsl(220.02, 66.59%, 18.51%)"
5903
- },
5904
- {
5905
- token: "info-800",
5906
- oklch: "oklch(0.21392301429417415 0.06808982670918445 262.409403192285)",
5907
- hex: "#071738",
5908
- rgb: "rgb(7, 23, 56)",
5909
- hsl: "hsl(220.41, 77.78%, 12.35%)",
5910
- name: "Info 01"
5911
- },
5912
- {
5913
- token: "info-850",
5914
- oklch: "oklch(0.1764864867926937 0.057876352702806784 262.409403192285)",
5915
- hex: "#040f2a",
5916
- rgb: "rgb(4, 15, 42)",
5917
- hsl: "hsl(222.21, 84%, 8.9%)"
5918
- },
5919
- {
5920
- token: "info-900",
5921
- oklch: "oklch(0.13904995929121322 0.047662878696429115 262.409403192285)",
5922
- hex: "#02071c",
5923
- rgb: "rgb(2, 7, 28)",
5924
- hsl: "hsl(226.63, 89.54%, 5.83%)"
5925
- },
5646
+ }
5647
+ ) });
5648
+ }
5649
+ function SelectLabel({ className, ...props }) {
5650
+ return /* @__PURE__ */ jsx(
5651
+ SelectPrimitive.Label,
5652
+ {
5653
+ "data-slot": "select-label",
5654
+ className: cn("text-grey-600 px-2 py-1.5 text-xs", className),
5655
+ ...props
5656
+ }
5657
+ );
5658
+ }
5659
+ function SelectItem({
5660
+ className,
5661
+ children,
5662
+ ...props
5663
+ }) {
5664
+ return /* @__PURE__ */ jsxs(
5665
+ SelectPrimitive.Item,
5666
+ {
5667
+ "data-slot": "select-item",
5668
+ className: cn(
5669
+ "focus:bg-primary-800/10 focus:text-primary-800 [&_svg:not([class*='text-'])]:text-grey-600 relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none focus:font-bold data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-6 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",
5670
+ className
5671
+ ),
5672
+ ...props,
5673
+ children: [
5674
+ /* @__PURE__ */ jsx("span", { className: "absolute right-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ jsx(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx(Icons.check, { className: "size-6" }) }) }),
5675
+ /* @__PURE__ */ jsx(SelectPrimitive.ItemText, { children })
5676
+ ]
5677
+ }
5678
+ );
5679
+ }
5680
+ function SelectSeparator({
5681
+ className,
5682
+ ...props
5683
+ }) {
5684
+ return /* @__PURE__ */ jsx(
5685
+ SelectPrimitive.Separator,
5686
+ {
5687
+ "data-slot": "select-separator",
5688
+ className: cn("bg-primary-800/20 pointer-events-none -mx-1 my-1 h-px", className),
5689
+ ...props
5690
+ }
5691
+ );
5692
+ }
5693
+ function SelectScrollUpButton({
5694
+ className,
5695
+ ...props
5696
+ }) {
5697
+ return /* @__PURE__ */ jsx(
5698
+ SelectPrimitive.ScrollUpButton,
5699
+ {
5700
+ "data-slot": "select-scroll-up-button",
5701
+ className: cn("flex cursor-default items-center justify-center py-1", className),
5702
+ ...props,
5703
+ children: /* @__PURE__ */ jsx(Icons.chevron_up, { className: "size-6" })
5704
+ }
5705
+ );
5706
+ }
5707
+ function SelectScrollDownButton({
5708
+ className,
5709
+ ...props
5710
+ }) {
5711
+ return /* @__PURE__ */ jsx(
5712
+ SelectPrimitive.ScrollDownButton,
5713
+ {
5714
+ "data-slot": "select-scroll-down-button",
5715
+ className: cn("flex cursor-default items-center justify-center py-1", className),
5716
+ ...props,
5717
+ children: /* @__PURE__ */ jsx(Icons.chevron_down, { className: "size-6" })
5718
+ }
5719
+ );
5720
+ }
5721
+ function Popover({ ...props }) {
5722
+ return /* @__PURE__ */ jsx(PopoverPrimitive.Root, { "data-slot": "popover", ...props });
5723
+ }
5724
+ function PopoverTrigger({ ...props }) {
5725
+ return /* @__PURE__ */ jsx(PopoverPrimitive.Trigger, { "data-slot": "popover-trigger", ...props });
5726
+ }
5727
+ function PopoverContent({
5728
+ className,
5729
+ align = "center",
5730
+ sideOffset = 4,
5731
+ ...props
5732
+ }) {
5733
+ return /* @__PURE__ */ jsx(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx(
5734
+ PopoverPrimitive.Content,
5735
+ {
5736
+ "data-slot": "popover-content",
5737
+ align,
5738
+ sideOffset,
5739
+ className: cn(
5740
+ [
5741
+ // Base
5742
+ "bg-background text-foreground z-50 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border p-4 shadow-md outline-hidden",
5743
+ // Open
5744
+ "data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
5745
+ // Closed
5746
+ "data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95",
5747
+ // Side
5748
+ "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"
5749
+ ],
5750
+ className
5751
+ ),
5752
+ ...props
5753
+ }
5754
+ ) });
5755
+ }
5756
+ function PopoverAnchor({ ...props }) {
5757
+ return /* @__PURE__ */ jsx(PopoverPrimitive.Anchor, { "data-slot": "popover-anchor", ...props });
5758
+ }
5759
+ function Label3({ className, ...props }) {
5760
+ return /* @__PURE__ */ jsx(
5761
+ LabelPrimitive.Root,
5762
+ {
5763
+ "data-slot": "label",
5764
+ className: cn(
5765
+ // Base
5766
+ "flex items-center gap-2",
5767
+ "text-grey-900 text-base/6 font-semibold select-none",
5768
+ // Dark mode
5769
+ "dark:group-data-[disabled=true]:text-grey-400 dark:text-white",
5770
+ // Disabled state
5771
+ "group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",
5772
+ className
5773
+ ),
5774
+ ...props
5775
+ }
5776
+ );
5777
+ }
5778
+ function RadioGroup2({
5779
+ className,
5780
+ ...props
5781
+ }) {
5782
+ return /* @__PURE__ */ jsx(
5783
+ RadioGroupPrimitive.Root,
5784
+ {
5785
+ "data-slot": "radio-group",
5786
+ className: cn("grid gap-3", className),
5787
+ ...props
5788
+ }
5789
+ );
5790
+ }
5791
+ function RadioGroupItem({
5792
+ className,
5793
+ ...props
5794
+ }) {
5795
+ return /* @__PURE__ */ jsx(
5796
+ RadioGroupPrimitive.Item,
5797
+ {
5798
+ "data-slot": "radio-group-item",
5799
+ className: cn(
5800
+ // Base styles
5801
+ "border-primary-800 text-primary-800 aspect-square size-8 shrink-0 rounded-full border shadow-xs transition-[color,box-shadow] outline-none",
5802
+ // Dark mode styles
5803
+ "dark:bg-input/30",
5804
+ // Focus styles
5805
+ "focus:border-grey-600 focus:ring-primary-650/70 ring-offset-white focus:ring-2 focus:ring-offset-2 focus:outline-none",
5806
+ // aria-invalid styles
5807
+ "aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
5808
+ // Disabled styles
5809
+ "disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50",
5810
+ className
5811
+ ),
5812
+ ...props,
5813
+ children: /* @__PURE__ */ jsx(
5814
+ RadioGroupPrimitive.Indicator,
5926
5815
  {
5927
- token: "info-950",
5928
- oklch: "oklch(0.10161343178973273 0.03744940469005145 262.409403192285)",
5929
- hex: "#00030f",
5930
- rgb: "rgb(0, 3, 15)",
5931
- hsl: "hsl(230.65, 94.13%, 3.12%)"
5816
+ "data-slot": "radio-group-indicator",
5817
+ className: cn(
5818
+ // Base styles
5819
+ "relative flex items-center justify-center"
5820
+ ),
5821
+ children: /* @__PURE__ */ jsx(CircleIcon, { className: "fill-primary-800 absolute top-1/2 left-1/2 size-6 -translate-x-1/2 -translate-y-1/2" })
5932
5822
  }
5933
- ]
5823
+ )
5934
5824
  }
5935
- }
5936
- };
5937
- var colorThemes = generateColorThemes(colors);
5938
- function CodeDemo({ data, hide = {} }) {
5825
+ );
5826
+ }
5827
+ function SegmentedControl({
5828
+ className,
5829
+ ...props
5830
+ }) {
5831
+ return /* @__PURE__ */ jsx(
5832
+ TabsPrimitive2.Root,
5833
+ {
5834
+ "data-slot": "tabs",
5835
+ className: cn("flex flex-col gap-2", className),
5836
+ ...props
5837
+ }
5838
+ );
5839
+ }
5840
+ function SegmentedControlList({
5841
+ className,
5842
+ ...props
5843
+ }) {
5844
+ return /* @__PURE__ */ jsx(
5845
+ TabsPrimitive2.List,
5846
+ {
5847
+ "data-slot": "segmented-control-list",
5848
+ className: cn(
5849
+ "bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center rounded-lg p-[3px]",
5850
+ className
5851
+ ),
5852
+ ...props
5853
+ }
5854
+ );
5855
+ }
5856
+ function SegmentedControlTrigger({
5857
+ className,
5858
+ ...props
5859
+ }) {
5860
+ return /* @__PURE__ */ jsx(
5861
+ TabsPrimitive2.Trigger,
5862
+ {
5863
+ "data-slot": "segmented-control-trigger",
5864
+ className: cn(
5865
+ "data-[state=active]:bg-background dark:data-[state=active]:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 text-foreground dark:text-muted-foreground inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
5866
+ className
5867
+ ),
5868
+ ...props
5869
+ }
5870
+ );
5871
+ }
5872
+ var findGreyKey = (themes) => Object.keys(themes).find((k) => k.toLowerCase().includes("grey")) ?? "";
5873
+ function ThemeSelectorLoading() {
5874
+ return /* @__PURE__ */ jsxs("div", { className: "flex animate-pulse flex-col gap-6", children: [
5875
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-2", children: [
5876
+ /* @__PURE__ */ jsx("div", { className: "bg-grey-200 h-5 w-32 rounded" }),
5877
+ /* @__PURE__ */ jsx("div", { className: "bg-grey-200 h-10 w-full rounded" })
5878
+ ] }),
5879
+ /* @__PURE__ */ jsxs("div", { className: "grid gap-6", children: [
5880
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-3", children: [
5881
+ /* @__PURE__ */ jsx("div", { className: "bg-grey-200 h-5 w-24 rounded" }),
5882
+ /* @__PURE__ */ jsx("div", { className: "grid grid-cols-2 gap-2", children: [1, 2, 3, 4].map((i) => /* @__PURE__ */ jsx("div", { className: "bg-grey-200 h-12 rounded" }, i)) })
5883
+ ] }),
5884
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-3", children: [
5885
+ /* @__PURE__ */ jsx("div", { className: "bg-grey-200 h-5 w-24 rounded" }),
5886
+ /* @__PURE__ */ jsx("div", { className: "grid grid-cols-2 gap-2", children: [1, 2, 3].map((i) => /* @__PURE__ */ jsx("div", { className: "bg-grey-200 h-12 rounded" }, i)) })
5887
+ ] })
5888
+ ] }),
5889
+ /* @__PURE__ */ jsxs("div", { className: "space-y-3", children: [
5890
+ /* @__PURE__ */ jsx("div", { className: "bg-grey-200 h-5 w-20 rounded" }),
5891
+ /* @__PURE__ */ jsxs("div", { className: "border-muted bg-muted/30 gap-3 rounded-md border p-3", children: [
5892
+ /* @__PURE__ */ jsxs("div", { className: "mb-2 flex min-w-0 items-center justify-between", children: [
5893
+ /* @__PURE__ */ jsx("div", { className: "bg-grey-200 h-4 w-48 rounded" }),
5894
+ /* @__PURE__ */ jsx("div", { className: "bg-grey-200 h-8 w-8 rounded" })
5895
+ ] }),
5896
+ /* @__PURE__ */ jsx("div", { className: "bg-grey-200 h-8 w-full rounded" })
5897
+ ] })
5898
+ ] })
5899
+ ] });
5900
+ }
5901
+ function ThemeSelectorContent({
5902
+ themeCategory,
5903
+ setThemeCategory,
5904
+ primaryColor,
5905
+ setPrimaryColor,
5906
+ accentColor,
5907
+ setAccentColor,
5908
+ greyColor,
5909
+ setGreyColor,
5910
+ availableAccentColors,
5911
+ colorThemes: colorThemes2
5912
+ }) {
5913
+ const searchParams = useSearchParams();
5914
+ const [, copyToClipboardRaw] = useCopyToClipboard();
5915
+ const [copied, setCopied] = useState(false);
5916
+ const updateUrlParams = useCallback(
5917
+ (category, primary, accent) => {
5918
+ const params = new URLSearchParams();
5919
+ params.set("theme", category);
5920
+ params.set("primary", primary);
5921
+ params.set("accent", accent);
5922
+ window.history.replaceState(null, "", `?${params.toString()}`);
5923
+ },
5924
+ []
5925
+ );
5926
+ useEffect(() => {
5927
+ const themeParam = searchParams.get("theme");
5928
+ const primaryParam = searchParams.get("primary");
5929
+ const accentParam = searchParams.get("accent");
5930
+ let shouldUpdateUrl = false;
5931
+ let newCategory = themeCategory;
5932
+ let newPrimary = primaryColor;
5933
+ let newAccent = accentColor;
5934
+ if (themeParam && (themeParam === "brand" || themeParam === "aboriginal")) {
5935
+ if (themeParam !== themeCategory) {
5936
+ newCategory = themeParam;
5937
+ shouldUpdateUrl = true;
5938
+ const neutral = findGreyKey(colorThemes2[themeParam]);
5939
+ if (neutral && neutral !== greyColor) {
5940
+ setGreyColor(neutral);
5941
+ }
5942
+ }
5943
+ }
5944
+ const availableColors = Object.keys(colorThemes2[newCategory]);
5945
+ if (primaryParam && availableColors.includes(primaryParam)) {
5946
+ if (primaryParam !== primaryColor) {
5947
+ newPrimary = primaryParam;
5948
+ shouldUpdateUrl = true;
5949
+ }
5950
+ }
5951
+ if (accentParam && availableColors.includes(accentParam) && accentParam !== newPrimary) {
5952
+ if (accentParam !== accentColor) {
5953
+ newAccent = accentParam;
5954
+ shouldUpdateUrl = true;
5955
+ }
5956
+ } else {
5957
+ const newAccentColor = availableColors.find((color2) => color2 !== newPrimary);
5958
+ if (newAccentColor && newAccentColor !== accentColor) {
5959
+ newAccent = newAccentColor;
5960
+ shouldUpdateUrl = true;
5961
+ }
5962
+ }
5963
+ if (shouldUpdateUrl) {
5964
+ if (newCategory !== themeCategory) setThemeCategory(newCategory);
5965
+ if (newPrimary !== primaryColor) setPrimaryColor(newPrimary);
5966
+ if (newAccent !== accentColor) setAccentColor(newAccent);
5967
+ }
5968
+ }, [
5969
+ searchParams,
5970
+ themeCategory,
5971
+ primaryColor,
5972
+ accentColor,
5973
+ greyColor,
5974
+ colorThemes2,
5975
+ setThemeCategory,
5976
+ setPrimaryColor,
5977
+ setAccentColor,
5978
+ setGreyColor
5979
+ ]);
5980
+ const handleCategoryChange = (newCategory) => {
5981
+ setThemeCategory(newCategory);
5982
+ const availableColors = Object.keys(colorThemes2[newCategory]);
5983
+ const neutral = findGreyKey(colorThemes2[newCategory]);
5984
+ if (neutral && neutral !== greyColor) {
5985
+ setGreyColor(neutral);
5986
+ }
5987
+ let newPrimary = primaryColor;
5988
+ let newAccent = accentColor;
5989
+ if (availableColors.length > 0) {
5990
+ if (availableColors.includes(primaryColor)) {
5991
+ const newAccentColor = availableColors.find((color2) => color2 !== primaryColor);
5992
+ if (newAccentColor && newAccentColor !== accentColor) {
5993
+ newAccent = newAccentColor;
5994
+ setAccentColor(newAccentColor);
5995
+ }
5996
+ } else {
5997
+ newPrimary = availableColors[0];
5998
+ setPrimaryColor(availableColors[0]);
5999
+ if (availableColors.length > 1) {
6000
+ newAccent = availableColors[1];
6001
+ setAccentColor(availableColors[1]);
6002
+ }
6003
+ }
6004
+ }
6005
+ updateUrlParams(newCategory, newPrimary, newAccent);
6006
+ };
6007
+ const handlePrimaryColorChange = (value) => {
6008
+ setPrimaryColor(value);
6009
+ if (value === accentColor) {
6010
+ const availableColors = Object.keys(colorThemes2[themeCategory]);
6011
+ const newAccentColor = availableColors.find((color2) => color2 !== value);
6012
+ if (newAccentColor) {
6013
+ setAccentColor(newAccentColor);
6014
+ updateUrlParams(themeCategory, value, newAccentColor);
6015
+ return;
6016
+ }
6017
+ }
6018
+ updateUrlParams(themeCategory, value, accentColor);
6019
+ };
6020
+ const handleAccentColorChange = (value) => {
6021
+ setAccentColor(value);
6022
+ updateUrlParams(themeCategory, primaryColor, value);
6023
+ };
6024
+ const labelStyles = {
6025
+ base: [
6026
+ // Base
6027
+ "group relative flex w-full items-center gap-2 rounded-sm border px-3 py-2",
6028
+ // Light mode
6029
+ "border-grey-200 bg-background",
6030
+ // Hover
6031
+ "hover:bg-primary-800/10 hover:text-foreground",
6032
+ // Active
6033
+ "[&:has([data-state=checked])]:border-grey-800",
6034
+ // Dark mode
6035
+ "",
6036
+ // Dark hover
6037
+ "dark:hover:bg-white/10",
6038
+ // Dark active
6039
+ "dark:group-data-[state=checked]:border-grey-400"
6040
+ ],
6041
+ label: [
6042
+ // Base
6043
+ "cursor-pointer flex items-center justify-between",
6044
+ // Active
6045
+ ""
6046
+ ]
6047
+ };
6048
+ const themeUrl = window?.location?.href || "";
6049
+ const copyToClipboard = () => {
6050
+ copyToClipboardRaw(themeUrl);
6051
+ setCopied(true);
6052
+ toast("Color theme url copied to clipboard", {
6053
+ duration: 2e3
6054
+ });
6055
+ setTimeout(() => setCopied(false), 2e3);
6056
+ };
6057
+ return /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-6", children: [
6058
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-2", children: [
6059
+ /* @__PURE__ */ jsx("h3", { className: "font-medium", children: "Theme Category" }),
6060
+ /* @__PURE__ */ jsx(
6061
+ SegmentedControl,
6062
+ {
6063
+ value: themeCategory,
6064
+ onValueChange: (value) => handleCategoryChange(value),
6065
+ children: /* @__PURE__ */ jsxs(SegmentedControlList, { className: "w-full", children: [
6066
+ /* @__PURE__ */ jsx(SegmentedControlTrigger, { value: "brand", children: "Brand Colors" }),
6067
+ /* @__PURE__ */ jsx(SegmentedControlTrigger, { value: "aboriginal", children: "Aboriginal Colors" })
6068
+ ] })
6069
+ }
6070
+ )
6071
+ ] }),
6072
+ /* @__PURE__ */ jsxs("div", { className: "grid gap-6", children: [
6073
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-3", children: [
6074
+ /* @__PURE__ */ jsx("h3", { className: "font-medium", children: "Primary Color" }),
6075
+ /* @__PURE__ */ jsx(
6076
+ RadioGroup2,
6077
+ {
6078
+ value: primaryColor,
6079
+ onValueChange: handlePrimaryColorChange,
6080
+ className: "grid grid-cols-2 gap-2",
6081
+ children: Object.entries(colorThemes2[themeCategory]).map(([key, theme2]) => /* @__PURE__ */ jsxs("div", { className: cn(labelStyles.base, ""), children: [
6082
+ /* @__PURE__ */ jsx(RadioGroupItem, { value: key, id: `primary-${key}`, className: "peer sr-only" }),
6083
+ /* @__PURE__ */ jsxs(Label3, { htmlFor: `primary-${key}`, className: cn(labelStyles.label, ""), children: [
6084
+ /* @__PURE__ */ jsx(
6085
+ "div",
6086
+ {
6087
+ className: "h-5 w-5 flex-none rounded-full",
6088
+ style: { backgroundColor: theme2.colors[3].hex }
6089
+ }
6090
+ ),
6091
+ /* @__PURE__ */ jsx("span", { className: "shrink", children: theme2.colors[3].name?.replace(/\b(NSW|0[1-4])\b/g, "").replace(/\s+/g, " ").trim() }),
6092
+ /* @__PURE__ */ jsx("span", { className: "absolute inset-0", "aria-hidden": true })
6093
+ ] })
6094
+ ] }, key))
6095
+ }
6096
+ )
6097
+ ] }),
6098
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-3", children: [
6099
+ /* @__PURE__ */ jsx("h3", { className: "font-medium", children: "Accent Color" }),
6100
+ /* @__PURE__ */ jsx(
6101
+ RadioGroup2,
6102
+ {
6103
+ value: accentColor,
6104
+ onValueChange: handleAccentColorChange,
6105
+ className: "grid grid-cols-2 gap-2",
6106
+ children: availableAccentColors.map((key) => /* @__PURE__ */ jsxs("div", { className: cn(labelStyles.base, ""), children: [
6107
+ /* @__PURE__ */ jsx(RadioGroupItem, { value: key, id: `accent-${key}`, className: "peer sr-only" }),
6108
+ /* @__PURE__ */ jsxs(Label3, { htmlFor: `accent-${key}`, className: cn(labelStyles.label, ""), children: [
6109
+ /* @__PURE__ */ jsx(
6110
+ "div",
6111
+ {
6112
+ className: "size-5 flex-none rounded-full",
6113
+ style: { backgroundColor: colorThemes2[themeCategory][key].colors[2].hex }
6114
+ }
6115
+ ),
6116
+ /* @__PURE__ */ jsx("span", { className: "shrink", children: colorThemes2[themeCategory][key].colors[2].name?.replace(/\b(NSW|0[1-4])\b/g, "").replace(/\s+/g, " ").trim() }),
6117
+ /* @__PURE__ */ jsx("span", { className: "absolute inset-0", "aria-hidden": true })
6118
+ ] })
6119
+ ] }, key))
6120
+ }
6121
+ )
6122
+ ] })
6123
+ ] }),
6124
+ /* @__PURE__ */ jsxs("div", { className: "space-y-3", children: [
6125
+ /* @__PURE__ */ jsx("h3", { className: "font-medium", children: "Share Theme" }),
6126
+ /* @__PURE__ */ jsxs("div", { className: "border-muted bg-muted/30 gap-3 rounded-md border p-3", children: [
6127
+ /* @__PURE__ */ jsxs("div", { className: "mb-2 flex min-w-0 items-center justify-between", children: [
6128
+ /* @__PURE__ */ jsx("p", { className: "text-muted-foreground text-sm", children: "Copy this URL to share your theme selection:" }),
6129
+ /* @__PURE__ */ jsxs(
6130
+ Button2,
6131
+ {
6132
+ variant: "ghost",
6133
+ size: "icon",
6134
+ className: "flex-shrink-0 p-0",
6135
+ onClick: copyToClipboard,
6136
+ title: copied ? "Copied!" : "Copy URL",
6137
+ children: [
6138
+ copied ? /* @__PURE__ */ jsx(Icons.check, {}) : /* @__PURE__ */ jsx(Icons.copy, {}),
6139
+ /* @__PURE__ */ jsx("span", { className: "sr-only", children: copied ? "URL copied to clipboard" : "Copy URL to clipboard" })
6140
+ ]
6141
+ }
6142
+ )
6143
+ ] }),
6144
+ /* @__PURE__ */ jsx("code", { className: "bg-background text-foreground block w-full rounded border px-2 py-1.5 font-mono text-xs break-all", children: themeUrl })
6145
+ ] })
6146
+ ] })
6147
+ ] });
6148
+ }
6149
+ function ThemeSelector(props) {
6150
+ return /* @__PURE__ */ jsx(Suspense, { fallback: /* @__PURE__ */ jsx(ThemeSelectorLoading, {}), children: /* @__PURE__ */ jsx(ThemeSelectorContent, { ...props }) });
6151
+ }
6152
+ function CodeDemoLoading() {
6153
+ return /* @__PURE__ */ jsxs("div", { className: "mt-8 animate-pulse", children: [
6154
+ /* @__PURE__ */ jsx("div", { className: "border-grey-200 bg-grey-50 dark:border-grey-600 dark:bg-grey-700 w-full rounded-t-xl border p-4", children: /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-2 sm:grid-cols-3", children: [
6155
+ /* @__PURE__ */ jsx("div", { className: "bg-grey-200 h-10 w-32 rounded" }),
6156
+ /* @__PURE__ */ jsx("div", { className: "bg-grey-200 h-10 w-32 rounded" }),
6157
+ /* @__PURE__ */ jsxs("div", { className: "flex justify-end gap-3", children: [
6158
+ /* @__PURE__ */ jsx("div", { className: "bg-grey-200 h-10 w-20 rounded" }),
6159
+ /* @__PURE__ */ jsx("div", { className: "bg-grey-200 h-10 w-16 rounded" }),
6160
+ /* @__PURE__ */ jsx("div", { className: "bg-grey-200 h-10 w-10 rounded" })
6161
+ ] })
6162
+ ] }) }),
6163
+ /* @__PURE__ */ jsx("div", { className: "border-grey-200 dark:border-grey-600 dark:bg-grey-900 flex border-x bg-white bg-gradient-to-r p-5", children: /* @__PURE__ */ jsx("div", { className: "bg-grey-200 h-64 w-full rounded" }) }),
6164
+ /* @__PURE__ */ jsxs("div", { className: "border-grey-200 dark:border-grey-600 border", children: [
6165
+ /* @__PURE__ */ jsx("div", { className: "border-grey-200 bg-grey-50 dark:border-grey-600 dark:bg-grey-700 flex w-full rounded-t-md border-b p-2", children: /* @__PURE__ */ jsx("div", { className: "bg-grey-200 h-8 w-24 rounded" }) }),
6166
+ /* @__PURE__ */ jsx("div", { className: "bg-grey-100 h-48" })
6167
+ ] })
6168
+ ] });
6169
+ }
6170
+ function CodeDemoContent({ data, hide = {} }) {
5939
6171
  const { resolvedTheme } = useTheme();
6172
+ const searchParams = useSearchParams();
5940
6173
  const { rtl = false, darkMode = false, themeSelector = false } = hide;
5941
6174
  const [tabIndex, setTabIndex] = useState(0);
5942
6175
  const [variant, setVariant] = useState(getInitialVariant(data));
@@ -5949,6 +6182,44 @@ function CodeDemo({ data, hide = {} }) {
5949
6182
  const [primaryColor, setPrimaryColor] = useState("blue");
5950
6183
  const [accentColor, setAccentColor] = useState("red");
5951
6184
  const [greyColor, setGreyColor] = useState("grey");
6185
+ const [isThemeInitialized, setIsThemeInitialized] = useState(false);
6186
+ useEffect(() => {
6187
+ const themeParam = searchParams.get("theme");
6188
+ const primaryParam = searchParams.get("primary");
6189
+ const accentParam = searchParams.get("accent");
6190
+ let newCategory = themeCategory;
6191
+ let newPrimary = primaryColor;
6192
+ let newAccent = accentColor;
6193
+ if (themeParam && (themeParam === "brand" || themeParam === "aboriginal")) {
6194
+ newCategory = themeParam;
6195
+ setThemeCategory(themeParam);
6196
+ }
6197
+ const availableColors = Object.keys(colorThemes[newCategory]);
6198
+ if (primaryParam && availableColors.includes(primaryParam)) {
6199
+ newPrimary = primaryParam;
6200
+ setPrimaryColor(primaryParam);
6201
+ } else if (!availableColors.includes(newPrimary)) {
6202
+ newPrimary = availableColors[0];
6203
+ setPrimaryColor(newPrimary);
6204
+ }
6205
+ if (accentParam && availableColors.includes(accentParam) && accentParam !== newPrimary) {
6206
+ newAccent = accentParam;
6207
+ setAccentColor(accentParam);
6208
+ } else {
6209
+ const newAccentColor = availableColors.find((color2) => color2 !== newPrimary);
6210
+ if (newAccentColor) {
6211
+ newAccent = newAccentColor;
6212
+ setAccentColor(newAccent);
6213
+ }
6214
+ }
6215
+ const neutralKey = Object.keys(colorThemes[newCategory]).find(
6216
+ (k) => k.toLowerCase().includes("grey")
6217
+ );
6218
+ if (neutralKey) {
6219
+ setGreyColor(neutralKey);
6220
+ }
6221
+ setIsThemeInitialized(true);
6222
+ }, [searchParams, themeCategory, primaryColor, accentColor]);
5952
6223
  useEffect(() => {
5953
6224
  setDarkMode(resolvedTheme === "dark");
5954
6225
  }, [resolvedTheme]);
@@ -6040,6 +6311,7 @@ function CodeDemo({ data, hide = {} }) {
6040
6311
  return /* @__PURE__ */ jsxs("div", { className: "mt-8", children: [
6041
6312
  /* @__PURE__ */ jsx("div", { className: "border-grey-200 bg-grey-50 dark:border-grey-600 dark:bg-grey-700 w-full rounded-t-xl border p-4", children: /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-2 sm:grid-cols-3", children: [
6042
6313
  /* @__PURE__ */ jsx(EditOnGithubButton, { githubSlug: data.githubSlug }),
6314
+ data.figmaSlug && /* @__PURE__ */ jsx(OpenInFigmaButton, { figmaSlug: data.figmaSlug }),
6043
6315
  /* @__PURE__ */ jsx(ToggleViewButtons, { onSelect: setView }),
6044
6316
  /* @__PURE__ */ jsxs("div", { className: "col-span-1 flex justify-end gap-3", children: [
6045
6317
  !themeSelector && /* @__PURE__ */ jsx(
@@ -6052,7 +6324,8 @@ function CodeDemo({ data, hide = {} }) {
6052
6324
  accentColor,
6053
6325
  setAccentColor,
6054
6326
  greyColor,
6055
- setGreyColor
6327
+ setGreyColor,
6328
+ isInitialized: isThemeInitialized
6056
6329
  }
6057
6330
  ),
6058
6331
  !rtl && /* @__PURE__ */ jsx(ToggleRTLButton, { isRTL, onClick: () => setIsRTL((state) => !state) }),
@@ -6127,6 +6400,9 @@ function CodeDemo({ data, hide = {} }) {
6127
6400
  ) })
6128
6401
  ] });
6129
6402
  }
6403
+ function CodeDemo(props) {
6404
+ return /* @__PURE__ */ jsx(Suspense, { fallback: /* @__PURE__ */ jsx(CodeDemoLoading, {}), children: /* @__PURE__ */ jsx(CodeDemoContent, { ...props }) });
6405
+ }
6130
6406
  var IFrame = React16__default.forwardRef(
6131
6407
  ({ iframe, isRTL, isDarkMode }, ref) => {
6132
6408
  useEffect(() => {
@@ -6215,7 +6491,7 @@ function CodePreview({
6215
6491
  }
6216
6492
  function EditOnGithubButton({ githubSlug }) {
6217
6493
  const githubSrcHref = "https://github.com";
6218
- const href = `${githubSrcHref}${githubSlug}`;
6494
+ const href = githubSlug ? `${githubSrcHref}${githubSlug}` : githubSrcHref;
6219
6495
  return /* @__PURE__ */ jsxs(
6220
6496
  Button2,
6221
6497
  {
@@ -6232,6 +6508,25 @@ function EditOnGithubButton({ githubSlug }) {
6232
6508
  }
6233
6509
  );
6234
6510
  }
6511
+ function OpenInFigmaButton({ figmaSlug }) {
6512
+ const figmaSrcHref = "https://www.figma.com";
6513
+ const href = figmaSlug ? `${figmaSrcHref}${figmaSlug}` : figmaSrcHref;
6514
+ return /* @__PURE__ */ jsxs(
6515
+ Button2,
6516
+ {
6517
+ variant: "outline",
6518
+ color: "light",
6519
+ href,
6520
+ target: "_blank",
6521
+ rel: "nofollow noopener noreferrer",
6522
+ className: "flex h-10 w-fit items-center text-sm",
6523
+ children: [
6524
+ /* @__PURE__ */ jsx(Social.Figma, { "data-slot": "icon" }),
6525
+ "Open in Figma"
6526
+ ]
6527
+ }
6528
+ );
6529
+ }
6235
6530
  function ToggleViewButtons({ onSelect }) {
6236
6531
  const views = [
6237
6532
  { name: "desktop", title: "Toggle full screen", icon: Icons.desktop },
@@ -6248,7 +6543,8 @@ function ThemeSelectorDropDown({
6248
6543
  accentColor,
6249
6544
  setAccentColor,
6250
6545
  greyColor,
6251
- setGreyColor
6546
+ setGreyColor,
6547
+ isInitialized
6252
6548
  }) {
6253
6549
  const filteredColorThemes = useMemo(() => {
6254
6550
  const filtered = {};
@@ -6266,6 +6562,7 @@ function ThemeSelectorDropDown({
6266
6562
  return allColors.filter((color2) => color2 !== primaryColor);
6267
6563
  }, [filteredColorThemes, themeCategory, primaryColor]);
6268
6564
  useEffect(() => {
6565
+ if (!isInitialized) return;
6269
6566
  const neutralKey = Object.keys(colorThemes[themeCategory]).find((k) => k.toLowerCase().includes("grey")) ?? "";
6270
6567
  if (neutralKey && neutralKey !== greyColor) {
6271
6568
  setGreyColor(neutralKey);
@@ -6291,20 +6588,29 @@ function ThemeSelectorDropDown({
6291
6588
  greyColor,
6292
6589
  setPrimaryColor,
6293
6590
  setAccentColor,
6294
- setGreyColor
6591
+ setGreyColor,
6592
+ isInitialized
6295
6593
  ]);
6296
6594
  const primaryColorSwatch = colorThemes[themeCategory][primaryColor]?.colors[3]?.hex || "#000000";
6297
6595
  const accentColorSwatch = colorThemes[themeCategory][accentColor]?.colors[2]?.hex || "#000000";
6298
6596
  return /* @__PURE__ */ jsxs(Popover, { children: [
6299
- /* @__PURE__ */ jsx(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxs(Button2, { color: "light", variant: "outline", className: "flex h-10 items-center text-sm", children: [
6300
- /* @__PURE__ */ jsx(Icons.palette, {}),
6301
- /* @__PURE__ */ jsx("span", { children: "Theme" }),
6302
- /* @__PURE__ */ jsxs("div", { className: "ml-2 flex gap-1", children: [
6303
- /* @__PURE__ */ jsx("div", { className: "h-3 w-3 rounded-full", style: { backgroundColor: primaryColorSwatch } }),
6304
- /* @__PURE__ */ jsx("div", { className: "h-3 w-3 rounded-full", style: { backgroundColor: accentColorSwatch } })
6305
- ] })
6306
- ] }) }),
6307
- /* @__PURE__ */ jsx(PopoverContent, { className: "w-80", children: /* @__PURE__ */ jsx(
6597
+ /* @__PURE__ */ jsx(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxs(
6598
+ Button2,
6599
+ {
6600
+ color: "light",
6601
+ variant: "outline",
6602
+ className: "flex h-10 items-center bg-transparent text-sm",
6603
+ children: [
6604
+ /* @__PURE__ */ jsx(Icons.palette, {}),
6605
+ /* @__PURE__ */ jsx("span", { children: "Theme" }),
6606
+ /* @__PURE__ */ jsxs("div", { className: "ml-2 flex gap-1", children: [
6607
+ /* @__PURE__ */ jsx("div", { className: "h-3 w-3 rounded-full", style: { backgroundColor: primaryColorSwatch } }),
6608
+ /* @__PURE__ */ jsx("div", { className: "h-3 w-3 rounded-full", style: { backgroundColor: accentColorSwatch } })
6609
+ ] })
6610
+ ]
6611
+ }
6612
+ ) }),
6613
+ /* @__PURE__ */ jsx(PopoverContent, { className: "w-100", children: /* @__PURE__ */ jsx(ScrollArea, { className: "h-120 w-full", children: /* @__PURE__ */ jsx(
6308
6614
  ThemeSelector,
6309
6615
  {
6310
6616
  themeCategory,
@@ -6318,7 +6624,7 @@ function ThemeSelectorDropDown({
6318
6624
  availableAccentColors,
6319
6625
  colorThemes: filteredColorThemes
6320
6626
  }
6321
- ) })
6627
+ ) }) })
6322
6628
  ] });
6323
6629
  }
6324
6630
  function ToggleRTLButton({ isRTL, onClick }) {
@@ -6331,7 +6637,7 @@ function ToggleRTLButton({ isRTL, onClick }) {
6331
6637
  onClick,
6332
6638
  color: "light",
6333
6639
  variant: "outline",
6334
- className: "flex h-10 items-center text-sm",
6640
+ className: "flex h-10 items-center bg-transparent text-sm",
6335
6641
  children: [
6336
6642
  /* @__PURE__ */ jsx("span", { className: "sr-only", children: title }),
6337
6643
  dir
@@ -7106,20 +7412,20 @@ function FooterSocialLink({
7106
7412
  Icon2,
7107
7413
  {
7108
7414
  "data-slot": "icon",
7109
- className: "group-hover:fill-nsw-grey-900 dark:group-hover:fill-nsw-grey-500 fill-nsw-grey-700 transition"
7415
+ className: "group-hover:fill-grey-900 dark:group-hover:fill-grey-500 fill-grey-700 transition"
7110
7416
  }
7111
7417
  )
7112
7418
  ] });
7113
7419
  }
7114
7420
  function FooterAcknowledgement() {
7115
- return /* @__PURE__ */ jsx("div", { className: "border-nsw-grey-200 flex flex-row items-center gap-5 border-t pt-8 pb-4 dark:border-white/5", children: /* @__PURE__ */ jsx("p", { className: "text-nsw-grey-600 dark:text-nsw-grey-400 text-center text-base text-pretty lg:text-left", children: "We acknowledge the Traditional Custodians of the land on which we work and live, and pay our respects to Elders past, present and emerging." }) });
7421
+ return /* @__PURE__ */ jsx("div", { className: "border-grey-200 flex flex-row items-center gap-5 border-t pt-8 pb-4 dark:border-white/5", children: /* @__PURE__ */ jsx("p", { className: "text-grey-600 dark:text-grey-400 text-center text-base text-pretty lg:text-left", children: "We acknowledge the Traditional Custodians of the land on which we work and live, and pay our respects to Elders past, present and emerging." }) });
7116
7422
  }
7117
7423
  function FooterSmallPrint({
7118
7424
  socialLinks,
7119
7425
  department
7120
7426
  }) {
7121
7427
  return /* @__PURE__ */ jsxs("div", { className: "flex flex-col items-center justify-between gap-5 pt-4 sm:flex-row dark:border-white/5", children: [
7122
- /* @__PURE__ */ jsxs("p", { className: "text-nsw-grey-600 dark:text-nsw-grey-400 text-center text-sm lg:text-left", children: [
7428
+ /* @__PURE__ */ jsxs("p", { className: "text-grey-600 dark:text-grey-400 text-center text-sm lg:text-left", children: [
7123
7429
  "\xA9 Copyright ",
7124
7430
  (/* @__PURE__ */ new Date()).getFullYear(),
7125
7431
  department && " ",
@@ -7142,7 +7448,7 @@ function FooterLegalLinks({ legalLinks }) {
7142
7448
  Link10,
7143
7449
  {
7144
7450
  href: item.href,
7145
- className: "text-nsw-grey-600 hover:text-nsw-grey-600 hover:bg-primary-800/10 -m-1 rounded p-1 underline underline-offset-4 hover:decoration-2",
7451
+ className: "text-grey-600 hover:text-grey-600 hover:bg-primary-800/10 -m-1 rounded p-1 underline underline-offset-4 hover:decoration-2",
7146
7452
  children: item.name
7147
7453
  },
7148
7454
  item.name
@@ -7153,11 +7459,12 @@ function FooterLegalLinks({ legalLinks }) {
7153
7459
  function Footer({
7154
7460
  legalLinks,
7155
7461
  department,
7156
- socialLinks
7462
+ socialLinks,
7463
+ className
7157
7464
  }) {
7158
- return /* @__PURE__ */ jsxs("footer", { className: "mx-auto w-full px-4 py-16 pb-16 lg:pr-0 lg:pl-8", children: [
7465
+ return /* @__PURE__ */ jsxs("footer", { className: cn("mx-auto w-full px-4 py-16 pb-16 lg:pr-0 lg:pl-8", className), children: [
7159
7466
  /* @__PURE__ */ jsx(FooterAcknowledgement, {}),
7160
- /* @__PURE__ */ jsx(Separator4, { className: "bg-nsw-grey-200 my-4" }),
7467
+ /* @__PURE__ */ jsx(Separator4, { className: "bg-grey-200 my-4" }),
7161
7468
  /* @__PURE__ */ jsx(FooterLegalLinks, { legalLinks }),
7162
7469
  /* @__PURE__ */ jsx(FooterSmallPrint, { department, socialLinks })
7163
7470
  ] });
@@ -7251,11 +7558,11 @@ function FormMessage({ className, ...props }) {
7251
7558
  var styles3 = {
7252
7559
  base: [
7253
7560
  // Base
7254
- "inline-flex items-center justify-center gap-2 rounded-sm text-sm font-medium bg-transparent transition-all whitespace-nowrap cursor-pointer border-(--toggle-border) [--toggle-border:var(--color-nsw-grey-200)] text-nsw-grey-800",
7561
+ "inline-flex items-center justify-center gap-2 rounded-sm text-sm font-medium bg-transparent transition-all whitespace-nowrap cursor-pointer border-(--toggle-border) [--toggle-border:var(--color-grey-200)] text-grey-800",
7255
7562
  // States
7256
- "data-[state=on]:bg-nsw-grey-100 data-[state=on]:text-nsw-grey-850",
7563
+ "data-[state=on]:bg-grey-100 data-[state=on]:text-grey-850",
7257
7564
  // Hover
7258
- "hover:bg-nsw-grey-100 hover:text-nsw-grey-850",
7565
+ "hover:bg-grey-100 hover:text-grey-850",
7259
7566
  // Focus
7260
7567
  "focus:outline focus:outline-2 focus:outline-offset-0 focus:outline-(--toggle-border)",
7261
7568
  // Dark mode
@@ -7275,9 +7582,9 @@ var styles3 = {
7275
7582
  ],
7276
7583
  outline: [
7277
7584
  // Base
7278
- "text-nsw-grey-800 border [--toggle-border:var(--color-nsw-grey-300)]",
7585
+ "text-grey-800 border [--toggle-border:var(--color-grey-300)]",
7279
7586
  // States
7280
- "hover:[--toggle-border:var(--color-nsw-grey-400)]",
7587
+ "hover:[--toggle-border:var(--color-grey-400)]",
7281
7588
  // Dark mode
7282
7589
  "dark:[--toggle-border:white]/40",
7283
7590
  // Dark mode states
@@ -7449,7 +7756,7 @@ function Heading({
7449
7756
 
7450
7757
  // package.json
7451
7758
  var package_default = {
7452
- version: "1.42.0"};
7759
+ version: "1.44.0"};
7453
7760
  function Logo(props) {
7454
7761
  return /* @__PURE__ */ jsxs(Fragment, { children: [
7455
7762
  /* @__PURE__ */ jsx("span", { className: "sr-only", children: "NSW Government" }),
@@ -7492,7 +7799,7 @@ function Logo(props) {
7492
7799
  function ThemeSwitcher() {
7493
7800
  const { resolvedTheme, setTheme } = useTheme();
7494
7801
  const [mounted, setMounted] = useState(false);
7495
- const classes = "fill-nsw-grey-600 dark:fill-nsw-grey-100";
7802
+ const classes = "fill-grey-600 dark:fill-grey-100";
7496
7803
  useEffect(() => {
7497
7804
  setMounted(true);
7498
7805
  }, []);
@@ -7540,7 +7847,7 @@ function SiteSearch({ navigation }) {
7540
7847
  className: "relative h-10 w-full items-center justify-start sm:pr-12 md:w-40 lg:w-64",
7541
7848
  onClick: () => setOpen(true),
7542
7849
  children: [
7543
- /* @__PURE__ */ jsx("span", { className: "text-nsw-grey-600 hidden lg:inline-flex", children: "Search site..." }),
7850
+ /* @__PURE__ */ jsx("span", { className: "text-grey-600 hidden lg:inline-flex", children: "Search site..." }),
7544
7851
  /* @__PURE__ */ jsx("span", { className: "inline-flex lg:hidden", children: "Search..." }),
7545
7852
  /* @__PURE__ */ jsxs("kbd", { className: "bg-muted pointer-events-none absolute top-2 right-2 hidden h-5 items-center gap-1 rounded border px-2 font-mono text-xs font-medium opacity-100 select-none sm:flex", children: [
7546
7853
  /* @__PURE__ */ jsx("span", { className: "text-xs", children: "\u2318" }),
@@ -7618,13 +7925,7 @@ function Header2({
7618
7925
  className: "group",
7619
7926
  href: "https://github.com/digitalnsw",
7620
7927
  "aria-label": "GitHub",
7621
- children: /* @__PURE__ */ jsx(
7622
- Social.Github,
7623
- {
7624
- "data-slot": "icon",
7625
- className: "fill-nsw-grey-600 dark:fill-nsw-grey-100 size-6"
7626
- }
7627
- )
7928
+ children: /* @__PURE__ */ jsx(Social.Github, { "data-slot": "icon", className: "fill-grey-600 dark:fill-grey-100 size-6" })
7628
7929
  }
7629
7930
  ),
7630
7931
  children
@@ -8183,53 +8484,39 @@ function Navigation({
8183
8484
  onLinkClick,
8184
8485
  navigation
8185
8486
  }) {
8186
- const pathname = usePathname();
8187
8487
  return /* @__PURE__ */ jsx("nav", { className: clsx21("text-base lg:text-sm", className), children: /* @__PURE__ */ jsx("ul", { role: "list", className: "flex flex-col gap-9", children: navigation.map((section, index) => /* @__PURE__ */ jsxs("li", { children: [
8188
- section.links ? /* @__PURE__ */ jsx("h2", { className: "font-display text-foreground font-medium dark:text-white", children: section.title }) : /* @__PURE__ */ jsx(
8189
- "ul",
8190
- {
8191
- role: "list",
8192
- className: "border-grey-400 dark:border-grey-200/15 mt-2 flex flex-col gap-2 border-l lg:mt-4",
8193
- children: /* @__PURE__ */ jsx("li", { className: "-ml-px flex flex-col items-start gap-2", children: /* @__PURE__ */ jsx(
8194
- Link10,
8195
- {
8196
- href: section.href || "/",
8197
- onClick: onLinkClick,
8198
- className: clsx21(
8199
- "inline-block w-full cursor-pointer rounded-r-md border-l py-1 pr-2 pl-4 text-left text-base/8 sm:text-sm/6",
8200
- "hover:border-grey-950 hover:text-grey-950 hover:bg-primary-800/10 hover:font-semibold",
8201
- "dark:text-grey-400 dark:hover:border-grey-400 dark:hover:text-white",
8202
- section.href === pathname && "border-primary-800 text-primary-800 bg-primary-800/10 border-l font-bold dark:border-white dark:bg-white/20"
8203
- ),
8204
- children: section.title
8205
- }
8206
- ) }, index)
8207
- }
8208
- ),
8209
- /* @__PURE__ */ jsx(
8210
- "ul",
8488
+ section.links ? /* @__PURE__ */ jsx("h2", { className: "font-display text-grey-800 font-medium dark:text-white", children: section.title }) : /* @__PURE__ */ jsx("ul", { role: "list", className: "mt-2 flex flex-col gap-2 border-l lg:mt-4", children: /* @__PURE__ */ jsx("li", { className: "-ml-px flex flex-col items-start gap-2", children: /* @__PURE__ */ jsx(
8489
+ NavigationLink,
8211
8490
  {
8212
- role: "list",
8213
- className: "border-grey-400 dark:border-grey-200/15 mt-2 flex flex-col gap-2 border-l lg:mt-4",
8214
- children: section.links && section.links.map((link, index2) => /* @__PURE__ */ jsx("li", { className: "-ml-px flex flex-col items-start gap-2", children: /* @__PURE__ */ jsx(
8215
- Link10,
8216
- {
8217
- href: link.href,
8218
- onClick: onLinkClick,
8219
- className: clsx21(
8220
- "text-foreground inline-block border-l border-transparent pl-5 text-base/8 sm:pl-4 sm:text-sm/6",
8221
- "hover:border-grey-950 hover:text-grey-950 hover:font-semibold",
8222
- "dark:text-grey-400",
8223
- "dark:hover:border-grey-400 dark:hover:text-white",
8224
- link.href === pathname && "border-primary-800 text-primary-800 bg-primary-800/10 border-l font-bold dark:border-white dark:bg-white/20"
8225
- ),
8226
- children: link.title
8227
- }
8228
- ) }, index2))
8491
+ href: section.href || "/",
8492
+ title: section.title,
8493
+ onClick: onLinkClick
8229
8494
  }
8230
- )
8495
+ ) }, index) }),
8496
+ /* @__PURE__ */ jsx("ul", { role: "list", className: "mt-2 flex flex-col gap-2 border-l lg:mt-4", children: section.links && section.links.map((link, index2) => /* @__PURE__ */ jsx("li", { className: "-ml-px flex flex-col items-start gap-2", children: /* @__PURE__ */ jsx(NavigationLink, { href: link.href, title: link.title, onClick: onLinkClick }) }, index2)) })
8231
8497
  ] }, index)) }) });
8232
8498
  }
8499
+ function NavigationLink({
8500
+ href,
8501
+ title,
8502
+ onClick
8503
+ }) {
8504
+ const pathname = usePathname();
8505
+ return /* @__PURE__ */ jsx(
8506
+ Link10,
8507
+ {
8508
+ href,
8509
+ onClick,
8510
+ className: clsx21(
8511
+ "inline-block w-full cursor-pointer rounded-r-md border-l py-1 pr-2 pl-4 text-left text-base/8 sm:text-sm/6",
8512
+ "hover:border-grey-950 hover:text-grey-950 hover:bg-primary-800/10 hover:font-semibold",
8513
+ "dark:text-grey-400 dark:hover:border-grey-400 dark:hover:text-white",
8514
+ href === pathname && "border-primary-800 text-primary-800 bg-primary-800/10 border-l font-bold dark:border-white dark:bg-white/20"
8515
+ ),
8516
+ children: title
8517
+ }
8518
+ );
8519
+ }
8233
8520
  var LayoutGroupContext = createContext({});
8234
8521
  function useConstant(init) {
8235
8522
  const ref = useRef(null);
@@ -16240,9 +16527,24 @@ function PrevNextLinksPageLink({
16240
16527
  ) })
16241
16528
  ] });
16242
16529
  }
16530
+ function flattenNavigation(navigation) {
16531
+ const result = [];
16532
+ function traverse(items) {
16533
+ for (const item of items) {
16534
+ if (item.href) {
16535
+ result.push({ title: item.title, href: item.href });
16536
+ }
16537
+ if (item.links && Array.isArray(item.links)) {
16538
+ traverse(item.links);
16539
+ }
16540
+ }
16541
+ }
16542
+ traverse(navigation);
16543
+ return result;
16544
+ }
16243
16545
  function PrevNextLinks({ navigation }) {
16244
16546
  const pathname = usePathname();
16245
- const allLinks = navigation.flatMap((section) => section.links);
16547
+ const allLinks = flattenNavigation(navigation);
16246
16548
  const linkIndex = allLinks.findIndex((link) => link?.href === pathname);
16247
16549
  const previousPage = linkIndex > 0 ? allLinks[linkIndex - 1] : null;
16248
16550
  const nextPage = linkIndex > -1 && linkIndex < allLinks.length - 1 ? allLinks[linkIndex + 1] : null;
@@ -16313,59 +16615,6 @@ function ResizableHandle({
16313
16615
  }
16314
16616
  );
16315
16617
  }
16316
- function ScrollArea({
16317
- className,
16318
- children,
16319
- ...props
16320
- }) {
16321
- return /* @__PURE__ */ jsxs(
16322
- ScrollAreaPrimitive.Root,
16323
- {
16324
- "data-slot": "scroll-area",
16325
- className: cn("relative", className),
16326
- ...props,
16327
- children: [
16328
- /* @__PURE__ */ jsx(
16329
- ScrollAreaPrimitive.Viewport,
16330
- {
16331
- "data-slot": "scroll-area-viewport",
16332
- className: "focus-visible:ring-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1",
16333
- children
16334
- }
16335
- ),
16336
- /* @__PURE__ */ jsx(ScrollBar, {}),
16337
- /* @__PURE__ */ jsx(ScrollAreaPrimitive.Corner, {})
16338
- ]
16339
- }
16340
- );
16341
- }
16342
- function ScrollBar({
16343
- className,
16344
- orientation = "vertical",
16345
- ...props
16346
- }) {
16347
- return /* @__PURE__ */ jsx(
16348
- ScrollAreaPrimitive.ScrollAreaScrollbar,
16349
- {
16350
- "data-slot": "scroll-area-scrollbar",
16351
- orientation,
16352
- className: cn(
16353
- "flex touch-none p-px transition-colors select-none",
16354
- orientation === "vertical" && "h-full w-2.5 border-l border-l-transparent",
16355
- orientation === "horizontal" && "h-2.5 flex-col border-t border-t-transparent",
16356
- className
16357
- ),
16358
- ...props,
16359
- children: /* @__PURE__ */ jsx(
16360
- ScrollAreaPrimitive.ScrollAreaThumb,
16361
- {
16362
- "data-slot": "scroll-area-thumb",
16363
- className: "bg-border relative flex-1 rounded-full"
16364
- }
16365
- )
16366
- }
16367
- );
16368
- }
16369
16618
  function Sheet({ ...props }) {
16370
16619
  return /* @__PURE__ */ jsx(DialogPrimitive.Root, { "data-slot": "sheet", ...props });
16371
16620
  }
@@ -16469,6 +16718,15 @@ function SheetDescription({
16469
16718
  }
16470
16719
  );
16471
16720
  }
16721
+ function isLinkOrDescendantActive(link, pathname) {
16722
+ if (pathname === link.href) {
16723
+ return true;
16724
+ }
16725
+ if (link.links && link.links.length > 0) {
16726
+ return link.links.some((childLink) => isLinkOrDescendantActive(childLink, pathname));
16727
+ }
16728
+ return false;
16729
+ }
16472
16730
  function SidebarNavigation({
16473
16731
  className,
16474
16732
  onLinkClick,
@@ -16509,13 +16767,14 @@ function SidebarNavigation({
16509
16767
  function SidebarLink({ link, pathname, onLinkClick, depth }) {
16510
16768
  const hasChildren = Array.isArray(link.links) && link.links.length > 0;
16511
16769
  const isActive = pathname === link.href;
16770
+ const isActiveOrHasActiveDescendant = isLinkOrDescendantActive(link, pathname);
16512
16771
  const baseLinkClasses = clsx21(
16513
16772
  "border-l pl-4 pr-2 text-base/8 sm:text-sm/6 w-full text-left py-1 rounded-r-md cursor-pointer",
16514
16773
  "hover:border-grey-950 hover:text-grey-950 hover:font-semibold hover:bg-primary-800/10",
16515
16774
  "dark:text-grey-400 dark:hover:border-grey-400 dark:hover:text-white",
16516
16775
  isActive && "border-l border-primary-800 text-primary-800 font-bold dark:border-white bg-primary-800/10 dark:bg-white/20"
16517
16776
  );
16518
- return /* @__PURE__ */ jsx("li", { className: "-ml-px flex flex-col items-start gap-1", children: hasChildren ? /* @__PURE__ */ jsxs(Collapsible, { className: "w-full", defaultOpen: isActive, children: [
16777
+ return /* @__PURE__ */ jsx("li", { className: "-ml-px flex flex-col items-start gap-1", children: hasChildren ? /* @__PURE__ */ jsxs(Collapsible, { className: "w-full", defaultOpen: isActiveOrHasActiveDescendant, children: [
16519
16778
  /* @__PURE__ */ jsx(CollapsibleTrigger2, { asChild: true, children: /* @__PURE__ */ jsxs(
16520
16779
  "button",
16521
16780
  {
@@ -16534,24 +16793,16 @@ function SidebarLink({ link, pathname, onLinkClick, depth }) {
16534
16793
  ]
16535
16794
  }
16536
16795
  ) }),
16537
- /* @__PURE__ */ jsx(CollapsibleContent2, { children: /* @__PURE__ */ jsx(
16538
- "ul",
16796
+ /* @__PURE__ */ jsx(CollapsibleContent2, { children: /* @__PURE__ */ jsx("ul", { className: clsx21("mt-2 ml-5 flex flex-col gap-1 border-l pl-0"), children: link.links && link.links.map((childLink) => /* @__PURE__ */ jsx(
16797
+ SidebarLink,
16539
16798
  {
16540
- className: clsx21(
16541
- "border-grey-400 dark:border-grey-200/15 mt-2 ml-5 flex flex-col gap-1 border-l pl-0"
16542
- ),
16543
- children: link.links && link.links.map((childLink) => /* @__PURE__ */ jsx(
16544
- SidebarLink,
16545
- {
16546
- link: childLink,
16547
- pathname,
16548
- onLinkClick,
16549
- depth: depth + 1
16550
- },
16551
- childLink.href
16552
- ))
16553
- }
16554
- ) })
16799
+ link: childLink,
16800
+ pathname,
16801
+ onLinkClick,
16802
+ depth: depth + 1
16803
+ },
16804
+ childLink.href
16805
+ )) }) })
16555
16806
  ] }) : /* @__PURE__ */ jsx(Link10, { href: link.href, onClick: onLinkClick, className: baseLinkClasses, children: link.title }) });
16556
16807
  }
16557
16808
  var StepIndicator = React16.forwardRef(
@@ -16631,8 +16882,8 @@ var StepIndicator = React16.forwardRef(
16631
16882
  children: [
16632
16883
  /* @__PURE__ */ jsx("span", { className: "flex h-9 items-center", children: /* @__PURE__ */ jsx("span", { className: "bg-success-450 group-hover:bg-success-500 group-hover:border-success-550 relative z-10 flex size-6 items-center justify-center rounded-full", children: /* @__PURE__ */ jsx(Icons.check, { "aria-hidden": "true", className: "size-4 text-white" }) }) }),
16633
16884
  /* @__PURE__ */ jsxs("span", { className: "ml-4 flex min-w-0 flex-col", children: [
16634
- step.title && /* @__PURE__ */ jsx("span", { className: "text-nsw-grey-700 hover:text-nsw-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.title }),
16635
- step.description && /* @__PURE__ */ jsx("span", { className: "text-nsw-grey-700 hover:text-nsw-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.description })
16885
+ step.title && /* @__PURE__ */ jsx("span", { className: "text-grey-700 hover:text-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.title }),
16886
+ step.description && /* @__PURE__ */ jsx("span", { className: "text-grey-700 hover:text-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.description })
16636
16887
  ] })
16637
16888
  ]
16638
16889
  }
@@ -16654,8 +16905,8 @@ var StepIndicator = React16.forwardRef(
16654
16905
  children: [
16655
16906
  /* @__PURE__ */ jsx("span", { className: "flex h-9 items-center", children: /* @__PURE__ */ jsx("span", { className: "border-success-450 group-hover:bg-success-450 text-success-450 relative z-10 flex size-6 items-center justify-center rounded-full border-2 bg-white group-hover:text-white", children: /* @__PURE__ */ jsx(Icons.check, { "aria-hidden": "true", className: "size-4" }) }) }),
16656
16907
  /* @__PURE__ */ jsxs("span", { className: "ml-4 flex min-w-0 flex-col", children: [
16657
- step.title && /* @__PURE__ */ jsx("span", { className: "text-nsw-grey-700 hover:text-nsw-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.title }),
16658
- step.description && /* @__PURE__ */ jsx("span", { className: "text-nsw-grey-700 hover:text-nsw-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.description })
16908
+ step.title && /* @__PURE__ */ jsx("span", { className: "text-grey-700 hover:text-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.title }),
16909
+ step.description && /* @__PURE__ */ jsx("span", { className: "text-grey-700 hover:text-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.description })
16659
16910
  ] })
16660
16911
  ]
16661
16912
  }
@@ -16677,8 +16928,8 @@ var StepIndicator = React16.forwardRef(
16677
16928
  children: [
16678
16929
  /* @__PURE__ */ jsx("span", { className: "flex h-9 items-center", children: /* @__PURE__ */ jsx("span", { className: "border-primary-500 group-hover:border-primary-550 group-hover:bg-primary-550 text-primary-500 relative z-10 flex size-6 items-center justify-center rounded-full border-2 bg-white group-hover:text-white", children: /* @__PURE__ */ jsx(Icons.more_horiz, { "aria-hidden": "true", className: "size-4" }) }) }),
16679
16930
  /* @__PURE__ */ jsxs("span", { className: "ml-4 flex min-w-0 flex-col", children: [
16680
- step.title && /* @__PURE__ */ jsx("span", { className: "text-nsw-grey-700 hover:text-nsw-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.title }),
16681
- step.description && /* @__PURE__ */ jsx("span", { className: "text-nsw-grey-700 hover:text-nsw-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.description })
16931
+ step.title && /* @__PURE__ */ jsx("span", { className: "text-grey-700 hover:text-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.title }),
16932
+ step.description && /* @__PURE__ */ jsx("span", { className: "text-grey-700 hover:text-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.description })
16682
16933
  ] })
16683
16934
  ]
16684
16935
  }
@@ -16700,8 +16951,8 @@ var StepIndicator = React16.forwardRef(
16700
16951
  children: [
16701
16952
  /* @__PURE__ */ jsx("span", { className: "flex h-9 items-center", children: /* @__PURE__ */ jsx("span", { className: "bg-danger-450 group-hover:bg-danger-500 group-hover:border-danger-500 relative z-10 flex size-6 items-center justify-center rounded-full", children: /* @__PURE__ */ jsx(Icons.exclamation, { "aria-hidden": "true", className: "size-4 text-white" }) }) }),
16702
16953
  /* @__PURE__ */ jsxs("span", { className: "ml-4 flex min-w-0 flex-col", children: [
16703
- step.title && /* @__PURE__ */ jsx("span", { className: "text-nsw-grey-700 hover:text-nsw-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.title }),
16704
- step.description && /* @__PURE__ */ jsx("span", { className: "text-nsw-grey-700 hover:text-nsw-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.description })
16954
+ step.title && /* @__PURE__ */ jsx("span", { className: "text-grey-700 hover:text-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.title }),
16955
+ step.description && /* @__PURE__ */ jsx("span", { className: "text-grey-700 hover:text-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.description })
16705
16956
  ] })
16706
16957
  ]
16707
16958
  }
@@ -16723,8 +16974,8 @@ var StepIndicator = React16.forwardRef(
16723
16974
  children: [
16724
16975
  /* @__PURE__ */ jsx("span", { "aria-hidden": "true", className: "flex h-9 items-center", children: /* @__PURE__ */ jsx("span", { className: "border-grey-300 relative z-10 flex size-6 items-center justify-center rounded-full border-2 bg-white group-hover:border-gray-400", children: /* @__PURE__ */ jsx("span", { className: "group-hover:bg-grey-300 size-2 rounded-full bg-transparent" }) }) }),
16725
16976
  /* @__PURE__ */ jsxs("span", { className: "ml-4 flex min-w-0 flex-col", children: [
16726
- step.title && /* @__PURE__ */ jsx("span", { className: "text-nsw-grey-700 hover:text-nsw-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.title }),
16727
- step.description && /* @__PURE__ */ jsx("span", { className: "text-nsw-grey-700 hover:text-nsw-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.description })
16977
+ step.title && /* @__PURE__ */ jsx("span", { className: "text-grey-700 hover:text-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.title }),
16978
+ step.description && /* @__PURE__ */ jsx("span", { className: "text-grey-700 hover:text-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.description })
16728
16979
  ] })
16729
16980
  ]
16730
16981
  }
@@ -16744,10 +16995,10 @@ var StepIndicator = React16.forwardRef(
16744
16995
  className: "group relative flex items-center",
16745
16996
  onClick: onLinkClick,
16746
16997
  children: [
16747
- /* @__PURE__ */ jsx("span", { className: "flex h-9 items-center", children: /* @__PURE__ */ jsx("span", { className: "bg-nsw-grey-600 group-hover:bg-nsw-grey-800 relative z-10 flex size-6 items-center justify-center rounded-full", children: /* @__PURE__ */ jsx(Icons.remove, { "aria-hidden": "true", className: "size-4 text-white" }) }) }),
16998
+ /* @__PURE__ */ jsx("span", { className: "flex h-9 items-center", children: /* @__PURE__ */ jsx("span", { className: "bg-grey-600 group-hover:bg-grey-800 relative z-10 flex size-6 items-center justify-center rounded-full", children: /* @__PURE__ */ jsx(Icons.remove, { "aria-hidden": "true", className: "size-4 text-white" }) }) }),
16748
16999
  /* @__PURE__ */ jsxs("span", { className: "ml-4 flex min-w-0 flex-col", children: [
16749
- step.title && /* @__PURE__ */ jsx("span", { className: "text-nsw-grey-700 hover:text-nsw-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.title }),
16750
- step.description && /* @__PURE__ */ jsx("span", { className: "text-nsw-grey-700 hover:text-nsw-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.description })
17000
+ step.title && /* @__PURE__ */ jsx("span", { className: "text-grey-700 hover:text-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.title }),
17001
+ step.description && /* @__PURE__ */ jsx("span", { className: "text-grey-700 hover:text-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.description })
16751
17002
  ] })
16752
17003
  ]
16753
17004
  }
@@ -16769,8 +17020,8 @@ var StepIndicator = React16.forwardRef(
16769
17020
  children: [
16770
17021
  /* @__PURE__ */ jsx("span", { "aria-hidden": "true", className: "flex h-9 items-center", children: /* @__PURE__ */ jsx("span", { className: "border-grey-300 relative z-10 flex size-6 items-center justify-center rounded-full border-2 bg-white group-hover:border-gray-400", children: /* @__PURE__ */ jsx("span", { className: "group-hover:bg-grey-300 size-2 rounded-full bg-transparent" }) }) }),
16771
17022
  /* @__PURE__ */ jsxs("span", { className: "ml-4 flex min-w-0 flex-col", children: [
16772
- step.title && /* @__PURE__ */ jsx("span", { className: "text-nsw-grey-700 hover:text-nsw-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.title }),
16773
- step.description && /* @__PURE__ */ jsx("span", { className: "text-nsw-grey-700 hover:text-nsw-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.description })
17023
+ step.title && /* @__PURE__ */ jsx("span", { className: "text-grey-700 hover:text-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.title }),
17024
+ step.description && /* @__PURE__ */ jsx("span", { className: "text-grey-700 hover:text-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.description })
16774
17025
  ] })
16775
17026
  ]
16776
17027
  }
@@ -16975,97 +17226,45 @@ function SwitchField({
16975
17226
  );
16976
17227
  }
16977
17228
  var colors2 = {
16978
- "dark/zinc": [
16979
- "[--switch-bg-ring:var(--color-zinc-950)]/90 [--switch-bg:var(--color-zinc-900)] dark:[--switch-bg-ring:transparent] dark:[--switch-bg:var(--color-white)]/25",
16980
- "[--switch-ring:var(--color-zinc-950)]/90 [--switch-shadow:var(--color-black)]/10 [--switch:white] dark:[--switch-ring:var(--color-zinc-700)]/90"
17229
+ "dark/grey": [
17230
+ "[--switch-bg-ring:var(--color-grey-950)]/90 [--switch-bg:var(--color-grey-900)] dark:[--switch-bg-ring:transparent] dark:[--switch-bg:var(--color-white)]/25",
17231
+ "[--switch-ring:var(--color-grey-950)]/90 [--switch-shadow:var(--color-black)]/10 [--switch:white] dark:[--switch-ring:var(--color-grey-700)]/90"
16981
17232
  ],
16982
17233
  "dark/white": [
16983
- "[--switch-bg-ring:var(--color-zinc-950)]/90 [--switch-bg:var(--color-zinc-900)] dark:[--switch-bg-ring:transparent] dark:[--switch-bg:var(--color-white)]",
16984
- "[--switch-ring:var(--color-zinc-950)]/90 [--switch-shadow:var(--color-black)]/10 [--switch:white] dark:[--switch-ring:transparent] dark:[--switch:var(--color-zinc-900)]"
17234
+ "[--switch-bg-ring:var(--color-grey-950)]/90 [--switch-bg:var(--color-grey-900)] dark:[--switch-bg-ring:transparent] dark:[--switch-bg:var(--color-white)]",
17235
+ "[--switch-ring:var(--color-grey-950)]/90 [--switch-shadow:var(--color-black)]/10 [--switch:white] dark:[--switch-ring:transparent] dark:[--switch:var(--color-grey-900)]"
16985
17236
  ],
16986
17237
  dark: [
16987
- "[--switch-bg-ring:var(--color-zinc-950)]/90 [--switch-bg:var(--color-zinc-900)] dark:[--switch-bg-ring:var(--color-white)]/15",
16988
- "[--switch-ring:var(--color-zinc-950)]/90 [--switch-shadow:var(--color-black)]/10 [--switch:white]"
17238
+ "[--switch-bg-ring:var(--color-grey-950)]/90 [--switch-bg:var(--color-grey-900)] dark:[--switch-bg-ring:var(--color-white)]/15",
17239
+ "[--switch-ring:var(--color-grey-950)]/90 [--switch-shadow:var(--color-black)]/10 [--switch:white]"
16989
17240
  ],
16990
- zinc: [
16991
- "[--switch-bg-ring:var(--color-zinc-700)]/90 [--switch-bg:var(--color-zinc-600)] dark:[--switch-bg-ring:transparent]",
16992
- "[--switch-shadow:var(--color-black)]/10 [--switch:white] [--switch-ring:var(--color-zinc-700)]/90"
17241
+ grey: [
17242
+ "[--switch-bg-ring:var(--color-grey-700)]/90 [--switch-bg:var(--color-grey-600)] dark:[--switch-bg-ring:transparent]",
17243
+ "[--switch-shadow:var(--color-black)]/10 [--switch:white] [--switch-ring:var(--color-grey-700)]/90"
16993
17244
  ],
16994
17245
  white: [
16995
17246
  "[--switch-bg-ring:var(--color-black)]/15 [--switch-bg:white] dark:[--switch-bg-ring:transparent]",
16996
- "[--switch-shadow:var(--color-black)]/10 [--switch-ring:transparent] [--switch:var(--color-zinc-950)]"
16997
- ],
16998
- red: [
16999
- "[--switch-bg-ring:var(--color-red-700)]/90 [--switch-bg:var(--color-red-600)] dark:[--switch-bg-ring:transparent]",
17000
- "[--switch:white] [--switch-ring:var(--color-red-700)]/90 [--switch-shadow:var(--color-red-900)]/20"
17001
- ],
17002
- orange: [
17003
- "[--switch-bg-ring:var(--color-orange-600)]/90 [--switch-bg:var(--color-orange-500)] dark:[--switch-bg-ring:transparent]",
17004
- "[--switch:white] [--switch-ring:var(--color-orange-600)]/90 [--switch-shadow:var(--color-orange-900)]/20"
17005
- ],
17006
- amber: [
17007
- "[--switch-bg-ring:var(--color-amber-500)]/80 [--switch-bg:var(--color-amber-400)] dark:[--switch-bg-ring:transparent]",
17008
- "[--switch-ring:transparent] [--switch-shadow:transparent] [--switch:var(--color-amber-950)]"
17009
- ],
17010
- yellow: [
17011
- "[--switch-bg-ring:var(--color-yellow-400)]/80 [--switch-bg:var(--color-yellow-300)] dark:[--switch-bg-ring:transparent]",
17012
- "[--switch-ring:transparent] [--switch-shadow:transparent] [--switch:var(--color-yellow-950)]"
17013
- ],
17014
- lime: [
17015
- "[--switch-bg-ring:var(--color-lime-400)]/80 [--switch-bg:var(--color-lime-300)] dark:[--switch-bg-ring:transparent]",
17016
- "[--switch-ring:transparent] [--switch-shadow:transparent] [--switch:var(--color-lime-950)]"
17017
- ],
17018
- green: [
17019
- "[--switch-bg-ring:var(--color-green-700)]/90 [--switch-bg:var(--color-green-600)] dark:[--switch-bg-ring:transparent]",
17020
- "[--switch:white] [--switch-ring:var(--color-green-700)]/90 [--switch-shadow:var(--color-green-900)]/20"
17021
- ],
17022
- emerald: [
17023
- "[--switch-bg-ring:var(--color-emerald-600)]/90 [--switch-bg:var(--color-emerald-500)] dark:[--switch-bg-ring:transparent]",
17024
- "[--switch:white] [--switch-ring:var(--color-emerald-600)]/90 [--switch-shadow:var(--color-emerald-900)]/20"
17025
- ],
17026
- teal: [
17027
- "[--switch-bg-ring:var(--color-teal-700)]/90 [--switch-bg:var(--color-teal-600)] dark:[--switch-bg-ring:transparent]",
17028
- "[--switch:white] [--switch-ring:var(--color-teal-700)]/90 [--switch-shadow:var(--color-teal-900)]/20"
17247
+ "[--switch-shadow:var(--color-black)]/10 [--switch-ring:transparent] [--switch:var(--color-grey-950)]"
17029
17248
  ],
17030
- cyan: [
17031
- "[--switch-bg-ring:var(--color-cyan-400)]/80 [--switch-bg:var(--color-cyan-300)] dark:[--switch-bg-ring:transparent]",
17032
- "[--switch-ring:transparent] [--switch-shadow:transparent] [--switch:var(--color-cyan-950)]"
17033
- ],
17034
- sky: [
17035
- "[--switch-bg-ring:var(--color-sky-600)]/80 [--switch-bg:var(--color-sky-500)] dark:[--switch-bg-ring:transparent]",
17036
- "[--switch:white] [--switch-ring:var(--color-sky-600)]/80 [--switch-shadow:var(--color-sky-900)]/20"
17037
- ],
17038
- blue: [
17039
- "[--switch-bg-ring:var(--color-blue-700)]/90 [--switch-bg:var(--color-blue-600)] dark:[--switch-bg-ring:transparent]",
17040
- "[--switch:white] [--switch-ring:var(--color-blue-700)]/90 [--switch-shadow:var(--color-blue-900)]/20"
17041
- ],
17042
- indigo: [
17043
- "[--switch-bg-ring:var(--color-indigo-600)]/90 [--switch-bg:var(--color-indigo-500)] dark:[--switch-bg-ring:transparent]",
17044
- "[--switch:white] [--switch-ring:var(--color-indigo-600)]/90 [--switch-shadow:var(--color-indigo-900)]/20"
17045
- ],
17046
- violet: [
17047
- "[--switch-bg-ring:var(--color-violet-600)]/90 [--switch-bg:var(--color-violet-500)] dark:[--switch-bg-ring:transparent]",
17048
- "[--switch:white] [--switch-ring:var(--color-violet-600)]/90 [--switch-shadow:var(--color-violet-900)]/20"
17049
- ],
17050
- purple: [
17051
- "[--switch-bg-ring:var(--color-purple-600)]/90 [--switch-bg:var(--color-purple-500)] dark:[--switch-bg-ring:transparent]",
17052
- "[--switch:white] [--switch-ring:var(--color-purple-600)]/90 [--switch-shadow:var(--color-purple-900)]/20"
17249
+ primary: [
17250
+ "[--switch-bg-ring:var(--color-primary-800)]/90 [--switch-bg:var(--color-primary-800)] dark:[--switch-bg-ring:transparent]",
17251
+ "[--switch:white] [--switch-ring:var(--color-primary-800)]/90 [--switch-shadow:var(--color-primary-900)]/20"
17053
17252
  ],
17054
- fuchsia: [
17055
- "[--switch-bg-ring:var(--color-fuchsia-600)]/90 [--switch-bg:var(--color-fuchsia-500)] dark:[--switch-bg-ring:transparent]",
17056
- "[--switch:white] [--switch-ring:var(--color-fuchsia-600)]/90 [--switch-shadow:var(--color-fuchsia-900)]/20"
17253
+ secondary: [
17254
+ "[--switch-bg-ring:var(--color-primary-200)]/80 [--switch-bg:var(--color-primary-200)] dark:[--switch-bg-ring:transparent]",
17255
+ "[--switch-ring:transparent] [--switch-shadow:transparent] [--switch:var(--color-primary-950)]"
17057
17256
  ],
17058
- pink: [
17059
- "[--switch-bg-ring:var(--color-pink-600)]/90 [--switch-bg:var(--color-pink-500)] dark:[--switch-bg-ring:transparent]",
17060
- "[--switch:white] [--switch-ring:var(--color-pink-600)]/90 [--switch-shadow:var(--color-pink-900)]/20"
17257
+ tertiary: [
17258
+ "[--switch-bg-ring:var(--color-primary-600)]/80 [--switch-bg:var(--color-primary-600)] dark:[--switch-bg-ring:transparent]",
17259
+ "[--switch:white] [--switch-ring:var(--color-primary-600)]/80 [--switch-shadow:var(--color-primary-900)]/20"
17061
17260
  ],
17062
- rose: [
17063
- "[--switch-bg-ring:var(--color-rose-600)]/90 [--switch-bg:var(--color-rose-500)] dark:[--switch-bg-ring:transparent]",
17064
- "[--switch:white] [--switch-ring:var(--color-rose-600)]/90 [--switch-shadow:var(--color-rose-900)]/20"
17261
+ accent: [
17262
+ "[--switch-bg-ring:var(--color-accent-700)]/90 [--switch-bg:var(--color-accent-600)] dark:[--switch-bg-ring:transparent]",
17263
+ "[--switch:white] [--switch-ring:var(--color-accent-700)]/90 [--switch-shadow:var(--color-accent-900)]/20"
17065
17264
  ]
17066
17265
  };
17067
17266
  function Switch2({
17068
- color: color2 = "dark/zinc",
17267
+ color: color2 = "dark/grey",
17069
17268
  className,
17070
17269
  ...props
17071
17270
  }) {
@@ -17083,7 +17282,7 @@ function Switch2({
17083
17282
  // Outline and background color in forced-colors mode so switch is still visible
17084
17283
  "forced-colors:outline forced-colors:[--switch-bg:Highlight] dark:forced-colors:[--switch-bg:Highlight]",
17085
17284
  // Unchecked
17086
- "bg-zinc-200 ring-1 ring-black/5 ring-inset dark:bg-white/5 dark:ring-white/15",
17285
+ "bg-grey-200 ring-1 ring-black/5 ring-inset dark:bg-white/5 dark:ring-white/15",
17087
17286
  // Checked
17088
17287
  "data-checked:bg-(--switch-bg) data-checked:ring-(--switch-bg-ring) dark:data-checked:bg-(--switch-bg) dark:data-checked:ring-(--switch-bg-ring)",
17089
17288
  // Focus
@@ -17092,7 +17291,7 @@ function Switch2({
17092
17291
  "data-hover:ring-black/15 data-hover:data-checked:ring-(--switch-bg-ring)",
17093
17292
  "dark:data-hover:ring-white/25 dark:data-hover:data-checked:ring-(--switch-bg-ring)",
17094
17293
  // Disabled
17095
- "data-disabled:bg-zinc-200 data-disabled:opacity-50 data-disabled:data-checked:bg-zinc-200 data-disabled:data-checked:ring-black/5",
17294
+ "data-disabled:bg-grey-200 data-disabled:data-checked:bg-grey-200 data-disabled:opacity-50 data-disabled:data-checked:ring-black/5",
17096
17295
  "dark:data-disabled:bg-white/15 dark:data-disabled:data-checked:bg-white/15 dark:data-disabled:data-checked:ring-white/15",
17097
17296
  // Color specific styles
17098
17297
  colors2[color2]
@@ -17449,7 +17648,7 @@ function Textarea({ className, ...props }) {
17449
17648
  "data-slot": "textarea",
17450
17649
  className: cn(
17451
17650
  // Base styles
17452
- "border-nsw-grey-600 dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-sm border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none md:text-sm",
17651
+ "border-grey-600 dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-sm border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none md:text-sm",
17453
17652
  // Placeholder styles
17454
17653
  "placeholder:text-grey-500",
17455
17654
  // Focus styles
@@ -17481,7 +17680,25 @@ function ViewToggle({ viewMode, setViewMode }) {
17481
17680
  )
17482
17681
  ] });
17483
17682
  }
17484
- function ThemeColorPalette() {
17683
+ function ThemeColorPaletteLoading() {
17684
+ return /* @__PURE__ */ jsxs("div", { className: "animate-pulse space-y-8", children: [
17685
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-col items-center justify-between gap-4 sm:flex-row", children: [
17686
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-col items-center gap-4 sm:flex-row", children: [
17687
+ /* @__PURE__ */ jsx("div", { className: "bg-grey-200 h-10 w-32 rounded" }),
17688
+ /* @__PURE__ */ jsx("div", { className: "bg-grey-200 h-10 w-24 rounded" })
17689
+ ] }),
17690
+ /* @__PURE__ */ jsx("div", { className: "bg-grey-200 h-10 w-28 rounded" })
17691
+ ] }),
17692
+ /* @__PURE__ */ jsx("div", { className: "space-y-12", children: [1, 2, 3].map((i) => /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
17693
+ /* @__PURE__ */ jsx("div", { className: "bg-grey-200 h-8 w-24 rounded" }),
17694
+ /* @__PURE__ */ jsx("div", { className: "grid grid-cols-2 gap-4 sm:grid-cols-4", children: [1, 2, 3, 4].map((j) => /* @__PURE__ */ jsx("div", { className: "bg-grey-200 h-16 rounded" }, j)) }),
17695
+ /* @__PURE__ */ jsx("div", { className: "bg-grey-200 h-12 w-full rounded" }),
17696
+ /* @__PURE__ */ jsx("div", { className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3", children: [1, 2, 3, 4, 5, 6].map((k) => /* @__PURE__ */ jsx("div", { className: "bg-grey-200 h-24 rounded" }, k)) })
17697
+ ] }, i)) })
17698
+ ] });
17699
+ }
17700
+ function ThemeColorPaletteContent() {
17701
+ const searchParams = useSearchParams();
17485
17702
  const baseColors = {
17486
17703
  brand,
17487
17704
  aboriginal
@@ -17493,6 +17710,53 @@ function ThemeColorPalette() {
17493
17710
  const [accentColor, setAccentColor] = useState("red");
17494
17711
  const [greyColor, setGreyColor] = useState("grey");
17495
17712
  const [sheetOpen, setSheetOpen] = useState(false);
17713
+ const [isInitialized, setIsInitialized] = useState(false);
17714
+ useEffect(() => {
17715
+ const themeParam = searchParams.get("theme");
17716
+ const primaryParam = searchParams.get("primary");
17717
+ const accentParam = searchParams.get("accent");
17718
+ const hasUrlParams = themeParam || primaryParam || accentParam;
17719
+ let newCategory = themeCategory;
17720
+ let newPrimary = primaryColor;
17721
+ let newAccent = accentColor;
17722
+ if (themeParam && (themeParam === "brand" || themeParam === "aboriginal")) {
17723
+ newCategory = themeParam;
17724
+ setThemeCategory(themeParam);
17725
+ }
17726
+ const availableColors = Object.keys(colorThemes[newCategory]);
17727
+ if (primaryParam && availableColors.includes(primaryParam)) {
17728
+ newPrimary = primaryParam;
17729
+ setPrimaryColor(primaryParam);
17730
+ } else if (!availableColors.includes(newPrimary)) {
17731
+ newPrimary = availableColors[0];
17732
+ setPrimaryColor(newPrimary);
17733
+ }
17734
+ if (accentParam && availableColors.includes(accentParam) && accentParam !== newPrimary) {
17735
+ newAccent = accentParam;
17736
+ setAccentColor(accentParam);
17737
+ } else if (hasUrlParams) {
17738
+ const newAccentColor = availableColors.find((color2) => color2 !== newPrimary);
17739
+ if (newAccentColor) {
17740
+ newAccent = newAccentColor;
17741
+ setAccentColor(newAccent);
17742
+ }
17743
+ } else {
17744
+ if (!availableColors.includes(newAccent) || newAccent === newPrimary) {
17745
+ const newAccentColor = availableColors.find((color2) => color2 !== newPrimary);
17746
+ if (newAccentColor) {
17747
+ newAccent = newAccentColor;
17748
+ setAccentColor(newAccent);
17749
+ }
17750
+ }
17751
+ }
17752
+ const neutralKey = Object.keys(colorThemes[newCategory]).find(
17753
+ (k) => k.toLowerCase().includes("grey")
17754
+ );
17755
+ if (neutralKey) {
17756
+ setGreyColor(neutralKey);
17757
+ }
17758
+ setIsInitialized(true);
17759
+ }, [searchParams, themeCategory, primaryColor, accentColor]);
17496
17760
  const filteredColorThemes = useMemo(() => {
17497
17761
  const filtered = {};
17498
17762
  for (const category of Object.keys(colorThemes)) {
@@ -17509,6 +17773,7 @@ function ThemeColorPalette() {
17509
17773
  return allColors.filter((color2) => color2 !== primaryColor);
17510
17774
  }, [filteredColorThemes, themeCategory, primaryColor]);
17511
17775
  useEffect(() => {
17776
+ if (!isInitialized) return;
17512
17777
  const neutralKey = Object.keys(colorThemes[themeCategory]).find((k) => k.toLowerCase().includes("grey")) ?? "";
17513
17778
  if (neutralKey && neutralKey !== greyColor) {
17514
17779
  setGreyColor(neutralKey);
@@ -17527,7 +17792,7 @@ function ThemeColorPalette() {
17527
17792
  setAccentColor(newAccentColor);
17528
17793
  }
17529
17794
  }
17530
- }, [themeCategory, primaryColor, accentColor, greyColor]);
17795
+ }, [themeCategory, primaryColor, accentColor, greyColor, isInitialized]);
17531
17796
  const currentColorPalette = useMemo(() => {
17532
17797
  if (!colorThemes[themeCategory] || !colorThemes[themeCategory][primaryColor] || !colorThemes[themeCategory][accentColor]) {
17533
17798
  return [
@@ -17620,6 +17885,9 @@ function ThemeColorPalette() {
17620
17885
  }) })
17621
17886
  ] });
17622
17887
  }
17888
+ function ThemeColorPalette() {
17889
+ return /* @__PURE__ */ jsx(Suspense, { fallback: /* @__PURE__ */ jsx(ThemeColorPaletteLoading, {}), children: /* @__PURE__ */ jsx(ThemeColorPaletteContent, {}) });
17890
+ }
17623
17891
  function ThemeProvider({ children, ...props }) {
17624
17892
  return /* @__PURE__ */ jsx(ThemeProvider$1, { ...props, children });
17625
17893
  }
@@ -21461,24 +21729,24 @@ var progressBarVariants = tv({
21461
21729
  variants: {
21462
21730
  variant: {
21463
21731
  default: {
21464
- background: "bg-blue-200 dark:bg-blue-500/30",
21465
- bar: "bg-blue-500 dark:bg-blue-500"
21732
+ background: "bg-primary-200 dark:bg-primary-500/30",
21733
+ bar: "bg-primary-500 dark:bg-primary-500"
21466
21734
  },
21467
21735
  neutral: {
21468
- background: "bg-gray-200 dark:bg-gray-500/40",
21469
- bar: "bg-gray-500 dark:bg-gray-500"
21736
+ background: "bg-grey-200 dark:bg-grey-500/40",
21737
+ bar: "bg-grey-500 dark:bg-grey-500"
21470
21738
  },
21471
21739
  warning: {
21472
- background: "bg-yellow-200 dark:bg-yellow-500/30",
21473
- bar: "bg-yellow-500 dark:bg-yellow-500"
21740
+ background: "bg-warning-200 dark:bg-warning-500/30",
21741
+ bar: "bg-warning-500 dark:bg-warning-500"
21474
21742
  },
21475
- error: {
21476
- background: "bg-red-200 dark:bg-red-500/30",
21477
- bar: "bg-red-500 dark:bg-red-500"
21743
+ danger: {
21744
+ background: "bg-danger-200 dark:bg-danger-500/30",
21745
+ bar: "bg-danger-500 dark:bg-danger-500"
21478
21746
  },
21479
21747
  success: {
21480
- background: "bg-emerald-200 dark:bg-emerald-500/30",
21481
- bar: "bg-emerald-500 dark:bg-emerald-500"
21748
+ background: "bg-success-200 dark:bg-success-500/30",
21749
+ bar: "bg-success-500 dark:bg-success-500"
21482
21750
  }
21483
21751
  }
21484
21752
  },
@@ -21530,7 +21798,7 @@ var ProgressBar = React16__default.forwardRef(
21530
21798
  // base
21531
21799
  "ml-2 text-sm leading-none font-medium whitespace-nowrap",
21532
21800
  // text color
21533
- "text-gray-900 dark:text-gray-50"
21801
+ "text-grey-900 dark:text-grey-50"
21534
21802
  ),
21535
21803
  children: label
21536
21804
  }
@@ -21549,24 +21817,24 @@ var progressCircleVariants = tv({
21549
21817
  variants: {
21550
21818
  variant: {
21551
21819
  default: {
21552
- background: "stroke-blue-200 dark:stroke-blue-500/30",
21553
- circle: "stroke-blue-500 dark:stroke-blue-500"
21820
+ background: "stroke-primary-200 dark:stroke-primary-500/30",
21821
+ circle: "stroke-primary-500 dark:stroke-primary-500"
21554
21822
  },
21555
21823
  neutral: {
21556
- background: "stroke-gray-200 dark:stroke-gray-500/40",
21557
- circle: "stroke-gray-500 dark:stroke-gray-500"
21824
+ background: "stroke-grey-200 dark:stroke-grey-500/40",
21825
+ circle: "stroke-grey-500 dark:stroke-grey-500"
21558
21826
  },
21559
21827
  warning: {
21560
- background: "stroke-yellow-200 dark:stroke-yellow-500/30",
21561
- circle: "stroke-yellow-500 dark:stroke-yellow-500"
21828
+ background: "stroke-warning-200 dark:stroke-warning-500/30",
21829
+ circle: "stroke-warning-500 dark:stroke-warning-500"
21562
21830
  },
21563
- error: {
21564
- background: "stroke-red-200 dark:stroke-red-500/30",
21565
- circle: "stroke-red-500 dark:stroke-red-500"
21831
+ danger: {
21832
+ background: "stroke-danger-200 dark:stroke-danger-500/30",
21833
+ circle: "stroke-danger-500 dark:stroke-danger-500"
21566
21834
  },
21567
21835
  success: {
21568
- background: "stroke-emerald-200 dark:stroke-emerald-500/30",
21569
- circle: "stroke-emerald-500 dark:stroke-emerald-500"
21836
+ background: "stroke-success-200 dark:stroke-success-500/30",
21837
+ circle: "stroke-success-500 dark:stroke-success-500"
21570
21838
  }
21571
21839
  }
21572
21840
  },
@@ -22868,6 +23136,6 @@ var languages = [
22868
23136
  "html"
22869
23137
  ];
22870
23138
 
22871
- export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AreaChart, AspectRatio, AvailableChartColors, Avatar, AvatarFallback, AvatarImage, Badge, BadgeButton, BarChart, BarList, BaseColorSwatches, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Breadcrumbs, Button2 as Button, Calendar, CalendarDayButton, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, CategoryBar, ChartContainer, ChartLegend, ChartLegendContent, ChartStyle, ChartTooltip, ChartTooltipContent, Checkbox, Code, CodeDemo, CodeHighlight, Collapsible, CollapsibleContent2 as CollapsibleContent, CollapsibleTrigger2 as CollapsibleTrigger, ColorCard, ColorSwatches, ColourScale, ComboChart, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, Description3 as Description, DescriptionDetails, DescriptionList, DescriptionTerm, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DonutChart, Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, DynamicFavicon, ErrorMessage, ExpandableSearch, ExpandableSearchField, Field2 as Field, FieldGroup, FieldLabel, Fieldset2 as Fieldset, Footer, FooterAcknowledgement, FooterLegalLinks, FooterSmallPrint, FooterSocialLink, Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage, FormatToggle, GenerateInterpolatedColors, Header2 as Header, Heading, HoverCard, HoverCardContent, HoverCardTrigger, Icons, Input, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, Label3 as Label, Legend2 as Legend, LineChart, Link, _List as List, Listbox2 as Listbox, ListboxDescription, ListboxLabel, ListboxOption2 as ListboxOption, Logo, MainNavigation, Masthead, MegaMenu, Menubar, MenubarCheckboxItem, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarPortal, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger, Navbar, NavbarDivider, NavbarItem, NavbarLabel, NavbarSection, NavbarSpacer, Navigation, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, NavigationMenuViewport, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, Popover, PopoverAnchor, PopoverContent, PopoverTrigger, PreWithCopy, PrevNextLinks, PrevNextLinksPageLink, Progress, ProgressBar, ProgressCircle, Prose, RadioGroup2 as RadioGroup, RadioGroupItem, ResizableHandle, ResizablePanel, ResizablePanelGroup, ScrollArea, ScrollBar, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator4 as Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, SidebarLink, SidebarNavigation, SiteSearch, Skeleton, Slider, Social, SparkAreaChart, SparkBarChart, SparkLineChart, Spinner, StepIndicator, StepNavigation, Strong, Switch2 as Switch, SwitchField, SwitchGroup, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableOfContents, TableRow, Tabs2 as Tabs, TabsContent, TabsList, TabsTrigger, Text, TextLink, Textarea, ThemeColorPalette, ThemeProvider, ThemeSelector, ThemeSwitcher, Toaster, TocContext, TocProvider, Toggle, ToggleGroup, ToggleGroupItem, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, TopLevel, TouchTarget, Tracker, Tooltip5 as TremorTooltip, ViewToggle, aboriginal, addStartStopToColorArray, allPalettes, badgeVariants, brand, buttonVariants, camelCase, chartColors, cn, colorDataArray, colorThemes, colors, constructCategoryColors, createColorArray, createColorData, createFormStore, darkenColor, domToSimple, focusInput, focusRing, generateColorThemes, getColorClassName, getColorValue, getHeadings, getNodeText, getSurroundingColors, getYAxisDomain, hasErrorInput, hasOnlyOneValueForKey, humaniseVariant, interpolateColors, isLightColor, kebabCase, languages, lightenColor, navigationMenuTriggerStyle, oklchConverter, progressBarVariants, renderColorOutput, renderColorOutputToDTFM, semantic, shades, themeIndices, themeTokens, toggleVariants, truncate, useActiveSectionObserver, useDisableToc, useFormField, useIsMobile, useOnWindowResize, usePageHeadings, useSelectorHeight, useToc };
23139
+ export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AreaChart, AspectRatio, AuthLayout, AvailableChartColors, Avatar, AvatarFallback, AvatarImage, Badge, BadgeButton, BarChart, BarList, BaseColorSwatches, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Breadcrumbs, Button2 as Button, Calendar, CalendarDayButton, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, CategoryBar, ChartContainer, ChartLegend, ChartLegendContent, ChartStyle, ChartTooltip, ChartTooltipContent, Checkbox, Code, CodeDemo, CodeHighlight, Collapsible, CollapsibleContent2 as CollapsibleContent, CollapsibleTrigger2 as CollapsibleTrigger, ColorCard, ColorSwatches, ColourScale, ComboChart, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, Description3 as Description, DescriptionDetails, DescriptionList, DescriptionTerm, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DonutChart, Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, DynamicFavicon, ErrorMessage, ExpandableSearch, ExpandableSearchField, Field2 as Field, FieldGroup, FieldLabel, Fieldset2 as Fieldset, Footer, FooterAcknowledgement, FooterLegalLinks, FooterSmallPrint, FooterSocialLink, Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage, FormatToggle, GenerateInterpolatedColors, Header2 as Header, Heading, HoverCard, HoverCardContent, HoverCardTrigger, Icons, Input, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, Label3 as Label, Legend2 as Legend, LineChart, Link, _List as List, Listbox2 as Listbox, ListboxDescription, ListboxLabel, ListboxOption2 as ListboxOption, Logo, MainNavigation, Masthead, MegaMenu, Menubar, MenubarCheckboxItem, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarPortal, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger, Navbar, NavbarDivider, NavbarItem, NavbarLabel, NavbarSection, NavbarSpacer, Navigation, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, NavigationMenuViewport, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, Popover, PopoverAnchor, PopoverContent, PopoverTrigger, PreWithCopy, PrevNextLinks, PrevNextLinksPageLink, Progress, ProgressBar, ProgressCircle, Prose, RadioGroup2 as RadioGroup, RadioGroupItem, ResizableHandle, ResizablePanel, ResizablePanelGroup, ScrollArea, ScrollBar, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator4 as Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, SidebarLink, SidebarNavigation, SiteSearch, Skeleton, Slider, Social, SparkAreaChart, SparkBarChart, SparkLineChart, Spinner, StepIndicator, StepNavigation, Strong, Switch2 as Switch, SwitchField, SwitchGroup, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableOfContents, TableRow, Tabs2 as Tabs, TabsContent, TabsList, TabsTrigger, Text, TextLink, Textarea, ThemeColorPalette, ThemeProvider, ThemeSelector, ThemeSwitcher, Toaster, TocContext, TocProvider, Toggle, ToggleGroup, ToggleGroupItem, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, TopLevel, TouchTarget, Tracker, Tooltip5 as TremorTooltip, ViewToggle, aboriginal, addStartStopToColorArray, allPalettes, badgeVariants, brand, buttonVariants, camelCase, chartColors, cn, colorDataArray, colorThemes, colors, constructCategoryColors, createColorArray, createColorData, createFormStore, darkenColor, domToSimple, focusInput, focusRing, generateColorThemes, getColorClassName, getColorValue, getHeadings, getNodeText, getSurroundingColors, getYAxisDomain, hasErrorInput, hasOnlyOneValueForKey, humaniseVariant, interpolateColors, isLightColor, kebabCase, languages, lightenColor, navigationMenuTriggerStyle, oklchConverter, progressBarVariants, renderColorOutput, renderColorOutputToDTFM, semantic, shades, themeIndices, themeTokens, toggleVariants, truncate, useActiveSectionObserver, useDisableToc, useFormField, useIsMobile, useOnWindowResize, usePageHeadings, useSelectorHeight, useToc };
22872
23140
  //# sourceMappingURL=index.js.map
22873
23141
  //# sourceMappingURL=index.js.map