@nswds/app 1.43.0 → 1.44.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.cjs CHANGED
@@ -17,6 +17,7 @@ var DropdownMenuPrimitive = require('@radix-ui/react-dropdown-menu');
17
17
  var CheckboxPrimitive = require('@radix-ui/react-checkbox');
18
18
  var nextThemes = require('next-themes');
19
19
  var TooltipPrimitive = require('@radix-ui/react-tooltip');
20
+ var ScrollAreaPrimitive = require('@radix-ui/react-scroll-area');
20
21
  var Prism = require('prismjs');
21
22
  require('prismjs/components/prism-bash');
22
23
  require('prismjs/components/prism-css');
@@ -27,13 +28,13 @@ require('prismjs/components/prism-tsx');
27
28
  require('prismjs/components/prism-typescript');
28
29
  var SelectPrimitive = require('@radix-ui/react-select');
29
30
  var PopoverPrimitive = require('@radix-ui/react-popover');
31
+ var usehooks = require('@uidotdev/usehooks');
32
+ var sonner = require('sonner');
30
33
  var LabelPrimitive = require('@radix-ui/react-label');
31
34
  var RadioGroupPrimitive = require('@radix-ui/react-radio-group');
32
35
  var lucideReact = require('lucide-react');
33
36
  var TabsPrimitive2 = require('@radix-ui/react-tabs');
34
37
  var CollapsiblePrimitive = require('@radix-ui/react-collapsible');
35
- var usehooks = require('@uidotdev/usehooks');
36
- var sonner = require('sonner');
37
38
  var cmdk = require('cmdk');
38
39
  var DialogPrimitive = require('@radix-ui/react-dialog');
39
40
  var ContextMenuPrimitive = require('@radix-ui/react-context-menu');
@@ -46,7 +47,6 @@ var MenubarPrimitive = require('@radix-ui/react-menubar');
46
47
  var NavigationMenuPrimitive = require('@radix-ui/react-navigation-menu');
47
48
  var ProgressPrimitive = require('@radix-ui/react-progress');
48
49
  var ResizablePrimitive = require('react-resizable-panels');
49
- var ScrollAreaPrimitive = require('@radix-ui/react-scroll-area');
50
50
  var SliderPrimitive = require('@radix-ui/react-slider');
51
51
  var RechartsPrimitive = require('recharts');
52
52
  var react = require('@remixicon/react');
@@ -91,6 +91,7 @@ var culori__namespace = /*#__PURE__*/_interopNamespace(culori);
91
91
  var DropdownMenuPrimitive__namespace = /*#__PURE__*/_interopNamespace(DropdownMenuPrimitive);
92
92
  var CheckboxPrimitive__namespace = /*#__PURE__*/_interopNamespace(CheckboxPrimitive);
93
93
  var TooltipPrimitive__namespace = /*#__PURE__*/_interopNamespace(TooltipPrimitive);
94
+ var ScrollAreaPrimitive__namespace = /*#__PURE__*/_interopNamespace(ScrollAreaPrimitive);
94
95
  var Prism__default = /*#__PURE__*/_interopDefault(Prism);
95
96
  var SelectPrimitive__namespace = /*#__PURE__*/_interopNamespace(SelectPrimitive);
96
97
  var PopoverPrimitive__namespace = /*#__PURE__*/_interopNamespace(PopoverPrimitive);
