lyco 1.3.9 → 1.4.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-BoB7sDMv.js.map +1 -1
- package/dist/core-bQvrG1od.mjs.map +1 -1
- package/dist/index.cjs.js +42 -42
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.es.js +45 -45
- package/dist/index.es.js.map +1 -1
- package/dist/types/components/Canvas.d.ts +1 -2
- package/dist/types/components/mod.d.ts +4 -3
- package/dist/types/core/index.d.ts +1 -1
- package/package.json +1 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"core-BoB7sDMv.js","names":["fn?: renderFnType","fnOrArray?: renderFnOrArrayType","injectBox?: (\n\t\tbox: Temp,\n\t\tidx?: number,\n\t\tisArray?: boolean,\n\t\tisFunc?: boolean\n\t) => Temp","prefix?: string","injectBox?: (box: Temp) => Temp","f?: renderFnType","fnOrArray?: renderFnOrArrayType | string | number","injectBox?: (box: Temp | Temp[]) => Temp | Temp[]","injectBox2?: (\n\t\tbox: Temp,\n\t\tidx?: number,\n\t\tisArray?: boolean,\n\t\tisFunc?: boolean\n\t) => Temp","f?: any","f?: renderFnOrArrayType | string | number","prefix: string","key: keyof typeof allRandomClassName","componentCount: ComponentCount","name: string","slot: Temp","element: HTMLElement","options: {\n\t\t\tanimationClass?: string;\n\t\t\tanimation?: (element: HTMLElement) => void;\n\t\t\tcssProperties?: Record<string, string>;\n\t\t\tduration?: number;\n\t\t\tdelay?: number;\n\t\t}","on: OnEvent","el: EventTarget","on: Array<[string, EventHandler<any>]>","eventListeners: Map<string, EventListener>","handler: (event: Event) => void","options: boolean | AddEventListenerOptions | undefined","event: Event","e?: Element"],"sources":["../src/core/index.ts"],"sourcesContent":["import { html, TemplateResult } from \"lit\";\n\nconst ___LYCO_NULL___ = Symbol(\"___LYCO_NULL___\");\nexport type Temp = TemplateResult<1> | TemplateResult;\nexport type renderFnType = Temp | (() => Temp);\nexport type renderFnOrArrayType = renderFnType | Array<Temp> | (() => Temp[]);\n\nexport function renderFn(fn?: renderFnType): Temp {\n\treturn fn ? (typeof fn === \"function\" ? fn() : fn) : html``;\n}\n\nexport type WithHtml<K> = ((children?: K) => Temp) & {\n\thtml: (strings: TemplateStringsArray, ...values: unknown[]) => Temp;\n};\n\nexport function renderFnOrArray(\n\tfnOrArray?: renderFnOrArrayType,\n\tinjectBox?: (\n\t\tbox: Temp,\n\t\tidx?: number,\n\t\tisArray?: boolean,\n\t\tisFunc?: boolean\n\t) => Temp\n): Temp | Temp[] {\n\tlet _injectBox = injectBox ?? ((box) => box);\n\tif (fnOrArray === undefined) {\n\t\treturn html``;\n\t}\n\tif (Array.isArray(fnOrArray)) {\n\t\treturn fnOrArray.map((htmlTemp, idx) =>\n\t\t\t_injectBox(renderFn(htmlTemp), idx, true, false)\n\t\t);\n\t} else if (typeof fnOrArray !== \"function\") {\n\t\treturn _injectBox(renderFn(fnOrArray), undefined, false, false);\n\t}\n\n\tconst result = fnOrArray();\n\tif (Array.isArray(result)) {\n\t\treturn result.map((htmlTemp, idx) =>\n\t\t\t_injectBox(renderFn(htmlTemp), idx, true, false)\n\t\t);\n\t} else {\n\t\treturn _injectBox(renderFn(result), undefined, false, true);\n\t}\n}\n\nexport function randomClassName(prefix?: string): string {\n\tconst random = Math.random().toString(36).substring(2, 15);\n\treturn prefix ? `lyco-${prefix}-${random}` : `lyco-${random}`;\n}\n\nexport function renderFnOrCurry(\n\tfn?: renderFnType,\n\tinjectBox?: (box: Temp) => Temp\n): Temp | ((fn?: renderFnType) => Temp) {\n\tconst _injectBox = injectBox ?? ((box) => box);\n\tconst curriedFn = (f?: renderFnType) => _injectBox(renderFn(f!));\n\n\treturn fn ? curriedFn(fn) : curriedFn;\n}\n\nexport function renderFnOrArrayOrCurry(\n\tfnOrArray?: renderFnOrArrayType | string | number,\n\tinjectBox?: (box: Temp | Temp[]) => Temp | Temp[],\n\tinjectBox2?: (\n\t\tbox: Temp,\n\t\tidx?: number,\n\t\tisArray?: boolean,\n\t\tisFunc?: boolean\n\t) => Temp\n): Temp | Temp[] | ((fnOrArray?: renderFnOrArrayType) => Temp | Temp[]) {\n\tconst typeMap = {\n\t\tstring: (f?: any) => html` ${f} `,\n\t\tnumber: (f?: any) => html` ${f} `,\n\t};\n\tconst _fnOrArray =\n\t\ttypeof fnOrArray in typeMap\n\t\t\t? typeMap[typeof fnOrArray as \"string\" | \"number\"]\n\t\t\t: fnOrArray;\n\tconst _injectBox = injectBox ?? ((box) => box);\n\tconst curriedFn = (f?: renderFnOrArrayType | string | number) =>\n\t\t_injectBox(renderFnOrArray(f as any, injectBox2)!);\n\n\treturn _fnOrArray ? curriedFn(_fnOrArray) : curriedFn;\n}\n\nconst withInit = (\n\tprefix: string\n): {\n\tinit: boolean;\n\tprefix: string;\n\tclassName: string | typeof ___LYCO_NULL___;\n} => ({\n\tinit: false,\n\tprefix,\n\tclassName: ___LYCO_NULL___,\n});\n\nconst allRandomClassName = {\n\t\"GridBreakpoint::grid-breakpoint\": withInit(\"grid-breakpoint\"),\n\t\"Hidden::hidden-container\": withInit(\"hidden-container\"),\n\t\"ListGroup::list-group\": withInit(\"list-group\"),\n\t\"ScrollBar::scrollbar-container\": withInit(\"scrollbar-container\"),\n\t\"SkeletonLoader::skeleton\": withInit(\"skeleton\"),\n\t\"Swiper::swiper\": withInit(\"swiper\"),\n\t\"Table::table\": withInit(\"table\"),\n\t\"WaterFlow::waterflow\": withInit(\"waterflow\"),\n\t\"AutoFitGrid::auto-fit-grid\": withInit(\"auto-fit-grid\"),\n\t\"GridCol::grid-col\": withInit(\"grid-col\"),\n\t\"GridRow::grid-row\": withInit(\"grid-row\"),\n\t\"List::list\": withInit(\"list\"),\n\t\"Dialog::dialog\": withInit(\"dialog\"),\n\t\"SwitchInput::switch\": withInit(\"switch\"),\n\t\"Combobox::combobox\": withInit(\"combobox\"),\n};\n\nexport function getRandomClassName(key: keyof typeof allRandomClassName) {\n\tconst r = allRandomClassName[key];\n\tif (!r.init) {\n\t\tallRandomClassName[key].init = true;\n\t\tallRandomClassName[key].className = randomClassName(r.prefix);\n\t}\n\treturn allRandomClassName[key].className === ___LYCO_NULL___\n\t\t? randomClassName(r.prefix)\n\t\t: allRandomClassName[key].className;\n}\ntype ComponentCountItem = {\n\tvalue: number;\n};\n\ntype ComponentCount = {\n\t[key: string]: ComponentCountItem;\n} & {\n\tall: ComponentCountItem; // 修改为 ComponentCountItem 类型\n};\nexport const componentCount: ComponentCount = {\n\tall: { value: 0 },\n};\n\nexport function getComponentCount(name: string) {\n\tif (!componentCount[name]?.value) {\n\t\tcomponentCount[name] = { value: 0 };\n\t}\n\treturn componentCount[name].value;\n}\n\nexport function LycoComponent(name: string, slot: Temp) {\n\tcomponentCount.all = {\n\t\tvalue: componentCount.all.value + 1,\n\t};\n\tcomponentCount[name] === undefined\n\t\t? (componentCount[name] = { value: 0 })\n\t\t: (componentCount[name].value = componentCount[name].value + 1);\n\t// console.debug(\n\t// \t`LycoComponent: ${name} - ${componentCount[name].value} - ${componentCount.all.value}`\n\t// );\n\treturn html`\n\t\t<!-- ${name} - ${componentCount[name].value} -->\n\t\t${slot}\n\t`;\n}\n\n// 动画API:支持CSS动画类、任意动画库、CSS属性\nexport class AnimationAPI {\n\tstatic applyAnimation(\n\t\telement: HTMLElement,\n\t\toptions: {\n\t\t\tanimationClass?: string;\n\t\t\tanimation?: (element: HTMLElement) => void;\n\t\t\tcssProperties?: Record<string, string>;\n\t\t\tduration?: number;\n\t\t\tdelay?: number;\n\t\t}\n\t) {\n\t\t// Apply CSS animation class\n\t\tif (options.animationClass) {\n\t\t\telement.classList.add(options.animationClass);\n\t\t\tif (options.duration) {\n\t\t\t\telement.style.animationDuration = `${options.duration}s`;\n\t\t\t}\n\t\t\tif (options.delay) {\n\t\t\t\telement.style.animationDelay = `${options.delay}s`;\n\t\t\t}\n\t\t}\n\n\t\t// Use custom animation function (supports any animation library)\n\t\tif (options.animation) {\n\t\t\toptions.animation(element);\n\t\t}\n\n\t\t// Apply direct CSS styles for animation\n\t\tif (\n\t\t\toptions.cssProperties &&\n\t\t\tObject.keys(options.cssProperties).length > 0\n\t\t) {\n\t\t\tObject.keys(options.cssProperties).forEach((key) => {\n\t\t\t\telement.style[key as any] = options.cssProperties![key];\n\t\t\t});\n\t\t\tif (options.duration) {\n\t\t\t\telement.style.transitionDuration = `${options.duration}s`;\n\t\t\t}\n\t\t}\n\t}\n}\n\ntype EventHandler<K extends keyof GlobalEventHandlersEventMap> =\n\t| ((event: GlobalEventHandlersEventMap[K]) => void)\n\t| {\n\t\t\thandler: (event: GlobalEventHandlersEventMap[K]) => void;\n\t\t\toptions?: boolean | AddEventListenerOptions;\n\t };\n\nexport type OnEvent = {\n\t[K in keyof GlobalEventHandlersEventMap]?: EventHandler<K>;\n};\n\nexport function withEvents(on: OnEvent) {\n\treturn on;\n}\n\nexport function bindEvents(\n\tel: EventTarget,\n\ton: Array<[string, EventHandler<any>]>,\n\teventListeners: Map<string, EventListener>\n): void {\n\ton.forEach(([name, entry]) => {\n\t\tif (!entry) return; // 添加空值检查\n\n\t\tif (eventListeners.has(name)) {\n\t\t\tel.removeEventListener(name, eventListeners.get(name)!);\n\t\t}\n\n\t\tlet handler: (event: Event) => void;\n\t\tlet options: boolean | AddEventListenerOptions | undefined;\n\n\t\tif (typeof entry === \"function\") {\n\t\t\thandler = entry;\n\t\t\toptions = undefined;\n\t\t} else {\n\t\t\thandler = entry.handler;\n\t\t\toptions = entry.options;\n\t\t}\n\n\t\tif (!handler) return; // 确保 handler 存在\n\n\t\tconst listener = (event: Event) => handler(event);\n\t\tel.addEventListener(name, listener, options);\n\t\teventListeners.set(name, listener);\n\t});\n}\n\nexport function createEventBinder(on: OnEvent) {\n\tconst eventListeners = new Map<string, EventListener>();\n\tconst _on = Object.entries(on);\n\tconst _el = {\n\t\tvalue: null as EventTarget | null,\n\t};\n\tconst self = {\n\t\tbind(el: EventTarget) {\n\t\t\tbindEvents(el, _on, eventListeners);\n\t\t\t_el.value = el;\n\t\t},\n\t\tunbindAll() {\n\t\t\teventListeners.forEach((k, v) => {\n\t\t\t\t_el.value?.removeEventListener(v, k);\n\t\t\t});\n\t\t\teventListeners.clear();\n\t\t\t_el.value = null;\n\t\t},\n\t\tauto: (e?: Element) => {\n\t\t\tif (e) {\n\t\t\t\tself.bind(e);\n\t\t\t} else {\n\t\t\t\tself.unbindAll();\n\t\t\t}\n\t\t},\n\t};\n\treturn self;\n}\n"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"core-BoB7sDMv.js","names":["fn?: renderFnType","fnOrArray?: renderFnOrArrayType","injectBox?: (\n\t\tbox: Temp,\n\t\tidx?: number,\n\t\tisArray?: boolean,\n\t\tisFunc?: boolean\n\t) => Temp","prefix?: string","injectBox?: (box: Temp) => Temp","f?: renderFnType","fnOrArray?: renderFnOrArrayType | string | number","injectBox?: (box: Temp | Temp[]) => Temp | Temp[]","injectBox2?: (\n\t\tbox: Temp,\n\t\tidx?: number,\n\t\tisArray?: boolean,\n\t\tisFunc?: boolean\n\t) => Temp","f?: any","f?: renderFnOrArrayType | string | number","prefix: string","key: keyof typeof allRandomClassName","componentCount: ComponentCount","name: string","slot: Temp | Temp[]","element: HTMLElement","options: {\n\t\t\tanimationClass?: string;\n\t\t\tanimation?: (element: HTMLElement) => void;\n\t\t\tcssProperties?: Record<string, string>;\n\t\t\tduration?: number;\n\t\t\tdelay?: number;\n\t\t}","on: OnEvent","el: EventTarget","on: Array<[string, EventHandler<any>]>","eventListeners: Map<string, EventListener>","handler: (event: Event) => void","options: boolean | AddEventListenerOptions | undefined","event: Event","e?: Element"],"sources":["../src/core/index.ts"],"sourcesContent":["import { html, TemplateResult } from \"lit\";\n\nconst ___LYCO_NULL___ = Symbol(\"___LYCO_NULL___\");\nexport type Temp = TemplateResult<1> | TemplateResult;\nexport type renderFnType = Temp | (() => Temp);\nexport type renderFnOrArrayType = renderFnType | Array<Temp> | (() => Temp[]);\n\nexport function renderFn(fn?: renderFnType): Temp {\n\treturn fn ? (typeof fn === \"function\" ? fn() : fn) : html``;\n}\n\nexport type WithHtml<K> = ((children?: K) => Temp) & {\n\thtml: (strings: TemplateStringsArray, ...values: unknown[]) => Temp;\n};\n\nexport function renderFnOrArray(\n\tfnOrArray?: renderFnOrArrayType,\n\tinjectBox?: (\n\t\tbox: Temp,\n\t\tidx?: number,\n\t\tisArray?: boolean,\n\t\tisFunc?: boolean\n\t) => Temp\n): Temp | Temp[] {\n\tlet _injectBox = injectBox ?? ((box) => box);\n\tif (fnOrArray === undefined) {\n\t\treturn html``;\n\t}\n\tif (Array.isArray(fnOrArray)) {\n\t\treturn fnOrArray.map((htmlTemp, idx) =>\n\t\t\t_injectBox(renderFn(htmlTemp), idx, true, false)\n\t\t);\n\t} else if (typeof fnOrArray !== \"function\") {\n\t\treturn _injectBox(renderFn(fnOrArray), undefined, false, false);\n\t}\n\n\tconst result = fnOrArray();\n\tif (Array.isArray(result)) {\n\t\treturn result.map((htmlTemp, idx) =>\n\t\t\t_injectBox(renderFn(htmlTemp), idx, true, false)\n\t\t);\n\t} else {\n\t\treturn _injectBox(renderFn(result), undefined, false, true);\n\t}\n}\n\nexport function randomClassName(prefix?: string): string {\n\tconst random = Math.random().toString(36).substring(2, 15);\n\treturn prefix ? `lyco-${prefix}-${random}` : `lyco-${random}`;\n}\n\nexport function renderFnOrCurry(\n\tfn?: renderFnType,\n\tinjectBox?: (box: Temp) => Temp\n): Temp | ((fn?: renderFnType) => Temp) {\n\tconst _injectBox = injectBox ?? ((box) => box);\n\tconst curriedFn = (f?: renderFnType) => _injectBox(renderFn(f!));\n\n\treturn fn ? curriedFn(fn) : curriedFn;\n}\n\nexport function renderFnOrArrayOrCurry(\n\tfnOrArray?: renderFnOrArrayType | string | number,\n\tinjectBox?: (box: Temp | Temp[]) => Temp | Temp[],\n\tinjectBox2?: (\n\t\tbox: Temp,\n\t\tidx?: number,\n\t\tisArray?: boolean,\n\t\tisFunc?: boolean\n\t) => Temp\n): Temp | Temp[] | ((fnOrArray?: renderFnOrArrayType) => Temp | Temp[]) {\n\tconst typeMap = {\n\t\tstring: (f?: any) => html` ${f} `,\n\t\tnumber: (f?: any) => html` ${f} `,\n\t};\n\tconst _fnOrArray =\n\t\ttypeof fnOrArray in typeMap\n\t\t\t? typeMap[typeof fnOrArray as \"string\" | \"number\"]\n\t\t\t: fnOrArray;\n\tconst _injectBox = injectBox ?? ((box) => box);\n\tconst curriedFn = (f?: renderFnOrArrayType | string | number) =>\n\t\t_injectBox(renderFnOrArray(f as any, injectBox2)!);\n\n\treturn _fnOrArray ? curriedFn(_fnOrArray) : curriedFn;\n}\n\nconst withInit = (\n\tprefix: string\n): {\n\tinit: boolean;\n\tprefix: string;\n\tclassName: string | typeof ___LYCO_NULL___;\n} => ({\n\tinit: false,\n\tprefix,\n\tclassName: ___LYCO_NULL___,\n});\n\nconst allRandomClassName = {\n\t\"GridBreakpoint::grid-breakpoint\": withInit(\"grid-breakpoint\"),\n\t\"Hidden::hidden-container\": withInit(\"hidden-container\"),\n\t\"ListGroup::list-group\": withInit(\"list-group\"),\n\t\"ScrollBar::scrollbar-container\": withInit(\"scrollbar-container\"),\n\t\"SkeletonLoader::skeleton\": withInit(\"skeleton\"),\n\t\"Swiper::swiper\": withInit(\"swiper\"),\n\t\"Table::table\": withInit(\"table\"),\n\t\"WaterFlow::waterflow\": withInit(\"waterflow\"),\n\t\"AutoFitGrid::auto-fit-grid\": withInit(\"auto-fit-grid\"),\n\t\"GridCol::grid-col\": withInit(\"grid-col\"),\n\t\"GridRow::grid-row\": withInit(\"grid-row\"),\n\t\"List::list\": withInit(\"list\"),\n\t\"Dialog::dialog\": withInit(\"dialog\"),\n\t\"SwitchInput::switch\": withInit(\"switch\"),\n\t\"Combobox::combobox\": withInit(\"combobox\"),\n};\n\nexport function getRandomClassName(key: keyof typeof allRandomClassName) {\n\tconst r = allRandomClassName[key];\n\tif (!r.init) {\n\t\tallRandomClassName[key].init = true;\n\t\tallRandomClassName[key].className = randomClassName(r.prefix);\n\t}\n\treturn allRandomClassName[key].className === ___LYCO_NULL___\n\t\t? randomClassName(r.prefix)\n\t\t: allRandomClassName[key].className;\n}\ntype ComponentCountItem = {\n\tvalue: number;\n};\n\ntype ComponentCount = {\n\t[key: string]: ComponentCountItem;\n} & {\n\tall: ComponentCountItem; // 修改为 ComponentCountItem 类型\n};\nexport const componentCount: ComponentCount = {\n\tall: { value: 0 },\n};\n\nexport function getComponentCount(name: string) {\n\tif (!componentCount[name]?.value) {\n\t\tcomponentCount[name] = { value: 0 };\n\t}\n\treturn componentCount[name].value;\n}\n\nexport function LycoComponent(name: string, slot: Temp | Temp[]) {\n\tcomponentCount.all = {\n\t\tvalue: componentCount.all.value + 1,\n\t};\n\tcomponentCount[name] === undefined\n\t\t? (componentCount[name] = { value: 0 })\n\t\t: (componentCount[name].value = componentCount[name].value + 1);\n\t// console.debug(\n\t// \t`LycoComponent: ${name} - ${componentCount[name].value} - ${componentCount.all.value}`\n\t// );\n\treturn html`\n\t\t<!-- ${name} - ${componentCount[name].value} -->\n\t\t${slot}\n\t`;\n}\n\n// 动画API:支持CSS动画类、任意动画库、CSS属性\nexport class AnimationAPI {\n\tstatic applyAnimation(\n\t\telement: HTMLElement,\n\t\toptions: {\n\t\t\tanimationClass?: string;\n\t\t\tanimation?: (element: HTMLElement) => void;\n\t\t\tcssProperties?: Record<string, string>;\n\t\t\tduration?: number;\n\t\t\tdelay?: number;\n\t\t}\n\t) {\n\t\t// Apply CSS animation class\n\t\tif (options.animationClass) {\n\t\t\telement.classList.add(options.animationClass);\n\t\t\tif (options.duration) {\n\t\t\t\telement.style.animationDuration = `${options.duration}s`;\n\t\t\t}\n\t\t\tif (options.delay) {\n\t\t\t\telement.style.animationDelay = `${options.delay}s`;\n\t\t\t}\n\t\t}\n\n\t\t// Use custom animation function (supports any animation library)\n\t\tif (options.animation) {\n\t\t\toptions.animation(element);\n\t\t}\n\n\t\t// Apply direct CSS styles for animation\n\t\tif (\n\t\t\toptions.cssProperties &&\n\t\t\tObject.keys(options.cssProperties).length > 0\n\t\t) {\n\t\t\tObject.keys(options.cssProperties).forEach((key) => {\n\t\t\t\telement.style[key as any] = options.cssProperties![key];\n\t\t\t});\n\t\t\tif (options.duration) {\n\t\t\t\telement.style.transitionDuration = `${options.duration}s`;\n\t\t\t}\n\t\t}\n\t}\n}\n\ntype EventHandler<K extends keyof GlobalEventHandlersEventMap> =\n\t| ((event: GlobalEventHandlersEventMap[K]) => void)\n\t| {\n\t\t\thandler: (event: GlobalEventHandlersEventMap[K]) => void;\n\t\t\toptions?: boolean | AddEventListenerOptions;\n\t };\n\nexport type OnEvent = {\n\t[K in keyof GlobalEventHandlersEventMap]?: EventHandler<K>;\n};\n\nexport function withEvents(on: OnEvent) {\n\treturn on;\n}\n\nexport function bindEvents(\n\tel: EventTarget,\n\ton: Array<[string, EventHandler<any>]>,\n\teventListeners: Map<string, EventListener>\n): void {\n\ton.forEach(([name, entry]) => {\n\t\tif (!entry) return; // 添加空值检查\n\n\t\tif (eventListeners.has(name)) {\n\t\t\tel.removeEventListener(name, eventListeners.get(name)!);\n\t\t}\n\n\t\tlet handler: (event: Event) => void;\n\t\tlet options: boolean | AddEventListenerOptions | undefined;\n\n\t\tif (typeof entry === \"function\") {\n\t\t\thandler = entry;\n\t\t\toptions = undefined;\n\t\t} else {\n\t\t\thandler = entry.handler;\n\t\t\toptions = entry.options;\n\t\t}\n\n\t\tif (!handler) return; // 确保 handler 存在\n\n\t\tconst listener = (event: Event) => handler(event);\n\t\tel.addEventListener(name, listener, options);\n\t\teventListeners.set(name, listener);\n\t});\n}\n\nexport function createEventBinder(on: OnEvent) {\n\tconst eventListeners = new Map<string, EventListener>();\n\tconst _on = Object.entries(on);\n\tconst _el = {\n\t\tvalue: null as EventTarget | null,\n\t};\n\tconst self = {\n\t\tbind(el: EventTarget) {\n\t\t\tbindEvents(el, _on, eventListeners);\n\t\t\t_el.value = el;\n\t\t},\n\t\tunbindAll() {\n\t\t\teventListeners.forEach((k, v) => {\n\t\t\t\t_el.value?.removeEventListener(v, k);\n\t\t\t});\n\t\t\teventListeners.clear();\n\t\t\t_el.value = null;\n\t\t},\n\t\tauto: (e?: Element) => {\n\t\t\tif (e) {\n\t\t\t\tself.bind(e);\n\t\t\t} else {\n\t\t\t\tself.unbindAll();\n\t\t\t}\n\t\t},\n\t};\n\treturn self;\n}\n"],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"core-bQvrG1od.mjs","names":["fn?: renderFnType","fnOrArray?: renderFnOrArrayType","injectBox?: (\n\t\tbox: Temp,\n\t\tidx?: number,\n\t\tisArray?: boolean,\n\t\tisFunc?: boolean\n\t) => Temp","prefix?: string","injectBox?: (box: Temp) => Temp","f?: renderFnType","fnOrArray?: renderFnOrArrayType | string | number","injectBox?: (box: Temp | Temp[]) => Temp | Temp[]","injectBox2?: (\n\t\tbox: Temp,\n\t\tidx?: number,\n\t\tisArray?: boolean,\n\t\tisFunc?: boolean\n\t) => Temp","f?: any","f?: renderFnOrArrayType | string | number","prefix: string","key: keyof typeof allRandomClassName","componentCount: ComponentCount","name: string","slot: Temp","element: HTMLElement","options: {\n\t\t\tanimationClass?: string;\n\t\t\tanimation?: (element: HTMLElement) => void;\n\t\t\tcssProperties?: Record<string, string>;\n\t\t\tduration?: number;\n\t\t\tdelay?: number;\n\t\t}","on: OnEvent","el: EventTarget","on: Array<[string, EventHandler<any>]>","eventListeners: Map<string, EventListener>","handler: (event: Event) => void","options: boolean | AddEventListenerOptions | undefined","event: Event","e?: Element"],"sources":["../src/core/index.ts"],"sourcesContent":["import { html, TemplateResult } from \"lit\";\n\nconst ___LYCO_NULL___ = Symbol(\"___LYCO_NULL___\");\nexport type Temp = TemplateResult<1> | TemplateResult;\nexport type renderFnType = Temp | (() => Temp);\nexport type renderFnOrArrayType = renderFnType | Array<Temp> | (() => Temp[]);\n\nexport function renderFn(fn?: renderFnType): Temp {\n\treturn fn ? (typeof fn === \"function\" ? fn() : fn) : html``;\n}\n\nexport type WithHtml<K> = ((children?: K) => Temp) & {\n\thtml: (strings: TemplateStringsArray, ...values: unknown[]) => Temp;\n};\n\nexport function renderFnOrArray(\n\tfnOrArray?: renderFnOrArrayType,\n\tinjectBox?: (\n\t\tbox: Temp,\n\t\tidx?: number,\n\t\tisArray?: boolean,\n\t\tisFunc?: boolean\n\t) => Temp\n): Temp | Temp[] {\n\tlet _injectBox = injectBox ?? ((box) => box);\n\tif (fnOrArray === undefined) {\n\t\treturn html``;\n\t}\n\tif (Array.isArray(fnOrArray)) {\n\t\treturn fnOrArray.map((htmlTemp, idx) =>\n\t\t\t_injectBox(renderFn(htmlTemp), idx, true, false)\n\t\t);\n\t} else if (typeof fnOrArray !== \"function\") {\n\t\treturn _injectBox(renderFn(fnOrArray), undefined, false, false);\n\t}\n\n\tconst result = fnOrArray();\n\tif (Array.isArray(result)) {\n\t\treturn result.map((htmlTemp, idx) =>\n\t\t\t_injectBox(renderFn(htmlTemp), idx, true, false)\n\t\t);\n\t} else {\n\t\treturn _injectBox(renderFn(result), undefined, false, true);\n\t}\n}\n\nexport function randomClassName(prefix?: string): string {\n\tconst random = Math.random().toString(36).substring(2, 15);\n\treturn prefix ? `lyco-${prefix}-${random}` : `lyco-${random}`;\n}\n\nexport function renderFnOrCurry(\n\tfn?: renderFnType,\n\tinjectBox?: (box: Temp) => Temp\n): Temp | ((fn?: renderFnType) => Temp) {\n\tconst _injectBox = injectBox ?? ((box) => box);\n\tconst curriedFn = (f?: renderFnType) => _injectBox(renderFn(f!));\n\n\treturn fn ? curriedFn(fn) : curriedFn;\n}\n\nexport function renderFnOrArrayOrCurry(\n\tfnOrArray?: renderFnOrArrayType | string | number,\n\tinjectBox?: (box: Temp | Temp[]) => Temp | Temp[],\n\tinjectBox2?: (\n\t\tbox: Temp,\n\t\tidx?: number,\n\t\tisArray?: boolean,\n\t\tisFunc?: boolean\n\t) => Temp\n): Temp | Temp[] | ((fnOrArray?: renderFnOrArrayType) => Temp | Temp[]) {\n\tconst typeMap = {\n\t\tstring: (f?: any) => html` ${f} `,\n\t\tnumber: (f?: any) => html` ${f} `,\n\t};\n\tconst _fnOrArray =\n\t\ttypeof fnOrArray in typeMap\n\t\t\t? typeMap[typeof fnOrArray as \"string\" | \"number\"]\n\t\t\t: fnOrArray;\n\tconst _injectBox = injectBox ?? ((box) => box);\n\tconst curriedFn = (f?: renderFnOrArrayType | string | number) =>\n\t\t_injectBox(renderFnOrArray(f as any, injectBox2)!);\n\n\treturn _fnOrArray ? curriedFn(_fnOrArray) : curriedFn;\n}\n\nconst withInit = (\n\tprefix: string\n): {\n\tinit: boolean;\n\tprefix: string;\n\tclassName: string | typeof ___LYCO_NULL___;\n} => ({\n\tinit: false,\n\tprefix,\n\tclassName: ___LYCO_NULL___,\n});\n\nconst allRandomClassName = {\n\t\"GridBreakpoint::grid-breakpoint\": withInit(\"grid-breakpoint\"),\n\t\"Hidden::hidden-container\": withInit(\"hidden-container\"),\n\t\"ListGroup::list-group\": withInit(\"list-group\"),\n\t\"ScrollBar::scrollbar-container\": withInit(\"scrollbar-container\"),\n\t\"SkeletonLoader::skeleton\": withInit(\"skeleton\"),\n\t\"Swiper::swiper\": withInit(\"swiper\"),\n\t\"Table::table\": withInit(\"table\"),\n\t\"WaterFlow::waterflow\": withInit(\"waterflow\"),\n\t\"AutoFitGrid::auto-fit-grid\": withInit(\"auto-fit-grid\"),\n\t\"GridCol::grid-col\": withInit(\"grid-col\"),\n\t\"GridRow::grid-row\": withInit(\"grid-row\"),\n\t\"List::list\": withInit(\"list\"),\n\t\"Dialog::dialog\": withInit(\"dialog\"),\n\t\"SwitchInput::switch\": withInit(\"switch\"),\n\t\"Combobox::combobox\": withInit(\"combobox\"),\n};\n\nexport function getRandomClassName(key: keyof typeof allRandomClassName) {\n\tconst r = allRandomClassName[key];\n\tif (!r.init) {\n\t\tallRandomClassName[key].init = true;\n\t\tallRandomClassName[key].className = randomClassName(r.prefix);\n\t}\n\treturn allRandomClassName[key].className === ___LYCO_NULL___\n\t\t? randomClassName(r.prefix)\n\t\t: allRandomClassName[key].className;\n}\ntype ComponentCountItem = {\n\tvalue: number;\n};\n\ntype ComponentCount = {\n\t[key: string]: ComponentCountItem;\n} & {\n\tall: ComponentCountItem; // 修改为 ComponentCountItem 类型\n};\nexport const componentCount: ComponentCount = {\n\tall: { value: 0 },\n};\n\nexport function getComponentCount(name: string) {\n\tif (!componentCount[name]?.value) {\n\t\tcomponentCount[name] = { value: 0 };\n\t}\n\treturn componentCount[name].value;\n}\n\nexport function LycoComponent(name: string, slot: Temp) {\n\tcomponentCount.all = {\n\t\tvalue: componentCount.all.value + 1,\n\t};\n\tcomponentCount[name] === undefined\n\t\t? (componentCount[name] = { value: 0 })\n\t\t: (componentCount[name].value = componentCount[name].value + 1);\n\t// console.debug(\n\t// \t`LycoComponent: ${name} - ${componentCount[name].value} - ${componentCount.all.value}`\n\t// );\n\treturn html`\n\t\t<!-- ${name} - ${componentCount[name].value} -->\n\t\t${slot}\n\t`;\n}\n\n// 动画API:支持CSS动画类、任意动画库、CSS属性\nexport class AnimationAPI {\n\tstatic applyAnimation(\n\t\telement: HTMLElement,\n\t\toptions: {\n\t\t\tanimationClass?: string;\n\t\t\tanimation?: (element: HTMLElement) => void;\n\t\t\tcssProperties?: Record<string, string>;\n\t\t\tduration?: number;\n\t\t\tdelay?: number;\n\t\t}\n\t) {\n\t\t// Apply CSS animation class\n\t\tif (options.animationClass) {\n\t\t\telement.classList.add(options.animationClass);\n\t\t\tif (options.duration) {\n\t\t\t\telement.style.animationDuration = `${options.duration}s`;\n\t\t\t}\n\t\t\tif (options.delay) {\n\t\t\t\telement.style.animationDelay = `${options.delay}s`;\n\t\t\t}\n\t\t}\n\n\t\t// Use custom animation function (supports any animation library)\n\t\tif (options.animation) {\n\t\t\toptions.animation(element);\n\t\t}\n\n\t\t// Apply direct CSS styles for animation\n\t\tif (\n\t\t\toptions.cssProperties &&\n\t\t\tObject.keys(options.cssProperties).length > 0\n\t\t) {\n\t\t\tObject.keys(options.cssProperties).forEach((key) => {\n\t\t\t\telement.style[key as any] = options.cssProperties![key];\n\t\t\t});\n\t\t\tif (options.duration) {\n\t\t\t\telement.style.transitionDuration = `${options.duration}s`;\n\t\t\t}\n\t\t}\n\t}\n}\n\ntype EventHandler<K extends keyof GlobalEventHandlersEventMap> =\n\t| ((event: GlobalEventHandlersEventMap[K]) => void)\n\t| {\n\t\t\thandler: (event: GlobalEventHandlersEventMap[K]) => void;\n\t\t\toptions?: boolean | AddEventListenerOptions;\n\t };\n\nexport type OnEvent = {\n\t[K in keyof GlobalEventHandlersEventMap]?: EventHandler<K>;\n};\n\nexport function withEvents(on: OnEvent) {\n\treturn on;\n}\n\nexport function bindEvents(\n\tel: EventTarget,\n\ton: Array<[string, EventHandler<any>]>,\n\teventListeners: Map<string, EventListener>\n): void {\n\ton.forEach(([name, entry]) => {\n\t\tif (!entry) return; // 添加空值检查\n\n\t\tif (eventListeners.has(name)) {\n\t\t\tel.removeEventListener(name, eventListeners.get(name)!);\n\t\t}\n\n\t\tlet handler: (event: Event) => void;\n\t\tlet options: boolean | AddEventListenerOptions | undefined;\n\n\t\tif (typeof entry === \"function\") {\n\t\t\thandler = entry;\n\t\t\toptions = undefined;\n\t\t} else {\n\t\t\thandler = entry.handler;\n\t\t\toptions = entry.options;\n\t\t}\n\n\t\tif (!handler) return; // 确保 handler 存在\n\n\t\tconst listener = (event: Event) => handler(event);\n\t\tel.addEventListener(name, listener, options);\n\t\teventListeners.set(name, listener);\n\t});\n}\n\nexport function createEventBinder(on: OnEvent) {\n\tconst eventListeners = new Map<string, EventListener>();\n\tconst _on = Object.entries(on);\n\tconst _el = {\n\t\tvalue: null as EventTarget | null,\n\t};\n\tconst self = {\n\t\tbind(el: EventTarget) {\n\t\t\tbindEvents(el, _on, eventListeners);\n\t\t\t_el.value = el;\n\t\t},\n\t\tunbindAll() {\n\t\t\teventListeners.forEach((k, v) => {\n\t\t\t\t_el.value?.removeEventListener(v, k);\n\t\t\t});\n\t\t\teventListeners.clear();\n\t\t\t_el.value = null;\n\t\t},\n\t\tauto: (e?: Element) => {\n\t\t\tif (e) {\n\t\t\t\tself.bind(e);\n\t\t\t} else {\n\t\t\t\tself.unbindAll();\n\t\t\t}\n\t\t},\n\t};\n\treturn self;\n}\n"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"core-bQvrG1od.mjs","names":["fn?: renderFnType","fnOrArray?: renderFnOrArrayType","injectBox?: (\n\t\tbox: Temp,\n\t\tidx?: number,\n\t\tisArray?: boolean,\n\t\tisFunc?: boolean\n\t) => Temp","prefix?: string","injectBox?: (box: Temp) => Temp","f?: renderFnType","fnOrArray?: renderFnOrArrayType | string | number","injectBox?: (box: Temp | Temp[]) => Temp | Temp[]","injectBox2?: (\n\t\tbox: Temp,\n\t\tidx?: number,\n\t\tisArray?: boolean,\n\t\tisFunc?: boolean\n\t) => Temp","f?: any","f?: renderFnOrArrayType | string | number","prefix: string","key: keyof typeof allRandomClassName","componentCount: ComponentCount","name: string","slot: Temp | Temp[]","element: HTMLElement","options: {\n\t\t\tanimationClass?: string;\n\t\t\tanimation?: (element: HTMLElement) => void;\n\t\t\tcssProperties?: Record<string, string>;\n\t\t\tduration?: number;\n\t\t\tdelay?: number;\n\t\t}","on: OnEvent","el: EventTarget","on: Array<[string, EventHandler<any>]>","eventListeners: Map<string, EventListener>","handler: (event: Event) => void","options: boolean | AddEventListenerOptions | undefined","event: Event","e?: Element"],"sources":["../src/core/index.ts"],"sourcesContent":["import { html, TemplateResult } from \"lit\";\n\nconst ___LYCO_NULL___ = Symbol(\"___LYCO_NULL___\");\nexport type Temp = TemplateResult<1> | TemplateResult;\nexport type renderFnType = Temp | (() => Temp);\nexport type renderFnOrArrayType = renderFnType | Array<Temp> | (() => Temp[]);\n\nexport function renderFn(fn?: renderFnType): Temp {\n\treturn fn ? (typeof fn === \"function\" ? fn() : fn) : html``;\n}\n\nexport type WithHtml<K> = ((children?: K) => Temp) & {\n\thtml: (strings: TemplateStringsArray, ...values: unknown[]) => Temp;\n};\n\nexport function renderFnOrArray(\n\tfnOrArray?: renderFnOrArrayType,\n\tinjectBox?: (\n\t\tbox: Temp,\n\t\tidx?: number,\n\t\tisArray?: boolean,\n\t\tisFunc?: boolean\n\t) => Temp\n): Temp | Temp[] {\n\tlet _injectBox = injectBox ?? ((box) => box);\n\tif (fnOrArray === undefined) {\n\t\treturn html``;\n\t}\n\tif (Array.isArray(fnOrArray)) {\n\t\treturn fnOrArray.map((htmlTemp, idx) =>\n\t\t\t_injectBox(renderFn(htmlTemp), idx, true, false)\n\t\t);\n\t} else if (typeof fnOrArray !== \"function\") {\n\t\treturn _injectBox(renderFn(fnOrArray), undefined, false, false);\n\t}\n\n\tconst result = fnOrArray();\n\tif (Array.isArray(result)) {\n\t\treturn result.map((htmlTemp, idx) =>\n\t\t\t_injectBox(renderFn(htmlTemp), idx, true, false)\n\t\t);\n\t} else {\n\t\treturn _injectBox(renderFn(result), undefined, false, true);\n\t}\n}\n\nexport function randomClassName(prefix?: string): string {\n\tconst random = Math.random().toString(36).substring(2, 15);\n\treturn prefix ? `lyco-${prefix}-${random}` : `lyco-${random}`;\n}\n\nexport function renderFnOrCurry(\n\tfn?: renderFnType,\n\tinjectBox?: (box: Temp) => Temp\n): Temp | ((fn?: renderFnType) => Temp) {\n\tconst _injectBox = injectBox ?? ((box) => box);\n\tconst curriedFn = (f?: renderFnType) => _injectBox(renderFn(f!));\n\n\treturn fn ? curriedFn(fn) : curriedFn;\n}\n\nexport function renderFnOrArrayOrCurry(\n\tfnOrArray?: renderFnOrArrayType | string | number,\n\tinjectBox?: (box: Temp | Temp[]) => Temp | Temp[],\n\tinjectBox2?: (\n\t\tbox: Temp,\n\t\tidx?: number,\n\t\tisArray?: boolean,\n\t\tisFunc?: boolean\n\t) => Temp\n): Temp | Temp[] | ((fnOrArray?: renderFnOrArrayType) => Temp | Temp[]) {\n\tconst typeMap = {\n\t\tstring: (f?: any) => html` ${f} `,\n\t\tnumber: (f?: any) => html` ${f} `,\n\t};\n\tconst _fnOrArray =\n\t\ttypeof fnOrArray in typeMap\n\t\t\t? typeMap[typeof fnOrArray as \"string\" | \"number\"]\n\t\t\t: fnOrArray;\n\tconst _injectBox = injectBox ?? ((box) => box);\n\tconst curriedFn = (f?: renderFnOrArrayType | string | number) =>\n\t\t_injectBox(renderFnOrArray(f as any, injectBox2)!);\n\n\treturn _fnOrArray ? curriedFn(_fnOrArray) : curriedFn;\n}\n\nconst withInit = (\n\tprefix: string\n): {\n\tinit: boolean;\n\tprefix: string;\n\tclassName: string | typeof ___LYCO_NULL___;\n} => ({\n\tinit: false,\n\tprefix,\n\tclassName: ___LYCO_NULL___,\n});\n\nconst allRandomClassName = {\n\t\"GridBreakpoint::grid-breakpoint\": withInit(\"grid-breakpoint\"),\n\t\"Hidden::hidden-container\": withInit(\"hidden-container\"),\n\t\"ListGroup::list-group\": withInit(\"list-group\"),\n\t\"ScrollBar::scrollbar-container\": withInit(\"scrollbar-container\"),\n\t\"SkeletonLoader::skeleton\": withInit(\"skeleton\"),\n\t\"Swiper::swiper\": withInit(\"swiper\"),\n\t\"Table::table\": withInit(\"table\"),\n\t\"WaterFlow::waterflow\": withInit(\"waterflow\"),\n\t\"AutoFitGrid::auto-fit-grid\": withInit(\"auto-fit-grid\"),\n\t\"GridCol::grid-col\": withInit(\"grid-col\"),\n\t\"GridRow::grid-row\": withInit(\"grid-row\"),\n\t\"List::list\": withInit(\"list\"),\n\t\"Dialog::dialog\": withInit(\"dialog\"),\n\t\"SwitchInput::switch\": withInit(\"switch\"),\n\t\"Combobox::combobox\": withInit(\"combobox\"),\n};\n\nexport function getRandomClassName(key: keyof typeof allRandomClassName) {\n\tconst r = allRandomClassName[key];\n\tif (!r.init) {\n\t\tallRandomClassName[key].init = true;\n\t\tallRandomClassName[key].className = randomClassName(r.prefix);\n\t}\n\treturn allRandomClassName[key].className === ___LYCO_NULL___\n\t\t? randomClassName(r.prefix)\n\t\t: allRandomClassName[key].className;\n}\ntype ComponentCountItem = {\n\tvalue: number;\n};\n\ntype ComponentCount = {\n\t[key: string]: ComponentCountItem;\n} & {\n\tall: ComponentCountItem; // 修改为 ComponentCountItem 类型\n};\nexport const componentCount: ComponentCount = {\n\tall: { value: 0 },\n};\n\nexport function getComponentCount(name: string) {\n\tif (!componentCount[name]?.value) {\n\t\tcomponentCount[name] = { value: 0 };\n\t}\n\treturn componentCount[name].value;\n}\n\nexport function LycoComponent(name: string, slot: Temp | Temp[]) {\n\tcomponentCount.all = {\n\t\tvalue: componentCount.all.value + 1,\n\t};\n\tcomponentCount[name] === undefined\n\t\t? (componentCount[name] = { value: 0 })\n\t\t: (componentCount[name].value = componentCount[name].value + 1);\n\t// console.debug(\n\t// \t`LycoComponent: ${name} - ${componentCount[name].value} - ${componentCount.all.value}`\n\t// );\n\treturn html`\n\t\t<!-- ${name} - ${componentCount[name].value} -->\n\t\t${slot}\n\t`;\n}\n\n// 动画API:支持CSS动画类、任意动画库、CSS属性\nexport class AnimationAPI {\n\tstatic applyAnimation(\n\t\telement: HTMLElement,\n\t\toptions: {\n\t\t\tanimationClass?: string;\n\t\t\tanimation?: (element: HTMLElement) => void;\n\t\t\tcssProperties?: Record<string, string>;\n\t\t\tduration?: number;\n\t\t\tdelay?: number;\n\t\t}\n\t) {\n\t\t// Apply CSS animation class\n\t\tif (options.animationClass) {\n\t\t\telement.classList.add(options.animationClass);\n\t\t\tif (options.duration) {\n\t\t\t\telement.style.animationDuration = `${options.duration}s`;\n\t\t\t}\n\t\t\tif (options.delay) {\n\t\t\t\telement.style.animationDelay = `${options.delay}s`;\n\t\t\t}\n\t\t}\n\n\t\t// Use custom animation function (supports any animation library)\n\t\tif (options.animation) {\n\t\t\toptions.animation(element);\n\t\t}\n\n\t\t// Apply direct CSS styles for animation\n\t\tif (\n\t\t\toptions.cssProperties &&\n\t\t\tObject.keys(options.cssProperties).length > 0\n\t\t) {\n\t\t\tObject.keys(options.cssProperties).forEach((key) => {\n\t\t\t\telement.style[key as any] = options.cssProperties![key];\n\t\t\t});\n\t\t\tif (options.duration) {\n\t\t\t\telement.style.transitionDuration = `${options.duration}s`;\n\t\t\t}\n\t\t}\n\t}\n}\n\ntype EventHandler<K extends keyof GlobalEventHandlersEventMap> =\n\t| ((event: GlobalEventHandlersEventMap[K]) => void)\n\t| {\n\t\t\thandler: (event: GlobalEventHandlersEventMap[K]) => void;\n\t\t\toptions?: boolean | AddEventListenerOptions;\n\t };\n\nexport type OnEvent = {\n\t[K in keyof GlobalEventHandlersEventMap]?: EventHandler<K>;\n};\n\nexport function withEvents(on: OnEvent) {\n\treturn on;\n}\n\nexport function bindEvents(\n\tel: EventTarget,\n\ton: Array<[string, EventHandler<any>]>,\n\teventListeners: Map<string, EventListener>\n): void {\n\ton.forEach(([name, entry]) => {\n\t\tif (!entry) return; // 添加空值检查\n\n\t\tif (eventListeners.has(name)) {\n\t\t\tel.removeEventListener(name, eventListeners.get(name)!);\n\t\t}\n\n\t\tlet handler: (event: Event) => void;\n\t\tlet options: boolean | AddEventListenerOptions | undefined;\n\n\t\tif (typeof entry === \"function\") {\n\t\t\thandler = entry;\n\t\t\toptions = undefined;\n\t\t} else {\n\t\t\thandler = entry.handler;\n\t\t\toptions = entry.options;\n\t\t}\n\n\t\tif (!handler) return; // 确保 handler 存在\n\n\t\tconst listener = (event: Event) => handler(event);\n\t\tel.addEventListener(name, listener, options);\n\t\teventListeners.set(name, listener);\n\t});\n}\n\nexport function createEventBinder(on: OnEvent) {\n\tconst eventListeners = new Map<string, EventListener>();\n\tconst _on = Object.entries(on);\n\tconst _el = {\n\t\tvalue: null as EventTarget | null,\n\t};\n\tconst self = {\n\t\tbind(el: EventTarget) {\n\t\t\tbindEvents(el, _on, eventListeners);\n\t\t\t_el.value = el;\n\t\t},\n\t\tunbindAll() {\n\t\t\teventListeners.forEach((k, v) => {\n\t\t\t\t_el.value?.removeEventListener(v, k);\n\t\t\t});\n\t\t\teventListeners.clear();\n\t\t\t_el.value = null;\n\t\t},\n\t\tauto: (e?: Element) => {\n\t\t\tif (e) {\n\t\t\t\tself.bind(e);\n\t\t\t} else {\n\t\t\t\tself.unbindAll();\n\t\t\t}\n\t\t},\n\t};\n\treturn self;\n}\n"],"mappings":"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"}
|
package/dist/index.cjs.js
CHANGED
@@ -228,7 +228,7 @@ const e=require(`./core-BoB7sDMv.js`),t=e.__toESM(require(`lit`)),n=e.__toESM(re
|
|
228
228
|
<div style="flex: 0 0 ${a}; overflow: auto;">${c}</div>
|
229
229
|
<div style="flex: 1 1 auto; overflow: auto;">${l}</div>
|
230
230
|
</div>
|
231
|
-
`}function D(r={},i){if(i===void 0)return e=>D(r,e??[t.html``]);let a=e.getComponentCount(`Swiper`),{gap:o=`8px`,snapType:s=`mandatory`,height:c=`auto`,width:l=`100%`,className:u=e.getRandomClassName(`Swiper::swiper`)+`-lyco-now-${a}`,direction:d=`x`,scrollBehavior:f=`smooth`,align:p=`start`,showNavigation:m=!0,navigationPosition:h=`inside`,showPagination:g=!0,paginationType:_=`dots`,autoPlay:v=!1,interval:y=3e3,loop:b=!1,touchEnabled:x=!0,mouseWheel:S=!1,onSlideChange:C,on:w}=r,T=u,E=T+`-container`,O=T+`-slide`,k=T+`-navigation`,A=T+`-pagination`,j;j=i?typeof i==`function`?i():i:[];let M=j.length,[N,P]=(()=>{let e={value:0};return[()=>e.value,t=>{let n=Math.max(0,Math.min(t,M-1));e.value!==n&&(e.value=n,C?.(n))}]})(),F=e=>{let t=typeof document<`u`?document.querySelector(`.${E}`):null;if(!t)return;let n=t.querySelectorAll(`.${O}`);if(e<0||e>=n.length)return;let r=n[e],i=r.getBoundingClientRect(),a=t.getBoundingClientRect(),o;d===`x`?(o=r.offsetLeft-t.offsetLeft,p===`center`?o-=(a.width-i.width)/2:p===`end`&&(o-=a.width-i.width),t.scrollTo({left:o,behavior:f})):(o=r.offsetTop-t.offsetTop,p===`center`?o-=(a.height-i.height)/2:p===`end`&&(o-=a.height-i.height),t.scrollTo({top:o,behavior:f})),P(e)},I=()=>{let e=N()+1>=M?b?0:N():N()+1;F(e)},L=()=>{let e=N()-1<0?b?M-1:N():N()-1;F(e)},R=()=>{let e=typeof document<`u`?document.querySelector(`.${E}`):null;if(!e)return;let t=e.querySelectorAll(`.${O}`),n=0,r=1/0;t.forEach((t,i)=>{let a=t.getBoundingClientRect(),o=e.getBoundingClientRect(),s;if(d===`x`){let e=a.left+a.width/2-(o.left+o.width/2);s=Math.abs(e)}else{let e=a.top+a.height/2-(o.top+o.height/2);s=Math.abs(e)}s<r&&(r=s,n=i)}),P(n)},z=e=>{if(!x)return;let t=e.touches[0],n=e.currentTarget;n.dataset.touchStartX=t.clientX.toString(),n.dataset.touchStartY=t.clientY.toString()},B=e=>{if(!x)return;let t=e.touches[0],n=e.currentTarget,r=parseFloat(n.dataset.touchStartX||`0`),i=parseFloat(n.dataset.touchStartY||`0`),a=t.clientX-r,o=t.clientY-i;(Math.abs(a)>Math.abs(o)||d===`x`)&&e.preventDefault()},V=e=>{if(!x)return;let t=e.currentTarget,n=parseFloat(t.dataset.touchStartX||`0`),r=parseFloat(t.dataset.touchStartY||`0`);if(!n&&!r)return;let i=e.changedTouches[0],a=i.clientX-n,o=i.clientY-r,s=Math.max(Math.abs(a),Math.abs(o))>30;s&&(d===`x`?a>0?L():I():o>0?L():I()),delete t.dataset.touchStartX,delete t.dataset.touchStartY},H=e=>{S&&(e.preventDefault(),e.deltaY>0?I():L())},
|
231
|
+
`}function D(r={},i){if(i===void 0)return e=>D(r,e??[t.html``]);let a=e.getComponentCount(`Swiper`),{gap:o=`8px`,snapType:s=`mandatory`,height:c=`auto`,width:l=`100%`,className:u=e.getRandomClassName(`Swiper::swiper`)+`-lyco-now-${a}`,direction:d=`x`,scrollBehavior:f=`smooth`,align:p=`start`,showNavigation:m=!0,navigationPosition:h=`inside`,showPagination:g=!0,paginationType:_=`dots`,autoPlay:v=!1,interval:y=3e3,loop:b=!1,touchEnabled:x=!0,mouseWheel:S=!1,onSlideChange:C,on:w}=r,T=u,E=T+`-container`,O=T+`-slide`,k=T+`-navigation`,A=T+`-pagination`,j;j=i?typeof i==`function`?i():i:[];let M=j.length,[N,P]=(()=>{let e={value:0};return[()=>e.value,t=>{let n=Math.max(0,Math.min(t,M-1));e.value!==n&&(e.value=n,C?.(n))}]})(),F=e=>{let t=typeof document<`u`?document.querySelector(`.${E}`):null;if(!t)return;let n=t.querySelectorAll(`.${O}`);if(e<0||e>=n.length)return;let r=n[e],i=r.getBoundingClientRect(),a=t.getBoundingClientRect(),o;d===`x`?(o=r.offsetLeft-t.offsetLeft,p===`center`?o-=(a.width-i.width)/2:p===`end`&&(o-=a.width-i.width),t.scrollTo({left:o,behavior:f})):(o=r.offsetTop-t.offsetTop,p===`center`?o-=(a.height-i.height)/2:p===`end`&&(o-=a.height-i.height),t.scrollTo({top:o,behavior:f})),P(e)},I=()=>{let e=N()+1>=M?b?0:N():N()+1;F(e)},L=()=>{let e=N()-1<0?b?M-1:N():N()-1;F(e)},R=()=>{let e=typeof document<`u`?document.querySelector(`.${E}`):null;if(!e)return;let t=e.querySelectorAll(`.${O}`),n=0,r=1/0;t.forEach((t,i)=>{let a=t.getBoundingClientRect(),o=e.getBoundingClientRect(),s;if(d===`x`){let e=a.left+a.width/2-(o.left+o.width/2);s=Math.abs(e)}else{let e=a.top+a.height/2-(o.top+o.height/2);s=Math.abs(e)}s<r&&(r=s,n=i)}),P(n)},z=e=>{if(!x)return;let t=e.touches[0],n=e.currentTarget;n.dataset.touchStartX=t.clientX.toString(),n.dataset.touchStartY=t.clientY.toString()},B=e=>{if(!x)return;let t=e.touches[0],n=e.currentTarget,r=parseFloat(n.dataset.touchStartX||`0`),i=parseFloat(n.dataset.touchStartY||`0`),a=t.clientX-r,o=t.clientY-i;(Math.abs(a)>Math.abs(o)||d===`x`)&&e.preventDefault()},V=e=>{if(!x)return;let t=e.currentTarget,n=parseFloat(t.dataset.touchStartX||`0`),r=parseFloat(t.dataset.touchStartY||`0`);if(!n&&!r)return;let i=e.changedTouches[0],a=i.clientX-n,o=i.clientY-r,s=Math.max(Math.abs(a),Math.abs(o))>30;s&&(d===`x`?a>0?L():I():o>0?L():I()),delete t.dataset.touchStartX,delete t.dataset.touchStartY},H=e=>{S&&(e.preventDefault(),e.deltaY>0?I():L())},ee=e=>{if(!v||!e)return;let t,n=()=>{t=setInterval(I,y)},r=()=>{clearInterval(t)};return e.addEventListener(`mouseenter`,r),e.addEventListener(`mouseleave`,n),n(),()=>{clearInterval(t),e.removeEventListener(`mouseenter`,r),e.removeEventListener(`mouseleave`,n)}},U=()=>{let e=typeof document<`u`?document.querySelector(`.${E}`):null;if(!e)return;let t=[];e.addEventListener(`scroll`,R),t.push(()=>e.removeEventListener(`scroll`,R)),x&&(e.addEventListener(`touchstart`,z),e.addEventListener(`touchmove`,B,{passive:!1}),e.addEventListener(`touchend`,V),t.push(()=>e.removeEventListener(`touchstart`,z)),t.push(()=>e.removeEventListener(`touchmove`,B)),t.push(()=>e.removeEventListener(`touchend`,V))),S&&(e.addEventListener(`wheel`,H,{passive:!1}),t.push(()=>e.removeEventListener(`wheel`,H)));let n=ee(e);return n&&t.push(n),F(0),()=>t.forEach(e=>e())};typeof window<`u`&&typeof document<`u`&&setTimeout(U,0);let W=t.html`
|
232
232
|
<div class="${A}">
|
233
233
|
${Array.from({length:M},(e,n)=>t.html`
|
234
234
|
<button
|
@@ -237,25 +237,25 @@ const e=require(`./core-BoB7sDMv.js`),t=e.__toESM(require(`lit`)),n=e.__toESM(re
|
|
237
237
|
></button>
|
238
238
|
`)}
|
239
239
|
</div>
|
240
|
-
`,
|
240
|
+
`,G=t.html`
|
241
241
|
<div class="${A} fraction">
|
242
242
|
<span class="current">${N()+1}</span>
|
243
243
|
<span class="separator">/</span>
|
244
244
|
<span class="total">${M}</span>
|
245
245
|
</div>
|
246
|
-
`,
|
246
|
+
`,K=t.html`
|
247
247
|
<div class="${A} progressbar">
|
248
248
|
<div
|
249
249
|
class="progress"
|
250
250
|
style="width: ${M>1?N()/(M-1)*100:0}%"
|
251
251
|
></div>
|
252
252
|
</div>
|
253
|
-
`,
|
253
|
+
`,q=t.html`
|
254
254
|
<div class="${k}">
|
255
255
|
<button class="prev" @click=${L}>◀</button>
|
256
256
|
<button class="next" @click=${I}>▶</button>
|
257
257
|
</div>
|
258
|
-
`,
|
258
|
+
`,te=`
|
259
259
|
.${T} {
|
260
260
|
position: relative;
|
261
261
|
overflow: hidden;
|
@@ -360,13 +360,13 @@ const e=require(`./core-BoB7sDMv.js`),t=e.__toESM(require(`lit`)),n=e.__toESM(re
|
|
360
360
|
background-color: white;
|
361
361
|
transition: width 0.3s;
|
362
362
|
}
|
363
|
-
`,
|
363
|
+
`,J=e.createEventBinder(w??{});return e.LycoComponent(`Swiper`,t.html`
|
364
364
|
<style>
|
365
|
-
${
|
365
|
+
${te}
|
366
366
|
</style>
|
367
367
|
|
368
368
|
<div
|
369
|
-
${(0,n.ref)(e=>{e?
|
369
|
+
${(0,n.ref)(e=>{e?J.bind(e):J.unbindAll()})}
|
370
370
|
class="${T}"
|
371
371
|
>
|
372
372
|
<div class="${E}">
|
@@ -377,10 +377,10 @@ const e=require(`./core-BoB7sDMv.js`),t=e.__toESM(require(`lit`)),n=e.__toESM(re
|
|
377
377
|
`)}
|
378
378
|
</div>
|
379
379
|
|
380
|
-
${m?
|
381
|
-
${g&&_===`dots`?
|
382
|
-
${g&&_===`fraction`?
|
383
|
-
${g&&_===`progressbar`?
|
380
|
+
${m?q:null}
|
381
|
+
${g&&_===`dots`?W:null}
|
382
|
+
${g&&_===`fraction`?G:null}
|
383
|
+
${g&&_===`progressbar`?K:null}
|
384
384
|
</div>
|
385
385
|
`)}const O={borderRadius:{small:`4px`,medium:`8px`,large:`16px`,full:`9999px`},elevation:{level1:`0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.14)`,level2:`0 3px 6px rgba(0,0,0,0.15), 0 2px 4px rgba(0,0,0,0.12)`,level3:`0 10px 20px rgba(0,0,0,0.15), 0 3px 6px rgba(0,0,0,0.10)`,level4:`0 15px 25px rgba(0,0,0,0.15), 0 5px 10px rgba(0,0,0,0.05)`,level5:`0 20px 40px rgba(0,0,0,0.2)`},animation:{standard:`0.2s cubic-bezier(0.4, 0, 0.2, 1)`,emphasized:`0.3s cubic-bezier(0.4, 0, 0.2, 1)`,decelerated:`0.4s cubic-bezier(0, 0, 0.2, 1)`},colors:{primary:`#6750A4`,onPrimary:`#FFFFFF`,primaryContainer:`#EADDFF`,onPrimaryContainer:`#21005E`,secondary:`#625B71`,onSecondary:`#FFFFFF`,secondaryContainer:`#E8DEF8`,onSecondaryContainer:`#1E192B`,surface:`#FEF7FF`,onSurface:`#1C1B1F`,surfaceVariant:`#E7E0EB`,onSurfaceVariant:`#49454E`,error:`#B00020`}};function k(r){let{checked:i=!1,disabled:a=!1,size:o=`medium`,color:s=O.colors.primary,onChange:c,className:l=``,on:u={}}=r??{},d=e.getComponentCount(`SwitchInput`),f=e.getRandomClassName(`SwitchInput::switch`)+`-lyco-now-${d}`,p={small:{width:32,height:16,thumbSize:12},medium:{width:44,height:24,thumbSize:18},large:{width:56,height:32,thumbSize:24}},{width:m,height:h,thumbSize:g}=p[o],_=`
|
386
386
|
.${f} {
|
@@ -588,7 +588,7 @@ const e=require(`./core-BoB7sDMv.js`),t=e.__toESM(require(`lit`)),n=e.__toESM(re
|
|
588
588
|
.class=${r?.className}
|
589
589
|
style=${r?.style??``}
|
590
590
|
></canvas>
|
591
|
-
`}function L(
|
591
|
+
`}function L(r,i){if(i===void 0)return e=>L(r,e??[t.html``]);let a=r?.padding??`16px`,o=r?.borderRadius??`8px`,s=r?.shadow??`0 2px 8px rgba(0,0,0,0.1)`,c=r?.background??`#fff`,l=e.createEventBinder(r?.on??{});return t.html`
|
592
592
|
<div
|
593
593
|
${(0,n.ref)(e=>{e?l.bind(e):l.unbindAll()})}
|
594
594
|
style="
|
@@ -601,7 +601,7 @@ const e=require(`./core-BoB7sDMv.js`),t=e.__toESM(require(`lit`)),n=e.__toESM(re
|
|
601
601
|
>
|
602
602
|
${e.renderFnOrArray(i)}
|
603
603
|
</div>
|
604
|
-
`}function
|
604
|
+
`}function R(r,i){if(i===void 0){let e=e=>R(r,e??t.html``);return e.html=(e,...n)=>R(r,(0,t.html)(e,...n)),e}let a=r?.width?`width: ${r.width};`:``,o=r?.height?`height: ${r.height};`:``,s=r?.background?`background: ${r.background};`:``,c=e.createEventBinder(r?.on??{});return t.html`
|
605
605
|
<div
|
606
606
|
${(0,n.ref)(e=>{e?c.bind(e):c.unbindAll()})}
|
607
607
|
style="
|
@@ -613,7 +613,7 @@ const e=require(`./core-BoB7sDMv.js`),t=e.__toESM(require(`lit`)),n=e.__toESM(re
|
|
613
613
|
>
|
614
614
|
${e.renderFn(i)}
|
615
615
|
</div>
|
616
|
-
`}function
|
616
|
+
`}function z(r){let{value:i=``,options:a=[],placeholder:o=``,disabled:s=!1,error:c=!1,className:l=``,style:u=``,maxHeight:d=`300px`,onChange:f,onInput:p,onFocus:m,onBlur:h,on:g={},optionRender:_}=r??{},v=e.getComponentCount(`Combobox`),y=e.getRandomClassName(`Combobox::combobox`)+`-lyco-now-${v}`,b=!1,x=null,S=`
|
617
617
|
.${y} {
|
618
618
|
position: relative;
|
619
619
|
width: 100%;
|
@@ -703,7 +703,7 @@ const e=require(`./core-BoB7sDMv.js`),t=e.__toESM(require(`lit`)),n=e.__toESM(re
|
|
703
703
|
`)}
|
704
704
|
</div>
|
705
705
|
</div>
|
706
|
-
`)}function
|
706
|
+
`)}function B(r,i){if(i===void 0)return e=>B(r,e??[t.html``]);let a=r?.maxWidth??`1024px`,o=r?.padding??`0 16px`,s=r?.background?`background: ${r.background};`:``,c=r?.fullHeight?`height: 100%;`:``,l=e.createEventBinder(r?.on??{});return t.html`
|
707
707
|
<div
|
708
708
|
${(0,n.ref)(e=>{e?l.bind(e):l.unbindAll()})}
|
709
709
|
style="
|
@@ -719,10 +719,10 @@ const e=require(`./core-BoB7sDMv.js`),t=e.__toESM(require(`lit`)),n=e.__toESM(re
|
|
719
719
|
>
|
720
720
|
${e.renderFnOrArray(i)}
|
721
721
|
</div>
|
722
|
-
`}function
|
722
|
+
`}function V(r){let i=r?.orientation??`horizontal`,a=r?.thickness??`1px`,o=r?.color??`#e0e0e0`,s=r?.margin??(i===`horizontal`?`8px 0`:`0 8px`),c=e.createEventBinder(r?.on??{}),l=i===`horizontal`?`width: 100%; height: ${a}; background: ${o}; margin: ${s};`:`width: ${a}; height: 100%; background: ${o}; margin: ${s};`;return t.html`<div
|
723
723
|
${(0,n.ref)(e=>{e?c.bind(e):c.unbindAll()})}
|
724
724
|
style="${l}"
|
725
|
-
></div>`}function
|
725
|
+
></div>`}function H(r,i){if(i===void 0){let e=e=>H(r,e??t.html``);return e.html=(e,...n)=>H(r,(0,t.html)(e,...n)),e}let a=r?.columns??4,o=r?.gap??`24px`,s=r?.background??`#f8f8f8`,c=r?.padding??`40px 16px`,l=e.createEventBinder(r?.on??{});return t.html`
|
726
726
|
<div
|
727
727
|
${(0,n.ref)(e=>{e?l.bind(e):l.unbindAll()})}
|
728
728
|
style="
|
@@ -745,7 +745,7 @@ const e=require(`./core-BoB7sDMv.js`),t=e.__toESM(require(`lit`)),n=e.__toESM(re
|
|
745
745
|
© ${new Date().getFullYear()} Your Company. All rights reserved.
|
746
746
|
</div>
|
747
747
|
</div>
|
748
|
-
`}function
|
748
|
+
`}function ee(e,t){return t?e.map((e,n)=>t(e,n)):t=>e.map((e,n)=>t(e,n))}function U(r,i){if(i===void 0){let e=e=>U(r,e??t.html``);return e.html=(e,...n)=>U(r,(0,t.html)(e,...n)),e}let a=r.defaultColumns??1,o=r.gap??`16px`,s=e.getComponentCount(`GridBreakpoint`),c=r.className??e.getRandomClassName(`GridBreakpoint::grid-breakpoint`)+`-lyco-now-`+s,l=Object.entries(r.breakpoints).map(([e,t])=>`@media`+e+`{
|
749
749
|
`+c+`{ grid-template-columns: repeat(`+t+`, 1fr); }
|
750
750
|
}`).join(`
|
751
751
|
`),u=`
|
@@ -764,7 +764,7 @@ const e=require(`./core-BoB7sDMv.js`),t=e.__toESM(require(`lit`)),n=e.__toESM(re
|
|
764
764
|
>
|
765
765
|
${e.renderFn(i)}
|
766
766
|
</div>
|
767
|
-
`)}function
|
767
|
+
`)}function W(r,i){if(i===void 0)return e=>W(r,e??[t.html``]);let a=r?.backgroundImage?`background-image: url('${r.backgroundImage}');`:``,o=r?.height??`400px`,s=r?.overlayColor??`rgba(0, 0, 0, 0.3)`,c=e.createEventBinder(r?.on??{});return t.html`
|
768
768
|
<div
|
769
769
|
${(0,n.ref)(e=>{e?c.bind(e):c.unbindAll()})}
|
770
770
|
style="
|
@@ -802,7 +802,7 @@ const e=require(`./core-BoB7sDMv.js`),t=e.__toESM(require(`lit`)),n=e.__toESM(re
|
|
802
802
|
${e.renderFnOrArray(i)}
|
803
803
|
</div>
|
804
804
|
</div>
|
805
|
-
`}function
|
805
|
+
`}function G(r,i){if(i===void 0){let e=e=>G(r,e??t.html``);return e.html=(e,...n)=>G(r,(0,t.html)(e,...n)),e}let a=r?.breakpoint??`(max-width: 600px)`,o=r?.mode??`hide`,s=e.getComponentCount(`Hidden`),c=r?.className??e.getRandomClassName(`Hidden::hidden-container`)+`-lyco-now-`+s,l=o===`hide`?`@media ${a} { .${c} { display: none !important; } }`:`@media ${a} { .${c} { display: block !important; } }
|
806
806
|
@media not ${a} { .${c} { display: none !important; } }`,u=`
|
807
807
|
.${c} {
|
808
808
|
display: block;
|
@@ -817,7 +817,7 @@ const e=require(`./core-BoB7sDMv.js`),t=e.__toESM(require(`lit`)),n=e.__toESM(re
|
|
817
817
|
>
|
818
818
|
${e.renderFn(i)}
|
819
819
|
</div>
|
820
|
-
`)}function
|
820
|
+
`)}function K(r,i,a=.1,o={}){let s=Array(r.length).fill(!1),c=`${a*100}vh`,l=`100vw`,u=r.map((r,a)=>t.html`
|
821
821
|
<div
|
822
822
|
${(0,n.ref)(n=>{if(n&&!s[a]){let c=new IntersectionObserver((n,c)=>{n.forEach(n=>{if(n.isIntersecting&&!s[a]){let l=n.target;s[a]=!0,(0,t.render)(i(r,a),l),e.AnimationAPI.applyAnimation(l,o);let u=l.querySelector(`[data-fallback]`);u&&u.remove(),c.unobserve(l)}})},{root:null,rootMargin:`0px`});c.observe(n)}})}
|
823
823
|
data-index="${a}"
|
@@ -829,7 +829,7 @@ const e=require(`./core-BoB7sDMv.js`),t=e.__toESM(require(`lit`)),n=e.__toESM(re
|
|
829
829
|
style="height: ${c}; width: ${l};"
|
830
830
|
></div>
|
831
831
|
</div>
|
832
|
-
`);return u}function
|
832
|
+
`);return u}function q(n){return t.html` <li>${e.renderFnOrArray(n)}</li> `}function te(n,r){let i=n?.bordered?`border: 1px solid #ddd; border-radius: 4px`:``,a=n?.striped?`li:nth-child(even) { background: #f9f9f9; }`:``,o=n?.hover?`li:hover { background: #f1f1f1; cursor: pointer; }`:``,s=e.getComponentCount(`List`),c=n?.className??e.getRandomClassName(`List::list`)+`-lyco-now-${s}`,l=`
|
833
833
|
ul.${c} {
|
834
834
|
list-style: none;
|
835
835
|
margin: 0;
|
@@ -852,7 +852,7 @@ const e=require(`./core-BoB7sDMv.js`),t=e.__toESM(require(`lit`)),n=e.__toESM(re
|
|
852
852
|
<ul class="${c}">
|
853
853
|
${e.renderFnOrArray(n)}
|
854
854
|
</ul>
|
855
|
-
`);return r===void 0?u:u(r)}function
|
855
|
+
`);return r===void 0?u:u(r)}function J(r,i){let a=r?.bordered?`border: 1px solid #ddd; border-radius: 4px`:``,o=r?.striped?`li:nth-child(even) { background: #f9f9f9; }`:``,s=r?.hover?`li:hover { background: #f1f1f1; cursor: pointer; }`:``,c=e.getComponentCount(`ListGroup`),l=r?.className??e.getRandomClassName(`ListGroup::list-group`)+`-lyco-now-`+c,u=(e,n,r,i)=>r?t.html` <li>${e}</li> `:e,d=`
|
856
856
|
ul.${l} {
|
857
857
|
list-style: none;
|
858
858
|
margin: 0;
|
@@ -893,7 +893,7 @@ const e=require(`./core-BoB7sDMv.js`),t=e.__toESM(require(`lit`)),n=e.__toESM(re
|
|
893
893
|
>
|
894
894
|
${e.renderFnOrArray(i)}
|
895
895
|
</div>
|
896
|
-
`}function
|
896
|
+
`}function Y(r,i){if(i===void 0){let e=e=>Y(r,e??t.html``);return e.html=(e,...n)=>Y(r,(0,t.html)(e,...n)),e}let a=r?.width?`width: ${r.width};`:``,o=r?.height?`height: ${r.height};`:``,s=r?.background?`background: ${r.background};`:``,c=e.createEventBinder(r?.on??{});return t.html`
|
897
897
|
<div
|
898
898
|
${(0,n.ref)(e=>{e?c.bind(e):c.unbindAll()})}
|
899
899
|
style="
|
@@ -1073,7 +1073,7 @@ const e=require(`./core-BoB7sDMv.js`),t=e.__toESM(require(`lit`)),n=e.__toESM(re
|
|
1073
1073
|
}
|
1074
1074
|
`.cssText}
|
1075
1075
|
</style>
|
1076
|
-
`;return e.LycoComponent(`Spinner`,g?S:x)}function
|
1076
|
+
`;return e.LycoComponent(`Spinner`,g?S:x)}function X(r,i){if(i===void 0){let e=e=>X(r,e??t.html``);return e.html=(e,...n)=>X(r,(0,t.html)(e,...n)),e}let a=r?.top?`top: ${r.top};`:``,o=r?.bottom?`bottom: ${r.bottom};`:``,s=typeof r?.zIndex==`number`?`z-index: ${r.zIndex};`:``,c=e.createEventBinder(r?.on??{});return t.html`
|
1077
1077
|
<div
|
1078
1078
|
${(0,n.ref)(e=>{e?c.bind(e):c.unbindAll()})}
|
1079
1079
|
style="
|
@@ -1084,7 +1084,7 @@ const e=require(`./core-BoB7sDMv.js`),t=e.__toESM(require(`lit`)),n=e.__toESM(re
|
|
1084
1084
|
>
|
1085
1085
|
${e.renderFn(i)}
|
1086
1086
|
</div>
|
1087
|
-
`}function
|
1087
|
+
`}function Z(r,i){if(i===void 0){let e=e=>Z(r,e??t.html``);return e.html=(e,...n)=>Z(r,(0,t.html)(e,...n)),e}let a=e.getComponentCount(`Table`),o=r?.className??e.getRandomClassName(`Table::table`)+`-lyco-now-${a}`,s=r?.striped?`
|
1088
1088
|
.${o} tr:nth-child(even) {
|
1089
1089
|
background: ${O.colors.surface};
|
1090
1090
|
}
|
@@ -1136,7 +1136,7 @@ const e=require(`./core-BoB7sDMv.js`),t=e.__toESM(require(`lit`)),n=e.__toESM(re
|
|
1136
1136
|
${e.renderFn(i)}
|
1137
1137
|
</table>
|
1138
1138
|
</div>
|
1139
|
-
`)}let
|
1139
|
+
`)}let Q=function(e){return e.Top=`top`,e.Bottom=`bottom`,e.Left=`left`,e.Right=`right`,e}({});function ce(r,i){let{content:a,placement:o=Q.Top,delay:s={show:200,hide:100},offset:c=8,hideOnClick:l=!1,interactive:u=!1,maxWidth:d=`200px`,theme:f=`dark`,className:p=``,style:m=``,zIndex:h=1e3,on:g={},onShow:_,onHide:v}=r,y=e.createEventBinder(g),b,x;function S(e){clearTimeout(x),b=window.setTimeout(()=>{w.style.visibility=`visible`,w.style.opacity=`1`,_?.()},s.show)}function C(){clearTimeout(b),x=window.setTimeout(()=>{w.style.visibility=`hidden`,w.style.opacity=`0`,v?.()},s.hide)}let w,T=r=>t.html`
|
1140
1140
|
<div
|
1141
1141
|
${(0,n.ref)(e=>{e?(y.bind(e),w=e.querySelector(`.lyco-tooltip-content`),e.addEventListener(`mouseenter`,()=>S(e)),e.addEventListener(`mouseleave`,()=>C()),l&&e.addEventListener(`click`,()=>C())):y.unbindAll()})}
|
1142
1142
|
class="lyco-tooltip lyco-tooltip--${f} ${p}"
|
@@ -1148,22 +1148,22 @@ const e=require(`./core-BoB7sDMv.js`),t=e.__toESM(require(`lit`)),n=e.__toESM(re
|
|
1148
1148
|
style="
|
1149
1149
|
position: absolute;
|
1150
1150
|
max-width: ${d};
|
1151
|
-
${o
|
1152
|
-
${o
|
1153
|
-
${o
|
1154
|
-
${o
|
1151
|
+
${o===Q.Top?`bottom: 100%; left: 50%; transform: translateX(-50%)`:``}
|
1152
|
+
${o===Q.Bottom?`top: 100%; left: 50%; transform: translateX(-50%)`:``}
|
1153
|
+
${o===Q.Left?`right: 100%; top: 50%; transform: translateY(-50%)`:``}
|
1154
|
+
${o===Q.Right?`left: 100%; top: 50%; transform: translateY(-50%)`:``}
|
1155
1155
|
padding: 4px 8px;
|
1156
1156
|
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
|
1157
1157
|
background: ${f===`light`?`white; color: black`:`rgba(0,0,0,0.8); color: white`};
|
1158
1158
|
border-radius: 4px;
|
1159
1159
|
font-size: 12px;
|
1160
1160
|
white-space: normal;
|
1161
|
-
width: ${o
|
1161
|
+
width: ${o===Q.Left||o===Q.Right?d:`auto`};
|
1162
1162
|
visibility: hidden;
|
1163
1163
|
opacity: 0;
|
1164
1164
|
transition: opacity ${s.show}ms;
|
1165
1165
|
z-index: ${h};
|
1166
|
-
margin: ${typeof c==`number`?o
|
1166
|
+
margin: ${typeof c==`number`?o===Q.Top||o===Q.Bottom?`${c}px 0`:`0 ${c}px`:`${c.y}px ${c.x}px`};
|
1167
1167
|
${u?`pointer-events: auto`:`pointer-events: none`};
|
1168
1168
|
"
|
1169
1169
|
>
|
@@ -1208,7 +1208,7 @@ const e=require(`./core-BoB7sDMv.js`),t=e.__toESM(require(`lit`)),n=e.__toESM(re
|
|
1208
1208
|
justify-content: center;
|
1209
1209
|
z-index: 1000;
|
1210
1210
|
background: rgba(0,0,0,0.3);
|
1211
|
-
`;var
|
1211
|
+
`;var $=class{constructor(e,t){this.isOpen=!1,this.returnValue=``,this.element=e,this.contentElement=t}show(){this.element.style.display=`flex`,this.isOpen=!0}showModal(){this.show()}close(){this.element.style.display=`none`,this.isOpen=!1,this.element.dispatchEvent(new Event(`close`))}get open(){return this.isOpen}getBoundingClientRect(){return this.contentElement.getBoundingClientRect()}get style(){return this.contentElement.style}};function he(r,i){let a=r?.open??!1,o=r?.onClose,s=r?.className??``,c=r?.style??``,l=e.createEventBinder(r?.on?r?.on:{}),u=r?.movable??!1,d=r?.placement??de.Center,f=r?.proxyRef??{value:null},p=null,m=!1,h={x:0,y:0},g=null,_=r?.mask??!0,v=e.getComponentCount(`Dialog`),y=e.getRandomClassName(`Dialog::dialog`)+`-lyco-now-`+v;function b(e){return u?u===`self`?e:u&&`value`in u?u.value:null:null}function x(){if(typeof window>`u`)return``;let e=300,t=150,n=(window.innerWidth-e)/2,r=(window.innerHeight-t)/2;return`left: ${n}px; top: ${r}px;`}function S(){switch(d){case`left`:return`left: 32px; top: 50%;`;case`right`:return`right: 32px; top: 50%;`;case`top`:return`top: 32px; left: 50%;`;case`bottom`:return`bottom: 32px; left: 50%;`;case`top-start`:return`top: 32px; left: 32px;`;case`top-end`:return`top: 32px; right: 32px;`;case`bottom-start`:return`bottom: 32px; left: 32px;`;case`bottom-end`:return`bottom: 32px; right: 32px;`;case`left-start`:return`left: 32px; top: 32px;`;case`left-end`:return`left: 32px; bottom: 32px;`;case`right-start`:return`right: 32px; top: 32px;`;case`right-end`:return`right: 32px; bottom: 32px;`;default:return x()}}function C(){switch(d){case`top-start`:case`top-end`:case`bottom-start`:case`bottom-end`:case`left-start`:case`left-end`:case`right-start`:case`right-end`:return{txp:0,typ:0};case`left`:return{txp:0,typ:-50};case`right`:return{txp:0,typ:-50};case`top`:return{txp:-50,typ:0};case`bottom`:return{txp:-50,typ:0};default:return{txp:-50,typ:-50}}}function w(e,t){if(e.button!==0||(g=b(t),!g||!g.contains(e.target)))return;p=t,p.style.transform=`none`,e.preventDefault(),g.style.cursor=`grabbing`;let n=t.getBoundingClientRect(),{txp:r,typ:i}=C();h={x:e.clientX-(n.left+r/100*n.width),y:e.clientY-(n.top+i/100*n.height)},m=!0,document.addEventListener(`mousemove`,T),document.addEventListener(`mouseup`,E)}function T(e){if(!m||!g||!p)return;let t=p.getBoundingClientRect(),{txp:n,typ:r}=C(),i=e.clientX-h.x-n/100*t.width,a=e.clientY-h.y-r/100*t.height;p.style.left=`${i}px`,p.style.top=`${a}px`}function E(){m=!1,g=null,p=null,document.removeEventListener(`mousemove`,T),document.removeEventListener(`mouseup`,E)}function D(){let e=_?`rgba(0,0,0,0.5)`:`transparent`;return`
|
1212
1212
|
${y}::-webkit-backdrop,
|
1213
1213
|
${y}::backdrop {
|
1214
1214
|
background: ${e};
|
@@ -1216,12 +1216,12 @@ const e=require(`./core-BoB7sDMv.js`),t=e.__toESM(require(`lit`)),n=e.__toESM(re
|
|
1216
1216
|
}
|
1217
1217
|
`}function k(r){let i=null,d=null;return e.LycoComponent(`Dialog`,t.html`
|
1218
1218
|
<div
|
1219
|
-
${(0,n.ref)(e=>{if(e){if(i=e,d){let e=new
|
1219
|
+
${(0,n.ref)(e=>{if(e){if(i=e,d){let e=new $(i,d);f.value=e,l.bind(i),a?e.showModal():e.close()}}else l.unbindAll()})}
|
1220
1220
|
@click=${e=>{e.target===e.currentTarget&&o?.()}}
|
1221
1221
|
style=${me(a)}
|
1222
1222
|
>
|
1223
1223
|
<div
|
1224
|
-
${(0,n.ref)(e=>{if(e&&(d=e,i)){let e=new
|
1224
|
+
${(0,n.ref)(e=>{if(e&&(d=e,i)){let e=new $(i,d);f.value=e}})}
|
1225
1225
|
class="${y} ${s}"
|
1226
1226
|
style="
|
1227
1227
|
padding: 0;
|
@@ -1262,7 +1262,7 @@ const e=require(`./core-BoB7sDMv.js`),t=e.__toESM(require(`lit`)),n=e.__toESM(re
|
|
1262
1262
|
<style>
|
1263
1263
|
${D()}
|
1264
1264
|
</style>
|
1265
|
-
`)}return e.renderFnOrArrayOrCurry(i,A)}function
|
1265
|
+
`)}return e.renderFnOrArrayOrCurry(i,A)}function ge(r,i){let a=r?.className??``,o=r?.style??``,s=e.createEventBinder(r?.on??{}),c=r=>t.html`
|
1266
1266
|
<div
|
1267
1267
|
${(0,n.ref)(e=>{e?s.bind(e):s.unbindAll()})}
|
1268
1268
|
class="lyco-dialog-actions ${a}"
|
@@ -1276,7 +1276,7 @@ const e=require(`./core-BoB7sDMv.js`),t=e.__toESM(require(`lit`)),n=e.__toESM(re
|
|
1276
1276
|
>
|
1277
1277
|
${e.renderFnOrArray(r)}
|
1278
1278
|
</div>
|
1279
|
-
`;return e.renderFnOrArrayOrCurry(i,c)}function
|
1279
|
+
`;return e.renderFnOrArrayOrCurry(i,c)}function _e(r,i){let a=r?.variant??`text`,o=r?.color??`default`,s=r?.className??``,c=r?.style??``,l=e.createEventBinder({click:r?.onClick?e=>{var t;e.preventDefault(),(t=r.onClick)?.call(r,e)}:void 0,...r?.on}),u=r=>t.html`
|
1280
1280
|
<button
|
1281
1281
|
${(0,n.ref)(e=>{e?l.bind(e):l.unbindAll()})}
|
1282
1282
|
class="lyco-dialog-button ${a} ${o} ${s}"
|
@@ -1294,7 +1294,7 @@ const e=require(`./core-BoB7sDMv.js`),t=e.__toESM(require(`lit`)),n=e.__toESM(re
|
|
1294
1294
|
>
|
1295
1295
|
${e.renderFn(r)}
|
1296
1296
|
</button>
|
1297
|
-
`;return e.renderFnOrCurry(i,u)}function
|
1297
|
+
`;return e.renderFnOrCurry(i,u)}function ve(n,r){let i=n?.className??``,a=n?.style??``,o=e.createEventBinder(n?.on??{}),s=n=>t.html`
|
1298
1298
|
<div
|
1299
1299
|
class="lyco-dialog-content ${i}"
|
1300
1300
|
style="
|
@@ -1308,7 +1308,7 @@ const e=require(`./core-BoB7sDMv.js`),t=e.__toESM(require(`lit`)),n=e.__toESM(re
|
|
1308
1308
|
>
|
1309
1309
|
${e.renderFnOrArray(n)}
|
1310
1310
|
</div>
|
1311
|
-
`;return e.renderFnOrArrayOrCurry(r,s)}function
|
1311
|
+
`;return e.renderFnOrArrayOrCurry(r,s)}function ye(r,i){let a=r?.className??``,o=r?.style??``,s=e.createEventBinder(r?.on??{}),c=r?.proxyRef??{value:null},l=r=>t.html`
|
1312
1312
|
<div
|
1313
1313
|
${(0,n.ref)(e=>{e?(c.value=e,s.bind(e)):s.unbindAll()})}
|
1314
1314
|
class="lyco-dialog-title ${a}"
|
@@ -1323,5 +1323,5 @@ const e=require(`./core-BoB7sDMv.js`),t=e.__toESM(require(`lit`)),n=e.__toESM(re
|
|
1323
1323
|
>
|
1324
1324
|
${e.renderFn(r)}
|
1325
1325
|
</div>
|
1326
|
-
`;return e.renderFnOrCurry(i,l)}function
|
1326
|
+
`;return e.renderFnOrCurry(i,l)}function be(t){return e.renderFnOrArray(t)}function xe(t,n){let r=`__LYCO_ONCE_`+e.getComponentCount(`$Once`);if(t[r])return t[r];{let i=e.LycoComponent(`$Once`,n());return t[r]=i,t[r]}}exports.$Html=be,exports.$Once=xe,exports.AbsoluteBox=A,exports.AcrylicBar=j,exports.AspectRatio=M,exports.AutoFitGrid=N,exports.AvatarStack=P,exports.Badge=F,exports.Canvas=I,exports.Card=L,exports.Center=R,exports.Column=m,exports.ColumnSplit=C,exports.Combobox=z,exports.Container=B,exports.Dialog=he,exports.DialogActions=ge,exports.DialogButton=_e,exports.DialogContent=ve,exports.DialogPlacement=de,exports.DialogTitle=ye,exports.Divider=V,exports.Flex=h,exports.FlowItem=g,exports.FooterLayout=H,exports.ForEach=ee,exports.Grid=_,exports.GridBreakpoint=U,exports.GridCol=v,exports.GridItem=y,exports.GridRow=b,exports.HeroSection=W,exports.Hidden=G,exports.LazyForEach=K,exports.LightboxContainer=p,exports.List=te,exports.ListGroup=J,exports.ListItem=q,exports.Overlay=ne,exports.PositionContainer=Y,exports.Progress=re,exports.Row=x,exports.RowSplit=w,exports.ScrollBar=T,exports.SideBarContainer=E,exports.SizedBox=ie,exports.SkeletonLoader=ae,exports.Spacer=oe,exports.Spinner=se,exports.Sticky=X,exports.Swiper=D,exports.SwitchInput=k,exports.Table=Z,exports.Virtualizer=f,exports.VirtualizerController=c,exports.WaterFlow=S,exports.WithTooltip=ce,exports.Wrap=le,exports.ZStack=ue;
|
1327
1327
|
//# sourceMappingURL=index.cjs.js.map
|