@cck-ui/core 0.24.0 → 0.26.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.
Files changed (36) hide show
  1. package/cjs/components/anchor/anchor.cjs +430 -0
  2. package/cjs/components/anchor/anchor.cjs.map +1 -0
  3. package/cjs/components/anchor/anchor.module.cjs +7 -0
  4. package/cjs/components/anchor/anchor.module.cjs.map +1 -0
  5. package/cjs/components/anchor/index.cjs +13 -0
  6. package/cjs/components/anchor/index.cjs.map +1 -0
  7. package/cjs/components/portal/index.cjs +12 -0
  8. package/cjs/components/portal/index.cjs.map +1 -0
  9. package/cjs/components/portal/portal.cjs +116 -0
  10. package/cjs/components/portal/portal.cjs.map +1 -0
  11. package/cjs/components/text/text.cjs.map +1 -1
  12. package/cjs/index.cjs +91 -85
  13. package/cjs/index.cjs.map +1 -1
  14. package/esm/components/anchor/anchor.mjs +428 -0
  15. package/esm/components/anchor/anchor.mjs.map +1 -0
  16. package/esm/components/anchor/anchor.module.mjs +7 -0
  17. package/esm/components/anchor/anchor.module.mjs.map +1 -0
  18. package/esm/components/anchor/index.mjs +10 -0
  19. package/esm/components/anchor/index.mjs.map +1 -0
  20. package/esm/components/portal/index.mjs +9 -0
  21. package/esm/components/portal/index.mjs.map +1 -0
  22. package/esm/components/portal/portal.mjs +116 -0
  23. package/esm/components/portal/portal.mjs.map +1 -0
  24. package/esm/components/text/text.mjs.map +1 -1
  25. package/esm/index.mjs +6 -2
  26. package/esm/index.mjs.map +1 -1
  27. package/lib/components/anchor/anchor.types.d.ts +16 -0
  28. package/lib/components/anchor/index.d.ts +6 -0
  29. package/lib/components/index.d.ts +2 -0
  30. package/lib/components/portal/index.d.ts +5 -0
  31. package/lib/components/portal/portal.types.d.ts +21 -0
  32. package/package.json +1 -1
  33. package/styles/anchor.css +56 -0
  34. package/styles/anchor.layer.css +57 -0
  35. package/styles.css +109 -52
  36. package/styles.layer.css +109 -52