@@ -107,7 +108,6 @@ var MenubarPrimitive__namespace = /*#__PURE__*/_interopNamespace(MenubarPrimitiv
107
108
  var NavigationMenuPrimitive__namespace = /*#__PURE__*/_interopNamespace(NavigationMenuPrimitive);
108
109
  var ProgressPrimitive__namespace = /*#__PURE__*/_interopNamespace(ProgressPrimitive);
109
110
  var ResizablePrimitive__namespace = /*#__PURE__*/_interopNamespace(ResizablePrimitive);
110
- var ScrollAreaPrimitive__namespace = /*#__PURE__*/_interopNamespace(ScrollAreaPrimitive);
111
111
  var SliderPrimitive__namespace = /*#__PURE__*/_interopNamespace(SliderPrimitive);
112
112
  var RechartsPrimitive__namespace = /*#__PURE__*/_interopNamespace(RechartsPrimitive);
113
113
  var HoverCardPrimitives__namespace = /*#__PURE__*/_interopNamespace(HoverCardPrimitives);
@@ -247,23 +247,23 @@ var focusInput = [
247
247
  // base
248
248
  "focus:ring-2",
249
249
  // ring color
250
- "focus:ring-blue-200 dark:focus:ring-blue-700/30",
250
+ "focus:ring-primary-200 dark:focus:ring-primary-700/30",
251
251
  // border color
252
- "focus:border-blue-500 dark:focus:border-blue-700"
252
+ "focus:border-primary-500 dark:focus:border-primary-700"
253
253
  ];
254
254
  var hasErrorInput = [
255
255
  // base
256
256
  "ring-2",
257
257
  // border color
258
- "border-red-500 dark:border-red-700",
258
+ "border-danger-500 dark:border-danger-700",
259
259
  // ring color
260
- "ring-red-200 dark:ring-red-700/30"
260
+ "ring-danger-200 dark:ring-danger-700/30"
261
261
  ];
262
262
  var focusRing = [
263
263
  // base
264
264
  "outline outline-offset-2 outline-0 focus-visible:outline-2",
265
265
  // outline color
266
- "outline-blue-500 dark:outline-blue-500"
266
+ "outline-primary-500 dark:outline-primary-500"
267
267
  ];
268
268
  function Accordion({ ...props }) {
269
269
  return /* @__PURE__ */ jsxRuntime.jsx(AccordionPrimitive__namespace.Root, { "data-slot": "accordion", ...props });
@@ -276,10 +276,7 @@ function AccordionItem({
276
276
  AccordionPrimitive__namespace.Item,
277
277
  {
278
278
  "data-slot": "accordion-item",
279
- className: cn(
280
- "border-nsw-grey-200 dark:border-nsw-grey-200/20 border-b last:border-b-0",
281
- className
282
- ),
279
+ className: cn("border-grey-200 dark:border-grey-200/20 border-b last:border-b-0", className),
283
280
  ...props
284
281
  }
285
282
  );
@@ -296,17 +293,17 @@ function AccordionTrigger({
296
293
  className: cn(
297
294
  [
298
295
  // Base
299
- "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",
296
+ "bg-grey-50 flex flex-1 cursor-pointer items-start justify-between gap-4 p-4 text-left text-base font-medium transition-all",
300
297
  // Focus
301
298
  "focus-visible:border-ring focus-visible:ring-ring/50 outline-none focus-visible:ring-[2px]",
302
299
  // State
303
- "hover:bg-nsw-grey-100 hover:text-nsw-grey-850 [&[data-state=open]>svg]:rotate-180",
300
+ "hover:bg-grey-100 hover:text-grey-850 [&[data-state=open]>svg]:rotate-180",
304
301
  // Disabled
305
302
  "data-disabled:pointer-events-none data-disabled:opacity-50",
306
303
  // Dark mode
307
- "dark:bg-nsw-grey-800 dark:hover:bg-nsw-grey-700 dark:text-white",
304
+ "dark:bg-grey-800 dark:hover:bg-grey-700 dark:text-white",
308
305
  // Dark mode hover
309
- "dark:hover:bg-nsw-grey-700 dark:hover:text-white [&[data-state=open]>svg]:rotate-180"
306
+ "dark:hover:bg-grey-700 dark:hover:text-white [&[data-state=open]>svg]:rotate-180"
310
307
  ],
311
308
  className
312
309
  ),
@@ -333,6 +330,9 @@ function AccordionContent({
333
330
  }
334
331
  );
335
332
  }
333
+ function AuthLayout({ children }) {
334
+ return /* @__PURE__ */ jsxRuntime.jsx("main", { className: "flex min-h-dvh flex-col p-2", children: /* @__PURE__ */ jsxRuntime.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 }) });
335
+ }
336
336
  var alertVariants = classVarianceAuthority.cva(
337
337
  "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",
338
338
  {
@@ -1951,7 +1951,7 @@ function Card({ className, ...props }) {
1951
1951
  {
1952
1952
  "data-slot": "card",
1953
1953
  className: cn(
1954
- "border-nsw-grey-200 dark:border-nsw-grey-50 bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6",
1954
+ "border-grey-200 dark:border-grey-50 bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6",
1955
1955
  className
1956
1956
  ),
1957
1957
  ...props
@@ -2046,640 +2046,73 @@ function Checkbox({ className, ...props }) {
2046
2046
  }
2047
2047
  );
2048
2048
  }
2049
- var Social = {
2050
- Facebook: (props) => /* @__PURE__ */ jsxRuntime.jsx("svg", { fill: "currentColor", viewBox: "0 0 24 24", "data-slot": "icon", ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
2051
- "path",
2052
- {
2053
- fillRule: "evenodd",
2054
- 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",
2055
- clipRule: "evenodd"
2056
- }
2057
- ) }),
2058
- Github: (props) => /* @__PURE__ */ jsxRuntime.jsx("svg", { fill: "currentColor", viewBox: "0 0 24 24", "data-slot": "icon", ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
2059
- "path",
2060
- {
2061
- fillRule: "evenodd",
2062
- 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",
2063
- clipRule: "evenodd"
2064
- }
2065
- ) }),
2066
- Instagram: (props) => /* @__PURE__ */ jsxRuntime.jsx("svg", { fill: "currentColor", viewBox: "0 0 24 24", "data-slot": "icon", ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
2067
- "path",
2068
- {
2069
- fillRule: "evenodd",
2070
- 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",
2071
- clipRule: "evenodd"
2072
- }
2073
- ) }),
2074
- LinkedIn: (props) => /* @__PURE__ */ jsxRuntime.jsx("svg", { fill: "currentColor", viewBox: "0 0 24 24", "data-slot": "icon", ...props, children: /* @__PURE__ */ jsxRuntime.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" }) }),
2075
- X: (props) => /* @__PURE__ */ jsxRuntime.jsx("svg", { fill: "currentColor", viewBox: "0 0 24 24", "data-slot": "icon", ...props, children: /* @__PURE__ */ jsxRuntime.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" }) }),
2076
- YouTube: (props) => /* @__PURE__ */ jsxRuntime.jsx("svg", { fill: "currentColor", viewBox: "0 0 24 24", "data-slot": "icon", ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
2077
- "path",
2078
- {
2079
- fillRule: "evenodd",
2080
- 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",
2081
- clipRule: "evenodd"
2082
- }
2083
- ) })
2084
- };
2085
- function TooltipProvider({
2086
- delayDuration,
2087
- ...props
2088
- }) {
2089
- return /* @__PURE__ */ jsxRuntime.jsx(
2090
- TooltipPrimitive__namespace.Provider,
2091
- {
2092
- "data-slot": "tooltip-provider",
2093
- delayDuration,
2094
- ...props
2095
- }
2096
- );
2097
- }
2098
- function Tooltip({ ...props }) {
2099
- return /* @__PURE__ */ jsxRuntime.jsx(TooltipPrimitive__namespace.Root, { "data-slot": "tooltip", ...props });
2100
- }
2101
- function TooltipTrigger({ ...props }) {
2102
- return /* @__PURE__ */ jsxRuntime.jsx(TooltipPrimitive__namespace.Trigger, { "data-slot": "tooltip-trigger", ...props });
2103
- }
2104
- function TooltipContent({
2105
- className,
2106
- sideOffset = 0,
2107
- children,
2108
- ...props
2109
- }) {
2110
- return /* @__PURE__ */ jsxRuntime.jsx(TooltipPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsxs(
2111
- TooltipPrimitive__namespace.Content,
2112
- {
2113
- "data-slot": "tooltip-content",
2114
- sideOffset,
2115
- className: cn(
2116
- "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",
2117
- className
2118
- ),
2119
- ...props,
2120
- children: [
2121
- children,
2122
- /* @__PURE__ */ jsxRuntime.jsx(TooltipPrimitive__namespace.Arrow, { className: "bg-nsw-grey-800 fill-nsw-grey-800 z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]" })
2123
- ]
2124
- }
2125
- ) });
2126
- }
2127
- function PreWithCopy(props) {
2128
- const textInput = React16.useRef(null);
2129
- const [isJustCopied, setJustCopied] = React16.useState(false);
2130
- function handleCopy() {
2131
- if (textInput.current) {
2132
- navigator.clipboard.writeText(textInput.current.textContent || "");
2133
- setJustCopied(true);
2134
- setTimeout(() => setJustCopied(false), 2e3);
2135
- }
2136
- }
2137
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "group relative", children: [
2138
- /* @__PURE__ */ jsxRuntime.jsx(
2139
- "pre",
2140
- {
2141
- ref: textInput,
2142
- ...props,
2143
- className: tailwindMerge.twMerge("max-h-[40rem] overflow-auto", props.className)
2144
- }
2145
- ),
2146
- /* @__PURE__ */ jsxRuntime.jsxs(
2147
- "button",
2148
- {
2149
- 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",
2150
- "aria-label": "Copy code to clipboard",
2151
- onClick: handleCopy,
2152
- children: [
2153
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: tailwindMerge.twMerge(isJustCopied && "hidden"), children: /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "inline-flex items-center", children: [
2154
- /* @__PURE__ */ jsxRuntime.jsx(Icons.copy, { className: "me-1.5 size-3" }),
2155
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-xs font-semibold", children: "Copy code" })
2156
- ] }) }),
2157
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: tailwindMerge.twMerge(isJustCopied ? "block" : "hidden"), children: /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "inline-flex items-center", children: [
2158
- /* @__PURE__ */ jsxRuntime.jsx(Icons.check, { className: "text-primary-700 dark:text-primary-500 me-1.5 size-3" }),
2159
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-primary-700 dark:text-primary-500 text-xs font-semibold", children: "Copied" })
2160
- ] }) })
2161
- ]
2162
- }
2163
- )
2164
- ] });
2165
- }
2166
- Prism__default.default.manual = true;
2167
- function CodeHighlight({
2168
- code,
2169
- language,
2170
- className,
2171
- withCopy = false,
2172
- ...props
2173
- }) {
2174
- const highlightedCode = Prism__default.default.highlight(code.trim(), Prism__default.default.languages[language], language);
2175
- const Component2 = withCopy ? PreWithCopy : "pre";
2176
- return /* @__PURE__ */ jsxRuntime.jsx(Component2, { className: tailwindMerge.twMerge(`language-${language}`, className), ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
2177
- "code",
2178
- {
2179
- className: `language-${language}`,
2180
- dangerouslySetInnerHTML: { __html: highlightedCode }
2181
- }
2182
- ) });
2183
- }
2184
- function Select({ ...props }) {
2185
- return /* @__PURE__ */ jsxRuntime.jsx(SelectPrimitive__namespace.Root, { "data-slot": "select", ...props });
2186
- }
2187
- function SelectGroup({ ...props }) {
2188
- return /* @__PURE__ */ jsxRuntime.jsx(SelectPrimitive__namespace.Group, { "data-slot": "select-group", ...props });
2189
- }
2190
- function SelectValue({ ...props }) {
2191
- return /* @__PURE__ */ jsxRuntime.jsx(SelectPrimitive__namespace.Value, { "data-slot": "select-value", ...props });
2192
- }
2193
- function SelectTrigger({
2194
- className,
2195
- size = "default",
2196
- children,
2197
- ...props
2198
- }) {
2199
- return /* @__PURE__ */ jsxRuntime.jsxs(
2200
- SelectPrimitive__namespace.Trigger,
2201
- {
2202
- "data-slot": "select-trigger",
2203
- "data-size": size,
2204
- className: cn(
2205
- // Base styles
2206
- "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",
2207
- // Disabled styles
2208
- "disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50",
2209
- // aria-invalid styles
2210
- "aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
2211
- // Focus styles
2212
- "focus:outline-primary-650/70 focus:outline focus:outline-2 focus:outline-offset-2",
2213
- // Placeholder styles
2214
- "data-[placeholder]:text-grey-600",
2215
- // Dark mode styles
2216
- "dark:bg-input/30 dark:hover:bg-input/50",
2217
- // Size styles
2218
- "data-[size=default]:h-12 data-[size=sm]:h-9",
2219
- className
2220
- ),
2221
- ...props,
2222
- children: [
2223
- children,
2224
- /* @__PURE__ */ jsxRuntime.jsx(SelectPrimitive__namespace.Icon, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(Icons.chevron_down, { className: "size-6 opacity-80" }) })
2225
- ]
2226
- }
2227
- );
2228
- }
2229
- function SelectContent({
2230
- className,
2231
- children,
2232
- position = "popper",
2233
- ...props
2234
- }) {
2235
- return /* @__PURE__ */ jsxRuntime.jsx(SelectPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsxs(
2236
- SelectPrimitive__namespace.Content,
2237
- {
2238
- "data-slot": "select-content",
2239
- className: cn(
2240
- // Base styles
2241
- "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",
2242
- // State styles
2243
- "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",
2244
- 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",
2245
- className
2246
- ),
2247
- position,
2248
- ...props,
2249
- children: [
2250
- /* @__PURE__ */ jsxRuntime.jsx(SelectScrollUpButton, {}),
2251
- /* @__PURE__ */ jsxRuntime.jsx(
2252
- SelectPrimitive__namespace.Viewport,
2253
- {
2254
- className: cn(
2255
- "p-1",
2256
- position === "popper" && "h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"
2257
- ),
2258
- children
2259
- }
2260
- ),
2261
- /* @__PURE__ */ jsxRuntime.jsx(SelectScrollDownButton, {})
2262
- ]
2263
- }
2264
- ) });
2265
- }
2266
- function SelectLabel({ className, ...props }) {
2267
- return /* @__PURE__ */ jsxRuntime.jsx(
2268
- SelectPrimitive__namespace.Label,
2269
- {
2270
- "data-slot": "select-label",
2271
- className: cn("text-grey-600 px-2 py-1.5 text-xs", className),
2272
- ...props
2273
- }
2274
- );
2275
- }
2276
- function SelectItem({
2277
- className,
2278
- children,
2279
- ...props
2280
- }) {
2281
- return /* @__PURE__ */ jsxRuntime.jsxs(
2282
- SelectPrimitive__namespace.Item,
2283
- {
2284
- "data-slot": "select-item",
2285
- className: cn(
2286
- "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",
2287
- className
2288
- ),
2289
- ...props,
2290
- children: [
2291
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "absolute right-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(SelectPrimitive__namespace.ItemIndicator, { children: /* @__PURE__ */ jsxRuntime.jsx(Icons.check, { className: "size-6" }) }) }),
2292
- /* @__PURE__ */ jsxRuntime.jsx(SelectPrimitive__namespace.ItemText, { children })
2293
- ]
2294
- }
2295
- );
2296
- }
2297
- function SelectSeparator({
2298
- className,
2299
- ...props
2300
- }) {
2301
- return /* @__PURE__ */ jsxRuntime.jsx(
2302
- SelectPrimitive__namespace.Separator,
2303
- {
2304
- "data-slot": "select-separator",
2305
- className: cn("bg-primary-800/20 pointer-events-none -mx-1 my-1 h-px", className),
2306
- ...props
2307
- }
2308
- );
2309
- }
2310
- function SelectScrollUpButton({
2311
- className,
2312
- ...props
2313
- }) {
2314
- return /* @__PURE__ */ jsxRuntime.jsx(
2315
- SelectPrimitive__namespace.ScrollUpButton,
2316
- {
2317
- "data-slot": "select-scroll-up-button",
2318
- className: cn("flex cursor-default items-center justify-center py-1", className),
2319
- ...props,
2320
- children: /* @__PURE__ */ jsxRuntime.jsx(Icons.chevron_up, { className: "size-6" })
2321
- }
2322
- );
2323
- }
2324
- function SelectScrollDownButton({
2325
- className,
2326
- ...props
2327
- }) {
2328
- return /* @__PURE__ */ jsxRuntime.jsx(
2329
- SelectPrimitive__namespace.ScrollDownButton,
2330
- {
2331
- "data-slot": "select-scroll-down-button",
2332
- className: cn("flex cursor-default items-center justify-center py-1", className),
2333
- ...props,
2334
- children: /* @__PURE__ */ jsxRuntime.jsx(Icons.chevron_down, { className: "size-6" })
2335
- }
2336
- );
2337
- }
2338
- function Popover({ ...props }) {
2339
- return /* @__PURE__ */ jsxRuntime.jsx(PopoverPrimitive__namespace.Root, { "data-slot": "popover", ...props });
2340
- }
2341
- function PopoverTrigger({ ...props }) {
2342
- return /* @__PURE__ */ jsxRuntime.jsx(PopoverPrimitive__namespace.Trigger, { "data-slot": "popover-trigger", ...props });
2343
- }
2344
- function PopoverContent({
2345
- className,
2346
- align = "center",
2347
- sideOffset = 4,
2348
- ...props
2349
- }) {
2350
- return /* @__PURE__ */ jsxRuntime.jsx(PopoverPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(
2351
- PopoverPrimitive__namespace.Content,
2352
- {
2353
- "data-slot": "popover-content",
2354
- align,
2355
- sideOffset,
2356
- className: cn(
2357
- [
2358
- // Base
2359
- "bg-background text-foreground z-50 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border p-4 shadow-md outline-hidden",
2360
- // Open
2361
- "data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
2362
- // Closed
2363
- "data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95",
2364
- // Side
2365
- "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"
2366
- ],
2367
- className
2368
- ),
2369
- ...props
2370
- }
2371
- ) });
2372
- }
2373
- function PopoverAnchor({ ...props }) {
2374
- return /* @__PURE__ */ jsxRuntime.jsx(PopoverPrimitive__namespace.Anchor, { "data-slot": "popover-anchor", ...props });
2375
- }
2376
- function Label3({ className, ...props }) {
2377
- return /* @__PURE__ */ jsxRuntime.jsx(
2378
- LabelPrimitive__namespace.Root,
2379
- {
2380
- "data-slot": "label",
2381
- className: cn(
2382
- // Base
2383
- "flex items-center gap-2",
2384
- "text-grey-900 text-base/6 font-semibold select-none",
2385
- // Dark mode
2386
- "dark:group-data-[disabled=true]:text-grey-400 dark:text-white",
2387
- // Disabled state
2388
- "group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",
2389
- className
2390
- ),
2391
- ...props
2392
- }
2393
- );
2394
- }
2395
- function RadioGroup2({
2396
- className,
2397
- ...props
2398
- }) {
2399
- return /* @__PURE__ */ jsxRuntime.jsx(
2400
- RadioGroupPrimitive__namespace.Root,
2401
- {
2402
- "data-slot": "radio-group",
2403
- className: cn("grid gap-3", className),
2404
- ...props
2405
- }
2406
- );
2407
- }
2408
- function RadioGroupItem({
2409
- className,
2410
- ...props
2411
- }) {
2412
- return /* @__PURE__ */ jsxRuntime.jsx(
2413
- RadioGroupPrimitive__namespace.Item,
2414
- {
2415
- "data-slot": "radio-group-item",
2416
- className: cn(
2417
- // Base styles
2418
- "border-primary-800 text-primary-800 aspect-square size-8 shrink-0 rounded-full border shadow-xs transition-[color,box-shadow] outline-none",
2419
- // Dark mode styles
2420
- "dark:bg-input/30",
2421
- // Focus styles
2422
- "focus:border-grey-600 focus:ring-primary-650/70 ring-offset-white focus:ring-2 focus:ring-offset-2 focus:outline-none",
2423
- // aria-invalid styles
2424
- "aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
2425
- // Disabled styles
2426
- "disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50",
2427
- className
2428
- ),
2429
- ...props,
2430
- children: /* @__PURE__ */ jsxRuntime.jsx(
2431
- RadioGroupPrimitive__namespace.Indicator,
2432
- {
2433
- "data-slot": "radio-group-indicator",
2434
- className: cn(
2435
- // Base styles
2436
- "relative flex items-center justify-center"
2437
- ),
2438
- children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.CircleIcon, { className: "fill-primary-800 absolute top-1/2 left-1/2 size-6 -translate-x-1/2 -translate-y-1/2" })
2439
- }
2440
- )
2441
- }
2442
- );
2443
- }
2444
- function SegmentedControl({
2445
- className,
2446
- ...props
2447
- }) {
2448
- return /* @__PURE__ */ jsxRuntime.jsx(
2449
- TabsPrimitive2__namespace.Root,
2450
- {
2451
- "data-slot": "tabs",
2452
- className: cn("flex flex-col gap-2", className),
2453
- ...props
2454
- }
2455
- );
2456
- }
2457
- function SegmentedControlList({
2458
- className,
2459
- ...props
2460
- }) {
2461
- return /* @__PURE__ */ jsxRuntime.jsx(
2462
- TabsPrimitive2__namespace.List,
2463
- {
2464
- "data-slot": "segmented-control-list",
2465
- className: cn(
2466
- "bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center rounded-lg p-[3px]",
2467
- className
2468
- ),
2469
- ...props
2470
- }
2471
- );
2472
- }
2473
- function SegmentedControlTrigger({
2474
- className,
2475
- ...props
2476
- }) {
2477
- return /* @__PURE__ */ jsxRuntime.jsx(
2478
- TabsPrimitive2__namespace.Trigger,
2479
- {
2480
- "data-slot": "segmented-control-trigger",
2481
- className: cn(
2482
- "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",
2483
- className
2484
- ),
2485
- ...props
2486
- }
2487
- );
2488
- }
2489
- var findGreyKey = (themes) => Object.keys(themes).find((k) => k.toLowerCase().includes("grey")) ?? "";
2490
- function ThemeSelector({
2491
- themeCategory,
2492
- setThemeCategory,
2493
- primaryColor,
2494
- setPrimaryColor,
2495
- accentColor,
2496
- setAccentColor,
2497
- greyColor,
2498
- setGreyColor,
2499
- availableAccentColors,
2500
- colorThemes: colorThemes2
2501
- }) {
2502
- const handleCategoryChange = (newCategory) => {
2503
- setThemeCategory(newCategory);
2504
- const availableColors = Object.keys(colorThemes2[newCategory]);
2505
- const neutral = findGreyKey(colorThemes2[newCategory]);
2506
- if (neutral && neutral !== greyColor) {
2507
- setGreyColor(neutral);
2508
- }
2509
- if (availableColors.length > 0) {
2510
- if (availableColors.includes(primaryColor)) {
2511
- const newAccentColor = availableColors.find((color2) => color2 !== primaryColor);
2512
- if (newAccentColor && newAccentColor !== accentColor) {
2513
- setAccentColor(newAccentColor);
2514
- }
2515
- } else {
2516
- setPrimaryColor(availableColors[0]);
2517
- if (availableColors.length > 1) {
2518
- setAccentColor(availableColors[1]);
2519
- }
2520
- }
2521
- }
2522
- };
2523
- const labelStyles = {
2524
- base: [
2525
- // Base
2526
- "group relative flex w-full items-center gap-2 rounded-sm border px-3 py-2",
2527
- // Light mode
2528
- "border-nsw-grey-200 bg-background",
2529
- // Hover
2530
- "hover:bg-primary-800/10 hover:text-foreground",
2531
- // Active
2532
- "[&:has([data-state=checked])]:border-nsw-grey-800",
2533
- // Dark mode
2534
- "",
2535
- // Dark hover
2536
- "dark:hover:bg-white/10",
2537
- // Dark active
2538
- "dark:group-data-[state=checked]:border-nsw-grey-400"
2539
- ],
2540
- label: [
2541
- // Base
2542
- "cursor-pointer flex items-center justify-between",
2543
- // Active
2544
- ""
2545
- ]
2546
- };
2547
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-6", children: [
2548
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-2", children: [
2549
- /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "font-medium", children: "Theme Category" }),
2550
- /* @__PURE__ */ jsxRuntime.jsx(
2551
- SegmentedControl,
2552
- {
2553
- value: themeCategory,
2554
- onValueChange: (value) => handleCategoryChange(value),
2555
- children: /* @__PURE__ */ jsxRuntime.jsxs(SegmentedControlList, { className: "w-full", children: [
2556
- /* @__PURE__ */ jsxRuntime.jsx(SegmentedControlTrigger, { value: "brand", children: "Brand Colors" }),
2557
- /* @__PURE__ */ jsxRuntime.jsx(SegmentedControlTrigger, { value: "aboriginal", children: "Aboriginal Colors" })
2558
- ] })
2559
- }
2560
- )
2561
- ] }),
2562
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid gap-6", children: [
2563
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-3", children: [
2564
- /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "font-medium", children: "Primary Color" }),
2565
- /* @__PURE__ */ jsxRuntime.jsx(
2566
- RadioGroup2,
2567
- {
2568
- value: primaryColor,
2569
- onValueChange: (value) => setPrimaryColor(value),
2570
- className: "grid grid-cols-2 gap-2",
2571
- children: Object.entries(colorThemes2[themeCategory]).map(([key, theme2]) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn(labelStyles.base, ""), children: [
2572
- /* @__PURE__ */ jsxRuntime.jsx(RadioGroupItem, { value: key, id: `primary-${key}`, className: "peer sr-only" }),
2573
- /* @__PURE__ */ jsxRuntime.jsxs(Label3, { htmlFor: `primary-${key}`, className: cn(labelStyles.label, ""), children: [
2574
- /* @__PURE__ */ jsxRuntime.jsx(
2575
- "div",
2576
- {
2577
- className: "h-5 w-5 flex-none rounded-full",
2578
- style: { backgroundColor: theme2.colors[3].hex }
2579
- }
2580
- ),
2581
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "shrink", children: theme2.colors[3].name?.replace(/\b(NSW|0[1-4])\b/g, "").replace(/\s+/g, " ").trim() }),
2582
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "absolute inset-0", "aria-hidden": true })
2583
- ] })
2584
- ] }, key))
2585
- }
2586
- )
2587
- ] }),
2588
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-3", children: [
2589
- /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "font-medium", children: "Accent Color" }),
2590
- /* @__PURE__ */ jsxRuntime.jsx(
2591
- RadioGroup2,
2592
- {
2593
- value: accentColor,
2594
- onValueChange: (value) => setAccentColor(value),
2595
- className: "grid grid-cols-2 gap-2",
2596
- children: availableAccentColors.map((key) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn(labelStyles.base, ""), children: [
2597
- /* @__PURE__ */ jsxRuntime.jsx(RadioGroupItem, { value: key, id: `accent-${key}`, className: "peer sr-only" }),
2598
- /* @__PURE__ */ jsxRuntime.jsxs(Label3, { htmlFor: `accent-${key}`, className: cn(labelStyles.label, ""), children: [
2599
- /* @__PURE__ */ jsxRuntime.jsx(
2600
- "div",
2601
- {
2602
- className: "size-5 flex-none rounded-full",
2603
- style: { backgroundColor: colorThemes2[themeCategory][key].colors[2].hex }
2604
- }
2605
- ),
2606
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "shrink", children: colorThemes2[themeCategory][key].colors[2].name?.replace(/\b(NSW|0[1-4])\b/g, "").replace(/\s+/g, " ").trim() }),
2607
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "absolute inset-0", "aria-hidden": true })
2608
- ] })
2609
- ] }, key))
2610
- }
2611
- )
2612
- ] })
2613
- ] })
2614
- ] });
2615
- }
2616
-
2617
- // src/lib/color-palette.ts
2618
- var brand = {
2619
- grey: [
2620
- oklchConverter("#22272b"),
2621
- oklchConverter("#495054"),
2622
- oklchConverter("#cdd3d6"),
2623
- oklchConverter("#ebebeb")
2624
- ],
2625
- green: [
2626
- oklchConverter("#004000"),
2627
- oklchConverter("#00aa45"),
2628
- oklchConverter("#a8edb3"),
2629
- oklchConverter("#dbfadf")
2630
- ],
2631
- teal: [
2632
- oklchConverter("#0b3f47"),
2633
- oklchConverter("#2e808e"),
2634
- oklchConverter("#8cdbe5"),
2635
- oklchConverter("#d1eeea")
2636
- ],
2637
- blue: [
2638
- oklchConverter("#002664"),
2639
- oklchConverter("#146cfd"),
2640
- oklchConverter("#8ce0ff"),
2641
- oklchConverter("#cbedfd")
2642
- ],
2643
- purple: [
2644
- oklchConverter("#441170"),
2645
- oklchConverter("#8055f1"),
2646
- oklchConverter("#cebfff"),
2647
- oklchConverter("#e6e1fd")
2648
- ],
2649
- fuchsia: [
2650
- oklchConverter("#65004d"),
2651
- oklchConverter("#d912ae"),
2652
- oklchConverter("#f4b5e6"),
2653
- oklchConverter("#fddef2")
2654
- ],
2655
- red: [
2656
- oklchConverter("#630019"),
2657
- oklchConverter("#d7153a"),
2658
- oklchConverter("#ffb8c1"),
2659
- oklchConverter("#ffe6ea")
2660
- ],
2661
- orange: [
2662
- oklchConverter("#941b00"),
2663
- oklchConverter("#f3631b"),
2664
- oklchConverter("#ffce99"),
2665
- oklchConverter("#fdeddf")
2666
- ],
2667
- yellow: [
2668
- oklchConverter("#694800"),
2669
- oklchConverter("#faaf05"),
2670
- oklchConverter("#fde79a"),
2671
- oklchConverter("#fff4cf")
2672
- ],
2673
- brown: [
2674
- oklchConverter("#523719"),
2675
- oklchConverter("#b68d5d"),
2676
- oklchConverter("#e8d0b5"),
2677
- oklchConverter("#ede3d7")
2678
- ]
2049
+
2050
+ // src/lib/color-palette.ts
2051
+ var brand = {
2052
+ grey: [
2053
+ oklchConverter("#22272b"),
2054
+ oklchConverter("#495054"),
2055
+ oklchConverter("#cdd3d6"),
2056
+ oklchConverter("#ebebeb")
2057
+ ],
2058
+ green: [
2059
+ oklchConverter("#004000"),
2060
+ oklchConverter("#00aa45"),
2061
+ oklchConverter("#a8edb3"),
2062
+ oklchConverter("#dbfadf")
2063
+ ],
2064
+ teal: [
2065
+ oklchConverter("#0b3f47"),
2066
+ oklchConverter("#2e808e"),
2067
+ oklchConverter("#8cdbe5"),
2068
+ oklchConverter("#d1eeea")
2069
+ ],
2070
+ blue: [
2071
+ oklchConverter("#002664"),
2072
+ oklchConverter("#146cfd"),
2073
+ oklchConverter("#8ce0ff"),
2074
+ oklchConverter("#cbedfd")
2075
+ ],
2076
+ purple: [
2077
+ oklchConverter("#441170"),
2078
+ oklchConverter("#8055f1"),
2079
+ oklchConverter("#cebfff"),
2080
+ oklchConverter("#e6e1fd")
2081
+ ],
2082
+ fuchsia: [
2083
+ oklchConverter("#65004d"),
2084
+ oklchConverter("#d912ae"),
2085
+ oklchConverter("#f4b5e6"),
2086
+ oklchConverter("#fddef2")
2087
+ ],
2088
+ red: [
2089
+ oklchConverter("#630019"),
2090
+ oklchConverter("#d7153a"),
2091
+ oklchConverter("#ffb8c1"),
2092
+ oklchConverter("#ffe6ea")
2093
+ ],
2094
+ orange: [
2095
+ oklchConverter("#941b00"),
2096
+ oklchConverter("#f3631b"),
2097
+ oklchConverter("#ffce99"),
2098
+ oklchConverter("#fdeddf")
2099
+ ],
2100
+ yellow: [
2101
+ oklchConverter("#694800"),
2102
+ oklchConverter("#faaf05"),
2103
+ oklchConverter("#fde79a"),
2104
+ oklchConverter("#fff4cf")
2105
+ ],
2106
+ brown: [
2107
+ oklchConverter("#523719"),
2108
+ oklchConverter("#b68d5d"),
2109
+ oklchConverter("#e8d0b5"),
2110
+ oklchConverter("#ede3d7")
2111
+ ]
2679
2112
  };
2680
2113
  var aboriginal = {
2681
2114
  grey: [
2682
- oklchConverter("#2D2D2D"),
2115
+ oklchConverter("#272727"),
2683
2116
  oklchConverter("#555555"),
2684
2117
  oklchConverter("#CCC6C2"),
2685
2118
  oklchConverter("#E5E3E0")
@@ -4480,7 +3913,7 @@ var colors = {
4480
3913
  hex: "#f4aa7d",
4481
3914
  rgb: "rgb(244, 170, 125)",
4482
3915
  hsl: "hsl(22.69, 84.4%, 72.35%)",
4483
- name: "Orange Clay"
3916
+ name: "Clay Orange"
4484
3917
  },
4485
3918
  {
4486
3919
  token: "nsw-aboriginal-orange-450",
@@ -4509,7 +3942,7 @@ var colors = {
4509
3942
  hex: "#ee6314",
4510
3943
  rgb: "rgb(238, 99, 20)",
4511
3944
  hsl: "hsl(21.74, 86.51%, 50.59%)",
4512
- name: "Ochre Orange"
3945
+ name: "Orange Ochre"
4513
3946
  },
4514
3947
  {
4515
3948
  token: "nsw-aboriginal-orange-650",
@@ -5190,7 +4623,7 @@ var colors = {
5190
4623
  hex: "#c99ac2",
5191
4624
  rgb: "rgb(201, 154, 194)",
5192
4625
  hsl: "hsl(308.94, 30.32%, 69.61%)",
5193
- name: "Lilli Pilli Purple"
4626
+ name: "Lilli pilli Purple"
5194
4627
  },
5195
4628
  {
5196
4629
  token: "nsw-aboriginal-purple-450",
@@ -5365,53 +4798,53 @@ var colors = {
5365
4798
  },
5366
4799
  {
5367
4800
  token: "nsw-aboriginal-grey-650",
5368
- oklch: "oklch(0.4114406365077532 0 none)",
5369
- hex: "#4b4b4b",
5370
- rgb: "rgb(75, 75, 75)",
5371
- hsl: "hsl(223.81, 0%, 29.26%)"
4801
+ oklch: "oklch(0.40533514521305436 0 none)",
4802
+ hex: "#494949",
4803
+ rgb: "rgb(73, 73, 73)",
4804
+ hsl: "hsl(223.81, 0%, 28.62%)"
5372
4805
  },
5373
4806
  {
5374
4807
  token: "nsw-aboriginal-grey-700",
5375
- oklch: "oklch(0.3733480790552275 0 none)",
5376
- hex: "#404040",
5377
- rgb: "rgb(64, 64, 64)",
5378
- hsl: "hsl(223.81, 0%, 25.29%)"
4808
+ oklch: "oklch(0.3611370964658298 0 none)",
4809
+ hex: "#3d3d3d",
4810
+ rgb: "rgb(61, 61, 61)",
4811
+ hsl: "hsl(223.81, 0%, 24.04%)"
5379
4812
  },
5380
4813
  {
5381
4814
  token: "nsw-aboriginal-grey-750",
5382
- oklch: "oklch(0.3352555216027018 0 none)",
5383
- hex: "#373737",
5384
- rgb: "rgb(55, 55, 55)",
5385
- hsl: "hsl(223.81, 0%, 21.41%)"
4815
+ oklch: "oklch(0.3169390477186052 0 none)",
4816
+ hex: "#323232",
4817
+ rgb: "rgb(50, 50, 50)",
4818
+ hsl: "hsl(223.81, 0%, 19.59%)"
5386
4819
  },
5387
4820
  {
5388
4821
  token: "nsw-aboriginal-grey-800",
5389
- oklch: "oklch(0.29716296415017607 0 none)",
5390
- hex: "#2d2d2d",
5391
- rgb: "rgb(45, 45, 45)",
5392
- hsl: "hsl(223.81, 0%, 17.65%)",
4822
+ oklch: "oklch(0.27274099897138065 0 none)",
4823
+ hex: "#272727",
4824
+ rgb: "rgb(39, 39, 39)",
4825
+ hsl: "hsl(223.81, 0%, 15.29%)",
5393
4826
  name: "Charcoal Grey"
5394
4827
  },
5395
4828
  {
5396
4829
  token: "nsw-aboriginal-grey-850",
5397
- oklch: "oklch(0.24515944542389526 0 none)",
5398
- hex: "#202020",
5399
- rgb: "rgb(32, 32, 32)",
5400
- hsl: "hsl(223.81, 0%, 12.7%)"
4830
+ oklch: "oklch(0.22501132415138902 0 none)",
4831
+ hex: "#1c1c1c",
4832
+ rgb: "rgb(28, 28, 28)",
4833
+ hsl: "hsl(223.81, 0%, 10.85%)"
5401
4834
  },
5402
4835
  {
5403
4836
  token: "nsw-aboriginal-grey-900",
5404
- oklch: "oklch(0.19315592669761444 0 none)",
5405
- hex: "#141414",
5406
- rgb: "rgb(20, 20, 20)",
5407
- hsl: "hsl(223.81, 0%, 8.01%)"
4837
+ oklch: "oklch(0.17728164933139742 0 none)",
4838
+ hex: "#111111",
4839
+ rgb: "rgb(17, 17, 17)",
4840
+ hsl: "hsl(223.81, 0%, 6.64%)"
5408
4841
  },
5409
4842
  {
5410
4843
  token: "nsw-aboriginal-grey-950",
5411
- oklch: "oklch(0.14115240797133363 0 none)",
5412
- hex: "#090909",
5413
- rgb: "rgb(9, 9, 9)",
5414
- hsl: "hsl(223.81, 0%, 3.63%)"
4844
+ oklch: "oklch(0.12955197451140582 0 none)",
4845
+ hex: "#070707",
4846
+ rgb: "rgb(7, 7, 7)",
4847
+ hsl: "hsl(223.81, 0%, 2.81%)"
5415
4848
  }
5416
4849
  ]
5417
4850
  }
@@ -5970,26 +5403,826 @@ var colors = {
5970
5403
  hsl: "hsl(222.21, 84%, 8.9%)"
5971
5404
  },
5972
5405
  {
5973
- token: "info-900",
5974
- oklch: "oklch(0.13904995929121322 0.047662878696429115 262.409403192285)",
5975
- hex: "#02071c",
5976
- rgb: "rgb(2, 7, 28)",
5977
- hsl: "hsl(226.63, 89.54%, 5.83%)"
5978
- },
5406
+ token: "info-900",
5407
+ oklch: "oklch(0.13904995929121322 0.047662878696429115 262.409403192285)",
5408
+ hex: "#02071c",
5409
+ rgb: "rgb(2, 7, 28)",
5410
+ hsl: "hsl(226.63, 89.54%, 5.83%)"
5411
+ },
5412
+ {
5413
+ token: "info-950",
5414
+ oklch: "oklch(0.10161343178973273 0.03744940469005145 262.409403192285)",
5415
+ hex: "#00030f",
5416
+ rgb: "rgb(0, 3, 15)",
5417
+ hsl: "hsl(230.65, 94.13%, 3.12%)"
5418
+ }
5419
+ ]
5420
+ }
5421
+ }
5422
+ };
5423
+ var colorThemes = generateColorThemes(colors);
5424
+ var Social = {
5425
+ Facebook: (props) => /* @__PURE__ */ jsxRuntime.jsx("svg", { fill: "currentColor", viewBox: "0 0 24 24", "data-slot": "icon", ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
5426
+ "path",
5427
+ {
5428
+ fillRule: "evenodd",
5429
+ 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",
5430
+ clipRule: "evenodd"
5431
+ }
5432
+ ) }),
5433
+ Figma: (props) => /* @__PURE__ */ jsxRuntime.jsx("svg", { fill: "currentColor", viewBox: "0 0 24 24", "data-slot": "icon", ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
5434
+ "path",
5435
+ {
5436
+ fillRule: "evenodd",
5437
+ 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",
5438
+ clipRule: "evenodd"
5439
+ }
5440
+ ) }),
5441
+ Github: (props) => /* @__PURE__ */ jsxRuntime.jsx("svg", { fill: "currentColor", viewBox: "0 0 24 24", "data-slot": "icon", ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
5442
+ "path",
5443
+ {
5444
+ fillRule: "evenodd",
5445
+ 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",
5446
+ clipRule: "evenodd"
5447
+ }
5448
+ ) }),
5449
+ Instagram: (props) => /* @__PURE__ */ jsxRuntime.jsx("svg", { fill: "currentColor", viewBox: "0 0 24 24", "data-slot": "icon", ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
5450
+ "path",
5451
+ {
5452
+ fillRule: "evenodd",
5453
+ 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",
5454
+ clipRule: "evenodd"
5455
+ }
5456
+ ) }),
5457
+ LinkedIn: (props) => /* @__PURE__ */ jsxRuntime.jsx("svg", { fill: "currentColor", viewBox: "0 0 24 24", "data-slot": "icon", ...props, children: /* @__PURE__ */ jsxRuntime.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" }) }),
5458
+ X: (props) => /* @__PURE__ */ jsxRuntime.jsx("svg", { fill: "currentColor", viewBox: "0 0 24 24", "data-slot": "icon", ...props, children: /* @__PURE__ */ jsxRuntime.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" }) }),
5459
+ YouTube: (props) => /* @__PURE__ */ jsxRuntime.jsx("svg", { fill: "currentColor", viewBox: "0 0 24 24", "data-slot": "icon", ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
5460
+ "path",
5461
+ {
5462
+ fillRule: "evenodd",
5463
+ 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",
5464
+ clipRule: "evenodd"
5465
+ }
5466
+ ) })
5467
+ };
5468
+ function TooltipProvider({
5469
+ delayDuration,
5470
+ ...props
5471
+ }) {
5472
+ return /* @__PURE__ */ jsxRuntime.jsx(
5473
+ TooltipPrimitive__namespace.Provider,
5474
+ {
5475
+ "data-slot": "tooltip-provider",
5476
+ delayDuration,
5477
+ ...props
5478
+ }
5479
+ );
5480
+ }
5481
+ function Tooltip({ ...props }) {
5482
+ return /* @__PURE__ */ jsxRuntime.jsx(TooltipPrimitive__namespace.Root, { "data-slot": "tooltip", ...props });
5483
+ }
5484
+ function TooltipTrigger({ ...props }) {
5485
+ return /* @__PURE__ */ jsxRuntime.jsx(TooltipPrimitive__namespace.Trigger, { "data-slot": "tooltip-trigger", ...props });
5486
+ }
5487
+ function TooltipContent({
5488
+ className,
5489
+ sideOffset = 0,
5490
+ children,
5491
+ ...props
5492
+ }) {
5493
+ return /* @__PURE__ */ jsxRuntime.jsx(TooltipPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsxs(
5494
+ TooltipPrimitive__namespace.Content,
5495
+ {
5496
+ "data-slot": "tooltip-content",
5497
+ sideOffset,
5498
+ className: cn(
5499
+ "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",
5500
+ className
5501
+ ),
5502
+ ...props,
5503
+ children: [
5504
+ children,
5505
+ /* @__PURE__ */ jsxRuntime.jsx(TooltipPrimitive__namespace.Arrow, { className: "bg-grey-800 fill-grey-800 z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]" })
5506
+ ]
5507
+ }
5508
+ ) });
5509
+ }
5510
+ function ScrollArea({
5511
+ className,
5512
+ children,
5513
+ ...props
5514
+ }) {
5515
+ return /* @__PURE__ */ jsxRuntime.jsxs(
5516
+ ScrollAreaPrimitive__namespace.Root,
5517
+ {
5518
+ "data-slot": "scroll-area",
5519
+ className: cn("relative", className),
5520
+ ...props,
5521
+ children: [
5522
+ /* @__PURE__ */ jsxRuntime.jsx(
5523
+ ScrollAreaPrimitive__namespace.Viewport,
5524
+ {
5525
+ "data-slot": "scroll-area-viewport",
5526
+ className: "focus-visible:ring-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1",
5527
+ children
5528
+ }
5529
+ ),
5530
+ /* @__PURE__ */ jsxRuntime.jsx(ScrollBar, {}),
5531
+ /* @__PURE__ */ jsxRuntime.jsx(ScrollAreaPrimitive__namespace.Corner, {})
5532
+ ]
5533
+ }
5534
+ );
5535
+ }
5536
+ function ScrollBar({
5537
+ className,
5538
+ orientation = "vertical",
5539
+ ...props
5540
+ }) {
5541
+ return /* @__PURE__ */ jsxRuntime.jsx(
5542
+ ScrollAreaPrimitive__namespace.ScrollAreaScrollbar,
5543
+ {
5544
+ "data-slot": "scroll-area-scrollbar",
5545
+ orientation,
5546
+ className: cn(
5547
+ "flex touch-none p-px transition-colors select-none",
5548
+ orientation === "vertical" && "h-full w-2.5 border-l border-l-transparent",
5549
+ orientation === "horizontal" && "h-2.5 flex-col border-t border-t-transparent",
5550
+ className
5551
+ ),
5552
+ ...props,
5553
+ children: /* @__PURE__ */ jsxRuntime.jsx(
5554
+ ScrollAreaPrimitive__namespace.ScrollAreaThumb,
5555
+ {
5556
+ "data-slot": "scroll-area-thumb",
5557
+ className: "bg-border relative flex-1 rounded-full"
5558
+ }
5559
+ )
5560
+ }
5561
+ );
5562
+ }
5563
+ function PreWithCopy(props) {
5564
+ const textInput = React16.useRef(null);
5565
+ const [isJustCopied, setJustCopied] = React16.useState(false);
5566
+ function handleCopy() {
5567
+ if (textInput.current) {
5568
+ navigator.clipboard.writeText(textInput.current.textContent || "");
5569
+ setJustCopied(true);
5570
+ setTimeout(() => setJustCopied(false), 2e3);
5571
+ }
5572
+ }
5573
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "group relative", children: [
5574
+ /* @__PURE__ */ jsxRuntime.jsx(
5575
+ "pre",
5576
+ {
5577
+ ref: textInput,
5578
+ ...props,
5579
+ className: tailwindMerge.twMerge("max-h-[40rem] overflow-auto", props.className)
5580
+ }
5581
+ ),
5582
+ /* @__PURE__ */ jsxRuntime.jsxs(
5583
+ "button",
5584
+ {
5585
+ 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",
5586
+ "aria-label": "Copy code to clipboard",
5587
+ onClick: handleCopy,
5588
+ children: [
5589
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: tailwindMerge.twMerge(isJustCopied && "hidden"), children: /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "inline-flex items-center", children: [
5590
+ /* @__PURE__ */ jsxRuntime.jsx(Icons.copy, { className: "me-1.5 size-3" }),
5591
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-xs font-semibold", children: "Copy code" })
5592
+ ] }) }),
5593
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: tailwindMerge.twMerge(isJustCopied ? "block" : "hidden"), children: /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "inline-flex items-center", children: [
5594
+ /* @__PURE__ */ jsxRuntime.jsx(Icons.check, { className: "text-primary-700 dark:text-primary-500 me-1.5 size-3" }),
5595
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-primary-700 dark:text-primary-500 text-xs font-semibold", children: "Copied" })
5596
+ ] }) })
5597
+ ]
5598
+ }
5599
+ )
5600
+ ] });
5601
+ }
5602
+ Prism__default.default.manual = true;
5603
+ function CodeHighlight({
5604
+ code,
5605
+ language,
5606
+ className,
5607
+ withCopy = false,
5608
+ ...props
5609
+ }) {
5610
+ const highlightedCode = Prism__default.default.highlight(code.trim(), Prism__default.default.languages[language], language);
5611
+ const Component2 = withCopy ? PreWithCopy : "pre";
5612
+ return /* @__PURE__ */ jsxRuntime.jsx(Component2, { className: tailwindMerge.twMerge(`language-${language}`, className), ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
5613
+ "code",
5614
+ {
5615
+ className: `language-${language}`,
5616
+ dangerouslySetInnerHTML: { __html: highlightedCode }
5617
+ }
5618
+ ) });
5619
+ }
5620
+ function Select({ ...props }) {
5621
+ return /* @__PURE__ */ jsxRuntime.jsx(SelectPrimitive__namespace.Root, { "data-slot": "select", ...props });
5622
+ }
5623
+ function SelectGroup({ ...props }) {
5624
+ return /* @__PURE__ */ jsxRuntime.jsx(SelectPrimitive__namespace.Group, { "data-slot": "select-group", ...props });
5625
+ }
5626
+ function SelectValue({ ...props }) {
5627
+ return /* @__PURE__ */ jsxRuntime.jsx(SelectPrimitive__namespace.Value, { "data-slot": "select-value", ...props });
5628
+ }
5629
+ function SelectTrigger({
5630
+ className,
5631
+ size = "default",
5632
+ children,
5633
+ ...props
5634
+ }) {
5635
+ return /* @__PURE__ */ jsxRuntime.jsxs(
5636
+ SelectPrimitive__namespace.Trigger,
5637
+ {
5638
+ "data-slot": "select-trigger",
5639
+ "data-size": size,
5640
+ className: cn(
5641
+ // Base styles
5642
+ "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",
5643
+ // Disabled styles
5644
+ "disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50",
5645
+ // aria-invalid styles
5646
+ "aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
5647
+ // Focus styles
5648
+ "focus:outline-primary-650/70 focus:outline focus:outline-2 focus:outline-offset-2",
5649
+ // Placeholder styles
5650
+ "data-[placeholder]:text-grey-600",
5651
+ // Dark mode styles
5652
+ "dark:bg-input/30 dark:hover:bg-input/50",
5653
+ // Size styles
5654
+ "data-[size=default]:h-12 data-[size=sm]:h-9",
5655
+ className
5656
+ ),
5657
+ ...props,
5658
+ children: [
5659
+ children,
5660
+ /* @__PURE__ */ jsxRuntime.jsx(SelectPrimitive__namespace.Icon, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(Icons.chevron_down, { className: "size-6 opacity-80" }) })
5661
+ ]
5662
+ }
5663
+ );
5664
+ }
5665
+ function SelectContent({
5666
+ className,
5667
+ children,
5668
+ position = "popper",
5669
+ ...props
5670
+ }) {
5671
+ return /* @__PURE__ */ jsxRuntime.jsx(SelectPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsxs(
5672
+ SelectPrimitive__namespace.Content,
5673
+ {
5674
+ "data-slot": "select-content",
5675
+ className: cn(
5676
+ // Base styles
5677
+ "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",
5678
+ // State styles
5679
+ "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",
5680
+ 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",
5681
+ className
5682
+ ),
5683
+ position,
5684
+ ...props,
5685
+ children: [
5686
+ /* @__PURE__ */ jsxRuntime.jsx(SelectScrollUpButton, {}),
5687
+ /* @__PURE__ */ jsxRuntime.jsx(
5688
+ SelectPrimitive__namespace.Viewport,
5689
+ {
5690
+ className: cn(
5691
+ "p-1",
5692
+ position === "popper" && "h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"
5693
+ ),
5694
+ children
5695
+ }
5696
+ ),
5697
+ /* @__PURE__ */ jsxRuntime.jsx(SelectScrollDownButton, {})
5698
+ ]
5699
+ }
5700
+ ) });
5701
+ }
5702
+ function SelectLabel({ className, ...props }) {
5703
+ return /* @__PURE__ */ jsxRuntime.jsx(
5704
+ SelectPrimitive__namespace.Label,
5705
+ {
5706
+ "data-slot": "select-label",
5707
+ className: cn("text-grey-600 px-2 py-1.5 text-xs", className),
5708
+ ...props
5709
+ }
5710
+ );
5711
+ }
5712
+ function SelectItem({
5713
+ className,
5714
+ children,
5715
+ ...props
5716
+ }) {
5717
+ return /* @__PURE__ */ jsxRuntime.jsxs(
5718
+ SelectPrimitive__namespace.Item,
5719
+ {
5720
+ "data-slot": "select-item",
5721
+ className: cn(
5722
+ "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",
5723
+ className
5724
+ ),
5725
+ ...props,
5726
+ children: [
5727
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "absolute right-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(SelectPrimitive__namespace.ItemIndicator, { children: /* @__PURE__ */ jsxRuntime.jsx(Icons.check, { className: "size-6" }) }) }),
5728
+ /* @__PURE__ */ jsxRuntime.jsx(SelectPrimitive__namespace.ItemText, { children })
5729
+ ]
5730
+ }
5731
+ );
5732
+ }
5733
+ function SelectSeparator({
5734
+ className,
5735
+ ...props
5736
+ }) {
5737
+ return /* @__PURE__ */ jsxRuntime.jsx(
5738
+ SelectPrimitive__namespace.Separator,
5739
+ {
5740
+ "data-slot": "select-separator",
5741
+ className: cn("bg-primary-800/20 pointer-events-none -mx-1 my-1 h-px", className),
5742
+ ...props
5743
+ }
5744
+ );
5745
+ }
5746
+ function SelectScrollUpButton({
5747
+ className,
5748
+ ...props
5749
+ }) {
5750
+ return /* @__PURE__ */ jsxRuntime.jsx(
5751
+ SelectPrimitive__namespace.ScrollUpButton,
5752
+ {
5753
+ "data-slot": "select-scroll-up-button",
5754
+ className: cn("flex cursor-default items-center justify-center py-1", className),
5755
+ ...props,
5756
+ children: /* @__PURE__ */ jsxRuntime.jsx(Icons.chevron_up, { className: "size-6" })
5757
+ }
5758
+ );
5759
+ }
5760
+ function SelectScrollDownButton({
5761
+ className,
5762
+ ...props
5763
+ }) {
5764
+ return /* @__PURE__ */ jsxRuntime.jsx(
5765
+ SelectPrimitive__namespace.ScrollDownButton,
5766
+ {
5767
+ "data-slot": "select-scroll-down-button",
5768
+ className: cn("flex cursor-default items-center justify-center py-1", className),
5769
+ ...props,
5770
+ children: /* @__PURE__ */ jsxRuntime.jsx(Icons.chevron_down, { className: "size-6" })
5771
+ }
5772
+ );
5773
+ }
5774
+ function Popover({ ...props }) {
5775
+ return /* @__PURE__ */ jsxRuntime.jsx(PopoverPrimitive__namespace.Root, { "data-slot": "popover", ...props });
5776
+ }
5777
+ function PopoverTrigger({ ...props }) {
5778
+ return /* @__PURE__ */ jsxRuntime.jsx(PopoverPrimitive__namespace.Trigger, { "data-slot": "popover-trigger", ...props });
5779
+ }
5780
+ function PopoverContent({
5781
+ className,
5782
+ align = "center",
5783
+ sideOffset = 4,
5784
+ ...props
5785
+ }) {
5786
+ return /* @__PURE__ */ jsxRuntime.jsx(PopoverPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(
5787
+ PopoverPrimitive__namespace.Content,
5788
+ {
5789
+ "data-slot": "popover-content",
5790
+ align,
5791
+ sideOffset,
5792
+ className: cn(
5793
+ [
5794
+ // Base
5795
+ "bg-background text-foreground z-50 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border p-4 shadow-md outline-hidden",
5796
+ // Open
5797
+ "data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
5798
+ // Closed
5799
+ "data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95",
5800
+ // Side
5801
+ "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"
5802
+ ],
5803
+ className
5804
+ ),
5805
+ ...props
5806
+ }
5807
+ ) });
5808
+ }
5809
+ function PopoverAnchor({ ...props }) {
5810
+ return /* @__PURE__ */ jsxRuntime.jsx(PopoverPrimitive__namespace.Anchor, { "data-slot": "popover-anchor", ...props });
5811
+ }
5812
+ function Label3({ className, ...props }) {
5813
+ return /* @__PURE__ */ jsxRuntime.jsx(
5814
+ LabelPrimitive__namespace.Root,
5815
+ {
5816
+ "data-slot": "label",
5817
+ className: cn(
5818
+ // Base
5819
+ "flex items-center gap-2",
5820
+ "text-grey-900 text-base/6 font-semibold select-none",
5821
+ // Dark mode
5822
+ "dark:group-data-[disabled=true]:text-grey-400 dark:text-white",
5823
+ // Disabled state
5824
+ "group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",
5825
+ className
5826
+ ),
5827
+ ...props
5828
+ }
5829
+ );
5830
+ }
5831
+ function RadioGroup2({
5832
+ className,
5833
+ ...props
5834
+ }) {
5835
+ return /* @__PURE__ */ jsxRuntime.jsx(
5836
+ RadioGroupPrimitive__namespace.Root,
5837
+ {
5838
+ "data-slot": "radio-group",
5839
+ className: cn("grid gap-3", className),
5840
+ ...props
5841
+ }
5842
+ );
5843
+ }
5844
+ function RadioGroupItem({
5845
+ className,
5846
+ ...props
5847
+ }) {
5848
+ return /* @__PURE__ */ jsxRuntime.jsx(
5849
+ RadioGroupPrimitive__namespace.Item,
5850
+ {
5851
+ "data-slot": "radio-group-item",
5852
+ className: cn(
5853
+ // Base styles
5854
+ "border-primary-800 text-primary-800 aspect-square size-8 shrink-0 rounded-full border shadow-xs transition-[color,box-shadow] outline-none",
5855
+ // Dark mode styles
5856
+ "dark:bg-input/30",
5857
+ // Focus styles
5858
+ "focus:border-grey-600 focus:ring-primary-650/70 ring-offset-white focus:ring-2 focus:ring-offset-2 focus:outline-none",
5859
+ // aria-invalid styles
5860
+ "aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
5861
+ // Disabled styles
5862
+ "disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50",
5863
+ className
5864
+ ),
5865
+ ...props,
5866
+ children: /* @__PURE__ */ jsxRuntime.jsx(
5867
+ RadioGroupPrimitive__namespace.Indicator,
5979
5868
  {
5980
- token: "info-950",
5981
- oklch: "oklch(0.10161343178973273 0.03744940469005145 262.409403192285)",
5982
- hex: "#00030f",
5983
- rgb: "rgb(0, 3, 15)",
5984
- hsl: "hsl(230.65, 94.13%, 3.12%)"
5869
+ "data-slot": "radio-group-indicator",
5870
+ className: cn(
5871
+ // Base styles
5872
+ "relative flex items-center justify-center"
5873
+ ),
5874
+ children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.CircleIcon, { className: "fill-primary-800 absolute top-1/2 left-1/2 size-6 -translate-x-1/2 -translate-y-1/2" })
5985
5875
  }
5986
- ]
5876
+ )
5987
5877
  }
