{"version":3,"file":"index.mjs","names":["config","config","config","configStylisticBase","configStylisticJSXFiles","configStylisticConfigFiles"],"sources":["../../utilities/src/resolve-plugin/index.ts","../src/config-base/index.ts","../src/config-config-files/index.ts","../../utilities/src/constants/index.ts","../../utilities/src/clone/index.ts","../../utilities/src/merge-config/index.ts","../src/config-jsx-files/index.ts","../src/config-default/index.ts"],"sourcesContent":["import type { OxlintConfigPluginEntry } from '../types/index.d.ts';\nimport { fileURLToPath } from 'node:url';\n\n/**\n * Resolve an external plugin specifier to a file path.\n *\n * @example\n *\n * ```ts\n * import { resolvePlugin } from '@standard-config/oxlint';\n * import { defineConfig } from 'oxlint';\n *\n * const config = defineConfig({\n *     jsPlugins: [\n *         resolvePlugin(\n *             'react-x',\n *             '@eslint-react/eslint-plugin',\n *         ),\n *     ],\n *     rules: {\n *         'react-x/refs': 'error',\n *     },\n * });\n * ```\n */\nexport default function resolvePlugin(\n\tname: string,\n\tspecifier: string\n): OxlintConfigPluginEntry {\n\ttry {\n\t\t/* oxlint-disable-next-line eslint/no-param-reassign */\n\t\tspecifier = fileURLToPath(import.meta.resolve(specifier));\n\t} catch {}\n\n\treturn { name, specifier };\n}\n","import type { OxlintConfigBaseEntry } from '@standard-config/utilities/types';\nimport resolvePlugin from '@standard-config/utilities/resolve-plugin';\n\n/**\n * Base config entry containing stylistic rules. No overrides included.\n */\nconst config: OxlintConfigBaseEntry = {\n\tjsPlugins: [\n\t\tresolvePlugin('perfectionist', 'eslint-plugin-perfectionist'),\n\t\tresolvePlugin('stylistic', '@stylistic/eslint-plugin'),\n\t],\n\trules: {\n\t\t'perfectionist/sort-array-includes': ['error', { type: 'natural' }],\n\t\t'perfectionist/sort-exports': ['error', { type: 'natural' }],\n\t\t'perfectionist/sort-imports': [\n\t\t\t'error',\n\t\t\t{\n\t\t\t\tcustomGroups: [\n\t\t\t\t\t{\n\t\t\t\t\t\tgroupName: 'mock-side-effect',\n\t\t\t\t\t\telementNamePattern: '^.*/_*(mocks)_*/.*$',\n\t\t\t\t\t\tselector: 'side-effect',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tgroupName: 'mock',\n\t\t\t\t\t\telementNamePattern: '^.*/_*(mocks)_*/.*$',\n\t\t\t\t\t\tselector: 'import',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tgroups: [\n\t\t\t\t\t'mock-side-effect',\n\t\t\t\t\t'mock',\n\t\t\t\t\t['type-builtin', 'type-external'],\n\t\t\t\t\t'type-internal',\n\t\t\t\t\t['type-parent', 'type-sibling', 'type-index'],\n\t\t\t\t\t['value-builtin', 'value-external'],\n\t\t\t\t\t'value-internal',\n\t\t\t\t\t['value-parent', 'value-sibling', 'value-index'],\n\t\t\t\t\t'unknown',\n\t\t\t\t\t'style',\n\t\t\t\t\t'side-effect',\n\t\t\t\t\t'side-effect-style',\n\t\t\t\t],\n\t\t\t\tinternalPattern: ['^(#|@/).*'],\n\t\t\t\tnewlinesBetween: 0,\n\t\t\t\tsortSideEffects: true,\n\t\t\t\ttype: 'natural',\n\t\t\t},\n\t\t],\n\t\t'perfectionist/sort-interfaces': [\n\t\t\t'error',\n\t\t\t{\n\t\t\t\tgroups: ['index-signature', 'unknown', 'method'],\n\t\t\t\ttype: 'natural',\n\t\t\t},\n\t\t],\n\t\t'perfectionist/sort-intersection-types': ['error', { type: 'natural' }],\n\t\t'perfectionist/sort-named-exports': ['error', { type: 'natural' }],\n\t\t'perfectionist/sort-named-imports': ['error', { type: 'natural' }],\n\t\t'perfectionist/sort-object-types': [\n\t\t\t'error',\n\t\t\t{\n\t\t\t\tgroups: ['index-signature', 'unknown', 'method'],\n\t\t\t\ttype: 'natural',\n\t\t\t},\n\t\t],\n\t\t'perfectionist/sort-objects': [\n\t\t\t'error',\n\t\t\t{\n\t\t\t\ttype: 'natural',\n\t\t\t\tuseConfigurationIf: {\n\t\t\t\t\tobjectType: 'destructured',\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: 'unsorted',\n\t\t\t\tuseConfigurationIf: {\n\t\t\t\t\tobjectType: 'non-destructured',\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t\t'perfectionist/sort-union-types': [\n\t\t\t'error',\n\t\t\t{\n\t\t\t\tcustomGroups: [\n\t\t\t\t\t{\n\t\t\t\t\t\tgroupName: 'false',\n\t\t\t\t\t\telementNamePattern: '^false$',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tgroupName: 'never',\n\t\t\t\t\t\telementNamePattern: '^never$',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tgroupName: 'react',\n\t\t\t\t\t\telementNamePattern: '^react.+',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tgroups: [\n\t\t\t\t\t'react',\n\t\t\t\t\t'unknown',\n\t\t\t\t\t'tuple',\n\t\t\t\t\t'false',\n\t\t\t\t\t'nullish',\n\t\t\t\t\t'never',\n\t\t\t\t],\n\t\t\t\ttype: 'natural',\n\t\t\t},\n\t\t],\n\t\t'stylistic/lines-between-class-members': [\n\t\t\t'error',\n\t\t\t'always',\n\t\t\t{ exceptAfterSingleLine: true },\n\t\t],\n\t\t'stylistic/padding-line-between-statements': [\n\t\t\t'error',\n\t\t\t{\n\t\t\t\tblankLine: 'always',\n\t\t\t\tnext: '*',\n\t\t\t\tprev: [\n\t\t\t\t\t'block-like',\n\t\t\t\t\t'directive',\n\t\t\t\t\t'export',\n\t\t\t\t\t'function',\n\t\t\t\t\t'import',\n\t\t\t\t\t'interface',\n\t\t\t\t\t'type',\n\t\t\t\t],\n\t\t\t},\n\t\t\t{\n\t\t\t\tblankLine: 'always',\n\t\t\t\tnext: [\n\t\t\t\t\t'block-like',\n\t\t\t\t\t'directive',\n\t\t\t\t\t'export',\n\t\t\t\t\t'function',\n\t\t\t\t\t'import',\n\t\t\t\t\t'interface',\n\t\t\t\t\t'type',\n\t\t\t\t],\n\t\t\t\tprev: '*',\n\t\t\t},\n\t\t\t{\n\t\t\t\tblankLine: 'any',\n\t\t\t\tnext: ['break', 'continue', 'return', 'throw'],\n\t\t\t\tprev: 'block-like',\n\t\t\t},\n\t\t\t{\n\t\t\t\tblankLine: 'always',\n\t\t\t\tnext: '*',\n\t\t\t\tprev: ['case', 'default'],\n\t\t\t},\n\t\t\t{\n\t\t\t\tblankLine: 'never',\n\t\t\t\tnext: 'directive',\n\t\t\t\tprev: 'directive',\n\t\t\t},\n\t\t\t{\n\t\t\t\tblankLine: 'any',\n\t\t\t\tnext: 'export',\n\t\t\t\tprev: 'export',\n\t\t\t},\n\t\t\t{\n\t\t\t\tblankLine: 'never',\n\t\t\t\tnext: ['function', 'function-overload'],\n\t\t\t\tprev: 'function-overload',\n\t\t\t},\n\t\t\t{\n\t\t\t\tblankLine: 'never',\n\t\t\t\tnext: 'import',\n\t\t\t\tprev: 'import',\n\t\t\t},\n\t\t\t{\n\t\t\t\tblankLine: 'any',\n\t\t\t\tnext: 'interface',\n\t\t\t\tprev: 'interface',\n\t\t\t},\n\t\t\t{\n\t\t\t\tblankLine: 'any',\n\t\t\t\tnext: 'type',\n\t\t\t\tprev: 'type',\n\t\t\t},\n\t\t],\n\t\t'stylistic/spaced-comment': [\n\t\t\t'error',\n\t\t\t'always',\n\t\t\t{\n\t\t\t\tblock: {\n\t\t\t\t\tbalanced: true,\n\t\t\t\t},\n\t\t\t\tline: {\n\t\t\t\t\tmarkers: ['/'],\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t},\n};\n\nexport default config;\n","import type { OxlintConfigOverrideEntry } from '@standard-config/utilities/types';\n\n/**\n * Optional config entry containing stylistic rules that target config files.\n * Intended for explicit overrides.\n */\nconst config: OxlintConfigOverrideEntry = {\n\trules: {\n\t\t'perfectionist/sort-objects': [\n\t\t\t'error',\n\t\t\t{\n\t\t\t\tcustomGroups: [\n\t\t\t\t\t{\n\t\t\t\t\t\tgroupName: 'extends',\n\t\t\t\t\t\telementNamePattern: '^extends$',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tgroupName: 'files',\n\t\t\t\t\t\telementNamePattern: '^files$',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tgroupName: 'ignores',\n\t\t\t\t\t\telementNamePattern: '^(ignores|ignorePatterns)$',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tgroupName: 'name',\n\t\t\t\t\t\telementNamePattern: '^(name|groupName)$',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tgroupName: 'overrides',\n\t\t\t\t\t\telementNamePattern: '^overrides$',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tgroupName: 'parser',\n\t\t\t\t\t\telementNamePattern: '^parser$',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tgroupName: 'plugins',\n\t\t\t\t\t\telementNamePattern: '^plugins$',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tgroupName: 'rules',\n\t\t\t\t\t\telementNamePattern: '^rules$',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tgroupName: 'test',\n\t\t\t\t\t\telementNamePattern: '^(test|tests)$',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tgroups: [\n\t\t\t\t\t'name',\n\t\t\t\t\t'files',\n\t\t\t\t\t'extends',\n\t\t\t\t\t'ignores',\n\t\t\t\t\t'plugins',\n\t\t\t\t\t'parser',\n\t\t\t\t\t'test',\n\t\t\t\t\t'unknown',\n\t\t\t\t\t'rules',\n\t\t\t\t\t'overrides',\n\t\t\t\t],\n\t\t\t\tnewlinesBetween: 0,\n\t\t\t\ttype: 'natural',\n\t\t\t},\n\t\t],\n\t},\n};\n\nexport default config;\n","import type {\n\tOxlintConfigGlobSet,\n\tOxlintRuleSettings,\n} from '../types/index.d.ts';\n\nexport const GLOB_SET_CONFIG_FILES: OxlintConfigGlobSet = [\n\t'**/*.config.{js,ts,cjs,cts,mjs,mts}',\n\t'**/*.setup.{js,ts,cjs,cts,mjs,mts}',\n] as const;\n\nexport const GLOB_SET_JSX_FILES: OxlintConfigGlobSet = [\n\t'**/*.{jsx,tsx}',\n] as const;\n\nexport const GLOB_SET_TEST_FILES: OxlintConfigGlobSet = [\n\t'**/*.test.{js,jsx,ts,tsx,cjs,cts,mjs,mts}',\n\t'**/*.test-d.{ts,cts,mts}',\n] as const;\n\nexport const GLOB_SET_TYPE_DEFINITIONS: OxlintConfigGlobSet = [\n\t'**/*.d.{ts,cts,mts}',\n\t'**/*.test-d.{ts,cts,mts}',\n] as const;\n\nexport const RESTRICTED_TYPES: OxlintRuleSettings<'typescript/no-restricted-types'>['types'] =\n\t{\n\t\t'[]': true,\n\t\t'null': true,\n\t\t'object': true,\n\t} as const;\n","export default function clone<T>(value: T): T {\n\ttry {\n\t\t/* oxlint-disable-next-line eslint/no-param-reassign */\n\t\tvalue = structuredClone(value);\n\t} catch {}\n\n\treturn value;\n}\n","/* oxlint-disable eslint/no-unsafe-member-access */\n\nimport type { OxlintConfig } from 'oxlint';\nimport type {\n\tOxlintConfigBaseEntry,\n\tOxlintConfigOverrideEntry,\n} from '../types/index.ts';\nimport clone from '../clone/index.ts';\n\nexport default function mergeConfig(\n\tbaseConfig: OxlintConfig,\n\textensionConfig:\n\t\tOxlintConfig | OxlintConfigBaseEntry | OxlintConfigOverrideEntry\n): OxlintConfig {\n\tif (!(isObject(baseConfig) && isObject(extensionConfig))) {\n\t\tthrow new TypeError(\n\t\t\t'Standard Config error: expected config to be an object'\n\t\t);\n\t}\n\n\tconst result = clone(baseConfig);\n\n\tfor (const [key, value] of Object.entries(\n\t\tclone(extensionConfig)\n\t) as ReadonlyArray<[keyof OxlintConfig, unknown]>) {\n\t\tif (value === undefined || value === null) {\n\t\t\t/* oxlint-disable-next-line typescript/no-dynamic-delete */\n\t\t\tdelete result[key];\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (result[key] === undefined) {\n\t\t\t(result as any)[key] = value;\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (isArray(value) && isArray(result[key])) {\n\t\t\tconst values = [...new Set([...result[key], ...value])];\n\n\t\t\t(result as any)[key] =\n\t\t\t\tkey === 'plugins'\n\t\t\t\t\t? (values as ReadonlyArray<string>).toSorted()\n\t\t\t\t\t: values;\n\n\t\t\tcontinue;\n\t\t}\n\n\t\t(result as any)[key] = { ...result[key], ...value };\n\t}\n\n\treturn result;\n}\n\nfunction isArray(value: unknown): value is unknown[] {\n\treturn Array.isArray(value);\n}\n\nfunction isObject(value: unknown): value is Record<string, unknown> {\n\treturn typeof value === 'object' && value !== null;\n}\n","import type { OxlintConfigOverrideEntry } from '@standard-config/utilities/types';\n\n/**\n * Optional config entry containing stylistic rules that target JSX files.\n * Intended for explicit overrides.\n */\nconst config: OxlintConfigOverrideEntry = {\n\trules: {\n\t\t'perfectionist/sort-jsx-props': [\n\t\t\t'error',\n\t\t\t{\n\t\t\t\tcustomGroups: [\n\t\t\t\t\t{\n\t\t\t\t\t\tgroupName: 'as',\n\t\t\t\t\t\telementNamePattern: '^as$',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tgroupName: 'callback',\n\t\t\t\t\t\telementNamePattern: '^on.+',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tgroupName: 'children',\n\t\t\t\t\t\telementNamePattern: '^children$',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tgroupName: 'key',\n\t\t\t\t\t\telementNamePattern: '^key$',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tgroupName: 'ref',\n\t\t\t\t\t\telementNamePattern: '^ref$',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tgroupName: 'unsafe',\n\t\t\t\t\t\telementNamePattern: '^dangerously.+',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tgroups: [\n\t\t\t\t\t'key',\n\t\t\t\t\t'ref',\n\t\t\t\t\t'as',\n\t\t\t\t\t'unknown',\n\t\t\t\t\t'shorthand-prop',\n\t\t\t\t\t'callback',\n\t\t\t\t\t'children',\n\t\t\t\t\t'unsafe',\n\t\t\t\t],\n\t\t\t\ttype: 'unsorted',\n\t\t\t},\n\t\t],\n\t},\n};\n\nexport default config;\n","import type { OxlintConfig } from 'oxlint';\nimport {\n\tGLOB_SET_CONFIG_FILES,\n\tGLOB_SET_JSX_FILES,\n} from '@standard-config/utilities/constants';\nimport mergeConfig from '@standard-config/utilities/merge-config';\nimport configStylisticBase from '../config-base/index.ts';\nimport configStylisticConfigFiles from '../config-config-files/index.ts';\nimport configStylisticJSXFiles from '../config-jsx-files/index.ts';\n\n/**\n * Resolved Standard Config entry containing stylistic rules.\n */\nconst config: OxlintConfig = mergeConfig(configStylisticBase, {\n\toverrides: [\n\t\t{\n\t\t\tfiles: GLOB_SET_JSX_FILES,\n\t\t\t...configStylisticJSXFiles,\n\t\t},\n\t\t{\n\t\t\tfiles: GLOB_SET_CONFIG_FILES,\n\t\t\t...configStylisticConfigFiles,\n\t\t},\n\t],\n});\n\nexport default config;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAyBA,SAAwB,cACvB,MACA,WAC0B;CAC1B,IAAI;EAEH,YAAY,cAAc,OAAO,KAAK,QAAQ,SAAS,CAAC;CACzD,QAAQ,CAAC;CAET,OAAO;EAAE;EAAM;CAAU;AAC1B;;;;;;AC7BA,MAAM,SAAgC;CACrC,WAAW,CACV,cAAc,iBAAiB,6BAA6B,GAC5D,cAAc,aAAa,0BAA0B,CACtD;CACA,OAAO;EACN,qCAAqC,CAAC,SAAS,EAAE,MAAM,UAAU,CAAC;EAClE,8BAA8B,CAAC,SAAS,EAAE,MAAM,UAAU,CAAC;EAC3D,8BAA8B,CAC7B,SACA;GACC,cAAc,CACb;IACC,WAAW;IACX,oBAAoB;IACpB,UAAU;GACX,GACA;IACC,WAAW;IACX,oBAAoB;IACpB,UAAU;GACX,CACD;GACA,QAAQ;IACP;IACA;IACA,CAAC,gBAAgB,eAAe;IAChC;IACA;KAAC;KAAe;KAAgB;IAAY;IAC5C,CAAC,iBAAiB,gBAAgB;IAClC;IACA;KAAC;KAAgB;KAAiB;IAAa;IAC/C;IACA;IACA;IACA;GACD;GACA,iBAAiB,CAAC,WAAW;GAC7B,iBAAiB;GACjB,iBAAiB;GACjB,MAAM;EACP,CACD;EACA,iCAAiC,CAChC,SACA;GACC,QAAQ;IAAC;IAAmB;IAAW;GAAQ;GAC/C,MAAM;EACP,CACD;EACA,yCAAyC,CAAC,SAAS,EAAE,MAAM,UAAU,CAAC;EACtE,oCAAoC,CAAC,SAAS,EAAE,MAAM,UAAU,CAAC;EACjE,oCAAoC,CAAC,SAAS,EAAE,MAAM,UAAU,CAAC;EACjE,mCAAmC,CAClC,SACA;GACC,QAAQ;IAAC;IAAmB;IAAW;GAAQ;GAC/C,MAAM;EACP,CACD;EACA,8BAA8B;GAC7B;GACA;IACC,MAAM;IACN,oBAAoB,EACnB,YAAY,eACb;GACD;GACA;IACC,MAAM;IACN,oBAAoB,EACnB,YAAY,mBACb;GACD;EACD;EACA,kCAAkC,CACjC,SACA;GACC,cAAc;IACb;KACC,WAAW;KACX,oBAAoB;IACrB;IACA;KACC,WAAW;KACX,oBAAoB;IACrB;IACA;KACC,WAAW;KACX,oBAAoB;IACrB;GACD;GACA,QAAQ;IACP;IACA;IACA;IACA;IACA;IACA;GACD;GACA,MAAM;EACP,CACD;EACA,yCAAyC;GACxC;GACA;GACA,EAAE,uBAAuB,KAAK;EAC/B;EACA,6CAA6C;GAC5C;GACA;IACC,WAAW;IACX,MAAM;IACN,MAAM;KACL;KACA;KACA;KACA;KACA;KACA;KACA;IACD;GACD;GACA;IACC,WAAW;IACX,MAAM;KACL;KACA;KACA;KACA;KACA;KACA;KACA;IACD;IACA,MAAM;GACP;GACA;IACC,WAAW;IACX,MAAM;KAAC;KAAS;KAAY;KAAU;IAAO;IAC7C,MAAM;GACP;GACA;IACC,WAAW;IACX,MAAM;IACN,MAAM,CAAC,QAAQ,SAAS;GACzB;GACA;IACC,WAAW;IACX,MAAM;IACN,MAAM;GACP;GACA;IACC,WAAW;IACX,MAAM;IACN,MAAM;GACP;GACA;IACC,WAAW;IACX,MAAM,CAAC,YAAY,mBAAmB;IACtC,MAAM;GACP;GACA;IACC,WAAW;IACX,MAAM;IACN,MAAM;GACP;GACA;IACC,WAAW;IACX,MAAM;IACN,MAAM;GACP;GACA;IACC,WAAW;IACX,MAAM;IACN,MAAM;GACP;EACD;EACA,4BAA4B;GAC3B;GACA;GACA;IACC,OAAO,EACN,UAAU,KACX;IACA,MAAM,EACL,SAAS,CAAC,GAAG,EACd;GACD;EACD;CACD;AACD;;;;;;;AC9LA,MAAMA,WAAoC,EACzC,OAAO,EACN,8BAA8B,CAC7B,SACA;CACC,cAAc;EACb;GACC,WAAW;GACX,oBAAoB;EACrB;EACA;GACC,WAAW;GACX,oBAAoB;EACrB;EACA;GACC,WAAW;GACX,oBAAoB;EACrB;EACA;GACC,WAAW;GACX,oBAAoB;EACrB;EACA;GACC,WAAW;GACX,oBAAoB;EACrB;EACA;GACC,WAAW;GACX,oBAAoB;EACrB;EACA;GACC,WAAW;GACX,oBAAoB;EACrB;EACA;GACC,WAAW;GACX,oBAAoB;EACrB;EACA;GACC,WAAW;GACX,oBAAoB;EACrB;CACD;CACA,QAAQ;EACP;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACD;CACA,iBAAiB;CACjB,MAAM;AACP,CACD,EACD,EACD;;;AC7DA,MAAa,wBAA6C,CACzD,uCACA,oCACD;AAEA,MAAa,qBAA0C,CACtD,gBACD;;;ACZA,SAAwB,MAAS,OAAa;CAC7C,IAAI;EAEH,QAAQ,gBAAgB,KAAK;CAC9B,QAAQ,CAAC;CAET,OAAO;AACR;;;ACEA,SAAwB,YACvB,YACA,iBAEe;CACf,IAAI,EAAE,SAAS,UAAU,KAAK,SAAS,eAAe,IACrD,MAAM,IAAI,UACT,wDACD;CAGD,MAAM,SAAS,MAAM,UAAU;CAE/B,KAAK,MAAM,CAAC,KAAK,UAAU,OAAO,QACjC,MAAM,eAAe,CACtB,GAAmD;EAClD,IAAI,UAAU,KAAA,KAAa,UAAU,MAAM;GAE1C,OAAO,OAAO;GACd;EACD;EAEA,IAAI,OAAO,SAAS,KAAA,GAAW;GAC9B,OAAgB,OAAO;GACvB;EACD;EAEA,IAAI,QAAQ,KAAK,KAAK,QAAQ,OAAO,IAAI,GAAG;GAC3C,MAAM,SAAS,CAAC,mBAAG,IAAI,IAAI,CAAC,GAAG,OAAO,MAAM,GAAG,KAAK,CAAC,CAAC;GAEtD,OAAgB,OACf,QAAQ,YACJ,OAAiC,SAAS,IAC3C;GAEJ;EACD;EAEA,OAAgB,OAAO;GAAE,GAAG,OAAO;GAAM,GAAG;EAAM;CACnD;CAEA,OAAO;AACR;AAEA,SAAS,QAAQ,OAAoC;CACpD,OAAO,MAAM,QAAQ,KAAK;AAC3B;AAEA,SAAS,SAAS,OAAkD;CACnE,OAAO,OAAO,UAAU,YAAY,UAAU;AAC/C;;;;;;;ACrDA,MAAMC,WAAoC,EACzC,OAAO,EACN,gCAAgC,CAC/B,SACA;CACC,cAAc;EACb;GACC,WAAW;GACX,oBAAoB;EACrB;EACA;GACC,WAAW;GACX,oBAAoB;EACrB;EACA;GACC,WAAW;GACX,oBAAoB;EACrB;EACA;GACC,WAAW;GACX,oBAAoB;EACrB;EACA;GACC,WAAW;GACX,oBAAoB;EACrB;EACA;GACC,WAAW;GACX,oBAAoB;EACrB;CACD;CACA,QAAQ;EACP;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACD;CACA,MAAM;AACP,CACD,EACD,EACD;;;;;;ACtCA,MAAMC,WAAuB,YAAYC,QAAqB,EAC7D,WAAW,CACV;CACC,OAAO;CACP,GAAGC;AACJ,GACA;CACC,OAAO;CACP,GAAGC;AACJ,CACD,EACD,CAAC"}