@shival99/z-ui 1.3.47 → 1.3.49

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,10 +1,10 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Pipe, inject, viewChild, input, computed, output, signal, ViewEncapsulation, ChangeDetectionStrategy, Component } from '@angular/core';
3
+ import { TranslatePipe } from '@ngx-translate/core';
3
4
  import { ZIconComponent } from '@shival99/z-ui/components/z-icon';
4
5
  import { ZTooltipDirective } from '@shival99/z-ui/components/z-tooltip';
5
6
  import { ZTranslateService } from '@shival99/z-ui/services';
6
7
  import { zMergeClasses, zTransform } from '@shival99/z-ui/utils';
7
- import { TranslatePipe } from '@ngx-translate/core';
8
8
  import { cva } from 'class-variance-authority';
9
9
 
10
10
  const zTagsContainerVariants = cva(['flex flex-wrap items-center'], {
@@ -1 +1 @@
1
- {"version":3,"file":"shival99-z-ui-components-z-tags.mjs","sources":["../../../../libs/core-ui/components/z-tags/z-tags.variants.ts","../../../../libs/core-ui/components/z-tags/pipes/z-tag-classes.pipe.ts","../../../../libs/core-ui/components/z-tags/pipes/z-tag-closable.pipe.ts","../../../../libs/core-ui/components/z-tags/pipes/z-tag-style.pipe.ts","../../../../libs/core-ui/components/z-tags/z-tags.component.ts","../../../../libs/core-ui/components/z-tags/z-tags.component.html","../../../../libs/core-ui/components/z-tags/shival99-z-ui-components-z-tags.ts"],"sourcesContent":["import { cva, type VariantProps } from 'class-variance-authority';\n\nexport const zTagsContainerVariants = cva(['flex flex-wrap items-center'], {\n variants: {\n zSize: {\n sm: 'gap-1',\n default: 'gap-1.5',\n lg: 'gap-2',\n },\n },\n defaultVariants: {\n zSize: 'default',\n },\n});\n\nexport const zTagVariants = cva(\n ['inline-flex items-center justify-center', 'rounded border font-medium', 'transition-colors duration-200'],\n {\n variants: {\n zSize: {\n sm: 'px-1.5 py-0.5 text-xs gap-1',\n default: 'px-2 py-1 text-xs gap-1.5',\n lg: 'px-2.5 py-1.5 text-sm gap-2',\n },\n zColor: {\n default: 'bg-muted text-muted-foreground border-border hover:bg-muted/80',\n primary: 'bg-primary/10 text-primary border-primary/20 hover:bg-primary/20',\n success: 'bg-green-500/10 text-green-600 border-green-500/20 hover:bg-green-500/20 dark:text-green-400',\n warning: 'bg-yellow-500/10 text-yellow-600 border-yellow-500/20 hover:bg-yellow-500/20 dark:text-yellow-400',\n danger: 'bg-red-500/10 text-red-600 border-red-500/20 hover:bg-red-500/20 dark:text-red-400',\n info: 'bg-blue-500/10 text-blue-600 border-blue-500/20 hover:bg-blue-500/20 dark:text-blue-400',\n },\n zClosable: {\n true: '',\n false: '',\n },\n zDisabled: {\n true: 'opacity-50 cursor-not-allowed pointer-events-none',\n false: '',\n },\n },\n defaultVariants: {\n zSize: 'default',\n zColor: 'default',\n zClosable: false,\n zDisabled: false,\n },\n }\n);\n\nexport const zTagCloseButtonVariants = cva(\n [\n 'inline-flex items-center justify-center',\n 'rounded-full cursor-pointer',\n 'transition-colors duration-200',\n 'hover:bg-black/10 dark:hover:bg-white/10',\n 'outline-none focus:outline-none',\n ],\n {\n variants: {\n zSize: {\n sm: 'size-3',\n default: 'size-3.5',\n lg: 'size-4',\n },\n },\n defaultVariants: {\n zSize: 'default',\n },\n }\n);\n\nexport type ZTagsContainerVariants = VariantProps<typeof zTagsContainerVariants>;\nexport type ZTagVariants = VariantProps<typeof zTagVariants>;\nexport type ZTagCloseButtonVariants = VariantProps<typeof zTagCloseButtonVariants>;\n","import { Pipe, type PipeTransform } from '@angular/core';\nimport { zMergeClasses } from '@shival99/z-ui/utils';\nimport type { ZTagConfig, ZTagItem } from '../z-tags.types';\nimport { zTagVariants } from '../z-tags.variants';\n\n@Pipe({\n name: 'zTagClasses',\n standalone: true,\n pure: true,\n})\nexport class ZTagClassesPipe implements PipeTransform {\n public transform(tag: ZTagItem, config: ZTagConfig): string {\n const isClosable = this._isClosable(tag, config);\n const isDisabled = tag.disabled || config.disabled;\n\n if (config.randomColor && !tag.color) {\n const baseClasses = zTagVariants({\n zSize: config.size,\n zColor: 'default',\n zClosable: isClosable,\n zDisabled: isDisabled,\n });\n\n const randomClasses = baseClasses\n .replace('bg-muted', '')\n .replace('text-muted-foreground', '')\n .replace('border-border', '')\n .replace('hover:bg-muted/80', 'hover:opacity-80');\n\n return zMergeClasses(randomClasses, config.tagClass);\n }\n\n return zMergeClasses(\n zTagVariants({\n zSize: config.size,\n zColor: tag.color || config.color,\n zClosable: isClosable,\n zDisabled: isDisabled,\n }),\n config.tagClass\n );\n }\n\n private _isClosable(tag: ZTagItem, config: ZTagConfig): boolean {\n if (tag.disabled || config.disabled) {\n return false;\n }\n\n return tag.closable !== undefined ? tag.closable : config.closable;\n }\n}\n","import { Pipe, type PipeTransform } from '@angular/core';\nimport type { ZTagConfig, ZTagItem } from '../z-tags.types';\n\n@Pipe({\n name: 'zTagClosable',\n standalone: true,\n pure: true,\n})\nexport class ZTagClosablePipe implements PipeTransform {\n public transform(tag: ZTagItem, config: ZTagConfig): boolean {\n if (tag.disabled || config.disabled) {\n return false;\n }\n\n return tag.closable !== undefined ? tag.closable : config.closable;\n }\n}\n","import { Pipe, type PipeTransform } from '@angular/core';\nimport type { ZTagConfig, ZTagItem, ZTagRandomColorCache } from '../z-tags.types';\n\n@Pipe({\n name: 'zTagStyle',\n standalone: true,\n pure: true,\n})\nexport class ZTagStylePipe implements PipeTransform {\n public transform(tag: ZTagItem, config: ZTagConfig): Record<string, string> | null {\n if (!config.randomColor || tag.color) {\n return null;\n }\n\n const colors = this._getOrCreateRandomColor(tag.value, config.randomColorCache);\n return {\n backgroundColor: colors.bg,\n color: colors.text,\n borderColor: colors.border,\n '--hover-bg': colors.hoverBg,\n } as Record<string, string>;\n }\n\n private _getOrCreateRandomColor(\n value: string | number,\n cache: Map<string | number, ZTagRandomColorCache>\n ): ZTagRandomColorCache {\n const cached = cache.get(value);\n if (cached) {\n return cached;\n }\n\n const hue = Math.floor(Math.random() * 360);\n const saturation = 70 + Math.floor(Math.random() * 20);\n const lightness = 45 + Math.floor(Math.random() * 10);\n\n const colors: ZTagRandomColorCache = {\n bg: `hsl(${hue}, ${saturation}%, 95%)`,\n text: `hsl(${hue}, ${saturation}%, ${lightness}%)`,\n border: `hsl(${hue}, ${saturation}%, 85%)`,\n hoverBg: `hsl(${hue}, ${saturation}%, 90%)`,\n };\n\n cache.set(value, colors);\n return colors;\n }\n}\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n computed,\n ElementRef,\n inject,\n input,\n output,\n signal,\n viewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { ZIconComponent } from '@shival99/z-ui/components/z-icon';\nimport { ZTooltipDirective } from '@shival99/z-ui/components/z-tooltip';\nimport { ZTranslateService } from '@shival99/z-ui/services';\nimport { zMergeClasses, zTransform } from '@shival99/z-ui/utils';\nimport { TranslatePipe } from '@ngx-translate/core';\nimport type { ClassValue } from 'clsx';\nimport { ZTagClassesPipe, ZTagClosablePipe, ZTagStylePipe } from './pipes';\nimport type { ZTagColor, ZTagConfig, ZTagItem, ZTagRandomColorCache, ZTagSize } from './z-tags.types';\nimport { zTagCloseButtonVariants, zTagsContainerVariants } from './z-tags.variants';\n\n@Component({\n selector: 'z-tags',\n imports: [ZIconComponent, ZTooltipDirective, ZTagClassesPipe, ZTagStylePipe, ZTagClosablePipe, TranslatePipe],\n standalone: true,\n templateUrl: './z-tags.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class]': 'hostClasses()',\n },\n})\nexport class ZTagsComponent implements AfterViewInit {\n private readonly _zTranslate = inject(ZTranslateService);\n\n private readonly _addInput = viewChild<ElementRef<HTMLInputElement>>('addInput');\n\n public readonly class = input<ClassValue>('');\n public readonly zTags = input<ZTagItem[]>([]);\n public readonly zSize = input<ZTagSize>('default');\n public readonly zColor = input<ZTagColor>('default');\n public readonly zClosable = input(false, { transform: zTransform });\n public readonly zDisabled = input(false, { transform: zTransform });\n public readonly zAddable = input(false, { transform: zTransform });\n public readonly zAddText = input<string>('');\n public readonly zAddPlaceholder = input<string>('');\n public readonly zRandomColor = input(false, { transform: zTransform });\n public readonly zTagClass = input<ClassValue>('');\n public readonly zLabelClass = input<ClassValue>('');\n public readonly zMaxWidth = input<string>('');\n\n protected readonly labelClasses = computed(() => {\n const maxWidth = this.zMaxWidth();\n return zMergeClasses(maxWidth ? 'truncate' : '', this.zLabelClass());\n });\n\n protected readonly labelStyle = computed(() => {\n const maxWidth = this.zMaxWidth();\n return maxWidth ? { 'max-width': maxWidth } : null;\n });\n public readonly zTagClose = output<ZTagItem>();\n public readonly zTagAdd = output<string>();\n\n protected readonly isAdding = signal(false);\n private readonly _pendingFocus = signal(false);\n private readonly _randomColorCache = new Map<string | number, ZTagRandomColorCache>();\n\n protected readonly hostClasses = computed(() => zMergeClasses('inline-block', this.class()));\n protected readonly containerClasses = computed(() => zTagsContainerVariants({ zSize: this.zSize() }));\n protected readonly closeButtonClasses = computed(() => zTagCloseButtonVariants({ zSize: this.zSize() }));\n protected readonly closeIconSize = computed(() => {\n const sizeMap: Record<ZTagSize, '10' | '12' | '14'> = {\n sm: '10',\n default: '12',\n lg: '14',\n };\n return sizeMap[this.zSize()];\n });\n\n protected readonly tagConfig = computed<ZTagConfig>(() => ({\n size: this.zSize(),\n color: this.zColor(),\n closable: this.zClosable(),\n disabled: this.zDisabled(),\n randomColor: this.zRandomColor(),\n tagClass: this.zTagClass(),\n randomColorCache: this._randomColorCache,\n }));\n\n protected readonly effectiveAddText = computed(() => {\n this._zTranslate.currentLang();\n return this.zAddText() || this._zTranslate.instant('i18n_z_ui_tags_add');\n });\n\n protected readonly effectiveAddPlaceholder = computed(() => {\n this._zTranslate.currentLang();\n return this.zAddPlaceholder() || this._zTranslate.instant('i18n_z_ui_tags_placeholder');\n });\n\n protected readonly addInputClasses = computed(() => {\n const sizeClasses: Record<ZTagSize, string> = {\n sm: 'px-1.5 py-0.5 text-xs w-16',\n default: 'px-2 py-1 text-xs w-20',\n lg: 'px-2.5 py-1.5 text-sm w-24',\n };\n return zMergeClasses(\n 'rounded-[6px] border border-input bg-white shadow-xs',\n 'dark:bg-input/30 dark:border-input',\n 'outline-none transition-[border-color,box-shadow] duration-200',\n 'focus:border-ring focus:ring-ring/50 focus:ring-[3px]',\n 'text-foreground placeholder:text-muted-foreground',\n sizeClasses[this.zSize()]\n );\n });\n\n protected readonly addButtonClasses = computed(() => {\n const sizeClasses: Record<ZTagSize, string> = {\n sm: 'px-1.5 py-0.5 text-xs gap-1',\n default: 'px-2 py-1 text-xs gap-1.5',\n lg: 'px-2.5 py-1.5 text-sm gap-2',\n };\n return zMergeClasses(\n 'inline-flex items-center justify-center',\n 'rounded border border-dashed border-border',\n 'text-muted-foreground cursor-pointer',\n 'transition-colors duration-200',\n 'hover:border-primary hover:text-primary hover:bg-primary/5',\n sizeClasses[this.zSize()]\n );\n });\n\n public ngAfterViewInit(): void {\n if (this._pendingFocus()) {\n const inputEl = this._addInput();\n if (inputEl) {\n inputEl.nativeElement.focus();\n this._pendingFocus.set(false);\n }\n }\n }\n\n protected onRemoveTag(tag: ZTagItem, event: Event): void {\n event.stopPropagation();\n if (tag.disabled || this.zDisabled()) {\n return;\n }\n this._randomColorCache.delete(tag.value);\n this.zTagClose.emit(tag);\n }\n\n protected onAddClick(): void {\n this.isAdding.set(true);\n this._pendingFocus.set(true);\n setTimeout(() => {\n const inputEl = this._addInput();\n if (inputEl) {\n inputEl.nativeElement.focus();\n }\n });\n }\n\n protected onAddConfirm(event: Event): void {\n const input = event.target as HTMLInputElement;\n const value = input.value.trim();\n if (value) {\n this.zTagAdd.emit(value);\n input.value = '';\n }\n\n this.isAdding.set(false);\n }\n\n protected onAddCancel(): void {\n this.isAdding.set(false);\n }\n\n protected onAddBlur(): void {\n const inputEl = this._addInput();\n const input = inputEl?.nativeElement;\n if (input && input.value.trim()) {\n this.zTagAdd.emit(input.value.trim());\n }\n this.isAdding.set(false);\n }\n}\n","<div [class]=\"containerClasses()\">\n @for (tag of zTags(); track tag.value) {\n <span\n [class]=\"tag | zTagClasses: tagConfig()\"\n [style]=\"tag | zTagStyle: tagConfig()\"\n z-tooltip\n [zContent]=\"tag.label | translate\">\n <span [class]=\"labelClasses()\" [style]=\"labelStyle()\">{{ tag.label | translate }}</span>\n @if (tag | zTagClosable: tagConfig()) {\n <button\n type=\"button\"\n [class]=\"closeButtonClasses()\"\n [disabled]=\"tag.disabled || zDisabled()\"\n (click)=\"onRemoveTag(tag, $event)\"\n [attr.aria-label]=\"'Remove ' + (tag.label | translate)\">\n <z-icon zType=\"lucideX\" [zSize]=\"closeIconSize()\" class=\"text-current\" />\n </button>\n }\n </span>\n }\n\n @if (zAddable() && !zDisabled()) {\n @if (isAdding()) {\n <input\n #addInput\n type=\"text\"\n [class]=\"addInputClasses()\"\n [placeholder]=\"effectiveAddPlaceholder()\"\n (keydown.enter)=\"onAddConfirm($event)\"\n (keydown.escape)=\"onAddCancel()\"\n (blur)=\"onAddBlur()\" />\n } @else {\n <button type=\"button\" [class]=\"addButtonClasses()\" (click)=\"onAddClick()\">\n <z-icon zType=\"lucidePlus\" [zSize]=\"closeIconSize()\" class=\"text-current\" />\n <span>{{ effectiveAddText() }}</span>\n </button>\n }\n }\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;MAEa,sBAAsB,GAAG,GAAG,CAAC,CAAC,6BAA6B,CAAC,EAAE;AACzE,IAAA,QAAQ,EAAE;AACR,QAAA,KAAK,EAAE;AACL,YAAA,EAAE,EAAE,OAAO;AACX,YAAA,OAAO,EAAE,SAAS;AAClB,YAAA,EAAE,EAAE,OAAO;AACZ,SAAA;AACF,KAAA;AACD,IAAA,eAAe,EAAE;AACf,QAAA,KAAK,EAAE,SAAS;AACjB,KAAA;AACF,CAAA;AAEM,MAAM,YAAY,GAAG,GAAG,CAC7B,CAAC,yCAAyC,EAAE,4BAA4B,EAAE,gCAAgC,CAAC,EAC3G;AACE,IAAA,QAAQ,EAAE;AACR,QAAA,KAAK,EAAE;AACL,YAAA,EAAE,EAAE,6BAA6B;AACjC,YAAA,OAAO,EAAE,2BAA2B;AACpC,YAAA,EAAE,EAAE,6BAA6B;AAClC,SAAA;AACD,QAAA,MAAM,EAAE;AACN,YAAA,OAAO,EAAE,gEAAgE;AACzE,YAAA,OAAO,EAAE,kEAAkE;AAC3E,YAAA,OAAO,EAAE,8FAA8F;AACvG,YAAA,OAAO,EAAE,mGAAmG;AAC5G,YAAA,MAAM,EAAE,oFAAoF;AAC5F,YAAA,IAAI,EAAE,yFAAyF;AAChG,SAAA;AACD,QAAA,SAAS,EAAE;AACT,YAAA,IAAI,EAAE,EAAE;AACR,YAAA,KAAK,EAAE,EAAE;AACV,SAAA;AACD,QAAA,SAAS,EAAE;AACT,YAAA,IAAI,EAAE,mDAAmD;AACzD,YAAA,KAAK,EAAE,EAAE;AACV,SAAA;AACF,KAAA;AACD,IAAA,eAAe,EAAE;AACf,QAAA,KAAK,EAAE,SAAS;AAChB,QAAA,MAAM,EAAE,SAAS;AACjB,QAAA,SAAS,EAAE,KAAK;AAChB,QAAA,SAAS,EAAE,KAAK;AACjB,KAAA;AACF,CAAA;AAGI,MAAM,uBAAuB,GAAG,GAAG,CACxC;IACE,yCAAyC;IACzC,6BAA6B;IAC7B,gCAAgC;IAChC,0CAA0C;IAC1C,iCAAiC;CAClC,EACD;AACE,IAAA,QAAQ,EAAE;AACR,QAAA,KAAK,EAAE;AACL,YAAA,EAAE,EAAE,QAAQ;AACZ,YAAA,OAAO,EAAE,UAAU;AACnB,YAAA,EAAE,EAAE,QAAQ;AACb,SAAA;AACF,KAAA;AACD,IAAA,eAAe,EAAE;AACf,QAAA,KAAK,EAAE,SAAS;AACjB,KAAA;AACF,CAAA;;MC3DU,eAAe,CAAA;IACnB,SAAS,CAAC,GAAa,EAAE,MAAkB,EAAA;QAChD,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC;QAChD,MAAM,UAAU,GAAG,GAAG,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ;QAElD,IAAI,MAAM,CAAC,WAAW,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE;YACpC,MAAM,WAAW,GAAG,YAAY,CAAC;gBAC/B,KAAK,EAAE,MAAM,CAAC,IAAI;AAClB,gBAAA,MAAM,EAAE,SAAS;AACjB,gBAAA,SAAS,EAAE,UAAU;AACrB,gBAAA,SAAS,EAAE,UAAU;AACtB,aAAA,CAAC;YAEF,MAAM,aAAa,GAAG;AACnB,iBAAA,OAAO,CAAC,UAAU,EAAE,EAAE;AACtB,iBAAA,OAAO,CAAC,uBAAuB,EAAE,EAAE;AACnC,iBAAA,OAAO,CAAC,eAAe,EAAE,EAAE;AAC3B,iBAAA,OAAO,CAAC,mBAAmB,EAAE,kBAAkB,CAAC;YAEnD,OAAO,aAAa,CAAC,aAAa,EAAE,MAAM,CAAC,QAAQ,CAAC;QACtD;QAEA,OAAO,aAAa,CAClB,YAAY,CAAC;YACX,KAAK,EAAE,MAAM,CAAC,IAAI;AAClB,YAAA,MAAM,EAAE,GAAG,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK;AACjC,YAAA,SAAS,EAAE,UAAU;AACrB,YAAA,SAAS,EAAE,UAAU;AACtB,SAAA,CAAC,EACF,MAAM,CAAC,QAAQ,CAChB;IACH;IAEQ,WAAW,CAAC,GAAa,EAAE,MAAkB,EAAA;QACnD,IAAI,GAAG,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,EAAE;AACnC,YAAA,OAAO,KAAK;QACd;AAEA,QAAA,OAAO,GAAG,CAAC,QAAQ,KAAK,SAAS,GAAG,GAAG,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ;IACpE;uGAvCW,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA;qGAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,aAAA,EAAA,CAAA;;2FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAL3B,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,IAAI,EAAE,aAAa;AACnB,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,IAAI,EAAE,IAAI;AACX,iBAAA;;;MCDY,gBAAgB,CAAA;IACpB,SAAS,CAAC,GAAa,EAAE,MAAkB,EAAA;QAChD,IAAI,GAAG,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,EAAE;AACnC,YAAA,OAAO,KAAK;QACd;AAEA,QAAA,OAAO,GAAG,CAAC,QAAQ,KAAK,SAAS,GAAG,GAAG,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ;IACpE;uGAPW,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA;qGAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,cAAA,EAAA,CAAA;;2FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAL5B,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,IAAI,EAAE,cAAc;AACpB,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,IAAI,EAAE,IAAI;AACX,iBAAA;;;MCCY,aAAa,CAAA;IACjB,SAAS,CAAC,GAAa,EAAE,MAAkB,EAAA;QAChD,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,GAAG,CAAC,KAAK,EAAE;AACpC,YAAA,OAAO,IAAI;QACb;AAEA,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,gBAAgB,CAAC;QAC/E,OAAO;YACL,eAAe,EAAE,MAAM,CAAC,EAAE;YAC1B,KAAK,EAAE,MAAM,CAAC,IAAI;YAClB,WAAW,EAAE,MAAM,CAAC,MAAM;YAC1B,YAAY,EAAE,MAAM,CAAC,OAAO;SACH;IAC7B;IAEQ,uBAAuB,CAC7B,KAAsB,EACtB,KAAiD,EAAA;QAEjD,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;QAC/B,IAAI,MAAM,EAAE;AACV,YAAA,OAAO,MAAM;QACf;AAEA,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC;AAC3C,QAAA,MAAM,UAAU,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC;AACtD,QAAA,MAAM,SAAS,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC;AAErD,QAAA,MAAM,MAAM,GAAyB;AACnC,YAAA,EAAE,EAAE,CAAA,IAAA,EAAO,GAAG,CAAA,EAAA,EAAK,UAAU,CAAA,OAAA,CAAS;AACtC,YAAA,IAAI,EAAE,CAAA,IAAA,EAAO,GAAG,KAAK,UAAU,CAAA,GAAA,EAAM,SAAS,CAAA,EAAA,CAAI;AAClD,YAAA,MAAM,EAAE,CAAA,IAAA,EAAO,GAAG,CAAA,EAAA,EAAK,UAAU,CAAA,OAAA,CAAS;AAC1C,YAAA,OAAO,EAAE,CAAA,IAAA,EAAO,GAAG,CAAA,EAAA,EAAK,UAAU,CAAA,OAAA,CAAS;SAC5C;AAED,QAAA,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC;AACxB,QAAA,OAAO,MAAM;IACf;uGArCW,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA;qGAAb,aAAa,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA;;2FAAb,aAAa,EAAA,UAAA,EAAA,CAAA;kBALzB,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,IAAI,EAAE,WAAW;AACjB,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,IAAI,EAAE,IAAI;AACX,iBAAA;;;MC2BY,cAAc,CAAA;AACR,IAAA,WAAW,GAAG,MAAM,CAAC,iBAAiB,CAAC;AAEvC,IAAA,SAAS,GAAG,SAAS,CAA+B,UAAU,qDAAC;AAEhE,IAAA,KAAK,GAAG,KAAK,CAAa,EAAE,iDAAC;AAC7B,IAAA,KAAK,GAAG,KAAK,CAAa,EAAE,iDAAC;AAC7B,IAAA,KAAK,GAAG,KAAK,CAAW,SAAS,iDAAC;AAClC,IAAA,MAAM,GAAG,KAAK,CAAY,SAAS,kDAAC;IACpC,SAAS,GAAG,KAAK,CAAC,KAAK,sDAAI,SAAS,EAAE,UAAU,EAAA,CAAG;IACnD,SAAS,GAAG,KAAK,CAAC,KAAK,sDAAI,SAAS,EAAE,UAAU,EAAA,CAAG;IACnD,QAAQ,GAAG,KAAK,CAAC,KAAK,qDAAI,SAAS,EAAE,UAAU,EAAA,CAAG;AAClD,IAAA,QAAQ,GAAG,KAAK,CAAS,EAAE,oDAAC;AAC5B,IAAA,eAAe,GAAG,KAAK,CAAS,EAAE,2DAAC;IACnC,YAAY,GAAG,KAAK,CAAC,KAAK,yDAAI,SAAS,EAAE,UAAU,EAAA,CAAG;AACtD,IAAA,SAAS,GAAG,KAAK,CAAa,EAAE,qDAAC;AACjC,IAAA,WAAW,GAAG,KAAK,CAAa,EAAE,uDAAC;AACnC,IAAA,SAAS,GAAG,KAAK,CAAS,EAAE,qDAAC;AAE1B,IAAA,YAAY,GAAG,QAAQ,CAAC,MAAK;AAC9C,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE;AACjC,QAAA,OAAO,aAAa,CAAC,QAAQ,GAAG,UAAU,GAAG,EAAE,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;AACtE,IAAA,CAAC,wDAAC;AAEiB,IAAA,UAAU,GAAG,QAAQ,CAAC,MAAK;AAC5C,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE;AACjC,QAAA,OAAO,QAAQ,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,IAAI;AACpD,IAAA,CAAC,sDAAC;IACc,SAAS,GAAG,MAAM,EAAY;IAC9B,OAAO,GAAG,MAAM,EAAU;AAEvB,IAAA,QAAQ,GAAG,MAAM,CAAC,KAAK,oDAAC;AAC1B,IAAA,aAAa,GAAG,MAAM,CAAC,KAAK,yDAAC;AAC7B,IAAA,iBAAiB,GAAG,IAAI,GAAG,EAAyC;AAElE,IAAA,WAAW,GAAG,QAAQ,CAAC,MAAM,aAAa,CAAC,cAAc,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,uDAAC;AACzE,IAAA,gBAAgB,GAAG,QAAQ,CAAC,MAAM,sBAAsB,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,4DAAC;AAClF,IAAA,kBAAkB,GAAG,QAAQ,CAAC,MAAM,uBAAuB,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,8DAAC;AACrF,IAAA,aAAa,GAAG,QAAQ,CAAC,MAAK;AAC/C,QAAA,MAAM,OAAO,GAAyC;AACpD,YAAA,EAAE,EAAE,IAAI;AACR,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,EAAE,EAAE,IAAI;SACT;AACD,QAAA,OAAO,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;AAC9B,IAAA,CAAC,yDAAC;AAEiB,IAAA,SAAS,GAAG,QAAQ,CAAa,OAAO;AACzD,QAAA,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE;AAClB,QAAA,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE;AACpB,QAAA,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE;AAC1B,QAAA,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE;AAC1B,QAAA,WAAW,EAAE,IAAI,CAAC,YAAY,EAAE;AAChC,QAAA,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE;QAC1B,gBAAgB,EAAE,IAAI,CAAC,iBAAiB;AACzC,KAAA,CAAC,qDAAC;AAEgB,IAAA,gBAAgB,GAAG,QAAQ,CAAC,MAAK;AAClD,QAAA,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE;AAC9B,QAAA,OAAO,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,oBAAoB,CAAC;AAC1E,IAAA,CAAC,4DAAC;AAEiB,IAAA,uBAAuB,GAAG,QAAQ,CAAC,MAAK;AACzD,QAAA,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE;AAC9B,QAAA,OAAO,IAAI,CAAC,eAAe,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,4BAA4B,CAAC;AACzF,IAAA,CAAC,mEAAC;AAEiB,IAAA,eAAe,GAAG,QAAQ,CAAC,MAAK;AACjD,QAAA,MAAM,WAAW,GAA6B;AAC5C,YAAA,EAAE,EAAE,4BAA4B;AAChC,YAAA,OAAO,EAAE,wBAAwB;AACjC,YAAA,EAAE,EAAE,4BAA4B;SACjC;QACD,OAAO,aAAa,CAClB,sDAAsD,EACtD,oCAAoC,EACpC,gEAAgE,EAChE,uDAAuD,EACvD,mDAAmD,EACnD,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAC1B;AACH,IAAA,CAAC,2DAAC;AAEiB,IAAA,gBAAgB,GAAG,QAAQ,CAAC,MAAK;AAClD,QAAA,MAAM,WAAW,GAA6B;AAC5C,YAAA,EAAE,EAAE,6BAA6B;AACjC,YAAA,OAAO,EAAE,2BAA2B;AACpC,YAAA,EAAE,EAAE,6BAA6B;SAClC;QACD,OAAO,aAAa,CAClB,yCAAyC,EACzC,4CAA4C,EAC5C,sCAAsC,EACtC,gCAAgC,EAChC,4DAA4D,EAC5D,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAC1B;AACH,IAAA,CAAC,4DAAC;IAEK,eAAe,GAAA;AACpB,QAAA,IAAI,IAAI,CAAC,aAAa,EAAE,EAAE;AACxB,YAAA,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,EAAE;YAChC,IAAI,OAAO,EAAE;AACX,gBAAA,OAAO,CAAC,aAAa,CAAC,KAAK,EAAE;AAC7B,gBAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC;YAC/B;QACF;IACF;IAEU,WAAW,CAAC,GAAa,EAAE,KAAY,EAAA;QAC/C,KAAK,CAAC,eAAe,EAAE;QACvB,IAAI,GAAG,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE,EAAE;YACpC;QACF;QACA,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;AACxC,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC;IAC1B;IAEU,UAAU,GAAA;AAClB,QAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;AACvB,QAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC;QAC5B,UAAU,CAAC,MAAK;AACd,YAAA,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,EAAE;YAChC,IAAI,OAAO,EAAE;AACX,gBAAA,OAAO,CAAC,aAAa,CAAC,KAAK,EAAE;YAC/B;AACF,QAAA,CAAC,CAAC;IACJ;AAEU,IAAA,YAAY,CAAC,KAAY,EAAA;AACjC,QAAA,MAAM,KAAK,GAAG,KAAK,CAAC,MAA0B;QAC9C,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE;QAChC,IAAI,KAAK,EAAE;AACT,YAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;AACxB,YAAA,KAAK,CAAC,KAAK,GAAG,EAAE;QAClB;AAEA,QAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC;IAC1B;IAEU,WAAW,GAAA;AACnB,QAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC;IAC1B;IAEU,SAAS,GAAA;AACjB,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,EAAE;AAChC,QAAA,MAAM,KAAK,GAAG,OAAO,EAAE,aAAa;QACpC,IAAI,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE;AAC/B,YAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QACvC;AACA,QAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC;IAC1B;uGAvJW,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAd,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,cAAc,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,MAAA,EAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,eAAA,EAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,SAAA,EAAA,WAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,eAAA,EAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,WAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,UAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EClC3B,24CAuCA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDdY,cAAc,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,OAAA,EAAA,OAAA,EAAA,cAAA,EAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,iBAAiB,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,WAAA,EAAA,UAAA,EAAA,cAAA,EAAA,cAAA,EAAA,QAAA,EAAA,YAAA,EAAA,YAAA,EAAA,QAAA,EAAA,WAAA,EAAA,SAAA,EAAA,aAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,WAAA,CAAA,EAAA,OAAA,EAAA,CAAA,OAAA,EAAA,OAAA,CAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAE,eAAe,EAAA,IAAA,EAAA,aAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAE,aAAa,EAAA,IAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAE,gBAAgB,gDAAE,aAAa,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FASjG,cAAc,EAAA,UAAA,EAAA,CAAA;kBAX1B,SAAS;+BACE,QAAQ,EAAA,OAAA,EACT,CAAC,cAAc,EAAE,iBAAiB,EAAE,eAAe,EAAE,aAAa,EAAE,gBAAgB,EAAE,aAAa,CAAC,EAAA,UAAA,EACjG,IAAI,EAAA,eAAA,EAEC,uBAAuB,CAAC,MAAM,EAAA,aAAA,EAChC,iBAAiB,CAAC,IAAI,EAAA,IAAA,EAC/B;AACJ,wBAAA,SAAS,EAAE,eAAe;AAC3B,qBAAA,EAAA,QAAA,EAAA,24CAAA,EAAA;uEAKoE,UAAU,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,MAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,QAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,SAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,WAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,SAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,WAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,cAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,SAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,WAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,WAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,aAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,SAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,WAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,SAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,WAAA,CAAA,EAAA,CAAA,EAAA,OAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA;;AErCjF;;AAEG;;;;"}
1
+ {"version":3,"file":"shival99-z-ui-components-z-tags.mjs","sources":["../../../../libs/core-ui/components/z-tags/z-tags.variants.ts","../../../../libs/core-ui/components/z-tags/pipes/z-tag-classes.pipe.ts","../../../../libs/core-ui/components/z-tags/pipes/z-tag-closable.pipe.ts","../../../../libs/core-ui/components/z-tags/pipes/z-tag-style.pipe.ts","../../../../libs/core-ui/components/z-tags/z-tags.component.ts","../../../../libs/core-ui/components/z-tags/z-tags.component.html","../../../../libs/core-ui/components/z-tags/shival99-z-ui-components-z-tags.ts"],"sourcesContent":["import { cva, type VariantProps } from 'class-variance-authority';\n\nexport const zTagsContainerVariants = cva(['flex flex-wrap items-center'], {\n variants: {\n zSize: {\n sm: 'gap-1',\n default: 'gap-1.5',\n lg: 'gap-2',\n },\n },\n defaultVariants: {\n zSize: 'default',\n },\n});\n\nexport const zTagVariants = cva(\n ['inline-flex items-center justify-center', 'rounded border font-medium', 'transition-colors duration-200'],\n {\n variants: {\n zSize: {\n sm: 'px-1.5 py-0.5 text-xs gap-1',\n default: 'px-2 py-1 text-xs gap-1.5',\n lg: 'px-2.5 py-1.5 text-sm gap-2',\n },\n zColor: {\n default: 'bg-muted text-muted-foreground border-border hover:bg-muted/80',\n primary: 'bg-primary/10 text-primary border-primary/20 hover:bg-primary/20',\n success: 'bg-green-500/10 text-green-600 border-green-500/20 hover:bg-green-500/20 dark:text-green-400',\n warning: 'bg-yellow-500/10 text-yellow-600 border-yellow-500/20 hover:bg-yellow-500/20 dark:text-yellow-400',\n danger: 'bg-red-500/10 text-red-600 border-red-500/20 hover:bg-red-500/20 dark:text-red-400',\n info: 'bg-blue-500/10 text-blue-600 border-blue-500/20 hover:bg-blue-500/20 dark:text-blue-400',\n },\n zClosable: {\n true: '',\n false: '',\n },\n zDisabled: {\n true: 'opacity-50 cursor-not-allowed pointer-events-none',\n false: '',\n },\n },\n defaultVariants: {\n zSize: 'default',\n zColor: 'default',\n zClosable: false,\n zDisabled: false,\n },\n }\n);\n\nexport const zTagCloseButtonVariants = cva(\n [\n 'inline-flex items-center justify-center',\n 'rounded-full cursor-pointer',\n 'transition-colors duration-200',\n 'hover:bg-black/10 dark:hover:bg-white/10',\n 'outline-none focus:outline-none',\n ],\n {\n variants: {\n zSize: {\n sm: 'size-3',\n default: 'size-3.5',\n lg: 'size-4',\n },\n },\n defaultVariants: {\n zSize: 'default',\n },\n }\n);\n\nexport type ZTagsContainerVariants = VariantProps<typeof zTagsContainerVariants>;\nexport type ZTagVariants = VariantProps<typeof zTagVariants>;\nexport type ZTagCloseButtonVariants = VariantProps<typeof zTagCloseButtonVariants>;\n","import { Pipe, type PipeTransform } from '@angular/core';\nimport { zMergeClasses } from '@shival99/z-ui/utils';\nimport type { ZTagConfig, ZTagItem } from '../z-tags.types';\nimport { zTagVariants } from '../z-tags.variants';\n\n@Pipe({\n name: 'zTagClasses',\n standalone: true,\n pure: true,\n})\nexport class ZTagClassesPipe implements PipeTransform {\n public transform(tag: ZTagItem, config: ZTagConfig): string {\n const isClosable = this._isClosable(tag, config);\n const isDisabled = tag.disabled || config.disabled;\n\n if (config.randomColor && !tag.color) {\n const baseClasses = zTagVariants({\n zSize: config.size,\n zColor: 'default',\n zClosable: isClosable,\n zDisabled: isDisabled,\n });\n\n const randomClasses = baseClasses\n .replace('bg-muted', '')\n .replace('text-muted-foreground', '')\n .replace('border-border', '')\n .replace('hover:bg-muted/80', 'hover:opacity-80');\n\n return zMergeClasses(randomClasses, config.tagClass);\n }\n\n return zMergeClasses(\n zTagVariants({\n zSize: config.size,\n zColor: tag.color || config.color,\n zClosable: isClosable,\n zDisabled: isDisabled,\n }),\n config.tagClass\n );\n }\n\n private _isClosable(tag: ZTagItem, config: ZTagConfig): boolean {\n if (tag.disabled || config.disabled) {\n return false;\n }\n\n return tag.closable !== undefined ? tag.closable : config.closable;\n }\n}\n","import { Pipe, type PipeTransform } from '@angular/core';\nimport type { ZTagConfig, ZTagItem } from '../z-tags.types';\n\n@Pipe({\n name: 'zTagClosable',\n standalone: true,\n pure: true,\n})\nexport class ZTagClosablePipe implements PipeTransform {\n public transform(tag: ZTagItem, config: ZTagConfig): boolean {\n if (tag.disabled || config.disabled) {\n return false;\n }\n\n return tag.closable !== undefined ? tag.closable : config.closable;\n }\n}\n","import { Pipe, type PipeTransform } from '@angular/core';\nimport type { ZTagConfig, ZTagItem, ZTagRandomColorCache } from '../z-tags.types';\n\n@Pipe({\n name: 'zTagStyle',\n standalone: true,\n pure: true,\n})\nexport class ZTagStylePipe implements PipeTransform {\n public transform(tag: ZTagItem, config: ZTagConfig): Record<string, string> | null {\n if (!config.randomColor || tag.color) {\n return null;\n }\n\n const colors = this._getOrCreateRandomColor(tag.value, config.randomColorCache);\n return {\n backgroundColor: colors.bg,\n color: colors.text,\n borderColor: colors.border,\n '--hover-bg': colors.hoverBg,\n } as Record<string, string>;\n }\n\n private _getOrCreateRandomColor(\n value: string | number,\n cache: Map<string | number, ZTagRandomColorCache>\n ): ZTagRandomColorCache {\n const cached = cache.get(value);\n if (cached) {\n return cached;\n }\n\n const hue = Math.floor(Math.random() * 360);\n const saturation = 70 + Math.floor(Math.random() * 20);\n const lightness = 45 + Math.floor(Math.random() * 10);\n\n const colors: ZTagRandomColorCache = {\n bg: `hsl(${hue}, ${saturation}%, 95%)`,\n text: `hsl(${hue}, ${saturation}%, ${lightness}%)`,\n border: `hsl(${hue}, ${saturation}%, 85%)`,\n hoverBg: `hsl(${hue}, ${saturation}%, 90%)`,\n };\n\n cache.set(value, colors);\n return colors;\n }\n}\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n computed,\n ElementRef,\n inject,\n input,\n output,\n signal,\n viewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { TranslatePipe } from '@ngx-translate/core';\nimport { ZIconComponent } from '@shival99/z-ui/components/z-icon';\nimport { ZTooltipDirective } from '@shival99/z-ui/components/z-tooltip';\nimport { ZTranslateService } from '@shival99/z-ui/services';\nimport { zMergeClasses, zTransform } from '@shival99/z-ui/utils';\nimport type { ClassValue } from 'clsx';\nimport { ZTagClassesPipe, ZTagClosablePipe, ZTagStylePipe } from './pipes';\nimport type { ZTagColor, ZTagConfig, ZTagItem, ZTagRandomColorCache, ZTagSize } from './z-tags.types';\nimport { zTagCloseButtonVariants, zTagsContainerVariants } from './z-tags.variants';\n\n@Component({\n selector: 'z-tags',\n imports: [ZIconComponent, ZTooltipDirective, ZTagClassesPipe, ZTagStylePipe, ZTagClosablePipe, TranslatePipe],\n standalone: true,\n templateUrl: './z-tags.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class]': 'hostClasses()',\n },\n})\nexport class ZTagsComponent implements AfterViewInit {\n private readonly _zTranslate = inject(ZTranslateService);\n\n private readonly _addInput = viewChild<ElementRef<HTMLInputElement>>('addInput');\n\n public readonly class = input<ClassValue>('');\n public readonly zTags = input<ZTagItem[]>([]);\n public readonly zSize = input<ZTagSize>('default');\n public readonly zColor = input<ZTagColor>('default');\n public readonly zClosable = input(false, { transform: zTransform });\n public readonly zDisabled = input(false, { transform: zTransform });\n public readonly zAddable = input(false, { transform: zTransform });\n public readonly zAddText = input<string>('');\n public readonly zAddPlaceholder = input<string>('');\n public readonly zRandomColor = input(false, { transform: zTransform });\n public readonly zTagClass = input<ClassValue>('');\n public readonly zLabelClass = input<ClassValue>('');\n public readonly zMaxWidth = input<string>('');\n\n protected readonly labelClasses = computed(() => {\n const maxWidth = this.zMaxWidth();\n return zMergeClasses(maxWidth ? 'truncate' : '', this.zLabelClass());\n });\n\n protected readonly labelStyle = computed(() => {\n const maxWidth = this.zMaxWidth();\n return maxWidth ? { 'max-width': maxWidth } : null;\n });\n\n public readonly zTagClose = output<ZTagItem>();\n public readonly zTagAdd = output<string>();\n\n protected readonly isAdding = signal(false);\n private readonly _pendingFocus = signal(false);\n private readonly _randomColorCache = new Map<string | number, ZTagRandomColorCache>();\n\n protected readonly hostClasses = computed(() => zMergeClasses('inline-block', this.class()));\n protected readonly containerClasses = computed(() => zTagsContainerVariants({ zSize: this.zSize() }));\n protected readonly closeButtonClasses = computed(() => zTagCloseButtonVariants({ zSize: this.zSize() }));\n protected readonly closeIconSize = computed(() => {\n const sizeMap: Record<ZTagSize, '10' | '12' | '14'> = {\n sm: '10',\n default: '12',\n lg: '14',\n };\n return sizeMap[this.zSize()];\n });\n\n protected readonly tagConfig = computed<ZTagConfig>(() => ({\n size: this.zSize(),\n color: this.zColor(),\n closable: this.zClosable(),\n disabled: this.zDisabled(),\n randomColor: this.zRandomColor(),\n tagClass: this.zTagClass(),\n randomColorCache: this._randomColorCache,\n }));\n\n protected readonly effectiveAddText = computed(() => {\n this._zTranslate.currentLang();\n return this.zAddText() || this._zTranslate.instant('i18n_z_ui_tags_add');\n });\n\n protected readonly effectiveAddPlaceholder = computed(() => {\n this._zTranslate.currentLang();\n return this.zAddPlaceholder() || this._zTranslate.instant('i18n_z_ui_tags_placeholder');\n });\n\n protected readonly addInputClasses = computed(() => {\n const sizeClasses: Record<ZTagSize, string> = {\n sm: 'px-1.5 py-0.5 text-xs w-16',\n default: 'px-2 py-1 text-xs w-20',\n lg: 'px-2.5 py-1.5 text-sm w-24',\n };\n return zMergeClasses(\n 'rounded-[6px] border border-input bg-white shadow-xs',\n 'dark:bg-input/30 dark:border-input',\n 'outline-none transition-[border-color,box-shadow] duration-200',\n 'focus:border-ring focus:ring-ring/50 focus:ring-[3px]',\n 'text-foreground placeholder:text-muted-foreground',\n sizeClasses[this.zSize()]\n );\n });\n\n protected readonly addButtonClasses = computed(() => {\n const sizeClasses: Record<ZTagSize, string> = {\n sm: 'px-1.5 py-0.5 text-xs gap-1',\n default: 'px-2 py-1 text-xs gap-1.5',\n lg: 'px-2.5 py-1.5 text-sm gap-2',\n };\n return zMergeClasses(\n 'inline-flex items-center justify-center',\n 'rounded border border-dashed border-border',\n 'text-muted-foreground cursor-pointer',\n 'transition-colors duration-200',\n 'hover:border-primary hover:text-primary hover:bg-primary/5',\n sizeClasses[this.zSize()]\n );\n });\n\n public ngAfterViewInit(): void {\n if (this._pendingFocus()) {\n const inputEl = this._addInput();\n if (inputEl) {\n inputEl.nativeElement.focus();\n this._pendingFocus.set(false);\n }\n }\n }\n\n protected onRemoveTag(tag: ZTagItem, event: Event): void {\n event.stopPropagation();\n if (tag.disabled || this.zDisabled()) {\n return;\n }\n this._randomColorCache.delete(tag.value);\n this.zTagClose.emit(tag);\n }\n\n protected onAddClick(): void {\n this.isAdding.set(true);\n this._pendingFocus.set(true);\n setTimeout(() => {\n const inputEl = this._addInput();\n if (inputEl) {\n inputEl.nativeElement.focus();\n }\n });\n }\n\n protected onAddConfirm(event: Event): void {\n const input = event.target as HTMLInputElement;\n const value = input.value.trim();\n if (value) {\n this.zTagAdd.emit(value);\n input.value = '';\n }\n\n this.isAdding.set(false);\n }\n\n protected onAddCancel(): void {\n this.isAdding.set(false);\n }\n\n protected onAddBlur(): void {\n const inputEl = this._addInput();\n const input = inputEl?.nativeElement;\n if (input && input.value.trim()) {\n this.zTagAdd.emit(input.value.trim());\n }\n this.isAdding.set(false);\n }\n}\n","<div [class]=\"containerClasses()\">\n @for (tag of zTags(); track tag.value) {\n <span\n [class]=\"tag | zTagClasses: tagConfig()\"\n [style]=\"tag | zTagStyle: tagConfig()\"\n z-tooltip\n [zContent]=\"tag.label | translate\">\n <span [class]=\"labelClasses()\" [style]=\"labelStyle()\">{{ tag.label | translate }}</span>\n @if (tag | zTagClosable: tagConfig()) {\n <button\n type=\"button\"\n [class]=\"closeButtonClasses()\"\n [disabled]=\"tag.disabled || zDisabled()\"\n (click)=\"onRemoveTag(tag, $event)\"\n [attr.aria-label]=\"'Remove ' + (tag.label | translate)\">\n <z-icon zType=\"lucideX\" [zSize]=\"closeIconSize()\" class=\"text-current\" />\n </button>\n }\n </span>\n }\n\n @if (zAddable() && !zDisabled()) {\n @if (isAdding()) {\n <input\n #addInput\n type=\"text\"\n [class]=\"addInputClasses()\"\n [placeholder]=\"effectiveAddPlaceholder()\"\n (keydown.enter)=\"onAddConfirm($event)\"\n (keydown.escape)=\"onAddCancel()\"\n (blur)=\"onAddBlur()\" />\n } @else {\n <button type=\"button\" [class]=\"addButtonClasses()\" (click)=\"onAddClick()\">\n <z-icon zType=\"lucidePlus\" [zSize]=\"closeIconSize()\" class=\"text-current\" />\n <span>{{ effectiveAddText() }}</span>\n </button>\n }\n }\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -61,11 +61,17 @@ const Z_UI_EN_TRANSLATIONS = {
61
61
  i18n_z_ui_calendar_this_month: 'This month',
62
62
  i18n_z_ui_calendar_last_month: 'Last month',
63
63
  i18n_z_ui_calendar_last_7_days: 'Last 7 days',
64
+ i18n_z_ui_calendar_last_14_days: 'Last 14 days',
64
65
  i18n_z_ui_calendar_last_30_days: 'Last 30 days',
66
+ i18n_z_ui_calendar_last_1_month: 'Last 1 month',
67
+ i18n_z_ui_calendar_last_2_months: 'Last 2 months',
68
+ i18n_z_ui_calendar_last_3_months: 'Last 3 months',
69
+ i18n_z_ui_calendar_last_6_months: 'Last 6 months',
65
70
  i18n_z_ui_calendar_last_90_days: 'Last 90 days',
66
71
  i18n_z_ui_calendar_this_year: 'This year',
67
72
  i18n_z_ui_calendar_last_year: 'Last year',
68
73
  i18n_z_ui_calendar_this_quarter: 'This quarter',
74
+ i18n_z_ui_calendar_custom: 'Custom',
69
75
  i18n_z_ui_calendar_now: 'Now',
70
76
  i18n_z_ui_calendar_required: 'Please select a date',
71
77
  i18n_z_ui_calendar_start: 'Start',
@@ -241,8 +247,14 @@ const Z_UI_VI_TRANSLATIONS = {
241
247
  i18n_z_ui_calendar_this_month: 'Tháng này',
242
248
  i18n_z_ui_calendar_last_month: 'Tháng trước',
243
249
  i18n_z_ui_calendar_last_7_days: '7 ngày qua',
250
+ i18n_z_ui_calendar_last_14_days: '14 ngày qua',
244
251
  i18n_z_ui_calendar_last_30_days: '30 ngày qua',
252
+ i18n_z_ui_calendar_last_1_month: '1 tháng qua',
253
+ i18n_z_ui_calendar_last_2_months: '2 tháng qua',
254
+ i18n_z_ui_calendar_last_3_months: '3 tháng qua',
255
+ i18n_z_ui_calendar_last_6_months: '6 tháng qua',
245
256
  i18n_z_ui_calendar_last_90_days: '90 ngày qua',
257
+ i18n_z_ui_calendar_custom: 'Tùy chỉnh',
246
258
  i18n_z_ui_calendar_this_year: 'Năm nay',
247
259
  i18n_z_ui_calendar_last_year: 'Năm trước',
248
260
  i18n_z_ui_calendar_this_quarter: 'Quý này',
@@ -1 +1 @@
1
- {"version":3,"file":"shival99-z-ui-i18n.mjs","sources":["../../../../libs/core-ui/i18n/types/i18n.types.ts","../../../../libs/core-ui/i18n/en.ts","../../../../libs/core-ui/i18n/vi.ts","../../../../libs/core-ui/i18n/i18n.ts","../../../../libs/core-ui/i18n/index.ts","../../../../libs/core-ui/i18n/shival99-z-ui-i18n.ts"],"sourcesContent":["/**\n * Z-UI Internationalization Types\n */\n\nexport type ZUILanguage = 'en' | 'vi' | string;\n\nexport interface ZUITranslations {\n [key: string]: string;\n}\n\nexport interface ZUITranslationSet {\n en: ZUITranslations;\n vi: ZUITranslations;\n [lang: string]: ZUITranslations;\n}\n","export const Z_UI_EN_TRANSLATIONS: Record<string, string> = {\n // Table\n i18n_z_ui_table_filter_min: 'Min',\n i18n_z_ui_table_filter_max: 'Max',\n i18n_z_ui_table_filter_all: 'All',\n i18n_z_ui_table_filter_search: 'Search...',\n i18n_z_ui_table_filter_date: 'Select date',\n i18n_z_ui_table_filter_date_range: 'Select date range',\n i18n_z_ui_table_no_data: 'No data available',\n i18n_z_ui_table_no_results: 'No results found',\n i18n_z_ui_table_loading: 'Loading...',\n i18n_z_ui_table_search: 'Search...',\n i18n_z_ui_table_settings: 'Settings',\n i18n_z_ui_table_columns: 'Columns',\n i18n_z_ui_table_show_all: 'Show all',\n i18n_z_ui_table_hide_all: 'Hide all',\n i18n_z_ui_table_move_left: 'Move left',\n i18n_z_ui_table_move_right: 'Move right',\n i18n_z_ui_table_pin_left: 'Pin left',\n i18n_z_ui_table_pin_right: 'Pin right',\n i18n_z_ui_table_pin_top: 'Pin top',\n i18n_z_ui_table_pin_bottom: 'Pin bottom',\n i18n_z_ui_table_unpin: 'Unpin',\n i18n_z_ui_table_sort_asc: 'Sort ascending',\n i18n_z_ui_table_sort_desc: 'Sort descending',\n i18n_z_ui_table_clear_sort: 'Clear sort',\n i18n_z_ui_table_filter: 'Filter',\n i18n_z_ui_table_clear_filter: 'Clear filter',\n i18n_z_ui_table_rows_per_page: 'Rows per page',\n i18n_z_ui_table_total_rows: '{total} total rows',\n i18n_z_ui_table_of: 'of',\n i18n_z_ui_table_selected: 'selected',\n i18n_z_ui_table_expand_all: 'Expand all',\n i18n_z_ui_table_collapse_all: 'Collapse all',\n i18n_z_ui_table_settings_title: 'Table Settings',\n i18n_z_ui_table_display_settings: 'Display Settings',\n i18n_z_ui_table_display_settings_desc: 'Customize table appearance',\n i18n_z_ui_table_horizontal_border: 'Horizontal Border',\n i18n_z_ui_table_vertical_border: 'Vertical Border',\n i18n_z_ui_table_header_footer_shadow: 'Header/Footer Shadow',\n i18n_z_ui_table_column_settings: 'Column Settings',\n i18n_z_ui_table_column_settings_desc: 'Toggle visibility, drag to reorder, and pin columns',\n i18n_z_ui_table_pinned_columns: 'Pinned Columns',\n i18n_z_ui_table_left: 'LEFT',\n i18n_z_ui_table_right: 'RIGHT',\n\n // Calendar\n i18n_z_ui_calendar_today: 'Today',\n i18n_z_ui_calendar_clear: 'Clear',\n i18n_z_ui_calendar_ok: 'OK',\n i18n_z_ui_calendar_cancel: 'Cancel',\n i18n_z_ui_calendar_start_date: 'Start date',\n i18n_z_ui_calendar_end_date: 'End date',\n i18n_z_ui_calendar_select_date: 'Select date',\n i18n_z_ui_calendar_select_time: 'Select time',\n i18n_z_ui_calendar_this_week: 'This week',\n i18n_z_ui_calendar_last_week: 'Last week',\n i18n_z_ui_calendar_this_month: 'This month',\n i18n_z_ui_calendar_last_month: 'Last month',\n i18n_z_ui_calendar_last_7_days: 'Last 7 days',\n i18n_z_ui_calendar_last_30_days: 'Last 30 days',\n i18n_z_ui_calendar_last_90_days: 'Last 90 days',\n i18n_z_ui_calendar_this_year: 'This year',\n i18n_z_ui_calendar_last_year: 'Last year',\n i18n_z_ui_calendar_this_quarter: 'This quarter',\n i18n_z_ui_calendar_now: 'Now',\n i18n_z_ui_calendar_required: 'Please select a date',\n i18n_z_ui_calendar_start: 'Start',\n i18n_z_ui_calendar_end: 'End',\n i18n_z_ui_calendar_time: 'Time',\n\n // Editor\n i18n_z_ui_editor_placeholder: 'Enter content...',\n i18n_z_ui_editor_required: 'This field is required',\n i18n_z_ui_editor_min_length: 'Minimum {min} characters',\n i18n_z_ui_editor_max_length: 'Maximum {max} characters',\n i18n_z_ui_editor_invalid: 'Invalid value',\n\n // Checkbox\n i18n_z_ui_checkbox_check_all: 'Check All',\n\n // Code\n i18n_z_ui_code_copied: 'Code copied!',\n\n // Input\n i18n_z_ui_input_required: 'This field is required',\n i18n_z_ui_input_min_length: 'Minimum {min} characters',\n i18n_z_ui_input_max_length: 'Maximum {max} characters',\n i18n_z_ui_input_email: 'Invalid email format',\n i18n_z_ui_input_pattern: 'Invalid format',\n i18n_z_ui_input_min: 'Minimum value is {min}',\n i18n_z_ui_input_max: 'Maximum value is {max}',\n\n // Select\n i18n_z_ui_select_placeholder: 'Select...',\n i18n_z_ui_select_no_options: 'No options available',\n i18n_z_ui_select_no_results: 'No results found',\n i18n_z_ui_select_loading: 'Loading...',\n i18n_z_ui_select_select_all: 'Select all',\n i18n_z_ui_select_clear_all: 'Clear all',\n i18n_z_ui_select_selected: '{count} selected',\n i18n_z_ui_select_search: 'Search...',\n i18n_z_ui_select_required: 'Please select a value',\n\n // Modal\n i18n_z_ui_modal_close: 'Close',\n i18n_z_ui_modal_confirm: 'Confirm',\n i18n_z_ui_modal_cancel: 'Cancel',\n\n // Drawer\n i18n_z_ui_drawer_close: 'Close',\n\n // Upload\n i18n_z_ui_upload_drag_drop: 'Drag files here',\n i18n_z_ui_upload_drop_here: 'Drop files here',\n i18n_z_ui_upload_or: 'or',\n i18n_z_ui_upload_browse: 'browse',\n i18n_z_ui_upload_uploading: 'Uploading...',\n i18n_z_ui_upload_uploaded: 'Uploaded',\n i18n_z_ui_upload_failed: 'Upload failed',\n i18n_z_ui_upload_remove: 'Remove',\n i18n_z_ui_upload_max_size: 'File size exceeds {size} limit',\n i18n_z_ui_upload_max_files: 'Maximum {count} files allowed',\n i18n_z_ui_upload_invalid_type: 'File type not allowed',\n i18n_z_ui_upload_accepted: 'Accepted',\n i18n_z_ui_upload_required: 'Please select a file',\n\n // Pagination\n i18n_z_ui_pagination_first: 'First',\n i18n_z_ui_pagination_last: 'Last',\n i18n_z_ui_pagination_next: 'Next',\n i18n_z_ui_pagination_previous: 'Previous',\n i18n_z_ui_pagination_page: 'Page',\n i18n_z_ui_pagination_of: 'of',\n i18n_z_ui_pagination_total_label: 'Total {total} items',\n i18n_z_ui_pagination_per_page: '/ page',\n i18n_z_ui_pagination_go_to: 'Go to',\n\n // Common\n i18n_z_ui_common_select: 'Select value...',\n i18n_z_ui_common_loading: 'Loading...',\n i18n_z_ui_common_save: 'Save',\n i18n_z_ui_common_cancel: 'Cancel',\n i18n_z_ui_common_confirm: 'Confirm',\n i18n_z_ui_common_delete: 'Delete',\n i18n_z_ui_common_edit: 'Edit',\n i18n_z_ui_common_add: 'Add',\n i18n_z_ui_common_search: 'Search',\n i18n_z_ui_common_clear: 'Clear',\n i18n_z_ui_common_reset: 'Reset',\n i18n_z_ui_common_apply: 'Apply',\n i18n_z_ui_common_yes: 'Yes',\n i18n_z_ui_common_no: 'No',\n i18n_z_ui_common_ok: 'OK',\n i18n_z_ui_common_error: 'Error',\n i18n_z_ui_common_success: 'Success',\n i18n_z_ui_common_warning: 'Warning',\n i18n_z_ui_common_info: 'Info',\n\n // Toast\n i18n_z_ui_toast_close: 'Close',\n\n // Tags\n i18n_z_ui_tags_add: 'Add',\n i18n_z_ui_tags_placeholder: 'New tag',\n\n // Empty\n i18n_z_ui_empty_no_data: 'No data available',\n i18n_z_ui_empty_no_results: 'No results found',\n i18n_z_ui_empty_error_message: 'Something went wrong',\n i18n_z_ui_empty_error_description: 'An error occurred while loading data. Please try again later.',\n\n // Steps\n i18n_z_ui_steps_title: 'Steps',\n\n // Chat AI\n i18n_z_ui_chat_ai_title: 'AI Assistant',\n i18n_z_ui_chat_ai_subtitle: 'How can I help you today?',\n i18n_z_ui_chat_ai_placeholder: 'Type a message...',\n i18n_z_ui_chat_ai_send: 'Send message',\n i18n_z_ui_chat_ai_attach: 'Attach file',\n i18n_z_ui_chat_ai_close: 'Close chat',\n i18n_z_ui_chat_ai_toggle: 'Toggle chat',\n i18n_z_ui_chat_ai_typing: 'Typing...',\n\n // HTTP\n i18n_z_ui_http_network_offline: 'Network is offline',\n i18n_z_ui_http_error_default: 'An error occurred',\n i18n_z_ui_http_error_failed_to_fetch: 'Failed to connect to {url}',\n i18n_z_ui_http_error_400: 'Bad request',\n i18n_z_ui_http_error_401_permission: 'You do not have permission',\n i18n_z_ui_http_error_401_expired: 'Session expired',\n i18n_z_ui_http_error_403: 'Access forbidden',\n i18n_z_ui_http_error_404: 'Resource not found',\n i18n_z_ui_http_error_500: 'Internal server error',\n};\n","export const Z_UI_VI_TRANSLATIONS: Record<string, string> = {\n // Table\n i18n_z_ui_table_filter_min: 'Tối thiểu',\n i18n_z_ui_table_filter_max: 'Tối đa',\n i18n_z_ui_table_filter_all: 'Tất cả',\n i18n_z_ui_table_filter_search: 'Tìm kiếm...',\n i18n_z_ui_table_filter_date: 'Chọn ngày',\n i18n_z_ui_table_filter_date_range: 'Chọn khoảng ngày',\n i18n_z_ui_table_no_data: 'Không có dữ liệu',\n i18n_z_ui_table_no_results: 'Không tìm thấy kết quả',\n i18n_z_ui_table_loading: 'Đang tải...',\n i18n_z_ui_table_search: 'Tìm kiếm...',\n i18n_z_ui_table_settings: 'Cài đặt',\n i18n_z_ui_table_columns: 'Cột',\n i18n_z_ui_table_show_all: 'Hiện tất cả',\n i18n_z_ui_table_hide_all: 'Ẩn tất cả',\n i18n_z_ui_table_move_left: 'Di chuyển trái',\n i18n_z_ui_table_move_right: 'Di chuyển phải',\n i18n_z_ui_table_pin_left: 'Ghim trái',\n i18n_z_ui_table_pin_right: 'Ghim phải',\n i18n_z_ui_table_pin_top: 'Ghim lên đầu',\n i18n_z_ui_table_pin_bottom: 'Ghim xuống cuối',\n i18n_z_ui_table_unpin: 'Bỏ ghim',\n i18n_z_ui_table_sort_asc: 'Sắp xếp tăng dần',\n i18n_z_ui_table_sort_desc: 'Sắp xếp giảm dần',\n i18n_z_ui_table_clear_sort: 'Bỏ sắp xếp',\n i18n_z_ui_table_filter: 'Lọc',\n i18n_z_ui_table_clear_filter: 'Xóa bộ lọc',\n i18n_z_ui_table_rows_per_page: 'Số dòng mỗi trang',\n i18n_z_ui_table_total_rows: '{total} tổng số dòng',\n i18n_z_ui_table_of: 'của',\n i18n_z_ui_table_selected: 'đã chọn',\n i18n_z_ui_table_expand_all: 'Mở rộng tất cả',\n i18n_z_ui_table_collapse_all: 'Thu gọn tất cả',\n i18n_z_ui_table_settings_title: 'Cài đặt bảng',\n i18n_z_ui_table_display_settings: 'Cài đặt hiển thị',\n i18n_z_ui_table_display_settings_desc: 'Tùy chỉnh giao diện bảng',\n i18n_z_ui_table_horizontal_border: 'Viền ngang',\n i18n_z_ui_table_vertical_border: 'Viền dọc',\n i18n_z_ui_table_header_footer_shadow: 'Đổ bóng Header/Footer',\n i18n_z_ui_table_column_settings: 'Cài đặt cột',\n i18n_z_ui_table_column_settings_desc: 'Bật/tắt hiển thị, kéo thả để sắp xếp, và ghim cột',\n i18n_z_ui_table_pinned_columns: 'Cột đã ghim',\n i18n_z_ui_table_left: 'TRÁI',\n i18n_z_ui_table_right: 'PHẢI',\n\n // Calendar\n i18n_z_ui_calendar_today: 'Hôm nay',\n i18n_z_ui_calendar_clear: 'Xóa',\n i18n_z_ui_calendar_ok: 'Đồng ý',\n i18n_z_ui_calendar_cancel: 'Hủy',\n i18n_z_ui_calendar_start_date: 'Từ ngày',\n i18n_z_ui_calendar_end_date: 'Đến ngày',\n i18n_z_ui_calendar_select_date: 'Chọn ngày',\n i18n_z_ui_calendar_select_time: 'Chọn giờ',\n i18n_z_ui_calendar_this_week: 'Tuần này',\n i18n_z_ui_calendar_last_week: 'Tuần trước',\n i18n_z_ui_calendar_this_month: 'Tháng này',\n i18n_z_ui_calendar_last_month: 'Tháng trước',\n i18n_z_ui_calendar_last_7_days: '7 ngày qua',\n i18n_z_ui_calendar_last_30_days: '30 ngày qua',\n i18n_z_ui_calendar_last_90_days: '90 ngày qua',\n i18n_z_ui_calendar_this_year: 'Năm nay',\n i18n_z_ui_calendar_last_year: 'Năm trước',\n i18n_z_ui_calendar_this_quarter: 'Quý này',\n i18n_z_ui_calendar_now: 'Bây giờ',\n i18n_z_ui_calendar_required: 'Vui lòng chọn ngày',\n i18n_z_ui_calendar_start: 'Bắt đầu',\n i18n_z_ui_calendar_end: 'Kết thúc',\n i18n_z_ui_calendar_time: 'Giờ',\n\n // Editor\n i18n_z_ui_editor_placeholder: 'Nhập nội dung...',\n i18n_z_ui_editor_required: 'Trường này là bắt buộc',\n i18n_z_ui_editor_min_length: 'Tối thiểu {min} ký tự',\n i18n_z_ui_editor_max_length: 'Tối đa {max} ký tự',\n i18n_z_ui_editor_invalid: 'Giá trị không hợp lệ',\n\n // Checkbox\n i18n_z_ui_checkbox_check_all: 'Chọn tất cả',\n\n // Code\n i18n_z_ui_code_copied: 'Đã sao chép code!',\n\n // Input\n i18n_z_ui_input_required: 'Trường này là bắt buộc',\n i18n_z_ui_input_min_length: 'Tối thiểu {min} ký tự',\n i18n_z_ui_input_max_length: 'Tối đa {max} ký tự',\n i18n_z_ui_input_email: 'Định dạng email không hợp lệ',\n i18n_z_ui_input_pattern: 'Định dạng không hợp lệ',\n i18n_z_ui_input_min: 'Giá trị tối thiểu là {min}',\n i18n_z_ui_input_max: 'Giá trị tối đa là {max}',\n\n // Select\n i18n_z_ui_select_placeholder: 'Chọn...',\n i18n_z_ui_select_no_options: 'Không có tùy chọn',\n i18n_z_ui_select_no_results: 'Không tìm thấy kết quả',\n i18n_z_ui_select_loading: 'Đang tải...',\n i18n_z_ui_select_select_all: 'Chọn tất cả',\n i18n_z_ui_select_clear_all: 'Bỏ chọn tất cả',\n i18n_z_ui_select_selected: 'Đã chọn {count}',\n i18n_z_ui_select_search: 'Tìm kiếm...',\n i18n_z_ui_select_required: 'Vui lòng chọn giá trị',\n\n // Modal\n i18n_z_ui_modal_close: 'Đóng',\n i18n_z_ui_modal_confirm: 'Xác nhận',\n i18n_z_ui_modal_cancel: 'Hủy',\n\n // Drawer\n i18n_z_ui_drawer_close: 'Đóng',\n\n // Upload\n i18n_z_ui_upload_drag_drop: 'Kéo file vào đây',\n i18n_z_ui_upload_drop_here: 'Thả file vào đây',\n i18n_z_ui_upload_or: 'hoặc',\n i18n_z_ui_upload_browse: 'chọn file',\n i18n_z_ui_upload_uploading: 'Đang tải lên...',\n i18n_z_ui_upload_uploaded: 'Đã tải lên',\n i18n_z_ui_upload_failed: 'Tải lên thất bại',\n i18n_z_ui_upload_remove: 'Xóa',\n i18n_z_ui_upload_max_size: 'Kích thước file vượt quá {size}',\n i18n_z_ui_upload_max_files: 'Tối đa {count} file được phép',\n i18n_z_ui_upload_invalid_type: 'Loại file không được phép',\n i18n_z_ui_upload_accepted: 'Chấp nhận',\n i18n_z_ui_upload_required: 'Vui lòng chọn file',\n\n // Pagination\n i18n_z_ui_pagination_first: 'Đầu',\n i18n_z_ui_pagination_last: 'Cuối',\n i18n_z_ui_pagination_next: 'Tiếp',\n i18n_z_ui_pagination_previous: 'Trước',\n i18n_z_ui_pagination_page: 'Trang',\n i18n_z_ui_pagination_of: 'của',\n i18n_z_ui_pagination_total_label: 'Tổng {total} mục',\n i18n_z_ui_pagination_per_page: '/ trang',\n i18n_z_ui_pagination_go_to: 'Đến trang',\n\n // Common\n i18n_z_ui_common_select: 'Chọn giá trị...',\n i18n_z_ui_common_loading: 'Đang tải...',\n i18n_z_ui_common_save: 'Lưu',\n i18n_z_ui_common_cancel: 'Hủy',\n i18n_z_ui_common_confirm: 'Xác nhận',\n i18n_z_ui_common_delete: 'Xóa',\n i18n_z_ui_common_edit: 'Sửa',\n i18n_z_ui_common_add: 'Thêm',\n i18n_z_ui_common_search: 'Tìm kiếm',\n i18n_z_ui_common_clear: 'Xóa',\n i18n_z_ui_common_reset: 'Đặt lại',\n i18n_z_ui_common_apply: 'Áp dụng',\n i18n_z_ui_common_yes: 'Có',\n i18n_z_ui_common_no: 'Không',\n i18n_z_ui_common_ok: 'OK',\n i18n_z_ui_common_error: 'Lỗi',\n i18n_z_ui_common_success: 'Thành công',\n i18n_z_ui_common_warning: 'Cảnh báo',\n i18n_z_ui_common_info: 'Thông tin',\n\n // Toast\n i18n_z_ui_toast_close: 'Đóng',\n\n // Tags\n i18n_z_ui_tags_add: 'Thêm',\n i18n_z_ui_tags_placeholder: 'Tag mới',\n\n // Empty\n i18n_z_ui_empty_no_data: 'Không có dữ liệu',\n i18n_z_ui_empty_no_results: 'Không tìm thấy kết quả',\n i18n_z_ui_empty_error_message: 'Đã xảy ra lỗi',\n i18n_z_ui_empty_error_description: 'Có lỗi xảy ra khi tải dữ liệu. Vui lòng thử lại sau.',\n\n // Steps\n i18n_z_ui_steps_title: 'Các bước',\n\n // Chat AI\n i18n_z_ui_chat_ai_title: 'Trợ lý AI',\n i18n_z_ui_chat_ai_subtitle: 'Tôi có thể giúp gì cho bạn?',\n i18n_z_ui_chat_ai_placeholder: 'Nhập tin nhắn...',\n i18n_z_ui_chat_ai_send: 'Gửi tin nhắn',\n i18n_z_ui_chat_ai_attach: 'Đính kèm file',\n i18n_z_ui_chat_ai_close: 'Đóng chat',\n i18n_z_ui_chat_ai_toggle: 'Bật/tắt chat',\n i18n_z_ui_chat_ai_typing: 'Đang nhập...',\n\n // HTTP\n i18n_z_ui_http_network_offline: 'Không có kết nối mạng',\n i18n_z_ui_http_error_default: 'Đã xảy ra lỗi',\n i18n_z_ui_http_error_failed_to_fetch: 'Không thể kết nối đến {url}',\n i18n_z_ui_http_error_400: 'Yêu cầu không hợp lệ',\n i18n_z_ui_http_error_401_permission: 'Bạn không có quyền truy cập',\n i18n_z_ui_http_error_401_expired: 'Phiên đăng nhập đã hết hạn',\n i18n_z_ui_http_error_403: 'Truy cập bị từ chối',\n i18n_z_ui_http_error_404: 'Không tìm thấy tài nguyên',\n i18n_z_ui_http_error_500: 'Lỗi máy chủ nội bộ',\n};\n","/**\n * Z-UI Internationalization\n *\n * This module provides default translations for all Z-UI components.\n * Users can override any translation by providing their own values.\n *\n * Key format: i18n_z_ui_{component}_{key}\n * Example: i18n_z_ui_table_noData\n */\n\nimport { Z_UI_EN_TRANSLATIONS } from './en';\nimport { type ZUILanguage, type ZUITranslations, type ZUITranslationSet } from './types';\nimport { Z_UI_VI_TRANSLATIONS } from './vi';\n\nexport const Z_UI_TRANSLATIONS: ZUITranslationSet = {\n en: Z_UI_EN_TRANSLATIONS,\n vi: Z_UI_VI_TRANSLATIONS,\n};\n\nexport function getZUITranslations(lang: ZUILanguage): ZUITranslations {\n return Z_UI_TRANSLATIONS[lang] ?? Z_UI_TRANSLATIONS['en'];\n}\n\nexport function mergeTranslations(lang: ZUILanguage, customTranslations?: ZUITranslations): ZUITranslations {\n const defaults = getZUITranslations(lang);\n if (!customTranslations) {\n return defaults;\n }\n return { ...defaults, ...customTranslations };\n}\n\nexport function getZUITranslationKeys(): string[] {\n return Object.keys(Z_UI_EN_TRANSLATIONS);\n}\n","// Types\nexport * from './types';\n\n// Translations\nexport { Z_UI_EN_TRANSLATIONS } from './en';\nexport { Z_UI_VI_TRANSLATIONS } from './vi';\n\n// Functions and constants\nexport { Z_UI_TRANSLATIONS, getZUITranslations, mergeTranslations, getZUITranslationKeys } from './i18n';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shival99-z-ui-i18n.mjs","sources":["../../../../libs/core-ui/i18n/types/i18n.types.ts","../../../../libs/core-ui/i18n/en.ts","../../../../libs/core-ui/i18n/vi.ts","../../../../libs/core-ui/i18n/i18n.ts","../../../../libs/core-ui/i18n/index.ts","../../../../libs/core-ui/i18n/shival99-z-ui-i18n.ts"],"sourcesContent":["/**\n * Z-UI Internationalization Types\n */\n\nexport type ZUILanguage = 'en' | 'vi' | string;\n\nexport interface ZUITranslations {\n [key: string]: string;\n}\n\nexport interface ZUITranslationSet {\n en: ZUITranslations;\n vi: ZUITranslations;\n [lang: string]: ZUITranslations;\n}\n","export const Z_UI_EN_TRANSLATIONS: Record<string, string> = {\n // Table\n i18n_z_ui_table_filter_min: 'Min',\n i18n_z_ui_table_filter_max: 'Max',\n i18n_z_ui_table_filter_all: 'All',\n i18n_z_ui_table_filter_search: 'Search...',\n i18n_z_ui_table_filter_date: 'Select date',\n i18n_z_ui_table_filter_date_range: 'Select date range',\n i18n_z_ui_table_no_data: 'No data available',\n i18n_z_ui_table_no_results: 'No results found',\n i18n_z_ui_table_loading: 'Loading...',\n i18n_z_ui_table_search: 'Search...',\n i18n_z_ui_table_settings: 'Settings',\n i18n_z_ui_table_columns: 'Columns',\n i18n_z_ui_table_show_all: 'Show all',\n i18n_z_ui_table_hide_all: 'Hide all',\n i18n_z_ui_table_move_left: 'Move left',\n i18n_z_ui_table_move_right: 'Move right',\n i18n_z_ui_table_pin_left: 'Pin left',\n i18n_z_ui_table_pin_right: 'Pin right',\n i18n_z_ui_table_pin_top: 'Pin top',\n i18n_z_ui_table_pin_bottom: 'Pin bottom',\n i18n_z_ui_table_unpin: 'Unpin',\n i18n_z_ui_table_sort_asc: 'Sort ascending',\n i18n_z_ui_table_sort_desc: 'Sort descending',\n i18n_z_ui_table_clear_sort: 'Clear sort',\n i18n_z_ui_table_filter: 'Filter',\n i18n_z_ui_table_clear_filter: 'Clear filter',\n i18n_z_ui_table_rows_per_page: 'Rows per page',\n i18n_z_ui_table_total_rows: '{total} total rows',\n i18n_z_ui_table_of: 'of',\n i18n_z_ui_table_selected: 'selected',\n i18n_z_ui_table_expand_all: 'Expand all',\n i18n_z_ui_table_collapse_all: 'Collapse all',\n i18n_z_ui_table_settings_title: 'Table Settings',\n i18n_z_ui_table_display_settings: 'Display Settings',\n i18n_z_ui_table_display_settings_desc: 'Customize table appearance',\n i18n_z_ui_table_horizontal_border: 'Horizontal Border',\n i18n_z_ui_table_vertical_border: 'Vertical Border',\n i18n_z_ui_table_header_footer_shadow: 'Header/Footer Shadow',\n i18n_z_ui_table_column_settings: 'Column Settings',\n i18n_z_ui_table_column_settings_desc: 'Toggle visibility, drag to reorder, and pin columns',\n i18n_z_ui_table_pinned_columns: 'Pinned Columns',\n i18n_z_ui_table_left: 'LEFT',\n i18n_z_ui_table_right: 'RIGHT',\n\n // Calendar\n i18n_z_ui_calendar_today: 'Today',\n i18n_z_ui_calendar_clear: 'Clear',\n i18n_z_ui_calendar_ok: 'OK',\n i18n_z_ui_calendar_cancel: 'Cancel',\n i18n_z_ui_calendar_start_date: 'Start date',\n i18n_z_ui_calendar_end_date: 'End date',\n i18n_z_ui_calendar_select_date: 'Select date',\n i18n_z_ui_calendar_select_time: 'Select time',\n i18n_z_ui_calendar_this_week: 'This week',\n i18n_z_ui_calendar_last_week: 'Last week',\n i18n_z_ui_calendar_this_month: 'This month',\n i18n_z_ui_calendar_last_month: 'Last month',\n i18n_z_ui_calendar_last_7_days: 'Last 7 days',\n i18n_z_ui_calendar_last_14_days: 'Last 14 days',\n i18n_z_ui_calendar_last_30_days: 'Last 30 days',\n i18n_z_ui_calendar_last_1_month: 'Last 1 month',\n i18n_z_ui_calendar_last_2_months: 'Last 2 months',\n i18n_z_ui_calendar_last_3_months: 'Last 3 months',\n i18n_z_ui_calendar_last_6_months: 'Last 6 months',\n i18n_z_ui_calendar_last_90_days: 'Last 90 days',\n i18n_z_ui_calendar_this_year: 'This year',\n i18n_z_ui_calendar_last_year: 'Last year',\n i18n_z_ui_calendar_this_quarter: 'This quarter',\n i18n_z_ui_calendar_custom: 'Custom',\n i18n_z_ui_calendar_now: 'Now',\n i18n_z_ui_calendar_required: 'Please select a date',\n i18n_z_ui_calendar_start: 'Start',\n i18n_z_ui_calendar_end: 'End',\n i18n_z_ui_calendar_time: 'Time',\n\n // Editor\n i18n_z_ui_editor_placeholder: 'Enter content...',\n i18n_z_ui_editor_required: 'This field is required',\n i18n_z_ui_editor_min_length: 'Minimum {min} characters',\n i18n_z_ui_editor_max_length: 'Maximum {max} characters',\n i18n_z_ui_editor_invalid: 'Invalid value',\n\n // Checkbox\n i18n_z_ui_checkbox_check_all: 'Check All',\n\n // Code\n i18n_z_ui_code_copied: 'Code copied!',\n\n // Input\n i18n_z_ui_input_required: 'This field is required',\n i18n_z_ui_input_min_length: 'Minimum {min} characters',\n i18n_z_ui_input_max_length: 'Maximum {max} characters',\n i18n_z_ui_input_email: 'Invalid email format',\n i18n_z_ui_input_pattern: 'Invalid format',\n i18n_z_ui_input_min: 'Minimum value is {min}',\n i18n_z_ui_input_max: 'Maximum value is {max}',\n\n // Select\n i18n_z_ui_select_placeholder: 'Select...',\n i18n_z_ui_select_no_options: 'No options available',\n i18n_z_ui_select_no_results: 'No results found',\n i18n_z_ui_select_loading: 'Loading...',\n i18n_z_ui_select_select_all: 'Select all',\n i18n_z_ui_select_clear_all: 'Clear all',\n i18n_z_ui_select_selected: '{count} selected',\n i18n_z_ui_select_search: 'Search...',\n i18n_z_ui_select_required: 'Please select a value',\n\n // Modal\n i18n_z_ui_modal_close: 'Close',\n i18n_z_ui_modal_confirm: 'Confirm',\n i18n_z_ui_modal_cancel: 'Cancel',\n\n // Drawer\n i18n_z_ui_drawer_close: 'Close',\n\n // Upload\n i18n_z_ui_upload_drag_drop: 'Drag files here',\n i18n_z_ui_upload_drop_here: 'Drop files here',\n i18n_z_ui_upload_or: 'or',\n i18n_z_ui_upload_browse: 'browse',\n i18n_z_ui_upload_uploading: 'Uploading...',\n i18n_z_ui_upload_uploaded: 'Uploaded',\n i18n_z_ui_upload_failed: 'Upload failed',\n i18n_z_ui_upload_remove: 'Remove',\n i18n_z_ui_upload_max_size: 'File size exceeds {size} limit',\n i18n_z_ui_upload_max_files: 'Maximum {count} files allowed',\n i18n_z_ui_upload_invalid_type: 'File type not allowed',\n i18n_z_ui_upload_accepted: 'Accepted',\n i18n_z_ui_upload_required: 'Please select a file',\n\n // Pagination\n i18n_z_ui_pagination_first: 'First',\n i18n_z_ui_pagination_last: 'Last',\n i18n_z_ui_pagination_next: 'Next',\n i18n_z_ui_pagination_previous: 'Previous',\n i18n_z_ui_pagination_page: 'Page',\n i18n_z_ui_pagination_of: 'of',\n i18n_z_ui_pagination_total_label: 'Total {total} items',\n i18n_z_ui_pagination_per_page: '/ page',\n i18n_z_ui_pagination_go_to: 'Go to',\n\n // Common\n i18n_z_ui_common_select: 'Select value...',\n i18n_z_ui_common_loading: 'Loading...',\n i18n_z_ui_common_save: 'Save',\n i18n_z_ui_common_cancel: 'Cancel',\n i18n_z_ui_common_confirm: 'Confirm',\n i18n_z_ui_common_delete: 'Delete',\n i18n_z_ui_common_edit: 'Edit',\n i18n_z_ui_common_add: 'Add',\n i18n_z_ui_common_search: 'Search',\n i18n_z_ui_common_clear: 'Clear',\n i18n_z_ui_common_reset: 'Reset',\n i18n_z_ui_common_apply: 'Apply',\n i18n_z_ui_common_yes: 'Yes',\n i18n_z_ui_common_no: 'No',\n i18n_z_ui_common_ok: 'OK',\n i18n_z_ui_common_error: 'Error',\n i18n_z_ui_common_success: 'Success',\n i18n_z_ui_common_warning: 'Warning',\n i18n_z_ui_common_info: 'Info',\n\n // Toast\n i18n_z_ui_toast_close: 'Close',\n\n // Tags\n i18n_z_ui_tags_add: 'Add',\n i18n_z_ui_tags_placeholder: 'New tag',\n\n // Empty\n i18n_z_ui_empty_no_data: 'No data available',\n i18n_z_ui_empty_no_results: 'No results found',\n i18n_z_ui_empty_error_message: 'Something went wrong',\n i18n_z_ui_empty_error_description: 'An error occurred while loading data. Please try again later.',\n\n // Steps\n i18n_z_ui_steps_title: 'Steps',\n\n // Chat AI\n i18n_z_ui_chat_ai_title: 'AI Assistant',\n i18n_z_ui_chat_ai_subtitle: 'How can I help you today?',\n i18n_z_ui_chat_ai_placeholder: 'Type a message...',\n i18n_z_ui_chat_ai_send: 'Send message',\n i18n_z_ui_chat_ai_attach: 'Attach file',\n i18n_z_ui_chat_ai_close: 'Close chat',\n i18n_z_ui_chat_ai_toggle: 'Toggle chat',\n i18n_z_ui_chat_ai_typing: 'Typing...',\n\n // HTTP\n i18n_z_ui_http_network_offline: 'Network is offline',\n i18n_z_ui_http_error_default: 'An error occurred',\n i18n_z_ui_http_error_failed_to_fetch: 'Failed to connect to {url}',\n i18n_z_ui_http_error_400: 'Bad request',\n i18n_z_ui_http_error_401_permission: 'You do not have permission',\n i18n_z_ui_http_error_401_expired: 'Session expired',\n i18n_z_ui_http_error_403: 'Access forbidden',\n i18n_z_ui_http_error_404: 'Resource not found',\n i18n_z_ui_http_error_500: 'Internal server error',\n};\n","export const Z_UI_VI_TRANSLATIONS: Record<string, string> = {\n // Table\n i18n_z_ui_table_filter_min: 'Tối thiểu',\n i18n_z_ui_table_filter_max: 'Tối đa',\n i18n_z_ui_table_filter_all: 'Tất cả',\n i18n_z_ui_table_filter_search: 'Tìm kiếm...',\n i18n_z_ui_table_filter_date: 'Chọn ngày',\n i18n_z_ui_table_filter_date_range: 'Chọn khoảng ngày',\n i18n_z_ui_table_no_data: 'Không có dữ liệu',\n i18n_z_ui_table_no_results: 'Không tìm thấy kết quả',\n i18n_z_ui_table_loading: 'Đang tải...',\n i18n_z_ui_table_search: 'Tìm kiếm...',\n i18n_z_ui_table_settings: 'Cài đặt',\n i18n_z_ui_table_columns: 'Cột',\n i18n_z_ui_table_show_all: 'Hiện tất cả',\n i18n_z_ui_table_hide_all: 'Ẩn tất cả',\n i18n_z_ui_table_move_left: 'Di chuyển trái',\n i18n_z_ui_table_move_right: 'Di chuyển phải',\n i18n_z_ui_table_pin_left: 'Ghim trái',\n i18n_z_ui_table_pin_right: 'Ghim phải',\n i18n_z_ui_table_pin_top: 'Ghim lên đầu',\n i18n_z_ui_table_pin_bottom: 'Ghim xuống cuối',\n i18n_z_ui_table_unpin: 'Bỏ ghim',\n i18n_z_ui_table_sort_asc: 'Sắp xếp tăng dần',\n i18n_z_ui_table_sort_desc: 'Sắp xếp giảm dần',\n i18n_z_ui_table_clear_sort: 'Bỏ sắp xếp',\n i18n_z_ui_table_filter: 'Lọc',\n i18n_z_ui_table_clear_filter: 'Xóa bộ lọc',\n i18n_z_ui_table_rows_per_page: 'Số dòng mỗi trang',\n i18n_z_ui_table_total_rows: '{total} tổng số dòng',\n i18n_z_ui_table_of: 'của',\n i18n_z_ui_table_selected: 'đã chọn',\n i18n_z_ui_table_expand_all: 'Mở rộng tất cả',\n i18n_z_ui_table_collapse_all: 'Thu gọn tất cả',\n i18n_z_ui_table_settings_title: 'Cài đặt bảng',\n i18n_z_ui_table_display_settings: 'Cài đặt hiển thị',\n i18n_z_ui_table_display_settings_desc: 'Tùy chỉnh giao diện bảng',\n i18n_z_ui_table_horizontal_border: 'Viền ngang',\n i18n_z_ui_table_vertical_border: 'Viền dọc',\n i18n_z_ui_table_header_footer_shadow: 'Đổ bóng Header/Footer',\n i18n_z_ui_table_column_settings: 'Cài đặt cột',\n i18n_z_ui_table_column_settings_desc: 'Bật/tắt hiển thị, kéo thả để sắp xếp, và ghim cột',\n i18n_z_ui_table_pinned_columns: 'Cột đã ghim',\n i18n_z_ui_table_left: 'TRÁI',\n i18n_z_ui_table_right: 'PHẢI',\n\n // Calendar\n i18n_z_ui_calendar_today: 'Hôm nay',\n i18n_z_ui_calendar_clear: 'Xóa',\n i18n_z_ui_calendar_ok: 'Đồng ý',\n i18n_z_ui_calendar_cancel: 'Hủy',\n i18n_z_ui_calendar_start_date: 'Từ ngày',\n i18n_z_ui_calendar_end_date: 'Đến ngày',\n i18n_z_ui_calendar_select_date: 'Chọn ngày',\n i18n_z_ui_calendar_select_time: 'Chọn giờ',\n i18n_z_ui_calendar_this_week: 'Tuần này',\n i18n_z_ui_calendar_last_week: 'Tuần trước',\n i18n_z_ui_calendar_this_month: 'Tháng này',\n i18n_z_ui_calendar_last_month: 'Tháng trước',\n i18n_z_ui_calendar_last_7_days: '7 ngày qua',\n i18n_z_ui_calendar_last_14_days: '14 ngày qua',\n i18n_z_ui_calendar_last_30_days: '30 ngày qua',\n i18n_z_ui_calendar_last_1_month: '1 tháng qua',\n i18n_z_ui_calendar_last_2_months: '2 tháng qua',\n i18n_z_ui_calendar_last_3_months: '3 tháng qua',\n i18n_z_ui_calendar_last_6_months: '6 tháng qua',\n i18n_z_ui_calendar_last_90_days: '90 ngày qua',\n i18n_z_ui_calendar_custom: 'Tùy chỉnh',\n i18n_z_ui_calendar_this_year: 'Năm nay',\n i18n_z_ui_calendar_last_year: 'Năm trước',\n i18n_z_ui_calendar_this_quarter: 'Quý này',\n i18n_z_ui_calendar_now: 'Bây giờ',\n i18n_z_ui_calendar_required: 'Vui lòng chọn ngày',\n i18n_z_ui_calendar_start: 'Bắt đầu',\n i18n_z_ui_calendar_end: 'Kết thúc',\n i18n_z_ui_calendar_time: 'Giờ',\n\n // Editor\n i18n_z_ui_editor_placeholder: 'Nhập nội dung...',\n i18n_z_ui_editor_required: 'Trường này là bắt buộc',\n i18n_z_ui_editor_min_length: 'Tối thiểu {min} ký tự',\n i18n_z_ui_editor_max_length: 'Tối đa {max} ký tự',\n i18n_z_ui_editor_invalid: 'Giá trị không hợp lệ',\n\n // Checkbox\n i18n_z_ui_checkbox_check_all: 'Chọn tất cả',\n\n // Code\n i18n_z_ui_code_copied: 'Đã sao chép code!',\n\n // Input\n i18n_z_ui_input_required: 'Trường này là bắt buộc',\n i18n_z_ui_input_min_length: 'Tối thiểu {min} ký tự',\n i18n_z_ui_input_max_length: 'Tối đa {max} ký tự',\n i18n_z_ui_input_email: 'Định dạng email không hợp lệ',\n i18n_z_ui_input_pattern: 'Định dạng không hợp lệ',\n i18n_z_ui_input_min: 'Giá trị tối thiểu là {min}',\n i18n_z_ui_input_max: 'Giá trị tối đa là {max}',\n\n // Select\n i18n_z_ui_select_placeholder: 'Chọn...',\n i18n_z_ui_select_no_options: 'Không có tùy chọn',\n i18n_z_ui_select_no_results: 'Không tìm thấy kết quả',\n i18n_z_ui_select_loading: 'Đang tải...',\n i18n_z_ui_select_select_all: 'Chọn tất cả',\n i18n_z_ui_select_clear_all: 'Bỏ chọn tất cả',\n i18n_z_ui_select_selected: 'Đã chọn {count}',\n i18n_z_ui_select_search: 'Tìm kiếm...',\n i18n_z_ui_select_required: 'Vui lòng chọn giá trị',\n\n // Modal\n i18n_z_ui_modal_close: 'Đóng',\n i18n_z_ui_modal_confirm: 'Xác nhận',\n i18n_z_ui_modal_cancel: 'Hủy',\n\n // Drawer\n i18n_z_ui_drawer_close: 'Đóng',\n\n // Upload\n i18n_z_ui_upload_drag_drop: 'Kéo file vào đây',\n i18n_z_ui_upload_drop_here: 'Thả file vào đây',\n i18n_z_ui_upload_or: 'hoặc',\n i18n_z_ui_upload_browse: 'chọn file',\n i18n_z_ui_upload_uploading: 'Đang tải lên...',\n i18n_z_ui_upload_uploaded: 'Đã tải lên',\n i18n_z_ui_upload_failed: 'Tải lên thất bại',\n i18n_z_ui_upload_remove: 'Xóa',\n i18n_z_ui_upload_max_size: 'Kích thước file vượt quá {size}',\n i18n_z_ui_upload_max_files: 'Tối đa {count} file được phép',\n i18n_z_ui_upload_invalid_type: 'Loại file không được phép',\n i18n_z_ui_upload_accepted: 'Chấp nhận',\n i18n_z_ui_upload_required: 'Vui lòng chọn file',\n\n // Pagination\n i18n_z_ui_pagination_first: 'Đầu',\n i18n_z_ui_pagination_last: 'Cuối',\n i18n_z_ui_pagination_next: 'Tiếp',\n i18n_z_ui_pagination_previous: 'Trước',\n i18n_z_ui_pagination_page: 'Trang',\n i18n_z_ui_pagination_of: 'của',\n i18n_z_ui_pagination_total_label: 'Tổng {total} mục',\n i18n_z_ui_pagination_per_page: '/ trang',\n i18n_z_ui_pagination_go_to: 'Đến trang',\n\n // Common\n i18n_z_ui_common_select: 'Chọn giá trị...',\n i18n_z_ui_common_loading: 'Đang tải...',\n i18n_z_ui_common_save: 'Lưu',\n i18n_z_ui_common_cancel: 'Hủy',\n i18n_z_ui_common_confirm: 'Xác nhận',\n i18n_z_ui_common_delete: 'Xóa',\n i18n_z_ui_common_edit: 'Sửa',\n i18n_z_ui_common_add: 'Thêm',\n i18n_z_ui_common_search: 'Tìm kiếm',\n i18n_z_ui_common_clear: 'Xóa',\n i18n_z_ui_common_reset: 'Đặt lại',\n i18n_z_ui_common_apply: 'Áp dụng',\n i18n_z_ui_common_yes: 'Có',\n i18n_z_ui_common_no: 'Không',\n i18n_z_ui_common_ok: 'OK',\n i18n_z_ui_common_error: 'Lỗi',\n i18n_z_ui_common_success: 'Thành công',\n i18n_z_ui_common_warning: 'Cảnh báo',\n i18n_z_ui_common_info: 'Thông tin',\n\n // Toast\n i18n_z_ui_toast_close: 'Đóng',\n\n // Tags\n i18n_z_ui_tags_add: 'Thêm',\n i18n_z_ui_tags_placeholder: 'Tag mới',\n\n // Empty\n i18n_z_ui_empty_no_data: 'Không có dữ liệu',\n i18n_z_ui_empty_no_results: 'Không tìm thấy kết quả',\n i18n_z_ui_empty_error_message: 'Đã xảy ra lỗi',\n i18n_z_ui_empty_error_description: 'Có lỗi xảy ra khi tải dữ liệu. Vui lòng thử lại sau.',\n\n // Steps\n i18n_z_ui_steps_title: 'Các bước',\n\n // Chat AI\n i18n_z_ui_chat_ai_title: 'Trợ lý AI',\n i18n_z_ui_chat_ai_subtitle: 'Tôi có thể giúp gì cho bạn?',\n i18n_z_ui_chat_ai_placeholder: 'Nhập tin nhắn...',\n i18n_z_ui_chat_ai_send: 'Gửi tin nhắn',\n i18n_z_ui_chat_ai_attach: 'Đính kèm file',\n i18n_z_ui_chat_ai_close: 'Đóng chat',\n i18n_z_ui_chat_ai_toggle: 'Bật/tắt chat',\n i18n_z_ui_chat_ai_typing: 'Đang nhập...',\n\n // HTTP\n i18n_z_ui_http_network_offline: 'Không có kết nối mạng',\n i18n_z_ui_http_error_default: 'Đã xảy ra lỗi',\n i18n_z_ui_http_error_failed_to_fetch: 'Không thể kết nối đến {url}',\n i18n_z_ui_http_error_400: 'Yêu cầu không hợp lệ',\n i18n_z_ui_http_error_401_permission: 'Bạn không có quyền truy cập',\n i18n_z_ui_http_error_401_expired: 'Phiên đăng nhập đã hết hạn',\n i18n_z_ui_http_error_403: 'Truy cập bị từ chối',\n i18n_z_ui_http_error_404: 'Không tìm thấy tài nguyên',\n i18n_z_ui_http_error_500: 'Lỗi máy chủ nội bộ',\n};\n","/**\n * Z-UI Internationalization\n *\n * This module provides default translations for all Z-UI components.\n * Users can override any translation by providing their own values.\n *\n * Key format: i18n_z_ui_{component}_{key}\n * Example: i18n_z_ui_table_noData\n */\n\nimport { Z_UI_EN_TRANSLATIONS } from './en';\nimport { type ZUILanguage, type ZUITranslations, type ZUITranslationSet } from './types';\nimport { Z_UI_VI_TRANSLATIONS } from './vi';\n\nexport const Z_UI_TRANSLATIONS: ZUITranslationSet = {\n en: Z_UI_EN_TRANSLATIONS,\n vi: Z_UI_VI_TRANSLATIONS,\n};\n\nexport function getZUITranslations(lang: ZUILanguage): ZUITranslations {\n return Z_UI_TRANSLATIONS[lang] ?? Z_UI_TRANSLATIONS['en'];\n}\n\nexport function mergeTranslations(lang: ZUILanguage, customTranslations?: ZUITranslations): ZUITranslations {\n const defaults = getZUITranslations(lang);\n if (!customTranslations) {\n return defaults;\n }\n return { ...defaults, ...customTranslations };\n}\n\nexport function getZUITranslationKeys(): string[] {\n return Object.keys(Z_UI_EN_TRANSLATIONS);\n}\n","// Types\nexport * from './types';\n\n// Translations\nexport { Z_UI_EN_TRANSLATIONS } from './en';\nexport { Z_UI_VI_TRANSLATIONS } from './vi';\n\n// Functions and constants\nexport { Z_UI_TRANSLATIONS, getZUITranslations, mergeTranslations, getZUITranslationKeys } from './i18n';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"AAAA;;AAEG;;ACFI,MAAM,oBAAoB,GAA2B;;AAE1D,IAAA,0BAA0B,EAAE,KAAK;AACjC,IAAA,0BAA0B,EAAE,KAAK;AACjC,IAAA,0BAA0B,EAAE,KAAK;AACjC,IAAA,6BAA6B,EAAE,WAAW;AAC1C,IAAA,2BAA2B,EAAE,aAAa;AAC1C,IAAA,iCAAiC,EAAE,mBAAmB;AACtD,IAAA,uBAAuB,EAAE,mBAAmB;AAC5C,IAAA,0BAA0B,EAAE,kBAAkB;AAC9C,IAAA,uBAAuB,EAAE,YAAY;AACrC,IAAA,sBAAsB,EAAE,WAAW;AACnC,IAAA,wBAAwB,EAAE,UAAU;AACpC,IAAA,uBAAuB,EAAE,SAAS;AAClC,IAAA,wBAAwB,EAAE,UAAU;AACpC,IAAA,wBAAwB,EAAE,UAAU;AACpC,IAAA,yBAAyB,EAAE,WAAW;AACtC,IAAA,0BAA0B,EAAE,YAAY;AACxC,IAAA,wBAAwB,EAAE,UAAU;AACpC,IAAA,yBAAyB,EAAE,WAAW;AACtC,IAAA,uBAAuB,EAAE,SAAS;AAClC,IAAA,0BAA0B,EAAE,YAAY;AACxC,IAAA,qBAAqB,EAAE,OAAO;AAC9B,IAAA,wBAAwB,EAAE,gBAAgB;AAC1C,IAAA,yBAAyB,EAAE,iBAAiB;AAC5C,IAAA,0BAA0B,EAAE,YAAY;AACxC,IAAA,sBAAsB,EAAE,QAAQ;AAChC,IAAA,4BAA4B,EAAE,cAAc;AAC5C,IAAA,6BAA6B,EAAE,eAAe;AAC9C,IAAA,0BAA0B,EAAE,oBAAoB;AAChD,IAAA,kBAAkB,EAAE,IAAI;AACxB,IAAA,wBAAwB,EAAE,UAAU;AACpC,IAAA,0BAA0B,EAAE,YAAY;AACxC,IAAA,4BAA4B,EAAE,cAAc;AAC5C,IAAA,8BAA8B,EAAE,gBAAgB;AAChD,IAAA,gCAAgC,EAAE,kBAAkB;AACpD,IAAA,qCAAqC,EAAE,4BAA4B;AACnE,IAAA,iCAAiC,EAAE,mBAAmB;AACtD,IAAA,+BAA+B,EAAE,iBAAiB;AAClD,IAAA,oCAAoC,EAAE,sBAAsB;AAC5D,IAAA,+BAA+B,EAAE,iBAAiB;AAClD,IAAA,oCAAoC,EAAE,qDAAqD;AAC3F,IAAA,8BAA8B,EAAE,gBAAgB;AAChD,IAAA,oBAAoB,EAAE,MAAM;AAC5B,IAAA,qBAAqB,EAAE,OAAO;;AAG9B,IAAA,wBAAwB,EAAE,OAAO;AACjC,IAAA,wBAAwB,EAAE,OAAO;AACjC,IAAA,qBAAqB,EAAE,IAAI;AAC3B,IAAA,yBAAyB,EAAE,QAAQ;AACnC,IAAA,6BAA6B,EAAE,YAAY;AAC3C,IAAA,2BAA2B,EAAE,UAAU;AACvC,IAAA,8BAA8B,EAAE,aAAa;AAC7C,IAAA,8BAA8B,EAAE,aAAa;AAC7C,IAAA,4BAA4B,EAAE,WAAW;AACzC,IAAA,4BAA4B,EAAE,WAAW;AACzC,IAAA,6BAA6B,EAAE,YAAY;AAC3C,IAAA,6BAA6B,EAAE,YAAY;AAC3C,IAAA,8BAA8B,EAAE,aAAa;AAC7C,IAAA,+BAA+B,EAAE,cAAc;AAC/C,IAAA,+BAA+B,EAAE,cAAc;AAC/C,IAAA,+BAA+B,EAAE,cAAc;AAC/C,IAAA,gCAAgC,EAAE,eAAe;AACjD,IAAA,gCAAgC,EAAE,eAAe;AACjD,IAAA,gCAAgC,EAAE,eAAe;AACjD,IAAA,+BAA+B,EAAE,cAAc;AAC/C,IAAA,4BAA4B,EAAE,WAAW;AACzC,IAAA,4BAA4B,EAAE,WAAW;AACzC,IAAA,+BAA+B,EAAE,cAAc;AAC/C,IAAA,yBAAyB,EAAE,QAAQ;AACnC,IAAA,sBAAsB,EAAE,KAAK;AAC7B,IAAA,2BAA2B,EAAE,sBAAsB;AACnD,IAAA,wBAAwB,EAAE,OAAO;AACjC,IAAA,sBAAsB,EAAE,KAAK;AAC7B,IAAA,uBAAuB,EAAE,MAAM;;AAG/B,IAAA,4BAA4B,EAAE,kBAAkB;AAChD,IAAA,yBAAyB,EAAE,wBAAwB;AACnD,IAAA,2BAA2B,EAAE,0BAA0B;AACvD,IAAA,2BAA2B,EAAE,0BAA0B;AACvD,IAAA,wBAAwB,EAAE,eAAe;;AAGzC,IAAA,4BAA4B,EAAE,WAAW;;AAGzC,IAAA,qBAAqB,EAAE,cAAc;;AAGrC,IAAA,wBAAwB,EAAE,wBAAwB;AAClD,IAAA,0BAA0B,EAAE,0BAA0B;AACtD,IAAA,0BAA0B,EAAE,0BAA0B;AACtD,IAAA,qBAAqB,EAAE,sBAAsB;AAC7C,IAAA,uBAAuB,EAAE,gBAAgB;AACzC,IAAA,mBAAmB,EAAE,wBAAwB;AAC7C,IAAA,mBAAmB,EAAE,wBAAwB;;AAG7C,IAAA,4BAA4B,EAAE,WAAW;AACzC,IAAA,2BAA2B,EAAE,sBAAsB;AACnD,IAAA,2BAA2B,EAAE,kBAAkB;AAC/C,IAAA,wBAAwB,EAAE,YAAY;AACtC,IAAA,2BAA2B,EAAE,YAAY;AACzC,IAAA,0BAA0B,EAAE,WAAW;AACvC,IAAA,yBAAyB,EAAE,kBAAkB;AAC7C,IAAA,uBAAuB,EAAE,WAAW;AACpC,IAAA,yBAAyB,EAAE,uBAAuB;;AAGlD,IAAA,qBAAqB,EAAE,OAAO;AAC9B,IAAA,uBAAuB,EAAE,SAAS;AAClC,IAAA,sBAAsB,EAAE,QAAQ;;AAGhC,IAAA,sBAAsB,EAAE,OAAO;;AAG/B,IAAA,0BAA0B,EAAE,iBAAiB;AAC7C,IAAA,0BAA0B,EAAE,iBAAiB;AAC7C,IAAA,mBAAmB,EAAE,IAAI;AACzB,IAAA,uBAAuB,EAAE,QAAQ;AACjC,IAAA,0BAA0B,EAAE,cAAc;AAC1C,IAAA,yBAAyB,EAAE,UAAU;AACrC,IAAA,uBAAuB,EAAE,eAAe;AACxC,IAAA,uBAAuB,EAAE,QAAQ;AACjC,IAAA,yBAAyB,EAAE,gCAAgC;AAC3D,IAAA,0BAA0B,EAAE,+BAA+B;AAC3D,IAAA,6BAA6B,EAAE,uBAAuB;AACtD,IAAA,yBAAyB,EAAE,UAAU;AACrC,IAAA,yBAAyB,EAAE,sBAAsB;;AAGjD,IAAA,0BAA0B,EAAE,OAAO;AACnC,IAAA,yBAAyB,EAAE,MAAM;AACjC,IAAA,yBAAyB,EAAE,MAAM;AACjC,IAAA,6BAA6B,EAAE,UAAU;AACzC,IAAA,yBAAyB,EAAE,MAAM;AACjC,IAAA,uBAAuB,EAAE,IAAI;AAC7B,IAAA,gCAAgC,EAAE,qBAAqB;AACvD,IAAA,6BAA6B,EAAE,QAAQ;AACvC,IAAA,0BAA0B,EAAE,OAAO;;AAGnC,IAAA,uBAAuB,EAAE,iBAAiB;AAC1C,IAAA,wBAAwB,EAAE,YAAY;AACtC,IAAA,qBAAqB,EAAE,MAAM;AAC7B,IAAA,uBAAuB,EAAE,QAAQ;AACjC,IAAA,wBAAwB,EAAE,SAAS;AACnC,IAAA,uBAAuB,EAAE,QAAQ;AACjC,IAAA,qBAAqB,EAAE,MAAM;AAC7B,IAAA,oBAAoB,EAAE,KAAK;AAC3B,IAAA,uBAAuB,EAAE,QAAQ;AACjC,IAAA,sBAAsB,EAAE,OAAO;AAC/B,IAAA,sBAAsB,EAAE,OAAO;AAC/B,IAAA,sBAAsB,EAAE,OAAO;AAC/B,IAAA,oBAAoB,EAAE,KAAK;AAC3B,IAAA,mBAAmB,EAAE,IAAI;AACzB,IAAA,mBAAmB,EAAE,IAAI;AACzB,IAAA,sBAAsB,EAAE,OAAO;AAC/B,IAAA,wBAAwB,EAAE,SAAS;AACnC,IAAA,wBAAwB,EAAE,SAAS;AACnC,IAAA,qBAAqB,EAAE,MAAM;;AAG7B,IAAA,qBAAqB,EAAE,OAAO;;AAG9B,IAAA,kBAAkB,EAAE,KAAK;AACzB,IAAA,0BAA0B,EAAE,SAAS;;AAGrC,IAAA,uBAAuB,EAAE,mBAAmB;AAC5C,IAAA,0BAA0B,EAAE,kBAAkB;AAC9C,IAAA,6BAA6B,EAAE,sBAAsB;AACrD,IAAA,iCAAiC,EAAE,+DAA+D;;AAGlG,IAAA,qBAAqB,EAAE,OAAO;;AAG9B,IAAA,uBAAuB,EAAE,cAAc;AACvC,IAAA,0BAA0B,EAAE,2BAA2B;AACvD,IAAA,6BAA6B,EAAE,mBAAmB;AAClD,IAAA,sBAAsB,EAAE,cAAc;AACtC,IAAA,wBAAwB,EAAE,aAAa;AACvC,IAAA,uBAAuB,EAAE,YAAY;AACrC,IAAA,wBAAwB,EAAE,aAAa;AACvC,IAAA,wBAAwB,EAAE,WAAW;;AAGrC,IAAA,8BAA8B,EAAE,oBAAoB;AACpD,IAAA,4BAA4B,EAAE,mBAAmB;AACjD,IAAA,oCAAoC,EAAE,4BAA4B;AAClE,IAAA,wBAAwB,EAAE,aAAa;AACvC,IAAA,mCAAmC,EAAE,4BAA4B;AACjE,IAAA,gCAAgC,EAAE,iBAAiB;AACnD,IAAA,wBAAwB,EAAE,kBAAkB;AAC5C,IAAA,wBAAwB,EAAE,oBAAoB;AAC9C,IAAA,wBAAwB,EAAE,uBAAuB;;;ACxM5C,MAAM,oBAAoB,GAA2B;;AAE1D,IAAA,0BAA0B,EAAE,WAAW;AACvC,IAAA,0BAA0B,EAAE,QAAQ;AACpC,IAAA,0BAA0B,EAAE,QAAQ;AACpC,IAAA,6BAA6B,EAAE,aAAa;AAC5C,IAAA,2BAA2B,EAAE,WAAW;AACxC,IAAA,iCAAiC,EAAE,kBAAkB;AACrD,IAAA,uBAAuB,EAAE,kBAAkB;AAC3C,IAAA,0BAA0B,EAAE,wBAAwB;AACpD,IAAA,uBAAuB,EAAE,aAAa;AACtC,IAAA,sBAAsB,EAAE,aAAa;AACrC,IAAA,wBAAwB,EAAE,SAAS;AACnC,IAAA,uBAAuB,EAAE,KAAK;AAC9B,IAAA,wBAAwB,EAAE,aAAa;AACvC,IAAA,wBAAwB,EAAE,WAAW;AACrC,IAAA,yBAAyB,EAAE,gBAAgB;AAC3C,IAAA,0BAA0B,EAAE,gBAAgB;AAC5C,IAAA,wBAAwB,EAAE,WAAW;AACrC,IAAA,yBAAyB,EAAE,WAAW;AACtC,IAAA,uBAAuB,EAAE,cAAc;AACvC,IAAA,0BAA0B,EAAE,iBAAiB;AAC7C,IAAA,qBAAqB,EAAE,SAAS;AAChC,IAAA,wBAAwB,EAAE,kBAAkB;AAC5C,IAAA,yBAAyB,EAAE,kBAAkB;AAC7C,IAAA,0BAA0B,EAAE,YAAY;AACxC,IAAA,sBAAsB,EAAE,KAAK;AAC7B,IAAA,4BAA4B,EAAE,YAAY;AAC1C,IAAA,6BAA6B,EAAE,mBAAmB;AAClD,IAAA,0BAA0B,EAAE,sBAAsB;AAClD,IAAA,kBAAkB,EAAE,KAAK;AACzB,IAAA,wBAAwB,EAAE,SAAS;AACnC,IAAA,0BAA0B,EAAE,gBAAgB;AAC5C,IAAA,4BAA4B,EAAE,gBAAgB;AAC9C,IAAA,8BAA8B,EAAE,cAAc;AAC9C,IAAA,gCAAgC,EAAE,kBAAkB;AACpD,IAAA,qCAAqC,EAAE,0BAA0B;AACjE,IAAA,iCAAiC,EAAE,YAAY;AAC/C,IAAA,+BAA+B,EAAE,UAAU;AAC3C,IAAA,oCAAoC,EAAE,uBAAuB;AAC7D,IAAA,+BAA+B,EAAE,aAAa;AAC9C,IAAA,oCAAoC,EAAE,mDAAmD;AACzF,IAAA,8BAA8B,EAAE,aAAa;AAC7C,IAAA,oBAAoB,EAAE,MAAM;AAC5B,IAAA,qBAAqB,EAAE,MAAM;;AAG7B,IAAA,wBAAwB,EAAE,SAAS;AACnC,IAAA,wBAAwB,EAAE,KAAK;AAC/B,IAAA,qBAAqB,EAAE,QAAQ;AAC/B,IAAA,yBAAyB,EAAE,KAAK;AAChC,IAAA,6BAA6B,EAAE,SAAS;AACxC,IAAA,2BAA2B,EAAE,UAAU;AACvC,IAAA,8BAA8B,EAAE,WAAW;AAC3C,IAAA,8BAA8B,EAAE,UAAU;AAC1C,IAAA,4BAA4B,EAAE,UAAU;AACxC,IAAA,4BAA4B,EAAE,YAAY;AAC1C,IAAA,6BAA6B,EAAE,WAAW;AAC1C,IAAA,6BAA6B,EAAE,aAAa;AAC5C,IAAA,8BAA8B,EAAE,YAAY;AAC5C,IAAA,+BAA+B,EAAE,aAAa;AAC9C,IAAA,+BAA+B,EAAE,aAAa;AAC9C,IAAA,+BAA+B,EAAE,aAAa;AAC9C,IAAA,gCAAgC,EAAE,aAAa;AAC/C,IAAA,gCAAgC,EAAE,aAAa;AAC/C,IAAA,gCAAgC,EAAE,aAAa;AAC/C,IAAA,+BAA+B,EAAE,aAAa;AAC9C,IAAA,yBAAyB,EAAE,WAAW;AACtC,IAAA,4BAA4B,EAAE,SAAS;AACvC,IAAA,4BAA4B,EAAE,WAAW;AACzC,IAAA,+BAA+B,EAAE,SAAS;AAC1C,IAAA,sBAAsB,EAAE,SAAS;AACjC,IAAA,2BAA2B,EAAE,oBAAoB;AACjD,IAAA,wBAAwB,EAAE,SAAS;AACnC,IAAA,sBAAsB,EAAE,UAAU;AAClC,IAAA,uBAAuB,EAAE,KAAK;;AAG9B,IAAA,4BAA4B,EAAE,kBAAkB;AAChD,IAAA,yBAAyB,EAAE,wBAAwB;AACnD,IAAA,2BAA2B,EAAE,uBAAuB;AACpD,IAAA,2BAA2B,EAAE,oBAAoB;AACjD,IAAA,wBAAwB,EAAE,sBAAsB;;AAGhD,IAAA,4BAA4B,EAAE,aAAa;;AAG3C,IAAA,qBAAqB,EAAE,mBAAmB;;AAG1C,IAAA,wBAAwB,EAAE,wBAAwB;AAClD,IAAA,0BAA0B,EAAE,uBAAuB;AACnD,IAAA,0BAA0B,EAAE,oBAAoB;AAChD,IAAA,qBAAqB,EAAE,8BAA8B;AACrD,IAAA,uBAAuB,EAAE,wBAAwB;AACjD,IAAA,mBAAmB,EAAE,4BAA4B;AACjD,IAAA,mBAAmB,EAAE,yBAAyB;;AAG9C,IAAA,4BAA4B,EAAE,SAAS;AACvC,IAAA,2BAA2B,EAAE,mBAAmB;AAChD,IAAA,2BAA2B,EAAE,wBAAwB;AACrD,IAAA,wBAAwB,EAAE,aAAa;AACvC,IAAA,2BAA2B,EAAE,aAAa;AAC1C,IAAA,0BAA0B,EAAE,gBAAgB;AAC5C,IAAA,yBAAyB,EAAE,iBAAiB;AAC5C,IAAA,uBAAuB,EAAE,aAAa;AACtC,IAAA,yBAAyB,EAAE,uBAAuB;;AAGlD,IAAA,qBAAqB,EAAE,MAAM;AAC7B,IAAA,uBAAuB,EAAE,UAAU;AACnC,IAAA,sBAAsB,EAAE,KAAK;;AAG7B,IAAA,sBAAsB,EAAE,MAAM;;AAG9B,IAAA,0BAA0B,EAAE,kBAAkB;AAC9C,IAAA,0BAA0B,EAAE,kBAAkB;AAC9C,IAAA,mBAAmB,EAAE,MAAM;AAC3B,IAAA,uBAAuB,EAAE,WAAW;AACpC,IAAA,0BAA0B,EAAE,iBAAiB;AAC7C,IAAA,yBAAyB,EAAE,YAAY;AACvC,IAAA,uBAAuB,EAAE,kBAAkB;AAC3C,IAAA,uBAAuB,EAAE,KAAK;AAC9B,IAAA,yBAAyB,EAAE,iCAAiC;AAC5D,IAAA,0BAA0B,EAAE,+BAA+B;AAC3D,IAAA,6BAA6B,EAAE,2BAA2B;AAC1D,IAAA,yBAAyB,EAAE,WAAW;AACtC,IAAA,yBAAyB,EAAE,oBAAoB;;AAG/C,IAAA,0BAA0B,EAAE,KAAK;AACjC,IAAA,yBAAyB,EAAE,MAAM;AACjC,IAAA,yBAAyB,EAAE,MAAM;AACjC,IAAA,6BAA6B,EAAE,OAAO;AACtC,IAAA,yBAAyB,EAAE,OAAO;AAClC,IAAA,uBAAuB,EAAE,KAAK;AAC9B,IAAA,gCAAgC,EAAE,kBAAkB;AACpD,IAAA,6BAA6B,EAAE,SAAS;AACxC,IAAA,0BAA0B,EAAE,WAAW;;AAGvC,IAAA,uBAAuB,EAAE,iBAAiB;AAC1C,IAAA,wBAAwB,EAAE,aAAa;AACvC,IAAA,qBAAqB,EAAE,KAAK;AAC5B,IAAA,uBAAuB,EAAE,KAAK;AAC9B,IAAA,wBAAwB,EAAE,UAAU;AACpC,IAAA,uBAAuB,EAAE,KAAK;AAC9B,IAAA,qBAAqB,EAAE,KAAK;AAC5B,IAAA,oBAAoB,EAAE,MAAM;AAC5B,IAAA,uBAAuB,EAAE,UAAU;AACnC,IAAA,sBAAsB,EAAE,KAAK;AAC7B,IAAA,sBAAsB,EAAE,SAAS;AACjC,IAAA,sBAAsB,EAAE,SAAS;AACjC,IAAA,oBAAoB,EAAE,IAAI;AAC1B,IAAA,mBAAmB,EAAE,OAAO;AAC5B,IAAA,mBAAmB,EAAE,IAAI;AACzB,IAAA,sBAAsB,EAAE,KAAK;AAC7B,IAAA,wBAAwB,EAAE,YAAY;AACtC,IAAA,wBAAwB,EAAE,UAAU;AACpC,IAAA,qBAAqB,EAAE,WAAW;;AAGlC,IAAA,qBAAqB,EAAE,MAAM;;AAG7B,IAAA,kBAAkB,EAAE,MAAM;AAC1B,IAAA,0BAA0B,EAAE,SAAS;;AAGrC,IAAA,uBAAuB,EAAE,kBAAkB;AAC3C,IAAA,0BAA0B,EAAE,wBAAwB;AACpD,IAAA,6BAA6B,EAAE,eAAe;AAC9C,IAAA,iCAAiC,EAAE,sDAAsD;;AAGzF,IAAA,qBAAqB,EAAE,UAAU;;AAGjC,IAAA,uBAAuB,EAAE,WAAW;AACpC,IAAA,0BAA0B,EAAE,6BAA6B;AACzD,IAAA,6BAA6B,EAAE,kBAAkB;AACjD,IAAA,sBAAsB,EAAE,cAAc;AACtC,IAAA,wBAAwB,EAAE,eAAe;AACzC,IAAA,uBAAuB,EAAE,WAAW;AACpC,IAAA,wBAAwB,EAAE,cAAc;AACxC,IAAA,wBAAwB,EAAE,cAAc;;AAGxC,IAAA,8BAA8B,EAAE,uBAAuB;AACvD,IAAA,4BAA4B,EAAE,eAAe;AAC7C,IAAA,oCAAoC,EAAE,6BAA6B;AACnE,IAAA,wBAAwB,EAAE,sBAAsB;AAChD,IAAA,mCAAmC,EAAE,6BAA6B;AAClE,IAAA,gCAAgC,EAAE,4BAA4B;AAC9D,IAAA,wBAAwB,EAAE,qBAAqB;AAC/C,IAAA,wBAAwB,EAAE,2BAA2B;AACrD,IAAA,wBAAwB,EAAE,oBAAoB;;;ACxMhD;;;;;;;;AAQG;AAMI,MAAM,iBAAiB,GAAsB;AAClD,IAAA,EAAE,EAAE,oBAAoB;AACxB,IAAA,EAAE,EAAE,oBAAoB;;AAGpB,SAAU,kBAAkB,CAAC,IAAiB,EAAA;IAClD,OAAO,iBAAiB,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC;AAC3D;AAEM,SAAU,iBAAiB,CAAC,IAAiB,EAAE,kBAAoC,EAAA;AACvF,IAAA,MAAM,QAAQ,GAAG,kBAAkB,CAAC,IAAI,CAAC;IACzC,IAAI,CAAC,kBAAkB,EAAE;AACvB,QAAA,OAAO,QAAQ;IACjB;AACA,IAAA,OAAO,EAAE,GAAG,QAAQ,EAAE,GAAG,kBAAkB,EAAE;AAC/C;SAEgB,qBAAqB,GAAA;AACnC,IAAA,OAAO,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC;AAC1C;;ACjCA;;ACAA;;AAEG;;;;"}
@@ -1363,6 +1363,11 @@ class ZIndexDbService {
1363
1363
  }
1364
1364
  }
1365
1365
 
1366
+ const Z_LANG_TO_LOCALE = {
1367
+ vi: 'vi-VN',
1368
+ en: 'en-US',
1369
+ };
1370
+
1366
1371
  const Z_THEME_CONFIG = new InjectionToken('Z_THEME_CONFIG');
1367
1372
  const Z_DEFAULT_THEME = 'neutral';
1368
1373
  const Z_THEME_CACHE_KEY = 'Z_THEME';
@@ -1403,6 +1408,12 @@ class ZTranslateService {
1403
1408
  getLang() {
1404
1409
  return this._translate.getCurrentLang() ?? 'vi';
1405
1410
  }
1411
+ getLocale() {
1412
+ return Z_LANG_TO_LOCALE[this.currentLang()] ?? 'vi-VN';
1413
+ }
1414
+ locale() {
1415
+ return computed(() => Z_LANG_TO_LOCALE[this.currentLang()] ?? 'vi-VN');
1416
+ }
1406
1417
  instant(key, params) {
1407
1418
  if (!key) {
1408
1419
  return '';