5988
- }
5989
- };
5990
- var colorThemes = generateColorThemes(colors);
5991
- function CodeDemo({ data, hide = {} }) {
5878
+ );
5879
+ }
5880
+ function SegmentedControl({
5881
+ className,
5882
+ ...props
5883
+ }) {
5884
+ return /* @__PURE__ */ jsxRuntime.jsx(
5885
+ TabsPrimitive2__namespace.Root,
5886
+ {
5887
+ "data-slot": "tabs",
5888
+ className: cn("flex flex-col gap-2", className),
5889
+ ...props
5890
+ }
5891
+ );
5892
+ }
5893
+ function SegmentedControlList({
5894
+ className,
5895
+ ...props
5896
+ }) {
5897
+ return /* @__PURE__ */ jsxRuntime.jsx(
5898
+ TabsPrimitive2__namespace.List,
5899
+ {
5900
+ "data-slot": "segmented-control-list",
5901
+ className: cn(
5902
+ "bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center rounded-lg p-[3px]",
5903
+ className
5904
+ ),
5905
+ ...props
5906
+ }
5907
+ );
5908
+ }
5909
+ function SegmentedControlTrigger({
5910
+ className,
5911
+ ...props
5912
+ }) {
5913
+ return /* @__PURE__ */ jsxRuntime.jsx(
5914
+ TabsPrimitive2__namespace.Trigger,
5915
+ {
5916
+ "data-slot": "segmented-control-trigger",
5917
+ className: cn(
5918
+ "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",
5919
+ className
5920
+ ),
5921
+ ...props
5922
+ }
5923
+ );
5924
+ }
5925
+ var findGreyKey = (themes) => Object.keys(themes).find((k) => k.toLowerCase().includes("grey")) ?? "";
5926
+ function ThemeSelectorLoading() {
5927
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex animate-pulse flex-col gap-6", children: [
5928
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-2", children: [
5929
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-grey-200 h-5 w-32 rounded" }),
5930
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-grey-200 h-10 w-full rounded" })
5931
+ ] }),
5932
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid gap-6", children: [
5933
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-3", children: [
5934
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-grey-200 h-5 w-24 rounded" }),
5935
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-2 gap-2", children: [1, 2, 3, 4].map((i) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-grey-200 h-12 rounded" }, i)) })
5936
+ ] }),
5937
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-3", children: [
5938
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-grey-200 h-5 w-24 rounded" }),
5939
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-2 gap-2", children: [1, 2, 3].map((i) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-grey-200 h-12 rounded" }, i)) })
5940
+ ] })
5941
+ ] }),
5942
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-3", children: [
5943
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-grey-200 h-5 w-20 rounded" }),
5944
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "border-muted bg-muted/30 gap-3 rounded-md border p-3", children: [
5945
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mb-2 flex min-w-0 items-center justify-between", children: [
5946
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-grey-200 h-4 w-48 rounded" }),
5947
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-grey-200 h-8 w-8 rounded" })
5948
+ ] }),
5949
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-grey-200 h-8 w-full rounded" })
5950
+ ] })
5951
+ ] })
5952
+ ] });
5953
+ }
5954
+ function ThemeSelectorContent({
5955
+ themeCategory,
5956
+ setThemeCategory,
5957
+ primaryColor,
5958
+ setPrimaryColor,
5959
+ accentColor,
5960
+ setAccentColor,
5961
+ greyColor,
5962
+ setGreyColor,
5963
+ availableAccentColors,
5964
+ colorThemes: colorThemes2
5965
+ }) {
5966
+ const searchParams = navigation.useSearchParams();
5967
+ const [, copyToClipboardRaw] = usehooks.useCopyToClipboard();
5968
+ const [copied, setCopied] = React16.useState(false);
5969
+ const updateUrlParams = React16.useCallback(
5970
+ (category, primary, accent) => {
5971
+ const params = new URLSearchParams();
5972
+ params.set("theme", category);
5973
+ params.set("primary", primary);
5974
+ params.set("accent", accent);
5975
+ window.history.replaceState(null, "", `?${params.toString()}`);
5976
+ },
5977
+ []
5978
+ );
5979
+ React16.useEffect(() => {
5980
+ const themeParam = searchParams.get("theme");
5981
+ const primaryParam = searchParams.get("primary");
5982
+ const accentParam = searchParams.get("accent");
5983
+ let shouldUpdateUrl = false;
5984
+ let newCategory = themeCategory;
5985
+ let newPrimary = primaryColor;
5986
+ let newAccent = accentColor;
5987
+ if (themeParam && (themeParam === "brand" || themeParam === "aboriginal")) {
5988
+ if (themeParam !== themeCategory) {
5989
+ newCategory = themeParam;
5990
+ shouldUpdateUrl = true;
5991
+ const neutral = findGreyKey(colorThemes2[themeParam]);
5992
+ if (neutral && neutral !== greyColor) {
5993
+ setGreyColor(neutral);
5994
+ }
5995
+ }
5996
+ }
5997
+ const availableColors = Object.keys(colorThemes2[newCategory]);
5998
+ if (primaryParam && availableColors.includes(primaryParam)) {
5999
+ if (primaryParam !== primaryColor) {
6000
+ newPrimary = primaryParam;
6001
+ shouldUpdateUrl = true;
6002
+ }
6003
+ }
6004
+ if (accentParam && availableColors.includes(accentParam) && accentParam !== newPrimary) {
6005
+ if (accentParam !== accentColor) {
6006
+ newAccent = accentParam;
6007
+ shouldUpdateUrl = true;
6008
+ }
6009
+ } else {
6010
+ const newAccentColor = availableColors.find((color2) => color2 !== newPrimary);
6011
+ if (newAccentColor && newAccentColor !== accentColor) {
6012
+ newAccent = newAccentColor;
6013
+ shouldUpdateUrl = true;
6014
+ }
6015
+ }
6016
+ if (shouldUpdateUrl) {
6017
+ if (newCategory !== themeCategory) setThemeCategory(newCategory);
6018
+ if (newPrimary !== primaryColor) setPrimaryColor(newPrimary);
6019
+ if (newAccent !== accentColor) setAccentColor(newAccent);
6020
+ }
6021
+ }, [
6022
+ searchParams,
6023
+ themeCategory,
6024
+ primaryColor,
6025
+ accentColor,
6026
+ greyColor,
6027
+ colorThemes2,
6028
+ setThemeCategory,
6029
+ setPrimaryColor,
6030
+ setAccentColor,
6031
+ setGreyColor
6032
+ ]);
6033
+ const handleCategoryChange = (newCategory) => {
6034
+ setThemeCategory(newCategory);
6035
+ const availableColors = Object.keys(colorThemes2[newCategory]);
6036
+ const neutral = findGreyKey(colorThemes2[newCategory]);
6037
+ if (neutral && neutral !== greyColor) {
6038
+ setGreyColor(neutral);
6039
+ }
6040
+ let newPrimary = primaryColor;
6041
+ let newAccent = accentColor;
6042
+ if (availableColors.length > 0) {
6043
+ if (availableColors.includes(primaryColor)) {
6044
+ const newAccentColor = availableColors.find((color2) => color2 !== primaryColor);
6045
+ if (newAccentColor && newAccentColor !== accentColor) {
6046
+ newAccent = newAccentColor;
6047
+ setAccentColor(newAccentColor);
6048
+ }
6049
+ } else {
6050
+ newPrimary = availableColors[0];
6051
+ setPrimaryColor(availableColors[0]);
6052
+ if (availableColors.length > 1) {
6053
+ newAccent = availableColors[1];
6054
+ setAccentColor(availableColors[1]);
6055
+ }
6056
+ }
6057
+ }
6058
+ updateUrlParams(newCategory, newPrimary, newAccent);
6059
+ };
6060
+ const handlePrimaryColorChange = (value) => {
6061
+ setPrimaryColor(value);
6062
+ if (value === accentColor) {
6063
+ const availableColors = Object.keys(colorThemes2[themeCategory]);
6064
+ const newAccentColor = availableColors.find((color2) => color2 !== value);
6065
+ if (newAccentColor) {
6066
+ setAccentColor(newAccentColor);
6067
+ updateUrlParams(themeCategory, value, newAccentColor);
6068
+ return;
6069
+ }
6070
+ }
6071
+ updateUrlParams(themeCategory, value, accentColor);
6072
+ };
6073
+ const handleAccentColorChange = (value) => {
6074
+ setAccentColor(value);
6075
+ updateUrlParams(themeCategory, primaryColor, value);
6076
+ };
6077
+ const labelStyles = {
6078
+ base: [
6079
+ // Base
6080
+ "group relative flex w-full items-center gap-2 rounded-sm border px-3 py-2",
6081
+ // Light mode
6082
+ "border-grey-200 bg-background",
6083
+ // Hover
6084
+ "hover:bg-primary-800/10 hover:text-foreground",
6085
+ // Active
6086
+ "[&:has([data-state=checked])]:border-grey-800",
6087
+ // Dark mode
6088
+ "",
6089
+ // Dark hover
6090
+ "dark:hover:bg-white/10",
6091
+ // Dark active
6092
+ "dark:group-data-[state=checked]:border-grey-400"
6093
+ ],
6094
+ label: [
6095
+ // Base
6096
+ "cursor-pointer flex items-center justify-between",
6097
+ // Active
6098
+ ""
6099
+ ]
6100
+ };
6101
+ const themeUrl = window?.location?.href || "";
6102
+ const copyToClipboard = () => {
6103
+ copyToClipboardRaw(themeUrl);
6104
+ setCopied(true);
6105
+ sonner.toast("Color theme url copied to clipboard", {
6106
+ duration: 2e3
6107
+ });
6108
+ setTimeout(() => setCopied(false), 2e3);
6109
+ };
6110
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-6", children: [
6111
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-2", children: [
6112
+ /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "font-medium", children: "Theme Category" }),
6113
+ /* @__PURE__ */ jsxRuntime.jsx(
6114
+ SegmentedControl,
6115
+ {
6116
+ value: themeCategory,
6117
+ onValueChange: (value) => handleCategoryChange(value),
6118
+ children: /* @__PURE__ */ jsxRuntime.jsxs(SegmentedControlList, { className: "w-full", children: [
6119
+ /* @__PURE__ */ jsxRuntime.jsx(SegmentedControlTrigger, { value: "brand", children: "Brand Colors" }),
6120
+ /* @__PURE__ */ jsxRuntime.jsx(SegmentedControlTrigger, { value: "aboriginal", children: "Aboriginal Colors" })
6121
+ ] })
6122
+ }
6123
+ )
6124
+ ] }),
6125
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid gap-6", children: [
6126
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-3", children: [
6127
+ /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "font-medium", children: "Primary Color" }),
6128
+ /* @__PURE__ */ jsxRuntime.jsx(
6129
+ RadioGroup2,
6130
+ {
6131
+ value: primaryColor,
6132
+ onValueChange: handlePrimaryColorChange,
6133
+ className: "grid grid-cols-2 gap-2",
6134
+ children: Object.entries(colorThemes2[themeCategory]).map(([key, theme2]) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn(labelStyles.base, ""), children: [
6135
+ /* @__PURE__ */ jsxRuntime.jsx(RadioGroupItem, { value: key, id: `primary-${key}`, className: "peer sr-only" }),
6136
+ /* @__PURE__ */ jsxRuntime.jsxs(Label3, { htmlFor: `primary-${key}`, className: cn(labelStyles.label, ""), children: [
6137
+ /* @__PURE__ */ jsxRuntime.jsx(
6138
+ "div",
6139
+ {
6140
+ className: "h-5 w-5 flex-none rounded-full",
6141
+ style: { backgroundColor: theme2.colors[3].hex }
6142
+ }
6143
+ ),
6144
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "shrink", children: theme2.colors[3].name?.replace(/\b(NSW|0[1-4])\b/g, "").replace(/\s+/g, " ").trim() }),
6145
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "absolute inset-0", "aria-hidden": true })
6146
+ ] })
6147
+ ] }, key))
6148
+ }
6149
+ )
6150
+ ] }),
6151
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-3", children: [
6152
+ /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "font-medium", children: "Accent Color" }),
6153
+ /* @__PURE__ */ jsxRuntime.jsx(
6154
+ RadioGroup2,
6155
+ {
6156
+ value: accentColor,
6157
+ onValueChange: handleAccentColorChange,
6158
+ className: "grid grid-cols-2 gap-2",
6159
+ children: availableAccentColors.map((key) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn(labelStyles.base, ""), children: [
6160
+ /* @__PURE__ */ jsxRuntime.jsx(RadioGroupItem, { value: key, id: `accent-${key}`, className: "peer sr-only" }),
6161
+ /* @__PURE__ */ jsxRuntime.jsxs(Label3, { htmlFor: `accent-${key}`, className: cn(labelStyles.label, ""), children: [
6162
+ /* @__PURE__ */ jsxRuntime.jsx(
6163
+ "div",
6164
+ {
6165
+ className: "size-5 flex-none rounded-full",
6166
+ style: { backgroundColor: colorThemes2[themeCategory][key].colors[2].hex }
6167
+ }
6168
+ ),
6169
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "shrink", children: colorThemes2[themeCategory][key].colors[2].name?.replace(/\b(NSW|0[1-4])\b/g, "").replace(/\s+/g, " ").trim() }),
6170
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "absolute inset-0", "aria-hidden": true })
6171
+ ] })
6172
+ ] }, key))
6173
+ }
6174
+ )
6175
+ ] })
6176
+ ] }),
6177
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-3", children: [
6178
+ /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "font-medium", children: "Share Theme" }),
6179
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "border-muted bg-muted/30 gap-3 rounded-md border p-3", children: [
6180
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mb-2 flex min-w-0 items-center justify-between", children: [
6181
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-muted-foreground text-sm", children: "Copy this URL to share your theme selection:" }),
6182
+ /* @__PURE__ */ jsxRuntime.jsxs(
6183
+ Button2,
6184
+ {
6185
+ variant: "ghost",
6186
+ size: "icon",
6187
+ className: "flex-shrink-0 p-0",
6188
+ onClick: copyToClipboard,
6189
+ title: copied ? "Copied!" : "Copy URL",
6190
+ children: [
6191
+ copied ? /* @__PURE__ */ jsxRuntime.jsx(Icons.check, {}) : /* @__PURE__ */ jsxRuntime.jsx(Icons.copy, {}),
6192
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: copied ? "URL copied to clipboard" : "Copy URL to clipboard" })
6193
+ ]
6194
+ }
6195
+ )
6196
+ ] }),
6197
+ /* @__PURE__ */ jsxRuntime.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 })
6198
+ ] })
6199
+ ] })
6200
+ ] });
6201
+ }
6202
+ function ThemeSelector(props) {
6203
+ return /* @__PURE__ */ jsxRuntime.jsx(React16.Suspense, { fallback: /* @__PURE__ */ jsxRuntime.jsx(ThemeSelectorLoading, {}), children: /* @__PURE__ */ jsxRuntime.jsx(ThemeSelectorContent, { ...props }) });
6204
+ }
6205
+ function CodeDemoLoading() {
6206
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mt-8 animate-pulse", children: [
6207
+ /* @__PURE__ */ jsxRuntime.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__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-2 sm:grid-cols-3", children: [
6208
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-grey-200 h-10 w-32 rounded" }),
6209
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-grey-200 h-10 w-32 rounded" }),
6210
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex justify-end gap-3", children: [
6211
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-grey-200 h-10 w-20 rounded" }),
6212
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-grey-200 h-10 w-16 rounded" }),
6213
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-grey-200 h-10 w-10 rounded" })
6214
+ ] })
6215
+ ] }) }),
6216
+ /* @__PURE__ */ jsxRuntime.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__ */ jsxRuntime.jsx("div", { className: "bg-grey-200 h-64 w-full rounded" }) }),
6217
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "border-grey-200 dark:border-grey-600 border", children: [
6218
+ /* @__PURE__ */ jsxRuntime.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__ */ jsxRuntime.jsx("div", { className: "bg-grey-200 h-8 w-24 rounded" }) }),
6219
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-grey-100 h-48" })
6220
+ ] })
6221
+ ] });
6222
+ }
6223
+ function CodeDemoContent({ data, hide = {} }) {
5992
6224
  const { resolvedTheme } = nextThemes.useTheme();
6225
+ const searchParams = navigation.useSearchParams();
5993
6226
  const { rtl = false, darkMode = false, themeSelector = false } = hide;
5994
6227
  const [tabIndex, setTabIndex] = React16.useState(0);
5995
6228
  const [variant, setVariant] = React16.useState(getInitialVariant(data));
@@ -6002,6 +6235,44 @@ function CodeDemo({ data, hide = {} }) {
6002
6235
  const [primaryColor, setPrimaryColor] = React16.useState("blue");
6003
6236
  const [accentColor, setAccentColor] = React16.useState("red");
6004
6237
  const [greyColor, setGreyColor] = React16.useState("grey");
6238
+ const [isThemeInitialized, setIsThemeInitialized] = React16.useState(false);
6239
+ React16.useEffect(() => {
6240
+ const themeParam = searchParams.get("theme");
6241
+ const primaryParam = searchParams.get("primary");
6242
+ const accentParam = searchParams.get("accent");
6243
+ let newCategory = themeCategory;
6244
+ let newPrimary = primaryColor;
6245
+ let newAccent = accentColor;
6246
+ if (themeParam && (themeParam === "brand" || themeParam === "aboriginal")) {
6247
+ newCategory = themeParam;
6248
+ setThemeCategory(themeParam);
6249
+ }
6250
+ const availableColors = Object.keys(colorThemes[newCategory]);
6251
+ if (primaryParam && availableColors.includes(primaryParam)) {
6252
+ newPrimary = primaryParam;
6253
+ setPrimaryColor(primaryParam);
6254
+ } else if (!availableColors.includes(newPrimary)) {
6255
+ newPrimary = availableColors[0];
6256
+ setPrimaryColor(newPrimary);
6257
+ }
6258
+ if (accentParam && availableColors.includes(accentParam) && accentParam !== newPrimary) {
6259
+ newAccent = accentParam;
6260
+ setAccentColor(accentParam);
6261
+ } else {
6262
+ const newAccentColor = availableColors.find((color2) => color2 !== newPrimary);
6263
+ if (newAccentColor) {
6264
+ newAccent = newAccentColor;
6265
+ setAccentColor(newAccent);
6266
+ }
6267
+ }
6268
+ const neutralKey = Object.keys(colorThemes[newCategory]).find(
6269
+ (k) => k.toLowerCase().includes("grey")
6270
+ );
6271
+ if (neutralKey) {
6272
+ setGreyColor(neutralKey);
6273
+ }
6274
+ setIsThemeInitialized(true);
6275
+ }, [searchParams, themeCategory, primaryColor, accentColor]);
6005
6276
  React16.useEffect(() => {
6006
6277
  setDarkMode(resolvedTheme === "dark");
6007
6278
  }, [resolvedTheme]);
@@ -6093,6 +6364,7 @@ function CodeDemo({ data, hide = {} }) {
6093
6364
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mt-8", children: [
6094
6365
  /* @__PURE__ */ jsxRuntime.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__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-2 sm:grid-cols-3", children: [
6095
6366
  /* @__PURE__ */ jsxRuntime.jsx(EditOnGithubButton, { githubSlug: data.githubSlug }),
6367
+ data.figmaSlug && /* @__PURE__ */ jsxRuntime.jsx(OpenInFigmaButton, { figmaSlug: data.figmaSlug }),
6096
6368
  /* @__PURE__ */ jsxRuntime.jsx(ToggleViewButtons, { onSelect: setView }),
6097
6369
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "col-span-1 flex justify-end gap-3", children: [
6098
6370
  !themeSelector && /* @__PURE__ */ jsxRuntime.jsx(
@@ -6105,7 +6377,8 @@ function CodeDemo({ data, hide = {} }) {
6105
6377
  accentColor,
6106
6378
  setAccentColor,
6107
6379
  greyColor,
6108
- setGreyColor
6380
+ setGreyColor,
6381
+ isInitialized: isThemeInitialized
6109
6382
  }
6110
6383
  ),
6111
6384
  !rtl && /* @__PURE__ */ jsxRuntime.jsx(ToggleRTLButton, { isRTL, onClick: () => setIsRTL((state) => !state) }),
@@ -6180,6 +6453,9 @@ function CodeDemo({ data, hide = {} }) {
6180
6453
  ) })
6181
6454
  ] });
