@oxide/design-system 1.7.6--canary.528a130.0 → 1.7.6--canary.58fcbf4.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.
|
@@ -9,6 +9,11 @@ import * as _asciidoctor_core from '@asciidoctor/core';
|
|
|
9
9
|
import { Registry, Document } from '@asciidoctor/core';
|
|
10
10
|
|
|
11
11
|
declare const highlight: (block: Block) => Promise<Block>;
|
|
12
|
+
declare const attrs: {
|
|
13
|
+
sectlinks: string;
|
|
14
|
+
stem: string;
|
|
15
|
+
stylesheet: boolean;
|
|
16
|
+
};
|
|
12
17
|
declare const loadAsciidoctor: ({ extensions, }: {
|
|
13
18
|
extensions?: ((this: Registry) => void)[] | undefined;
|
|
14
19
|
}) => _asciidoctor_core.Asciidoctor;
|
|
@@ -111,4 +116,4 @@ interface ListboxProps<Value extends string = string> {
|
|
|
111
116
|
}
|
|
112
117
|
declare const Listbox: <Value extends string = string>({ name, selected, items, placeholder, className, onChange, hasError, disabled, isLoading, ...props }: ListboxProps<Value>) => react_jsx_runtime.JSX.Element;
|
|
113
118
|
|
|
114
|
-
export { AsciiDocBlocks, Badge, BadgeColor, BadgeProps, BadgeVariant, Button, ButtonProps, ButtonSize, Checkbox, CheckboxProps, Listbox, ListboxItem, ListboxProps, Spinner, SpinnerLoader, SpinnerSize, SpinnerVariant, Tabs, TabsRootProps, Variant, badgeColors, buttonSizes, buttonStyle, handleDocument, highlight, loadAsciidoctor, spinnerSizes, spinnerVariants, variants };
|
|
119
|
+
export { AsciiDocBlocks, Badge, BadgeColor, BadgeProps, BadgeVariant, Button, ButtonProps, ButtonSize, Checkbox, CheckboxProps, Listbox, ListboxItem, ListboxProps, Spinner, SpinnerLoader, SpinnerSize, SpinnerVariant, Tabs, TabsRootProps, Variant, attrs, badgeColors, buttonSizes, buttonStyle, handleDocument, highlight, loadAsciidoctor, spinnerSizes, spinnerVariants, variants };
|
package/components/dist/index.js
CHANGED
|
@@ -47,20 +47,20 @@ var classed = {
|
|
|
47
47
|
// components/src/asciidoc/Admonition.tsx
|
|
48
48
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
49
49
|
var Admonition = ({ node }) => {
|
|
50
|
-
const
|
|
50
|
+
const attrs2 = node.attributes;
|
|
51
51
|
let icon;
|
|
52
|
-
if (
|
|
52
|
+
if (attrs2.name === "caution") {
|
|
53
53
|
icon = /* @__PURE__ */ jsx(Error12, {});
|
|
54
|
-
} else if (
|
|
54
|
+
} else if (attrs2.name === "warning") {
|
|
55
55
|
icon = /* @__PURE__ */ jsx(Warning12, {});
|
|
56
56
|
} else {
|
|
57
57
|
icon = /* @__PURE__ */ jsx(Error12, { className: "rotate-180" });
|
|
58
58
|
}
|
|
59
|
-
return /* @__PURE__ */ jsxs("div", { className: `admonitionblock ${
|
|
59
|
+
return /* @__PURE__ */ jsxs("div", { className: `admonitionblock ${attrs2.name}`, children: [
|
|
60
60
|
/* @__PURE__ */ jsx("div", { className: "admonition-icon", children: icon }),
|
|
61
61
|
/* @__PURE__ */ jsxs("div", { className: "admonition-content content", children: [
|
|
62
62
|
/* @__PURE__ */ jsx(Title, { text: node.title }),
|
|
63
|
-
/* @__PURE__ */ jsx("div", { children: titleCase(
|
|
63
|
+
/* @__PURE__ */ jsx("div", { children: titleCase(attrs2.name.toString()) }),
|
|
64
64
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
65
65
|
/* @__PURE__ */ jsx(Title, { text: node.title }),
|
|
66
66
|
node.content && parse(node.content),
|
|
@@ -1748,6 +1748,11 @@ var highlight = async (block) => {
|
|
|
1748
1748
|
}
|
|
1749
1749
|
return block;
|
|
1750
1750
|
};
|
|
1751
|
+
var attrs = {
|
|
1752
|
+
sectlinks: "true",
|
|
1753
|
+
stem: "latexmath",
|
|
1754
|
+
stylesheet: false
|
|
1755
|
+
};
|
|
1751
1756
|
var loadAsciidoctor = ({
|
|
1752
1757
|
extensions = []
|
|
1753
1758
|
}) => {
|
|
@@ -2135,6 +2140,7 @@ export {
|
|
|
2135
2140
|
Spinner,
|
|
2136
2141
|
SpinnerLoader,
|
|
2137
2142
|
Tabs,
|
|
2143
|
+
attrs,
|
|
2138
2144
|
badgeColors,
|
|
2139
2145
|
buttonSizes,
|
|
2140
2146
|
buttonStyle,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/asciidoc/index.tsx","../src/asciidoc/Admonition.tsx","../src/utils.ts","../../icons/react/Link16Icon.tsx","../../icons/react/Checkmark12Icon.tsx","../../icons/react/SelectArrows6Icon.tsx","../src/asciidoc/Section.tsx","../src/asciidoc/Table.tsx","../src/asciidoc/util.ts","../src/asciidoc/langs/oxql.tmLanguage.json","../src/asciidoc/oxide-dark.json","../src/ui/badge/Badge.tsx","../src/ui/button/Button.tsx","../src/ui/spinner/Spinner.tsx","../src/ui/tabs/Tabs.tsx","../src/ui/checkbox/Checkbox.tsx","../src/ui/listbox/Listbox.tsx"],"sourcesContent":["/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport { Content, type DocumentBlock } from '@oxide/react-asciidoc'\n\nimport Admonition from './Admonition'\nimport Section from './Section'\nimport Table from './Table'\nimport { handleDocument, highlight, loadAsciidoctor } from './util'\n\nconst MinimalDocument = ({ document }: { document: DocumentBlock }) => (\n <div id=\"content\" className=\"asciidoc-body w-full\">\n <Content blocks={document.blocks} />\n </div>\n)\n\nconst AsciiDocBlocks = {\n Admonition,\n Table,\n Section,\n MinimalDocument,\n}\n\nexport { AsciiDocBlocks, handleDocument, highlight, loadAsciidoctor }\n","/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport { type AdmonitionBlock, Content, Title, parse } from '@oxide/react-asciidoc'\n\nimport { titleCase } from '../utils'\n\nconst Admonition = ({ node }: { node: AdmonitionBlock }) => {\n const attrs = node.attributes\n\n let icon\n if (attrs.name === 'caution') {\n icon = <Error12 />\n } else if (attrs.name === 'warning') {\n icon = <Warning12 />\n } else {\n icon = <Error12 className=\"rotate-180\" />\n }\n\n return (\n <div className={`admonitionblock ${attrs.name}`}>\n <div className=\"admonition-icon\">{icon}</div>\n <div className=\"admonition-content content\">\n <Title text={node.title} />\n <div>{titleCase(attrs.name.toString())}</div>\n <div>\n <Title text={node.title} />\n {node.content && parse(node.content)}\n <Content blocks={node.blocks} />\n </div>\n </div>\n </div>\n )\n}\n\nconst Error12 = ({ className }: { className?: string }) => (\n <svg\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 12 12\"\n xmlns=\"http://www.w3.org/2000/svg\"\n className={className}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M6 12A6 6 0 1 0 6 0a6 6 0 0 0 0 12Zm.083-9c.368 0 .667.299.667.667v2.666A.667.667 0 0 1 6.083 7h-.166a.667.667 0 0 1-.667-.667V3.667c0-.368.299-.667.667-.667h.166Zm0 5c.368 0 .667.299.667.667v.166a.667.667 0 0 1-.667.667h-.166a.667.667 0 0 1-.667-.667v-.166c0-.368.299-.667.667-.667h.166Z\"\n fill=\"currentColor\"\n />\n </svg>\n)\n\nconst Warning12 = ({ className }: { className?: string }) => (\n <svg\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 12 12\"\n xmlns=\"http://www.w3.org/2000/svg\"\n className={className}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M6 12A6 6 0 1 0 6 0a6 6 0 0 0 0 12Zm.083-9c.368 0 .667.299.667.667v2.666A.667.667 0 0 1 6.083 7h-.166a.667.667 0 0 1-.667-.667V3.667c0-.368.299-.667.667-.667h.166Zm0 5c.368 0 .667.299.667.667v.166a.667.667 0 0 1-.667.667h-.166a.667.667 0 0 1-.667-.667v-.166c0-.368.299-.667.667-.667h.166Z\"\n fill=\"currentColor\"\n />\n </svg>\n)\n\nexport default Admonition\n","/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport cn from 'classnames'\nimport { createElement } from 'react'\n\nconst titleCase = (text: string): string => {\n return text.replace(\n /\\w\\S*/g,\n (text) => text.charAt(0).toUpperCase() + text.substring(1).toLowerCase(),\n )\n}\n\n// all the cuteness of tw.span`text-secondary uppercase` with zero magic\n\nconst make =\n <T extends keyof JSX.IntrinsicElements>(tag: T) =>\n // only one argument here means string interpolations are not allowed\n (strings: TemplateStringsArray) => {\n const Comp = ({ className, children, ...rest }: JSX.IntrinsicElements[T]) =>\n createElement(tag, { className: cn(strings[0], className), ...rest }, children)\n Comp.displayName = `classed.${tag}`\n return Comp\n }\n\n// JSX.IntrinsicElements[T] ensures same props as the real DOM element. For example,\n// classed.span doesn't allow a type attr but classed.input does.\n\nconst classed = {\n button: make('button'),\n div: make('div'),\n h1: make('h1'),\n h2: make('h2'),\n h3: make('h3'),\n h4: make('h4'),\n hr: make('hr'),\n header: make('header'),\n input: make('input'),\n label: make('label'),\n li: make('li'),\n main: make('main'),\n ol: make('ol'),\n p: make('p'),\n span: make('span'),\n table: make('table'),\n tbody: make('tbody'),\n td: make('td'),\n th: make('th'),\n tr: make('tr'),\n} as const\n\n// result: classed.button`text-secondary uppercase` returns a component with those classes\n\nexport { titleCase, classed }\n","/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport { SVGProps } from 'react'\n\ninterface SVGRProps {\n title?: string\n titleId?: string\n}\nconst Link16Icon = ({ title, titleId, ...props }: SVGProps<SVGSVGElement> & SVGRProps) => (\n <svg\n width={16}\n height={16}\n viewBox=\"0 0 16 16\"\n xmlns=\"http://www.w3.org/2000/svg\"\n role=\"img\"\n aria-labelledby={titleId}\n {...props}\n >\n {title ? <title id={titleId}>{title}</title> : null}\n <g fill=\"currentColor\">\n <path d=\"m6.586 12.243 1.59-1.591a.75.75 0 0 1 1.061 0l.354.353a.75.75 0 0 1 0 1.06L8 13.658A4 4 0 0 1 2.343 8l1.591-1.591a.75.75 0 0 1 1.06 0l.354.354a.75.75 0 0 1 0 1.06l-1.59 1.591a2 2 0 1 0 2.828 2.829ZM12.066 9.591a.75.75 0 0 1-1.06 0l-.354-.354a.75.75 0 0 1 0-1.06l1.59-1.591a2 2 0 1 0-2.828-2.829l-1.59 1.591a.75.75 0 0 1-1.061 0l-.354-.353a.75.75 0 0 1 0-1.06L8 2.342A4 4 0 0 1 13.657 8l-1.591 1.591Z\" />\n <path d=\"M9.945 5.702a.75.75 0 0 0-1.061 0L5.702 8.884a.75.75 0 0 0 0 1.06l.353.354a.75.75 0 0 0 1.061 0l3.182-3.182a.75.75 0 0 0 0-1.06l-.353-.354Z\" />\n </g>\n </svg>\n)\nexport default Link16Icon\n","/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport { SVGProps } from 'react'\n\ninterface SVGRProps {\n title?: string\n titleId?: string\n}\nconst Checkmark12Icon = ({\n title,\n titleId,\n ...props\n}: SVGProps<SVGSVGElement> & SVGRProps) => (\n <svg\n width={12}\n height={12}\n viewBox=\"0 0 12 12\"\n xmlns=\"http://www.w3.org/2000/svg\"\n role=\"img\"\n aria-labelledby={titleId}\n {...props}\n >\n {title ? <title id={titleId}>{title}</title> : null}\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M10.492 2.651c.28.242.31.665.067.944L5.447 9.463a.667.667 0 0 1-.974.035L1.475 6.516a.667.667 0 0 1 0-.946l.237-.235a.667.667 0 0 1 .94 0l2.24 2.226L9.3 2.501a.667.667 0 0 1 .938-.068l.253.218Z\"\n fill=\"currentColor\"\n />\n </svg>\n)\nexport default Checkmark12Icon\n","/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport { SVGProps } from 'react'\n\ninterface SVGRProps {\n title?: string\n titleId?: string\n}\nconst SelectArrows6Icon = ({\n title,\n titleId,\n ...props\n}: SVGProps<SVGSVGElement> & SVGRProps) => (\n <svg\n width={6}\n height={14}\n viewBox=\"0 0 6 14\"\n xmlns=\"http://www.w3.org/2000/svg\"\n role=\"img\"\n aria-labelledby={titleId}\n {...props}\n >\n {title ? <title id={titleId}>{title}</title> : null}\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M3.322.536a.375.375 0 0 0-.644 0L.341 4.432C.19 4.682.37 5 .662 5h4.676a.375.375 0 0 0 .321-.568L3.322.536Zm-.644 12.928a.375.375 0 0 0 .644 0l2.337-3.896A.375.375 0 0 0 5.338 9H.662a.375.375 0 0 0-.321.568l2.337 3.896Z\"\n fill=\"currentColor\"\n />\n </svg>\n)\nexport default SelectArrows6Icon\n","/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport { Link16Icon } from '@/icons/react'\nimport { Content, type SectionBlock, parse } from '@oxide/react-asciidoc'\nimport cn from 'classnames'\nimport { createElement } from 'react'\n\n// We need to remove anchors from the section title (and table of contents) because having\n// an anchor within an anchor causes a client/server render mismatch\nexport const stripAnchors = (str: string) => str.replace(/<a[^>]*>(.*?)<\\/a>/gi, '$1')\n\nconst Section = ({ node }: { node: SectionBlock }) => {\n const level = node.level\n let title: JSX.Element | string = ''\n\n let sectNum = node.num\n sectNum = sectNum === '.' ? '' : sectNum\n\n title = (\n <>\n <span className=\"anchor\" id={node.id || ''} aria-hidden=\"true\" />\n <a className=\"link group\" href={`#${node.id}`}>\n {parse(stripAnchors(node.title))}\n <Link16Icon className=\"ml-2 hidden text-accent-secondary group-hover:inline-block\" />\n </a>\n </>\n )\n\n if (level === 0) {\n return (\n <>\n <h1 className={cn('sect0', node.role)} data-sectnum={sectNum}>\n {title}\n </h1>\n <Content blocks={node.blocks} />\n </>\n )\n } else {\n return (\n <div className={cn(`sect${level}`, node.role)}>\n {createElement(`h${level + 1}`, { 'data-sectnum': sectNum }, title)}\n <div className=\"sectionbody\">\n <Content blocks={node.blocks} />\n </div>\n </div>\n )\n }\n}\n\nexport default Section\n","/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport { Table as InnerTable, type TableBlock } from '@oxide/react-asciidoc'\n\nconst Table = ({ node }: { node: TableBlock }) => (\n <div className=\"table-wrapper\">\n <InnerTable node={node} />\n </div>\n)\n\nexport default Table\n","/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport asciidoctor, {\n type Block as AdBlock,\n type Document,\n type Html5Converter,\n type Inline,\n type Registry,\n} from '@asciidoctor/core'\nimport {\n Block,\n LiteralBlock,\n prepareDocument,\n processDocument,\n} from '@oxide/react-asciidoc'\nimport {\n type BundledLanguage,\n type BundledTheme,\n type HighlighterGeneric,\n type LanguageInput,\n bundledLanguages,\n getHighlighter,\n} from 'shiki'\n\nimport oxqlLang from './langs/oxql.tmLanguage.json'\nimport theme from './oxide-dark.json'\n\nlet highlighter: HighlighterGeneric<BundledLanguage, BundledTheme> | null = null\nconst customLanguages = ['oxql']\nconst supportedLanguages = [...Object.keys(bundledLanguages), ...customLanguages]\n\nasync function getOrCreateHighlighter() {\n if (!highlighter) {\n const langs: LanguageInput[] = []\n\n langs.push({\n ...oxqlLang,\n })\n\n highlighter = await getHighlighter({\n themes: [theme],\n langs: langs,\n })\n }\n\n return highlighter\n}\n\nconst highlight = async (block: Block): Promise<Block> => {\n if (block.type === 'listing') {\n const literalBlock = block as LiteralBlock\n\n if (!literalBlock.content) {\n return block\n }\n\n // Replace callouts with placeholders before highlighting\n // without this they are decoded and are no displayed as HTML\n const calloutRegex = /<i class=\"conum\" data-value=\"\\d+\"><\\/i>/g\n const callouts: string[] = []\n const placeholderContent = literalBlock.content.replace(calloutRegex, (match) => {\n callouts.push(match)\n return `__CALLOUT_PLACEHOLDER_${callouts.length - 1}__`\n })\n\n // If no language specified, we still want to support callouts\n if (!literalBlock.language) {\n return {\n ...block,\n content: placeholderContent.replace(\n /__CALLOUT_PLACEHOLDER_(\\d+)__/g,\n (_, index) => callouts[parseInt(index)],\n ),\n }\n }\n\n let lang = literalBlock.language\n const h = await getOrCreateHighlighter()\n const loadedLanguages = h.getLoadedLanguages()\n\n if (!supportedLanguages.includes(lang)) {\n lang = 'text'\n }\n\n if (!loadedLanguages.includes(lang)) {\n await h.loadLanguage(lang as BundledLanguage)\n }\n\n const highlightedContent = h.codeToHtml(placeholderContent, {\n lang,\n theme: theme,\n structure: 'inline',\n })\n\n // Restore callouts in the highlighted content\n const restoredContent = highlightedContent.replace(\n /__CALLOUT_PLACEHOLDER_(\\d+)__/g,\n (_, index) => callouts[parseInt(index)],\n )\n\n return {\n ...block,\n content: restoredContent,\n }\n }\n return block\n}\n\nconst attrs = {\n sectlinks: 'true',\n stem: 'latexmath',\n stylesheet: false,\n}\n\nconst loadAsciidoctor = ({\n extensions = [],\n}: {\n extensions?: ((this: Registry) => void)[]\n}) => {\n const ad = asciidoctor()\n\n /*\n For styling inline elements\n we cannot do this through the AsciiDoc tree\n */\n class InlineConverter {\n baseConverter: Html5Converter\n\n constructor() {\n this.baseConverter = new ad.Html5Converter()\n }\n\n convert(node: AdBlock, transform: string) {\n switch (node.getNodeName()) {\n case 'inline_callout':\n return convertInlineCallout(node as unknown as Inline) // We know this is always inline\n default:\n break\n }\n\n return this.baseConverter.convert(node, transform)\n }\n }\n\n extensions.forEach((extension) => ad.Extensions.register(extension))\n ad.ConverterFactory.register(new InlineConverter(), ['html5'])\n\n return ad\n}\n\n// These are a little nicer to style than the default\nfunction convertInlineCallout(node: Inline): string {\n return `<i class=\"conum\" data-value=\"${node.getText()}\"></i>`\n}\n\nconst handleDocument = async (document: Document) => {\n const doc = prepareDocument(document)\n return await processDocument(doc, highlight)\n}\n\nexport { handleDocument, highlight, loadAsciidoctor, attrs }\n","{\n \"$schema\": \"https://raw.githubusercontent.com/martinring/tmlanguage/master/tmlanguage.json\",\n \"name\": \"oxql\",\n \"repository\": {\n \"keywords\": {\n \"patterns\": [\n {\n \"name\": \"keyword.control.oxql\",\n \"match\": \"\\\\b(if|while|for|return)\\\\b\"\n }\n ]\n },\n \"strings\": {\n \"name\": \"string.quoted.double.oxql\",\n \"begin\": \"\\\"\",\n \"end\": \"\\\"\",\n \"patterns\": [\n {\n \"name\": \"constant.character.escape.oxql\",\n \"match\": \"\\\\\\\\.\"\n }\n ]\n }\n },\n \"scopeName\": \"source.oxql\",\n \"patterns\": [\n {\n \"name\": \"keyword.control.oxql\",\n \"match\": \"\\\\b(get|join|align|filter|group_by)\\\\b\"\n },\n {\n \"name\": \"string.quoted.double.oxql\",\n \"begin\": \"\\\"\",\n \"end\": \"\\\"\",\n \"patterns\": [\n {\n \"name\": \"constant.character.escape.oxql\",\n \"match\": \"\\\\\\\\.\"\n }\n ]\n },\n {\n \"name\": \"constant.numeric.oxql\",\n \"match\": \"\\\\b\\\\d+[smhdw]\\\\b\"\n },\n {\n \"name\": \"constant.numeric.datetime.oxql\",\n \"match\": \"@\\\\d{4}-\\\\d{2}-\\\\d{2}T\\\\d{2}:\\\\d{2}:\\\\d{2}\"\n },\n {\n \"name\": \"constant.numeric.function.oxql\",\n \"match\": \"@now\\\\(\\\\)\"\n },\n {\n \"name\": \"constant.numeric.oxql\",\n \"match\": \"\\\\b\\\\d+\\\\b\"\n },\n {\n \"name\": \"comment.block.oxql\",\n \"begin\": \"/\\\\*\",\n \"end\": \"\\\\*/\"\n },\n {\n \"name\": \"comment.line.double-slash.oxql\",\n \"match\": \"//.*$\"\n },\n {\n \"name\": \"keyword.operator.oxql\",\n \"match\": \"\\\\|\"\n }\n ]\n}\n","{\n \"name\": \"Oxide Dark\",\n \"colors\": {\n \"editor.background\": \"#080F11\",\n \"editor.foreground\": \"#E7E7E8\"\n },\n \"tokenColors\": [\n {\n \"scope\": [\n \"text\",\n \"source\",\n \"variable.other.readwrite\",\n \"punctuation.definition.variable\"\n ],\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": \"punctuation\",\n \"settings\": {\n \"foreground\": \"#A1A4A5\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": [\"comment\", \"punctuation.definition.comment\"],\n \"settings\": {\n \"foreground\": \"#A1A4A5\"\n }\n },\n {\n \"scope\": [\"string\", \"punctuation.definition.string\"],\n \"settings\": {\n \"foreground\": \"#68D9A7\"\n }\n },\n {\n \"scope\": \"constant.character.escape\",\n \"settings\": {\n \"foreground\": \"#EFB7C2\"\n }\n },\n {\n \"scope\": [\n \"constant.numeric\",\n \"variable.other.constant\",\n \"entity.name.constant\",\n \"constant.language.boolean\",\n \"constant.language.false\",\n \"constant.language.true\",\n \"keyword.other.unit.user-defined\",\n \"keyword.other.unit.suffix.floating-point\"\n ],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\n \"keyword\",\n \"keyword.operator.word\",\n \"keyword.operator.new\",\n \"variable.language.super\",\n \"support.type.primitive\",\n \"storage.type\",\n \"storage.modifier\",\n \"punctuation.definition.keyword\"\n ],\n \"settings\": {\n \"foreground\": \"#C6A5EA\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": \"entity.name.tag.documentation\",\n \"settings\": {\n \"foreground\": \"#C6A5EA\"\n }\n },\n {\n \"scope\": [\n \"keyword.operator\",\n \"punctuation.accessor\",\n \"punctuation.definition.generic\",\n \"meta.function.closure punctuation.section.parameters\",\n \"punctuation.definition.tag\",\n \"punctuation.separator.key-value\"\n ],\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": [\n \"entity.name.function\",\n \"meta.function-call.method\",\n \"support.function\",\n \"support.function.misc\",\n \"variable.function\"\n ],\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": [\n \"entity.name.class\",\n \"entity.other.inherited-class\",\n \"support.class\",\n \"meta.function-call.constructor\",\n \"entity.name.struct\"\n ],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"entity.name.enum\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\"meta.enum variable.other.readwrite\", \"variable.other.enummember\"],\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": \"meta.property.object\",\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": [\"meta.type\", \"meta.type-alias\", \"support.type\", \"entity.name.type\"],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\n \"meta.annotation variable.function\",\n \"meta.annotation variable.annotation.function\",\n \"meta.annotation punctuation.definition.annotation\",\n \"meta.decorator\",\n \"punctuation.decorator\"\n ],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\"variable.parameter\", \"meta.function.parameters\"],\n \"settings\": {\n \"foreground\": \"#F39EAE\"\n }\n },\n {\n \"scope\": [\"constant.language\", \"support.function.builtin\"],\n \"settings\": {\n \"foreground\": \"#F7869B\"\n }\n },\n {\n \"scope\": \"entity.other.attribute-name.documentation\",\n \"settings\": {\n \"foreground\": \"#F7869B\"\n }\n },\n {\n \"scope\": [\"keyword.control.directive\", \"punctuation.definition.directive\"],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"punctuation.definition.typeparameters\",\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": \"entity.name.namespace\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"support.type.property-name.css\",\n \"settings\": {\n \"foreground\": \"#9DAFFA\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": [\n \"variable.language.this\",\n \"variable.language.this punctuation.definition.variable\"\n ],\n \"settings\": {\n \"foreground\": \"#F7869B\"\n }\n },\n {\n \"scope\": \"variable.object.property\",\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": [\"string.template variable\", \"string variable\"],\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": \"keyword.operator.new\",\n \"settings\": {\n \"fontStyle\": \"bold\"\n }\n },\n {\n \"scope\": \"storage.modifier.specifier.extern.cpp\",\n \"settings\": {\n \"foreground\": \"#C6A5EA\"\n }\n },\n {\n \"scope\": [\n \"entity.name.scope-resolution.template.call.cpp\",\n \"entity.name.scope-resolution.parameter.cpp\",\n \"entity.name.scope-resolution.cpp\",\n \"entity.name.scope-resolution.function.definition.cpp\"\n ],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"storage.type.class.doxygen\",\n \"settings\": {\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": [\"storage.modifier.reference.cpp\"],\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": \"meta.interpolation.cs\",\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": \"comment.block.documentation.cs\",\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": [\n \"source.css entity.other.attribute-name.class.css\",\n \"entity.other.attribute-name.parent-selector.css punctuation.definition.entity.css\"\n ],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"punctuation.separator.operator.css\",\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": \"source.css entity.other.attribute-name.pseudo-class\",\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": \"source.css constant.other.unicode-range\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"source.css variable.parameter.url\",\n \"settings\": {\n \"foreground\": \"#88DCB7\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": [\"support.type.vendored.property-name\"],\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": [\n \"source.css meta.property-value variable\",\n \"source.css meta.property-value variable.other.less\",\n \"source.css meta.property-value variable.other.less punctuation.definition.variable.less\",\n \"meta.definition.variable.scss\"\n ],\n \"settings\": {\n \"foreground\": \"#F39EAE\"\n }\n },\n {\n \"scope\": [\n \"source.css meta.property-list variable\",\n \"meta.property-list variable.other.less\",\n \"meta.property-list variable.other.less punctuation.definition.variable.less\"\n ],\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": \"keyword.other.unit.percentage.css\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"source.css meta.attribute-selector\",\n \"settings\": {\n \"foreground\": \"#88DCB7\"\n }\n },\n {\n \"scope\": [\n \"keyword.other.definition.ini\",\n \"punctuation.support.type.property-name.json\",\n \"support.type.property-name.json\",\n \"punctuation.support.type.property-name.toml\",\n \"support.type.property-name.toml\",\n \"entity.name.tag.yaml\",\n \"punctuation.support.type.property-name.yaml\",\n \"support.type.property-name.yaml\"\n ],\n \"settings\": {\n \"foreground\": \"#9DAFFA\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": [\"constant.language.json\", \"constant.language.yaml\"],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\"entity.name.type.anchor.yaml\", \"variable.other.alias.yaml\"],\n \"settings\": {\n \"foreground\": \"#EDD5A6\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": [\"support.type.property-name.table\", \"entity.name.section.group-title.ini\"],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"constant.other.time.datetime.offset.toml\",\n \"settings\": {\n \"foreground\": \"#EFB7C2\"\n }\n },\n {\n \"scope\": [\"punctuation.definition.anchor.yaml\", \"punctuation.definition.alias.yaml\"],\n \"settings\": {\n \"foreground\": \"#EFB7C2\"\n }\n },\n {\n \"scope\": \"entity.other.document.begin.yaml\",\n \"settings\": {\n \"foreground\": \"#EFB7C2\"\n }\n },\n {\n \"scope\": \"markup.changed.diff\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\n \"meta.diff.header.from-file\",\n \"meta.diff.header.to-file\",\n \"punctuation.definition.from-file.diff\",\n \"punctuation.definition.to-file.diff\"\n ],\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": \"markup.inserted.diff\",\n \"settings\": {\n \"foreground\": \"#88DCB7\"\n }\n },\n {\n \"scope\": \"markup.deleted.diff\",\n \"settings\": {\n \"foreground\": \"#F7869B\"\n }\n },\n {\n \"scope\": [\"variable.other.env\"],\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": [\"string.quoted variable.other.env\"],\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": \"support.function.builtin.gdscript\",\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": \"constant.language.gdscript\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"comment meta.annotation.go\",\n \"settings\": {\n \"foreground\": \"#F39EAE\"\n }\n },\n {\n \"scope\": \"comment meta.annotation.parameters.go\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"constant.language.go\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"variable.graphql\",\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": \"string.unquoted.alias.graphql\",\n \"settings\": {\n \"foreground\": \"#F2CDCD\"\n }\n },\n {\n \"scope\": \"constant.character.enum.graphql\",\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": \"meta.objectvalues.graphql constant.object.key.graphql string.unquoted.graphql\",\n \"settings\": {\n \"foreground\": \"#F2CDCD\"\n }\n },\n {\n \"scope\": [\n \"keyword.other.doctype\",\n \"meta.tag.sgml.doctype punctuation.definition.tag\",\n \"meta.tag.metadata.doctype entity.name.tag\",\n \"meta.tag.metadata.doctype punctuation.definition.tag\"\n ],\n \"settings\": {\n \"foreground\": \"#C6A5EA\"\n }\n },\n {\n \"scope\": [\"entity.name.tag\"],\n \"settings\": {\n \"foreground\": \"#9DAFFA\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": [\n \"text.html constant.character.entity\",\n \"text.html constant.character.entity punctuation\",\n \"constant.character.entity.xml\",\n \"constant.character.entity.xml punctuation\",\n \"constant.character.entity.js.jsx\",\n \"constant.charactger.entity.js.jsx punctuation\",\n \"constant.character.entity.tsx\",\n \"constant.character.entity.tsx punctuation\"\n ],\n \"settings\": {\n \"foreground\": \"#F7869B\"\n }\n },\n {\n \"scope\": [\"entity.other.attribute-name\"],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\n \"support.class.component\",\n \"support.class.component.jsx\",\n \"support.class.component.tsx\",\n \"support.class.component.vue\"\n ],\n \"settings\": {\n \"foreground\": \"#EFB7C2\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": [\"punctuation.definition.annotation\", \"storage.type.annotation\"],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"constant.other.enum.java\",\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": \"storage.modifier.import.java\",\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": \"comment.block.javadoc.java keyword.other.documentation.javadoc.java\",\n \"settings\": {\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": \"meta.export variable.other.readwrite.js\",\n \"settings\": {\n \"foreground\": \"#F39EAE\"\n }\n },\n {\n \"scope\": [\n \"variable.other.constant.js\",\n \"variable.other.constant.ts\",\n \"variable.other.property.js\",\n \"variable.other.property.ts\"\n ],\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": [\"variable.other.jsdoc\", \"comment.block.documentation variable.other\"],\n \"settings\": {\n \"foreground\": \"#F39EAE\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": \"storage.type.class.jsdoc\",\n \"settings\": {\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": \"support.type.object.console.js\",\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": [\"support.constant.node\", \"support.type.object.module.js\"],\n \"settings\": {\n \"foreground\": \"#C6A5EA\"\n }\n },\n {\n \"scope\": \"storage.modifier.implements\",\n \"settings\": {\n \"foreground\": \"#C6A5EA\"\n }\n },\n {\n \"scope\": [\n \"constant.language.null.js\",\n \"constant.language.null.ts\",\n \"constant.language.undefined.js\",\n \"constant.language.undefined.ts\",\n \"support.type.builtin.ts\"\n ],\n \"settings\": {\n \"foreground\": \"#C6A5EA\"\n }\n },\n {\n \"scope\": \"variable.parameter.generic\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\"keyword.declaration.function.arrow.js\", \"storage.type.function.arrow.ts\"],\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": \"punctuation.decorator.ts\",\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": [\n \"keyword.operator.expression.in.js\",\n \"keyword.operator.expression.in.ts\",\n \"keyword.operator.expression.infer.ts\",\n \"keyword.operator.expression.instanceof.js\",\n \"keyword.operator.expression.instanceof.ts\",\n \"keyword.operator.expression.is\",\n \"keyword.operator.expression.keyof.ts\",\n \"keyword.operator.expression.of.js\",\n \"keyword.operator.expression.of.ts\",\n \"keyword.operator.expression.typeof.ts\"\n ],\n \"settings\": {\n \"foreground\": \"#C6A5EA\"\n }\n },\n {\n \"scope\": \"support.function.macro.julia\",\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": \"constant.language.julia\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"constant.other.symbol.julia\",\n \"settings\": {\n \"foreground\": \"#F39EAE\"\n }\n },\n {\n \"scope\": \"text.tex keyword.control.preamble\",\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": \"text.tex support.function.be\",\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": \"constant.other.general.math.tex\",\n \"settings\": {\n \"foreground\": \"#F2CDCD\"\n }\n },\n {\n \"scope\": \"comment.line.double-dash.documentation.lua storage.type.annotation.lua\",\n \"settings\": {\n \"foreground\": \"#C6A5EA\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": [\n \"comment.line.double-dash.documentation.lua entity.name.variable.lua\",\n \"comment.line.double-dash.documentation.lua variable.lua\"\n ],\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": [\n \"heading.1.markdown punctuation.definition.heading.markdown\",\n \"heading.1.markdown\",\n \"heading.1.quarto punctuation.definition.heading.quarto\",\n \"heading.1.quarto\",\n \"markup.heading.atx.1.mdx\",\n \"markup.heading.atx.1.mdx punctuation.definition.heading.mdx\",\n \"markup.heading.setext.1.markdown\",\n \"markup.heading.heading-0.asciidoc\"\n ],\n \"settings\": {\n \"foreground\": \"#F7869B\"\n }\n },\n {\n \"scope\": [\n \"heading.2.markdown punctuation.definition.heading.markdown\",\n \"heading.2.markdown\",\n \"heading.2.quarto punctuation.definition.heading.quarto\",\n \"heading.2.quarto\",\n \"markup.heading.atx.2.mdx\",\n \"markup.heading.atx.2.mdx punctuation.definition.heading.mdx\",\n \"markup.heading.setext.2.markdown\",\n \"markup.heading.heading-1.asciidoc\"\n ],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\n \"heading.3.markdown punctuation.definition.heading.markdown\",\n \"heading.3.markdown\",\n \"heading.3.quarto punctuation.definition.heading.quarto\",\n \"heading.3.quarto\",\n \"markup.heading.atx.3.mdx\",\n \"markup.heading.atx.3.mdx punctuation.definition.heading.mdx\",\n \"markup.heading.heading-2.asciidoc\"\n ],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\n \"heading.4.markdown punctuation.definition.heading.markdown\",\n \"heading.4.markdown\",\n \"heading.4.quarto punctuation.definition.heading.quarto\",\n \"heading.4.quarto\",\n \"markup.heading.atx.4.mdx\",\n \"markup.heading.atx.4.mdx punctuation.definition.heading.mdx\",\n \"markup.heading.heading-3.asciidoc\"\n ],\n \"settings\": {\n \"foreground\": \"#88DCB7\"\n }\n },\n {\n \"scope\": [\n \"heading.5.markdown punctuation.definition.heading.markdown\",\n \"heading.5.markdown\",\n \"heading.5.quarto punctuation.definition.heading.quarto\",\n \"heading.5.quarto\",\n \"markup.heading.atx.5.mdx\",\n \"markup.heading.atx.5.mdx punctuation.definition.heading.mdx\",\n \"markup.heading.heading-4.asciidoc\"\n ],\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": [\n \"heading.6.markdown punctuation.definition.heading.markdown\",\n \"heading.6.markdown\",\n \"heading.6.quarto punctuation.definition.heading.quarto\",\n \"heading.6.quarto\",\n \"markup.heading.atx.6.mdx\",\n \"markup.heading.atx.6.mdx punctuation.definition.heading.mdx\",\n \"markup.heading.heading-5.asciidoc\"\n ],\n \"settings\": {\n \"foreground\": \"#C6A5EA\"\n }\n },\n {\n \"scope\": \"markup.bold\",\n \"settings\": {\n \"foreground\": \"#F7869B\",\n \"fontStyle\": \"bold\"\n }\n },\n {\n \"scope\": \"markup.italic\",\n \"settings\": {\n \"foreground\": \"#F7869B\"\n }\n },\n {\n \"scope\": \"markup.strikethrough\",\n \"settings\": {\n \"foreground\": \"#A6ADC8\",\n \"fontStyle\": \"strikethrough\"\n }\n },\n {\n \"scope\": [\"punctuation.definition.link\", \"markup.underline.link\"],\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": [\n \"text.html.markdown punctuation.definition.link.title\",\n \"text.html.quarto punctuation.definition.link.title\",\n \"string.other.link.title.markdown\",\n \"string.other.link.title.quarto\",\n \"markup.link\",\n \"punctuation.definition.constant.markdown\",\n \"punctuation.definition.constant.quarto\",\n \"constant.other.reference.link.markdown\",\n \"constant.other.reference.link.quarto\",\n \"markup.substitution.attribute-reference\"\n ],\n \"settings\": {\n \"foreground\": \"#B4BEFE\"\n }\n },\n {\n \"scope\": [\n \"punctuation.definition.raw.markdown\",\n \"punctuation.definition.raw.quarto\",\n \"markup.inline.raw.string.markdown\",\n \"markup.inline.raw.string.quarto\",\n \"markup.raw.block.markdown\",\n \"markup.raw.block.quarto\"\n ],\n \"settings\": {\n \"foreground\": \"#88DCB7\"\n }\n },\n {\n \"scope\": \"fenced_code.block.language\",\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": [\n \"markup.fenced_code.block punctuation.definition\",\n \"markup.raw support.asciidoc\"\n ],\n \"settings\": {\n \"foreground\": \"#A1A4A5\"\n }\n },\n {\n \"scope\": [\"markup.quote\", \"punctuation.definition.quote.begin\"],\n \"settings\": {\n \"foreground\": \"#EFB7C2\"\n }\n },\n {\n \"scope\": \"meta.separator.markdown\",\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": [\n \"punctuation.definition.list.begin.markdown\",\n \"punctuation.definition.list.begin.quarto\",\n \"markup.list.bullet\"\n ],\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": \"markup.heading.quarto\",\n \"settings\": {\n \"fontStyle\": \"bold\"\n }\n },\n {\n \"scope\": [\n \"entity.other.attribute-name.multipart.nix\",\n \"entity.other.attribute-name.single.nix\"\n ],\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": \"variable.parameter.name.nix\",\n \"settings\": {\n \"foreground\": \"#E7E7E8\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": \"meta.embedded variable.parameter.name.nix\",\n \"settings\": {\n \"foreground\": \"#B4BEFE\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": \"string.unquoted.path.nix\",\n \"settings\": {\n \"foreground\": \"#EFB7C2\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": [\"support.attribute.builtin\", \"meta.attribute.php\"],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"meta.function.parameters.php punctuation.definition.variable.php\",\n \"settings\": {\n \"foreground\": \"#F39EAE\"\n }\n },\n {\n \"scope\": \"constant.language.php\",\n \"settings\": {\n \"foreground\": \"#C6A5EA\"\n }\n },\n {\n \"scope\": \"text.html.php support.function\",\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": \"keyword.other.phpdoc.php\",\n \"settings\": {\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": [\"support.variable.magic.python\", \"meta.function-call.arguments.python\"],\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": [\"support.function.magic.python\"],\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": [\n \"variable.parameter.function.language.special.self.python\",\n \"variable.language.special.self.python\"\n ],\n \"settings\": {\n \"foreground\": \"#F7869B\"\n }\n },\n {\n \"scope\": [\"keyword.control.flow.python\", \"keyword.operator.logical.python\"],\n \"settings\": {\n \"foreground\": \"#C6A5EA\"\n }\n },\n {\n \"scope\": \"storage.type.function.python\",\n \"settings\": {\n \"foreground\": \"#C6A5EA\"\n }\n },\n {\n \"scope\": [\n \"support.token.decorator.python\",\n \"meta.function.decorator.identifier.python\"\n ],\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": [\"meta.function-call.python\"],\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": [\n \"entity.name.function.decorator.python\",\n \"punctuation.definition.decorator.python\"\n ],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"constant.character.format.placeholder.other.python\",\n \"settings\": {\n \"foreground\": \"#EFB7C2\"\n }\n },\n {\n \"scope\": [\"support.type.exception.python\", \"support.function.builtin.python\"],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\"support.type.python\"],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"constant.language.python\",\n \"settings\": {\n \"foreground\": \"#C6A5EA\"\n }\n },\n {\n \"scope\": [\"meta.indexed-name.python\", \"meta.item-access.python\"],\n \"settings\": {\n \"foreground\": \"#F39EAE\"\n }\n },\n {\n \"scope\": \"storage.type.string.python\",\n \"settings\": {\n \"foreground\": \"#88DCB7\"\n }\n },\n {\n \"scope\": \"meta.function.parameters.python\",\n \"settings\": {\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": [\n \"string.regexp punctuation.definition.string.begin\",\n \"string.regexp punctuation.definition.string.end\"\n ],\n \"settings\": {\n \"foreground\": \"#EFB7C2\"\n }\n },\n {\n \"scope\": \"keyword.control.anchor.regexp\",\n \"settings\": {\n \"foreground\": \"#C6A5EA\"\n }\n },\n {\n \"scope\": \"string.regexp.ts\",\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": [\n \"punctuation.definition.group.regexp\",\n \"keyword.other.back-reference.regexp\"\n ],\n \"settings\": {\n \"foreground\": \"#88DCB7\"\n }\n },\n {\n \"scope\": \"punctuation.definition.character-class.regexp\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"constant.other.character-class.regexp\",\n \"settings\": {\n \"foreground\": \"#EFB7C2\"\n }\n },\n {\n \"scope\": \"constant.other.character-class.range.regexp\",\n \"settings\": {\n \"foreground\": \"#F5E0DC\"\n }\n },\n {\n \"scope\": \"keyword.operator.quantifier.regexp\",\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": \"constant.character.numeric.regexp\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\n \"punctuation.definition.group.no-capture.regexp\",\n \"meta.assertion.look-ahead.regexp\",\n \"meta.assertion.negative-look-ahead.regexp\"\n ],\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": [\n \"meta.annotation.rust\",\n \"meta.annotation.rust punctuation\",\n \"meta.attribute.rust\",\n \"punctuation.definition.attribute.rust\"\n ],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\n \"meta.attribute.rust string.quoted.double.rust\",\n \"meta.attribute.rust string.quoted.single.char.rust\"\n ],\n \"settings\": {\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": [\n \"entity.name.function.macro.rules.rust\",\n \"storage.type.module.rust\",\n \"storage.modifier.rust\",\n \"storage.type.struct.rust\",\n \"storage.type.enum.rust\",\n \"storage.type.trait.rust\",\n \"storage.type.union.rust\",\n \"storage.type.impl.rust\",\n \"storage.type.rust\",\n \"storage.type.function.rust\",\n \"storage.type.type.rust\"\n ],\n \"settings\": {\n \"foreground\": \"#C6A5EA\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": \"entity.name.type.numeric.rust\",\n \"settings\": {\n \"foreground\": \"#C6A5EA\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": \"meta.generic.rust\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"entity.name.impl.rust\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"entity.name.module.rust\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"entity.name.trait.rust\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"storage.type.source.rust\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"entity.name.union.rust\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"meta.enum.rust storage.type.source.rust\",\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": [\n \"support.macro.rust\",\n \"meta.macro.rust support.function.rust\",\n \"entity.name.function.macro.rust\"\n ],\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": [\"storage.modifier.lifetime.rust\", \"entity.name.type.lifetime\"],\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": \"string.quoted.double.rust constant.other.placeholder.rust\",\n \"settings\": {\n \"foreground\": \"#EFB7C2\"\n }\n },\n {\n \"scope\": \"meta.function.return-type.rust meta.generic.rust storage.type.rust\",\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": \"meta.function.call.rust\",\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": \"punctuation.brackets.angle.rust\",\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": \"constant.other.caps.rust\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\"meta.function.definition.rust variable.other.rust\"],\n \"settings\": {\n \"foreground\": \"#F39EAE\"\n }\n },\n {\n \"scope\": \"meta.function.call.rust variable.other.rust\",\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": \"variable.language.self.rust\",\n \"settings\": {\n \"foreground\": \"#F7869B\"\n }\n },\n {\n \"scope\": [\n \"variable.other.metavariable.name.rust\",\n \"meta.macro.metavariable.rust keyword.operator.macro.dollar.rust\"\n ],\n \"settings\": {\n \"foreground\": \"#EFB7C2\"\n }\n },\n {\n \"scope\": [\n \"comment.line.shebang\",\n \"comment.line.shebang punctuation.definition.comment\",\n \"comment.line.shebang\",\n \"punctuation.definition.comment.shebang.shell\",\n \"meta.shebang.shell\"\n ],\n \"settings\": {\n \"foreground\": \"#EFB7C2\"\n }\n },\n {\n \"scope\": \"comment.line.shebang constant.language\",\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": [\n \"meta.function-call.arguments.shell punctuation.definition.variable.shell\",\n \"meta.function-call.arguments.shell punctuation.section.interpolation\",\n \"meta.function-call.arguments.shell punctuation.definition.variable.shell\",\n \"meta.function-call.arguments.shell punctuation.section.interpolation\"\n ],\n \"settings\": {\n \"foreground\": \"#F7869B\"\n }\n },\n {\n \"scope\": \"meta.string meta.interpolation.parameter.shell variable.other.readwrite\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\n \"source.shell punctuation.section.interpolation\",\n \"punctuation.definition.evaluation.backticks.shell\"\n ],\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": \"entity.name.tag.heredoc.shell\",\n \"settings\": {\n \"foreground\": \"#C6A5EA\"\n }\n },\n {\n \"scope\": \"string.quoted.double.shell variable.other.normal.shell\",\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": \"token.info-token\",\n \"settings\": {\n \"foreground\": \"#8BA1FF\"\n }\n },\n {\n \"scope\": \"token.warn-token\",\n \"settings\": {\n \"foreground\": \"#F5B944\"\n }\n },\n {\n \"scope\": \"token.error-token\",\n \"settings\": {\n \"foreground\": \"#FB6E88\"\n }\n },\n {\n \"scope\": \"token.debug-token\",\n \"settings\": {\n \"foreground\": \"#BE95EB\"\n }\n }\n ]\n}\n","/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport cn from 'classnames'\n\nexport type BadgeColor =\n | 'default'\n | 'destructive'\n | 'notice'\n | 'neutral'\n | 'purple'\n | 'blue'\nexport type BadgeVariant = 'default' | 'solid'\n\nexport interface BadgeProps {\n color?: BadgeColor\n className?: string\n children: React.ReactNode\n variant?: BadgeVariant\n}\n\nexport const badgeColors: Record<BadgeVariant, Record<BadgeColor, string>> = {\n default: {\n default: `ring-1 ring-inset bg-accent-secondary text-accent ring-[rgba(var(--base-green-800-rgb),0.15)]`,\n destructive: `ring-1 ring-inset bg-destructive-secondary text-destructive ring-[rgba(var(--base-red-800-rgb),0.15)]`,\n notice: `ring-1 ring-inset bg-notice-secondary text-notice ring-[rgba(var(--base-yellow-800-rgb),0.15)]`,\n neutral: `ring-1 ring-inset bg-secondary text-secondary ring-[rgba(var(--base-neutral-700-rgb),0.15)]`,\n purple: `ring-1 ring-inset bg-[var(--base-purple-200)] text-[var(--base-purple-700)] ring-[rgba(var(--base-purple-800-rgb),0.15)]`,\n blue: `ring-1 ring-inset bg-info-secondary text-info ring-[rgba(var(--base-blue-800-rgb),0.15)]`,\n },\n solid: {\n default: 'bg-accent text-inverse',\n destructive: 'bg-destructive text-inverse',\n notice: 'bg-notice text-inverse',\n neutral: 'bg-inverse-tertiary text-inverse',\n purple: 'bg-[var(--base-purple-700)] text-inverse',\n blue: 'bg-info text-inverse',\n },\n}\n\nexport const Badge = ({\n className,\n children,\n color = 'default',\n variant = 'default',\n}: BadgeProps) => {\n return (\n <span\n className={cn(\n 'ox-badge',\n `variant-${variant}`,\n 'inline-flex h-4 items-center whitespace-nowrap rounded-sm px-[3px] py-[1px] uppercase text-mono-sm',\n badgeColors[variant][color],\n className,\n )}\n >\n <span>{children}</span>\n </span>\n )\n}\n","/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport cn from 'classnames'\nimport type { MouseEventHandler } from 'react'\nimport { forwardRef } from 'react'\n\nimport { Spinner } from '../'\n\nexport const buttonSizes = ['sm', 'icon', 'base'] as const\nexport const variants = ['primary', 'secondary', 'ghost', 'danger'] as const\n\nexport type ButtonSize = typeof buttonSizes[number]\nexport type Variant = typeof variants[number]\n\nconst sizeStyle: Record<ButtonSize, string> = {\n sm: 'h-8 px-3 text-mono-sm svg:w-4',\n // meant for buttons that only contain a single icon\n icon: 'h-8 w-8 text-mono-sm svg:w-4',\n base: 'h-10 px-4 text-mono-sm svg:w-5',\n}\n\ntype ButtonStyleProps = {\n size?: ButtonSize\n variant?: Variant\n}\n\nexport const buttonStyle = ({\n size = 'base',\n variant = 'primary',\n}: ButtonStyleProps = {}) => {\n return cn(\n 'ox-button inline-flex items-center justify-center rounded align-top elevation-1 disabled:cursor-not-allowed',\n `btn-${variant}`,\n sizeStyle[size],\n variant === 'danger'\n ? 'focus:outline-destructive-secondary'\n : 'focus:outline-accent-secondary',\n )\n}\n\n/**\n * When the `disabled` prop is passed to the button we put it in a visually disabled state.\n * In that case we want to override the default mouse down and click behavior to simulate a\n * disabled state.\n */\nconst noop: MouseEventHandler<HTMLButtonElement> = (e) => {\n e.stopPropagation()\n e.preventDefault()\n}\n\nexport interface ButtonProps\n extends React.ComponentPropsWithRef<'button'>,\n ButtonStyleProps {\n innerClassName?: string\n loading?: boolean\n}\n\n// Use `forwardRef` so the ref points to the DOM element (not the React Component)\n// so it can be focused using the DOM API (eg. this.buttonRef.current.focus())\nexport const Button = forwardRef<HTMLButtonElement, ButtonProps>(\n (\n {\n type = 'button',\n children,\n size,\n variant,\n className,\n loading,\n innerClassName,\n disabled,\n onClick,\n // needs to be a spread because we sometimes get passed arbitrary <button>\n // props by the parent\n ...rest\n },\n ref,\n ) => {\n const isDisabled = disabled || loading\n return (\n <button\n className={cn(buttonStyle({ size, variant }), className, {\n 'visually-disabled': isDisabled,\n })}\n ref={ref}\n type={type}\n onMouseDown={isDisabled ? noop : undefined}\n onClick={isDisabled ? noop : onClick}\n aria-disabled={isDisabled}\n {...rest}\n >\n {loading && <Spinner className=\"absolute\" variant={variant} />}\n <span className={cn('flex items-center', innerClassName, { invisible: loading })}>\n {children}\n </span>\n </button>\n )\n },\n)\n","/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport cn from 'classnames'\nimport type { ReactNode } from 'react'\nimport { useEffect, useRef, useState } from 'react'\n\nexport const spinnerSizes = ['base', 'lg'] as const\nexport const spinnerVariants = ['primary', 'secondary', 'ghost', 'danger'] as const\nexport type SpinnerSize = typeof spinnerSizes[number]\nexport type SpinnerVariant = typeof spinnerVariants[number]\n\ninterface SpinnerProps {\n className?: string\n size?: SpinnerSize\n variant?: SpinnerVariant\n}\n\nexport const Spinner = ({\n className,\n size = 'base',\n variant = 'primary',\n}: SpinnerProps) => {\n const frameSize = size === 'lg' ? 36 : 12\n const center = size === 'lg' ? 18 : 6\n const radius = size === 'lg' ? 16 : 5\n const strokeWidth = size === 'lg' ? 3 : 2\n return (\n <svg\n width={frameSize}\n height={frameSize}\n viewBox={`0 0 ${frameSize + ' ' + frameSize}`}\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n aria-labelledby=\"Spinner\"\n className={cn('spinner', `spinner-${variant}`, `spinner-${size}`, className)}\n >\n <circle\n fill=\"none\"\n className=\"bg\"\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n cx={center}\n cy={center}\n r={radius}\n strokeOpacity={0.2}\n />\n <circle\n className=\"path\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n cx={center}\n cy={center}\n r={radius}\n />\n </svg>\n )\n}\n\ntype Props = {\n isLoading: boolean\n children?: ReactNode\n minTime?: number\n}\n\n/** Loading spinner that shows for a minimum of `minTime` */\nexport const SpinnerLoader = ({ isLoading, children = null, minTime = 500 }: Props) => {\n const [isVisible, setIsVisible] = useState(isLoading)\n const hideTimeout = useRef<NodeJS.Timeout | null>(null)\n const loadingStartTime = useRef<number>(0)\n\n useEffect(() => {\n if (isLoading) {\n setIsVisible(true)\n loadingStartTime.current = Date.now()\n } else {\n // Clear the hide timer if it's still running.\n if (hideTimeout.current) clearTimeout(hideTimeout.current)\n\n // turn the spinner off, making sure it showed for at least `minTime`\n const elapsedTime = Date.now() - loadingStartTime.current\n const remainingTime = Math.max(0, minTime - elapsedTime)\n if (remainingTime === 0) {\n setIsVisible(false) // might as well not use a timeout\n } else {\n hideTimeout.current = setTimeout(() => setIsVisible(false), remainingTime)\n }\n }\n\n return () => {\n if (hideTimeout.current) clearTimeout(hideTimeout.current)\n }\n }, [isLoading, minTime])\n\n return isVisible ? <Spinner /> : <>{children}</>\n}\n","/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport type {\n TabsContentProps,\n TabsListProps,\n TabsProps,\n TabsTriggerProps,\n} from '@radix-ui/react-tabs'\nimport { Content, List, Root, Trigger } from '@radix-ui/react-tabs'\nimport cn from 'classnames'\nimport type { SetRequired } from 'type-fest'\n\n// They don't require a default value, but without it there is no tab selected\n// by default.\nexport type TabsRootProps = SetRequired<TabsProps, 'defaultValue'>\n\nexport const Tabs = {\n Root: ({ className, ...props }: TabsRootProps) => (\n <Root {...props} className={cn('ox-tabs', className)} />\n ),\n Trigger: ({ children, className, ...props }: TabsTriggerProps) => (\n <Trigger {...props} className={cn('ox-tab', className)}>\n {/* this div needs to be here for the background on `ox-tab:hover > *` */}\n <div>{children}</div>\n </Trigger>\n ),\n List: ({ className, ...props }: TabsListProps) => (\n <List {...props} className={cn('ox-tabs-list', className)} />\n ),\n Content: ({ className, ...props }: TabsContentProps) => (\n <Content {...props} className={cn('ox-tabs-panel', className)} />\n ),\n}\n","/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport { Checkmark12Icon } from '@/icons/react'\nimport cn from 'classnames'\n\nimport { classed } from '../../utils'\n\nconst Check = () => (\n <Checkmark12Icon className=\"pointer-events-none absolute left-0.5 top-0.5 h-3 w-3 fill-current text-accent\" />\n)\n\nconst Indeterminate = classed.div`absolute w-2 h-0.5 left-1 top-[7px] bg-accent pointer-events-none`\n\nconst inputStyle = `\n appearance-none border border-default bg-default h-4 w-4 rounded-sm absolute left-0 outline-none\n disabled:cursor-not-allowed\n hover:border-hover hover:cursor-pointer\n checked:bg-accent-secondary checked:border-accent-secondary checked:hover:border-accent\n indeterminate:bg-accent-secondary indeterminate:border-accent hover:indeterminate:bg-accent-secondary-hover\n`\n\nexport type CheckboxProps = {\n indeterminate?: boolean\n children?: React.ReactNode\n className?: string\n} & Omit<React.ComponentProps<'input'>, 'type'>\n\n// ref function is from: https://davidwalsh.name/react-indeterminate. this makes\n// the native input work with indeterminate. you can't pass indeterminate as a\n// prop; it has to be set directly on the element through a ref. more elaborate\n// examples using forwardRef to allow passing ref from outside:\n// https://github.com/tannerlinsley/react-table/discussions/1989\n\n/** Checkbox component that handles label, styling, and indeterminate state */\nexport const Checkbox = ({\n indeterminate,\n children,\n className,\n ...inputProps\n}: CheckboxProps) => (\n <label className=\"inline-flex items-center\">\n <span className=\"relative h-4 w-4\">\n <input\n className={cn(inputStyle, className)}\n type=\"checkbox\"\n ref={(el) => el && (el.indeterminate = !!indeterminate)}\n {...inputProps}\n />\n {inputProps.checked && !indeterminate && <Check />}\n {indeterminate && <Indeterminate />}\n </span>\n\n {children && <span className=\"ml-2.5 text-sans-md text-secondary\">{children}</span>}\n </label>\n)\n","/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport { SelectArrows6Icon } from '@/icons/react'\nimport { FloatingPortal, flip, offset, size, useFloating } from '@floating-ui/react'\nimport { Listbox as Select } from '@headlessui/react'\nimport cn from 'classnames'\nimport type { ReactNode } from 'react'\n\nimport { SpinnerLoader } from '~/src'\n\nexport type ListboxItem<Value extends string = string> = {\n value: Value\n} & (\n | { label: string; labelString?: never }\n // labelString is required when `label` is a `ReactElement` because we\n // need need a one-line string to display in the button when the item is\n // selected.\n | { label: ReactNode; labelString: string }\n)\n\nexport interface ListboxProps<Value extends string = string> {\n // null is allowed as a default empty value, but onChange will never be called with null\n selected: Value | null\n onChange: (value: Value) => void\n items: ListboxItem<Value>[]\n placeholder?: string\n className?: string\n disabled?: boolean\n hasError?: boolean\n name?: string\n isLoading?: boolean\n}\n\nexport const Listbox = <Value extends string = string>({\n name,\n selected,\n items,\n placeholder = 'Select an option',\n className,\n onChange,\n hasError = false,\n disabled,\n isLoading = false,\n ...props\n}: ListboxProps<Value>) => {\n const { refs, floatingStyles } = useFloating({\n middleware: [\n offset(12),\n flip(),\n size({\n apply({ rects, elements }) {\n Object.assign(elements.floating.style, {\n width: `${rects.reference.width}px`,\n })\n },\n }),\n ],\n })\n\n const selectedItem = selected && items.find((i) => i.value === selected)\n const noItems = !isLoading && items.length === 0\n const isDisabled = disabled || noItems\n\n return (\n <div className={cn('relative', className)}>\n <Select\n value={selected}\n // you shouldn't ever be able to select null, but we check here anyway\n // to make TS happy so the calling code doesn't have to. note `val !==\n // null` because '' is falsy but potentially a valid value\n onChange={(val) => val !== null && onChange(val)}\n disabled={isDisabled || isLoading}\n >\n {({ open }) => (\n <>\n <Select.Button\n name={name}\n ref={refs.setReference}\n className={cn(\n `flex h-10 w-full items-center justify-between\n rounded border text-sans-md`,\n hasError\n ? 'focus-error border-error-secondary hover:border-error'\n : 'border-default hover:border-hover',\n open && 'ring-2 ring-accent-secondary',\n open && hasError && 'ring-error-secondary',\n isDisabled\n ? 'cursor-not-allowed text-disabled bg-disabled !border-default'\n : 'bg-default',\n isDisabled && hasError && '!border-error-secondary',\n )}\n {...props}\n >\n <div className=\"w-full px-3 text-left\">\n {selectedItem ? (\n // labelString is one line, which is what we need when label is a ReactNode\n selectedItem.labelString || selectedItem.label\n ) : (\n <span className=\"text-quaternary\">\n {noItems ? 'No items' : placeholder}\n </span>\n )}\n </div>\n {!isDisabled && <SpinnerLoader isLoading={isLoading} />}\n <div\n className=\"ml-3 flex h-[calc(100%-12px)] items-center border-l px-3 border-secondary\"\n aria-hidden\n >\n <SelectArrows6Icon className=\"h-[14px] w-2 text-tertiary\" />\n </div>\n </Select.Button>\n <FloatingPortal>\n <Select.Options\n ref={refs.setFloating}\n style={floatingStyles}\n className=\"ox-menu pointer-events-auto z-50 overflow-y-auto !outline-none\"\n >\n {items.map((item) => (\n <Select.Option\n key={item.value}\n value={item.value}\n className=\"relative border-b border-secondary last:border-0\"\n >\n {({ active, selected }) => (\n <div\n className={cn(\n 'ox-menu-item text-secondary',\n selected && 'is-selected',\n active && 'is-highlighted',\n )}\n >\n {item.label}\n </div>\n )}\n </Select.Option>\n ))}\n </Select.Options>\n </FloatingPortal>\n </>\n )}\n </Select>\n </div>\n )\n}\n"],"mappings":"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","names":["Content","text","jsx","jsxs","jsx","jsxs","jsx","jsxs","Content","parse","cn","createElement","jsx","jsxs","jsx","jsx","Content","cn","jsx","cn","jsx","jsxs","size","cn","cn","Fragment","jsx","jsxs","size","Content","cn","jsx","cn","jsx","jsxs","cn","cn","Fragment","jsx","jsxs","cn","selected"]}
|
|
1
|
+
{"version":3,"sources":["../src/asciidoc/index.tsx","../src/asciidoc/Admonition.tsx","../src/utils.ts","../../icons/react/Link16Icon.tsx","../../icons/react/Checkmark12Icon.tsx","../../icons/react/SelectArrows6Icon.tsx","../src/asciidoc/Section.tsx","../src/asciidoc/Table.tsx","../src/asciidoc/util.ts","../src/asciidoc/langs/oxql.tmLanguage.json","../src/asciidoc/oxide-dark.json","../src/ui/badge/Badge.tsx","../src/ui/button/Button.tsx","../src/ui/spinner/Spinner.tsx","../src/ui/tabs/Tabs.tsx","../src/ui/checkbox/Checkbox.tsx","../src/ui/listbox/Listbox.tsx"],"sourcesContent":["/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport { Content, type DocumentBlock } from '@oxide/react-asciidoc'\n\nimport Admonition from './Admonition'\nimport Section from './Section'\nimport Table from './Table'\nimport { attrs, handleDocument, highlight, loadAsciidoctor } from './util'\n\nconst MinimalDocument = ({ document }: { document: DocumentBlock }) => (\n <div id=\"content\" className=\"asciidoc-body w-full\">\n <Content blocks={document.blocks} />\n </div>\n)\n\nconst AsciiDocBlocks = {\n Admonition,\n Table,\n Section,\n MinimalDocument,\n}\n\nexport { AsciiDocBlocks, handleDocument, highlight, loadAsciidoctor, attrs }\n","/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport { type AdmonitionBlock, Content, Title, parse } from '@oxide/react-asciidoc'\n\nimport { titleCase } from '../utils'\n\nconst Admonition = ({ node }: { node: AdmonitionBlock }) => {\n const attrs = node.attributes\n\n let icon\n if (attrs.name === 'caution') {\n icon = <Error12 />\n } else if (attrs.name === 'warning') {\n icon = <Warning12 />\n } else {\n icon = <Error12 className=\"rotate-180\" />\n }\n\n return (\n <div className={`admonitionblock ${attrs.name}`}>\n <div className=\"admonition-icon\">{icon}</div>\n <div className=\"admonition-content content\">\n <Title text={node.title} />\n <div>{titleCase(attrs.name.toString())}</div>\n <div>\n <Title text={node.title} />\n {node.content && parse(node.content)}\n <Content blocks={node.blocks} />\n </div>\n </div>\n </div>\n )\n}\n\nconst Error12 = ({ className }: { className?: string }) => (\n <svg\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 12 12\"\n xmlns=\"http://www.w3.org/2000/svg\"\n className={className}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M6 12A6 6 0 1 0 6 0a6 6 0 0 0 0 12Zm.083-9c.368 0 .667.299.667.667v2.666A.667.667 0 0 1 6.083 7h-.166a.667.667 0 0 1-.667-.667V3.667c0-.368.299-.667.667-.667h.166Zm0 5c.368 0 .667.299.667.667v.166a.667.667 0 0 1-.667.667h-.166a.667.667 0 0 1-.667-.667v-.166c0-.368.299-.667.667-.667h.166Z\"\n fill=\"currentColor\"\n />\n </svg>\n)\n\nconst Warning12 = ({ className }: { className?: string }) => (\n <svg\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 12 12\"\n xmlns=\"http://www.w3.org/2000/svg\"\n className={className}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M6 12A6 6 0 1 0 6 0a6 6 0 0 0 0 12Zm.083-9c.368 0 .667.299.667.667v2.666A.667.667 0 0 1 6.083 7h-.166a.667.667 0 0 1-.667-.667V3.667c0-.368.299-.667.667-.667h.166Zm0 5c.368 0 .667.299.667.667v.166a.667.667 0 0 1-.667.667h-.166a.667.667 0 0 1-.667-.667v-.166c0-.368.299-.667.667-.667h.166Z\"\n fill=\"currentColor\"\n />\n </svg>\n)\n\nexport default Admonition\n","/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport cn from 'classnames'\nimport { createElement } from 'react'\n\nconst titleCase = (text: string): string => {\n return text.replace(\n /\\w\\S*/g,\n (text) => text.charAt(0).toUpperCase() + text.substring(1).toLowerCase(),\n )\n}\n\n// all the cuteness of tw.span`text-secondary uppercase` with zero magic\n\nconst make =\n <T extends keyof JSX.IntrinsicElements>(tag: T) =>\n // only one argument here means string interpolations are not allowed\n (strings: TemplateStringsArray) => {\n const Comp = ({ className, children, ...rest }: JSX.IntrinsicElements[T]) =>\n createElement(tag, { className: cn(strings[0], className), ...rest }, children)\n Comp.displayName = `classed.${tag}`\n return Comp\n }\n\n// JSX.IntrinsicElements[T] ensures same props as the real DOM element. For example,\n// classed.span doesn't allow a type attr but classed.input does.\n\nconst classed = {\n button: make('button'),\n div: make('div'),\n h1: make('h1'),\n h2: make('h2'),\n h3: make('h3'),\n h4: make('h4'),\n hr: make('hr'),\n header: make('header'),\n input: make('input'),\n label: make('label'),\n li: make('li'),\n main: make('main'),\n ol: make('ol'),\n p: make('p'),\n span: make('span'),\n table: make('table'),\n tbody: make('tbody'),\n td: make('td'),\n th: make('th'),\n tr: make('tr'),\n} as const\n\n// result: classed.button`text-secondary uppercase` returns a component with those classes\n\nexport { titleCase, classed }\n","/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport { SVGProps } from 'react'\n\ninterface SVGRProps {\n title?: string\n titleId?: string\n}\nconst Link16Icon = ({ title, titleId, ...props }: SVGProps<SVGSVGElement> & SVGRProps) => (\n <svg\n width={16}\n height={16}\n viewBox=\"0 0 16 16\"\n xmlns=\"http://www.w3.org/2000/svg\"\n role=\"img\"\n aria-labelledby={titleId}\n {...props}\n >\n {title ? <title id={titleId}>{title}</title> : null}\n <g fill=\"currentColor\">\n <path d=\"m6.586 12.243 1.59-1.591a.75.75 0 0 1 1.061 0l.354.353a.75.75 0 0 1 0 1.06L8 13.658A4 4 0 0 1 2.343 8l1.591-1.591a.75.75 0 0 1 1.06 0l.354.354a.75.75 0 0 1 0 1.06l-1.59 1.591a2 2 0 1 0 2.828 2.829ZM12.066 9.591a.75.75 0 0 1-1.06 0l-.354-.354a.75.75 0 0 1 0-1.06l1.59-1.591a2 2 0 1 0-2.828-2.829l-1.59 1.591a.75.75 0 0 1-1.061 0l-.354-.353a.75.75 0 0 1 0-1.06L8 2.342A4 4 0 0 1 13.657 8l-1.591 1.591Z\" />\n <path d=\"M9.945 5.702a.75.75 0 0 0-1.061 0L5.702 8.884a.75.75 0 0 0 0 1.06l.353.354a.75.75 0 0 0 1.061 0l3.182-3.182a.75.75 0 0 0 0-1.06l-.353-.354Z\" />\n </g>\n </svg>\n)\nexport default Link16Icon\n","/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport { SVGProps } from 'react'\n\ninterface SVGRProps {\n title?: string\n titleId?: string\n}\nconst Checkmark12Icon = ({\n title,\n titleId,\n ...props\n}: SVGProps<SVGSVGElement> & SVGRProps) => (\n <svg\n width={12}\n height={12}\n viewBox=\"0 0 12 12\"\n xmlns=\"http://www.w3.org/2000/svg\"\n role=\"img\"\n aria-labelledby={titleId}\n {...props}\n >\n {title ? <title id={titleId}>{title}</title> : null}\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M10.492 2.651c.28.242.31.665.067.944L5.447 9.463a.667.667 0 0 1-.974.035L1.475 6.516a.667.667 0 0 1 0-.946l.237-.235a.667.667 0 0 1 .94 0l2.24 2.226L9.3 2.501a.667.667 0 0 1 .938-.068l.253.218Z\"\n fill=\"currentColor\"\n />\n </svg>\n)\nexport default Checkmark12Icon\n","/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport { SVGProps } from 'react'\n\ninterface SVGRProps {\n title?: string\n titleId?: string\n}\nconst SelectArrows6Icon = ({\n title,\n titleId,\n ...props\n}: SVGProps<SVGSVGElement> & SVGRProps) => (\n <svg\n width={6}\n height={14}\n viewBox=\"0 0 6 14\"\n xmlns=\"http://www.w3.org/2000/svg\"\n role=\"img\"\n aria-labelledby={titleId}\n {...props}\n >\n {title ? <title id={titleId}>{title}</title> : null}\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M3.322.536a.375.375 0 0 0-.644 0L.341 4.432C.19 4.682.37 5 .662 5h4.676a.375.375 0 0 0 .321-.568L3.322.536Zm-.644 12.928a.375.375 0 0 0 .644 0l2.337-3.896A.375.375 0 0 0 5.338 9H.662a.375.375 0 0 0-.321.568l2.337 3.896Z\"\n fill=\"currentColor\"\n />\n </svg>\n)\nexport default SelectArrows6Icon\n","/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport { Link16Icon } from '@/icons/react'\nimport { Content, type SectionBlock, parse } from '@oxide/react-asciidoc'\nimport cn from 'classnames'\nimport { createElement } from 'react'\n\n// We need to remove anchors from the section title (and table of contents) because having\n// an anchor within an anchor causes a client/server render mismatch\nexport const stripAnchors = (str: string) => str.replace(/<a[^>]*>(.*?)<\\/a>/gi, '$1')\n\nconst Section = ({ node }: { node: SectionBlock }) => {\n const level = node.level\n let title: JSX.Element | string = ''\n\n let sectNum = node.num\n sectNum = sectNum === '.' ? '' : sectNum\n\n title = (\n <>\n <span className=\"anchor\" id={node.id || ''} aria-hidden=\"true\" />\n <a className=\"link group\" href={`#${node.id}`}>\n {parse(stripAnchors(node.title))}\n <Link16Icon className=\"ml-2 hidden text-accent-secondary group-hover:inline-block\" />\n </a>\n </>\n )\n\n if (level === 0) {\n return (\n <>\n <h1 className={cn('sect0', node.role)} data-sectnum={sectNum}>\n {title}\n </h1>\n <Content blocks={node.blocks} />\n </>\n )\n } else {\n return (\n <div className={cn(`sect${level}`, node.role)}>\n {createElement(`h${level + 1}`, { 'data-sectnum': sectNum }, title)}\n <div className=\"sectionbody\">\n <Content blocks={node.blocks} />\n </div>\n </div>\n )\n }\n}\n\nexport default Section\n","/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport { Table as InnerTable, type TableBlock } from '@oxide/react-asciidoc'\n\nconst Table = ({ node }: { node: TableBlock }) => (\n <div className=\"table-wrapper\">\n <InnerTable node={node} />\n </div>\n)\n\nexport default Table\n","/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport asciidoctor, {\n type Block as AdBlock,\n type Document,\n type Html5Converter,\n type Inline,\n type Registry,\n} from '@asciidoctor/core'\nimport {\n Block,\n LiteralBlock,\n prepareDocument,\n processDocument,\n} from '@oxide/react-asciidoc'\nimport {\n type BundledLanguage,\n type BundledTheme,\n type HighlighterGeneric,\n type LanguageInput,\n bundledLanguages,\n getHighlighter,\n} from 'shiki'\n\nimport oxqlLang from './langs/oxql.tmLanguage.json'\nimport theme from './oxide-dark.json'\n\nlet highlighter: HighlighterGeneric<BundledLanguage, BundledTheme> | null = null\nconst customLanguages = ['oxql']\nconst supportedLanguages = [...Object.keys(bundledLanguages), ...customLanguages]\n\nasync function getOrCreateHighlighter() {\n if (!highlighter) {\n const langs: LanguageInput[] = []\n\n langs.push({\n ...oxqlLang,\n })\n\n highlighter = await getHighlighter({\n themes: [theme],\n langs: langs,\n })\n }\n\n return highlighter\n}\n\nconst highlight = async (block: Block): Promise<Block> => {\n if (block.type === 'listing') {\n const literalBlock = block as LiteralBlock\n\n if (!literalBlock.content) {\n return block\n }\n\n // Replace callouts with placeholders before highlighting\n // without this they are decoded and are no displayed as HTML\n const calloutRegex = /<i class=\"conum\" data-value=\"\\d+\"><\\/i>/g\n const callouts: string[] = []\n const placeholderContent = literalBlock.content.replace(calloutRegex, (match) => {\n callouts.push(match)\n return `__CALLOUT_PLACEHOLDER_${callouts.length - 1}__`\n })\n\n // If no language specified, we still want to support callouts\n if (!literalBlock.language) {\n return {\n ...block,\n content: placeholderContent.replace(\n /__CALLOUT_PLACEHOLDER_(\\d+)__/g,\n (_, index) => callouts[parseInt(index)],\n ),\n }\n }\n\n let lang = literalBlock.language\n const h = await getOrCreateHighlighter()\n const loadedLanguages = h.getLoadedLanguages()\n\n if (!supportedLanguages.includes(lang)) {\n lang = 'text'\n }\n\n if (!loadedLanguages.includes(lang)) {\n await h.loadLanguage(lang as BundledLanguage)\n }\n\n const highlightedContent = h.codeToHtml(placeholderContent, {\n lang,\n theme: theme,\n structure: 'inline',\n })\n\n // Restore callouts in the highlighted content\n const restoredContent = highlightedContent.replace(\n /__CALLOUT_PLACEHOLDER_(\\d+)__/g,\n (_, index) => callouts[parseInt(index)],\n )\n\n return {\n ...block,\n content: restoredContent,\n }\n }\n return block\n}\n\nconst attrs = {\n sectlinks: 'true',\n stem: 'latexmath',\n stylesheet: false,\n}\n\nconst loadAsciidoctor = ({\n extensions = [],\n}: {\n extensions?: ((this: Registry) => void)[]\n}) => {\n const ad = asciidoctor()\n\n /*\n For styling inline elements\n we cannot do this through the AsciiDoc tree\n */\n class InlineConverter {\n baseConverter: Html5Converter\n\n constructor() {\n this.baseConverter = new ad.Html5Converter()\n }\n\n convert(node: AdBlock, transform: string) {\n switch (node.getNodeName()) {\n case 'inline_callout':\n return convertInlineCallout(node as unknown as Inline) // We know this is always inline\n default:\n break\n }\n\n return this.baseConverter.convert(node, transform)\n }\n }\n\n extensions.forEach((extension) => ad.Extensions.register(extension))\n ad.ConverterFactory.register(new InlineConverter(), ['html5'])\n\n return ad\n}\n\n// These are a little nicer to style than the default\nfunction convertInlineCallout(node: Inline): string {\n return `<i class=\"conum\" data-value=\"${node.getText()}\"></i>`\n}\n\nconst handleDocument = async (document: Document) => {\n const doc = prepareDocument(document)\n return await processDocument(doc, highlight)\n}\n\nexport { handleDocument, highlight, loadAsciidoctor, attrs }\n","{\n \"$schema\": \"https://raw.githubusercontent.com/martinring/tmlanguage/master/tmlanguage.json\",\n \"name\": \"oxql\",\n \"repository\": {\n \"keywords\": {\n \"patterns\": [\n {\n \"name\": \"keyword.control.oxql\",\n \"match\": \"\\\\b(if|while|for|return)\\\\b\"\n }\n ]\n },\n \"strings\": {\n \"name\": \"string.quoted.double.oxql\",\n \"begin\": \"\\\"\",\n \"end\": \"\\\"\",\n \"patterns\": [\n {\n \"name\": \"constant.character.escape.oxql\",\n \"match\": \"\\\\\\\\.\"\n }\n ]\n }\n },\n \"scopeName\": \"source.oxql\",\n \"patterns\": [\n {\n \"name\": \"keyword.control.oxql\",\n \"match\": \"\\\\b(get|join|align|filter|group_by)\\\\b\"\n },\n {\n \"name\": \"string.quoted.double.oxql\",\n \"begin\": \"\\\"\",\n \"end\": \"\\\"\",\n \"patterns\": [\n {\n \"name\": \"constant.character.escape.oxql\",\n \"match\": \"\\\\\\\\.\"\n }\n ]\n },\n {\n \"name\": \"constant.numeric.oxql\",\n \"match\": \"\\\\b\\\\d+[smhdw]\\\\b\"\n },\n {\n \"name\": \"constant.numeric.datetime.oxql\",\n \"match\": \"@\\\\d{4}-\\\\d{2}-\\\\d{2}T\\\\d{2}:\\\\d{2}:\\\\d{2}\"\n },\n {\n \"name\": \"constant.numeric.function.oxql\",\n \"match\": \"@now\\\\(\\\\)\"\n },\n {\n \"name\": \"constant.numeric.oxql\",\n \"match\": \"\\\\b\\\\d+\\\\b\"\n },\n {\n \"name\": \"comment.block.oxql\",\n \"begin\": \"/\\\\*\",\n \"end\": \"\\\\*/\"\n },\n {\n \"name\": \"comment.line.double-slash.oxql\",\n \"match\": \"//.*$\"\n },\n {\n \"name\": \"keyword.operator.oxql\",\n \"match\": \"\\\\|\"\n }\n ]\n}\n","{\n \"name\": \"Oxide Dark\",\n \"colors\": {\n \"editor.background\": \"#080F11\",\n \"editor.foreground\": \"#E7E7E8\"\n },\n \"tokenColors\": [\n {\n \"scope\": [\n \"text\",\n \"source\",\n \"variable.other.readwrite\",\n \"punctuation.definition.variable\"\n ],\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": \"punctuation\",\n \"settings\": {\n \"foreground\": \"#A1A4A5\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": [\"comment\", \"punctuation.definition.comment\"],\n \"settings\": {\n \"foreground\": \"#A1A4A5\"\n }\n },\n {\n \"scope\": [\"string\", \"punctuation.definition.string\"],\n \"settings\": {\n \"foreground\": \"#68D9A7\"\n }\n },\n {\n \"scope\": \"constant.character.escape\",\n \"settings\": {\n \"foreground\": \"#EFB7C2\"\n }\n },\n {\n \"scope\": [\n \"constant.numeric\",\n \"variable.other.constant\",\n \"entity.name.constant\",\n \"constant.language.boolean\",\n \"constant.language.false\",\n \"constant.language.true\",\n \"keyword.other.unit.user-defined\",\n \"keyword.other.unit.suffix.floating-point\"\n ],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\n \"keyword\",\n \"keyword.operator.word\",\n \"keyword.operator.new\",\n \"variable.language.super\",\n \"support.type.primitive\",\n \"storage.type\",\n \"storage.modifier\",\n \"punctuation.definition.keyword\"\n ],\n \"settings\": {\n \"foreground\": \"#C6A5EA\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": \"entity.name.tag.documentation\",\n \"settings\": {\n \"foreground\": \"#C6A5EA\"\n }\n },\n {\n \"scope\": [\n \"keyword.operator\",\n \"punctuation.accessor\",\n \"punctuation.definition.generic\",\n \"meta.function.closure punctuation.section.parameters\",\n \"punctuation.definition.tag\",\n \"punctuation.separator.key-value\"\n ],\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": [\n \"entity.name.function\",\n \"meta.function-call.method\",\n \"support.function\",\n \"support.function.misc\",\n \"variable.function\"\n ],\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": [\n \"entity.name.class\",\n \"entity.other.inherited-class\",\n \"support.class\",\n \"meta.function-call.constructor\",\n \"entity.name.struct\"\n ],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"entity.name.enum\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\"meta.enum variable.other.readwrite\", \"variable.other.enummember\"],\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": \"meta.property.object\",\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": [\"meta.type\", \"meta.type-alias\", \"support.type\", \"entity.name.type\"],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\n \"meta.annotation variable.function\",\n \"meta.annotation variable.annotation.function\",\n \"meta.annotation punctuation.definition.annotation\",\n \"meta.decorator\",\n \"punctuation.decorator\"\n ],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\"variable.parameter\", \"meta.function.parameters\"],\n \"settings\": {\n \"foreground\": \"#F39EAE\"\n }\n },\n {\n \"scope\": [\"constant.language\", \"support.function.builtin\"],\n \"settings\": {\n \"foreground\": \"#F7869B\"\n }\n },\n {\n \"scope\": \"entity.other.attribute-name.documentation\",\n \"settings\": {\n \"foreground\": \"#F7869B\"\n }\n },\n {\n \"scope\": [\"keyword.control.directive\", \"punctuation.definition.directive\"],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"punctuation.definition.typeparameters\",\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": \"entity.name.namespace\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"support.type.property-name.css\",\n \"settings\": {\n \"foreground\": \"#9DAFFA\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": [\n \"variable.language.this\",\n \"variable.language.this punctuation.definition.variable\"\n ],\n \"settings\": {\n \"foreground\": \"#F7869B\"\n }\n },\n {\n \"scope\": \"variable.object.property\",\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": [\"string.template variable\", \"string variable\"],\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": \"keyword.operator.new\",\n \"settings\": {\n \"fontStyle\": \"bold\"\n }\n },\n {\n \"scope\": \"storage.modifier.specifier.extern.cpp\",\n \"settings\": {\n \"foreground\": \"#C6A5EA\"\n }\n },\n {\n \"scope\": [\n \"entity.name.scope-resolution.template.call.cpp\",\n \"entity.name.scope-resolution.parameter.cpp\",\n \"entity.name.scope-resolution.cpp\",\n \"entity.name.scope-resolution.function.definition.cpp\"\n ],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"storage.type.class.doxygen\",\n \"settings\": {\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": [\"storage.modifier.reference.cpp\"],\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": \"meta.interpolation.cs\",\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": \"comment.block.documentation.cs\",\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": [\n \"source.css entity.other.attribute-name.class.css\",\n \"entity.other.attribute-name.parent-selector.css punctuation.definition.entity.css\"\n ],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"punctuation.separator.operator.css\",\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": \"source.css entity.other.attribute-name.pseudo-class\",\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": \"source.css constant.other.unicode-range\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"source.css variable.parameter.url\",\n \"settings\": {\n \"foreground\": \"#88DCB7\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": [\"support.type.vendored.property-name\"],\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": [\n \"source.css meta.property-value variable\",\n \"source.css meta.property-value variable.other.less\",\n \"source.css meta.property-value variable.other.less punctuation.definition.variable.less\",\n \"meta.definition.variable.scss\"\n ],\n \"settings\": {\n \"foreground\": \"#F39EAE\"\n }\n },\n {\n \"scope\": [\n \"source.css meta.property-list variable\",\n \"meta.property-list variable.other.less\",\n \"meta.property-list variable.other.less punctuation.definition.variable.less\"\n ],\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": \"keyword.other.unit.percentage.css\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"source.css meta.attribute-selector\",\n \"settings\": {\n \"foreground\": \"#88DCB7\"\n }\n },\n {\n \"scope\": [\n \"keyword.other.definition.ini\",\n \"punctuation.support.type.property-name.json\",\n \"support.type.property-name.json\",\n \"punctuation.support.type.property-name.toml\",\n \"support.type.property-name.toml\",\n \"entity.name.tag.yaml\",\n \"punctuation.support.type.property-name.yaml\",\n \"support.type.property-name.yaml\"\n ],\n \"settings\": {\n \"foreground\": \"#9DAFFA\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": [\"constant.language.json\", \"constant.language.yaml\"],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\"entity.name.type.anchor.yaml\", \"variable.other.alias.yaml\"],\n \"settings\": {\n \"foreground\": \"#EDD5A6\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": [\"support.type.property-name.table\", \"entity.name.section.group-title.ini\"],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"constant.other.time.datetime.offset.toml\",\n \"settings\": {\n \"foreground\": \"#EFB7C2\"\n }\n },\n {\n \"scope\": [\"punctuation.definition.anchor.yaml\", \"punctuation.definition.alias.yaml\"],\n \"settings\": {\n \"foreground\": \"#EFB7C2\"\n }\n },\n {\n \"scope\": \"entity.other.document.begin.yaml\",\n \"settings\": {\n \"foreground\": \"#EFB7C2\"\n }\n },\n {\n \"scope\": \"markup.changed.diff\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\n \"meta.diff.header.from-file\",\n \"meta.diff.header.to-file\",\n \"punctuation.definition.from-file.diff\",\n \"punctuation.definition.to-file.diff\"\n ],\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": \"markup.inserted.diff\",\n \"settings\": {\n \"foreground\": \"#88DCB7\"\n }\n },\n {\n \"scope\": \"markup.deleted.diff\",\n \"settings\": {\n \"foreground\": \"#F7869B\"\n }\n },\n {\n \"scope\": [\"variable.other.env\"],\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": [\"string.quoted variable.other.env\"],\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": \"support.function.builtin.gdscript\",\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": \"constant.language.gdscript\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"comment meta.annotation.go\",\n \"settings\": {\n \"foreground\": \"#F39EAE\"\n }\n },\n {\n \"scope\": \"comment meta.annotation.parameters.go\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"constant.language.go\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"variable.graphql\",\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": \"string.unquoted.alias.graphql\",\n \"settings\": {\n \"foreground\": \"#F2CDCD\"\n }\n },\n {\n \"scope\": \"constant.character.enum.graphql\",\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": \"meta.objectvalues.graphql constant.object.key.graphql string.unquoted.graphql\",\n \"settings\": {\n \"foreground\": \"#F2CDCD\"\n }\n },\n {\n \"scope\": [\n \"keyword.other.doctype\",\n \"meta.tag.sgml.doctype punctuation.definition.tag\",\n \"meta.tag.metadata.doctype entity.name.tag\",\n \"meta.tag.metadata.doctype punctuation.definition.tag\"\n ],\n \"settings\": {\n \"foreground\": \"#C6A5EA\"\n }\n },\n {\n \"scope\": [\"entity.name.tag\"],\n \"settings\": {\n \"foreground\": \"#9DAFFA\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": [\n \"text.html constant.character.entity\",\n \"text.html constant.character.entity punctuation\",\n \"constant.character.entity.xml\",\n \"constant.character.entity.xml punctuation\",\n \"constant.character.entity.js.jsx\",\n \"constant.charactger.entity.js.jsx punctuation\",\n \"constant.character.entity.tsx\",\n \"constant.character.entity.tsx punctuation\"\n ],\n \"settings\": {\n \"foreground\": \"#F7869B\"\n }\n },\n {\n \"scope\": [\"entity.other.attribute-name\"],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\n \"support.class.component\",\n \"support.class.component.jsx\",\n \"support.class.component.tsx\",\n \"support.class.component.vue\"\n ],\n \"settings\": {\n \"foreground\": \"#EFB7C2\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": [\"punctuation.definition.annotation\", \"storage.type.annotation\"],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"constant.other.enum.java\",\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": \"storage.modifier.import.java\",\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": \"comment.block.javadoc.java keyword.other.documentation.javadoc.java\",\n \"settings\": {\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": \"meta.export variable.other.readwrite.js\",\n \"settings\": {\n \"foreground\": \"#F39EAE\"\n }\n },\n {\n \"scope\": [\n \"variable.other.constant.js\",\n \"variable.other.constant.ts\",\n \"variable.other.property.js\",\n \"variable.other.property.ts\"\n ],\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": [\"variable.other.jsdoc\", \"comment.block.documentation variable.other\"],\n \"settings\": {\n \"foreground\": \"#F39EAE\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": \"storage.type.class.jsdoc\",\n \"settings\": {\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": \"support.type.object.console.js\",\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": [\"support.constant.node\", \"support.type.object.module.js\"],\n \"settings\": {\n \"foreground\": \"#C6A5EA\"\n }\n },\n {\n \"scope\": \"storage.modifier.implements\",\n \"settings\": {\n \"foreground\": \"#C6A5EA\"\n }\n },\n {\n \"scope\": [\n \"constant.language.null.js\",\n \"constant.language.null.ts\",\n \"constant.language.undefined.js\",\n \"constant.language.undefined.ts\",\n \"support.type.builtin.ts\"\n ],\n \"settings\": {\n \"foreground\": \"#C6A5EA\"\n }\n },\n {\n \"scope\": \"variable.parameter.generic\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\"keyword.declaration.function.arrow.js\", \"storage.type.function.arrow.ts\"],\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": \"punctuation.decorator.ts\",\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": [\n \"keyword.operator.expression.in.js\",\n \"keyword.operator.expression.in.ts\",\n \"keyword.operator.expression.infer.ts\",\n \"keyword.operator.expression.instanceof.js\",\n \"keyword.operator.expression.instanceof.ts\",\n \"keyword.operator.expression.is\",\n \"keyword.operator.expression.keyof.ts\",\n \"keyword.operator.expression.of.js\",\n \"keyword.operator.expression.of.ts\",\n \"keyword.operator.expression.typeof.ts\"\n ],\n \"settings\": {\n \"foreground\": \"#C6A5EA\"\n }\n },\n {\n \"scope\": \"support.function.macro.julia\",\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": \"constant.language.julia\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"constant.other.symbol.julia\",\n \"settings\": {\n \"foreground\": \"#F39EAE\"\n }\n },\n {\n \"scope\": \"text.tex keyword.control.preamble\",\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": \"text.tex support.function.be\",\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": \"constant.other.general.math.tex\",\n \"settings\": {\n \"foreground\": \"#F2CDCD\"\n }\n },\n {\n \"scope\": \"comment.line.double-dash.documentation.lua storage.type.annotation.lua\",\n \"settings\": {\n \"foreground\": \"#C6A5EA\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": [\n \"comment.line.double-dash.documentation.lua entity.name.variable.lua\",\n \"comment.line.double-dash.documentation.lua variable.lua\"\n ],\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": [\n \"heading.1.markdown punctuation.definition.heading.markdown\",\n \"heading.1.markdown\",\n \"heading.1.quarto punctuation.definition.heading.quarto\",\n \"heading.1.quarto\",\n \"markup.heading.atx.1.mdx\",\n \"markup.heading.atx.1.mdx punctuation.definition.heading.mdx\",\n \"markup.heading.setext.1.markdown\",\n \"markup.heading.heading-0.asciidoc\"\n ],\n \"settings\": {\n \"foreground\": \"#F7869B\"\n }\n },\n {\n \"scope\": [\n \"heading.2.markdown punctuation.definition.heading.markdown\",\n \"heading.2.markdown\",\n \"heading.2.quarto punctuation.definition.heading.quarto\",\n \"heading.2.quarto\",\n \"markup.heading.atx.2.mdx\",\n \"markup.heading.atx.2.mdx punctuation.definition.heading.mdx\",\n \"markup.heading.setext.2.markdown\",\n \"markup.heading.heading-1.asciidoc\"\n ],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\n \"heading.3.markdown punctuation.definition.heading.markdown\",\n \"heading.3.markdown\",\n \"heading.3.quarto punctuation.definition.heading.quarto\",\n \"heading.3.quarto\",\n \"markup.heading.atx.3.mdx\",\n \"markup.heading.atx.3.mdx punctuation.definition.heading.mdx\",\n \"markup.heading.heading-2.asciidoc\"\n ],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\n \"heading.4.markdown punctuation.definition.heading.markdown\",\n \"heading.4.markdown\",\n \"heading.4.quarto punctuation.definition.heading.quarto\",\n \"heading.4.quarto\",\n \"markup.heading.atx.4.mdx\",\n \"markup.heading.atx.4.mdx punctuation.definition.heading.mdx\",\n \"markup.heading.heading-3.asciidoc\"\n ],\n \"settings\": {\n \"foreground\": \"#88DCB7\"\n }\n },\n {\n \"scope\": [\n \"heading.5.markdown punctuation.definition.heading.markdown\",\n \"heading.5.markdown\",\n \"heading.5.quarto punctuation.definition.heading.quarto\",\n \"heading.5.quarto\",\n \"markup.heading.atx.5.mdx\",\n \"markup.heading.atx.5.mdx punctuation.definition.heading.mdx\",\n \"markup.heading.heading-4.asciidoc\"\n ],\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": [\n \"heading.6.markdown punctuation.definition.heading.markdown\",\n \"heading.6.markdown\",\n \"heading.6.quarto punctuation.definition.heading.quarto\",\n \"heading.6.quarto\",\n \"markup.heading.atx.6.mdx\",\n \"markup.heading.atx.6.mdx punctuation.definition.heading.mdx\",\n \"markup.heading.heading-5.asciidoc\"\n ],\n \"settings\": {\n \"foreground\": \"#C6A5EA\"\n }\n },\n {\n \"scope\": \"markup.bold\",\n \"settings\": {\n \"foreground\": \"#F7869B\",\n \"fontStyle\": \"bold\"\n }\n },\n {\n \"scope\": \"markup.italic\",\n \"settings\": {\n \"foreground\": \"#F7869B\"\n }\n },\n {\n \"scope\": \"markup.strikethrough\",\n \"settings\": {\n \"foreground\": \"#A6ADC8\",\n \"fontStyle\": \"strikethrough\"\n }\n },\n {\n \"scope\": [\"punctuation.definition.link\", \"markup.underline.link\"],\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": [\n \"text.html.markdown punctuation.definition.link.title\",\n \"text.html.quarto punctuation.definition.link.title\",\n \"string.other.link.title.markdown\",\n \"string.other.link.title.quarto\",\n \"markup.link\",\n \"punctuation.definition.constant.markdown\",\n \"punctuation.definition.constant.quarto\",\n \"constant.other.reference.link.markdown\",\n \"constant.other.reference.link.quarto\",\n \"markup.substitution.attribute-reference\"\n ],\n \"settings\": {\n \"foreground\": \"#B4BEFE\"\n }\n },\n {\n \"scope\": [\n \"punctuation.definition.raw.markdown\",\n \"punctuation.definition.raw.quarto\",\n \"markup.inline.raw.string.markdown\",\n \"markup.inline.raw.string.quarto\",\n \"markup.raw.block.markdown\",\n \"markup.raw.block.quarto\"\n ],\n \"settings\": {\n \"foreground\": \"#88DCB7\"\n }\n },\n {\n \"scope\": \"fenced_code.block.language\",\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": [\n \"markup.fenced_code.block punctuation.definition\",\n \"markup.raw support.asciidoc\"\n ],\n \"settings\": {\n \"foreground\": \"#A1A4A5\"\n }\n },\n {\n \"scope\": [\"markup.quote\", \"punctuation.definition.quote.begin\"],\n \"settings\": {\n \"foreground\": \"#EFB7C2\"\n }\n },\n {\n \"scope\": \"meta.separator.markdown\",\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": [\n \"punctuation.definition.list.begin.markdown\",\n \"punctuation.definition.list.begin.quarto\",\n \"markup.list.bullet\"\n ],\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": \"markup.heading.quarto\",\n \"settings\": {\n \"fontStyle\": \"bold\"\n }\n },\n {\n \"scope\": [\n \"entity.other.attribute-name.multipart.nix\",\n \"entity.other.attribute-name.single.nix\"\n ],\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": \"variable.parameter.name.nix\",\n \"settings\": {\n \"foreground\": \"#E7E7E8\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": \"meta.embedded variable.parameter.name.nix\",\n \"settings\": {\n \"foreground\": \"#B4BEFE\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": \"string.unquoted.path.nix\",\n \"settings\": {\n \"foreground\": \"#EFB7C2\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": [\"support.attribute.builtin\", \"meta.attribute.php\"],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"meta.function.parameters.php punctuation.definition.variable.php\",\n \"settings\": {\n \"foreground\": \"#F39EAE\"\n }\n },\n {\n \"scope\": \"constant.language.php\",\n \"settings\": {\n \"foreground\": \"#C6A5EA\"\n }\n },\n {\n \"scope\": \"text.html.php support.function\",\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": \"keyword.other.phpdoc.php\",\n \"settings\": {\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": [\"support.variable.magic.python\", \"meta.function-call.arguments.python\"],\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": [\"support.function.magic.python\"],\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": [\n \"variable.parameter.function.language.special.self.python\",\n \"variable.language.special.self.python\"\n ],\n \"settings\": {\n \"foreground\": \"#F7869B\"\n }\n },\n {\n \"scope\": [\"keyword.control.flow.python\", \"keyword.operator.logical.python\"],\n \"settings\": {\n \"foreground\": \"#C6A5EA\"\n }\n },\n {\n \"scope\": \"storage.type.function.python\",\n \"settings\": {\n \"foreground\": \"#C6A5EA\"\n }\n },\n {\n \"scope\": [\n \"support.token.decorator.python\",\n \"meta.function.decorator.identifier.python\"\n ],\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": [\"meta.function-call.python\"],\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": [\n \"entity.name.function.decorator.python\",\n \"punctuation.definition.decorator.python\"\n ],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"constant.character.format.placeholder.other.python\",\n \"settings\": {\n \"foreground\": \"#EFB7C2\"\n }\n },\n {\n \"scope\": [\"support.type.exception.python\", \"support.function.builtin.python\"],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\"support.type.python\"],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"constant.language.python\",\n \"settings\": {\n \"foreground\": \"#C6A5EA\"\n }\n },\n {\n \"scope\": [\"meta.indexed-name.python\", \"meta.item-access.python\"],\n \"settings\": {\n \"foreground\": \"#F39EAE\"\n }\n },\n {\n \"scope\": \"storage.type.string.python\",\n \"settings\": {\n \"foreground\": \"#88DCB7\"\n }\n },\n {\n \"scope\": \"meta.function.parameters.python\",\n \"settings\": {\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": [\n \"string.regexp punctuation.definition.string.begin\",\n \"string.regexp punctuation.definition.string.end\"\n ],\n \"settings\": {\n \"foreground\": \"#EFB7C2\"\n }\n },\n {\n \"scope\": \"keyword.control.anchor.regexp\",\n \"settings\": {\n \"foreground\": \"#C6A5EA\"\n }\n },\n {\n \"scope\": \"string.regexp.ts\",\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": [\n \"punctuation.definition.group.regexp\",\n \"keyword.other.back-reference.regexp\"\n ],\n \"settings\": {\n \"foreground\": \"#88DCB7\"\n }\n },\n {\n \"scope\": \"punctuation.definition.character-class.regexp\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"constant.other.character-class.regexp\",\n \"settings\": {\n \"foreground\": \"#EFB7C2\"\n }\n },\n {\n \"scope\": \"constant.other.character-class.range.regexp\",\n \"settings\": {\n \"foreground\": \"#F5E0DC\"\n }\n },\n {\n \"scope\": \"keyword.operator.quantifier.regexp\",\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": \"constant.character.numeric.regexp\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\n \"punctuation.definition.group.no-capture.regexp\",\n \"meta.assertion.look-ahead.regexp\",\n \"meta.assertion.negative-look-ahead.regexp\"\n ],\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": [\n \"meta.annotation.rust\",\n \"meta.annotation.rust punctuation\",\n \"meta.attribute.rust\",\n \"punctuation.definition.attribute.rust\"\n ],\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\n \"meta.attribute.rust string.quoted.double.rust\",\n \"meta.attribute.rust string.quoted.single.char.rust\"\n ],\n \"settings\": {\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": [\n \"entity.name.function.macro.rules.rust\",\n \"storage.type.module.rust\",\n \"storage.modifier.rust\",\n \"storage.type.struct.rust\",\n \"storage.type.enum.rust\",\n \"storage.type.trait.rust\",\n \"storage.type.union.rust\",\n \"storage.type.impl.rust\",\n \"storage.type.rust\",\n \"storage.type.function.rust\",\n \"storage.type.type.rust\"\n ],\n \"settings\": {\n \"foreground\": \"#C6A5EA\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": \"entity.name.type.numeric.rust\",\n \"settings\": {\n \"foreground\": \"#C6A5EA\",\n \"fontStyle\": \"\"\n }\n },\n {\n \"scope\": \"meta.generic.rust\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"entity.name.impl.rust\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"entity.name.module.rust\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"entity.name.trait.rust\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"storage.type.source.rust\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"entity.name.union.rust\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": \"meta.enum.rust storage.type.source.rust\",\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": [\n \"support.macro.rust\",\n \"meta.macro.rust support.function.rust\",\n \"entity.name.function.macro.rust\"\n ],\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": [\"storage.modifier.lifetime.rust\", \"entity.name.type.lifetime\"],\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": \"string.quoted.double.rust constant.other.placeholder.rust\",\n \"settings\": {\n \"foreground\": \"#EFB7C2\"\n }\n },\n {\n \"scope\": \"meta.function.return-type.rust meta.generic.rust storage.type.rust\",\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": \"meta.function.call.rust\",\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": \"punctuation.brackets.angle.rust\",\n \"settings\": {\n \"foreground\": \"#9DAFFA\"\n }\n },\n {\n \"scope\": \"constant.other.caps.rust\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\"meta.function.definition.rust variable.other.rust\"],\n \"settings\": {\n \"foreground\": \"#F39EAE\"\n }\n },\n {\n \"scope\": \"meta.function.call.rust variable.other.rust\",\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": \"variable.language.self.rust\",\n \"settings\": {\n \"foreground\": \"#F7869B\"\n }\n },\n {\n \"scope\": [\n \"variable.other.metavariable.name.rust\",\n \"meta.macro.metavariable.rust keyword.operator.macro.dollar.rust\"\n ],\n \"settings\": {\n \"foreground\": \"#EFB7C2\"\n }\n },\n {\n \"scope\": [\n \"comment.line.shebang\",\n \"comment.line.shebang punctuation.definition.comment\",\n \"comment.line.shebang\",\n \"punctuation.definition.comment.shebang.shell\",\n \"meta.shebang.shell\"\n ],\n \"settings\": {\n \"foreground\": \"#EFB7C2\"\n }\n },\n {\n \"scope\": \"comment.line.shebang constant.language\",\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": [\n \"meta.function-call.arguments.shell punctuation.definition.variable.shell\",\n \"meta.function-call.arguments.shell punctuation.section.interpolation\",\n \"meta.function-call.arguments.shell punctuation.definition.variable.shell\",\n \"meta.function-call.arguments.shell punctuation.section.interpolation\"\n ],\n \"settings\": {\n \"foreground\": \"#F7869B\"\n }\n },\n {\n \"scope\": \"meta.string meta.interpolation.parameter.shell variable.other.readwrite\",\n \"settings\": {\n \"foreground\": \"#EDD5A6\"\n }\n },\n {\n \"scope\": [\n \"source.shell punctuation.section.interpolation\",\n \"punctuation.definition.evaluation.backticks.shell\"\n ],\n \"settings\": {\n \"foreground\": \"#A7E0C8\"\n }\n },\n {\n \"scope\": \"entity.name.tag.heredoc.shell\",\n \"settings\": {\n \"foreground\": \"#C6A5EA\"\n }\n },\n {\n \"scope\": \"string.quoted.double.shell variable.other.normal.shell\",\n \"settings\": {\n \"foreground\": \"#E7E7E8\"\n }\n },\n {\n \"scope\": \"token.info-token\",\n \"settings\": {\n \"foreground\": \"#8BA1FF\"\n }\n },\n {\n \"scope\": \"token.warn-token\",\n \"settings\": {\n \"foreground\": \"#F5B944\"\n }\n },\n {\n \"scope\": \"token.error-token\",\n \"settings\": {\n \"foreground\": \"#FB6E88\"\n }\n },\n {\n \"scope\": \"token.debug-token\",\n \"settings\": {\n \"foreground\": \"#BE95EB\"\n }\n }\n ]\n}\n","/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport cn from 'classnames'\n\nexport type BadgeColor =\n | 'default'\n | 'destructive'\n | 'notice'\n | 'neutral'\n | 'purple'\n | 'blue'\nexport type BadgeVariant = 'default' | 'solid'\n\nexport interface BadgeProps {\n color?: BadgeColor\n className?: string\n children: React.ReactNode\n variant?: BadgeVariant\n}\n\nexport const badgeColors: Record<BadgeVariant, Record<BadgeColor, string>> = {\n default: {\n default: `ring-1 ring-inset bg-accent-secondary text-accent ring-[rgba(var(--base-green-800-rgb),0.15)]`,\n destructive: `ring-1 ring-inset bg-destructive-secondary text-destructive ring-[rgba(var(--base-red-800-rgb),0.15)]`,\n notice: `ring-1 ring-inset bg-notice-secondary text-notice ring-[rgba(var(--base-yellow-800-rgb),0.15)]`,\n neutral: `ring-1 ring-inset bg-secondary text-secondary ring-[rgba(var(--base-neutral-700-rgb),0.15)]`,\n purple: `ring-1 ring-inset bg-[var(--base-purple-200)] text-[var(--base-purple-700)] ring-[rgba(var(--base-purple-800-rgb),0.15)]`,\n blue: `ring-1 ring-inset bg-info-secondary text-info ring-[rgba(var(--base-blue-800-rgb),0.15)]`,\n },\n solid: {\n default: 'bg-accent text-inverse',\n destructive: 'bg-destructive text-inverse',\n notice: 'bg-notice text-inverse',\n neutral: 'bg-inverse-tertiary text-inverse',\n purple: 'bg-[var(--base-purple-700)] text-inverse',\n blue: 'bg-info text-inverse',\n },\n}\n\nexport const Badge = ({\n className,\n children,\n color = 'default',\n variant = 'default',\n}: BadgeProps) => {\n return (\n <span\n className={cn(\n 'ox-badge',\n `variant-${variant}`,\n 'inline-flex h-4 items-center whitespace-nowrap rounded-sm px-[3px] py-[1px] uppercase text-mono-sm',\n badgeColors[variant][color],\n className,\n )}\n >\n <span>{children}</span>\n </span>\n )\n}\n","/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport cn from 'classnames'\nimport type { MouseEventHandler } from 'react'\nimport { forwardRef } from 'react'\n\nimport { Spinner } from '../'\n\nexport const buttonSizes = ['sm', 'icon', 'base'] as const\nexport const variants = ['primary', 'secondary', 'ghost', 'danger'] as const\n\nexport type ButtonSize = typeof buttonSizes[number]\nexport type Variant = typeof variants[number]\n\nconst sizeStyle: Record<ButtonSize, string> = {\n sm: 'h-8 px-3 text-mono-sm svg:w-4',\n // meant for buttons that only contain a single icon\n icon: 'h-8 w-8 text-mono-sm svg:w-4',\n base: 'h-10 px-4 text-mono-sm svg:w-5',\n}\n\ntype ButtonStyleProps = {\n size?: ButtonSize\n variant?: Variant\n}\n\nexport const buttonStyle = ({\n size = 'base',\n variant = 'primary',\n}: ButtonStyleProps = {}) => {\n return cn(\n 'ox-button inline-flex items-center justify-center rounded align-top elevation-1 disabled:cursor-not-allowed',\n `btn-${variant}`,\n sizeStyle[size],\n variant === 'danger'\n ? 'focus:outline-destructive-secondary'\n : 'focus:outline-accent-secondary',\n )\n}\n\n/**\n * When the `disabled` prop is passed to the button we put it in a visually disabled state.\n * In that case we want to override the default mouse down and click behavior to simulate a\n * disabled state.\n */\nconst noop: MouseEventHandler<HTMLButtonElement> = (e) => {\n e.stopPropagation()\n e.preventDefault()\n}\n\nexport interface ButtonProps\n extends React.ComponentPropsWithRef<'button'>,\n ButtonStyleProps {\n innerClassName?: string\n loading?: boolean\n}\n\n// Use `forwardRef` so the ref points to the DOM element (not the React Component)\n// so it can be focused using the DOM API (eg. this.buttonRef.current.focus())\nexport const Button = forwardRef<HTMLButtonElement, ButtonProps>(\n (\n {\n type = 'button',\n children,\n size,\n variant,\n className,\n loading,\n innerClassName,\n disabled,\n onClick,\n // needs to be a spread because we sometimes get passed arbitrary <button>\n // props by the parent\n ...rest\n },\n ref,\n ) => {\n const isDisabled = disabled || loading\n return (\n <button\n className={cn(buttonStyle({ size, variant }), className, {\n 'visually-disabled': isDisabled,\n })}\n ref={ref}\n type={type}\n onMouseDown={isDisabled ? noop : undefined}\n onClick={isDisabled ? noop : onClick}\n aria-disabled={isDisabled}\n {...rest}\n >\n {loading && <Spinner className=\"absolute\" variant={variant} />}\n <span className={cn('flex items-center', innerClassName, { invisible: loading })}>\n {children}\n </span>\n </button>\n )\n },\n)\n","/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport cn from 'classnames'\nimport type { ReactNode } from 'react'\nimport { useEffect, useRef, useState } from 'react'\n\nexport const spinnerSizes = ['base', 'lg'] as const\nexport const spinnerVariants = ['primary', 'secondary', 'ghost', 'danger'] as const\nexport type SpinnerSize = typeof spinnerSizes[number]\nexport type SpinnerVariant = typeof spinnerVariants[number]\n\ninterface SpinnerProps {\n className?: string\n size?: SpinnerSize\n variant?: SpinnerVariant\n}\n\nexport const Spinner = ({\n className,\n size = 'base',\n variant = 'primary',\n}: SpinnerProps) => {\n const frameSize = size === 'lg' ? 36 : 12\n const center = size === 'lg' ? 18 : 6\n const radius = size === 'lg' ? 16 : 5\n const strokeWidth = size === 'lg' ? 3 : 2\n return (\n <svg\n width={frameSize}\n height={frameSize}\n viewBox={`0 0 ${frameSize + ' ' + frameSize}`}\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n aria-labelledby=\"Spinner\"\n className={cn('spinner', `spinner-${variant}`, `spinner-${size}`, className)}\n >\n <circle\n fill=\"none\"\n className=\"bg\"\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n cx={center}\n cy={center}\n r={radius}\n strokeOpacity={0.2}\n />\n <circle\n className=\"path\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n cx={center}\n cy={center}\n r={radius}\n />\n </svg>\n )\n}\n\ntype Props = {\n isLoading: boolean\n children?: ReactNode\n minTime?: number\n}\n\n/** Loading spinner that shows for a minimum of `minTime` */\nexport const SpinnerLoader = ({ isLoading, children = null, minTime = 500 }: Props) => {\n const [isVisible, setIsVisible] = useState(isLoading)\n const hideTimeout = useRef<NodeJS.Timeout | null>(null)\n const loadingStartTime = useRef<number>(0)\n\n useEffect(() => {\n if (isLoading) {\n setIsVisible(true)\n loadingStartTime.current = Date.now()\n } else {\n // Clear the hide timer if it's still running.\n if (hideTimeout.current) clearTimeout(hideTimeout.current)\n\n // turn the spinner off, making sure it showed for at least `minTime`\n const elapsedTime = Date.now() - loadingStartTime.current\n const remainingTime = Math.max(0, minTime - elapsedTime)\n if (remainingTime === 0) {\n setIsVisible(false) // might as well not use a timeout\n } else {\n hideTimeout.current = setTimeout(() => setIsVisible(false), remainingTime)\n }\n }\n\n return () => {\n if (hideTimeout.current) clearTimeout(hideTimeout.current)\n }\n }, [isLoading, minTime])\n\n return isVisible ? <Spinner /> : <>{children}</>\n}\n","/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport type {\n TabsContentProps,\n TabsListProps,\n TabsProps,\n TabsTriggerProps,\n} from '@radix-ui/react-tabs'\nimport { Content, List, Root, Trigger } from '@radix-ui/react-tabs'\nimport cn from 'classnames'\nimport type { SetRequired } from 'type-fest'\n\n// They don't require a default value, but without it there is no tab selected\n// by default.\nexport type TabsRootProps = SetRequired<TabsProps, 'defaultValue'>\n\nexport const Tabs = {\n Root: ({ className, ...props }: TabsRootProps) => (\n <Root {...props} className={cn('ox-tabs', className)} />\n ),\n Trigger: ({ children, className, ...props }: TabsTriggerProps) => (\n <Trigger {...props} className={cn('ox-tab', className)}>\n {/* this div needs to be here for the background on `ox-tab:hover > *` */}\n <div>{children}</div>\n </Trigger>\n ),\n List: ({ className, ...props }: TabsListProps) => (\n <List {...props} className={cn('ox-tabs-list', className)} />\n ),\n Content: ({ className, ...props }: TabsContentProps) => (\n <Content {...props} className={cn('ox-tabs-panel', className)} />\n ),\n}\n","/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport { Checkmark12Icon } from '@/icons/react'\nimport cn from 'classnames'\n\nimport { classed } from '../../utils'\n\nconst Check = () => (\n <Checkmark12Icon className=\"pointer-events-none absolute left-0.5 top-0.5 h-3 w-3 fill-current text-accent\" />\n)\n\nconst Indeterminate = classed.div`absolute w-2 h-0.5 left-1 top-[7px] bg-accent pointer-events-none`\n\nconst inputStyle = `\n appearance-none border border-default bg-default h-4 w-4 rounded-sm absolute left-0 outline-none\n disabled:cursor-not-allowed\n hover:border-hover hover:cursor-pointer\n checked:bg-accent-secondary checked:border-accent-secondary checked:hover:border-accent\n indeterminate:bg-accent-secondary indeterminate:border-accent hover:indeterminate:bg-accent-secondary-hover\n`\n\nexport type CheckboxProps = {\n indeterminate?: boolean\n children?: React.ReactNode\n className?: string\n} & Omit<React.ComponentProps<'input'>, 'type'>\n\n// ref function is from: https://davidwalsh.name/react-indeterminate. this makes\n// the native input work with indeterminate. you can't pass indeterminate as a\n// prop; it has to be set directly on the element through a ref. more elaborate\n// examples using forwardRef to allow passing ref from outside:\n// https://github.com/tannerlinsley/react-table/discussions/1989\n\n/** Checkbox component that handles label, styling, and indeterminate state */\nexport const Checkbox = ({\n indeterminate,\n children,\n className,\n ...inputProps\n}: CheckboxProps) => (\n <label className=\"inline-flex items-center\">\n <span className=\"relative h-4 w-4\">\n <input\n className={cn(inputStyle, className)}\n type=\"checkbox\"\n ref={(el) => el && (el.indeterminate = !!indeterminate)}\n {...inputProps}\n />\n {inputProps.checked && !indeterminate && <Check />}\n {indeterminate && <Indeterminate />}\n </span>\n\n {children && <span className=\"ml-2.5 text-sans-md text-secondary\">{children}</span>}\n </label>\n)\n","/*\n * This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, you can obtain one at https://mozilla.org/MPL/2.0/.\n *\n * Copyright Oxide Computer Company\n */\nimport { SelectArrows6Icon } from '@/icons/react'\nimport { FloatingPortal, flip, offset, size, useFloating } from '@floating-ui/react'\nimport { Listbox as Select } from '@headlessui/react'\nimport cn from 'classnames'\nimport type { ReactNode } from 'react'\n\nimport { SpinnerLoader } from '~/src'\n\nexport type ListboxItem<Value extends string = string> = {\n value: Value\n} & (\n | { label: string; labelString?: never }\n // labelString is required when `label` is a `ReactElement` because we\n // need need a one-line string to display in the button when the item is\n // selected.\n | { label: ReactNode; labelString: string }\n)\n\nexport interface ListboxProps<Value extends string = string> {\n // null is allowed as a default empty value, but onChange will never be called with null\n selected: Value | null\n onChange: (value: Value) => void\n items: ListboxItem<Value>[]\n placeholder?: string\n className?: string\n disabled?: boolean\n hasError?: boolean\n name?: string\n isLoading?: boolean\n}\n\nexport const Listbox = <Value extends string = string>({\n name,\n selected,\n items,\n placeholder = 'Select an option',\n className,\n onChange,\n hasError = false,\n disabled,\n isLoading = false,\n ...props\n}: ListboxProps<Value>) => {\n const { refs, floatingStyles } = useFloating({\n middleware: [\n offset(12),\n flip(),\n size({\n apply({ rects, elements }) {\n Object.assign(elements.floating.style, {\n width: `${rects.reference.width}px`,\n })\n },\n }),\n ],\n })\n\n const selectedItem = selected && items.find((i) => i.value === selected)\n const noItems = !isLoading && items.length === 0\n const isDisabled = disabled || noItems\n\n return (\n <div className={cn('relative', className)}>\n <Select\n value={selected}\n // you shouldn't ever be able to select null, but we check here anyway\n // to make TS happy so the calling code doesn't have to. note `val !==\n // null` because '' is falsy but potentially a valid value\n onChange={(val) => val !== null && onChange(val)}\n disabled={isDisabled || isLoading}\n >\n {({ open }) => (\n <>\n <Select.Button\n name={name}\n ref={refs.setReference}\n className={cn(\n `flex h-10 w-full items-center justify-between\n rounded border text-sans-md`,\n hasError\n ? 'focus-error border-error-secondary hover:border-error'\n : 'border-default hover:border-hover',\n open && 'ring-2 ring-accent-secondary',\n open && hasError && 'ring-error-secondary',\n isDisabled\n ? 'cursor-not-allowed text-disabled bg-disabled !border-default'\n : 'bg-default',\n isDisabled && hasError && '!border-error-secondary',\n )}\n {...props}\n >\n <div className=\"w-full px-3 text-left\">\n {selectedItem ? (\n // labelString is one line, which is what we need when label is a ReactNode\n selectedItem.labelString || selectedItem.label\n ) : (\n <span className=\"text-quaternary\">\n {noItems ? 'No items' : placeholder}\n </span>\n )}\n </div>\n {!isDisabled && <SpinnerLoader isLoading={isLoading} />}\n <div\n className=\"ml-3 flex h-[calc(100%-12px)] items-center border-l px-3 border-secondary\"\n aria-hidden\n >\n <SelectArrows6Icon className=\"h-[14px] w-2 text-tertiary\" />\n </div>\n </Select.Button>\n <FloatingPortal>\n <Select.Options\n ref={refs.setFloating}\n style={floatingStyles}\n className=\"ox-menu pointer-events-auto z-50 overflow-y-auto !outline-none\"\n >\n {items.map((item) => (\n <Select.Option\n key={item.value}\n value={item.value}\n className=\"relative border-b border-secondary last:border-0\"\n >\n {({ active, selected }) => (\n <div\n className={cn(\n 'ox-menu-item text-secondary',\n selected && 'is-selected',\n active && 'is-highlighted',\n )}\n >\n {item.label}\n </div>\n )}\n </Select.Option>\n ))}\n </Select.Options>\n </FloatingPortal>\n </>\n )}\n </Select>\n </div>\n )\n}\n"],"mappings":"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","names":["Content","text","attrs","jsx","jsxs","jsx","jsxs","jsx","jsxs","Content","parse","cn","createElement","jsx","jsxs","jsx","jsx","Content","cn","jsx","cn","jsx","jsxs","size","cn","cn","Fragment","jsx","jsxs","size","Content","cn","jsx","cn","jsx","jsxs","cn","cn","Fragment","jsx","jsxs","cn","selected"]}
|
package/package.json
CHANGED