@arbor-css/postcss 0.0.62 → 0.0.64

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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAQA,OAAgB,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAI1C,MAAM,WAAW,kBAAkB;IAClC;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;CACb;AAUD,wBAAgB,WAAW,CAAC,OAAO,GAAE,kBAAuB,GAAG,MAAM,CA4NpE;yBA5Ne,WAAW;;;AAoO3B,eAAO,MAAM,QAAQ,oBAAc,CAAC;AAEpC,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAQA,OAAgB,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAG1C,MAAM,WAAW,kBAAkB;IAClC;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;CACb;AAwID,wBAAgB,WAAW,CAAC,OAAO,GAAE,kBAAuB,GAAG,MAAM,CAsLpE;yBAtLe,WAAW;;;AA8L3B,eAAO,MAAM,QAAQ,oBAAc,CAAC;AAEpC,eAAe,WAAW,CAAC"}
package/dist/index.js CHANGED
@@ -3,9 +3,107 @@ import { generateStylesheet } from '@arbor-css/core';
3
3
  import { isFunction, isFunctionParamWithMeta, isMixin, } from '@arbor-css/functions';
4
4
  import { stat } from 'node:fs/promises';
5
5
  import postcss from 'postcss';
6
- import { getColorPropEntries } from './colorSystemProps.js';
7
6
  import { loadConfig } from './loadConfig.js';
8
7
  const PLUGIN_NAME = 'arbor-css';