6182
6455
  }
6456
+ function CodeDemo(props) {
6457
+ return /* @__PURE__ */ jsxRuntime.jsx(React16.Suspense, { fallback: /* @__PURE__ */ jsxRuntime.jsx(CodeDemoLoading, {}), children: /* @__PURE__ */ jsxRuntime.jsx(CodeDemoContent, { ...props }) });
6458
+ }
6183
6459
  var IFrame = React16__namespace.default.forwardRef(
6184
6460
  ({ iframe, isRTL, isDarkMode }, ref) => {
6185
6461
  React16.useEffect(() => {
@@ -6268,7 +6544,7 @@ function CodePreview({
6268
6544
  }
6269
6545
  function EditOnGithubButton({ githubSlug }) {
6270
6546
  const githubSrcHref = "https://github.com";
6271
- const href = `${githubSrcHref}${githubSlug}`;
6547
+ const href = githubSlug ? `${githubSrcHref}${githubSlug}` : githubSrcHref;
6272
6548
  return /* @__PURE__ */ jsxRuntime.jsxs(
6273
6549
  Button2,
6274
6550
  {
@@ -6285,6 +6561,25 @@ function EditOnGithubButton({ githubSlug }) {
6285
6561
  }
6286
6562
  );
6287
6563
  }
6564
+ function OpenInFigmaButton({ figmaSlug }) {
6565
+ const figmaSrcHref = "https://www.figma.com";
6566
+ const href = figmaSlug ? `${figmaSrcHref}${figmaSlug}` : figmaSrcHref;
6567
+ return /* @__PURE__ */ jsxRuntime.jsxs(
6568
+ Button2,
6569
+ {
6570
+ variant: "outline",
6571
+ color: "light",
6572
+ href,
6573
+ target: "_blank",
6574
+ rel: "nofollow noopener noreferrer",
6575
+ className: "flex h-10 w-fit items-center text-sm",
6576
+ children: [
6577
+ /* @__PURE__ */ jsxRuntime.jsx(Social.Figma, { "data-slot": "icon" }),
6578
+ "Open in Figma"
6579
+ ]
6580
+ }
6581
+ );
6582
+ }
6288
6583
  function ToggleViewButtons({ onSelect }) {
6289
6584
  const views = [
6290
6585
  { name: "desktop", title: "Toggle full screen", icon: Icons.desktop },
@@ -6301,7 +6596,8 @@ function ThemeSelectorDropDown({
6301
6596
  accentColor,
6302
6597
  setAccentColor,
6303
6598
  greyColor,
6304
- setGreyColor
6599
+ setGreyColor,
6600
+ isInitialized
6305
6601
  }) {
6306
6602
  const filteredColorThemes = React16.useMemo(() => {
6307
6603
  const filtered = {};
@@ -6319,6 +6615,7 @@ function ThemeSelectorDropDown({
6319
6615
  return allColors.filter((color2) => color2 !== primaryColor);
6320
6616
  }, [filteredColorThemes, themeCategory, primaryColor]);
6321
6617
  React16.useEffect(() => {
6618
+ if (!isInitialized) return;
6322
6619
  const neutralKey = Object.keys(colorThemes[themeCategory]).find((k) => k.toLowerCase().includes("grey")) ?? "";
6323
6620
  if (neutralKey && neutralKey !== greyColor) {
6324
6621
  setGreyColor(neutralKey);
@@ -6344,20 +6641,29 @@ function ThemeSelectorDropDown({
6344
6641
  greyColor,
6345
6642
  setPrimaryColor,
6346
6643
  setAccentColor,
6347
- setGreyColor
6644
+ setGreyColor,
6645
+ isInitialized
6348
6646
  ]);
6349
6647
  const primaryColorSwatch = colorThemes[themeCategory][primaryColor]?.colors[3]?.hex || "#000000";
6350
6648
  const accentColorSwatch = colorThemes[themeCategory][accentColor]?.colors[2]?.hex || "#000000";
6351
6649
  return /* @__PURE__ */ jsxRuntime.jsxs(Popover, { children: [
6352
- /* @__PURE__ */ jsxRuntime.jsx(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsxs(Button2, { color: "light", variant: "outline", className: "flex h-10 items-center text-sm", children: [
6353
- /* @__PURE__ */ jsxRuntime.jsx(Icons.palette, {}),
6354
- /* @__PURE__ */ jsxRuntime.jsx("span", { children: "Theme" }),
6355
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "ml-2 flex gap-1", children: [
6356
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-3 w-3 rounded-full", style: { backgroundColor: primaryColorSwatch } }),
6357
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-3 w-3 rounded-full", style: { backgroundColor: accentColorSwatch } })
6358
- ] })
6359
- ] }) }),
6360
- /* @__PURE__ */ jsxRuntime.jsx(PopoverContent, { className: "w-80", children: /* @__PURE__ */ jsxRuntime.jsx(
6650
+ /* @__PURE__ */ jsxRuntime.jsx(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsxs(
6651
+ Button2,
6652
+ {
6653
+ color: "light",
6654
+ variant: "outline",
6655
+ className: "flex h-10 items-center bg-transparent text-sm",
6656
+ children: [
6657
+ /* @__PURE__ */ jsxRuntime.jsx(Icons.palette, {}),
6658
+ /* @__PURE__ */ jsxRuntime.jsx("span", { children: "Theme" }),
6659
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "ml-2 flex gap-1", children: [
6660
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-3 w-3 rounded-full", style: { backgroundColor: primaryColorSwatch } }),
6661
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-3 w-3 rounded-full", style: { backgroundColor: accentColorSwatch } })
6662
+ ] })
6663
+ ]
6664
+ }
6665
+ ) }),
6666
+ /* @__PURE__ */ jsxRuntime.jsx(PopoverContent, { className: "w-100", children: /* @__PURE__ */ jsxRuntime.jsx(ScrollArea, { className: "h-120 w-full", children: /* @__PURE__ */ jsxRuntime.jsx(
6361
6667
  ThemeSelector,
6362
6668
  {
6363
6669
  themeCategory,
@@ -6371,7 +6677,7 @@ function ThemeSelectorDropDown({
6371
6677
  availableAccentColors,
6372
6678
  colorThemes: filteredColorThemes
6373
6679
  }
6374
- ) })
6680
+ ) }) })
6375
6681
  ] });
6376
6682
  }
6377
6683
  function ToggleRTLButton({ isRTL, onClick }) {
@@ -6384,7 +6690,7 @@ function ToggleRTLButton({ isRTL, onClick }) {
6384
6690
  onClick,
6385
6691
  color: "light",
6386
6692
  variant: "outline",
6387
- className: "flex h-10 items-center text-sm",
6693
+ className: "flex h-10 items-center bg-transparent text-sm",
6388
6694
  children: [
6389
6695
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: title }),
6390
6696
  dir
@@ -7159,20 +7465,20 @@ function FooterSocialLink({
7159
7465
  Icon2,
7160
7466
  {
7161
7467
  "data-slot": "icon",
7162
- className: "group-hover:fill-nsw-grey-900 dark:group-hover:fill-nsw-grey-500 fill-nsw-grey-700 transition"
7468
+ className: "group-hover:fill-grey-900 dark:group-hover:fill-grey-500 fill-grey-700 transition"
7163
7469
  }
7164
7470
  )
7165
7471
  ] });
7166
7472
  }
7167
7473
  function FooterAcknowledgement() {
7168
- return /* @__PURE__ */ jsxRuntime.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__ */ jsxRuntime.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." }) });
7474
+ return /* @__PURE__ */ jsxRuntime.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__ */ jsxRuntime.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." }) });
7169
7475
  }
7170
7476
  function FooterSmallPrint({
7171
7477
  socialLinks,
7172
7478
  department
7173
7479
  }) {
7174
7480
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col items-center justify-between gap-5 pt-4 sm:flex-row dark:border-white/5", children: [
7175
- /* @__PURE__ */ jsxRuntime.jsxs("p", { className: "text-nsw-grey-600 dark:text-nsw-grey-400 text-center text-sm lg:text-left", children: [
7481
+ /* @__PURE__ */ jsxRuntime.jsxs("p", { className: "text-grey-600 dark:text-grey-400 text-center text-sm lg:text-left", children: [
7176
7482
  "\xA9 Copyright ",
7177
7483
  (/* @__PURE__ */ new Date()).getFullYear(),
7178
7484
  department && " ",
@@ -7195,7 +7501,7 @@ function FooterLegalLinks({ legalLinks }) {
7195
7501
  Link10__default.default,
7196
7502
  {
7197
7503
  href: item.href,
7198
- 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",
7504
+ 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",
7199
7505
  children: item.name
7200
7506
  },
7201
7507
  item.name
@@ -7210,7 +7516,7 @@ function Footer({
7210
7516
  }) {
7211
7517
  return /* @__PURE__ */ jsxRuntime.jsxs("footer", { className: "mx-auto w-full px-4 py-16 pb-16 lg:pr-0 lg:pl-8", children: [
7212
7518
  /* @__PURE__ */ jsxRuntime.jsx(FooterAcknowledgement, {}),
7213
- /* @__PURE__ */ jsxRuntime.jsx(Separator4, { className: "bg-nsw-grey-200 my-4" }),
7519
+ /* @__PURE__ */ jsxRuntime.jsx(Separator4, { className: "bg-grey-200 my-4" }),
7214
7520
  /* @__PURE__ */ jsxRuntime.jsx(FooterLegalLinks, { legalLinks }),
7215
7521
  /* @__PURE__ */ jsxRuntime.jsx(FooterSmallPrint, { department, socialLinks })
7216
7522
  ] });
@@ -7304,11 +7610,11 @@ function FormMessage({ className, ...props }) {
7304
7610
  var styles3 = {
7305
7611
  base: [
7306
7612
  // Base
7307
- "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",
7613
+ "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",
7308
7614
  // States
7309
- "data-[state=on]:bg-nsw-grey-100 data-[state=on]:text-nsw-grey-850",
7615
+ "data-[state=on]:bg-grey-100 data-[state=on]:text-grey-850",
7310
7616
  // Hover
7311
- "hover:bg-nsw-grey-100 hover:text-nsw-grey-850",
7617
+ "hover:bg-grey-100 hover:text-grey-850",
7312
7618
  // Focus
7313
7619
  "focus:outline focus:outline-2 focus:outline-offset-0 focus:outline-(--toggle-border)",
7314
7620
  // Dark mode
@@ -7328,9 +7634,9 @@ var styles3 = {
7328
7634
  ],
7329
7635
  outline: [
7330
7636
  // Base
7331
- "text-nsw-grey-800 border [--toggle-border:var(--color-nsw-grey-300)]",
7637
+ "text-grey-800 border [--toggle-border:var(--color-grey-300)]",
7332
7638
  // States
7333
- "hover:[--toggle-border:var(--color-nsw-grey-400)]",
7639
+ "hover:[--toggle-border:var(--color-grey-400)]",
7334
7640
  // Dark mode
7335
7641
  "dark:[--toggle-border:white]/40",
7336
7642
  // Dark mode states
@@ -7502,7 +7808,7 @@ function Heading({
7502
7808
 
7503
7809
  // package.json
7504
7810
  var package_default = {
7505
- version: "1.42.0"};
7811
+ version: "1.43.0"};
7506
7812
  function Logo(props) {
7507
7813
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
7508
7814
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "NSW Government" }),
@@ -7545,7 +7851,7 @@ function Logo(props) {
7545
7851
  function ThemeSwitcher() {
7546
7852
  const { resolvedTheme, setTheme } = nextThemes.useTheme();
7547
7853
  const [mounted, setMounted] = React16.useState(false);
7548
- const classes = "fill-nsw-grey-600 dark:fill-nsw-grey-100";
7854
+ const classes = "fill-grey-600 dark:fill-grey-100";
7549
7855
  React16.useEffect(() => {
7550
7856
  setMounted(true);
7551
7857
  }, []);
@@ -7593,7 +7899,7 @@ function SiteSearch({ navigation: navigation$1 }) {
7593
7899
  className: "relative h-10 w-full items-center justify-start sm:pr-12 md:w-40 lg:w-64",
7594
7900
  onClick: () => setOpen(true),
7595
7901
  children: [
7596
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-nsw-grey-600 hidden lg:inline-flex", children: "Search site..." }),
7902
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-grey-600 hidden lg:inline-flex", children: "Search site..." }),
7597
7903
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "inline-flex lg:hidden", children: "Search..." }),
7598
7904
  /* @__PURE__ */ jsxRuntime.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: [
7599
7905
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-xs", children: "\u2318" }),
@@ -7671,13 +7977,7 @@ function Header2({
7671
7977
  className: "group",
7672
7978
  href: "https://github.com/digitalnsw",
7673
7979
  "aria-label": "GitHub",
7674
- children: /* @__PURE__ */ jsxRuntime.jsx(
7675
- Social.Github,
7676
- {
7677
- "data-slot": "icon",
7678
- className: "fill-nsw-grey-600 dark:fill-nsw-grey-100 size-6"
7679
- }
7680
- )
7980
+ children: /* @__PURE__ */ jsxRuntime.jsx(Social.Github, { "data-slot": "icon", className: "fill-grey-600 dark:fill-grey-100 size-6" })
7681
7981
  }
7682
7982
  ),
7683
7983
  children
@@ -8234,55 +8534,41 @@ function MegaMenu({ title, href, links }) {
8234
8534
  function Navigation({
8235
8535
  className,
8236
8536
  onLinkClick,
8237
- navigation: navigation$1
8537
+ navigation
8238
8538
  }) {
8239
- const pathname = navigation.usePathname();
8240
- return /* @__PURE__ */ jsxRuntime.jsx("nav", { className: clsx21__default.default("text-base lg:text-sm", className), children: /* @__PURE__ */ jsxRuntime.jsx("ul", { role: "list", className: "flex flex-col gap-9", children: navigation$1.map((section, index) => /* @__PURE__ */ jsxRuntime.jsxs("li", { children: [
8241
- section.links ? /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "font-display text-foreground font-medium dark:text-white", children: section.title }) : /* @__PURE__ */ jsxRuntime.jsx(
8242
- "ul",
8243
- {
8244
- role: "list",
8245
- className: "border-grey-400 dark:border-grey-200/15 mt-2 flex flex-col gap-2 border-l lg:mt-4",
8246
- children: /* @__PURE__ */ jsxRuntime.jsx("li", { className: "-ml-px flex flex-col items-start gap-2", children: /* @__PURE__ */ jsxRuntime.jsx(
8247
- Link10__default.default,
8248
- {
8249
- href: section.href || "/",
8250
- onClick: onLinkClick,
8251
- className: clsx21__default.default(
8252
- "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",
8253
- "hover:border-grey-950 hover:text-grey-950 hover:bg-primary-800/10 hover:font-semibold",
8254
- "dark:text-grey-400 dark:hover:border-grey-400 dark:hover:text-white",
8255
- section.href === pathname && "border-primary-800 text-primary-800 bg-primary-800/10 border-l font-bold dark:border-white dark:bg-white/20"
8256
- ),
8257
- children: section.title
8258
- }
8259
- ) }, index)
8260
- }
8261
- ),
8262
- /* @__PURE__ */ jsxRuntime.jsx(
8263
- "ul",
8539
+ return /* @__PURE__ */ jsxRuntime.jsx("nav", { className: clsx21__default.default("text-base lg:text-sm", className), children: /* @__PURE__ */ jsxRuntime.jsx("ul", { role: "list", className: "flex flex-col gap-9", children: navigation.map((section, index) => /* @__PURE__ */ jsxRuntime.jsxs("li", { children: [
8540
+ section.links ? /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "font-display text-grey-800 font-medium dark:text-white", children: section.title }) : /* @__PURE__ */ jsxRuntime.jsx("ul", { role: "list", className: "mt-2 flex flex-col gap-2 border-l lg:mt-4", children: /* @__PURE__ */ jsxRuntime.jsx("li", { className: "-ml-px flex flex-col items-start gap-2", children: /* @__PURE__ */ jsxRuntime.jsx(
8541
+ NavigationLink,
8264
8542
  {
8265
- role: "list",
8266
- className: "border-grey-400 dark:border-grey-200/15 mt-2 flex flex-col gap-2 border-l lg:mt-4",
8267
- children: section.links && section.links.map((link, index2) => /* @__PURE__ */ jsxRuntime.jsx("li", { className: "-ml-px flex flex-col items-start gap-2", children: /* @__PURE__ */ jsxRuntime.jsx(
8268
- Link10__default.default,
8269
- {
8270
- href: link.href,
8271
- onClick: onLinkClick,
8272
- className: clsx21__default.default(
8273
- "text-foreground inline-block border-l border-transparent pl-5 text-base/8 sm:pl-4 sm:text-sm/6",
8274
- "hover:border-grey-950 hover:text-grey-950 hover:font-semibold",
8275
- "dark:text-grey-400",
8276
- "dark:hover:border-grey-400 dark:hover:text-white",
8277
- link.href === pathname && "border-primary-800 text-primary-800 bg-primary-800/10 border-l font-bold dark:border-white dark:bg-white/20"
8278
- ),
8279
- children: link.title
8280
- }
8281
- ) }, index2))
8543
+ href: section.href || "/",
8544
+ title: section.title,
8545
+ onClick: onLinkClick
8282
8546
  }
8283
- )
8547
+ ) }, index) }),
8548
+ /* @__PURE__ */ jsxRuntime.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__ */ jsxRuntime.jsx("li", { className: "-ml-px flex flex-col items-start gap-2", children: /* @__PURE__ */ jsxRuntime.jsx(NavigationLink, { href: link.href, title: link.title, onClick: onLinkClick }) }, index2)) })
8284
8549
  ] }, index)) }) });
8285
8550
  }
8551
+ function NavigationLink({
8552
+ href,
8553
+ title,
8554
+ onClick
8555
+ }) {
8556
+ const pathname = navigation.usePathname();
8557
+ return /* @__PURE__ */ jsxRuntime.jsx(
8558
+ Link10__default.default,
8559
+ {
8560
+ href,
8561
+ onClick,
8562
+ className: clsx21__default.default(
8563
+ "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",
8564
+ "hover:border-grey-950 hover:text-grey-950 hover:bg-primary-800/10 hover:font-semibold",
8565
+ "dark:text-grey-400 dark:hover:border-grey-400 dark:hover:text-white",
8566
+ href === pathname && "border-primary-800 text-primary-800 bg-primary-800/10 border-l font-bold dark:border-white dark:bg-white/20"
8567
+ ),
8568
+ children: title
8569
+ }
8570
+ );
8571
+ }
8286
8572
  var LayoutGroupContext = React16.createContext({});
8287
8573
  function useConstant(init) {
8288
8574
  const ref = React16.useRef(null);
@@ -16366,59 +16652,6 @@ function ResizableHandle({
16366
16652
  }
16367
16653
  );
16368
16654
  }
16369
- function ScrollArea({
16370
- className,
16371
- children,
16372
- ...props
16373
- }) {
16374
- return /* @__PURE__ */ jsxRuntime.jsxs(
16375
- ScrollAreaPrimitive__namespace.Root,
16376
- {
16377
- "data-slot": "scroll-area",
16378
- className: cn("relative", className),
16379
- ...props,
16380
- children: [
16381
- /* @__PURE__ */ jsxRuntime.jsx(
16382
- ScrollAreaPrimitive__namespace.Viewport,
16383
- {
16384
- "data-slot": "scroll-area-viewport",
16385
- className: "focus-visible:ring-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1",
16386
- children
16387
- }
16388
- ),
16389
- /* @__PURE__ */ jsxRuntime.jsx(ScrollBar, {}),
16390
- /* @__PURE__ */ jsxRuntime.jsx(ScrollAreaPrimitive__namespace.Corner, {})
16391
- ]
16392
- }
16393
- );
16394
- }
16395
- function ScrollBar({
16396
- className,
16397
- orientation = "vertical",
16398
- ...props
16399
- }) {
16400
- return /* @__PURE__ */ jsxRuntime.jsx(
16401
- ScrollAreaPrimitive__namespace.ScrollAreaScrollbar,
16402
- {
16403
- "data-slot": "scroll-area-scrollbar",
16404
- orientation,
16405
- className: cn(
16406
- "flex touch-none p-px transition-colors select-none",
16407
- orientation === "vertical" && "h-full w-2.5 border-l border-l-transparent",
16408
- orientation === "horizontal" && "h-2.5 flex-col border-t border-t-transparent",
16409
- className
16410
- ),
16411
- ...props,
16412
- children: /* @__PURE__ */ jsxRuntime.jsx(
16413
- ScrollAreaPrimitive__namespace.ScrollAreaThumb,
16414
- {
16415
- "data-slot": "scroll-area-thumb",
16416
- className: "bg-border relative flex-1 rounded-full"
16417
- }
16418
- )
16419
- }
16420
- );
16421
- }
16422
16655
  function Sheet({ ...props }) {
16423
16656
  return /* @__PURE__ */ jsxRuntime.jsx(DialogPrimitive__namespace.Root, { "data-slot": "sheet", ...props });
16424
16657
  }
@@ -16587,24 +16820,16 @@ function SidebarLink({ link, pathname, onLinkClick, depth }) {
16587
16820
  ]
16588
16821
  }
16589
16822
  ) }),
16590
- /* @__PURE__ */ jsxRuntime.jsx(CollapsibleContent2, { children: /* @__PURE__ */ jsxRuntime.jsx(
16591
- "ul",
16823
+ /* @__PURE__ */ jsxRuntime.jsx(CollapsibleContent2, { children: /* @__PURE__ */ jsxRuntime.jsx("ul", { className: clsx21__default.default("mt-2 ml-5 flex flex-col gap-1 border-l pl-0"), children: link.links && link.links.map((childLink) => /* @__PURE__ */ jsxRuntime.jsx(
16824
+ SidebarLink,
16592
16825
  {
16593
- className: clsx21__default.default(
16594
- "border-grey-400 dark:border-grey-200/15 mt-2 ml-5 flex flex-col gap-1 border-l pl-0"
16595
- ),
16596
- children: link.links && link.links.map((childLink) => /* @__PURE__ */ jsxRuntime.jsx(
16597
- SidebarLink,
16598
- {
16599
- link: childLink,
16600
- pathname,
16601
- onLinkClick,
16602
- depth: depth + 1
16603
- },
16604
- childLink.href
16605
- ))
16606
- }
16607
- ) })
16826
+ link: childLink,
16827
+ pathname,
16828
+ onLinkClick,
16829
+ depth: depth + 1
16830
+ },
16831
+ childLink.href
16832
+ )) }) })
16608
16833
  ] }) : /* @__PURE__ */ jsxRuntime.jsx(Link10__default.default, { href: link.href, onClick: onLinkClick, className: baseLinkClasses, children: link.title }) });
16609
16834
  }
16610
16835
  var StepIndicator = React16__namespace.forwardRef(
@@ -16684,8 +16909,8 @@ var StepIndicator = React16__namespace.forwardRef(
16684
16909
  children: [
16685
16910
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex h-9 items-center", children: /* @__PURE__ */ jsxRuntime.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__ */ jsxRuntime.jsx(Icons.check, { "aria-hidden": "true", className: "size-4 text-white" }) }) }),
16686
16911
  /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "ml-4 flex min-w-0 flex-col", children: [
16687
- step.title && /* @__PURE__ */ jsxRuntime.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 }),
16688
- step.description && /* @__PURE__ */ jsxRuntime.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 })
16912
+ step.title && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-grey-700 hover:text-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.title }),
16913
+ step.description && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-grey-700 hover:text-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.description })
16689
16914
  ] })
16690
16915
  ]
16691
16916
  }
@@ -16707,8 +16932,8 @@ var StepIndicator = React16__namespace.forwardRef(
16707
16932
  children: [
16708
16933
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex h-9 items-center", children: /* @__PURE__ */ jsxRuntime.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__ */ jsxRuntime.jsx(Icons.check, { "aria-hidden": "true", className: "size-4" }) }) }),
16709
16934
  /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "ml-4 flex min-w-0 flex-col", children: [
16710
- step.title && /* @__PURE__ */ jsxRuntime.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 }),
16711
- step.description && /* @__PURE__ */ jsxRuntime.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 })
16935
+ step.title && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-grey-700 hover:text-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.title }),
16936
+ step.description && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-grey-700 hover:text-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.description })
16712
16937
  ] })
