agile-core 3.0.7 → 3.0.9
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.cjs.js +1 -1
- package/dist/core.cjs.js.map +1 -1
- package/dist/core.d.ts +23 -4
- package/dist/core.d.ts.map +1 -1
- package/dist/core.es.js +163 -134
- package/dist/core.es.js.map +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.es.js +2 -1
- package/dist/plugin.cjs.js +1 -1
- package/dist/plugin.cjs.js.map +1 -1
- package/dist/plugin.d.ts +1 -0
- package/dist/plugin.d.ts.map +1 -1
- package/dist/plugin.es.js +38 -35
- package/dist/plugin.es.js.map +1 -1
- package/package.json +1 -1
package/dist/core.es.js.map
CHANGED
|
@@ -1 +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, onUpdated, ref, createApp, defineComponent, shallowRef } 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 slotCollection?: Record<string, any[]>,\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 $customEvent(name: string, opts?: any) {\n this.dispatchEvent(new CustomEvent(name, Object.assign({\n bubbles: false,\n composed: false,\n cancelable: true,\n }, opts || {})));\n }\n\n $forceUpdate() {\n let slotCollection: Record<string, any> | null = null;\n const slot = this[AuiComponent.shadowSymbol].slot;\n for (const name in slot) {\n const children = this.$slotCollection(slot[name]);\n if (!slotCollection) slotCollection = {};\n slotCollection[name] = children;\n }\n\n if (slotCollection) {\n this[AuiComponent.shadowSymbol].slotCollection = slotCollection;\n }\n\n this.$customEvent('aui-force-update');\n }\n\n $slotCollection(cache: AUI_SLOT_CACHE) {\n const { start, end } = cache;\n const children = [];\n let child;\n while (start && (child = start.nextSibling) && child !== end) {\n start.parentNode?.removeChild(child);\n children.push(child);\n }\n return children;\n }\n\n $slotReplace() {\n const slotCollection = this[AuiComponent.shadowSymbol].slotCollection;\n if (!slotCollection) return;\n delete this[AuiComponent.shadowSymbol].slotCollection;\n for (const name in slotCollection) {\n const slot = this.querySelector(`aui-slot[name=\"${name}\"]`) as AuiSlot;\n slot.$replace(this);\n this.$replaceChildren(name, slotCollection[name]);\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 this.$customEvent('input', {\n bubbles: true,\n composed: true,\n });\n }\n }\n this.$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 this.$customEvent('aui-init', {\n bubbles: false,\n detail: { code: 0 }\n });\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 _M.defineCustomElement('aui-slot', AuiSlot);\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 auix: {\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 _M.defineCustomElement(tagName, AuiChild);\n\n } else {\n _M.cache.defined[tagName].origin = origin;\n }\n },\n\n defineCustomElement(tagName: string, cls: any) {\n try {\n customElements.define(tagName, cls);\n } catch (_) {\n // console.warn('defineCustomElement error', error);\n }\n },\n\n sameComponent(tagName: string, v: any): boolean {\n if (!Object.prototype.hasOwnProperty.call(v, '__hmrId')) return false;\n const auiVueDefined = _M.cache.getAuiVueDefined(tagName);\n const origin = auiVueDefined?.origin as any;\n if (!origin) return false;\n return v.__hmrId === origin.__hmrId;\n },\n\n notifyComponentUpdate(tagName: string) {\n const comps = document.querySelectorAll(tagName) as NodeListOf<AuiComponent>;\n comps.forEach((comp) => {\n comp.$forceUpdate();\n });\n },\n\n define(v: Component, force: boolean = true): 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 || _M.sameComponent(tagName, v)) {\n console.log('aui组件更新origin定义');\n _M.defineAuiComponent(tagName, auiVueDefined.vue, v);\n _M.notifyComponentUpdate(tagName);\n } else {\n console.warn('AUI组件已经被定义,当前组件将被舍弃,将返回已定义的组件,如需覆盖组件,请添加force: true');\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 = shallowRef<any>(null)\n const elementRef = shallowRef<AuiComponent | null>(null)\n const selfAttrs = ref<Record<string, any>>({})\n const slotsRef = shallowRef<any>(el ? _M.createTempSlot(children) : useSlots())\n const target = shallowRef<Component | null>(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 // 监听自定义强制更新事件\n elementRef.value.addEventListener('aui-force-update', () => {\n target.value = null;\n });\n\n elementRef.value.$call('$emit', 'update:value', elementRef.value.value);\n } else {\n console.warn('AUI组件绑定失败');\n }\n })\n\n onUpdated(() => {\n if (elementRef.value) {\n elementRef.value.$slotReplace();\n }\n })\n\n return () => {\n\n if (el) {\n elementRef.value = el;\n selfAttrs.value = _M.getAuiAttrs(el);\n }\n\n if (!target.value) {\n (target as any).value = _M.formatStructure(tagName);\n }\n\n if (!target.value) {\n console.warn('AUI组件未定义,加载失败,name:', tagName);\n return null;\n }\n\n const trueComp = h(target.value, { ...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","$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","opts","dispatchEvent","CustomEvent","Object","assign","bubbles","composed","cancelable","$forceUpdate","slotCollection","children","$slotCollection","$customEvent","cache","start","end","child","nextSibling","parentNode","removeChild","push","$slotReplace","querySelector","$replace","$replaceChildren","args","length","ret","$slot","next","join","document","createTextNode","outerHTML","text","Comment","tpl","createElement","$moveChildren","default","insertBefore","shift","need","list","childNodes","AuiSlot","$isForAuiSlot","prototype","slice","call","$bind","valueType","$call","detail","attributeName","attributes","shadow","i","attr","defineProperty","writable","isVueAttr","prop","$getProp","isShow","show","auiVueDefined","getAuiVueDefined","tagName","origin","props","toLowerCase","createApp","createVueComponent","mount","ref","code","auiInit","constructor","connectedCallback","style","display","_name_","_el_","nodeType","Node","ELEMENT_NODE","$isAuiSlot","createComment","replaceWith","init","defineSlot","defineCustomElement","Error","sp","target","last","pop","cur","hasOwnProperty","formatName","replace","defined","window","enumerable","names","key","auiAttrName","handle","hooks","createExtendComp","defineComponent","auix","type","String","Number","methods","$aui","$el","data","mixins","component","patchDefaultProps","AuiChild","observedAttributes","getAuiPropNames","aui","vue","cls","customElements","define","__hmrId","querySelectorAll","forEach","comp","force","sameComponent","defineAuiComponent","notifyComponentUpdate","wrappedComponent","keys","h","setup","attrs","useAttrs","vueComponentRef","shallowRef","elementRef","selfAttrs","slotsRef","createTempSlot","useSlots","onMounted","$bindVue","replaceTempSlot","addEventListener","getAuiAttrs","onUpdated","formatStructure","trueComp","indexOf","a","s1","toUpperCase","addHooks","merge","getHookStructure","core"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"core.es.js","sources":["../src/core.ts"],"sourcesContent":["import type { Component as ComponentType } from 'vue';\nimport { h, useSlots, useAttrs, onMounted, onUpdated, ref, createApp, defineComponent, shallowRef } from 'vue';\nimport { merge } from 'ts-deepmerge';\nexport { type Component as TraditionComponent } from './types';\n\nconst auiConfig = (function () {\n try {\n return __AUI_CONFIG__;\n } catch (e) {\n return { tagPrefix: 'aui' };\n }\n})();\n\nconst TAG_PREFIX = auiConfig.tagPrefix || 'aui';\nconst AUI_ATTR_FLAG = 'data-v-aui';\nconst AUI_EXTEND_ATTR = 'auix';\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 slotCollection?: Record<string, any[]>,\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\n// function 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__ = 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.$initVue();\n this.$needHook(true);\n }\n\n }\n\n\n\n set innerHTML(v: string) {\n if (!this.$needHook()) {\n // super.innerHTML = v;\n Reflect.set(HTMLElement.prototype, 'innerHTML', v, this);\n return;\n }\n\n this.$innerHTML('default', v);\n }\n\n get innerHTML() {\n if (!this.$needHook()) {\n // return super.innerHTML || '';\n return Reflect.get(HTMLElement.prototype, 'innerHTML', this) || '';\n }\n\n return this.$innerHTML('default');\n }\n\n set textContent(v: string) {\n if (!this.$needHook()) {\n // super.innerHTML = v;\n Reflect.set(HTMLElement.prototype, 'innerHTML', v, this);\n return;\n }\n\n this.$textContent('default', v);\n }\n\n get textContent() {\n if (!this.$needHook()) {\n // return super.innerHTML || '';\n return Reflect.get(HTMLElement.prototype, 'innerHTML', this) || '';\n }\n\n return this.$textContent('default');\n }\n\n set innerText(v: string) {\n this.$ignoreLog('innerText');\n // super.innerText = v;\n Reflect.set(HTMLElement.prototype, 'innerText', v, this);\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 prepend<T extends Node>(node: T) {\n if (!this.$needHook()) {\n return HTMLElement.prototype.prepend.call(this, node);\n }\n this.$prepend('default', node);\n }\n\n appendChild<T extends Node>(node: T): T {\n if (!this.$needHook()) {\n return HTMLElement.prototype.appendChild.call(this, node) as T;\n }\n return this.$appendChild('default', node);\n }\n\n insertBefore<T extends Node>(node: T, child: Node | null): T {\n if (!this.$needHook()) {\n return HTMLElement.prototype.insertBefore.call(this, node, child) as T;\n }\n return this.$insertBefore('default', node, child);\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 HTMLElement.prototype.hasAttribute.call(this, 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 HTMLElement.prototype.setAttribute.call(this, 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 HTMLElement.prototype.removeAttribute.call(this, 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 HTMLElement.prototype.removeAttribute.call(this, 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 (e) {\n console.log('$anyToArray err', e);\n }\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 $resetShadowSymbol() {\n this[AuiComponent.shadowSymbol] = { needHook: false, slot: {} };\n }\n\n $customEvent(name: string, opts?: any) {\n this.dispatchEvent(new CustomEvent(name, Object.assign({\n bubbles: false,\n composed: false,\n cancelable: true,\n }, opts || {})));\n }\n\n $forceUpdate() {\n let slotCollection: Record<string, any> | null = null;\n const slot = this[AuiComponent.shadowSymbol].slot;\n for (const name in slot) {\n const children = this.$slotCollection(slot[name]);\n if (!slotCollection) slotCollection = {};\n slotCollection[name] = children;\n }\n\n if (slotCollection) {\n this[AuiComponent.shadowSymbol].slotCollection = slotCollection;\n }\n\n this.$customEvent('aui-force-update');\n }\n\n $slotCollection(cache: AUI_SLOT_CACHE) {\n const { start, end } = cache;\n const children = [];\n let child;\n while (start && (child = start.nextSibling) && child !== end) {\n start.parentNode?.removeChild(child);\n children.push(child);\n }\n return children;\n }\n\n $slotReplace() {\n const slotCollection = this[AuiComponent.shadowSymbol].slotCollection;\n if (!slotCollection) return;\n delete this[AuiComponent.shadowSymbol].slotCollection;\n for (const name in slotCollection) {\n const slot = this.querySelector(`aui-slot[name=\"${name}\"]`) as AuiSlot;\n slot.$replace(this);\n this.$replaceChildren(name, slotCollection[name]);\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 if (!this.$hasSlot()) return '';\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 if (!this.$hasSlot()) return '';\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 $insertBefore<T extends Node>(name: string, node: T, ref: Node | null): T {\n const { start } = this.$slot(name) || {};\n const parentNode = start?.parentNode || this;\n if (ref) {\n if (parentNode === this) {\n HTMLElement.prototype.insertBefore.call(this, node, ref);\n } else {\n parentNode.insertBefore(node, ref);\n }\n } else {\n this.appendChild(node);\n }\n\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 $hasSlot() {\n const keys = Object.keys(this[AuiComponent.shadowSymbol].slot);\n return keys.length > 0;\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 (HTMLElement.prototype.hasAttribute.call(this, AUI_ATTR_FLAG)) {\n this.$call('$emit', `update:value`, val);\n } else {\n this.$customEvent('input', {\n bubbles: true,\n composed: true,\n });\n }\n }\n this.$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 HTMLElement.prototype.removeAttribute.call(this, 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 = HTMLElement.prototype.hasAttribute.call(this, 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 this.$customEvent('aui-init', {\n bubbles: false,\n detail: { code: 0 }\n });\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\nexport class 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 Reflect.set(HTMLElement.prototype, 'textContent', v, this);\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 Reflect.set(HTMLElement.prototype, 'innerHTML', v, this);\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 HTMLElement.prototype.prepend.call(this, 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 HTMLElement.prototype.appendChild.call(this, node) as T;\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 this.$replaceWith(start, end);\n }\n\n $replaceWith(...args: any[]) {\n args.forEach((target) => {\n this.parentNode?.insertBefore(target, this);\n });\n this.parentNode?.removeChild(this);\n }\n}\n\nconst _M = {\n init() {\n _M.defineSlot();\n return _M;\n },\n defineSlot() {\n _M.defineCustomElement('aui-slot', AuiSlot);\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, cur = null;\n const last = sp.pop() || '';\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: {} as Record<string, AUI_VUE_DEFINE_CACHE>, // 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 if (names.indexOf(AUI_EXTEND_ATTR) === -1) {\n names.push(AUI_EXTEND_ATTR);\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 [AUI_EXTEND_ATTR]: {\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 _M.defineCustomElement(tagName, AuiChild);\n\n } else {\n _M.cache.defined[tagName].origin = origin;\n }\n },\n\n defineCustomElement(tagName: string, cls: any) {\n try {\n customElements.define(tagName, cls);\n } catch (_) {\n // console.warn('defineCustomElement error', error);\n }\n },\n\n sameComponent(tagName: string, v: any): boolean {\n if (!Object.prototype.hasOwnProperty.call(v, '__hmrId')) return false;\n const auiVueDefined = _M.cache.getAuiVueDefined(tagName);\n const origin = auiVueDefined?.origin as any;\n if (!origin) return false;\n return v.__hmrId === origin.__hmrId;\n },\n\n notifyComponentUpdate(tagName: string) {\n const comps = document.querySelectorAll(tagName) as NodeListOf<AuiComponent>;\n comps.forEach((comp) => {\n comp.$forceUpdate();\n });\n },\n\n define(v: Component, force = true): 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 || _M.sameComponent(tagName, v)) {\n console.log('aui组件更新origin定义');\n _M.defineAuiComponent(tagName, auiVueDefined.vue, v);\n _M.notifyComponentUpdate(tagName);\n } else {\n console.warn('AUI组件已经被定义,当前组件将被舍弃,将返回已定义的组件,如需覆盖组件,请添加force: true');\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 = shallowRef<any>(null)\n const elementRef = shallowRef<AuiComponent | null>(null)\n const selfAttrs = ref<Record<string, any>>({})\n const slotsRef = shallowRef<any>(el ? _M.createTempSlot(children) : useSlots())\n const target = shallowRef<Component | null>(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 // 监听自定义强制更新事件\n elementRef.value.addEventListener('aui-force-update', () => {\n target.value = null;\n });\n\n elementRef.value.$call('$emit', 'update:value', elementRef.value.value);\n } else {\n console.warn('AUI组件绑定失败');\n }\n })\n\n onUpdated(() => {\n if (elementRef.value) {\n elementRef.value.$slotReplace();\n }\n })\n\n return () => {\n\n if (el) {\n elementRef.value = el;\n selfAttrs.value = _M.getAuiAttrs(el);\n }\n\n if (!target.value) {\n (target as any).value = _M.formatStructure(tagName);\n }\n\n if (!target.value) {\n console.warn('AUI组件未定义,加载失败,name:', tagName);\n return null;\n }\n\n const trueComp = h(target.value, { ...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: HookHandler | null | undefined;\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__","e","tagPrefix","AUI_ATTR_FLAG","AUI_EXTEND_ATTR","shadowSymbol","Symbol","AuiComponent","HTMLElement","options","super","this","__hasVue__","needHook","slot","$initAttrs","connectedCallback","$needInit","$initVue","$needHook","v","$innerHTML","Reflect","set","prototype","innerHTML","get","$textContent","textContent","$ignoreLog","val","oldValue","value","newValue","$isArrayValue","$anyToArray","JSON","stringify","toString","el","$attrChange","parse","node","prepend","call","$prepend","$appendChild","appendChild","child","$insertBefore","insertBefore","qualifiedName","shadowElement","hasAttribute","getAttribute","setAttribute","$isShowProp","_M","vueAttrName","removeAttribute","name","s","arr","json","Array","split","filter","item","trim","$resetShadowSymbol","opts","dispatchEvent","CustomEvent","Object","assign","bubbles","composed","cancelable","$forceUpdate","slotCollection","children","$slotCollection","$customEvent","cache","start","end","nextSibling","parentNode","removeChild","push","$slotReplace","querySelector","$replace","$replaceChildren","args","length","ret","$slot","next","join","$hasSlot","document","createTextNode","outerHTML","text","Comment","tpl","createElement","$moveChildren","default","ref","shift","keys","need","list","childNodes","AuiSlot","$isForAuiSlot","slice","$bind","valueType","$call","detail","attributeName","attributes","shadow","i","attr","defineProperty","writable","isVueAttr","prop","$getProp","isShow","show","auiVueDefined","getAuiVueDefined","tagName","origin","props","toLowerCase","createApp","createVueComponent","mount","code","auiInit","constructor","style","display","_name_","_el_","nodeType","Node","ELEMENT_NODE","$isAuiSlot","createComment","$replaceWith","forEach","target","init","defineSlot","defineCustomElement","Error","sp","cur","last","pop","hasOwnProperty","formatName","replace","defined","names","key","auiAttrName","indexOf","handle","hooks","createExtendComp","defineComponent","type","String","Number","methods","$aui","$el","data","mixins","component","patchDefaultProps","AuiChild","observedAttributes","getAuiPropNames","aui","vue","cls","customElements","define","_","__hmrId","querySelectorAll","comp","force","sameComponent","defineAuiComponent","notifyComponentUpdate","wrappedComponent","h","setup","attrs","useAttrs","vueComponentRef","shallowRef","elementRef","selfAttrs","slotsRef","createTempSlot","useSlots","onMounted","$bindVue","replaceTempSlot","addEventListener","getAuiAttrs","onUpdated","formatStructure","trueComp","a","s1","toUpperCase","addHooks","merge","getHookStructure","core"],"mappings":"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"}
|
package/dist/index.cjs.js
CHANGED
|
@@ -1 +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
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./core.cjs.js");exports.AuiComponent=e.AuiComponent,exports.AuiSlot=e.AuiSlot,exports.default=e.default;//# sourceMappingURL=index.cjs.js.map
|
package/dist/index.es.js
CHANGED
package/dist/plugin.cjs.js
CHANGED
|
@@ -1 +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=
|
|
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=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),u=n.dirname(o);function a(e){return{name:"aui-vue-plugin",enforce:"post",transform(r,t){if(t.endsWith(".aui.vue")){const i=n.basename(t).replace(".aui.vue",""),o=r.split("export default"),u=`\nconst __aui_comp_define__ = ${o.pop()};\nimport __aui_como_core__ from '${e.coreAlias?e.coreAlias:"agile-core"}';\nif(!__aui_comp_define__.name) {\n __aui_comp_define__.name = '${i}';\n}\nexport const componentStructure = __aui_comp_define__;\nexport default __aui_como_core__.define(__aui_comp_define__);\n`;return{code:o.join("export default")+u}}return null}}}const s="Comp",c="// insert";function f(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 i=n.dirname(t),o=r.glob.sync("**/*.aui.vue",{cwd:i});if(0===o.length)return null;const u=[];return o.forEach((e,r)=>{const t=n.join(i,e).replace(/\\/g,"/");u.push(`import ${s}${r} from '${t}';`),u.push(`import {componentStructure as ${s}${r}_${r} } from '${t}';`)}),u.push(e.replace(c,function(e){const n=[];return e.forEach((e,r)=>{n.push(`[${s}${r}_${r}.name]: ${s}${r}`)}),n.join(", ")}(o))),{code:u.join("\n")}}return null}},a(e),f(e)],resolve:{alias:{"@auicore":n.resolve(u,"./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
|
package/dist/plugin.cjs.js.map
CHANGED
|
@@ -1 +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 '
|
|
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(options: AuiOptions): 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 '${options.coreAlias?options.coreAlias:'agile-core'}';\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 const cwd = path.dirname(id);\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 coreAlias?: 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(options), 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":["__filename","fileURLToPath","__dirname","dirname","auiVuePlugin","options","name","enforce","transform","code","id","endsWith","fileName","path","basename","replace","sp","split","last","pop","coreAlias","join","IMPORT_PREFIX","INSERT_FLAG","auiConfigPlugin","virtualModuleId","resolvedVirtualModuleId","resolveId","load","auiConfig","merge","tagPrefix","buildTime","Date","toISOString","JSON","stringify","exports","getAuiConfig","userConfig","plugins","indexOf","Error","cwd","files","glob","sync","length","codes","forEach","file","index","filePath","push","_","resolve","alias","extensions","define","__AUI_CONFIG__","isCustomElement","tag","startsWith"],"mappings":"oOAMA,MAEMA,EAAaC,EAAAA,uLACbC,EAAYC,EAAAA,QAAQH,GAG1B,SAASI,EAAaC,GACpB,MAAO,CACLC,KAAM,iBACNC,QAAS,OACT,SAAAC,CAAUC,EAAMC,GACd,GAAIA,EAAGC,SAAS,YAAa,CAC3B,MAAMC,EAAWC,EAAKC,SAASJ,GAAIK,QAAQ,WAAY,IACjDC,EAAKP,EAAKQ,MAAM,kBAChBC,EAAO,iCACSF,EAAGG,0CACAd,EAAQe,UAAUf,EAAQe,UAAU,kFAErCR,kIAMxB,MAAO,CACLH,KAFYO,EAAGK,KAAK,kBAENH,EAElB,CACA,OAAO,IACT,EAEJ,CAGA,MAAMI,EAAgB,OAUhBC,EAAc,YAkCpB,SAASC,EAAgBnB,GACvB,MAAMoB,EAAkB,qBAClBC,EAA0B,KAAOD,EAEvC,MAAO,CACLnB,KAAM,oBACN,SAAAqB,CAAUjB,GACR,GAAIA,IAAOe,EACT,OAAOC,CAEX,EACA,IAAAE,CAAKlB,GACH,GAAIA,IAAOgB,EAAyB,CAClC,MAAMG,EAAYC,EAAAA,MAAM,CACtBC,UAAW,MACXC,WAAAA,IAAeC,MAAOC,eACrB7B,GAAW,CAAA,GACd,MAAO,kBAAkB8B,KAAKC,UAAUP,IAC1C,CACF,EAEJ,CAuCAQ,QAAAC,aA1BO,SAAsBjC,GAM3B,MAAM0B,GAAY1B,OAJlBA,EAAUyB,EAAAA,MAAM,CACdC,UAAW,OACV1B,GAAW,CAAA,SAEIA,EAAAA,EAAS0B,YAAa,MAExC,MAAO,CACLQ,WAAY,CACVC,QAAS,CA3EN,CACLlC,KAAM,oBACNC,QAAS,MACT,SAAAC,CAAUC,EAAMC,GACd,GAAIA,EAAGC,SAAS,kBAAmB,CAEjC,IAAA,IAAIF,EAAKgC,QAAQlB,SACT,IAAImB,MAAM,yBAAyBnB,SAE3C,MAAMoB,EAAM9B,EAAKV,QAAQO,GACnBkC,EAAkBC,EAAAA,KAAKC,KAAK,eAAgB,CAChDH,IAAAA,IAGF,GAAqB,IAAjBC,EAAMG,OAAc,OAAO,KAE/B,MAAMC,EAAkB,GAOxB,OANAJ,EAAMK,QAAQ,CAACC,EAAMC,KACnB,MAAMC,EAAWvC,EAAKQ,KAAKsB,EAAKO,GAAMnC,QAAQ,MAAO,KACrDiC,EAAMK,KAAK,UAAU/B,IAAgB6B,WAAeC,OACpDJ,EAAMK,KAAK,iCAAiC/B,IAAgB6B,KAASA,aAAiBC,SAExFJ,EAAMK,KAAK5C,EAAKM,QAAQQ,EAjChC,SAAoBqB,GAClB,MAAMI,EAAkB,GAIxB,OAHAJ,EAAMK,QAAQ,CAACK,EAAGH,KAChBH,EAAMK,KAAK,IAAI/B,IAAgB6B,KAASA,YAAgB7B,IAAgB6B,OAEnEH,EAAM3B,KAAK,KACpB,CANA,CAiCwDuB,KACzC,CAAEnC,KAAMuC,EAAM3B,KAAK,MAC5B,CACA,OAAO,IACT,GAiD+BjB,EAAaC,GAAUmB,EAAgBnB,IACpEkD,QAAS,CACPC,MAAO,CACL,WAAkB3C,EAAK0C,QAAQrD,EAAW,WAE5CuD,WAAY,CAAC,MAAO,MAAO,OAAQ,OAAQ,QAAS,UAAW,WAEjEC,OAAQ,CACNC,eAAgBxB,KAAKC,UAAUN,QAAM,CACnCC,UAAW,MACXC,WAAAA,IAAeC,MAAOC,eACrB7B,GAAW,CAAA,MAGlBuD,gBAAkBC,GAAgBA,EAAIC,WAAW,GAAG/B,MAExD"}
|
package/dist/plugin.d.ts
CHANGED
package/dist/plugin.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAU,UAAU,EAAE,MAAM,MAAM,CAAA;AA2G9C,MAAM,MAAM,UAAU,GAAG;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,UAAU,EAAE,UAAU,CAAC;IACvB,eAAe,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;CAC3C,CAAC;AAGF,wBAAgB,YAAY,CAAC,OAAO,CAAC,EAAE,UAAU,GAAG,YAAY,CA0B/D"}
|
|
1
|
+
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAU,UAAU,EAAE,MAAM,MAAM,CAAA;AA2G9C,MAAM,MAAM,UAAU,GAAG;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,UAAU,EAAE,UAAU,CAAC;IACvB,eAAe,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;CAC3C,CAAC;AAGF,wBAAgB,YAAY,CAAC,OAAO,CAAC,EAAE,UAAU,GAAG,YAAY,CA0B/D"}
|
package/dist/plugin.es.js
CHANGED
|
@@ -1,59 +1,62 @@
|
|
|
1
1
|
import { fileURLToPath as e } from "url";
|
|
2
|
-
import n, { dirname as
|
|
3
|
-
import { glob as
|
|
4
|
-
import { merge as
|
|
5
|
-
const i =
|
|
2
|
+
import n, { dirname as r } from "path";
|
|
3
|
+
import { glob as o } from "glob";
|
|
4
|
+
import { merge as t } from "ts-deepmerge";
|
|
5
|
+
const i = r(e(import.meta.url));
|
|
6
|
+
function u(e2) {
|
|
7
|
+
return { name: "aui-vue-plugin", enforce: "post", transform(r2, o2) {
|
|
8
|
+
if (o2.endsWith(".aui.vue")) {
|
|
9
|
+
const t2 = n.basename(o2).replace(".aui.vue", ""), i2 = r2.split("export default"), u2 = `
|
|
10
|
+
const __aui_comp_define__ = ${i2.pop()};
|
|
11
|
+
import __aui_como_core__ from '${e2.coreAlias ? e2.coreAlias : "agile-core"}';
|
|
12
|
+
if(!__aui_comp_define__.name) {
|
|
13
|
+
__aui_comp_define__.name = '${t2}';
|
|
14
|
+
}
|
|
15
|
+
export const componentStructure = __aui_comp_define__;
|
|
16
|
+
export default __aui_como_core__.define(__aui_comp_define__);
|
|
17
|
+
`;
|
|
18
|
+
return { code: i2.join("export default") + u2 };
|
|
19
|
+
}
|
|
20
|
+
return null;
|
|
21
|
+
} };
|
|
22
|
+
}
|
|
6
23
|
const a = "Comp";
|
|
7
24
|
const s = "// insert";
|
|
8
|
-
function
|
|
9
|
-
return { name: "aui-export-plugin", enforce: "pre", transform(e2,
|
|
10
|
-
if (
|
|
25
|
+
function c() {
|
|
26
|
+
return { name: "aui-export-plugin", enforce: "pre", transform(e2, r2) {
|
|
27
|
+
if (r2.endsWith(".export.aui.ts")) {
|
|
11
28
|
if (-1 === e2.indexOf(s)) throw new Error(`.export.aui.ts文件必须包含[ ${s} ]标记`);
|
|
12
|
-
const
|
|
29
|
+
const t2 = n.dirname(r2), i2 = o.sync("**/*.aui.vue", { cwd: t2 });
|
|
13
30
|
if (0 === i2.length) return null;
|
|
14
31
|
const u2 = [];
|
|
15
|
-
return i2.forEach((e3,
|
|
16
|
-
const
|
|
17
|
-
u2.push(`import ${a}${
|
|
32
|
+
return i2.forEach((e3, r3) => {
|
|
33
|
+
const o2 = n.join(t2, e3).replace(/\\/g, "/");
|
|
34
|
+
u2.push(`import ${a}${r3} from '${o2}';`), u2.push(`import {componentStructure as ${a}${r3}_${r3} } from '${o2}';`);
|
|
18
35
|
}), u2.push(e2.replace(s, function(e3) {
|
|
19
36
|
const n2 = [];
|
|
20
|
-
return e3.forEach((e4,
|
|
21
|
-
n2.push(`[${a}${
|
|
37
|
+
return e3.forEach((e4, r3) => {
|
|
38
|
+
n2.push(`[${a}${r3}_${r3}.name]: ${a}${r3}`);
|
|
22
39
|
}), n2.join(", ");
|
|
23
40
|
}(i2))), { code: u2.join("\n") };
|
|
24
41
|
}
|
|
25
42
|
return null;
|
|
26
43
|
} };
|
|
27
44
|
}
|
|
28
|
-
function
|
|
29
|
-
const n2 = "virtual:aui-config",
|
|
45
|
+
function _(e2) {
|
|
46
|
+
const n2 = "virtual:aui-config", r2 = "\0" + n2;
|
|
30
47
|
return { name: "aui-config-plugin", resolveId(e3) {
|
|
31
|
-
if (e3 === n2) return
|
|
48
|
+
if (e3 === n2) return r2;
|
|
32
49
|
}, load(n3) {
|
|
33
|
-
if (n3 ===
|
|
34
|
-
const n4 =
|
|
50
|
+
if (n3 === r2) {
|
|
51
|
+
const n4 = t({ tagPrefix: "aui", buildTime: (/* @__PURE__ */ new Date()).toISOString() }, e2 || {});
|
|
35
52
|
return `export default ${JSON.stringify(n4)}`;
|
|
36
53
|
}
|
|
37
54
|
} };
|
|
38
55
|
}
|
|
39
56
|
function getAuiConfig(e2) {
|
|
40
|
-
e2 =
|
|
41
|
-
const
|
|
42
|
-
return { userConfig: { plugins: [_(), {
|
|
43
|
-
if (t3.endsWith(".aui.vue")) {
|
|
44
|
-
const r2 = n.basename(t3).replace(".aui.vue", ""), o2 = e3.split("export default"), u2 = `
|
|
45
|
-
const __aui_comp_define__ = ${o2.pop()};
|
|
46
|
-
import __aui_como_core__ from '@${i}';
|
|
47
|
-
if(!__aui_comp_define__.name) {
|
|
48
|
-
__aui_comp_define__.name = '${r2}';
|
|
49
|
-
}
|
|
50
|
-
export const componentStructure = __aui_comp_define__;
|
|
51
|
-
export default __aui_como_core__.define(__aui_comp_define__);
|
|
52
|
-
`;
|
|
53
|
-
return { code: o2.join("export default") + u2 };
|
|
54
|
-
}
|
|
55
|
-
return null;
|
|
56
|
-
} }, c(e2)], resolve: { alias: { [`@${i}`]: n.resolve(u, "./core") }, extensions: [".js", ".ts", ".jsx", ".tsx", ".json", ".cjs.js", ".es.js"] }, define: { __AUI_CONFIG__: JSON.stringify(o({ tagPrefix: "aui", buildTime: (/* @__PURE__ */ new Date()).toISOString() }, e2 || {})) } }, isCustomElement: (e3) => e3.startsWith(`${t2}-`) };
|
|
57
|
+
e2 = t({ tagPrefix: "aui" }, e2 || {});
|
|
58
|
+
const r2 = (e2 == null ? void 0 : e2.tagPrefix) || "aui";
|
|
59
|
+
return { userConfig: { plugins: [c(), u(e2), _(e2)], resolve: { alias: { "@auicore": n.resolve(i, "./core") }, extensions: [".js", ".ts", ".jsx", ".tsx", ".json", ".cjs.js", ".es.js"] }, define: { __AUI_CONFIG__: JSON.stringify(t({ tagPrefix: "aui", buildTime: (/* @__PURE__ */ new Date()).toISOString() }, e2 || {})) } }, isCustomElement: (e3) => e3.startsWith(`${r2}-`) };
|
|
57
60
|
}
|
|
58
61
|
export {
|
|
59
62
|
getAuiConfig
|
package/dist/plugin.es.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.es.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 '
|
|
1
|
+
{"version":3,"file":"plugin.es.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(options: AuiOptions): 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 '${options.coreAlias?options.coreAlias:'agile-core'}';\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 const cwd = path.dirname(id);\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 coreAlias?: 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(options), 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":["__dirname","dirname","fileURLToPath","url","auiVuePlugin","options","name","enforce","code","id","endsWith","fileName","path","basename","replace","sp","split","last","pop","coreAlias","join","IMPORT_PREFIX","INSERT_FLAG","auiExportPlugin","indexOf","Error","cwd","files","glob","sync","length","codes","forEach","file","index","filePath","push","_","auiConfigPlugin","virtualModuleId","resolvedVirtualModuleId","auiConfig","merge","tagPrefix","buildTime","Date","toISOString","JSON","stringify","getAuiConfig","userConfig","plugins","resolve","alias","extensions","define","__AUI_CONFIG__","isCustomElement","tag","startsWith"],"mappings":";;;;AAMA,MAGMA,IAAYC,EADCC,EAAAA,YAA0BC,GAAAA,CAAAA;AAI7C,SAASC,EAAaC,IAAAA;AACpB,SAAO,EACLC,MAAM,kBACNC,SAAS,QACT,UAAUC,IAAMC,IAAAA;AACd,QAAIA,GAAGC,SAAS,UAAA,GAAa;AAC3B,YAAMC,KAAWC,EAAKC,SAASJ,EAAAA,EAAIK,QAAQ,YAAY,EAAA,GACjDC,KAAKP,GAAKQ,MAAM,mBAChBC,KAAO;AAAA,8BACSF,GAAGG,IAAAA,CAAAA;AAAAA,iCACAb,GAAQc,YAAUd,GAAQc,YAAU,YAAA;AAAA;AAAA,gCAErCR;;;;;AAMxB,aAAO,EACLH,MAFYO,GAAGK,KAAK,gBAAA,IAENH,GAAAA;AAAAA,IAElB;AACA,WAAO;AAAA,EACT,EAAA;AAEJ;AAGA,MAAMI,IAAgB;AAUtB,MAAMC,IAAc;AAEpB,SAASC,IAAAA;AACP,SAAO,EACLjB,MAAM,qBACNC,SAAS,OACT,UAAUC,IAAMC,IAAAA;AACd,QAAIA,GAAGC,SAAS,gBAAA,GAAmB;AAEjC,UAAA,OAAIF,GAAKgB,QAAQF,CAAAA,EACf,OAAM,IAAIG,MAAM,yBAAyBH,CAAAA,MAAAA;AAE3C,YAAMI,KAAMd,EAAKX,QAAQQ,EAAAA,GACnBkB,KAAkBC,EAAKC,KAAK,gBAAgB,EAChDH,KAAAA,GAAAA,CAAAA;AAGF,UAAqB,MAAjBC,GAAMG,OAAc,QAAO;AAE/B,YAAMC,KAAkB,CAAA;AAOxB,aANAJ,GAAMK,QAAQ,CAACC,IAAMC;AACnB,cAAMC,KAAWvB,EAAKQ,KAAKM,IAAKO,EAAAA,EAAMnB,QAAQ,OAAO,GAAA;AACrDiB,QAAAA,GAAMK,KAAK,UAAUf,CAAAA,GAAgBa,EAAAA,UAAeC,SACpDJ,GAAMK,KAAK,iCAAiCf,CAAAA,GAAgBa,MAASA,EAAAA,YAAiBC,EAAAA,IAAAA;AAAAA,MAAAA,CAAAA,GAExFJ,GAAMK,KAAK5B,GAAKM,QAAQQ,GAjChC,SAAoBK,IAAAA;AAClB,cAAMI,KAAkB,CAAA;AAIxB,eAHAJ,GAAMK,QAAQ,CAACK,IAAGH,OAAAA;AAChBH,UAAAA,GAAMK,KAAK,IAAIf,CAAAA,GAAgBa,EAAAA,IAASA,aAAgBb,CAAAA,GAAgBa,EAAAA,EAAAA;AAAAA,QAAAA,CAAAA,GAEnEH,GAAMX,KAAK,IAAA;AAAA,MACpB,EA2BwDO,EAAAA,CAAAA,CAAAA,GACzC,EAAEnB,MAAMuB,GAAMX,KAAK,IAAA,EAAA;AAAA,IAC5B;AACA,WAAO;AAAA,EACT,EAAA;AAEJ;AAGA,SAASkB,EAAgBjC,IAAAA;AACvB,QAAMkC,KAAkB,sBAClBC,KAA0B,OAAOD;AAEvC,SAAO,EACLjC,MAAM,qBACN,UAAUG,IAAAA;AACR,QAAIA,OAAO8B,GACT,QAAOC;AAAAA,EAEX,GACA,KAAK/B;AACH,QAAIA,OAAO+B,IAAyB;AAClC,YAAMC,KAAYC,EAAM,EACtBC,WAAW,OACXC,YAAA,oBAAeC,QAAOC,YAAAA,EAAAA,GACrBzC,MAAW,CAAA,CAAA;AACd,aAAO,kBAAkB0C,KAAKC,UAAUP,EAAAA,CAAAA;AAAAA,IAC1C;AAAA,EACF;AAEJ;AAaO,SAASQ,aAAa5C,IAAAA;AAE3BA,EAAAA,KAAUqC,EAAM,EACdC,WAAW,MAAA,GACVtC,MAAW,CAAA,CAAA;AAEd,QAAMsC,MAAYtC,MAAAA,gBAAAA,GAASsC,cAAa;AAExC,SAAO,EACLO,YAAY,EACVC,SAAS,CAAC5B,KAAmBnB,EAAaC,EAAAA,GAAUiC,EAAgBjC,EAAAA,CAAAA,GACpE+C,SAAS,EACPC,OAAO,EACL,YAAkBzC,EAAKwC,QAAQpD,GAAW,QAAA,EAAA,GAE5CsD,YAAY,CAAC,OAAO,OAAO,QAAQ,QAAQ,SAAS,WAAW,QAAA,EAAA,GAEjEC,QAAQ,EACNC,gBAAgBT,KAAKC,UAAUN,EAAM,EACnCC,WAAW,OACXC,YAAA,oBAAeC,QAAOC,YAAAA,EAAAA,GACrBzC,MAAW,CAAA,CAAA,CAAA,EAAA,EAAA,GAGlBoD,iBAAkBC,CAAAA,OAAgBA,GAAIC,WAAW,GAAGhB;AAExD;"}
|