@@ -0,0 +1,430 @@
1
+ "use client";
2
+ const require_runtime = require("../../_virtual/_rolldown/runtime.cjs");
3
+ const require_config_provider_context = require("../../core/config-provider/config-provider.context.cjs");
4
+ const require_export_helper = require("../../_virtual/_/plugin-vue/export-helper.cjs");
5
+ const require_use_component_props = require("../../core/config-provider/use-component-props/use-component-props.cjs");
6
+ const require_anchor_module = require("./anchor.module.cjs");
7
+ const require_index = require("../text/index.cjs");
8
+ let vue = require("vue");
9
+ let clsx = require("clsx");
10
+ clsx = require_runtime.__toESM(clsx);
11
+ //#region packages/@cck-ui/core/src/components/anchor/anchor.vue
12
+ const _sfc_main = /*@__PURE__*/ (0, vue.defineComponent)({
13
+ name: "CAnchor",
14
+ __name: "anchor",
15
+ props: {
16
+ underline: {
17
+ type: String,
18
+ required: false
19
+ },
20
+ __staticSelector: {
21
+ type: String,
22
+ required: false
23
+ },
24
+ size: {
25
+ type: null,
26
+ required: false
27
+ },
28
+ lineClamp: {
29
+ type: Number,
30
+ required: false
31
+ },
32
+ truncate: {
33
+ type: [String, Boolean],
34
+ required: false
35
+ },
36
+ inline: {
37
+ type: Boolean,
38
+ required: false
39
+ },
40
+ inherit: {
41
+ type: Boolean,
42
+ required: false
43
+ },
44
+ gradient: {
45
+ type: Object,
46
+ required: false
47
+ },
48
+ textWrap: {
49
+ type: String,
50
+ required: false
51
+ },
52
+ className: {
53
+ type: String,
54
+ required: false
55
+ },
56
+ style: {
57
+ type: [
58
+ Object,
59
+ Function,
60
+ Array
61
+ ],
62
+ required: false,
63
+ skipCheck: true
64
+ },
65
+ __vars: {
66
+ type: null,
67
+ required: false
68
+ },
69
+ __size: {
70
+ type: String,
71
+ required: false
72
+ },
73
+ hiddenFrom: {
74
+ type: null,
75
+ required: false
76
+ },
77
+ visibleFrom: {
78
+ type: null,
79
+ required: false
80
+ },
81
+ lightHidden: {
82
+ type: Boolean,
83
+ required: false
84
+ },
85
+ darkHidden: {
86
+ type: Boolean,
87
+ required: false
88
+ },
89
+ mod: {
90
+ type: [
91
+ Object,
92
+ String,
93
+ Array
94
+ ],
95
+ required: false
96
+ },
97
+ m: {
98
+ type: null,
99
+ required: false
100
+ },
101
+ my: {
102
+ type: null,
103
+ required: false
104
+ },
105
+ mx: {
106
+ type: null,
107
+ required: false
108
+ },
109
+ mt: {
110
+ type: null,
111
+ required: false
112
+ },
113
+ mb: {
114
+ type: null,
115
+ required: false
116
+ },
117
+ ms: {
118
+ type: null,
119
+ required: false
120
+ },
121
+ me: {
122
+ type: null,
123
+ required: false
124
+ },
125
+ mis: {
126
+ type: null,
127
+ required: false
128
+ },
129
+ mie: {
130
+ type: null,
131
+ required: false
132
+ },
133
+ ml: {
134
+ type: null,
135
+ required: false
136
+ },
137
+ mr: {
138
+ type: null,
139
+ required: false
140
+ },
141
+ p: {
142
+ type: null,
143
+ required: false
144
+ },
145
+ py: {
146
+ type: null,
147
+ required: false
148
+ },
149
+ px: {
150
+ type: null,
151
+ required: false
152
+ },
153
+ pt: {
154
+ type: null,
155
+ required: false
156
+ },
157
+ pb: {
158
+ type: null,
159
+ required: false
160
+ },
161
+ ps: {
162
+ type: null,
163
+ required: false
164
+ },
165
+ pe: {
166
+ type: null,
167
+ required: false
168
+ },
169
+ pis: {
170
+ type: null,
171
+ required: false
172
+ },
173
+ pie: {
174
+ type: null,
175
+ required: false
176
+ },
177
+ pl: {
178
+ type: null,
179
+ required: false
180
+ },
181
+ pr: {
182
+ type: null,
183
+ required: false
184
+ },
185
+ bd: {
186
+ type: null,
187
+ required: false
188
+ },
189
+ bdrs: {
190
+ type: null,
191
+ required: false
192
+ },
193
+ bg: {
194
+ type: null,
195
+ required: false
196
+ },
197
+ c: {
198
+ type: null,
199
+ required: false
200
+ },
201
+ opacity: {
202
+ type: [
203
+ String,
204
+ Object,
205
+ Number
206
+ ],
207
+ required: false
208
+ },
209
+ ff: {
210
+ type: [String, Object],
211
+ required: false
212
+ },
213
+ fz: {
214
+ type: null,
215
+ required: false
216
+ },
217
+ fw: {
218
+ type: null,
219
+ required: false
220
+ },
221
+ lts: {
222
+ type: null,
223
+ required: false
224
+ },
225
+ ta: {
226
+ type: [String, Object],
227
+ required: false
228
+ },
229
+ lh: {
230
+ type: null,
231
+ required: false
232
+ },
233
+ fs: {
234
+ type: null,
235
+ required: false
236
+ },
237
+ tt: {
238
+ type: [String, Object],
239
+ required: false
240
+ },
241
+ td: {
242
+ type: null,
243
+ required: false
244
+ },
245
+ w: {
246
+ type: null,
247
+ required: false
248
+ },
249
+ miw: {
250
+ type: null,
251
+ required: false
252
+ },
253
+ maw: {
254
+ type: null,
255
+ required: false
256
+ },
257
+ h: {
258
+ type: null,
259
+ required: false
260
+ },
261
+ mih: {
262
+ type: null,
263
+ required: false
264
+ },
265
+ mah: {
266
+ type: null,
267
+ required: false
268
+ },
269
+ bgsz: {
270
+ type: null,
271
+ required: false
272
+ },
273
+ bgp: {
274
+ type: null,
275
+ required: false
276
+ },
277
+ bgr: {
278
+ type: null,
279
+ required: false
280
+ },
281
+ bga: {
282
+ type: null,
283
+ required: false
284
+ },
285
+ pos: {
286
+ type: [String, Object],
287
+ required: false
288
+ },
289
+ top: {
290
+ type: null,
291
+ required: false
292
+ },
293
+ left: {
294
+ type: null,
295
+ required: false
296
+ },
297
+ bottom: {
298
+ type: null,
299
+ required: false
300
+ },
301
+ right: {
302
+ type: null,
303
+ required: false
304
+ },
305
+ inset: {
306
+ type: null,
307
+ required: false
308
+ },
309
+ display: {
310
+ type: null,
311
+ required: false
312
+ },
313
+ flex: {
314
+ type: null,
315
+ required: false
316
+ },
317
+ unstyled: {
318
+ type: Boolean,
319
+ required: false
320
+ },
321
+ variant: {
322
+ type: null,
323
+ required: false
324
+ },
325
+ classNames: {
326
+ type: null,
327
+ required: false
328
+ },
329
+ styles: {
330
+ type: null,
331
+ required: false
332
+ },
333
+ vars: {
334
+ type: Function,
335
+ required: false
336
+ },
337
+ attributes: {
338
+ type: null,
339
+ required: false
340
+ }
341
+ },
342
+ setup(__props, { expose: __expose }) {
343
+ const theme = require_config_provider_context.useCckTheme();
344
+ const _root = (0, vue.ref)();
345
+ const attrs = (0, vue.useAttrs)();
346
+ const rawProps = __props;
347
+ const defaultProps = { underline: "hover" };
348
+ const props = require_use_component_props.useComponentProps({
349
+ component: "CAnchor",
350
+ defaultProps,
351
+ props: rawProps
352
+ });
353
+ const knownProps = [
354
+ "underline",
355
+ "className",
356
+ "style",
357
+ "unstyled",
358
+ "mod"
359
+ ];
360
+ const modList = (0, vue.computed)(() => [{ underline: props.value.underline }]);
361
+ const mergedClassName = (0, vue.computed)(() => (0, clsx.default)({ [require_anchor_module.default.root]: !props.value.unstyled }, props.value.className));
362
+ function resolveStyleValue(style) {
363
+ if (typeof style === "function") return style(theme.value);
364
+ return style;
365
+ }
366
+ const mergedStyle = (0, vue.computed)(() => {
367
+ const styleFromProps = props.value.style;
368
+ const styleFromAttrs = attrs.style;
369
+ const resolvedPropsStyle = resolveStyleValue(styleFromProps);
370
+ return resolveStyleValue(styleFromAttrs) ?? resolvedPropsStyle;
371
+ });
372
+ const mergedAttrs = (0, vue.computed)(() => {
373
+ const others = {};
374
+ const propsValue = props.value;
375
+ for (const key in propsValue) if (!knownProps.includes(key)) others[key] = propsValue[key];
376
+ const userMod = props.value.mod;
377
+ const mergedMod = [...Array.isArray(userMod) ? userMod : [userMod].filter(Boolean), ...modList.value || []];
378
+ return {
379
+ ...others,
380
+ mod: mergedMod
381
+ };
382
+ });
383
+ __expose({ root: (0, vue.computed)(() => _root.value?.root ?? null) });
384
+ const __returned__ = {
385
+ theme,
386
+ _root,
387
+ attrs,
388
+ rawProps,
389
+ defaultProps,
390
+ props,
391
+ knownProps,
392
+ modList,
393
+ mergedClassName,
394
+ resolveStyleValue,
395
+ mergedStyle,
396
+ mergedAttrs,
397
+ get CText() {
398
+ return require_index.CText;
399
+ }
400
+ };
401
+ Object.defineProperty(__returned__, "__isScriptSetup", {
402
+ enumerable: false,
403
+ value: true
404
+ });
405
+ return __returned__;
406
+ }
407
+ });
408
+ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
409
+ return (0, vue.openBlock)(), (0, vue.createBlock)($setup["CText"], (0, vue.mergeProps)({
410
+ "__static-selector": "Anchor",
411
+ ref: "_root",
412
+ tag: "a"
413
+ }, $setup.mergedAttrs, {
414
+ "class-name": $setup.mergedClassName,
415
+ style: $setup.mergedStyle,
416
+ unstyled: $setup.props.unstyled
417
+ }), {
418
+ default: (0, vue.withCtx)(() => [(0, vue.renderSlot)(_ctx.$slots, "default")]),
419
+ _: 3
420
+ }, 16, [
421
+ "class-name",
422
+ "style",
423
+ "unstyled"
424
+ ]);
425
+ }
426
+ var anchor_default = /*#__PURE__*/ require_export_helper.default(_sfc_main, [["render", _sfc_render], ["__file", "/home/runner/work/cck-ui/cck-ui/packages/@cck-ui/core/src/components/anchor/anchor.vue"]]);
427
+ //#endregion
428
+ exports.default = anchor_default;
429
+
430
+ //# sourceMappingURL=anchor.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"anchor.cjs","names":[],"sources":["../../../src/components/anchor/anchor.vue"],"sourcesContent":["<template>\n <c-text\n __static-selector=\"Anchor\"\n ref=\"_root\"\n tag=\"a\"\n v-bind=\"mergedAttrs\"\n :class-name=\"mergedClassName\"\n :style=\"mergedStyle\"\n :unstyled=\"props.unstyled\"\n >\n <slot />\n </c-text>\n</template>\n\n<script setup lang=\"ts\">\nimport cx from 'clsx'\nimport { computed, ref, useAttrs } from 'vue'\nimport { CStyleProp, useCckTheme, useComponentProps } from '../../core'\nimport { AnchorProps } from './anchor.types'\nimport { CText } from '../text'\nimport classes from './anchor.module.css'\n\nconst theme = useCckTheme()\n\ndefineOptions({\n name: 'CAnchor',\n})\n\nconst _root = ref<InstanceType<typeof CText> | null>()\n\nconst attrs = useAttrs()\n\nconst rawProps = defineProps<AnchorProps>()\n\nconst defaultProps = { underline: 'hover' } satisfies Partial<AnchorProps>\n\nconst props = useComponentProps({\n component: 'CAnchor',\n defaultProps,\n props: rawProps,\n})\n\nconst knownProps = ['underline', 'className', 'style', 'unstyled', 'mod']\n\nconst modList = computed(() => [\n {\n underline: props.value.underline,\n },\n])\n\nconst mergedClassName = computed(() =>\n cx(\n {\n [classes.root]: !props.value.unstyled,\n },\n props.value.className\n )\n)\n\nfunction resolveStyleValue(style: any) {\n if (typeof style === 'function') {\n return style(theme.value)\n }\n return style\n}\n\nconst mergedStyle = computed(() => {\n const styleFromProps = props.value.style\n const styleFromAttrs = attrs.style\n\n const resolvedPropsStyle = resolveStyleValue(styleFromProps)\n const resolvedAttrsStyle = resolveStyleValue(styleFromAttrs)\n\n const result = (resolvedAttrsStyle ?? resolvedPropsStyle) as CStyleProp\n return result\n})\n\nconst mergedAttrs = computed(() => {\n const others: Record<string, any> = {}\n const propsValue = props.value\n for (const key in propsValue) {\n if (!knownProps.includes(key)) {\n others[key] = propsValue[key as keyof typeof propsValue]\n }\n }\n const userMod = props.value.mod\n const mergedMod = [\n ...(Array.isArray(userMod) ? userMod : [userMod].filter(Boolean)),\n ...(modList.value || []),\n ]\n return { ...others, mod: mergedMod }\n})\n\ndefineExpose({\n root: computed(() => _root.value?.root ?? null),\n})\n</script>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsBA,MAAM,QAAQ,gCAAA,YAAY;EAM1B,MAAM,SAAA,GAAA,IAAA,IAAA,CAA+C;EAErD,MAAM,SAAA,GAAA,IAAA,SAAA,CAAiB;EAEvB,MAAM,WAAW;EAEjB,MAAM,eAAe,EAAE,WAAW,QAAQ;EAE1C,MAAM,QAAQ,4BAAA,kBAAkB;GAC9B,WAAW;GACX;GACA,OAAO;EACT,CAAC;EAED,MAAM,aAAa;GAAC;GAAa;GAAa;GAAS;GAAY;EAAK;EAExE,MAAM,WAAA,GAAA,IAAA,SAAA,OAAyB,CAC7B,EACE,WAAW,MAAM,MAAM,UACzB,CACF,CAAC;EAED,MAAM,mBAAA,GAAA,IAAA,SAAA,QAAA,GAAA,KAAA,QAAA,CAEF,GACG,sBAAA,QAAQ,OAAO,CAAC,MAAM,MAAM,SAC/B,GACA,MAAM,MAAM,SACd,CACF;EAEA,SAAS,kBAAkB,OAAY;GACrC,IAAI,OAAO,UAAU,YACnB,OAAO,MAAM,MAAM,KAAK;GAE1B,OAAO;EACT;EAEA,MAAM,eAAA,GAAA,IAAA,SAAA,OAA6B;GACjC,MAAM,iBAAiB,MAAM,MAAM;GACnC,MAAM,iBAAiB,MAAM;GAE7B,MAAM,qBAAqB,kBAAkB,cAAc;GAI3D,OAH2B,kBAAkB,cAE7B,KAAsB;EAExC,CAAC;EAED,MAAM,eAAA,GAAA,IAAA,SAAA,OAA6B;GACjC,MAAM,SAA8B,CAAC;GACrC,MAAM,aAAa,MAAM;GACzB,KAAK,MAAM,OAAO,YAChB,IAAI,CAAC,WAAW,SAAS,GAAG,GAC1B,OAAO,OAAO,WAAW;GAG7B,MAAM,UAAU,MAAM,MAAM;GAC5B,MAAM,YAAY,CAChB,GAAI,MAAM,QAAQ,OAAO,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC,OAAO,OAAO,GAC/D,GAAI,QAAQ,SAAS,CAAC,CACxB;GACA,OAAO;IAAE,GAAG;IAAQ,KAAK;GAAU;EACrC,CAAC;EAED,SAAa,EACX,OAAA,GAAA,IAAA,SAAA,OAAqB,MAAM,OAAO,QAAQ,IAAI,EAChD,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;mDApFU,OAAA,WAAA,GAAA,IAAA,WAAA,CAAA;EATP,qBAAkB;EAClB,KAAI;EACJ,KAAI;IACI,OAAA,aAAW;EAClB,cAAY,OAAA;EACZ,OAAO,OAAA;EACP,UAAU,OAAA,MAAM;;kCAET,EAAA,GAAA,IAAA,WAAA,CAAA,KAAA,QAAA,SAAA,CAAA,CAAA"}
@@ -0,0 +1,7 @@
1
+ "use client";
2
+ //#region packages/@cck-ui/core/src/components/anchor/anchor.module.css
3
+ var anchor_module_default = { "root": "m_213348fa" };
4
+ //#endregion
5
+ exports.default = anchor_module_default;
6
+
7
+ //# sourceMappingURL=anchor.module.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"anchor.module.cjs","names":[],"sources":["../../../src/components/anchor/anchor.module.css"],"sourcesContent":[".root {\n color: var(--c-color-anchor);\n text-decoration: none;\n appearance: none;\n border: none;\n display: inline;\n padding: 0;\n margin: 0;\n background-color: transparent;\n cursor: pointer;\n\n &:where([data-underline='hover']) {\n @mixin hover {\n text-decoration: underline;\n }\n }\n\n &:where([data-underline='not-hover']) {\n text-decoration: underline;\n\n @mixin hover {\n text-decoration: none;\n }\n }\n\n &:where([data-underline='always']) {\n text-decoration: underline;\n }\n\n &:where([data-variant='gradient']) {\n &,\n &:hover {\n text-decoration: none;\n }\n }\n\n &:where([data-line-clamp]) {\n display: -webkit-box;\n }\n}\n"],"mappings":";;AAAA,IAAA,wBAAe,EAAC,QAAO,aAAY"}
@@ -0,0 +1,13 @@
1
+ "use client";
2
+ const require_install = require("../../core/utils/vue/install.cjs");
3
+ const require_statics = require("../../core/utils/vue/statics.cjs");
4
+ const require_anchor_module = require("./anchor.module.cjs");
5
+ const require_anchor = require("./anchor.cjs");
6
+ //#region packages/@cck-ui/core/src/components/anchor/index.ts
7
+ const AnchorWithStatic = require_statics.withPropsFactory(require_statics.withExtend(require_statics.withClasses(require_anchor.default, require_anchor_module.default)));
8
+ const CAnchor = require_install.withInstall(AnchorWithStatic);
9
+ //#endregion
10
+ exports.CAnchor = CAnchor;
11
+ exports.default = CAnchor;
12
+
13
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","names":["withPropsFactory","withExtend","withClasses","Anchor","classes","withInstall"],"sources":["../../../src/components/anchor/index.ts"],"sourcesContent":["import {\n SFCWithInstallAndClasses,\n withClasses,\n withExtend,\n withInstall,\n withPropsFactory,\n} from '../../core'\n\nimport classes from './anchor.module.css'\nimport Anchor from './anchor.vue'\n\nconst AnchorWithStatic = withPropsFactory(withExtend(withClasses(Anchor, classes)))\n\nexport const CAnchor: SFCWithInstallAndClasses<typeof Anchor, typeof classes> =\n withInstall(AnchorWithStatic)\n\nexport default CAnchor\n\nexport * from './anchor.types'\n"],"mappings":";;;;;;AAWA,MAAM,mBAAmBA,gBAAAA,iBAAiBC,gBAAAA,WAAWC,gBAAAA,YAAYC,eAAAA,SAAQC,sBAAAA,OAAO,CAAC,CAAC;AAElF,MAAa,UACXC,gBAAAA,YAAY,gBAAgB"}
@@ -0,0 +1,12 @@
1
+ "use client";
2
+ const require_install = require("../../core/utils/vue/install.cjs");
3
+ const require_statics = require("../../core/utils/vue/statics.cjs");
4
+ const require_portal = require("./portal.cjs");
5
+ //#region packages/@cck-ui/core/src/components/portal/index.ts
6
+ const PortalWithStatic = require_statics.withPropsFactory(require_statics.withExtend(require_portal.default));
7
+ const CPortal = require_install.withInstall(PortalWithStatic);
8
+ //#endregion
9
+ exports.CPortal = CPortal;
10
+ exports.default = CPortal;
11
+
12
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","names":["withPropsFactory","withExtend","Portal","withInstall"],"sources":["../../../src/components/portal/index.ts"],"sourcesContent":["import { SFCWithInstall, withExtend, withInstall, withPropsFactory } from '../../core'\nimport Portal from './portal.vue'\n\nconst PortalWithStatic = withPropsFactory(withExtend(Portal))\n\nexport const CPortal: SFCWithInstall<typeof Portal> = withInstall(PortalWithStatic)\n\nexport default CPortal\n\nexport * from './portal.types'\n"],"mappings":";;;;;AAGA,MAAM,mBAAmBA,gBAAAA,iBAAiBC,gBAAAA,WAAWC,eAAAA,OAAM,CAAC;AAE5D,MAAa,UAAyCC,gBAAAA,YAAY,gBAAgB"}
@@ -0,0 +1,116 @@
1
+ "use client";
2
+ const require_export_helper = require("../../_virtual/_/plugin-vue/export-helper.cjs");
3
+ const require_use_component_props = require("../../core/config-provider/use-component-props/use-component-props.cjs");
4
+ let vue = require("vue");
5
+ //#region packages/@cck-ui/core/src/components/portal/portal.vue
6
+ const _sfc_main = /*@__PURE__*/ (0, vue.defineComponent)({
7
+ name: "CPortal",
8
+ __name: "portal",
9
+ props: {
10
+ target: {
11
+ type: null,
12
+ required: false
13
+ },
14
+ reuseTargetNode: {
15
+ type: Boolean,
16
+ required: false
17
+ }
18
+ },
19
+ setup(__props, { expose: __expose }) {
20
+ const attrs = (0, vue.useAttrs)();
21
+ const rawProps = __props;
22
+ const defaultProps = { reuseTargetNode: true };
23
+ const props = require_use_component_props.useComponentProps({
24
+ component: "CPortal",
25
+ defaultProps,
26
+ props: rawProps
27
+ });
28
+ const container = (0, vue.ref)(null);
29
+ let createdNode = null;
30
+ function createPortalNode(nodeAttrs) {
31
+ const node = document.createElement("div");
32
+ node.setAttribute("data-portal", "true");
33
+ const className = nodeAttrs.class || nodeAttrs.className;
34
+ if (className) node.classList.add(...String(className).split(" ").filter(Boolean));
35
+ if (nodeAttrs.style) Object.assign(node.style, nodeAttrs.style);
36
+ if (nodeAttrs.id) node.setAttribute("id", nodeAttrs.id);
37
+ Object.keys(nodeAttrs).forEach((key) => {
38
+ if (![
39
+ "class",
40
+ "className",
41
+ "style",
42
+ "id"
43
+ ].includes(key)) node.setAttribute(key, nodeAttrs[key]);
44
+ });
45
+ return node;
46
+ }
47
+ function getTargetNode() {
48
+ const target = props.value.target;
49
+ const reuseTargetNode = props.value.reuseTargetNode;
50
+ if (target) {
51
+ if (typeof target === "string") {
52
+ const found = document.querySelector(target);
53
+ if (found) return found;
54
+ const node = createPortalNode(attrs);
55
+ document.body.appendChild(node);
56
+ createdNode = node;
57
+ return node;
58
+ }
59
+ return target;
60
+ }
61
+ if (reuseTargetNode) {
62
+ const existing = document.querySelector("[data-cck-shared-portal]");
63
+ if (existing) return existing;
64
+ const node = createPortalNode(attrs);
65
+ node.setAttribute("data-cck-shared-portal", "true");
66
+ document.body.appendChild(node);
67
+ createdNode = node;
68
+ return node;
69
+ }
70
+ const node = createPortalNode(attrs);
71
+ document.body.appendChild(node);
72
+ createdNode = node;
73
+ return node;
74
+ }
75
+ (0, vue.onMounted)(() => {
76
+ container.value = getTargetNode();
77
+ });
78
+ (0, vue.onBeforeUnmount)(() => {
79
+ if (createdNode && !createdNode.hasAttribute("data-cck-shared-portal")) {
80
+ if (createdNode.parentNode) createdNode.parentNode.removeChild(createdNode);
81
+ }
82
+ });
83
+ __expose({ root: container });
84
+ const __returned__ = {
85
+ attrs,
86
+ rawProps,
87
+ defaultProps,
88
+ props,
89
+ container,
90
+ get createdNode() {
91
+ return createdNode;
92
+ },
93
+ set createdNode(v) {
94
+ createdNode = v;
95
+ },
96
+ createPortalNode,
97
+ getTargetNode
98
+ };
99
+ Object.defineProperty(__returned__, "__isScriptSetup", {
100
+ enumerable: false,
101
+ value: true
102
+ });
103
+ return __returned__;
104
+ }
105
+ });
106
+ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
107
+ return $setup.container ? ((0, vue.openBlock)(), (0, vue.createBlock)(vue.Teleport, {
108
+ key: 0,
109
+ to: $setup.container
110
+ }, [(0, vue.renderSlot)(_ctx.$slots, "default")], 8, ["to"])) : (0, vue.createCommentVNode)("v-if", true);
111
+ }
112
+ var portal_default = /*#__PURE__*/ require_export_helper.default(_sfc_main, [["render", _sfc_render], ["__file", "/home/runner/work/cck-ui/cck-ui/packages/@cck-ui/core/src/components/portal/portal.vue"]]);
113
+ //#endregion
114
+ exports.default = portal_default;
115
+
116
+ //# sourceMappingURL=portal.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"portal.cjs","names":[],"sources":["../../../src/components/portal/portal.vue"],"sourcesContent":["<template>\n <Teleport v-if=\"container\" :to=\"container\">\n <slot />\n </Teleport>\n</template>\n\n<script setup lang=\"ts\">\nimport { onBeforeUnmount, onMounted, ref, useAttrs } from 'vue'\nimport { PortalProps } from './portal.types'\nimport { useComponentProps } from '../../core'\n\ndefineOptions({\n name: 'CPortal',\n})\n\nconst attrs = useAttrs()\n\nconst rawProps = defineProps<PortalProps>()\n\nconst defaultProps = {\n reuseTargetNode: true,\n} satisfies Partial<PortalProps>\n\nconst props = useComponentProps({\n component: 'CPortal',\n defaultProps,\n props: rawProps,\n})\n\nconst container = ref<HTMLElement | null>(null)\nlet createdNode: HTMLElement | null = null\n\nfunction createPortalNode(nodeAttrs: Record<string, any>): HTMLElement {\n const node = document.createElement('div')\n node.setAttribute('data-portal', 'true')\n\n const className = nodeAttrs.class || nodeAttrs.className\n if (className) {\n node.classList.add(...String(className).split(' ').filter(Boolean))\n }\n if (nodeAttrs.style) {\n Object.assign(node.style, nodeAttrs.style)\n }\n if (nodeAttrs.id) {\n node.setAttribute('id', nodeAttrs.id)\n }\n Object.keys(nodeAttrs).forEach((key) => {\n if (!['class', 'className', 'style', 'id'].includes(key)) {\n node.setAttribute(key, nodeAttrs[key])\n }\n })\n\n return node\n}\n\nfunction getTargetNode(): HTMLElement {\n const target = props.value.target\n const reuseTargetNode = props.value.reuseTargetNode\n\n if (target) {\n if (typeof target === 'string') {\n const found = document.querySelector<HTMLElement>(target)\n if (found) {\n return found\n }\n const node = createPortalNode(attrs)\n document.body.appendChild(node)\n createdNode = node\n return node\n }\n return target\n }\n\n if (reuseTargetNode) {\n const existing = document.querySelector<HTMLElement>('[data-cck-shared-portal]')\n if (existing) {\n return existing\n }\n const node = createPortalNode(attrs)\n node.setAttribute('data-cck-shared-portal', 'true')\n document.body.appendChild(node)\n createdNode = node\n return node\n }\n\n const node = createPortalNode(attrs)\n document.body.appendChild(node)\n createdNode = node\n return node\n}\n\nonMounted(() => {\n container.value = getTargetNode()\n})\n\nonBeforeUnmount(() => {\n if (createdNode && !createdNode.hasAttribute('data-cck-shared-portal')) {\n if (createdNode.parentNode) {\n createdNode.parentNode.removeChild(createdNode)\n }\n }\n})\n\ndefineExpose({\n root: container,\n})\n</script>\n"],"mappings":";;;;;;;;;;;;;;;;;;;EAeA,MAAM,SAAA,GAAA,IAAA,SAAA,CAAiB;EAEvB,MAAM,WAAW;EAEjB,MAAM,eAAe,EACnB,iBAAiB,KACnB;EAEA,MAAM,QAAQ,4BAAA,kBAAkB;GAC9B,WAAW;GACX;GACA,OAAO;EACT,CAAC;EAED,MAAM,aAAA,GAAA,IAAA,IAAA,CAAoC,IAAI;EAC9C,IAAI,cAAkC;EAEtC,SAAS,iBAAiB,WAA6C;GACrE,MAAM,OAAO,SAAS,cAAc,KAAK;GACzC,KAAK,aAAa,eAAe,MAAM;GAEvC,MAAM,YAAY,UAAU,SAAS,UAAU;GAC/C,IAAI,WACF,KAAK,UAAU,IAAI,GAAG,OAAO,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,OAAO,OAAO,CAAC;GAEpE,IAAI,UAAU,OACZ,OAAO,OAAO,KAAK,OAAO,UAAU,KAAK;GAE3C,IAAI,UAAU,IACZ,KAAK,aAAa,MAAM,UAAU,EAAE;GAEtC,OAAO,KAAK,SAAS,CAAC,CAAC,SAAS,QAAQ;IACtC,IAAI,CAAC;KAAC;KAAS;KAAa;KAAS;IAAI,CAAC,CAAC,SAAS,GAAG,GACrD,KAAK,aAAa,KAAK,UAAU,IAAI;GAEzC,CAAC;GAED,OAAO;EACT;EAEA,SAAS,gBAA6B;GACpC,MAAM,SAAS,MAAM,MAAM;GAC3B,MAAM,kBAAkB,MAAM,MAAM;GAEpC,IAAI,QAAQ;IACV,IAAI,OAAO,WAAW,UAAU;KAC9B,MAAM,QAAQ,SAAS,cAA2B,MAAM;KACxD,IAAI,OACF,OAAO;KAET,MAAM,OAAO,iBAAiB,KAAK;KACnC,SAAS,KAAK,YAAY,IAAI;KAC9B,cAAc;KACd,OAAO;IACT;IACA,OAAO;GACT;GAEA,IAAI,iBAAiB;IACnB,MAAM,WAAW,SAAS,cAA2B,0BAA0B;IAC/E,IAAI,UACF,OAAO;IAET,MAAM,OAAO,iBAAiB,KAAK;IACnC,KAAK,aAAa,0BAA0B,MAAM;IAClD,SAAS,KAAK,YAAY,IAAI;IAC9B,cAAc;IACd,OAAO;GACT;GAEA,MAAM,OAAO,iBAAiB,KAAK;GACnC,SAAS,KAAK,YAAY,IAAI;GAC9B,cAAc;GACd,OAAO;EACT;EAEA,CAAA,GAAA,IAAA,UAAA,OAAgB;GACd,UAAU,QAAQ,cAAc;EAClC,CAAC;EAED,CAAA,GAAA,IAAA,gBAAA,OAAsB;GACpB,IAAI,eAAe,CAAC,YAAY,aAAa,wBAAwB;QAC/D,YAAY,YACd,YAAY,WAAW,YAAY,WAAW;GAAA;EAGpD,CAAC;EAED,SAAa,EACX,MAAM,UACR,CAAC;;;;;;;;;;;;;;;;;;;;;;;;QAxGiB,OAAA,cAAA,GAAA,IAAA,UAAA,CAAA,IAAA,GAAA,IAAA,YAAA,CAEL,IAAA,UAAA;;EAFiB,IAAI,OAAA;yBACtB,KAAA,QAAA,SAAA,CAAA,GAAA,GAAA,CAAA,IAAA,CAAA,MAAA,GAAA,IAAA,mBAAA,CAAA,QAAA,IAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"text.cjs","names":[],"sources":["../../../src/components/text/text.vue"],"sourcesContent":["<template>\n <c-box\n ref=\"_root\"\n v-bind=\"mergedAttrs\"\n :size=\"props.size\"\n :tag=\"props.span ? 'span' : 'p'\"\n :variant=\"props.variant\"\n >\n <slot />\n </c-box>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, ref, useAttrs } from 'vue'\nimport type { TextFactory, TextProps, TextTruncate } from './text.types.ts'\nimport classes from './text.module.css'\nimport { useStyles, CBox, useComponentProps, CStyleProp } from '../../core'\nimport { varsResolver } from './text.utils.js'\n\ndefineOptions({\n name: 'CText',\n})\n\nconst _root = ref<InstanceType<typeof CBox> | null>(null)\n\nconst attrs = useAttrs()\n\nconst rawProps = defineProps<TextProps>()\n\nconst props = useComponentProps({\n component: 'CText',\n defaultProps: {},\n props: rawProps,\n})\n\nfunction getTextTruncate(truncate: TextTruncate | undefined) {\n if (truncate === 'start') {\n return 'start'\n }\n\n if (truncate === 'end' || truncate) {\n return 'end'\n }\n\n return undefined\n}\n\nconst knownProps = [\n 'lineClamp',\n 'truncate',\n 'inline',\n 'inherit',\n 'gradient',\n 'span',\n 'textWrap',\n '__staticSelector',\n 'vars',\n 'className',\n 'style',\n 'classNames',\n 'styles',\n 'unstyled',\n 'variant',\n 'mod',\n 'size',\n 'attributes',\n]\n\nconst modList = computed(() => [\n {\n 'data-truncate': getTextTruncate(props.value.truncate),\n 'data-line-clamp': typeof props.value.lineClamp === 'number',\n 'data-inline': props.value.inline,\n 'data-inherit': props.value.inherit,\n },\n])\n\nconst styleProps = computed(() => ({\n ...props.value,\n ...attrs,\n style: (attrs.style ?? props.value.style) as CStyleProp,\n}))\n\nconst getStyles = useStyles<TextFactory>({\n name: ['Text', props.value.__staticSelector],\n props: styleProps,\n classes,\n className: () => props.value.className,\n style: () => props.value.style,\n classNames: props.value.classNames,\n styles: props.value.styles,\n unstyled: props.value.unstyled,\n attributes: props.value.attributes,\n vars: props.value.vars,\n varsResolver,\n})\n\nconst rootAttrs = computed(() => getStyles('root', { focusable: true }))\n\nconst mergedAttrs = computed(() => {\n const others: Record<string, any> = {}\n const propsValue = props.value\n for (const key in propsValue) {\n if (!knownProps.includes(key)) {\n others[key] = propsValue[key as keyof typeof propsValue]\n }\n }\n const userMod = props.value.mod\n const mergedMod = [\n ...(Array.isArray(userMod) ? userMod : [userMod].filter(Boolean)),\n ...(modList.value || []),\n ]\n return { ...others, mod: mergedMod, ...rootAttrs.value }\n})\n\ndefineExpose({\n root: computed(() => _root.value?.root ?? null),\n})\n</script>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuBA,MAAM,SAAA,GAAA,IAAA,IAAA,CAA8C,IAAI;EAExD,MAAM,SAAA,GAAA,IAAA,SAAA,CAAiB;EAEvB,MAAM,WAAW;EAEjB,MAAM,QAAQ,4BAAA,kBAAkB;GAC9B,WAAW;GACX,cAAc,CAAC;GACf,OAAO;EACT,CAAC;EAED,SAAS,gBAAgB,UAAoC;GAC3D,IAAI,aAAa,SACf,OAAO;GAGT,IAAI,aAAa,SAAS,UACxB,OAAO;EAIX;EAEA,MAAM,aAAa;GACjB;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;EACF;EAEA,MAAM,WAAA,GAAA,IAAA,SAAA,OAAyB,CAC7B;GACE,iBAAiB,gBAAgB,MAAM,MAAM,QAAQ;GACrD,mBAAmB,OAAO,MAAM,MAAM,cAAc;GACpD,eAAe,MAAM,MAAM;GAC3B,gBAAgB,MAAM,MAAM;EAC9B,CACF,CAAC;EAED,MAAM,cAAA,GAAA,IAAA,SAAA,QAA6B;GACjC,GAAG,MAAM;GACT,GAAG;GACH,OAAQ,MAAM,SAAS,MAAM,MAAM;EACrC,EAAE;EAEF,MAAM,YAAY,mBAAA,UAAuB;GACvC,MAAM,CAAC,QAAQ,MAAM,MAAM,gBAAgB;GAC3C,OAAO;GACP,SAAA,oBAAA;GACA,iBAAiB,MAAM,MAAM;GAC7B,aAAa,MAAM,MAAM;GACzB,YAAY,MAAM,MAAM;GACxB,QAAQ,MAAM,MAAM;GACpB,UAAU,MAAM,MAAM;GACtB,YAAY,MAAM,MAAM;GACxB,MAAM,MAAM,MAAM;GAClB,cAAA,mBAAA;EACF,CAAC;EAED,MAAM,aAAA,GAAA,IAAA,SAAA,OAA2B,UAAU,QAAQ,EAAE,WAAW,KAAK,CAAC,CAAC;EAEvE,MAAM,eAAA,GAAA,IAAA,SAAA,OAA6B;GACjC,MAAM,SAA8B,CAAC;GACrC,MAAM,aAAa,MAAM;GACzB,KAAK,MAAM,OAAO,YAChB,IAAI,CAAC,WAAW,SAAS,GAAG,GAC1B,OAAO,OAAO,WAAW;GAG7B,MAAM,UAAU,MAAM,MAAM;GAC5B,MAAM,YAAY,CAChB,GAAI,MAAM,QAAQ,OAAO,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC,OAAO,OAAO,GAC/D,GAAI,QAAQ,SAAS,CAAC,CACxB;GACA,OAAO;IAAE,GAAG;IAAQ,KAAK;IAAW,GAAG,UAAU;GAAM;EACzD,CAAC;EAED,SAAa,EACX,OAAA,GAAA,IAAA,SAAA,OAAqB,MAAM,OAAO,QAAQ,IAAI,EAChD,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;mDA5GS,OAAA,UAAA,GAAA,IAAA,WAAA,CAAA,EAPN,KAAI,QAAO,GACH,OAAA,aAAW;EAClB,MAAM,OAAA,MAAM;EACZ,KAAK,OAAA,MAAM,OAAI,SAAA;EACf,SAAS,OAAA,MAAM;;kCAER,EAAA,GAAA,IAAA,WAAA,CAAA,KAAA,QAAA,SAAA,CAAA,CAAA"}
1
+ {"version":3,"file":"text.cjs","names":[],"sources":["../../../src/components/text/text.vue"],"sourcesContent":["<template>\n <c-box\n ref=\"_root\"\n v-bind=\"mergedAttrs\"\n :size=\"props.size\"\n :tag=\"props.span ? 'span' : 'p'\"\n :variant=\"props.variant\"\n >\n <slot />\n </c-box>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, ref, useAttrs } from 'vue'\nimport type { TextFactory, TextProps, TextTruncate } from './text.types'\nimport classes from './text.module.css'\nimport { useStyles, CBox, useComponentProps, CStyleProp } from '../../core'\nimport { varsResolver } from './text.utils'\n\ndefineOptions({\n name: 'CText',\n})\n\nconst _root = ref<InstanceType<typeof CBox> | null>(null)\n\nconst attrs = useAttrs()\n\nconst rawProps = defineProps<TextProps>()\n\nconst props = useComponentProps({\n component: 'CText',\n defaultProps: {},\n props: rawProps,\n})\n\nfunction getTextTruncate(truncate: TextTruncate | undefined) {\n if (truncate === 'start') {\n return 'start'\n }\n\n if (truncate === 'end' || truncate) {\n return 'end'\n }\n\n return undefined\n}\n\nconst knownProps = [\n 'lineClamp',\n 'truncate',\n 'inline',\n 'inherit',\n 'gradient',\n 'span',\n 'textWrap',\n '__staticSelector',\n 'vars',\n 'className',\n 'style',\n 'classNames',\n 'styles',\n 'unstyled',\n 'variant',\n 'mod',\n 'size',\n 'attributes',\n]\n\nconst modList = computed(() => [\n {\n 'data-truncate': getTextTruncate(props.value.truncate),\n 'data-line-clamp': typeof props.value.lineClamp === 'number',\n 'data-inline': props.value.inline,\n 'data-inherit': props.value.inherit,\n },\n])\n\nconst styleProps = computed(() => ({\n ...props.value,\n ...attrs,\n style: (attrs.style ?? props.value.style) as CStyleProp,\n}))\n\nconst getStyles = useStyles<TextFactory>({\n name: ['Text', props.value.__staticSelector],\n props: styleProps,\n classes,\n className: () => props.value.className,\n style: () => props.value.style,\n classNames: props.value.classNames,\n styles: props.value.styles,\n unstyled: props.value.unstyled,\n attributes: props.value.attributes,\n vars: props.value.vars,\n varsResolver,\n})\n\nconst rootAttrs = computed(() => getStyles('root', { focusable: true }))\n\nconst mergedAttrs = computed(() => {\n const others: Record<string, any> = {}\n const propsValue = props.value\n for (const key in propsValue) {\n if (!knownProps.includes(key)) {\n others[key] = propsValue[key as keyof typeof propsValue]\n }\n }\n const userMod = props.value.mod\n const mergedMod = [\n ...(Array.isArray(userMod) ? userMod : [userMod].filter(Boolean)),\n ...(modList.value || []),\n ]\n return { ...others, mod: mergedMod, ...rootAttrs.value }\n})\n\ndefineExpose({\n root: computed(() => _root.value?.root ?? null),\n})\n</script>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuBA,MAAM,SAAA,GAAA,IAAA,IAAA,CAA8C,IAAI;EAExD,MAAM,SAAA,GAAA,IAAA,SAAA,CAAiB;EAEvB,MAAM,WAAW;EAEjB,MAAM,QAAQ,4BAAA,kBAAkB;GAC9B,WAAW;GACX,cAAc,CAAC;GACf,OAAO;EACT,CAAC;EAED,SAAS,gBAAgB,UAAoC;GAC3D,IAAI,aAAa,SACf,OAAO;GAGT,IAAI,aAAa,SAAS,UACxB,OAAO;EAIX;EAEA,MAAM,aAAa;GACjB;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;EACF;EAEA,MAAM,WAAA,GAAA,IAAA,SAAA,OAAyB,CAC7B;GACE,iBAAiB,gBAAgB,MAAM,MAAM,QAAQ;GACrD,mBAAmB,OAAO,MAAM,MAAM,cAAc;GACpD,eAAe,MAAM,MAAM;GAC3B,gBAAgB,MAAM,MAAM;EAC9B,CACF,CAAC;EAED,MAAM,cAAA,GAAA,IAAA,SAAA,QAA6B;GACjC,GAAG,MAAM;GACT,GAAG;GACH,OAAQ,MAAM,SAAS,MAAM,MAAM;EACrC,EAAE;EAEF,MAAM,YAAY,mBAAA,UAAuB;GACvC,MAAM,CAAC,QAAQ,MAAM,MAAM,gBAAgB;GAC3C,OAAO;GACP,SAAA,oBAAA;GACA,iBAAiB,MAAM,MAAM;GAC7B,aAAa,MAAM,MAAM;GACzB,YAAY,MAAM,MAAM;GACxB,QAAQ,MAAM,MAAM;GACpB,UAAU,MAAM,MAAM;GACtB,YAAY,MAAM,MAAM;GACxB,MAAM,MAAM,MAAM;GAClB,cAAA,mBAAA;EACF,CAAC;EAED,MAAM,aAAA,GAAA,IAAA,SAAA,OAA2B,UAAU,QAAQ,EAAE,WAAW,KAAK,CAAC,CAAC;EAEvE,MAAM,eAAA,GAAA,IAAA,SAAA,OAA6B;GACjC,MAAM,SAA8B,CAAC;GACrC,MAAM,aAAa,MAAM;GACzB,KAAK,MAAM,OAAO,YAChB,IAAI,CAAC,WAAW,SAAS,GAAG,GAC1B,OAAO,OAAO,WAAW;GAG7B,MAAM,UAAU,MAAM,MAAM;GAC5B,MAAM,YAAY,CAChB,GAAI,MAAM,QAAQ,OAAO,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC,OAAO,OAAO,GAC/D,GAAI,QAAQ,SAAS,CAAC,CACxB;GACA,OAAO;IAAE,GAAG;IAAQ,KAAK;IAAW,GAAG,UAAU;GAAM;EACzD,CAAC;EAED,SAAa,EACX,OAAA,GAAA,IAAA,SAAA,OAAqB,MAAM,OAAO,QAAQ,IAAI,EAChD,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;mDA5GS,OAAA,UAAA,GAAA,IAAA,WAAA,CAAA,EAPN,KAAI,QAAO,GACH,OAAA,aAAW;EAClB,MAAM,OAAA,MAAM;EACZ,KAAK,OAAA,MAAM,OAAI,SAAA;EACf,SAAS,OAAA,MAAM;;kCAER,EAAA,GAAA,IAAA,WAAA,CAAA,KAAA,QAAA,SAAA,CAAA,CAAA"}