16713
16938
  ]
16714
16939
  }
@@ -16730,8 +16955,8 @@ var StepIndicator = React16__namespace.forwardRef(
16730
16955
  children: [
16731
16956
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex h-9 items-center", children: /* @__PURE__ */ jsxRuntime.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__ */ jsxRuntime.jsx(Icons.more_horiz, { "aria-hidden": "true", className: "size-4" }) }) }),
16732
16957
  /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "ml-4 flex min-w-0 flex-col", children: [
16733
- step.title && /* @__PURE__ */ jsxRuntime.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 }),
16734
- step.description && /* @__PURE__ */ jsxRuntime.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 })
16958
+ step.title && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-grey-700 hover:text-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.title }),
16959
+ step.description && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-grey-700 hover:text-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.description })
16735
16960
  ] })
16736
16961
  ]
16737
16962
  }
@@ -16753,8 +16978,8 @@ var StepIndicator = React16__namespace.forwardRef(
16753
16978
  children: [
16754
16979
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex h-9 items-center", children: /* @__PURE__ */ jsxRuntime.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__ */ jsxRuntime.jsx(Icons.exclamation, { "aria-hidden": "true", className: "size-4 text-white" }) }) }),
16755
16980
  /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "ml-4 flex min-w-0 flex-col", children: [
16756
- step.title && /* @__PURE__ */ jsxRuntime.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 }),
16757
- step.description && /* @__PURE__ */ jsxRuntime.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 })
16981
+ step.title && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-grey-700 hover:text-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.title }),
16982
+ step.description && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-grey-700 hover:text-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.description })
16758
16983
  ] })
