agile-core 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/core.d.ts ADDED
@@ -0,0 +1,93 @@
1
+ import type { Component as ComponentType } from 'vue';
2
+ export { type Component as TraditionComponent } from './types';
3
+ declare const shadowSymbol: unique symbol;
4
+ export type HookHandler = (c: any) => void | any;
5
+ type AUI_COMPONENT_OPTION = {
6
+ valueType?: any;
7
+ };
8
+ export type Component = ComponentType;
9
+ type AUI_SLOT_CACHE = {
10
+ start: Comment;
11
+ end: Comment;
12
+ };
13
+ type SlotElement = {
14
+ default: Node[];
15
+ [key: string]: Node[];
16
+ };
17
+ export declare class AuiComponent extends HTMLElement {
18
+ __hasVue__: boolean;
19
+ private static readonly shadowSymbol;
20
+ private [shadowSymbol];
21
+ constructor(options?: AUI_COMPONENT_OPTION);
22
+ connectedCallback(): void;
23
+ set textContent(v: string);
24
+ get textContent(): string;
25
+ set innerHTML(v: string);
26
+ get innerHTML(): string;
27
+ set innerText(v: string);
28
+ prepend<T extends Node>(node: T): void;
29
+ appendChild<T extends Node>(node: T): T;
30
+ set value(v: string | null);
31
+ get value(): any;
32
+ hasAttribute(qualifiedName: string): boolean;
33
+ setAttribute(qualifiedName: string, value: string): void;
34
+ getAttribute(qualifiedName: string): string | null;
35
+ removeAttribute(qualifiedName: string): void;
36
+ attributeChangedCallback(name: string, oldValue: string | null, newValue: string | null): void;
37
+ static $anyToArray(s: any): any;
38
+ $textContent(name: string, ...args: any): string;
39
+ $innerHTML(name: string, ...args: any): string;
40
+ $prepend<T extends Node>(name: string, node: T): void;
41
+ $appendChild<T extends Node>(name: string, node: T): T;
42
+ $childNodes(name?: string): NodeListOf<ChildNode>;
43
+ $children(name?: string): HTMLCollection;
44
+ $replaceChildren(name: string, children: any[]): void;
45
+ $slot(name?: string, slot?: AUI_SLOT_CACHE): AUI_SLOT_CACHE | undefined;
46
+ $needHook(need?: boolean): boolean;
47
+ $ignoreLog(name: string): void;
48
+ $moveChildren(el?: AuiComponent): SlotElement;
49
+ $isArrayValue(): boolean;
50
+ $attrChange(name: string): void;
51
+ $initAttrs(): void;
52
+ $isShowProp(name: string): boolean;
53
+ $getProp(name: string): any;
54
+ $initVue(): void;
55
+ $needInit(): boolean;
56
+ $bindVue(v: Component): void;
57
+ $call(name?: string, ...args: any[]): any;
58
+ }
59
+ type TypeAuiComponent = typeof AuiComponent;
60
+ type AUI_VUE_DEFINE_CACHE = {
61
+ aui?: TypeAuiComponent;
62
+ vue?: Component;
63
+ origin?: Component;
64
+ hooks?: HookHandler[];
65
+ };
66
+ declare const _default: {
67
+ init(): /*elided*/ any;
68
+ defineSlot(): void;
69
+ $call(ref: Record<string, any>, name?: string, ...args: any[]): any;
70
+ formatName(name: string | undefined): string;
71
+ cache: {
72
+ defined: Record<string, AUI_VUE_DEFINE_CACHE>;
73
+ getAuiVueDefined(tagName: string): AUI_VUE_DEFINE_CACHE | undefined;
74
+ getAuiPropNames(tagName: string): string[];
75
+ addHooks(name: string, handle: HookHandler): void;
76
+ };
77
+ createExtendComp(v: Component): Component;
78
+ patchDefaultProps(origin: Component): any;
79
+ defineAuiComponent(tagName: string, component: Component, origin: Component): void;
80
+ define(v: Component, force?: boolean): Component;
81
+ createTempSlot(children: SlotElement): any;
82
+ replaceTempSlot(el: AuiComponent, children: SlotElement): void;
83
+ createVueComponent(tagName: string, el?: AuiComponent): Component;
84
+ getAuiAttrs(el: AuiComponent): Record<string, any>;
85
+ isVueAttr(name: string): boolean;
86
+ auiAttrName(name: string): string;
87
+ vueAttrName(name: string): string;
88
+ hookStructure(name: string, handle: HookHandler): void;
89
+ getHookStructure(name: string): HookHandler[];
90
+ formatStructure(tagName: string): Component | null;
91
+ };
92
+ export default _default;
93
+ //# sourceMappingURL=core.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,374 @@
1
+ import { createApp as e, defineComponent as t, useAttrs as n, ref as r, useSlots as i, onMounted as s, h as o } from "vue";
2
+ import { merge as a } from "ts-deepmerge";
3
+ var u, l;
4
+ const h = __AUI_CONFIG__.tagPrefix || "aui", c = "data-v-aui", d = Symbol("shadow");
5
+ const _AuiComponent = class _AuiComponent extends (l = HTMLElement, u = d, l) {
6
+ constructor(e2) {
7
+ super(), this.__hasVue__ = false, this[u] = { needHook: false, slot: {} }, this[_AuiComponent.shadowSymbol].options = e2 || {}, this.$initAttrs();
8
+ }
9
+ connectedCallback() {
10
+ this.$needInit() && (this.$needHook(true), this.$initVue());
11
+ }
12
+ set textContent(e2) {
13
+ this.$needHook() ? this.$textContent(e2) : super.textContent = e2;
14
+ }
15
+ get textContent() {
16
+ return this.$needHook() ? this.$textContent("default") : super.textContent || "";
17
+ }
18
+ set innerHTML(e2) {
19
+ this.$needHook() ? this.$innerHTML(e2) : super.innerHTML = e2;
20
+ }
21
+ get innerHTML() {
22
+ return this.$needHook() ? this.$innerHTML("default") : super.innerHTML || "";
23
+ }
24
+ set innerText(e2) {
25
+ this.$ignoreLog("innerText"), super.innerText = e2;
26
+ }
27
+ prepend(e2) {
28
+ if (!this.$needHook()) return super.prepend(e2);
29
+ this.$prepend("default", e2);
30
+ }
31
+ appendChild(e2) {
32
+ return this.$needHook() ? this.$appendChild("default", e2) : super.appendChild(e2);
33
+ }
34
+ set value(e2) {
35
+ let t2 = e2;
36
+ const n2 = this[_AuiComponent.shadowSymbol].value;
37
+ let r2;
38
+ this.$isArrayValue() ? (t2 = _AuiComponent.$anyToArray(e2), r2 = JSON.stringify(t2)) : r2 = t2.toString(), n2 !== r2 && (this[_AuiComponent.shadowSymbol].value = r2, this[_AuiComponent.shadowSymbol].el && this.$attrChange("value"));
39
+ }
40
+ get value() {
41
+ const e2 = this[_AuiComponent.shadowSymbol].value;
42
+ return this.$isArrayValue() && "string" == typeof e2 ? JSON.parse(e2) : e2;
43
+ }
44
+ hasAttribute(e2) {
45
+ const t2 = this[_AuiComponent.shadowSymbol].el;
46
+ return t2 ? t2.hasAttribute(e2) : super.hasAttribute(e2);
47
+ }
48
+ setAttribute(e2, t2) {
49
+ t2 = t2.toString();
50
+ const n2 = this[_AuiComponent.shadowSymbol].el;
51
+ if (n2) {
52
+ if (n2.getAttribute(e2) === t2) return;
53
+ n2.setAttribute(e2, t2);
54
+ }
55
+ this.$isShowProp(m.vueAttrName(e2)) && super.setAttribute(e2, t2), "value" === e2 && n2 ? this.value = n2.getAttribute(e2) : this.$attrChange(e2);
56
+ }
57
+ getAttribute(e2) {
58
+ const t2 = this[_AuiComponent.shadowSymbol].el;
59
+ return t2 ? t2.getAttribute(e2) : super.getAttribute(e2);
60
+ }
61
+ removeAttribute(e2) {
62
+ const t2 = this[_AuiComponent.shadowSymbol].el;
63
+ t2 && t2.removeAttribute(e2);
64
+ this.$isShowProp(m.vueAttrName(e2)) && super.removeAttribute(e2), this.$attrChange(e2);
65
+ }
66
+ attributeChangedCallback(e2, t2, n2) {
67
+ const r2 = this[_AuiComponent.shadowSymbol].el;
68
+ r2 && t2 !== n2 && (this.$isShowProp(m.vueAttrName(e2)) || super.removeAttribute(e2), r2.setAttribute(e2, n2 || ""), "value" !== e2 && this.$attrChange(e2));
69
+ }
70
+ static $anyToArray(e2) {
71
+ let t2 = [];
72
+ if ("string" == typeof e2) {
73
+ try {
74
+ const t3 = JSON.parse(e2);
75
+ if (t3 instanceof Array) return t3;
76
+ } catch (e3) {
77
+ }
78
+ t2 = e2.split(",").filter((e3) => !!e3 && e3.trim());
79
+ } else e2 instanceof Array && (t2 = e2);
80
+ return t2;
81
+ }
82
+ $textContent(e2, ...t2) {
83
+ if (0 === t2.length) {
84
+ const t3 = [], { start: n2, end: r2 } = this.$slot(e2) || {};
85
+ let i2 = n2;
86
+ for (; i2 && (i2 = i2.nextSibling) && i2 !== r2; ) t3.push(i2.textContent);
87
+ return t3.join("");
88
+ }
89
+ return this.$replaceChildren(e2, [document.createTextNode(t2[0] || "")]), "";
90
+ }
91
+ $innerHTML(e2, ...t2) {
92
+ if (0 === t2.length) {
93
+ const t3 = [], { start: n2, end: r2 } = this.$slot(e2) || {};
94
+ let i2 = n2;
95
+ for (; i2 && (i2 = i2.nextSibling) && i2 !== r2; ) if (i2.outerHTML) t3.push(i2.outerHTML);
96
+ else {
97
+ let e3 = i2.textContent;
98
+ i2 instanceof Comment && (e3 = `<!--${e3}-->`), t3.push(e3);
99
+ }
100
+ return t3.join("");
101
+ }
102
+ {
103
+ const n2 = document.createElement("div");
104
+ n2.innerHTML = t2[0] || "";
105
+ const r2 = this.$moveChildren(n2);
106
+ this.$replaceChildren(e2, r2.default);
107
+ }
108
+ return "";
109
+ }
110
+ $prepend(e2, t2) {
111
+ var _a;
112
+ const { start: n2 } = this.$slot(e2) || {};
113
+ (_a = n2 == null ? void 0 : n2.parentNode) == null ? void 0 : _a.insertBefore(t2, n2.nextSibling);
114
+ }
115
+ $appendChild(e2, t2) {
116
+ var _a;
117
+ const { end: n2 } = this.$slot(e2) || {};
118
+ return (_a = n2 == null ? void 0 : n2.parentNode) == null ? void 0 : _a.insertBefore(t2, n2), t2;
119
+ }
120
+ $childNodes(e2) {
121
+ const t2 = [], { start: n2, end: r2 } = this.$slot(e2) || {};
122
+ let i2 = n2;
123
+ for (; i2 && (i2 = i2.nextSibling) && i2 !== r2; ) t2.push(i2);
124
+ return t2;
125
+ }
126
+ $children(e2) {
127
+ const t2 = [], { start: n2, end: r2 } = this.$slot(e2) || {};
128
+ let i2 = n2;
129
+ for (; i2 && (i2 = i2.nextSibling) && i2 !== r2; ) i2 instanceof HTMLElement && t2.push(i2);
130
+ return t2;
131
+ }
132
+ $replaceChildren(e2, t2) {
133
+ var _a, _b;
134
+ const { start: n2, end: r2 } = this.$slot(e2) || {};
135
+ let i2 = null;
136
+ for (; n2 && (i2 = n2.nextSibling) && i2 !== r2; ) (_a = i2.parentNode) == null ? void 0 : _a.removeChild(i2);
137
+ if (r2) for (; i2 = t2.shift(); ) (_b = r2.parentNode) == null ? void 0 : _b.insertBefore(i2, r2);
138
+ }
139
+ $slot(e2, t2) {
140
+ if (e2 = e2 || "default", !t2) return this[_AuiComponent.shadowSymbol].slot[e2];
141
+ this[_AuiComponent.shadowSymbol].slot[e2] = t2;
142
+ }
143
+ $needHook(e2) {
144
+ return "boolean" == typeof e2 && (this[_AuiComponent.shadowSymbol].needHook = e2), this[_AuiComponent.shadowSymbol].needHook;
145
+ }
146
+ $ignoreLog(e2) {
147
+ }
148
+ $moveChildren(e2) {
149
+ var _a;
150
+ const t2 = (e2 = e2 || this).childNodes, n2 = { default: [] };
151
+ for (; t2.length > 0; ) {
152
+ const r2 = t2[0];
153
+ if ((_a = r2.parentNode) == null ? void 0 : _a.removeChild(r2), p.$isForAuiSlot(r2)) {
154
+ const t3 = r2.getAttribute("for") || "default";
155
+ n2[t3] = n2[t3] || [];
156
+ const i2 = Array.prototype.slice.call(r2.childNodes);
157
+ p.prototype.$bind.call(r2, e2), n2[t3].push(...i2);
158
+ } else n2.default.push(r2);
159
+ }
160
+ return n2;
161
+ }
162
+ $isArrayValue() {
163
+ var _a;
164
+ return ((_a = this[_AuiComponent.shadowSymbol].options) == null ? void 0 : _a.valueType) === Array;
165
+ }
166
+ $attrChange(e2) {
167
+ if ("value" === e2) {
168
+ const e3 = this.value;
169
+ super.hasAttribute(c) ? this.$call("$emit", "update:value", e3) : super.dispatchEvent(new CustomEvent("input", { bubbles: true, composed: true }));
170
+ }
171
+ this.dispatchEvent(new CustomEvent("aui-attr-change", { bubbles: true, composed: true, detail: { attributeName: m.vueAttrName(e2) } }));
172
+ }
173
+ $initAttrs() {
174
+ const e2 = this.attributes, t2 = document.createElement("div");
175
+ for (let n2 = 0; n2 < e2.length; n2++) {
176
+ const r2 = e2[n2];
177
+ t2.setAttribute(r2.name, r2.value), this.$isShowProp(m.vueAttrName(r2.name)) || super.removeAttribute(r2.name), "value" === r2.name && (this.value = r2.value);
178
+ }
179
+ Object.defineProperty(this, "attributes", { get value() {
180
+ return t2.attributes;
181
+ }, writable: false }), this[_AuiComponent.shadowSymbol].el = t2;
182
+ }
183
+ $isShowProp(e2) {
184
+ if (m.isVueAttr(e2)) return true;
185
+ const t2 = this.$getProp(e2), n2 = t2 == null ? void 0 : t2.show;
186
+ return n2;
187
+ }
188
+ $getProp(e2) {
189
+ var _a;
190
+ const t2 = m.cache.getAuiVueDefined(this.tagName);
191
+ return (((_a = t2 == null ? void 0 : t2.origin) == null ? void 0 : _a.props) || {})[e2];
192
+ }
193
+ $initVue() {
194
+ if (this.__hasVue__) return;
195
+ this.__hasVue__ = true;
196
+ const t2 = this.tagName.toLowerCase();
197
+ m.cache.getAuiVueDefined(t2) && e(m.createVueComponent(t2, this)).mount(this);
198
+ }
199
+ $needInit() {
200
+ return !super.hasAttribute(c);
201
+ }
202
+ $bindVue(e2) {
203
+ var _a, _b;
204
+ if (this[_AuiComponent.shadowSymbol].ref) return;
205
+ this[_AuiComponent.shadowSymbol].ref = e2, this.__hasVue__ = true;
206
+ const t2 = new CustomEvent("aui-init", { bubbles: false, detail: { code: 0 } });
207
+ this.dispatchEvent(t2);
208
+ const n2 = (_b = (_a = m.cache.getAuiVueDefined(this.tagName)) == null ? void 0 : _a.origin) == null ? void 0 : _b.auiInit;
209
+ n2 && n2.call(e2);
210
+ }
211
+ $call(e2, ...t2) {
212
+ const n2 = this[_AuiComponent.shadowSymbol].ref;
213
+ return m.$call(n2, e2, ...t2);
214
+ }
215
+ };
216
+ _AuiComponent.shadowSymbol = d;
217
+ let AuiComponent = _AuiComponent;
218
+ class p extends HTMLElement {
219
+ constructor() {
220
+ super();
221
+ }
222
+ connectedCallback() {
223
+ this.style.display = "none";
224
+ }
225
+ set textContent(e2) {
226
+ var _a;
227
+ this._name_ ? (_a = this._el_) == null ? void 0 : _a.$textContent(this._name_, e2) : super.textContent = e2;
228
+ }
229
+ set innerHTML(e2) {
230
+ var _a;
231
+ this._name_ ? (_a = this._el_) == null ? void 0 : _a.$innerHTML(this._name_, e2) : super.innerHTML = e2;
232
+ }
233
+ prepend(e2) {
234
+ var _a;
235
+ this._name_ ? (_a = this._el_) == null ? void 0 : _a.$prepend(this._name_, e2) : super.prepend(e2);
236
+ }
237
+ appendChild(e2) {
238
+ var _a;
239
+ return this._name_ ? ((_a = this._el_) == null ? void 0 : _a.$appendChild(this._name_, e2), e2) : super.appendChild(e2);
240
+ }
241
+ static $isAuiSlot(e2) {
242
+ return !(!e2 || e2.nodeType !== Node.ELEMENT_NODE) && "aui-slot" === e2.tagName.toLowerCase();
243
+ }
244
+ static $isForAuiSlot(e2) {
245
+ return !(!p.$isAuiSlot(e2) || !e2.hasAttribute("for"));
246
+ }
247
+ $bind(e2) {
248
+ this._el_ = e2, this._name_ = this.getAttribute("for") || "default";
249
+ }
250
+ $replace(e2) {
251
+ const t2 = this.getAttribute("name") || "default", n2 = document.createComment(`aui-slot-${t2}-start`), r2 = document.createComment(`aui-slot-${t2}-end`);
252
+ e2.$slot(t2, { start: n2, end: r2 }), this.replaceWith(n2, r2);
253
+ }
254
+ }
255
+ const m = { init: () => (m.defineSlot(), m), defineSlot() {
256
+ try {
257
+ customElements.define("aui-slot", p);
258
+ } catch (e2) {
259
+ }
260
+ }, $call(e2, t2, ...n2) {
261
+ if (!e2) return new Error("not init");
262
+ if (!t2) return e2;
263
+ if ("function" == typeof e2[t2]) return e2[t2].call(e2, ...n2);
264
+ const r2 = t2.split(".");
265
+ let i2 = e2, s2 = r2.pop() || "", o2 = null;
266
+ for (; o2 = r2.shift(); ) {
267
+ if (!Object.prototype.hasOwnProperty.call(i2, o2)) return new Error("no match name");
268
+ i2 = i2[o2];
269
+ }
270
+ return 0 === n2.length ? i2[s2] : (i2[s2] = n2[0], null);
271
+ }, formatName: (e2) => e2 ? (e2 = e2.replace(/[A-Z]/g, function(e3) {
272
+ return "-" + e3.toLowerCase();
273
+ }), h + e2) : "", cache: { defined: (Object.prototype.hasOwnProperty.call(window, "__GLOBAL_AUI_CORE__") || Object.defineProperty(window, "__GLOBAL_AUI_CORE__", { value: { defined: {} }, writable: false, enumerable: false }), window.__GLOBAL_AUI_CORE__).defined, getAuiVueDefined: (e2) => (e2 = e2.toLowerCase(), m.cache.defined[e2]), getAuiPropNames(e2) {
274
+ var _a;
275
+ const t2 = m.cache.getAuiVueDefined(e2), n2 = ((_a = t2 == null ? void 0 : t2.origin) == null ? void 0 : _a.props) || {}, r2 = [];
276
+ for (const e3 in n2) r2.push(m.auiAttrName(e3));
277
+ return r2;
278
+ }, addHooks(e2, t2) {
279
+ e2 = e2.toLowerCase();
280
+ const n2 = m.cache.getAuiVueDefined(e2);
281
+ n2 ? (n2.hooks = n2.hooks || [], n2.hooks.push(t2)) : m.cache.defined[e2] = { hooks: [t2] };
282
+ } }, createExtendComp: (e2) => {
283
+ var _a, _b;
284
+ return t({ props: { auiExtend: { type: String }, value: { type: ((_b = (_a = e2.props) == null ? void 0 : _a.value) == null ? void 0 : _b.type) || [String, Number, Array] } }, methods: { $anyToArray: AuiComponent.$anyToArray, $value(...e3) {
285
+ const t2 = this.$aui();
286
+ if (0 === e3.length) return t2 == null ? void 0 : t2.value;
287
+ t2 && (t2.value = e3[0]);
288
+ }, $call(e3, ...t2) {
289
+ const n2 = this.$aui();
290
+ return n2 ? m.$call(n2, e3, ...t2) : null;
291
+ }, $aui() {
292
+ var _a2;
293
+ return (_a2 = this.$el) == null ? void 0 : _a2.parentNode;
294
+ } }, data: () => ({}) });
295
+ }, patchDefaultProps(e2) {
296
+ var _a, _b;
297
+ const t2 = (_b = (_a = e2.props) == null ? void 0 : _a.value) == null ? void 0 : _b.type;
298
+ return e2.mixins || (e2.mixins = []), e2.mixins.push(m.createExtendComp(e2)), t2;
299
+ }, defineAuiComponent(e2, t2, n2) {
300
+ var _a, _b;
301
+ const r2 = m.patchDefaultProps(n2);
302
+ if ((_a = m.cache.defined[e2]) == null ? void 0 : _a.origin) m.cache.defined[e2].origin = n2;
303
+ else {
304
+ class i2 extends AuiComponent {
305
+ constructor() {
306
+ super({ valueType: r2 });
307
+ }
308
+ static get observedAttributes() {
309
+ return m.cache.getAuiPropNames(e2);
310
+ }
311
+ }
312
+ m.cache.defined[e2] = { aui: i2, vue: t2, origin: n2, hooks: ((_b = m.cache.defined[e2]) == null ? void 0 : _b.hooks) || [] }, customElements.define(e2, i2);
313
+ }
314
+ }, define(e2, t2 = false) {
315
+ const n2 = m.formatName(e2.name);
316
+ if (!n2) return e2;
317
+ const r2 = m.cache.getAuiVueDefined(n2);
318
+ if (r2 && r2.vue) return t2 && m.defineAuiComponent(n2, r2.vue, e2), r2.vue;
319
+ const i2 = m.createVueComponent(n2);
320
+ return m.defineAuiComponent(n2, i2, e2), i2;
321
+ }, createTempSlot(e2) {
322
+ const t2 = {};
323
+ return Object.keys(e2).forEach((e3) => {
324
+ t2[e3] = () => o("aui-slot", { name: e3 });
325
+ }), t2;
326
+ }, replaceTempSlot(e2, t2) {
327
+ Object.keys(t2).forEach((n2) => {
328
+ const r2 = e2.querySelector(`aui-slot[name="${n2}"]`);
329
+ r2 && (p.prototype.$replace.call(r2, e2), e2.$replaceChildren(n2, t2[n2]));
330
+ });
331
+ }, createVueComponent(e2, t2) {
332
+ const a2 = t2 ? t2.$moveChildren() : { default: [] };
333
+ return { setup() {
334
+ const u2 = n(), l2 = r(null), h2 = r(null), d2 = r({}), p2 = r(t2 ? m.createTempSlot(a2) : i());
335
+ let f2;
336
+ return s(() => {
337
+ l2.value && h2.value && h2.value.$bindVue && (h2.value.$bindVue(l2.value), t2 && m.replaceTempSlot(t2, a2), h2.value.addEventListener("aui-attr-change", () => {
338
+ h2.value && (d2.value = m.getAuiAttrs(h2.value));
339
+ }), h2.value.$call("$emit", "update:value", h2.value.value));
340
+ }), () => {
341
+ if (t2 && (h2.value = t2, d2.value = m.getAuiAttrs(t2)), f2 || (f2 = m.formatStructure(e2)), !f2) return null;
342
+ const n2 = o(f2, { ...u2, ...d2.value, ref: l2 }, p2.value || {});
343
+ return t2 ? n2 : o(e2, { ref: h2, [c]: "" }, [n2]);
344
+ };
345
+ } };
346
+ }, getAuiAttrs(e2) {
347
+ const t2 = {}, n2 = e2.attributes;
348
+ for (let e3 = 0; e3 < n2.length; e3++) {
349
+ const r2 = n2[e3];
350
+ r2.name === h || m.isVueAttr(r2.name) || (t2[r2.name] = r2.value);
351
+ }
352
+ return null !== e2.value && (t2.value = e2.value), t2;
353
+ }, isVueAttr: (e2) => 0 === e2.indexOf("data-v-"), auiAttrName: (e2) => e2.replace(/([A-Z])/g, (e3) => "-" + e3.toLowerCase()), vueAttrName: (e2) => m.isVueAttr(e2) ? e2 : e2.replace(/-([a-z])/g, (e3, t2) => t2.toUpperCase()), hookStructure(e2, t2) {
354
+ m.cache.addHooks(e2, t2);
355
+ }, getHookStructure(e2) {
356
+ const t2 = m.cache.getAuiVueDefined(e2);
357
+ return ((t2 == null ? void 0 : t2.hooks) || []).slice(0);
358
+ }, formatStructure(e2) {
359
+ const t2 = m.cache.getAuiVueDefined(e2);
360
+ if (!(t2 == null ? void 0 : t2.origin)) return null;
361
+ let n2 = a({}, t2.origin);
362
+ const r2 = m.getHookStructure(e2);
363
+ let i2;
364
+ for (; i2 = r2.shift(); ) {
365
+ const e3 = i2(n2);
366
+ e3 && (n2 = e3);
367
+ }
368
+ return n2;
369
+ } }, f = m.init();
370
+ export {
371
+ AuiComponent,
372
+ f as default
373
+ };
374
+ //# sourceMappingURL=core.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.es.js","sources":["../src/core.ts"],"sourcesContent":["import type { Component as ComponentType } from 'vue';\nimport { h, useSlots, useAttrs, onMounted, ref, createApp, defineComponent } from 'vue';\nimport { merge } from 'ts-deepmerge';\nexport { type Component as TraditionComponent } from './types';\n\nconst TAG_PREFIX = __AUI_CONFIG__.tagPrefix || 'aui';\nconst AUI_ATTR_FLAG = 'data-v-aui';\n\nconst shadowSymbol = Symbol('shadow');\n\nexport type HookHandler = (c: any) => void | any;\n\ntype AUI_COMPONENT_OPTION = {\n valueType?: any\n}\n\nexport type Component = ComponentType;\n\ntype AUI_SLOT_CACHE = {\n start: Comment,\n end: Comment,\n};\n\ntype AUI_COMP_SHADOW = {\n el?: HTMLElement | null,\n ref?: Component | null,\n value?: string | null,\n options?: AUI_COMPONENT_OPTION,\n needHook: boolean,\n slot: Record<string, AUI_SLOT_CACHE>,\n};\n\ntype GlobalAuiCore = {\n defined: Record<string, AUI_VUE_DEFINE_CACHE>\n}\n\ntype SlotElement = {\n default: Node[],\n [key: string]: Node[],\n}\n\nfunction getGlobalAuiCore(): GlobalAuiCore {\n if (!Object.prototype.hasOwnProperty.call(window, '__GLOBAL_AUI_CORE__')) {\n Object.defineProperty(window, '__GLOBAL_AUI_CORE__', {\n value: {\n defined: {} as Record<string, AUI_VUE_DEFINE_CACHE>\n },\n writable: false,\n enumerable: false,\n });\n }\n return (window as any)['__GLOBAL_AUI_CORE__'];\n}\n\n\nexport class AuiComponent extends HTMLElement {\n __hasVue__: boolean = false;\n private static readonly shadowSymbol: typeof shadowSymbol = shadowSymbol;\n private [shadowSymbol]: AUI_COMP_SHADOW = { needHook: false, slot: {} };\n\n constructor(options?: AUI_COMPONENT_OPTION) {\n super();\n this[AuiComponent.shadowSymbol].options = options || {};\n this.$initAttrs();\n }\n\n connectedCallback() {\n // console.log('aui component connected:', this.tagName);\n\n if (this.$needInit()) {\n this.$needHook(true);\n this.$initVue();\n }\n\n }\n\n set textContent(v: string) {\n if (!this.$needHook()) {\n super.textContent = v;\n return;\n }\n\n this.$textContent(v);\n }\n\n get textContent() {\n if (!this.$needHook()) {\n return super.textContent || '';\n }\n\n return this.$textContent('default');\n }\n\n set innerHTML(v: string) {\n if (!this.$needHook()) {\n super.innerHTML = v;\n return;\n }\n\n this.$innerHTML(v);\n }\n\n get innerHTML() {\n if (!this.$needHook()) {\n return super.innerHTML || '';\n }\n\n return this.$innerHTML('default');\n }\n\n set innerText(v: string) {\n this.$ignoreLog('innerText');\n super.innerText = v;\n }\n\n prepend<T extends Node>(node: T) {\n if (!this.$needHook()) {\n return super.prepend(node);\n }\n this.$prepend('default', node);\n }\n\n appendChild<T extends Node>(node: T): T {\n if (!this.$needHook()) {\n return super.appendChild(node);\n }\n return this.$appendChild('default', node);\n }\n\n set value(v: string | null) {\n let val: any = v;\n\n const oldValue = this[AuiComponent.shadowSymbol].value;\n let newValue;\n\n if (this.$isArrayValue()) {\n val = AuiComponent.$anyToArray(v);\n newValue = JSON.stringify(val);\n } else {\n newValue = val.toString();\n }\n\n if (oldValue === newValue) return;\n\n this[AuiComponent.shadowSymbol].value = newValue;\n\n if (this[AuiComponent.shadowSymbol].el) {\n this.$attrChange('value');\n }\n }\n\n get value(): any {\n const v = this[AuiComponent.shadowSymbol].value;\n if (this.$isArrayValue()) {\n return typeof v === 'string' ? JSON.parse(v) : v;\n } else {\n return v;\n }\n }\n\n hasAttribute(qualifiedName: string): boolean {\n const shadowElement = this[AuiComponent.shadowSymbol].el;\n if (shadowElement) {\n return shadowElement.hasAttribute(qualifiedName);\n }\n return super.hasAttribute(qualifiedName);\n }\n\n setAttribute(qualifiedName: string, value: string): void {\n value = value.toString();\n const shadowElement = this[AuiComponent.shadowSymbol].el;\n if (shadowElement) {\n if (shadowElement.getAttribute(qualifiedName) === value) return;\n shadowElement.setAttribute(qualifiedName, value);\n }\n const isShow = this.$isShowProp(_M.vueAttrName(qualifiedName));\n if (isShow) {\n super.setAttribute(qualifiedName, value);\n }\n\n if (qualifiedName === 'value' && shadowElement) {\n this.value = shadowElement.getAttribute(qualifiedName);\n } else {\n this.$attrChange(qualifiedName);\n }\n }\n\n getAttribute(qualifiedName: string): string | null {\n const shadowElement = this[AuiComponent.shadowSymbol].el;\n return shadowElement ? shadowElement.getAttribute(qualifiedName) : super.getAttribute(qualifiedName);\n }\n\n removeAttribute(qualifiedName: string): void {\n const shadowElement = this[AuiComponent.shadowSymbol].el;\n if (shadowElement) {\n shadowElement.removeAttribute(qualifiedName);\n }\n const isShow = this.$isShowProp(_M.vueAttrName(qualifiedName));\n if (isShow) {\n super.removeAttribute(qualifiedName);\n }\n this.$attrChange(qualifiedName);\n }\n\n attributeChangedCallback(name: string, oldValue: string | null, newValue: string | null) {\n const shadowElement = this[AuiComponent.shadowSymbol].el;\n if (!shadowElement) return;\n if (oldValue === newValue) return;\n\n if (!this.$isShowProp(_M.vueAttrName(name))) {\n super.removeAttribute(name);\n }\n\n shadowElement.setAttribute(name, newValue || '');\n if (name !== 'value') {\n this.$attrChange(name);\n }\n\n }\n\n // ---------------------------\n\n static $anyToArray(s: any): any {\n let arr = [];\n if (typeof s === 'string') {\n try {\n const json = JSON.parse(s);\n if (json instanceof Array) {\n return json;\n }\n } catch (_) { }\n const sp = s.split(',');\n arr = sp.filter((item) => item ? item.trim() : false);\n } else if (s instanceof Array) {\n arr = s;\n }\n\n return arr;\n }\n\n // ---------------------------\n\n $textContent(name: string, ...args: any): string {\n if (args.length === 0) {\n const ret = [];\n const { start, end } = this.$slot(name) || {};\n let next: Comment | Node | ChildNode | null | undefined = start;\n while (next && (next = next.nextSibling) && next !== end) {\n ret.push(next.textContent);\n }\n return ret.join('');\n\n } else {\n this.$replaceChildren(name, [document.createTextNode(args[0] || '')]);\n }\n return '';\n }\n\n $innerHTML(name: string, ...args: any): string {\n if (args.length === 0) {\n const ret = [];\n const { start, end } = this.$slot(name) || {};\n let next: Comment | Node | ChildNode | null | undefined = start;\n while (next && (next = next.nextSibling) && next !== end) {\n if ((next as any).outerHTML) {\n ret.push((next as any).outerHTML);\n } else {\n let text = next.textContent;\n if (next instanceof Comment) {\n text = `<!--${text}-->`;\n }\n ret.push(text);\n }\n\n }\n return ret.join('');\n\n } else {\n const tpl = document.createElement('div');\n tpl.innerHTML = args[0] || '';\n const children = this.$moveChildren(tpl as any);\n this.$replaceChildren(name, children.default);\n }\n return '';\n }\n\n $prepend<T extends Node>(name: string, node: T) {\n const { start } = this.$slot(name) || {};\n start?.parentNode?.insertBefore(node, start.nextSibling);\n }\n\n $appendChild<T extends Node>(name: string, node: T): T {\n const { end } = this.$slot(name) || {};\n end?.parentNode?.insertBefore(node, end);\n return node;\n }\n\n $childNodes(name?: string): NodeListOf<ChildNode> {\n const ret = [];\n const { start, end } = this.$slot(name) || {};\n let next: Comment | Node | ChildNode | null | undefined = start;\n while (next && (next = next.nextSibling) && next !== end) {\n ret.push(next);\n }\n return ret as any;\n }\n\n $children(name?: string): HTMLCollection {\n const ret = [];\n const { start, end } = this.$slot(name) || {};\n let next: Comment | Node | ChildNode | null | undefined = start;\n while (next && (next = next.nextSibling) && next !== end) {\n if (next instanceof HTMLElement) {\n ret.push(next);\n }\n }\n return ret as any;\n }\n\n $replaceChildren(name: string, children: any[]) {\n const { start, end } = this.$slot(name) || {};\n let next: Comment | Node | ChildNode | null | undefined = null;\n while (start && (next = start.nextSibling) && next !== end) {\n next.parentNode?.removeChild(next);\n }\n if (end) {\n while (next = children.shift()) {\n end.parentNode?.insertBefore(next, end);\n }\n }\n }\n\n $slot(name?: string, slot?: AUI_SLOT_CACHE): AUI_SLOT_CACHE | undefined {\n name = name || 'default';\n if (slot) {\n this[AuiComponent.shadowSymbol].slot[name] = slot;\n } else {\n return this[AuiComponent.shadowSymbol].slot[name];\n }\n }\n\n $needHook(need?: boolean): boolean {\n if (typeof need === 'boolean') {\n this[AuiComponent.shadowSymbol].needHook = need;\n }\n return this[AuiComponent.shadowSymbol].needHook;\n }\n\n $ignoreLog(name: string) {\n console.warn(`aui component ignore : ${name}`);\n }\n\n $moveChildren(el?: AuiComponent): SlotElement {\n el = el || this;\n const list = el.childNodes;\n const ret: SlotElement = {\n default: []\n };\n while (list.length > 0) {\n const child = list[0] as AuiSlot;\n child.parentNode?.removeChild(child);\n if (AuiSlot.$isForAuiSlot(child)) {\n const name = child.getAttribute('for') || 'default';\n ret[name] = ret[name] || [];\n const children = Array.prototype.slice.call(child.childNodes);\n AuiSlot.prototype.$bind.call(child, el);\n ret[name].push(...children);\n } else {\n ret['default'].push(child);\n }\n }\n return ret;\n }\n\n $isArrayValue() {\n return this[AuiComponent.shadowSymbol].options?.valueType === Array;\n }\n\n $attrChange(name: string) {\n if (name === 'value') {\n const val = this.value;\n if (super.hasAttribute(AUI_ATTR_FLAG)) {\n this.$call('$emit', `update:value`, val);\n } else {\n super.dispatchEvent(new CustomEvent('input', {\n bubbles: true,\n composed: true,\n }));\n // super.dispatchEvent(new CustomEvent('change', {\n // bubbles: true,\n // composed: true,\n // }));\n }\n }\n this.dispatchEvent(new CustomEvent('aui-attr-change', {\n bubbles: true,\n composed: true,\n detail: { attributeName: _M.vueAttrName(name) }\n }));\n }\n\n $initAttrs() {\n const attributes = this.attributes;\n const shadow = document.createElement('div');\n for (let i = 0; i < attributes.length; i++) {\n const attr = attributes[i];\n shadow.setAttribute(attr.name, attr.value);\n if (!this.$isShowProp(_M.vueAttrName(attr.name))) {\n super.removeAttribute(attr.name);\n }\n if (attr.name === 'value') {\n this.value = attr.value;\n }\n }\n Object.defineProperty(this, 'attributes', {\n get value() {\n return shadow.attributes;\n },\n writable: false,\n });\n\n this[AuiComponent.shadowSymbol].el = shadow;\n }\n\n $isShowProp(name: string): boolean {\n if (_M.isVueAttr(name)) return true;\n const prop = this.$getProp(name);\n // console.log('name:', name)\n const isShow = prop?.show;\n return isShow;\n }\n\n $getProp(name: string): any {\n const auiVueDefined = _M.cache.getAuiVueDefined(this.tagName);\n const props = (auiVueDefined?.origin as any)?.props || {};\n return props[name];\n }\n\n $initVue() {\n if (this.__hasVue__) {\n return;\n }\n this.__hasVue__ = true;\n\n const tagName = this.tagName.toLowerCase();\n const auiVueDefined = _M.cache.getAuiVueDefined(tagName);\n if (!auiVueDefined) {\n console.warn(`AUI组件 [${this.tagName}] 未定义`);\n return;\n }\n createApp(_M.createVueComponent(tagName, this)).mount(this);\n }\n\n $needInit() {\n const flag = super.hasAttribute(AUI_ATTR_FLAG);\n if (flag) {\n return false;\n }\n\n return true;\n }\n\n $bindVue(v: Component) {\n if (this[AuiComponent.shadowSymbol].ref) {\n return;\n }\n // Object.assign(v, { $aui: this });\n this[AuiComponent.shadowSymbol].ref = v;\n this.__hasVue__ = true;\n // 触发init事件\n const event = new CustomEvent('aui-init', {\n bubbles: false,\n detail: { code: 0 }\n });\n this.dispatchEvent(event);\n const auiInit = (_M.cache.getAuiVueDefined(this.tagName)?.origin as any)?.auiInit;\n if (auiInit) {\n auiInit.call(v);\n }\n }\n\n $call(name?: string, ...args: any[]): any {\n const ref = this[AuiComponent.shadowSymbol].ref as Record<string, any>;\n return _M.$call(ref, name, ...args);\n }\n\n}\n\ntype TypeAuiComponent = typeof AuiComponent;\n\ntype AUI_VUE_DEFINE_CACHE = {\n aui?: TypeAuiComponent,\n vue?: Component,\n origin?: Component,\n hooks?: HookHandler[],\n}\n\n\nclass AuiSlot extends HTMLElement {\n\n _el_?: AuiComponent;\n _name_?: string;\n\n constructor() {\n super();\n }\n\n connectedCallback() {\n this.style.display = 'none';\n }\n\n set textContent(v: string) {\n if (this._name_) {\n this._el_?.$textContent(this._name_, v);\n } else {\n super.textContent = v;\n }\n }\n\n set innerHTML(v: string) {\n if (this._name_) {\n this._el_?.$innerHTML(this._name_, v);\n } else {\n super.innerHTML = v;\n }\n }\n\n prepend<T extends Node>(node: T): void {\n if (this._name_) {\n this._el_?.$prepend(this._name_, node);\n } else {\n super.prepend(node);\n }\n }\n\n appendChild<T extends Node>(node: T): T {\n if (this._name_) {\n this._el_?.$appendChild(this._name_, node);\n return node;\n } else {\n return super.appendChild(node);\n }\n }\n\n // ---------------------\n\n static $isAuiSlot(el: HTMLElement) {\n if (!el || el.nodeType !== Node.ELEMENT_NODE) return false;\n\n if (el.tagName.toLowerCase() === 'aui-slot') return true;\n\n return false;\n }\n\n static $isForAuiSlot(el: HTMLElement) {\n if (AuiSlot.$isAuiSlot(el) && el.hasAttribute('for')) return true;\n return false;\n }\n\n $bind(el: AuiComponent) {\n this._el_ = el;\n this._name_ = this.getAttribute('for') || 'default';\n }\n\n $replace(el: AuiComponent) {\n const name = this.getAttribute('name') || 'default';\n const start = document.createComment(`aui-slot-${name}-start`);\n const end = document.createComment(`aui-slot-${name}-end`);\n\n el.$slot(name, { start, end });\n this.replaceWith(start, end);\n }\n}\n\nconst _M = {\n init() {\n _M.defineSlot();\n return _M;\n },\n defineSlot() {\n try {\n customElements.define('aui-slot', AuiSlot);\n } catch (error) { }\n },\n $call(ref: Record<string, any>, name?: string, ...args: any[]): any {\n\n if (!ref) {\n return new Error('not init');\n }\n\n if (!name) return ref;\n\n if (typeof ref[name] === 'function') {\n return ref[name].call(ref, ...args);\n }\n\n const sp = name.split('.');\n let target = ref, last = sp.pop() || '', cur = null;\n\n while (cur = sp.shift()) {\n if (Object.prototype.hasOwnProperty.call(target, cur)) {\n target = target[cur];\n } else {\n return new Error('no match name');\n }\n }\n\n if (args.length === 0) {\n return target[last];\n } else {\n target[last] = args[0];\n return null;\n }\n\n },\n formatName(name: string | undefined): string {\n if (!name) {\n return '';\n }\n name = name.replace(/[A-Z]/g, function (s) {\n return '-' + s.toLowerCase();\n });\n return TAG_PREFIX + name;\n },\n cache: {\n defined: getGlobalAuiCore().defined,\n getAuiVueDefined(tagName: string): AUI_VUE_DEFINE_CACHE | undefined {\n tagName = tagName.toLowerCase();\n return _M.cache.defined[tagName];\n },\n getAuiPropNames(tagName: string): string[] {\n const auiVueDefined = _M.cache.getAuiVueDefined(tagName);\n const props = (auiVueDefined?.origin as any)?.props || {};\n const names = [];\n for (const key in props) {\n names.push(_M.auiAttrName(key));\n }\n return names;\n },\n addHooks(name: string, handle: HookHandler) {\n name = name.toLowerCase();\n const auiVueDefined = _M.cache.getAuiVueDefined(name);\n if (auiVueDefined) {\n auiVueDefined.hooks = auiVueDefined.hooks || [];\n auiVueDefined.hooks.push(handle);\n } else {\n _M.cache.defined[name] = {\n hooks: [handle],\n }\n }\n }\n },\n createExtendComp(v: Component): Component {\n return defineComponent({\n props: {\n auiExtend: {\n type: String,\n },\n value: {\n type: (v as any).props?.value?.type || [String, Number, Array],\n }\n },\n methods: {\n $anyToArray: AuiComponent.$anyToArray,\n $value(...args: any[]) {\n const $aui = this.$aui();\n if (args.length === 0) {\n return $aui?.value;\n } else {\n if ($aui) {\n $aui.value = args[0];\n }\n }\n },\n $call(name?: string, ...args: any[]): any {\n const $aui = this.$aui();\n if (!$aui) return null;\n return _M.$call($aui, name, ...args);\n },\n $aui(): AuiComponent | null {\n return this.$el?.parentNode;\n },\n },\n data() {\n return {\n\n }\n }\n })\n },\n patchDefaultProps(origin: Component): any {\n\n const valueType = (origin as any).props?.value?.type;\n\n if (!(origin as any).mixins) {\n (origin as any).mixins = [];\n }\n\n (origin as any).mixins.push(_M.createExtendComp(origin));\n\n return valueType;\n\n },\n defineAuiComponent(tagName: string, component: Component, origin: Component) {\n\n const valueType = _M.patchDefaultProps(origin);\n\n if (!_M.cache.defined[tagName]?.origin) {\n class AuiChild extends AuiComponent {\n constructor() {\n super({ valueType });\n }\n\n static get observedAttributes() {\n return _M.cache.getAuiPropNames(tagName);\n }\n\n }\n\n _M.cache.defined[tagName] = {\n aui: AuiChild,\n vue: component,\n origin,\n hooks: _M.cache.defined[tagName]?.hooks || [],\n };\n\n customElements.define(tagName, AuiChild);\n\n } else {\n _M.cache.defined[tagName].origin = origin;\n }\n },\n\n define(v: Component, force: boolean = false): Component {\n const tagName = _M.formatName(v.name);\n\n // console.log('define aui comp, name is', tagName);\n\n if (!tagName) {\n console.warn('当前组件不符合AUI定义');\n return v;\n }\n\n const auiVueDefined = _M.cache.getAuiVueDefined(tagName);\n\n if (auiVueDefined && auiVueDefined.vue) {\n if (!force) {\n console.warn('AUI组件已经被定义,当前组件将被舍弃,将返回已定义的组件,如需覆盖组件,请添加force: true');\n } else {\n console.log('aui组件更新origin定义');\n _M.defineAuiComponent(tagName, auiVueDefined.vue, v);\n }\n\n return auiVueDefined.vue;\n }\n\n const wrappedComponent = _M.createVueComponent(tagName);\n\n _M.defineAuiComponent(tagName, wrappedComponent, v);\n\n return wrappedComponent;\n },\n createTempSlot(children: SlotElement): any {\n const ret = {} as { [key: string]: any };\n Object.keys(children).forEach((name) => {\n ret[name] = () => h('aui-slot', { name });\n });\n return ret;\n },\n replaceTempSlot(el: AuiComponent, children: SlotElement) {\n const names = Object.keys(children);\n names.forEach((name) => {\n const slot = el.querySelector(`aui-slot[name=\"${name}\"]`) as AuiSlot | null;\n if (slot) {\n AuiSlot.prototype.$replace.call(slot, el);\n el.$replaceChildren(name, children[name]);\n }\n });\n\n },\n createVueComponent(tagName: string, el?: AuiComponent): Component {\n\n const children = el ? el.$moveChildren() : { default: [] };\n\n const wrappedComponent = {\n setup() {\n const attrs = useAttrs()\n const vueComponentRef = ref<any>(null)\n const elementRef = ref<AuiComponent | null>(null)\n const selfAttrs = ref<Record<string, any>>({})\n const slotsRef = ref<any>(el ? _M.createTempSlot(children) : useSlots())\n let target: Component | null;\n\n onMounted(() => {\n if (vueComponentRef.value && elementRef.value && elementRef.value.$bindVue) {\n elementRef.value.$bindVue(vueComponentRef.value);\n\n el && _M.replaceTempSlot(el, children);\n\n // 监听属性变化事件\n elementRef.value.addEventListener('aui-attr-change', () => {\n if (elementRef.value) {\n selfAttrs.value = _M.getAuiAttrs(elementRef.value);\n }\n });\n\n elementRef.value.$call('$emit', 'update:value', elementRef.value.value);\n } else {\n console.warn('AUI组件绑定失败');\n }\n })\n\n return () => {\n\n if (el) {\n elementRef.value = el;\n selfAttrs.value = _M.getAuiAttrs(el);\n }\n\n if (!target) {\n target = _M.formatStructure(tagName);\n }\n\n if (!target) {\n console.warn('AUI组件未定义,加载失败,name:', tagName);\n return null;\n }\n\n const trueComp = h(target, { ...attrs, ...selfAttrs.value, ref: vueComponentRef }, slotsRef.value || {});\n\n const ret = el ? trueComp : h(tagName, { ref: elementRef, [AUI_ATTR_FLAG]: '' }, [\n trueComp\n ]);\n\n return ret;\n }\n }\n };\n\n return wrappedComponent;\n },\n getAuiAttrs(el: AuiComponent): Record<string, any> {\n\n const attrs = {} as Record<string, any>;\n\n const attributes = el.attributes;\n\n for (let i = 0; i < attributes.length; i++) {\n const attr = attributes[i];\n // 跳过 aui 和 vue 标记属性\n if (attr.name === TAG_PREFIX || _M.isVueAttr(attr.name)) continue;\n attrs[attr.name] = attr.value;\n }\n\n if (el.value !== null) {\n attrs.value = el.value;\n }\n\n return attrs;\n },\n isVueAttr(name: string): boolean {\n return name.indexOf('data-v-') === 0;\n },\n auiAttrName(name: string): string {\n return name.replace(/([A-Z])/g, (a) => '-' + a.toLowerCase());\n },\n vueAttrName(name: string): string {\n if (_M.isVueAttr(name)) return name;\n return name.replace(/-([a-z])/g, (_, s1) => s1.toUpperCase());\n },\n hookStructure(name: string, handle: HookHandler) {\n _M.cache.addHooks(name, handle);\n },\n getHookStructure(name: string): HookHandler[] {\n const auiVueDefined = _M.cache.getAuiVueDefined(name);\n const hooks = auiVueDefined?.hooks || [];\n return hooks.slice(0);\n },\n formatStructure(tagName: string): Component | null {\n const auiVueDefined = _M.cache.getAuiVueDefined(tagName);\n if (!auiVueDefined?.origin) {\n return null;\n }\n let origin = merge({}, auiVueDefined.origin) as Component;\n const hooks = _M.getHookStructure(tagName);\n let handle;\n while (handle = hooks.shift()) {\n const cur = handle(origin);\n if (cur) {\n origin = cur;\n }\n }\n\n return origin;\n }\n};\n\nexport default _M.init();"],"names":["_a","_b","TAG_PREFIX","__AUI_CONFIG__","tagPrefix","AUI_ATTR_FLAG","shadowSymbol","Symbol","AuiComponent","HTMLElement","options","super","this","__hasVue__","needHook","slot","$initAttrs","connectedCallback","$needInit","$needHook","$initVue","v","$textContent","textContent","$innerHTML","innerHTML","$ignoreLog","innerText","node","prepend","$prepend","$appendChild","appendChild","val","oldValue","value","newValue","$isArrayValue","$anyToArray","JSON","stringify","toString","el","$attrChange","parse","qualifiedName","shadowElement","hasAttribute","getAttribute","setAttribute","$isShowProp","_M","vueAttrName","removeAttribute","name","s","arr","json","Array","_","split","filter","item","trim","args","length","ret","start","end","$slot","next","nextSibling","push","join","$replaceChildren","document","createTextNode","outerHTML","text","Comment","tpl","createElement","children","$moveChildren","default","parentNode","insertBefore","removeChild","shift","need","list","childNodes","child","AuiSlot","$isForAuiSlot","prototype","slice","call","$bind","valueType","$call","dispatchEvent","CustomEvent","bubbles","composed","detail","attributeName","attributes","shadow","i","attr","Object","defineProperty","writable","isVueAttr","prop","$getProp","isShow","show","auiVueDefined","cache","getAuiVueDefined","tagName","origin","props","toLowerCase","createApp","createVueComponent","mount","ref","event","code","auiInit","constructor","style","display","_name_","_el_","nodeType","Node","ELEMENT_NODE","$isAuiSlot","createComment","replaceWith","init","defineSlot","customElements","define","error","Error","sp","target","last","pop","cur","hasOwnProperty","formatName","replace","defined","window","enumerable","names","key","auiAttrName","handle","hooks","createExtendComp","defineComponent","auiExtend","type","String","Number","methods","$aui","$el","data","mixins","component","patchDefaultProps","AuiChild","observedAttributes","getAuiPropNames","aui","vue","force","defineAuiComponent","wrappedComponent","keys","forEach","h","querySelector","$replace","setup","attrs","useAttrs","vueComponentRef","elementRef","selfAttrs","slotsRef","createTempSlot","useSlots","onMounted","$bindVue","replaceTempSlot","addEventListener","getAuiAttrs","formatStructure","trueComp","indexOf","a","s1","toUpperCase","addHooks","merge","getHookStructure","core"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./core.cjs.js");exports.AuiComponent=e.AuiComponent,exports.default=e.default;//# sourceMappingURL=index.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ export * from './core';
2
+ export { default } from './core';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,QAAQ,CAAC;AACvB,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { AuiComponent, default as default2 } from "./core.es.js";
2
+ export {
3
+ AuiComponent,
4
+ default2 as default
5
+ };
6
+ //# sourceMappingURL=index.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.es.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("url"),n=require("path"),r=require("glob"),t=require("ts-deepmerge");var i="undefined"!=typeof document?document.currentScript:null;const o="auicore",u=e.fileURLToPath("undefined"==typeof document?require("url").pathToFileURL(__filename).href:i&&"SCRIPT"===i.tagName.toUpperCase()&&i.src||new URL("plugin.cjs.js",document.baseURI).href),a=n.dirname(u),s="Comp",c="// insert";function _(e){const n="virtual:aui-config",r="\0"+n;return{name:"aui-config-plugin",resolveId(e){if(e===n)return r},load(n){if(n===r){const n=t.merge({tagPrefix:"aui",buildTime:(new Date).toISOString()},e||{});return`export default ${JSON.stringify(n)}`}}}}exports.getAuiConfig=function(e){const i=(null==(e=t.merge({tagPrefix:"aui"},e||{}))?void 0:e.tagPrefix)||"aui";return{userConfig:{plugins:[{name:"aui-export-plugin",enforce:"pre",transform(e,t){if(t.endsWith(".export.aui.ts")){if(-1===e.indexOf(c))throw new Error(`.export.aui.ts文件必须包含[ ${c} ]标记`);const t=n.join(a,"../src"),i=r.glob.sync("**/*.aui.vue",{cwd:t});if(0===i.length)return null;const o=[];return i.forEach((e,r)=>{const i=n.join(t,e).replace(/\\\\/g,"/");o.push(`import ${s}${r} from '${i}';`),o.push(`import {componentStructure as ${s}${r}_${r} } from '${i}';`)}),o.push(e.replace(c,function(e){const n=[];return e.forEach((e,r)=>{n.push(`[${s}${r}_${r}.name]: ${s}${r}`)}),n.join(", ")}(i))),{code:o.join("\n")}}return null}},{name:"aui-vue-plugin",enforce:"post",transform(e,r){if(r.endsWith(".aui.vue")){const t=n.basename(r).replace(".aui.vue",""),i=e.split("export default"),u=`\nconst __aui_comp_define__ = ${i.pop()};\nimport __aui_como_core__ from '@${o}';\nif(!__aui_comp_define__.name) {\n __aui_comp_define__.name = '${t}';\n}\nexport const componentStructure = __aui_comp_define__;\nexport default __aui_como_core__.define(__aui_comp_define__);\n`;return{code:i.join("export default")+u}}return null}},_(e)],resolve:{alias:{[`@${o}`]:n.resolve(a,"./core")},extensions:[".js",".ts",".jsx",".tsx",".json",".cjs.js",".es.js"]},define:{__AUI_CONFIG__:JSON.stringify(t.merge({tagPrefix:"aui",buildTime:(new Date).toISOString()},e||{}))}},isCustomElement:e=>e.startsWith(`${i}-`)}};//# sourceMappingURL=plugin.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin.cjs.js","sources":["../src/plugin.ts"],"sourcesContent":["import type { Plugin, UserConfig } from 'vite'\nimport { fileURLToPath } from 'url'\nimport { default as path, dirname } from 'path'\nimport { glob } from 'glob'\nimport { merge } from 'ts-deepmerge'\n\nconst coreAlias = 'auicore'\n// 避免使用 import.meta.url,在构建时会被转换为 data URL\nconst __filename = fileURLToPath(import.meta.url)\nconst __dirname = dirname(__filename)\n\n// 自定义AUI.vue文件处理插件\nfunction auiVuePlugin(): Plugin {\n return {\n name: 'aui-vue-plugin',\n enforce: 'post', // 在Vue插件之后执行\n transform(code, id) {\n if (id.endsWith(`.aui.vue`)) {\n const fileName = path.basename(id).replace('.aui.vue', '');\n const sp = code.split('export default');\n const last = `\nconst __aui_comp_define__ = ${sp.pop()};\nimport __aui_como_core__ from '@${coreAlias}';\nif(!__aui_comp_define__.name) {\n __aui_comp_define__.name = '${fileName}';\n}\nexport const componentStructure = __aui_comp_define__;\nexport default __aui_como_core__.define(__aui_comp_define__);\n`;\n const first = sp.join('export default');\n return {\n code: first + last,\n }\n }\n return null\n },\n }\n}\n\n\nconst IMPORT_PREFIX = 'Comp';\n\nfunction joinExport(files: string[]): string {\n const codes: string[] = [];\n files.forEach((_, index: number) => {\n codes.push(`[${IMPORT_PREFIX}${index}_${index}.name]: ${IMPORT_PREFIX}${index}`);\n });\n return codes.join(', ');\n}\n\nconst INSERT_FLAG = '// insert';\n\nfunction auiExportPlugin(): Plugin {\n return {\n name: 'aui-export-plugin',\n enforce: 'pre',\n transform(code, id) {\n if (id.endsWith(`.export.aui.ts`)) {\n\n if (code.indexOf(INSERT_FLAG) === -1) {\n throw new Error(`.export.aui.ts文件必须包含[ ${INSERT_FLAG} ]标记`);\n }\n\n const cwd = path.join(__dirname, '../src');\n const files: string[] = glob.sync('**/*.aui.vue', {\n cwd,\n });\n\n if (files.length === 0) return null;\n\n const codes: string[] = [];\n files.forEach((file, index) => {\n const filePath = path.join(cwd, file).replace(/\\\\\\\\/g, '/');\n codes.push(`import ${IMPORT_PREFIX}${index} from '${filePath}';`);\n codes.push(`import {componentStructure as ${IMPORT_PREFIX}${index}_${index} } from '${filePath}';`);\n });\n codes.push(code.replace(INSERT_FLAG, joinExport(files)));\n return { code: codes.join(`\\n`) };\n }\n return null\n },\n }\n}\n\n\nfunction auiConfigPlugin(options?: AuiOptions) {\n const virtualModuleId = 'virtual:aui-config'\n const resolvedVirtualModuleId = '\\0' + virtualModuleId\n\n return {\n name: 'aui-config-plugin',\n resolveId(id: string) {\n if (id === virtualModuleId) {\n return resolvedVirtualModuleId\n }\n },\n load(id: string) {\n if (id === resolvedVirtualModuleId) {\n const auiConfig = merge({\n tagPrefix: 'aui',\n buildTime: new Date().toISOString()\n }, options || {})\n return `export default ${JSON.stringify(auiConfig)}`\n }\n }\n }\n}\n\nexport type AuiOptions = {\n tagPrefix?: string,\n};\n\nexport type AuiVuePlugin = {\n userConfig: UserConfig,\n isCustomElement: (tag: string) => boolean,\n};\n\n// 导出AUI配置函数\nexport function getAuiConfig(options?: AuiOptions): AuiVuePlugin {\n\n options = merge({\n tagPrefix: 'aui'\n }, options || {});\n\n const tagPrefix = options?.tagPrefix || 'aui';\n\n return {\n userConfig: {\n plugins: [auiExportPlugin(), auiVuePlugin(), auiConfigPlugin(options)],\n resolve: {\n alias: {\n [`@${coreAlias}`]: path.resolve(__dirname, './core')\n },\n extensions: ['.js', '.ts', '.jsx', '.tsx', '.json', '.cjs.js', '.es.js'],\n },\n define: {\n __AUI_CONFIG__: JSON.stringify(merge({\n tagPrefix: 'aui',\n buildTime: new Date().toISOString()\n }, options || {}))\n },\n },\n isCustomElement: (tag: string) => tag.startsWith(`${tagPrefix}-`),\n }\n}"],"names":["coreAlias","__filename","fileURLToPath","__dirname","dirname","IMPORT_PREFIX","INSERT_FLAG","auiConfigPlugin","options","virtualModuleId","resolvedVirtualModuleId","name","resolveId","id","load","auiConfig","merge","tagPrefix","buildTime","Date","toISOString","JSON","stringify","exports","getAuiConfig","userConfig","plugins","enforce","transform","code","endsWith","indexOf","Error","cwd","path","join","files","glob","sync","length","codes","forEach","file","index","filePath","replace","push","_","fileName","basename","sp","split","last","pop","resolve","alias","extensions","define","__AUI_CONFIG__","isCustomElement","tag","startsWith"],"mappings":"oOAMA,MAAMA,EAAY,UAEZC,EAAaC,EAAAA,uLACbC,EAAYC,EAAAA,QAAQH,GA+BpBI,EAAgB,OAUhBC,EAAc,YAmCpB,SAASC,EAAgBC,GACvB,MAAMC,EAAkB,qBAClBC,EAA0B,KAAOD,EAEvC,MAAO,CACLE,KAAM,oBACN,SAAAC,CAAUC,GACR,GAAIA,IAAOJ,EACT,OAAOC,CAEX,EACA,IAAAI,CAAKD,GACH,GAAIA,IAAOH,EAAyB,CAClC,MAAMK,EAAYC,EAAAA,MAAM,CACtBC,UAAW,MACXC,WAAAA,IAAeC,MAAOC,eACrBZ,GAAW,CAAA,GACd,MAAO,kBAAkBa,KAAKC,UAAUP,IAC1C,CACF,EAEJ,CAsCAQ,QAAAC,aA1BO,SAAsBhB,GAM3B,MAAMS,GAAYT,OAJlBA,EAAUQ,EAAAA,MAAM,CACdC,UAAW,OACVT,GAAW,CAAA,SAEIA,EAAAA,EAASS,YAAa,MAExC,MAAO,CACLQ,WAAY,CACVC,QAAS,CA3EN,CACLf,KAAM,oBACNgB,QAAS,MACT,SAAAC,CAAUC,EAAMhB,GACd,GAAIA,EAAGiB,SAAS,kBAAmB,CAEjC,IAAA,IAAID,EAAKE,QAAQzB,SACT,IAAI0B,MAAM,yBAAyB1B,SAG3C,MAAM2B,EAAMC,EAAKC,KAAKhC,EAAW,UAC3BiC,EAAkBC,EAAAA,KAAKC,KAAK,eAAgB,CAChDL,QAGF,GAAqB,IAAjBG,EAAMG,OAAc,OAAO,KAE/B,MAAMC,EAAkB,GAOxB,OANAJ,EAAMK,QAAQ,CAACC,EAAMC,KACnB,MAAMC,EAAWV,EAAKC,KAAKF,EAAKS,GAAMG,QAAQ,QAAS,KACvDL,EAAMM,KAAK,UAAUzC,IAAgBsC,WAAeC,OACpDJ,EAAMM,KAAK,iCAAiCzC,IAAgBsC,KAASA,aAAiBC,SAExFJ,EAAMM,KAAKjB,EAAKgB,QAAQvC,EAlChC,SAAoB8B,GAClB,MAAMI,EAAkB,GAIxB,OAHAJ,EAAMK,QAAQ,CAACM,EAAGJ,KAChBH,EAAMM,KAAK,IAAIzC,IAAgBsC,KAASA,YAAgBtC,IAAgBsC,OAEnEH,EAAML,KAAK,KACpB,CANA,CAkCwDC,KACzC,CAAEP,KAAMW,EAAML,KAAK,MAC5B,CACA,OAAO,IACT,GAnEK,CACLxB,KAAM,iBACNgB,QAAS,OACT,SAAAC,CAAUC,EAAMhB,GACd,GAAIA,EAAGiB,SAAS,YAAa,CAC3B,MAAMkB,EAAWd,EAAKe,SAASpC,GAAIgC,QAAQ,WAAY,IACjDK,EAAKrB,EAAKsB,MAAM,kBAChBC,EAAO,iCACSF,EAAGG,2CACCrD,uEAEFgD,kIAMxB,MAAO,CACLnB,KAFYqB,EAAGf,KAAK,kBAENiB,EAElB,CACA,OAAO,IACT,GA6F+C7C,EAAgBC,IAC7D8C,QAAS,CACPC,MAAO,CACL,CAAC,IAAIvD,KAAckC,EAAKoB,QAAQnD,EAAW,WAE7CqD,WAAY,CAAC,MAAO,MAAO,OAAQ,OAAQ,QAAS,UAAW,WAEjEC,OAAQ,CACNC,eAAgBrC,KAAKC,UAAUN,QAAM,CACnCC,UAAW,MACXC,WAAAA,IAAeC,MAAOC,eACrBZ,GAAW,CAAA,MAGlBmD,gBAAkBC,GAAgBA,EAAIC,WAAW,GAAG5C,MAExD"}
@@ -0,0 +1,10 @@
1
+ import type { UserConfig } from 'vite';
2
+ export type AuiOptions = {
3
+ tagPrefix?: string;
4
+ };
5
+ export type AuiVuePlugin = {
6
+ userConfig: UserConfig;
7
+ isCustomElement: (tag: string) => boolean;
8
+ };
9
+ export declare function getAuiConfig(options?: AuiOptions): AuiVuePlugin;
10
+ //# sourceMappingURL=plugin.d.ts.map