8
+ function parsePrefixedCall(input, namePrefix) {
9
+ const source = input.trim();
10
+ if (!source.startsWith(namePrefix))
11
+ return null;
12
+ let nameEnd = namePrefix.length;
13
+ while (nameEnd < source.length && /[\w-]/.test(source[nameEnd])) {
14
+ nameEnd += 1;
15
+ }
16
+ if (nameEnd === namePrefix.length)
17
+ return null;
18
+ const name = source.slice(0, nameEnd);
19
+ if (nameEnd === source.length) {
20
+ return { name, args: [] };
21
+ }
22
+ if (source[nameEnd] !== '(' || source[source.length - 1] !== ')') {
23
+ return null;
24
+ }
25
+ let depth = 0;
26
+ for (let i = nameEnd; i < source.length; i += 1) {
27
+ const char = source[i];
28
+ if (char === '(')
29
+ depth += 1;
30
+ if (char === ')')
31
+ depth -= 1;
32
+ if (depth === 0 && i < source.length - 1) {
33
+ return null;
34
+ }
35
+ if (depth < 0)
36
+ return null;
37
+ }
38
+ if (depth !== 0)
39
+ return null;
40
+ return { name, args: splitCallArguments(source.slice(nameEnd + 1, -1)) };
41
+ }
42
+ function splitCallArguments(input) {
43
+ const args = [];
44
+ let depth = 0;
45
+ let current = '';
46
+ for (const char of input) {
47
+ if (char === '(') {
48
+ depth += 1;
49
+ current += char;
50
+ continue;
51
+ }
52
+ if (char === ')') {
53
+ depth -= 1;
54
+ current += char;
55
+ continue;
56
+ }
57
+ if (char === ',' && depth === 0) {
58
+ args.push(current.trim());
59
+ current = '';
60
+ continue;
61
+ }
62
+ current += char;
63
+ }
64
+ args.push(current.trim());
65
+ return args;
66
+ }
67
+ function computeFunctionCallValue({ input, config, node, helper, }) {
68
+ const functionNamePrefix = config.preset.context.tokenPrefixes.functionNamePrefix;
69
+ const parsedCall = parsePrefixedCall(input, functionNamePrefix);
70
+ if (!parsedCall)
71
+ return input;
72
+ const fn = Object.values(config.preset.functions ?? {}).find((f) => isFunction(f) && f.name === parsedCall.name);
73
+ if (!fn) {
74
+ helper.result.warn(`[arbor-css] Unknown function: ${parsedCall.name}`, {
75
+ plugin: PLUGIN_NAME,
76
+ node,
77
+ });
78
+ return input;
79
+ }
80
+ const paramValues = {};
81
+ let invalid = false;
82
+ fn.parameters.forEach((param, i) => {
83
+ const paramName = isFunctionParamWithMeta(param) ? param.name : param;
84
+ const fallback = isFunctionParamWithMeta(param) ? param.fallback?.toString() : undefined;
85
+ const required = fallback === undefined;
86
+ const providedValue = parsedCall.args[i];
87
+ const value = providedValue === undefined || providedValue === '' ?
88
+ fallback
89
+ : providedValue;
90
+ if (value === undefined && required) {
91
+ invalid = true;
92
+ helper.result.warn(`[arbor-css] Missing argument for parameter "${paramName}" in function call: ${input}`, {
93
+ plugin: PLUGIN_NAME,
94
+ node,
95
+ });
96
+ return;
97
+ }
98
+ if (value !== undefined) {
99
+ paramValues[paramName] = value;
100
+ }
101
+ });
102
+ if (invalid) {
103
+ return input;
104
+ }
105
+ return fn.compute(paramValues);
106
+ }
9
107
  export function ArborPlugin(options = {}) {
10
108
  const { configFile, cwd = process.cwd() } = options;
11
109
  let cachedConfig = null;
@@ -79,75 +177,12 @@ export function ArborPlugin(options = {}) {
79
177
  // Inline custom function calls: --fn-name(arg1, arg2, ...)
80
178
  if (decl.value.includes(functionNamePrefix)) {
81
179
  const fnCallRegex = new RegExp(`(${escapeRegExp(functionNamePrefix)}[\\w-]+)\\(((?:[^()]|\\([^()]*\\))*)\\)`, 'g');
82
- decl.value = decl.value.replace(fnCallRegex, (match, fnName, argsStr) => {
83
- const fn = Object.values(config.preset.functions ?? {}).find((f) => isFunction(f) && f.name === fnName);
84
- if (!fn) {
85
- helper.result.warn(`[arbor-css] Unknown function: ${fnName}`, {
86
- plugin: PLUGIN_NAME,
87
- node: decl,
88
- });
89
- return match;
90
- }
91
- const args = argsStr
92
- .split(',')
93
- .map((a) => a.trim())
94
- .filter(Boolean);
95
- const paramValues = {};
96
- let invalid = false;
97
- fn.parameters.forEach((param, i) => {
98
- const paramName = isFunctionParamWithMeta(param) ? param.name : param;
99
- const required = !isFunctionParamWithMeta(param) || param.fallback === undefined;
100
- if (i >= args.length && required) {
101
- invalid = true;
102
- helper.result.warn(`[arbor-css] Missing argument for parameter "${paramName}" in function call: ${match}`, {
103
- plugin: PLUGIN_NAME,
104
- node: decl,
105
- });
106
- return;
107
- }
108
- paramValues[paramName] = args[i] ?? '';
109
- });
110
- console.log(`[arbor-css] Inlining function call: ${match} with values`, paramValues);
111
- if (invalid) {
112
- return '/* Invalid function call */';
113
- }
114
- return fn.compute(paramValues);
115
- });
116
- }
117
- const colorPropEntries = getColorPropEntries(config.preset);
118
- const systemAssignmentEntry = colorPropEntries[decl.prop];
119
- if (systemAssignmentEntry) {
120
- // Make sure we haven't already processed this assignment
121
- if (decl.value.toString().includes(`var(${systemAssignmentEntry.final})`)) {
122
- return;
123
- }
124
- // Inject system color props before this declaration
125
- decl.cloneBefore({
126
- prop: systemAssignmentEntry.applied,
127
- value: decl.value,
128
- raws: {},
129
- });
130
- decl.cloneBefore({
131
- prop: systemAssignmentEntry.final,
132
- value: `var(${systemAssignmentEntry.applied})`,
133
- raws: {},
134
- });
135
- decl.cloneBefore({
136
- prop: systemAssignmentEntry.opacity,
137
- value: '1',
138
- raws: {},
139
- });
140
- for (const extra of systemAssignmentEntry.extras ?? []) {
141
- decl.cloneBefore({
142
- prop: extra.prop,
143
- value: extra.value === 'applied' ?
144
- `var(${systemAssignmentEntry.applied})`
145
- : extra.value,
146
- raws: {},
147
- });
148
- }
149
- // Point the actual CSS property at the system final var for runtime flexibility
150
- decl.value = `var(${systemAssignmentEntry.final})`;
180
+ decl.value = decl.value.replace(fnCallRegex, (match) => computeFunctionCallValue({
181
+ input: match,
182
+ config,
183
+ node: decl,
184
+ helper,
185
+ }));
151
186
  }
152
187
  },
153
188
  async AtRule(atRule, helper) {
@@ -156,10 +191,15 @@ export function ArborPlugin(options = {}) {
156
191
  const config = await getConfig(helper);
157
192
  if (!config)
158
193
  return;
159
- const mixinName = atRule.params.trim();
194
+ const mixinApplyCall = atRule.params.trim();
160
195
  const mixinNamePrefix = config.preset.context.tokenPrefixes.mixinNamePrefix;
161
- if (!mixinName.startsWith(mixinNamePrefix))
196
+ if (!mixinApplyCall.startsWith(mixinNamePrefix))
162
197
  return;
198
+ const parsedMixinCall = parsePrefixedCall(mixinApplyCall, mixinNamePrefix);
199
+ if (!parsedMixinCall)
200
+ return;
201
+ const mixinName = parsedMixinCall.name;
202
+ const mixinArgs = parsedMixinCall.args;
163
203
  const mixin = Object.values(config.preset.mixins ?? {}).find((m) => isMixin(m) && m.name === mixinName);
164
204
  if (!mixin) {
165
205
  helper.result.warn(`[arbor-css] Unknown mixin: ${mixinName}`, {
@@ -168,9 +208,43 @@ export function ArborPlugin(options = {}) {
168
208
  });
169
209
  return;
170
210
  }
211
+ const mixinParamValues = {};
212
+ let invalidMixinCall = false;
213
+ mixin.parameters.forEach((param, i) => {
214
+ const paramName = isFunctionParamWithMeta(param) ? param.name : param;
215
+ const fallback = isFunctionParamWithMeta(param) ? param.fallback?.toString() : undefined;
216
+ const required = fallback === undefined;
217
+ const providedValue = mixinArgs[i];
218
+ const value = providedValue === undefined || providedValue === '' ?
219
+ fallback
220
+ : providedValue;
221
+ if (value === undefined && required) {
222
+ invalidMixinCall = true;
223
+ helper.result.warn(`[arbor-css] Missing argument for parameter "${paramName}" in mixin apply: @apply ${mixinApplyCall}`, {
224
+ plugin: PLUGIN_NAME,
225
+ node: atRule,
226
+ });
227
+ return;
228
+ }
229
+ if (value !== undefined) {
230
+ mixinParamValues[paramName] = computeFunctionCallValue({
231
+ input: value,
232
+ config,
233
+ node: atRule,
234
+ helper,
235
+ });
236
+ }
237
+ });
238
+ if (invalidMixinCall) {
239
+ return;
240
+ }
171
241
  const declarations = mixin.inline();
172
242
  for (const decl of declarations) {
173
- atRule.cloneBefore(postcss.decl({ prop: decl.prop, value: printEquation(decl.value) }));
243
+ let value = printEquation(decl.value);
244
+ for (const [paramName, paramValue] of Object.entries(mixinParamValues)) {
245
+ value = value.replaceAll(`var(${paramName})`, paramValue);
246
+ }
247
+ atRule.cloneBefore(postcss.decl({ prop: decl.prop, value }));
174
248
  }
175
249
  atRule.remove();
176
250
  },
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -53,7 +53,7 @@ it('inlines @apply for an Arbor mixin', async () => {
53
53
  {
54
54
  prop: 'box-shadow',
55
55
  value: css `
56
- ${'var(--_-system-ring), var(--_-system-shadow)'}
56
+ ${'var(--_-system-ring), var(--_-system-shadow)'}
57
57
  `,
58
58
  },
59
59
  ],
@@ -144,4 +144,72 @@ it('inlines function calls in declaration values', async () => {
144
144
  expect(result.css).not.toContain('--fn-double(');
145
145
  expect(result.css).toContain('4');
146
146
  });
147
+ it('does not implicitly rewrite color declarations into ref system vars', async () => {
148
+ mockLoadConfig.mockResolvedValue(makeConfigResult({
149
+ functions: {},
150
+ mixins: {},
151
+ $: undefined,
152
+ }));
153
+ const plugin = ArborPlugin({ cwd: '/fake' });
154
+ const result = await postcss([plugin]).process(`.btn { color: red; background: blue; }`, { from: undefined });
155
+ expect(result.css).toContain('color: red');
156
+ expect(result.css).toContain('background: blue');
157
+ expect(result.css).not.toContain('--ref-');
158
+ });
159
+ it('inlines @apply mixin arguments into parameterized mixin declarations', async () => {
160
+ const createToken = createTokenFactory({ tokenPrefix: '--mx-' });
161
+ const createMixin = createMixinFactory({ namePrefix: '--mx-', createToken });
162
+ const fg = createMixin('fg', {
163
+ parameters: ['--color'],
164
+ definition: (css, { parameters: [color] }) => ({
165
+ color: css `${color}`,
166
+ }),
167
+ });
168
+ mockLoadConfig.mockResolvedValue(makeConfigResult({ functions: {}, mixins: { fg }, $: undefined }));
169
+ const plugin = ArborPlugin({ cwd: '/fake' });
170
+ const result = await postcss([plugin]).process(`.btn { @apply --mx-fg(var(--m-color-main-ink)); }`, { from: undefined });
171
+ expect(result.css).toContain('color: var(--m-color-main-ink)');
172
+ expect(result.css).not.toContain('var(--color)');
173
+ expect(result.css).not.toContain('@apply');
174
+ });
175
+ it('inlines function results passed as @apply mixin arguments', async () => {
176
+ const createToken = createTokenFactory({ tokenPrefix: '--mx-' });
177
+ const createMixin = createMixinFactory({ namePrefix: '--mx-', createToken });
178
+ const createFunction = createFunctionFactory({ namePrefix: '--fn-' });
179
+ const fade = createFunction('fade', {
180
+ description: 'Writes alpha onto a color',
181
+ parameters: ['--color', '--opacity'],
182
+ definition: (css, color, opacity) => css `oklch(from ${color} l c h / ${opacity})`,
183
+ });
184
+ const fg = createMixin('fg', {
185
+ parameters: ['--color'],
186
+ definition: (css, { parameters: [color] }) => ({
187
+ color: css `${color}`,
188
+ }),
189
+ });
190
+ mockLoadConfig.mockResolvedValue(makeConfigResult({ functions: { fade }, mixins: { fg }, $: undefined }));
191
+ const plugin = ArborPlugin({ cwd: '/fake' });
192
+ const result = await postcss([plugin]).process(`.btn { @apply --mx-fg(--fn-fade(var(--m-color-main-ink), 42%)); }`, { from: undefined });
193
+ expect(result.css).toContain('color: oklch(from var(--m-color-main-ink) l c h / 42%)');
194
+ expect(result.css).not.toContain('--fn-fade(');
195
+ expect(result.css).not.toContain('@apply');
196
+ });
197
+ it('warns when @apply omits a required mixin argument', async () => {
198
+ const createToken = createTokenFactory({ tokenPrefix: '--mx-' });
199
+ const createMixin = createMixinFactory({ namePrefix: '--mx-', createToken });
200
+ const fg = createMixin('fg', {
201
+ parameters: ['--color'],
202
+ definition: (css, { parameters: [color] }) => ({
203
+ color: css `${color}`,
204
+ }),
205
+ });
206
+ mockLoadConfig.mockResolvedValue(makeConfigResult({ functions: {}, mixins: { fg }, $: undefined }));
207
+ const plugin = ArborPlugin({ cwd: '/fake' });
208
+ const result = await postcss([plugin]).process(`.btn { @apply --mx-fg; }`, { from: undefined });
209
+ const warnings = result.messages
210
+ .filter((m) => m.type === 'warning')
211
+ .map((m) => m.text);
212
+ expect(warnings.some((w) => w.includes('Missing argument'))).toBe(true);
213
+ expect(result.css).toContain('@apply --mx-fg');
214
+ });
147
215
  //# sourceMappingURL=plugin.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.test.js","sourceRoot":"","sources":["../src/plugin.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin.test.js","sourceRoot":"","sources":["../src/plugin.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arbor-css/postcss",
3
- "version": "0.0.62",
3
+ "version": "0.0.64",
4
4
  "type": "module",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -23,11 +23,11 @@
23
23
  "dependencies": {
24
24
  "jiti": "^2.4.2",
25
25
  "postcss": "^8.5.4",
26
- "@arbor-css/calc": "0.0.62",
27
- "@arbor-css/core": "0.0.62",
28
- "@arbor-css/functions": "0.0.62",
29
- "@arbor-css/tokens": "0.0.62",
30
- "@arbor-css/globals": "0.0.62"
26
+ "@arbor-css/calc": "0.0.64",
27
+ "@arbor-css/core": "0.0.64",
28
+ "@arbor-css/tokens": "0.0.64",
29
+ "@arbor-css/globals": "0.0.64",
30
+ "@arbor-css/functions": "0.0.64"
31
31
  },
32
32
  "devDependencies": {
33
33
  "typescript": "^6.0.3",
@@ -1,21 +0,0 @@
1
- import { ArborPreset } from '@arbor-css/core';
2
- export interface ColorPropEntry {
3
- /** CSS custom property name for the applied color */
4
- applied: string;
5
- /** CSS custom property name for the final color (used as the actual property value) */
6
- final: string;
7
- /** CSS custom property name for opacity */
8
- opacity: string;
9
- /** Extra custom properties to inject alongside the standard three */
10
- extras?: Array<{
11
- prop: string;
12
- /** 'applied' = use the resolved color value; otherwise treat as a literal CSS value */
13
- value: string;
14
- }>;
15
- }
16
- /**
17
- * Maps CSS color-related property names to the Arbor system props they should populate.
18
- * Mirrors the behavior of the `classes` package color rules.
19
- */
20
- export declare function getColorPropEntries(preset: ArborPreset): Record<string, ColorPropEntry>;
21
- //# sourceMappingURL=colorSystemProps.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"colorSystemProps.d.ts","sourceRoot":"","sources":["../src/colorSystemProps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,MAAM,WAAW,cAAc;IAC9B,qDAAqD;IACrD,OAAO,EAAE,MAAM,CAAC;IAChB,uFAAuF;IACvF,KAAK,EAAE,MAAM,CAAC;IACd,2CAA2C;IAC3C,OAAO,EAAE,MAAM,CAAC;IAChB,qEAAqE;IACrE,MAAM,CAAC,EAAE,KAAK,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,uFAAuF;QACvF,KAAK,EAAE,MAAM,CAAC;KACd,CAAC,CAAC;CACH;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAClC,MAAM,EAAE,WAAW,GACjB,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CA0ChC"}
@@ -1,49 +0,0 @@
1
- /**
2
- * Maps CSS color-related property names to the Arbor system props they should populate.
3
- * Mirrors the behavior of the `classes` package color rules.
4
- */
5
- export function getColorPropEntries(preset) {
6
- if (!preset.$?.system)
7
- return {};
8
- const systemProps = preset.$.system;
9
- return {
10
- color: {
11
- applied: systemProps.ref.fg.applied.name,
12
- final: systemProps.ref.fg.$root.name,
13
- opacity: systemProps.ref.fg.opacity.name,
14
- },
15
- 'background-color': {
16
- applied: systemProps.ref.bg.applied.name,
17
- final: systemProps.ref.bg.$root.name,
18
- opacity: systemProps.ref.bg.opacity.name,
19
- extras: [{ prop: systemProps.ref.bg.contrast.name, value: 'applied' }],
20
- },
21
- background: {
22
- applied: systemProps.ref.bg.applied.name,
23
- final: systemProps.ref.bg.$root.name,
24
- opacity: systemProps.ref.bg.opacity.name,
25
- extras: [{ prop: systemProps.ref.bg.contrast.name, value: 'applied' }],
26
- },
27
- 'border-color': {
28
- applied: systemProps.ref.borderColor[''].applied.name,
29
- final: systemProps.ref.borderColor[''].$root.name,
30
- opacity: systemProps.ref.borderColor[''].opacity.name,
31
- },
32
- fill: {
33
- applied: systemProps.ref.fill.applied.name,
34
- final: systemProps.ref.fill.$root.name,
35
- opacity: systemProps.ref.fill.opacity.name,
36
- },
37
- stroke: {
38
- applied: systemProps.ref.stroke.applied.name,
39
- final: systemProps.ref.stroke.$root.name,
40
- opacity: systemProps.ref.stroke.opacity.name,
41
- },
42
- 'accent-color': {
43
- applied: systemProps.ref.accent.applied.name,
44
- final: systemProps.ref.accent.$root.name,
45
- opacity: systemProps.ref.accent.opacity.name,
46
- },
47
- };
48
- }
49
- //# sourceMappingURL=colorSystemProps.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"colorSystemProps.js","sourceRoot":"","sources":["../src/colorSystemProps.ts"],"names":[],"mappings":"AAiBA;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAClC,MAAmB;IAEnB,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM;QAAE,OAAO,EAAE,CAAC;IACjC,MAAM,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;IACpC,OAAO;QACN,KAAK,EAAE;YACN,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI;YACxC,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI;YACpC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI;SACxC;QACD,kBAAkB,EAAE;YACnB,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI;YACxC,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI;YACpC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI;YACxC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;SACtE;QACD,UAAU,EAAE;YACX,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI;YACxC,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI;YACpC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI;YACxC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;SACtE;QACD,cAAc,EAAE;YACf,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI;YACrD,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI;YACjD,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI;SACrD;QACD,IAAI,EAAE;YACL,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI;YAC1C,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI;YACtC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI;SAC1C;QACD,MAAM,EAAE;YACP,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;YAC5C,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI;YACxC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;SAC5C;QACD,cAAc,EAAE;YACf,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;YAC5C,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI;YACxC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;SAC5C;KACD,CAAC;AACH,CAAC"}