16759
16984
  ]
16760
16985
  }
@@ -16776,8 +17001,8 @@ var StepIndicator = React16__namespace.forwardRef(
16776
17001
  children: [
16777
17002
  /* @__PURE__ */ jsxRuntime.jsx("span", { "aria-hidden": "true", className: "flex h-9 items-center", children: /* @__PURE__ */ jsxRuntime.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__ */ jsxRuntime.jsx("span", { className: "group-hover:bg-grey-300 size-2 rounded-full bg-transparent" }) }) }),
16778
17003
  /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "ml-4 flex min-w-0 flex-col", children: [
16779
- step.title && /* @__PURE__ */ jsxRuntime.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 }),
16780
- step.description && /* @__PURE__ */ jsxRuntime.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 })
17004
+ step.title && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-grey-700 hover:text-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.title }),
17005
+ step.description && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-grey-700 hover:text-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.description })
16781
17006
  ] })
16782
17007
  ]
16783
17008
  }
@@ -16797,10 +17022,10 @@ var StepIndicator = React16__namespace.forwardRef(
16797
17022
  className: "group relative flex items-center",
16798
17023
  onClick: onLinkClick,
16799
17024
  children: [
16800
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex h-9 items-center", children: /* @__PURE__ */ jsxRuntime.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__ */ jsxRuntime.jsx(Icons.remove, { "aria-hidden": "true", className: "size-4 text-white" }) }) }),
17025
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex h-9 items-center", children: /* @__PURE__ */ jsxRuntime.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__ */ jsxRuntime.jsx(Icons.remove, { "aria-hidden": "true", className: "size-4 text-white" }) }) }),
16801
17026
  /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "ml-4 flex min-w-0 flex-col", children: [
16802
- step.title && /* @__PURE__ */ jsxRuntime.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 }),
16803
- step.description && /* @__PURE__ */ jsxRuntime.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 })
17027
+ step.title && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-grey-700 hover:text-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.title }),
17028
+ step.description && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-grey-700 hover:text-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.description })
16804
17029
  ] })
