{"version":3,"file":"primeng-config.mjs","sources":["../../src/config/themeprovider.ts","../../src/config/primeng.ts","../../src/config/provideprimeng.ts","../../src/config/primeng-config.ts"],"sourcesContent":["import { DOCUMENT } from '@angular/common';\nimport { effect, inject, Injectable, signal, untracked } from '@angular/core';\nimport { Theme, ThemeService } from '@primeuix/styled';\nimport { BaseStyle } from 'primeng/base';\n\nexport type ThemeType = { preset?: any; options?: any } | 'none' | boolean | undefined;\n\nexport type ThemeConfigType = {\n    theme?: ThemeType;\n    csp?: {\n        nonce: string | undefined;\n    };\n};\n\n@Injectable({ providedIn: 'root' })\nexport class ThemeProvider {\n    // @todo define type for theme\n    theme = signal<any>(undefined);\n\n    csp = signal<{ nonce: string | undefined }>({ nonce: undefined });\n\n    isThemeChanged: boolean = false;\n\n    public document: Document = inject(DOCUMENT);\n\n    baseStyle: BaseStyle = inject(BaseStyle);\n\n    constructor() {\n        effect(() => {\n            ThemeService.on('theme:change', (newTheme) => {\n                untracked(() => {\n                    this.isThemeChanged = true;\n                    this.theme.set(newTheme);\n                    // this.onThemeChange(this.theme());\n                });\n            });\n        });\n        effect(() => {\n            const themeValue = this.theme();\n            if (this.document && themeValue) {\n                if (!this.isThemeChanged) {\n                    this.onThemeChange(themeValue);\n                }\n                this.isThemeChanged = false;\n            }\n        });\n    }\n\n    ngOnDestroy() {\n        Theme.clearLoadedStyleNames();\n        ThemeService.clear();\n    }\n\n    onThemeChange(value: any) {\n        Theme.setTheme(value);\n        if (this.document) {\n            this.loadCommonTheme();\n        }\n    }\n\n    loadCommonTheme() {\n        if (this.theme() === 'none') return;\n\n        // common\n        if (!Theme.isStyleNameLoaded('common')) {\n            const { primitive, semantic, global, style } = this.baseStyle.getCommonTheme?.() || {};\n            const styleOptions = { nonce: this.csp?.()?.nonce };\n\n            this.baseStyle.load(primitive?.css, { name: 'primitive-variables', ...styleOptions });\n            this.baseStyle.load(semantic?.css, { name: 'semantic-variables', ...styleOptions });\n            this.baseStyle.load(global?.css, { name: 'global-variables', ...styleOptions });\n            this.baseStyle.loadGlobalTheme({ name: 'global-style', ...styleOptions }, style);\n\n            Theme.setLoadedStyleName('common');\n        }\n    }\n\n    setThemeConfig(config: ThemeConfigType): void {\n        const { theme, csp } = config || {};\n        if (theme) this.theme.set(theme);\n        if (csp) this.csp.set(csp);\n    }\n}\n","import { inject, Injectable, PLATFORM_ID, signal } from '@angular/core';\nimport { FilterMatchMode, OverlayOptions, Translation } from 'primeng/api';\nimport { Subject } from 'rxjs';\nimport { ThemeConfigType, ThemeProvider } from './themeprovider';\n\n// Type for zIndex\nexport type ZIndex = {\n    modal: number;\n    overlay: number;\n    menu: number;\n    tooltip: number;\n};\n\nexport type PrimeNGConfigType = {\n    ripple?: boolean;\n    inputStyle?: 'outlined' | 'filled';\n    inputVariant?: 'outlined' | 'filled';\n    csp?: {\n        nonce: string | undefined;\n    };\n    overlayOptions?: OverlayOptions;\n    translation?: Translation;\n    zIndex?: ZIndex;\n    filterMatchModeOptions?: any;\n} & ThemeConfigType;\n\n@Injectable({ providedIn: 'root' })\nexport class PrimeNG extends ThemeProvider {\n    ripple = signal<boolean>(false);\n\n    public platformId: any = inject(PLATFORM_ID);\n\n    inputStyle = signal<'outlined' | 'filled'>(null);\n\n    inputVariant = signal<'outlined' | 'filled'>(null);\n\n    overlayOptions: OverlayOptions = {};\n\n    csp = signal<{ nonce: string | undefined }>({ nonce: undefined });\n\n    filterMatchModeOptions = {\n        text: [FilterMatchMode.STARTS_WITH, FilterMatchMode.CONTAINS, FilterMatchMode.NOT_CONTAINS, FilterMatchMode.ENDS_WITH, FilterMatchMode.EQUALS, FilterMatchMode.NOT_EQUALS],\n        numeric: [FilterMatchMode.EQUALS, FilterMatchMode.NOT_EQUALS, FilterMatchMode.LESS_THAN, FilterMatchMode.LESS_THAN_OR_EQUAL_TO, FilterMatchMode.GREATER_THAN, FilterMatchMode.GREATER_THAN_OR_EQUAL_TO],\n        date: [FilterMatchMode.DATE_IS, FilterMatchMode.DATE_IS_NOT, FilterMatchMode.DATE_BEFORE, FilterMatchMode.DATE_AFTER]\n    };\n\n    public translation: Translation = {\n        startsWith: 'Starts with',\n        contains: 'Contains',\n        notContains: 'Not contains',\n        endsWith: 'Ends with',\n        equals: 'Equals',\n        notEquals: 'Not equals',\n        noFilter: 'No Filter',\n        lt: 'Less than',\n        lte: 'Less than or equal to',\n        gt: 'Greater than',\n        gte: 'Greater than or equal to',\n        is: 'Is',\n        isNot: 'Is not',\n        before: 'Before',\n        after: 'After',\n        dateIs: 'Date is',\n        dateIsNot: 'Date is not',\n        dateBefore: 'Date is before',\n        dateAfter: 'Date is after',\n        clear: 'Clear',\n        apply: 'Apply',\n        matchAll: 'Match All',\n        matchAny: 'Match Any',\n        addRule: 'Add Rule',\n        removeRule: 'Remove Rule',\n        accept: 'Yes',\n        reject: 'No',\n        choose: 'Choose',\n        upload: 'Upload',\n        cancel: 'Cancel',\n        pending: 'Pending',\n        fileSizeTypes: ['B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'],\n        dayNames: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'],\n        dayNamesShort: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],\n        dayNamesMin: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'],\n        monthNames: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],\n        monthNamesShort: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],\n        chooseYear: 'Choose Year',\n        chooseMonth: 'Choose Month',\n        chooseDate: 'Choose Date',\n        prevDecade: 'Previous Decade',\n        nextDecade: 'Next Decade',\n        prevYear: 'Previous Year',\n        nextYear: 'Next Year',\n        prevMonth: 'Previous Month',\n        nextMonth: 'Next Month',\n        prevHour: 'Previous Hour',\n        nextHour: 'Next Hour',\n        prevMinute: 'Previous Minute',\n        nextMinute: 'Next Minute',\n        prevSecond: 'Previous Second',\n        nextSecond: 'Next Second',\n        am: 'am',\n        pm: 'pm',\n        dateFormat: 'mm/dd/yy',\n        firstDayOfWeek: 0,\n        today: 'Today',\n        weekHeader: 'Wk',\n        weak: 'Weak',\n        medium: 'Medium',\n        strong: 'Strong',\n        passwordPrompt: 'Enter a password',\n        emptyMessage: 'No results found',\n        searchMessage: 'Search results are available',\n        selectionMessage: '{0} items selected',\n        emptySelectionMessage: 'No selected item',\n        emptySearchMessage: 'No results found',\n        emptyFilterMessage: 'No results found',\n        fileChosenMessage: 'Files',\n        noFileChosenMessage: 'No file chosen',\n        aria: {\n            trueLabel: 'True',\n            falseLabel: 'False',\n            nullLabel: 'Not Selected',\n            star: '1 star',\n            stars: '{star} stars',\n            selectAll: 'All items selected',\n            unselectAll: 'All items unselected',\n            close: 'Close',\n            previous: 'Previous',\n            next: 'Next',\n            navigation: 'Navigation',\n            scrollTop: 'Scroll Top',\n            moveTop: 'Move Top',\n            moveUp: 'Move Up',\n            moveDown: 'Move Down',\n            moveBottom: 'Move Bottom',\n            moveToTarget: 'Move to Target',\n            moveToSource: 'Move to Source',\n            moveAllToTarget: 'Move All to Target',\n            moveAllToSource: 'Move All to Source',\n            pageLabel: '{page}',\n            firstPageLabel: 'First Page',\n            lastPageLabel: 'Last Page',\n            nextPageLabel: 'Next Page',\n            prevPageLabel: 'Previous Page',\n            rowsPerPageLabel: 'Rows per page',\n            previousPageLabel: 'Previous Page',\n            jumpToPageDropdownLabel: 'Jump to Page Dropdown',\n            jumpToPageInputLabel: 'Jump to Page Input',\n            selectRow: 'Row Selected',\n            unselectRow: 'Row Unselected',\n            expandRow: 'Row Expanded',\n            collapseRow: 'Row Collapsed',\n            showFilterMenu: 'Show Filter Menu',\n            hideFilterMenu: 'Hide Filter Menu',\n            filterOperator: 'Filter Operator',\n            filterConstraint: 'Filter Constraint',\n            editRow: 'Row Edit',\n            saveEdit: 'Save Edit',\n            cancelEdit: 'Cancel Edit',\n            listView: 'List View',\n            gridView: 'Grid View',\n            slide: 'Slide',\n            slideNumber: '{slideNumber}',\n            zoomImage: 'Zoom Image',\n            zoomIn: 'Zoom In',\n            zoomOut: 'Zoom Out',\n            rotateRight: 'Rotate Right',\n            rotateLeft: 'Rotate Left',\n            listLabel: 'Option List',\n            selectColor: 'Select a color',\n            removeLabel: 'Remove',\n            browseFiles: 'Browse Files',\n            maximizeLabel: 'Maximize'\n        }\n    };\n\n    zIndex: ZIndex = {\n        modal: 1100,\n        overlay: 1000,\n        menu: 1000,\n        tooltip: 1100\n    };\n\n    private translationSource = new Subject<any>();\n\n    translationObserver = this.translationSource.asObservable();\n\n    getTranslation(key: string): any {\n        return this.translation[key as keyof typeof this.translation];\n    }\n\n    setTranslation(value: Translation) {\n        this.translation = { ...this.translation, ...value };\n        this.translationSource.next(this.translation);\n    }\n\n    setConfig(config: PrimeNGConfigType): void {\n        const { csp, ripple, inputStyle, inputVariant, theme, overlayOptions, translation } = config || {};\n\n        if (csp) this.csp.set(csp);\n        if (ripple) this.ripple.set(ripple);\n        if (inputStyle) this.inputStyle.set(inputStyle);\n        if (inputVariant) this.inputVariant.set(inputVariant);\n        if (overlayOptions) this.overlayOptions = overlayOptions;\n        if (translation) this.setTranslation(translation);\n\n        if (theme)\n            this.setThemeConfig({\n                theme,\n                csp\n            } as ThemeConfigType);\n    }\n}\n","import { EnvironmentProviders, inject, InjectionToken, makeEnvironmentProviders, provideAppInitializer } from '@angular/core';\nimport { PrimeNG, PrimeNGConfigType } from './primeng';\n\nexport const PRIME_NG_CONFIG = new InjectionToken<PrimeNGConfigType>('PRIME_NG_CONFIG');\n\nexport function providePrimeNG(...features: PrimeNGConfigType[]): EnvironmentProviders {\n    const providers = features?.map((feature) => ({\n        provide: PRIME_NG_CONFIG,\n        useValue: feature,\n        multi: false\n    }));\n\n    const initializer = provideAppInitializer(() => {\n        const PrimeNGConfig = inject(PrimeNG);\n        features?.forEach((feature) => PrimeNGConfig.setConfig(feature));\n        return;\n    });\n\n    return makeEnvironmentProviders([...providers, initializer]);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;;;;;MAea,aAAa,CAAA;;AAEtB,IAAA,KAAK,GAAG,MAAM,CAAM,SAAS,CAAC;IAE9B,GAAG,GAAG,MAAM,CAAgC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;IAEjE,cAAc,GAAY,KAAK;AAExB,IAAA,QAAQ,GAAa,MAAM,CAAC,QAAQ,CAAC;AAE5C,IAAA,SAAS,GAAc,MAAM,CAAC,SAAS,CAAC;AAExC,IAAA,WAAA,GAAA;QACI,MAAM,CAAC,MAAK;YACR,YAAY,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,QAAQ,KAAI;gBACzC,SAAS,CAAC,MAAK;AACX,oBAAA,IAAI,CAAC,cAAc,GAAG,IAAI;AAC1B,oBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;;AAE5B,iBAAC,CAAC;AACN,aAAC,CAAC;AACN,SAAC,CAAC;QACF,MAAM,CAAC,MAAK;AACR,YAAA,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,EAAE;AAC/B,YAAA,IAAI,IAAI,CAAC,QAAQ,IAAI,UAAU,EAAE;AAC7B,gBAAA,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;AACtB,oBAAA,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC;;AAElC,gBAAA,IAAI,CAAC,cAAc,GAAG,KAAK;;AAEnC,SAAC,CAAC;;IAGN,WAAW,GAAA;QACP,KAAK,CAAC,qBAAqB,EAAE;QAC7B,YAAY,CAAC,KAAK,EAAE;;AAGxB,IAAA,aAAa,CAAC,KAAU,EAAA;AACpB,QAAA,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC;AACrB,QAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;YACf,IAAI,CAAC,eAAe,EAAE;;;IAI9B,eAAe,GAAA;AACX,QAAA,IAAI,IAAI,CAAC,KAAK,EAAE,KAAK,MAAM;YAAE;;QAG7B,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE;AACpC,YAAA,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,IAAI,IAAI,EAAE;AACtF,YAAA,MAAM,YAAY,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE;AAEnD,YAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,GAAG,YAAY,EAAE,CAAC;AACrF,YAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,GAAG,YAAY,EAAE,CAAC;AACnF,YAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,GAAG,YAAY,EAAE,CAAC;AAC/E,YAAA,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,YAAY,EAAE,EAAE,KAAK,CAAC;AAEhF,YAAA,KAAK,CAAC,kBAAkB,CAAC,QAAQ,CAAC;;;AAI1C,IAAA,cAAc,CAAC,MAAuB,EAAA;QAClC,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,MAAM,IAAI,EAAE;AACnC,QAAA,IAAI,KAAK;AAAE,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;AAChC,QAAA,IAAI,GAAG;AAAE,YAAA,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;;uGAjErB,aAAa,GAAA,CAAA,EAAA;gEAAb,aAAa,EAAA,OAAA,EAAb,aAAa,CAAA,IAAA,EAAA,UAAA,EADA,MAAM,EAAA,CAAA;;iFACnB,aAAa,EAAA,CAAA;cADzB,UAAU;eAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;ACa5B,MAAO,OAAQ,SAAQ,aAAa,CAAA;AACtC,IAAA,MAAM,GAAG,MAAM,CAAU,KAAK,CAAC;AAExB,IAAA,UAAU,GAAQ,MAAM,CAAC,WAAW,CAAC;AAE5C,IAAA,UAAU,GAAG,MAAM,CAAwB,IAAI,CAAC;AAEhD,IAAA,YAAY,GAAG,MAAM,CAAwB,IAAI,CAAC;IAElD,cAAc,GAAmB,EAAE;IAEnC,GAAG,GAAG,MAAM,CAAgC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;AAEjE,IAAA,sBAAsB,GAAG;QACrB,IAAI,EAAE,CAAC,eAAe,CAAC,WAAW,EAAE,eAAe,CAAC,QAAQ,EAAE,eAAe,CAAC,YAAY,EAAE,eAAe,CAAC,SAAS,EAAE,eAAe,CAAC,MAAM,EAAE,eAAe,CAAC,UAAU,CAAC;QAC1K,OAAO,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,eAAe,CAAC,UAAU,EAAE,eAAe,CAAC,SAAS,EAAE,eAAe,CAAC,qBAAqB,EAAE,eAAe,CAAC,YAAY,EAAE,eAAe,CAAC,wBAAwB,CAAC;AACvM,QAAA,IAAI,EAAE,CAAC,eAAe,CAAC,OAAO,EAAE,eAAe,CAAC,WAAW,EAAE,eAAe,CAAC,WAAW,EAAE,eAAe,CAAC,UAAU;KACvH;AAEM,IAAA,WAAW,GAAgB;AAC9B,QAAA,UAAU,EAAE,aAAa;AACzB,QAAA,QAAQ,EAAE,UAAU;AACpB,QAAA,WAAW,EAAE,cAAc;AAC3B,QAAA,QAAQ,EAAE,WAAW;AACrB,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,SAAS,EAAE,YAAY;AACvB,QAAA,QAAQ,EAAE,WAAW;AACrB,QAAA,EAAE,EAAE,WAAW;AACf,QAAA,GAAG,EAAE,uBAAuB;AAC5B,QAAA,EAAE,EAAE,cAAc;AAClB,QAAA,GAAG,EAAE,0BAA0B;AAC/B,QAAA,EAAE,EAAE,IAAI;AACR,QAAA,KAAK,EAAE,QAAQ;AACf,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,KAAK,EAAE,OAAO;AACd,QAAA,MAAM,EAAE,SAAS;AACjB,QAAA,SAAS,EAAE,aAAa;AACxB,QAAA,UAAU,EAAE,gBAAgB;AAC5B,QAAA,SAAS,EAAE,eAAe;AAC1B,QAAA,KAAK,EAAE,OAAO;AACd,QAAA,KAAK,EAAE,OAAO;AACd,QAAA,QAAQ,EAAE,WAAW;AACrB,QAAA,QAAQ,EAAE,WAAW;AACrB,QAAA,OAAO,EAAE,UAAU;AACnB,QAAA,UAAU,EAAE,aAAa;AACzB,QAAA,MAAM,EAAE,KAAK;AACb,QAAA,MAAM,EAAE,IAAI;AACZ,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,OAAO,EAAE,SAAS;AAClB,QAAA,aAAa,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;AACpE,QAAA,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,CAAC;AACxF,QAAA,aAAa,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;AAChE,QAAA,WAAW,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;QACvD,UAAU,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC;QACtI,eAAe,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;AACrG,QAAA,UAAU,EAAE,aAAa;AACzB,QAAA,WAAW,EAAE,cAAc;AAC3B,QAAA,UAAU,EAAE,aAAa;AACzB,QAAA,UAAU,EAAE,iBAAiB;AAC7B,QAAA,UAAU,EAAE,aAAa;AACzB,QAAA,QAAQ,EAAE,eAAe;AACzB,QAAA,QAAQ,EAAE,WAAW;AACrB,QAAA,SAAS,EAAE,gBAAgB;AAC3B,QAAA,SAAS,EAAE,YAAY;AACvB,QAAA,QAAQ,EAAE,eAAe;AACzB,QAAA,QAAQ,EAAE,WAAW;AACrB,QAAA,UAAU,EAAE,iBAAiB;AAC7B,QAAA,UAAU,EAAE,aAAa;AACzB,QAAA,UAAU,EAAE,iBAAiB;AAC7B,QAAA,UAAU,EAAE,aAAa;AACzB,QAAA,EAAE,EAAE,IAAI;AACR,QAAA,EAAE,EAAE,IAAI;AACR,QAAA,UAAU,EAAE,UAAU;AACtB,QAAA,cAAc,EAAE,CAAC;AACjB,QAAA,KAAK,EAAE,OAAO;AACd,QAAA,UAAU,EAAE,IAAI;AAChB,QAAA,IAAI,EAAE,MAAM;AACZ,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,cAAc,EAAE,kBAAkB;AAClC,QAAA,YAAY,EAAE,kBAAkB;AAChC,QAAA,aAAa,EAAE,8BAA8B;AAC7C,QAAA,gBAAgB,EAAE,oBAAoB;AACtC,QAAA,qBAAqB,EAAE,kBAAkB;AACzC,QAAA,kBAAkB,EAAE,kBAAkB;AACtC,QAAA,kBAAkB,EAAE,kBAAkB;AACtC,QAAA,iBAAiB,EAAE,OAAO;AAC1B,QAAA,mBAAmB,EAAE,gBAAgB;AACrC,QAAA,IAAI,EAAE;AACF,YAAA,SAAS,EAAE,MAAM;AACjB,YAAA,UAAU,EAAE,OAAO;AACnB,YAAA,SAAS,EAAE,cAAc;AACzB,YAAA,IAAI,EAAE,QAAQ;AACd,YAAA,KAAK,EAAE,cAAc;AACrB,YAAA,SAAS,EAAE,oBAAoB;AAC/B,YAAA,WAAW,EAAE,sBAAsB;AACnC,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,QAAQ,EAAE,UAAU;AACpB,YAAA,IAAI,EAAE,MAAM;AACZ,YAAA,UAAU,EAAE,YAAY;AACxB,YAAA,SAAS,EAAE,YAAY;AACvB,YAAA,OAAO,EAAE,UAAU;AACnB,YAAA,MAAM,EAAE,SAAS;AACjB,YAAA,QAAQ,EAAE,WAAW;AACrB,YAAA,UAAU,EAAE,aAAa;AACzB,YAAA,YAAY,EAAE,gBAAgB;AAC9B,YAAA,YAAY,EAAE,gBAAgB;AAC9B,YAAA,eAAe,EAAE,oBAAoB;AACrC,YAAA,eAAe,EAAE,oBAAoB;AACrC,YAAA,SAAS,EAAE,QAAQ;AACnB,YAAA,cAAc,EAAE,YAAY;AAC5B,YAAA,aAAa,EAAE,WAAW;AAC1B,YAAA,aAAa,EAAE,WAAW;AAC1B,YAAA,aAAa,EAAE,eAAe;AAC9B,YAAA,gBAAgB,EAAE,eAAe;AACjC,YAAA,iBAAiB,EAAE,eAAe;AAClC,YAAA,uBAAuB,EAAE,uBAAuB;AAChD,YAAA,oBAAoB,EAAE,oBAAoB;AAC1C,YAAA,SAAS,EAAE,cAAc;AACzB,YAAA,WAAW,EAAE,gBAAgB;AAC7B,YAAA,SAAS,EAAE,cAAc;AACzB,YAAA,WAAW,EAAE,eAAe;AAC5B,YAAA,cAAc,EAAE,kBAAkB;AAClC,YAAA,cAAc,EAAE,kBAAkB;AAClC,YAAA,cAAc,EAAE,iBAAiB;AACjC,YAAA,gBAAgB,EAAE,mBAAmB;AACrC,YAAA,OAAO,EAAE,UAAU;AACnB,YAAA,QAAQ,EAAE,WAAW;AACrB,YAAA,UAAU,EAAE,aAAa;AACzB,YAAA,QAAQ,EAAE,WAAW;AACrB,YAAA,QAAQ,EAAE,WAAW;AACrB,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,WAAW,EAAE,eAAe;AAC5B,YAAA,SAAS,EAAE,YAAY;AACvB,YAAA,MAAM,EAAE,SAAS;AACjB,YAAA,OAAO,EAAE,UAAU;AACnB,YAAA,WAAW,EAAE,cAAc;AAC3B,YAAA,UAAU,EAAE,aAAa;AACzB,YAAA,SAAS,EAAE,aAAa;AACxB,YAAA,WAAW,EAAE,gBAAgB;AAC7B,YAAA,WAAW,EAAE,QAAQ;AACrB,YAAA,WAAW,EAAE,cAAc;AAC3B,YAAA,aAAa,EAAE;AAClB;KACJ;AAED,IAAA,MAAM,GAAW;AACb,QAAA,KAAK,EAAE,IAAI;AACX,QAAA,OAAO,EAAE,IAAI;AACb,QAAA,IAAI,EAAE,IAAI;AACV,QAAA,OAAO,EAAE;KACZ;AAEO,IAAA,iBAAiB,GAAG,IAAI,OAAO,EAAO;AAE9C,IAAA,mBAAmB,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE;AAE3D,IAAA,cAAc,CAAC,GAAW,EAAA;AACtB,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAoC,CAAC;;AAGjE,IAAA,cAAc,CAAC,KAAkB,EAAA;AAC7B,QAAA,IAAI,CAAC,WAAW,GAAG,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,GAAG,KAAK,EAAE;QACpD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;;AAGjD,IAAA,SAAS,CAAC,MAAyB,EAAA;AAC/B,QAAA,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,GAAG,MAAM,IAAI,EAAE;AAElG,QAAA,IAAI,GAAG;AAAE,YAAA,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;AAC1B,QAAA,IAAI,MAAM;AAAE,YAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;AACnC,QAAA,IAAI,UAAU;AAAE,YAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC;AAC/C,QAAA,IAAI,YAAY;AAAE,YAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC;AACrD,QAAA,IAAI,cAAc;AAAE,YAAA,IAAI,CAAC,cAAc,GAAG,cAAc;AACxD,QAAA,IAAI,WAAW;AAAE,YAAA,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC;AAEjD,QAAA,IAAI,KAAK;YACL,IAAI,CAAC,cAAc,CAAC;gBAChB,KAAK;gBACL;AACgB,aAAA,CAAC;;AAtLpB,IAAA,OAAA,IAAA,iBAAA,CAAA,MAAA,EAAA,IAAA,oBAAA,CAAA,CAAA,OAAA,SAAA,eAAA,CAAA,iBAAA,EAAA,EAAA,OAAA,CAAA,oBAAA,KAAA,oBAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,OAAO,yBAAP,OAAO,CAAA,CAAA,EAAA,CAAA,EAAA,GAAA;gEAAP,OAAO,EAAA,OAAA,EAAP,OAAO,CAAA,IAAA,EAAA,UAAA,EADM,MAAM,EAAA,CAAA;;iFACnB,OAAO,EAAA,CAAA;cADnB,UAAU;eAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;MCvBrB,eAAe,GAAG,IAAI,cAAc,CAAoB,iBAAiB;AAEtE,SAAA,cAAc,CAAC,GAAG,QAA6B,EAAA;IAC3D,MAAM,SAAS,GAAG,QAAQ,EAAE,GAAG,CAAC,CAAC,OAAO,MAAM;AAC1C,QAAA,OAAO,EAAE,eAAe;AACxB,QAAA,QAAQ,EAAE,OAAO;AACjB,QAAA,KAAK,EAAE;AACV,KAAA,CAAC,CAAC;AAEH,IAAA,MAAM,WAAW,GAAG,qBAAqB,CAAC,MAAK;AAC3C,QAAA,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC;AACrC,QAAA,QAAQ,EAAE,OAAO,CAAC,CAAC,OAAO,KAAK,aAAa,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAChE;AACJ,KAAC,CAAC;IAEF,OAAO,wBAAwB,CAAC,CAAC,GAAG,SAAS,EAAE,WAAW,CAAC,CAAC;AAChE;;ACnBA;;AAEG;;;;"}