16805
17030
  ]
16806
17031
  }
@@ -16822,8 +17047,8 @@ var StepIndicator = React16__namespace.forwardRef(
16822
17047
  children: [
16823
17048
  /* @__PURE__ */ jsxRuntime.jsx("span", { "aria-hidden": "true", className: "flex h-9 items-center", children: /* @__PURE__ */ jsxRuntime.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__ */ jsxRuntime.jsx("span", { className: "group-hover:bg-grey-300 size-2 rounded-full bg-transparent" }) }) }),
16824
17049
  /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "ml-4 flex min-w-0 flex-col", children: [
16825
- step.title && /* @__PURE__ */ jsxRuntime.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 }),
16826
- step.description && /* @__PURE__ */ jsxRuntime.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 })
17050
+ step.title && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-grey-700 hover:text-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.title }),
17051
+ step.description && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-grey-700 hover:text-grey-800 text-sm dark:text-slate-400 dark:hover:text-slate-300", children: step.description })
16827
17052
  ] })
16828
17053
  ]
16829
17054
  }
@@ -17028,97 +17253,45 @@ function SwitchField({
17028
17253
  );
17029
17254
  }
17030
17255
  var colors2 = {
17031
- "dark/zinc": [
17032
- "[--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",
17033
- "[--switch-ring:var(--color-zinc-950)]/90 [--switch-shadow:var(--color-black)]/10 [--switch:white] dark:[--switch-ring:var(--color-zinc-700)]/90"
17256
+ "dark/grey": [
17257
+ "[--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",
17258
+ "[--switch-ring:var(--color-grey-950)]/90 [--switch-shadow:var(--color-black)]/10 [--switch:white] dark:[--switch-ring:var(--color-grey-700)]/90"
17034
17259
  ],
17035
17260
  "dark/white": [
17036
- "[--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)]",
17037
- "[--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)]"
17261
+ "[--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)]",
17262
+ "[--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)]"
17038
17263
  ],
17039
17264
  dark: [
17040
- "[--switch-bg-ring:var(--color-zinc-950)]/90 [--switch-bg:var(--color-zinc-900)] dark:[--switch-bg-ring:var(--color-white)]/15",
17041
- "[--switch-ring:var(--color-zinc-950)]/90 [--switch-shadow:var(--color-black)]/10 [--switch:white]"
17265
+ "[--switch-bg-ring:var(--color-grey-950)]/90 [--switch-bg:var(--color-grey-900)] dark:[--switch-bg-ring:var(--color-white)]/15",
17266
+ "[--switch-ring:var(--color-grey-950)]/90 [--switch-shadow:var(--color-black)]/10 [--switch:white]"
17042
17267
  ],
17043
- zinc: [
17044
- "[--switch-bg-ring:var(--color-zinc-700)]/90 [--switch-bg:var(--color-zinc-600)] dark:[--switch-bg-ring:transparent]",
17045
- "[--switch-shadow:var(--color-black)]/10 [--switch:white] [--switch-ring:var(--color-zinc-700)]/90"
17268
+ grey: [
17269
+ "[--switch-bg-ring:var(--color-grey-700)]/90 [--switch-bg:var(--color-grey-600)] dark:[--switch-bg-ring:transparent]",
17270
+ "[--switch-shadow:var(--color-black)]/10 [--switch:white] [--switch-ring:var(--color-grey-700)]/90"
17046
17271
  ],
17047
17272
  white: [
17048
17273
  "[--switch-bg-ring:var(--color-black)]/15 [--switch-bg:white] dark:[--switch-bg-ring:transparent]",
17049
- "[--switch-shadow:var(--color-black)]/10 [--switch-ring:transparent] [--switch:var(--color-zinc-950)]"
17050
- ],
17051
- red: [
17052
- "[--switch-bg-ring:var(--color-red-700)]/90 [--switch-bg:var(--color-red-600)] dark:[--switch-bg-ring:transparent]",
17053
- "[--switch:white] [--switch-ring:var(--color-red-700)]/90 [--switch-shadow:var(--color-red-900)]/20"
17054
- ],
17055
- orange: [
17056
- "[--switch-bg-ring:var(--color-orange-600)]/90 [--switch-bg:var(--color-orange-500)] dark:[--switch-bg-ring:transparent]",
17057
- "[--switch:white] [--switch-ring:var(--color-orange-600)]/90 [--switch-shadow:var(--color-orange-900)]/20"
17058
- ],
17059
- amber: [
17060
- "[--switch-bg-ring:var(--color-amber-500)]/80 [--switch-bg:var(--color-amber-400)] dark:[--switch-bg-ring:transparent]",
17061
- "[--switch-ring:transparent] [--switch-shadow:transparent] [--switch:var(--color-amber-950)]"
17062
- ],
17063
- yellow: [
17064
- "[--switch-bg-ring:var(--color-yellow-400)]/80 [--switch-bg:var(--color-yellow-300)] dark:[--switch-bg-ring:transparent]",
17065
- "[--switch-ring:transparent] [--switch-shadow:transparent] [--switch:var(--color-yellow-950)]"
17066
- ],
17067
- lime: [
17068
- "[--switch-bg-ring:var(--color-lime-400)]/80 [--switch-bg:var(--color-lime-300)] dark:[--switch-bg-ring:transparent]",
17069
- "[--switch-ring:transparent] [--switch-shadow:transparent] [--switch:var(--color-lime-950)]"
17070
- ],
17071
- green: [
17072
- "[--switch-bg-ring:var(--color-green-700)]/90 [--switch-bg:var(--color-green-600)] dark:[--switch-bg-ring:transparent]",
17073
- "[--switch:white] [--switch-ring:var(--color-green-700)]/90 [--switch-shadow:var(--color-green-900)]/20"
17074
- ],
17075
- emerald: [
17076
- "[--switch-bg-ring:var(--color-emerald-600)]/90 [--switch-bg:var(--color-emerald-500)] dark:[--switch-bg-ring:transparent]",
17077
- "[--switch:white] [--switch-ring:var(--color-emerald-600)]/90 [--switch-shadow:var(--color-emerald-900)]/20"
17274
+ "[--switch-shadow:var(--color-black)]/10 [--switch-ring:transparent] [--switch:var(--color-grey-950)]"
17078
17275
  ],
17079
- teal: [
17080
- "[--switch-bg-ring:var(--color-teal-700)]/90 [--switch-bg:var(--color-teal-600)] dark:[--switch-bg-ring:transparent]",
17081
- "[--switch:white] [--switch-ring:var(--color-teal-700)]/90 [--switch-shadow:var(--color-teal-900)]/20"
17082
- ],
17083
- cyan: [
17084
- "[--switch-bg-ring:var(--color-cyan-400)]/80 [--switch-bg:var(--color-cyan-300)] dark:[--switch-bg-ring:transparent]",
17085
- "[--switch-ring:transparent] [--switch-shadow:transparent] [--switch:var(--color-cyan-950)]"
17086
- ],
17087
- sky: [
17088
- "[--switch-bg-ring:var(--color-sky-600)]/80 [--switch-bg:var(--color-sky-500)] dark:[--switch-bg-ring:transparent]",
17089
- "[--switch:white] [--switch-ring:var(--color-sky-600)]/80 [--switch-shadow:var(--color-sky-900)]/20"
17090
- ],
17091
- blue: [
17092
- "[--switch-bg-ring:var(--color-blue-700)]/90 [--switch-bg:var(--color-blue-600)] dark:[--switch-bg-ring:transparent]",
17093
- "[--switch:white] [--switch-ring:var(--color-blue-700)]/90 [--switch-shadow:var(--color-blue-900)]/20"
17094
- ],
17095
- indigo: [
17096
- "[--switch-bg-ring:var(--color-indigo-600)]/90 [--switch-bg:var(--color-indigo-500)] dark:[--switch-bg-ring:transparent]",
17097
- "[--switch:white] [--switch-ring:var(--color-indigo-600)]/90 [--switch-shadow:var(--color-indigo-900)]/20"
17098
- ],
17099
- violet: [
17100
- "[--switch-bg-ring:var(--color-violet-600)]/90 [--switch-bg:var(--color-violet-500)] dark:[--switch-bg-ring:transparent]",
17101
- "[--switch:white] [--switch-ring:var(--color-violet-600)]/90 [--switch-shadow:var(--color-violet-900)]/20"
17102
- ],
17103
- purple: [
17104
- "[--switch-bg-ring:var(--color-purple-600)]/90 [--switch-bg:var(--color-purple-500)] dark:[--switch-bg-ring:transparent]",
17105
- "[--switch:white] [--switch-ring:var(--color-purple-600)]/90 [--switch-shadow:var(--color-purple-900)]/20"
17276
+ primary: [
17277
+ "[--switch-bg-ring:var(--color-primary-800)]/90 [--switch-bg:var(--color-primary-800)] dark:[--switch-bg-ring:transparent]",
17278
+ "[--switch:white] [--switch-ring:var(--color-primary-800)]/90 [--switch-shadow:var(--color-primary-900)]/20"
17106
17279
  ],
17107
- fuchsia: [
17108
- "[--switch-bg-ring:var(--color-fuchsia-600)]/90 [--switch-bg:var(--color-fuchsia-500)] dark:[--switch-bg-ring:transparent]",
17109
- "[--switch:white] [--switch-ring:var(--color-fuchsia-600)]/90 [--switch-shadow:var(--color-fuchsia-900)]/20"
17280
+ secondary: [
17281
+ "[--switch-bg-ring:var(--color-primary-200)]/80 [--switch-bg:var(--color-primary-200)] dark:[--switch-bg-ring:transparent]",
17282
+ "[--switch-ring:transparent] [--switch-shadow:transparent] [--switch:var(--color-primary-950)]"
17110
17283
  ],
17111
- pink: [
17112
- "[--switch-bg-ring:var(--color-pink-600)]/90 [--switch-bg:var(--color-pink-500)] dark:[--switch-bg-ring:transparent]",
17113
- "[--switch:white] [--switch-ring:var(--color-pink-600)]/90 [--switch-shadow:var(--color-pink-900)]/20"
17284
+ tertiary: [
17285
+ "[--switch-bg-ring:var(--color-primary-600)]/80 [--switch-bg:var(--color-primary-600)] dark:[--switch-bg-ring:transparent]",
17286
+ "[--switch:white] [--switch-ring:var(--color-primary-600)]/80 [--switch-shadow:var(--color-primary-900)]/20"
17114
17287
  ],
17115
- rose: [
17116
- "[--switch-bg-ring:var(--color-rose-600)]/90 [--switch-bg:var(--color-rose-500)] dark:[--switch-bg-ring:transparent]",
17117
- "[--switch:white] [--switch-ring:var(--color-rose-600)]/90 [--switch-shadow:var(--color-rose-900)]/20"
17288
+ accent: [
17289
+ "[--switch-bg-ring:var(--color-accent-700)]/90 [--switch-bg:var(--color-accent-600)] dark:[--switch-bg-ring:transparent]",
17290
+ "[--switch:white] [--switch-ring:var(--color-accent-700)]/90 [--switch-shadow:var(--color-accent-900)]/20"
17118
17291
  ]
17119
17292
  };
17120
17293
  function Switch2({
17121
- color: color2 = "dark/zinc",
17294
+ color: color2 = "dark/grey",
17122
17295
  className,
17123
17296
  ...props
17124
17297
  }) {
@@ -17136,7 +17309,7 @@ function Switch2({
17136
17309
  // Outline and background color in forced-colors mode so switch is still visible
17137
17310
  "forced-colors:outline forced-colors:[--switch-bg:Highlight] dark:forced-colors:[--switch-bg:Highlight]",
17138
17311
  // Unchecked
17139
- "bg-zinc-200 ring-1 ring-black/5 ring-inset dark:bg-white/5 dark:ring-white/15",
17312
+ "bg-grey-200 ring-1 ring-black/5 ring-inset dark:bg-white/5 dark:ring-white/15",
17140
17313
  // Checked
17141
17314
  "data-checked:bg-(--switch-bg) data-checked:ring-(--switch-bg-ring) dark:data-checked:bg-(--switch-bg) dark:data-checked:ring-(--switch-bg-ring)",
17142
17315
  // Focus
@@ -17145,7 +17318,7 @@ function Switch2({
17145
17318
  "data-hover:ring-black/15 data-hover:data-checked:ring-(--switch-bg-ring)",
17146
17319
  "dark:data-hover:ring-white/25 dark:data-hover:data-checked:ring-(--switch-bg-ring)",
17147
17320
  // Disabled
17148
- "data-disabled:bg-zinc-200 data-disabled:opacity-50 data-disabled:data-checked:bg-zinc-200 data-disabled:data-checked:ring-black/5",
17321
+ "data-disabled:bg-grey-200 data-disabled:data-checked:bg-grey-200 data-disabled:opacity-50 data-disabled:data-checked:ring-black/5",
17149
17322
  "dark:data-disabled:bg-white/15 dark:data-disabled:data-checked:bg-white/15 dark:data-disabled:data-checked:ring-white/15",
17150
17323
  // Color specific styles
17151
17324
  colors2[color2]
@@ -17502,7 +17675,7 @@ function Textarea({ className, ...props }) {
17502
17675
  "data-slot": "textarea",
17503
17676
  className: cn(
17504
17677
  // Base styles
17505
- "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",
17678
+ "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",
17506
17679
  // Placeholder styles
17507
17680
  "placeholder:text-grey-500",
17508
17681
  // Focus styles
@@ -17534,7 +17707,25 @@ function ViewToggle({ viewMode, setViewMode }) {
17534
17707
  )
17535
17708
  ] });
17536
17709
  }
17537
- function ThemeColorPalette() {
17710
+ function ThemeColorPaletteLoading() {
17711
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "animate-pulse space-y-8", children: [
17712
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col items-center justify-between gap-4 sm:flex-row", children: [
17713
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col items-center gap-4 sm:flex-row", children: [
17714
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-grey-200 h-10 w-32 rounded" }),
17715
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-grey-200 h-10 w-24 rounded" })
17716
+ ] }),
17717
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-grey-200 h-10 w-28 rounded" })
17718
+ ] }),
17719
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-12", children: [1, 2, 3].map((i) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
17720
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-grey-200 h-8 w-24 rounded" }),
17721
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-2 gap-4 sm:grid-cols-4", children: [1, 2, 3, 4].map((j) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-grey-200 h-16 rounded" }, j)) }),
17722
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-grey-200 h-12 w-full rounded" }),
17723
+ /* @__PURE__ */ jsxRuntime.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__ */ jsxRuntime.jsx("div", { className: "bg-grey-200 h-24 rounded" }, k)) })
17724
+ ] }, i)) })
17725
+ ] });
17726
+ }
17727
+ function ThemeColorPaletteContent() {
17728
+ const searchParams = navigation.useSearchParams();
17538
17729
  const baseColors = {
17539
17730
  brand,
17540
17731
  aboriginal
@@ -17546,6 +17737,44 @@ function ThemeColorPalette() {
17546
17737
  const [accentColor, setAccentColor] = React16.useState("red");
17547
17738
  const [greyColor, setGreyColor] = React16.useState("grey");
17548
17739
  const [sheetOpen, setSheetOpen] = React16.useState(false);
17740
+ const [isInitialized, setIsInitialized] = React16.useState(false);
17741
+ React16.useEffect(() => {
17742
+ const themeParam = searchParams.get("theme");
17743
+ const primaryParam = searchParams.get("primary");
17744
+ const accentParam = searchParams.get("accent");
17745
+ let newCategory = themeCategory;
17746
+ let newPrimary = primaryColor;
17747
+ let newAccent = accentColor;
17748
+ if (themeParam && (themeParam === "brand" || themeParam === "aboriginal")) {
17749
+ newCategory = themeParam;
17750
+ setThemeCategory(themeParam);
17751
+ }
17752
+ const availableColors = Object.keys(colorThemes[newCategory]);
17753
+ if (primaryParam && availableColors.includes(primaryParam)) {
17754
+ newPrimary = primaryParam;
17755
+ setPrimaryColor(primaryParam);
17756
+ } else if (!availableColors.includes(newPrimary)) {
17757
+ newPrimary = availableColors[0];
17758
+ setPrimaryColor(newPrimary);
17759
+ }
17760
+ if (accentParam && availableColors.includes(accentParam) && accentParam !== newPrimary) {
17761
+ newAccent = accentParam;
17762
+ setAccentColor(accentParam);
17763
+ } else {
17764
+ const newAccentColor = availableColors.find((color2) => color2 !== newPrimary);
17765
+ if (newAccentColor) {
17766
+ newAccent = newAccentColor;
17767
+ setAccentColor(newAccent);
17768
+ }
17769
+ }
17770
+ const neutralKey = Object.keys(colorThemes[newCategory]).find(
17771
+ (k) => k.toLowerCase().includes("grey")
17772
+ );
17773
+ if (neutralKey) {
17774
+ setGreyColor(neutralKey);
17775
+ }
17776
+ setIsInitialized(true);
17777
+ }, [searchParams, themeCategory, primaryColor, accentColor]);
17549
17778
  const filteredColorThemes = React16.useMemo(() => {
17550
17779
  const filtered = {};
17551
17780
  for (const category of Object.keys(colorThemes)) {
@@ -17562,6 +17791,7 @@ function ThemeColorPalette() {
17562
17791
  return allColors.filter((color2) => color2 !== primaryColor);
17563
17792
  }, [filteredColorThemes, themeCategory, primaryColor]);
17564
17793
  React16.useEffect(() => {
17794
+ if (!isInitialized) return;
17565
17795
  const neutralKey = Object.keys(colorThemes[themeCategory]).find((k) => k.toLowerCase().includes("grey")) ?? "";
17566
17796
  if (neutralKey && neutralKey !== greyColor) {
17567
17797
  setGreyColor(neutralKey);
@@ -17580,7 +17810,7 @@ function ThemeColorPalette() {
17580
17810
  setAccentColor(newAccentColor);
17581
17811
  }
17582
17812
  }
17583
- }, [themeCategory, primaryColor, accentColor, greyColor]);
17813
+ }, [themeCategory, primaryColor, accentColor, greyColor, isInitialized]);
17584
17814
  const currentColorPalette = React16.useMemo(() => {
17585
17815
  if (!colorThemes[themeCategory] || !colorThemes[themeCategory][primaryColor] || !colorThemes[themeCategory][accentColor]) {
17586
17816
  return [
@@ -17673,6 +17903,9 @@ function ThemeColorPalette() {
17673
17903
  }) })
17674
17904
  ] });
17675
17905
  }
17906
+ function ThemeColorPalette() {
17907
+ return /* @__PURE__ */ jsxRuntime.jsx(React16.Suspense, { fallback: /* @__PURE__ */ jsxRuntime.jsx(ThemeColorPaletteLoading, {}), children: /* @__PURE__ */ jsxRuntime.jsx(ThemeColorPaletteContent, {}) });
17908
+ }
17676
17909
  function ThemeProvider({ children, ...props }) {
17677
17910
  return /* @__PURE__ */ jsxRuntime.jsx(nextThemes.ThemeProvider, { ...props, children });
17678
17911
  }
@@ -21514,24 +21747,24 @@ var progressBarVariants = tailwindVariants.tv({
21514
21747
  variants: {
21515
21748
  variant: {
21516
21749
  default: {
21517
- background: "bg-blue-200 dark:bg-blue-500/30",
21518
- bar: "bg-blue-500 dark:bg-blue-500"
21750
+ background: "bg-primary-200 dark:bg-primary-500/30",
21751
+ bar: "bg-primary-500 dark:bg-primary-500"
21519
21752
  },
21520
21753
  neutral: {
21521
- background: "bg-gray-200 dark:bg-gray-500/40",
21522
- bar: "bg-gray-500 dark:bg-gray-500"
21754
+ background: "bg-grey-200 dark:bg-grey-500/40",
21755
+ bar: "bg-grey-500 dark:bg-grey-500"
21523
21756
  },
21524
21757
  warning: {
21525
- background: "bg-yellow-200 dark:bg-yellow-500/30",
21526
- bar: "bg-yellow-500 dark:bg-yellow-500"
21758
+ background: "bg-warning-200 dark:bg-warning-500/30",
21759
+ bar: "bg-warning-500 dark:bg-warning-500"
21527
21760
  },
21528
- error: {
21529
- background: "bg-red-200 dark:bg-red-500/30",
21530
- bar: "bg-red-500 dark:bg-red-500"
21761
+ danger: {
21762
+ background: "bg-danger-200 dark:bg-danger-500/30",
21763
+ bar: "bg-danger-500 dark:bg-danger-500"
21531
21764
  },
21532
21765
  success: {
21533
- background: "bg-emerald-200 dark:bg-emerald-500/30",
21534
- bar: "bg-emerald-500 dark:bg-emerald-500"
21766
+ background: "bg-success-200 dark:bg-success-500/30",
21767
+ bar: "bg-success-500 dark:bg-success-500"
21535
21768
  }
21536
21769
  }
21537
21770
  },
@@ -21583,7 +21816,7 @@ var ProgressBar = React16__namespace.default.forwardRef(
21583
21816
  // base
21584
21817
  "ml-2 text-sm leading-none font-medium whitespace-nowrap",
21585
21818
  // text color
21586
- "text-gray-900 dark:text-gray-50"
21819
+ "text-grey-900 dark:text-grey-50"
21587
21820
  ),
21588
21821
  children: label
21589
21822
  }
@@ -21602,24 +21835,24 @@ var progressCircleVariants = tailwindVariants.tv({
21602
21835
  variants: {
21603
21836
  variant: {
21604
21837
  default: {
21605
- background: "stroke-blue-200 dark:stroke-blue-500/30",
21606
- circle: "stroke-blue-500 dark:stroke-blue-500"
21838
+ background: "stroke-primary-200 dark:stroke-primary-500/30",
21839
+ circle: "stroke-primary-500 dark:stroke-primary-500"
21607
21840
  },
21608
21841
  neutral: {
21609
- background: "stroke-gray-200 dark:stroke-gray-500/40",
21610
- circle: "stroke-gray-500 dark:stroke-gray-500"
21842
+ background: "stroke-grey-200 dark:stroke-grey-500/40",
21843
+ circle: "stroke-grey-500 dark:stroke-grey-500"
21611
21844
  },
21612
21845
  warning: {
21613
- background: "stroke-yellow-200 dark:stroke-yellow-500/30",
21614
- circle: "stroke-yellow-500 dark:stroke-yellow-500"
21846
+ background: "stroke-warning-200 dark:stroke-warning-500/30",
21847
+ circle: "stroke-warning-500 dark:stroke-warning-500"
21615
21848
  },
21616
- error: {
21617
- background: "stroke-red-200 dark:stroke-red-500/30",
21618
- circle: "stroke-red-500 dark:stroke-red-500"
21849
+ danger: {
21850
+ background: "stroke-danger-200 dark:stroke-danger-500/30",
21851
+ circle: "stroke-danger-500 dark:stroke-danger-500"
21619
21852
  },
21620
21853
  success: {
21621
- background: "stroke-emerald-200 dark:stroke-emerald-500/30",
21622
- circle: "stroke-emerald-500 dark:stroke-emerald-500"
21854
+ background: "stroke-success-200 dark:stroke-success-500/30",
21855
+ circle: "stroke-success-500 dark:stroke-success-500"
21623
21856
  }
21624
21857
  }
21625
21858
  },
@@ -22941,6 +23174,7 @@ exports.AlertDialogTrigger = AlertDialogTrigger;
22941
23174
  exports.AlertTitle = AlertTitle;
22942
23175
  exports.AreaChart = AreaChart;
22943
23176
  exports.AspectRatio = AspectRatio;
23177
+ exports.AuthLayout = AuthLayout;
22944
23178
  exports.AvailableChartColors = AvailableChartColors;
22945
23179
  exports.Avatar = Avatar;
22946
23180
  exports.AvatarFallback = AvatarFallback;