ngx-semantic 2.0.7-beta.0 → 2.0.7-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/ngx-semantic-collections-breadcrumb.mjs +13 -10
- package/fesm2022/ngx-semantic-collections-breadcrumb.mjs.map +1 -1
- package/fesm2022/ngx-semantic-collections-form.mjs +987 -16
- package/fesm2022/ngx-semantic-collections-form.mjs.map +1 -1
- package/fesm2022/ngx-semantic-collections-grid.mjs +13 -10
- package/fesm2022/ngx-semantic-collections-grid.mjs.map +1 -1
- package/fesm2022/ngx-semantic-collections-menu.mjs +25 -13
- package/fesm2022/ngx-semantic-collections-menu.mjs.map +1 -1
- package/fesm2022/ngx-semantic-collections-message.mjs +20 -20
- package/fesm2022/ngx-semantic-collections-message.mjs.map +1 -1
- package/fesm2022/ngx-semantic-collections-table.mjs +17 -13
- package/fesm2022/ngx-semantic-collections-table.mjs.map +1 -1
- package/fesm2022/ngx-semantic-core-base.mjs +1 -0
- package/fesm2022/ngx-semantic-core-base.mjs.map +1 -1
- package/fesm2022/ngx-semantic-core-util.mjs.map +1 -1
- package/fesm2022/ngx-semantic-elements-button.mjs +9 -7
- package/fesm2022/ngx-semantic-elements-button.mjs.map +1 -1
- package/fesm2022/ngx-semantic-elements-container.mjs.map +1 -1
- package/fesm2022/ngx-semantic-elements-divider.mjs.map +1 -1
- package/fesm2022/ngx-semantic-elements-flag.mjs +5 -4
- package/fesm2022/ngx-semantic-elements-flag.mjs.map +1 -1
- package/fesm2022/ngx-semantic-elements-header.mjs.map +1 -1
- package/fesm2022/ngx-semantic-elements-icon.mjs +5 -4
- package/fesm2022/ngx-semantic-elements-icon.mjs.map +1 -1
- package/fesm2022/ngx-semantic-elements-image.mjs +5 -4
- package/fesm2022/ngx-semantic-elements-image.mjs.map +1 -1
- package/fesm2022/ngx-semantic-elements-input.mjs +5 -4
- package/fesm2022/ngx-semantic-elements-input.mjs.map +1 -1
- package/fesm2022/ngx-semantic-elements-label.mjs +5 -4
- package/fesm2022/ngx-semantic-elements-label.mjs.map +1 -1
- package/fesm2022/ngx-semantic-elements-list.mjs.map +1 -1
- package/fesm2022/ngx-semantic-elements-loader.mjs.map +1 -1
- package/fesm2022/ngx-semantic-elements-placeholder.mjs.map +1 -1
- package/fesm2022/ngx-semantic-elements-rail.mjs.map +1 -1
- package/fesm2022/ngx-semantic-elements-reveal.mjs.map +1 -1
- package/fesm2022/ngx-semantic-elements-segment.mjs +5 -4
- package/fesm2022/ngx-semantic-elements-segment.mjs.map +1 -1
- package/fesm2022/ngx-semantic-elements-steps.mjs +5 -4
- package/fesm2022/ngx-semantic-elements-steps.mjs.map +1 -1
- package/fesm2022/ngx-semantic-modules-accordion.mjs.map +1 -1
- package/fesm2022/ngx-semantic-modules-checkbox.mjs +19 -19
- package/fesm2022/ngx-semantic-modules-checkbox.mjs.map +1 -1
- package/fesm2022/ngx-semantic-modules-dimmer.mjs +42 -33
- package/fesm2022/ngx-semantic-modules-dimmer.mjs.map +1 -1
- package/fesm2022/ngx-semantic-modules-dropdown.mjs.map +1 -1
- package/fesm2022/ngx-semantic-modules-embed.mjs +22 -22
- package/fesm2022/ngx-semantic-modules-embed.mjs.map +1 -1
- package/fesm2022/ngx-semantic-modules-modal.mjs +31 -32
- package/fesm2022/ngx-semantic-modules-modal.mjs.map +1 -1
- package/fesm2022/ngx-semantic-modules-popup.mjs +22 -23
- package/fesm2022/ngx-semantic-modules-popup.mjs.map +1 -1
- package/fesm2022/ngx-semantic-modules-progress.mjs +6 -6
- package/fesm2022/ngx-semantic-modules-progress.mjs.map +1 -1
- package/fesm2022/ngx-semantic-modules-rating.mjs +15 -17
- package/fesm2022/ngx-semantic-modules-rating.mjs.map +1 -1
- package/fesm2022/ngx-semantic-modules-search.mjs +34 -34
- package/fesm2022/ngx-semantic-modules-search.mjs.map +1 -1
- package/fesm2022/ngx-semantic-modules-select.mjs +87 -88
- package/fesm2022/ngx-semantic-modules-select.mjs.map +1 -1
- package/fesm2022/ngx-semantic-modules-shape.mjs +6 -6
- package/fesm2022/ngx-semantic-modules-shape.mjs.map +1 -1
- package/fesm2022/ngx-semantic-modules-sidebar.mjs +13 -12
- package/fesm2022/ngx-semantic-modules-sidebar.mjs.map +1 -1
- package/fesm2022/ngx-semantic-modules-sticky.mjs +9 -12
- package/fesm2022/ngx-semantic-modules-sticky.mjs.map +1 -1
- package/fesm2022/ngx-semantic-modules-tabs.mjs +30 -30
- package/fesm2022/ngx-semantic-modules-tabs.mjs.map +1 -1
- package/fesm2022/ngx-semantic-modules-transition.mjs +721 -0
- package/fesm2022/ngx-semantic-modules-transition.mjs.map +1 -0
- package/fesm2022/ngx-semantic-views-advertisement.mjs +5 -4
- package/fesm2022/ngx-semantic-views-advertisement.mjs.map +1 -1
- package/fesm2022/ngx-semantic-views-card.mjs +6 -9
- package/fesm2022/ngx-semantic-views-card.mjs.map +1 -1
- package/fesm2022/ngx-semantic-views-comment.mjs.map +1 -1
- package/fesm2022/ngx-semantic-views-feed.mjs +26 -26
- package/fesm2022/ngx-semantic-views-feed.mjs.map +1 -1
- package/fesm2022/ngx-semantic-views-items.mjs +13 -10
- package/fesm2022/ngx-semantic-views-items.mjs.map +1 -1
- package/fesm2022/ngx-semantic-views-statistics.mjs +16 -16
- package/fesm2022/ngx-semantic-views-statistics.mjs.map +1 -1
- package/fesm2022/ngx-semantic.mjs +11 -5
- package/fesm2022/ngx-semantic.mjs.map +1 -1
- package/modules/transition/package.json +4 -0
- package/package.json +5 -1
- package/types/ngx-semantic-collections-breadcrumb.d.ts +4 -17
- package/types/ngx-semantic-collections-form.d.ts +150 -20
- package/types/ngx-semantic-collections-grid.d.ts +4 -17
- package/types/ngx-semantic-collections-menu.d.ts +4 -17
- package/types/ngx-semantic-collections-message.d.ts +1 -3
- package/types/ngx-semantic-collections-table.d.ts +5 -22
- package/types/ngx-semantic-core-base.d.ts +1 -1
- package/types/ngx-semantic-elements-button.d.ts +3 -8
- package/types/ngx-semantic-elements-flag.d.ts +2 -3
- package/types/ngx-semantic-elements-icon.d.ts +1 -2
- package/types/ngx-semantic-elements-image.d.ts +2 -7
- package/types/ngx-semantic-elements-input.d.ts +2 -7
- package/types/ngx-semantic-elements-label.d.ts +2 -7
- package/types/ngx-semantic-elements-segment.d.ts +1 -6
- package/types/ngx-semantic-elements-steps.d.ts +1 -6
- package/types/ngx-semantic-modules-checkbox.d.ts +3 -4
- package/types/ngx-semantic-modules-dimmer.d.ts +2 -3
- package/types/ngx-semantic-modules-embed.d.ts +2 -5
- package/types/ngx-semantic-modules-modal.d.ts +2 -2
- package/types/ngx-semantic-modules-popup.d.ts +2 -4
- package/types/ngx-semantic-modules-rating.d.ts +4 -4
- package/types/ngx-semantic-modules-select.d.ts +1 -2
- package/types/ngx-semantic-modules-shape.d.ts +1 -2
- package/types/ngx-semantic-modules-sidebar.d.ts +1 -15
- package/types/ngx-semantic-modules-sticky.d.ts +1 -2
- package/types/ngx-semantic-modules-transition.d.ts +107 -0
- package/types/ngx-semantic-views-advertisement.d.ts +2 -7
- package/types/ngx-semantic-views-card.d.ts +2 -2
- package/types/ngx-semantic-views-feed.d.ts +2 -11
- package/types/ngx-semantic-views-items.d.ts +4 -9
- package/types/ngx-semantic-views-statistics.d.ts +13 -26
- package/types/ngx-semantic.d.ts +2 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngx-semantic-collections-form.mjs","sources":["../../src/collections/form/form-field.directive.ts","../../src/collections/form/form-fields.directive.ts","../../src/collections/form/form.directive.ts","../../src/collections/form/form.module.ts","../../src/collections/form/public-api.ts","../../src/collections/form/ngx-semantic-collections-form.ts"],"sourcesContent":["/**\n * Created by bolor on 6/5/2020\n */\n\nimport {Directive, ElementRef, Input} from '@angular/core';\nimport {SuiWidth} from 'ngx-semantic/core/enums';\nimport {ClassUtils, InputBoolean} from 'ngx-semantic/core/util';\nimport {BaseDirective} from 'ngx-semantic/core/base';\n\n@Directive({\n standalone: true,\n exportAs: 'suiFormField',\n selector: '[suiFormField]'\n})\nexport class SuiFormFieldDirective extends BaseDirective {\n @Input() public suiWidth: SuiWidth = null;\n @Input() @InputBoolean() public suiError = false;\n @Input() @InputBoolean() public suiInline = false;\n @Input() @InputBoolean() public disabled = false;\n @Input() @InputBoolean() public suiRequired = false;\n\n constructor(element: ElementRef) {\n super(element);\n }\n\n get classes(): string {\n return [\n ClassUtils.getPropClass(this.suiInline, 'inline'),\n this.suiWidth,\n this.suiWidth ? 'wide' : '',\n ClassUtils.getPropClass(this.disabled, 'disabled'),\n ClassUtils.getPropClass(this.suiRequired, 'required'),\n 'field',\n ClassUtils.getPropClass(this.suiError, 'error')\n ].join(' ');\n }\n}\n","/**\n * Created by bolor on 6/5/2020\n */\n\nimport {Directive, ElementRef, Input} from '@angular/core';\nimport {SuiWidth} from 'ngx-semantic/core/enums';\nimport {ClassUtils, InputBoolean} from 'ngx-semantic/core/util';\nimport {BaseDirective} from 'ngx-semantic/core/base';\n\n@Directive({\n standalone: true,\n exportAs: 'suiFormFields',\n selector: '[suiFormFields]'\n})\nexport class SuiFormFieldsDirective extends BaseDirective {\n @Input() public suiWidth: SuiWidth = null;\n @Input() @InputBoolean() public suiInline = false;\n @Input() @InputBoolean() public suiGrouped = false;\n @Input() @InputBoolean() public suiEqualWidth = false;\n\n constructor(element: ElementRef) {\n super(element);\n }\n\n get classes(): string {\n return [\n this.suiWidth,\n ClassUtils.getPropClass(this.suiInline, 'inline'),\n ClassUtils.getPropClass(this.suiGrouped, 'grouped'),\n ClassUtils.getPropClass(this.suiEqualWidth, 'equal width'),\n 'fields'\n ].join(' ');\n }\n}\n","/**\n * Created by bolor on 6/5/2020\n */\n\nimport {Directive, ElementRef, Input} from '@angular/core';\nimport {SuiSize} from 'ngx-semantic/core/enums';\nimport {ClassUtils, InputBoolean} from 'ngx-semantic/core/util';\nimport {BaseDirective} from 'ngx-semantic/core/base';\n\nexport type SuiFormState = 'success' | 'warning' | 'error' | null;\n\n@Directive({\n standalone: true,\n selector: '[sui-form]',\n exportAs: 'suiForm'\n})\nexport class SuiFormDirective extends BaseDirective {\n @Input() public suiState: SuiFormState = null;\n @Input() public suiSize: SuiSize = null;\n @Input() @InputBoolean() public suiLoading = false;\n @Input() @InputBoolean() public suiEqualWidth = false;\n @Input() @InputBoolean() public suiInverted = false;\n @Input() @InputBoolean() public suiReply = false;\n\n constructor(element: ElementRef) {\n super(element);\n }\n\n get classes(): string {\n return [\n 'ui',\n ClassUtils.getPropClass(this.suiLoading, 'loading'),\n ClassUtils.getPropClass(this.suiEqualWidth, 'equal width'),\n ClassUtils.getPropClass(this.suiInverted, 'inverted'),\n ClassUtils.getPropClass(this.suiReply, 'reply'),\n this.suiSize,\n 'form',\n this.suiState\n ].join(' ');\n }\n}\n","/**\n * Created by bolor on 5/26/2020\n */\n\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {SuiFormFieldDirective} from './form-field.directive';\nimport {SuiFormDirective} from './form.directive';\nimport {SuiFormFieldsDirective} from './form-fields.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n SuiFormFieldDirective,\n SuiFormDirective,\n SuiFormFieldsDirective\n ],\n exports: [\n SuiFormFieldDirective,\n SuiFormDirective,\n SuiFormFieldsDirective\n ]\n})\nexport class SuiFormModule {\n}\n","/**\n * Created by bolor on 6/5/2020\n */\n\nexport * from './form-field.directive';\nexport * from './form-fields.directive';\nexport * from './form.directive';\nexport * from './form.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ngx-semantic-collections-form.mjs","sources":["../../src/collections/form/form-field.directive.ts","../../src/collections/form/form-fields.directive.ts","../../src/collections/form/form.directive.ts","../../src/collections/form/validation/form-validation.dom.ts","../../src/collections/form/validation/form-validation.normalize.ts","../../src/collections/form/validation/form-validation.rules.ts","../../src/collections/form/validation/form-validation.prompt.ts","../../src/collections/form/validation/form-validation.model.ts","../../src/collections/form/validation/form-validation.control-errors.ts","../../src/collections/form/validation/form-validation.directive.ts","../../src/collections/form/form.module.ts","../../src/collections/form/public-api.ts","../../src/collections/form/ngx-semantic-collections-form.ts"],"sourcesContent":["/**\n * Created by bolor on 6/5/2020\n */\n\nimport { Directive, ElementRef, Input, inject } from '@angular/core';\nimport { SuiWidth } from 'ngx-semantic/core/enums';\nimport { ClassUtils, InputBoolean } from 'ngx-semantic/core/util';\nimport { BaseDirective } from 'ngx-semantic/core/base';\n\n@Directive({\n standalone: true,\n exportAs: 'suiFormField',\n selector: '[suiFormField]'\n})\nexport class SuiFormFieldDirective extends BaseDirective {\n @Input() public suiWidth: SuiWidth = null;\n @Input() @InputBoolean() public suiError = false;\n @Input() @InputBoolean() public suiInline = false;\n @Input() @InputBoolean() public disabled = false;\n @Input() @InputBoolean() public suiRequired = false;\n\n constructor() {\n const element = inject(ElementRef);\n\n super(element);\n }\n\n get classes(): string {\n return [\n ClassUtils.getPropClass(this.suiInline, 'inline'),\n this.suiWidth,\n this.suiWidth ? 'wide' : '',\n ClassUtils.getPropClass(this.disabled, 'disabled'),\n ClassUtils.getPropClass(this.suiRequired, 'required'),\n 'field',\n ClassUtils.getPropClass(this.suiError, 'error')\n ].join(' ');\n }\n}\n","/**\n * Created by bolor on 6/5/2020\n */\n\nimport { Directive, ElementRef, Input, inject } from '@angular/core';\nimport { SuiWidth } from 'ngx-semantic/core/enums';\nimport { ClassUtils, InputBoolean } from 'ngx-semantic/core/util';\nimport { BaseDirective } from 'ngx-semantic/core/base';\n\n@Directive({\n standalone: true,\n exportAs: 'suiFormFields',\n selector: '[suiFormFields]'\n})\nexport class SuiFormFieldsDirective extends BaseDirective {\n @Input() public suiWidth: SuiWidth = null;\n @Input() @InputBoolean() public suiInline = false;\n @Input() @InputBoolean() public suiGrouped = false;\n @Input() @InputBoolean() public suiEqualWidth = false;\n\n constructor() {\n const element = inject(ElementRef);\n\n super(element);\n }\n\n get classes(): string {\n return [\n this.suiWidth,\n ClassUtils.getPropClass(this.suiInline, 'inline'),\n ClassUtils.getPropClass(this.suiGrouped, 'grouped'),\n ClassUtils.getPropClass(this.suiEqualWidth, 'equal width'),\n 'fields'\n ].join(' ');\n }\n}\n","/**\n * Created by bolor on 6/5/2020\n *\n * For Semantic-style rules on the same element, add `suiFormValidation` (`SuiFormValidationDirective` in `./validation/`).\n */\n\nimport { Directive, ElementRef, Input, inject } from '@angular/core';\nimport { SuiSize } from 'ngx-semantic/core/enums';\nimport { ClassUtils, InputBoolean } from 'ngx-semantic/core/util';\nimport { BaseDirective } from 'ngx-semantic/core/base';\n\nexport type SuiFormState = 'success' | 'warning' | 'error' | null;\n\n@Directive({\n standalone: true,\n selector: '[sui-form]',\n exportAs: 'suiForm'\n})\nexport class SuiFormDirective extends BaseDirective {\n @Input() public suiState: SuiFormState = null;\n @Input() public suiSize: SuiSize = null;\n @Input() @InputBoolean() public suiLoading = false;\n @Input() @InputBoolean() public suiEqualWidth = false;\n @Input() @InputBoolean() public suiInverted = false;\n @Input() @InputBoolean() public suiReply = false;\n\n constructor() {\n const element = inject(ElementRef);\n\n super(element);\n }\n\n get classes(): string {\n return [\n 'ui',\n ClassUtils.getPropClass(this.suiLoading, 'loading'),\n ClassUtils.getPropClass(this.suiEqualWidth, 'equal width'),\n ClassUtils.getPropClass(this.suiInverted, 'inverted'),\n ClassUtils.getPropClass(this.suiReply, 'reply'),\n this.suiSize,\n 'form',\n this.suiState\n ].join(' ');\n }\n}\n","/** Resolve control like Semantic UI: id, then name, then data-validate. */\nexport function resolveFieldElement(root: HTMLElement, identifier: string): HTMLElement | null {\n if (!identifier) {\n return null;\n }\n const byId = root.querySelector(`#${escapeCssId(identifier)}`);\n if (byId instanceof HTMLElement) {\n return byId;\n }\n const byName = root.querySelector(`[name=\"${escapeAttrSelector(identifier)}\"]`);\n if (byName instanceof HTMLElement) {\n return byName;\n }\n const byMeta = root.querySelector(`[data-validate=\"${escapeAttrSelector(identifier)}\"]`);\n return byMeta instanceof HTMLElement ? byMeta : null;\n}\n\nfunction escapeCssId(id: string): string {\n if (typeof CSS !== 'undefined' && typeof CSS.escape === 'function') {\n return CSS.escape(id);\n }\n return id.replace(/([^a-zA-Z0-9_-])/g, '\\\\$1');\n}\n\nexport function escapeAttrSelector(s: string): string {\n return s.replace(/\\\\/g, '\\\\\\\\').replace(/\"/g, '\\\\\"');\n}\n\nexport function readControlValue(el: HTMLElement): unknown {\n if (el instanceof HTMLInputElement) {\n if (el.type === 'checkbox') {\n return el.checked;\n }\n if (el.type === 'radio') {\n const form = el.form ?? el.closest('form');\n if (form) {\n const checked = form.querySelector<HTMLInputElement>(\n `input[type=\"radio\"][name=\"${escapeAttrSelector(el.name)}\"]:checked`\n );\n return checked ? checked.value : '';\n }\n return el.checked ? el.value : '';\n }\n return el.value;\n }\n if (el instanceof HTMLSelectElement) {\n if (el.multiple) {\n return Array.from(el.selectedOptions).map(o => o.value);\n }\n return el.value;\n }\n if (el instanceof HTMLTextAreaElement) {\n return el.value;\n }\n return '';\n}\n\nexport function findSemanticField(el: HTMLElement): HTMLElement | null {\n return el.closest('.field');\n}\n\n/** Label text for prompts: label[for=id], aria-label, placeholder. */\nexport function inferFieldName(el: HTMLElement, identifier: string): string {\n if (el.id) {\n const label = el.ownerDocument?.querySelector(`label[for=\"${escapeAttrSelector(el.id)}\"]`);\n if (label?.textContent?.trim()) {\n return label.textContent.trim();\n }\n }\n const aria = el.getAttribute('aria-label');\n if (aria) {\n return aria;\n }\n if (el instanceof HTMLInputElement || el instanceof HTMLTextAreaElement) {\n const ph = el.getAttribute('placeholder');\n if (ph) {\n return ph;\n }\n }\n return identifier;\n}\n","import type {\n SuiFormNormalizedField,\n SuiFormValidationFieldSpec,\n SuiFormValidationFieldsInput,\n SuiFormValidationRuleSpec\n} from './form-validation.model';\n\nfunction toRuleSpecs(\n rules: SuiFormValidationRuleSpec[] | string | string[]\n): SuiFormValidationRuleSpec[] {\n if (typeof rules === 'string') {\n return [{ type: rules }];\n }\n if (Array.isArray(rules)) {\n return rules.map(r => (typeof r === 'string' ? { type: r } : r));\n }\n return rules;\n}\n\nexport function normalizeFields(input: SuiFormValidationFieldsInput): SuiFormNormalizedField[] {\n const out: SuiFormNormalizedField[] = [];\n for (const key of Object.keys(input)) {\n const raw = input[key];\n if (typeof raw === 'string' || Array.isArray(raw)) {\n out.push({\n key,\n identifier: key,\n rules: toRuleSpecs(raw),\n optional: false\n });\n continue;\n }\n const spec = raw as SuiFormValidationFieldSpec;\n out.push({\n key,\n identifier: spec.identifier ?? key,\n rules: toRuleSpecs(spec.rules),\n optional: !!spec.optional,\n depends: spec.depends\n });\n }\n return out;\n}\n","import type { SuiFormRuleContext, SuiFormRuleParseResult, SuiFormValidationRuleSpec } from './form-validation.model';\n\n/** Split `ruleName[param]` (supports nested brackets in regExp by using `value` on rule spec instead). */\nexport function parseRuleType(type: string): SuiFormRuleParseResult {\n const t = type.trim();\n const open = t.indexOf('[');\n if (open === -1) {\n return { name: t };\n }\n const close = t.lastIndexOf(']');\n if (close <= open) {\n return { name: t };\n }\n return {\n name: t.slice(0, open),\n bracket: t.slice(open + 1, close)\n };\n}\n\nfunction asString(v: unknown): string {\n if (v === null || v === undefined) {\n return '';\n }\n if (Array.isArray(v)) {\n return v.join(',');\n }\n if (typeof v === 'boolean') {\n return v ? 'true' : '';\n }\n return String(v);\n}\n\nfunction isEmptyValue(v: unknown): boolean {\n if (v === null || v === undefined) {\n return true;\n }\n if (typeof v === 'boolean') {\n return !v;\n }\n if (Array.isArray(v)) {\n return v.length === 0;\n }\n return String(v).trim() === '';\n}\n\nconst EMAIL_RE =\n /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;\n\nfunction isValidUrl(s: string): boolean {\n try {\n const u = new URL(s);\n return u.protocol === 'http:' || u.protocol === 'https:';\n } catch {\n return false;\n }\n}\n\nfunction parseIntegerRange(\n bracket: string | undefined\n): {min?: number; max?: number} | null {\n if (!bracket) {\n return {};\n }\n const m = /^(-?\\d+)\\.\\.(-?\\d+)$/.exec(bracket.trim());\n if (m) {\n return { min: Number(m[1]), max: Number(m[2]) };\n }\n return null;\n}\n\nfunction luhnValid(digits: string): boolean {\n const d = digits.replace(/\\D/g, '');\n if (d.length < 13) {\n return false;\n }\n let sum = 0;\n let alt = false;\n for (let i = d.length - 1; i >= 0; i--) {\n let n = parseInt(d.charAt(i), 10);\n if (alt) {\n n *= 2;\n if (n > 9) {\n n -= 9;\n }\n }\n sum += n;\n alt = !alt;\n }\n return sum % 10 === 0;\n}\n\nconst CARD_TYPES: Record<string, RegExp> = {\n visa: /^4[0-9]{12}(?:[0-9]{3})?$/,\n mastercard: /^5[1-5][0-9]{14}$/,\n amex: /^3[47][0-9]{13}$/,\n discover: /^6(?:011|5[0-9]{2})[0-9]{12}$/,\n unionpay: /^62[0-9]{14,17}$/,\n jcb: /^(?:2131|1800|35\\d{3})\\d{11}$/,\n dinersClub: /^3(?:0[0-5]|[68][0-9])[0-9]{11}$/,\n maestro: /^(?:5[0678]\\d{2}|6304|6706|6771|6709)\\d{8,15}$/,\n laser: /^(6304|6706|6709|6771)[0-9]{12,15}$/,\n visaElectron: /^(4026|417500|4405|4508|4844|4913|4917)\\d+$/\n};\n\n/**\n * Returns true if the value satisfies the rule.\n */\nexport function evaluateRule(\n rule: SuiFormValidationRuleSpec,\n fieldValue: unknown,\n fieldIdentifier: string,\n ctx: SuiFormRuleContext\n): boolean {\n const { name, bracket } = parseRuleType(rule.type);\n const s = asString(fieldValue);\n const lower = name.toLowerCase();\n\n switch (lower) {\n case 'empty':\n return !isEmptyValue(fieldValue);\n case 'checked':\n return fieldValue === true;\n case 'email':\n return s === '' || EMAIL_RE.test(s);\n case 'url':\n return s === '' || isValidUrl(s);\n case 'decimal':\n return s === '' || /^-?\\d+\\.\\d+$/.test(s.trim());\n case 'number':\n return s === '' || /^-?\\d+(\\.\\d+)?$/.test(s.trim());\n case 'integer': {\n if (s.trim() === '') {\n return true;\n }\n if (!/^-?\\d+$/.test(s.trim())) {\n return false;\n }\n const n = parseInt(s, 10);\n const range = parseIntegerRange(bracket);\n if (range && range.min !== undefined && range.max !== undefined) {\n return n >= range.min && n <= range.max;\n }\n return true;\n }\n case 'regexp': {\n let re: RegExp | null = null;\n if (rule.value instanceof RegExp) {\n re = rule.value;\n } else if (bracket) {\n const inner = bracket.trim();\n const m = inner.match(/^\\/(.*)\\/([gimuy]*)$/);\n if (m) {\n re = new RegExp(m[1], m[2] || '');\n }\n }\n if (!re) {\n return false;\n }\n return re.test(s);\n }\n case 'minlength': {\n const min = bracket ? parseInt(bracket, 10) : NaN;\n if (Number.isNaN(min)) {\n return false;\n }\n return s.length >= min;\n }\n case 'maxlength': {\n const max = bracket ? parseInt(bracket, 10) : NaN;\n if (Number.isNaN(max)) {\n return false;\n }\n return s.length <= max;\n }\n case 'exactlength': {\n const ex = bracket ? parseInt(bracket, 10) : NaN;\n if (Number.isNaN(ex)) {\n return false;\n }\n return s.length === ex;\n }\n case 'match': {\n if (!bracket) {\n return false;\n }\n const other = asString(ctx.getFieldValue(bracket));\n return s === other;\n }\n case 'different': {\n if (!bracket) {\n return false;\n }\n const other = asString(ctx.getFieldValue(bracket));\n return s !== other || s === '';\n }\n case 'mincount': {\n const min = bracket ? parseInt(bracket, 10) : NaN;\n if (!Number.isFinite(min)) {\n return false;\n }\n const arr = Array.isArray(fieldValue) ? fieldValue : [];\n return arr.length >= min;\n }\n case 'maxcount': {\n const max = bracket ? parseInt(bracket, 10) : NaN;\n if (!Number.isFinite(max)) {\n return false;\n }\n const arr = Array.isArray(fieldValue) ? fieldValue : [];\n return arr.length <= max;\n }\n case 'exactcount': {\n const ex = bracket ? parseInt(bracket, 10) : NaN;\n if (!Number.isFinite(ex)) {\n return false;\n }\n const arr = Array.isArray(fieldValue) ? fieldValue : [];\n return arr.length === ex;\n }\n case 'contains':\n return bracket ? s.toLowerCase().includes(bracket.toLowerCase()) : false;\n case 'containsexactly':\n return bracket ? s.includes(bracket) : false;\n case 'doesntcontain':\n return bracket ? !s.toLowerCase().includes(bracket.toLowerCase()) : false;\n case 'doesntcontainexactly':\n return bracket ? !s.includes(bracket) : false;\n case 'is':\n return bracket ? s.toLowerCase() === bracket.toLowerCase() : false;\n case 'isexactly':\n return bracket ? s === bracket : false;\n case 'not':\n return bracket ? s.toLowerCase() !== bracket.toLowerCase() : false;\n case 'notexactly':\n return bracket ? s !== bracket : false;\n case 'exactly':\n return bracket ? s.toLowerCase() === bracket.toLowerCase() : false;\n case 'creditcard': {\n const digits = s.replace(/\\s/g, '');\n if (!luhnValid(digits)) {\n return false;\n }\n if (!bracket) {\n return true;\n }\n const types = bracket.split(',').map(t => t.trim().toLowerCase());\n return types.some(t => {\n const rx = CARD_TYPES[t];\n return rx && rx.test(digits);\n });\n }\n default:\n return true;\n }\n}\n","import { parseRuleType } from './form-validation.rules';\n\nconst DEFAULT_PROMPTS: Record<string, string> = {\n empty: '{name} must have a value',\n checked: '{name} must be checked',\n email: '{name} must be a valid e-mail',\n url: '{name} must be a valid url',\n regexp: '{name} is not formatted correctly',\n integer: '{name} must be an integer',\n decimal: '{name} must be a decimal number',\n number: '{name} must be set to a number',\n is: \"{name} must be '{ruleValue}'\",\n isexactly: \"{name} must be exactly '{ruleValue}'\",\n not: \"{name} cannot be set to '{ruleValue}'\",\n notexactly: \"{name} cannot be set to exactly '{ruleValue}'\",\n contains: \"{name} must contain '{ruleValue}'\",\n containsexactly: \"{name} must contain exactly '{ruleValue}'\",\n doesntcontain: \"{name} must not contain '{ruleValue}'\",\n doesntcontainexactly: \"{name} must not contain exactly '{ruleValue}'\",\n minlength: '{name} must be at least {ruleValue} characters',\n exactlength: '{name} must be exactly {ruleValue} characters',\n maxlength: '{name} cannot be longer than {ruleValue} characters',\n match: '{name} must match {ruleValue} field',\n different: '{name} must have a different value than {ruleValue} field',\n creditcard: '{name} must be a valid credit card number',\n mincount: '{name} must have at least {ruleValue} choices',\n exactcount: '{name} must have exactly {ruleValue} choices',\n maxcount: '{name} must have {ruleValue} or less choices',\n exactly: \"{name} must be '{ruleValue}'\"\n};\n\nexport function formatValidationPrompt(\n ruleType: string,\n fieldName: string,\n fieldIdentifier: string,\n fieldValue: unknown,\n customPrompt: string | ((value: unknown) => string) | undefined,\n ruleValue: string\n): string {\n if (typeof customPrompt === 'function') {\n return customPrompt(fieldValue);\n }\n if (customPrompt) {\n return applyTemplate(customPrompt, fieldName, fieldIdentifier, fieldValue, ruleValue);\n }\n const { name } = parseRuleType(ruleType);\n const key = name.toLowerCase();\n const template = DEFAULT_PROMPTS[key] ?? 'Please enter a valid value';\n return applyTemplate(template, fieldName, fieldIdentifier, fieldValue, ruleValue);\n}\n\nfunction applyTemplate(\n template: string,\n name: string,\n identifier: string,\n value: unknown,\n ruleValue: string\n): string {\n const v =\n value === null || value === undefined\n ? ''\n : Array.isArray(value)\n ? value.join(',')\n : String(value);\n return template\n .replace(/\\{name\\}/g, name)\n .replace(/\\{identifier\\}/g, identifier)\n .replace(/\\{value\\}/g, v)\n .replace(/\\{ruleValue\\}/g, ruleValue);\n}\n","/**\n * Types for Semantic UI [Form Validation](https://semantic-ui.com/behaviors/form.html) — Angular port.\n * Lives with `ngx-semantic/collections/form` (use with `sui-form` + `suiFormValidation` on the same `<form>`).\n */\n\n/** `AbstractControl.errors` key for Semantic rule failures (string message). Works with built-in validators. */\nexport const SUI_FORM_VALIDATION_ERROR_KEY = 'suiFormValidation';\n\n/** Single rule as string, e.g. `'empty'`, `'minLength[6]'`. */\nexport type SuiFormRuleTypeString = string;\n\nexport interface SuiFormValidationRuleSpec {\n /** Rule name, optionally with bracket param: `minLength[6]`, `integer[1..10]`. */\n type: SuiFormRuleTypeString;\n prompt?: string | ((value: unknown) => string);\n /** For `regExp` when brackets are awkward; also used by custom rules. */\n value?: unknown;\n}\n\nexport interface SuiFormValidationFieldSpec {\n /** Defaults to the object key in `fields` when omitted. */\n identifier?: string;\n rules: SuiFormValidationRuleSpec[] | SuiFormRuleTypeString | SuiFormRuleTypeString[];\n optional?: boolean;\n /** Other field id/name/data-validate must be non-empty for these rules to run. */\n depends?: string;\n}\n\n/** Shorthand: `name: 'empty'` or `password: ['empty', 'minLength[6]']` or longhand field spec. */\nexport type SuiFormValidationFieldsInput = Record<\n string,\n SuiFormRuleTypeString | SuiFormRuleTypeString[] | SuiFormValidationFieldSpec\n>;\n\nexport interface SuiFormNormalizedField {\n key: string;\n identifier: string;\n rules: SuiFormValidationRuleSpec[];\n optional: boolean;\n depends?: string;\n}\n\nexport interface SuiFormRuleContext {\n getFieldValue(identifier: string): unknown;\n getFieldElement(identifier: string): Element | null;\n}\n\nexport interface SuiFormRuleParseResult {\n name: string;\n bracket?: string;\n}\n","import type { AbstractControl } from '@angular/forms';\nimport { SUI_FORM_VALIDATION_ERROR_KEY } from './form-validation.model';\n\n/** Merge or clear Semantic validation errors without wiping other validator errors on the control. */\nexport function patchSuiFormValidationControlError(control: AbstractControl, message: string | null): void {\n const key = SUI_FORM_VALIDATION_ERROR_KEY;\n const cur = control.errors;\n if (message === null) {\n if (!cur?.[key]) {\n return;\n }\n const rest = { ...cur };\n delete rest[key];\n control.setErrors(Object.keys(rest).length ? rest : null);\n } else {\n control.setErrors({ ...(cur || {}), [key]: message });\n }\n}\n","/**\n * Semantic UI [Form Validation](https://semantic-ui.com/behaviors/form.html) — native Angular (no jQuery).\n * Use on the same `<form>` as `[sui-form]` (via `SuiFormModule`); add `suiFormValidation` and `suiFields`\n * matching Semantic’s `fields` object.\n *\n * When the host `<form>` uses **`NgForm`** (template-driven) or **`[formGroup]`** (reactive), rule failures are\n * written to matching `AbstractControl` errors under `suiFormValidation` so `form.valid` /\n * `control.invalid` align with Semantic rules alongside built-in validators.\n */\n\nimport { Directive, ElementRef, EventEmitter, HostListener, Input, NgZone, OnChanges, OnDestroy, Output, Renderer2, SimpleChanges, inject } from '@angular/core';\nimport { FormGroupDirective, NgForm } from '@angular/forms';\nimport type { AbstractControl, FormGroup } from '@angular/forms';\nimport { InputBoolean } from 'ngx-semantic/core/util';\nimport { Subject, fromEvent, merge } from 'rxjs';\nimport { debounceTime, takeUntil } from 'rxjs/operators';\n\nimport type {\n SuiFormNormalizedField,\n SuiFormRuleContext,\n SuiFormValidationFieldsInput\n} from './form-validation.model';\nimport {\n escapeAttrSelector,\n findSemanticField,\n inferFieldName,\n readControlValue,\n resolveFieldElement\n} from './form-validation.dom';\nimport { normalizeFields } from './form-validation.normalize';\nimport { formatValidationPrompt } from './form-validation.prompt';\nimport { patchSuiFormValidationControlError } from './form-validation.control-errors';\nimport { evaluateRule, parseRuleType } from './form-validation.rules';\n\nfunction isEmptyValue(v: unknown): boolean {\n if (v === null || v === undefined) {\n return true;\n }\n if (typeof v === 'boolean') {\n return !v;\n }\n if (Array.isArray(v)) {\n return v.length === 0;\n }\n return String(v).trim() === '';\n}\n\n@Directive({\n standalone: true,\n selector: 'form[suiFormValidation]',\n exportAs: 'suiFormValidation'\n})\nexport class SuiFormValidationDirective implements OnChanges, OnDestroy {\n private readonly el = inject<ElementRef<HTMLFormElement>>(ElementRef);\n private readonly renderer = inject(Renderer2);\n private readonly zone = inject(NgZone);\n private readonly ngForm = inject(NgForm, { optional: true, host: true });\n private readonly formGroupDir = inject(FormGroupDirective, { optional: true, host: true });\n\n /** Validation field definitions (shorthand or longhand), matching Semantic UI `fields`. */\n @Input() public suiFields: SuiFormValidationFieldsInput | null = null;\n /** `submit`, `blur`, or `change` — when to validate fields. */\n @Input() public suiOn: 'submit' | 'blur' | 'change' = 'submit';\n @Input() @InputBoolean() public suiInline = false;\n @Input() @InputBoolean() public suiRevalidate = true;\n /** Debounce (ms) for `change` / revalidation; `true` uses 300ms; `false` disables. */\n @Input() public suiDelay: number | boolean = true;\n @Input() @InputBoolean() public suiKeyboardShortcuts = true;\n /** When using `NgForm` / `FormGroup`, mark all controls touched after a failed submit (shows native errors). */\n @Input() @InputBoolean() public suiMarkControlsTouchedOnInvalid = true;\n\n @Output() public readonly suiOnSuccess = new EventEmitter<Event>();\n @Output() public readonly suiOnFailure = new EventEmitter<{errors: string[]; fields: string[]}>();\n\n private readonly destroy$ = new Subject<void>();\n private readonly host: HTMLFormElement;\n private normalized: SuiFormNormalizedField[] = [];\n private defaultValues = new Map<string, string>();\n private teardownFieldSubs: (() => void) | null = null;\n\n constructor() {\n const el = this.el;\n\n this.host = el.nativeElement;\n }\n\n /** Reactive `[formGroup]` or template-driven `NgForm` on this host, if any. */\n public getAngularForm(): FormGroup | null {\n if (this.formGroupDir?.form) {\n return this.formGroupDir.form;\n }\n if (this.ngForm?.form) {\n return this.ngForm.form;\n }\n return null;\n }\n\n /** Control whose name matches `suiFields` identifier (flat `FormGroup` only). */\n public resolveControl(identifier: string): AbstractControl | null {\n const g = this.getAngularForm();\n const c = g?.get(identifier);\n return c ?? null;\n }\n\n public ngOnChanges(changes: SimpleChanges): void {\n if (changes['suiFields']) {\n this.normalized = this.suiFields ? normalizeFields(this.suiFields) : [];\n }\n if (changes['suiFields'] || changes['suiOn'] || changes['suiDelay'] || changes['suiRevalidate']) {\n this.bindFieldTriggers();\n }\n }\n\n public ngOnDestroy(): void {\n this.teardownFieldSubs?.();\n this.destroy$.next();\n this.destroy$.complete();\n }\n\n @HostListener('submit', ['$event'])\n protected onHostSubmit(event: Event): void {\n if (!this.normalized.length) {\n return;\n }\n this.cacheDefaultsOnce();\n const r = this.runValidationWithUi();\n const form = this.getAngularForm();\n const ok = r.valid && (!form || form.valid);\n // Always prevent native form navigation; consumers use suiOnSuccess for follow-up.\n event.preventDefault();\n if (!ok) {\n if (this.suiMarkControlsTouchedOnInvalid && form) {\n form.markAllAsTouched();\n }\n event.stopPropagation();\n const errorsOut =\n r.errors.length > 0\n ? r.errors\n : form && !form.valid\n ? ['This form has validation errors.']\n : r.errors;\n this.suiOnFailure.emit({ errors: errorsOut, fields: r.fieldIds });\n return;\n }\n this.suiOnSuccess.emit(event);\n }\n\n @HostListener('keydown', ['$event'])\n protected onHostKeydown(ev: KeyboardEvent): void {\n if (!this.suiKeyboardShortcuts) {\n return;\n }\n if (!this.host.contains(ev.target as Node)) {\n return;\n }\n if (ev.key === 'Escape') {\n (ev.target as HTMLElement)?.blur?.();\n }\n }\n\n /** Validate the whole form, update UI, emit success/failure. */\n public validateForm(): boolean {\n this.cacheDefaultsOnce();\n const r = this.runValidationWithUi();\n const form = this.getAngularForm();\n const ok = r.valid && (!form || form.valid);\n if (!ok) {\n if (this.suiMarkControlsTouchedOnInvalid && form) {\n form.markAllAsTouched();\n }\n const errorsOut =\n r.errors.length > 0\n ? r.errors\n : form && !form.valid\n ? ['This form has validation errors.']\n : r.errors;\n this.suiOnFailure.emit({ errors: errorsOut, fields: r.fieldIds });\n } else {\n this.suiOnSuccess.emit(new Event('semantic-form-valid'));\n }\n return ok;\n }\n\n private runValidationWithUi(): {valid: boolean; errors: string[]; fieldIds: string[]} {\n const errors: string[] = [];\n const fieldIds: string[] = [];\n this.clearFormLevelMessage();\n this.clearAllFieldUi();\n for (const f of this.normalized) {\n const msg = this.evaluateFieldMessage(f);\n const ctrl = this.resolveControl(f.identifier);\n if (msg) {\n errors.push(msg);\n fieldIds.push(f.identifier);\n this.applyFieldError(f.identifier, msg);\n if (ctrl) {\n patchSuiFormValidationControlError(ctrl, msg);\n }\n }\n }\n this.renderFormLevelErrors(errors);\n return { valid: errors.length === 0, errors, fieldIds };\n }\n\n /** Validate one field by identifier (updates UI and `AbstractControl` errors when bound). */\n public validateField(identifier: string): boolean {\n const field = this.normalized.find(\n x => x.identifier === identifier || x.key === identifier\n );\n if (!field) {\n return true;\n }\n this.clearFieldUi(field.identifier);\n const msg = this.evaluateFieldMessage(field);\n const ctrl = this.resolveControl(field.identifier);\n if (msg) {\n if (ctrl) {\n patchSuiFormValidationControlError(ctrl, msg);\n }\n this.applyFieldError(field.identifier, msg);\n return false;\n }\n return true;\n }\n\n /** Whether the form (or one field) passes rules; does not update UI (Semantic `is valid`). */\n public isValid(identifier?: string): boolean {\n if (identifier) {\n const field = this.normalized.find(\n x => x.identifier === identifier || x.key === identifier\n );\n return field ? this.evaluateFieldMessage(field) === null : true;\n }\n return this.normalized.every(f => this.evaluateFieldMessage(f) === null);\n }\n\n public getFieldElement(identifier: string): HTMLElement | null {\n return resolveFieldElement(this.host, identifier);\n }\n\n public getValue(identifier: string): unknown {\n const ctrl = this.resolveControl(identifier);\n if (ctrl) {\n return ctrl.value;\n }\n const el = this.getFieldElement(identifier);\n return el ? readControlValue(el) : undefined;\n }\n\n public getValues(identifiers?: string[]): Record<string, unknown> {\n const ids =\n identifiers ??\n this.normalized.map(f => f.identifier);\n const out: Record<string, unknown> = {};\n for (const id of ids) {\n const ctrl = this.resolveControl(id);\n if (ctrl) {\n out[id] = ctrl.value;\n continue;\n }\n const el = resolveFieldElement(this.host, id);\n if (!el) {\n continue;\n }\n const name =\n el.getAttribute('name') ?? el.getAttribute('id') ?? el.getAttribute('data-validate') ?? id;\n out[name] = readControlValue(el);\n }\n return out;\n }\n\n public setValue(identifier: string, value: unknown): void {\n const ctrl = this.resolveControl(identifier);\n if (ctrl) {\n ctrl.setValue(value);\n return;\n }\n const el = resolveFieldElement(this.host, identifier);\n if (!el) {\n return;\n }\n this.writeControlValue(el, value);\n }\n\n public setValues(values: Record<string, unknown>): void {\n for (const k of Object.keys(values)) {\n this.setValue(k, values[k]);\n }\n }\n\n /** Restore values cached at first validation init (Semantic `reset`). */\n public reset(): void {\n const fields = this.host.querySelectorAll<HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement>(\n 'input, select, textarea'\n );\n fields.forEach(control => {\n const key = control.name || control.id;\n if (!key) {\n return;\n }\n if (this.defaultValues.has(key)) {\n this.writeControlValue(control as HTMLElement, this.defaultValues.get(key));\n }\n });\n }\n\n /** Clear all field values (Semantic `clear`). */\n public clear(): void {\n this.host.querySelectorAll<HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement>(\n 'input, select, textarea'\n ).forEach(control => {\n if (control instanceof HTMLInputElement) {\n if (control.type === 'checkbox' || control.type === 'radio') {\n control.checked = false;\n } else {\n control.value = '';\n }\n } else if (control instanceof HTMLSelectElement) {\n if (control.multiple) {\n Array.from(control.options).forEach(o => (o.selected = false));\n } else {\n control.selectedIndex = 0;\n }\n } else {\n control.value = '';\n }\n });\n }\n\n private debounceMs(): number {\n if (this.suiDelay === false) {\n return 0;\n }\n if (this.suiDelay === true) {\n return 300;\n }\n return Math.max(0, this.suiDelay);\n }\n\n private ctx(): SuiFormRuleContext {\n return {\n getFieldValue: id => {\n const c = this.resolveControl(id);\n if (c) {\n return c.value;\n }\n const el = resolveFieldElement(this.host, id);\n return el ? readControlValue(el) : '';\n },\n getFieldElement: id => resolveFieldElement(this.host, id)\n };\n }\n\n private evaluateFieldMessage(field: SuiFormNormalizedField): string | null {\n const ctx = this.ctx();\n if (field.depends) {\n const dep = ctx.getFieldValue(field.depends);\n if (isEmptyValue(dep)) {\n return null;\n }\n }\n const ctrl = this.resolveControl(field.identifier);\n const el = resolveFieldElement(this.host, field.identifier);\n const value = ctrl ? ctrl.value : el ? readControlValue(el) : undefined;\n if (field.optional && isEmptyValue(value)) {\n return null;\n }\n const fieldName = el ? inferFieldName(el, field.identifier) : field.identifier;\n for (const rule of field.rules) {\n if (!evaluateRule(rule, value, field.identifier, ctx)) {\n const { bracket } = parseRuleType(rule.type);\n return formatValidationPrompt(\n rule.type,\n fieldName,\n field.identifier,\n value,\n rule.prompt,\n bracket ?? ''\n );\n }\n }\n return null;\n }\n\n private cacheDefaultsOnce(): void {\n if (this.defaultValues.size) {\n return;\n }\n this.host.querySelectorAll<HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement>(\n 'input, select, textarea'\n ).forEach(control => {\n const key = control.name || control.id;\n if (!key) {\n return;\n }\n if (control instanceof HTMLInputElement && (control.type === 'checkbox' || control.type === 'radio')) {\n this.defaultValues.set(key, control.checked ? '1' : '');\n } else {\n this.defaultValues.set(key, control.value);\n }\n });\n }\n\n private bindFieldTriggers(): void {\n this.teardownFieldSubs?.();\n this.teardownFieldSubs = null;\n if (!this.normalized.length || this.suiOn === 'submit') {\n return;\n }\n const sub = new Subject<void>();\n const stop = () => {\n sub.next();\n sub.complete();\n };\n this.teardownFieldSubs = stop;\n const ms = this.debounceMs();\n\n this.zone.runOutsideAngular(() => {\n for (const f of this.normalized) {\n const el = resolveFieldElement(this.host, f.identifier);\n if (!el) {\n continue;\n }\n const ev =\n this.suiOn === 'blur'\n ? fromEvent(el, 'blur')\n : merge(fromEvent(el, 'input'), fromEvent(el, 'change'));\n const piped =\n ms > 0 ? ev.pipe(debounceTime(ms)) : ev;\n piped.pipe(takeUntil(sub), takeUntil(this.destroy$)).subscribe(() => {\n this.zone.run(() => {\n this.validateField(f.identifier);\n });\n });\n }\n });\n\n if (this.suiRevalidate && this.suiOn === 'blur') {\n this.zone.runOutsideAngular(() => {\n for (const f of this.normalized) {\n const el = resolveFieldElement(this.host, f.identifier);\n if (!el) {\n continue;\n }\n const piped =\n ms > 0\n ? fromEvent(el, 'input').pipe(debounceTime(ms))\n : fromEvent(el, 'input');\n piped.pipe(takeUntil(sub), takeUntil(this.destroy$)).subscribe(() => {\n const group = findSemanticField(el);\n if (group?.classList.contains('error')) {\n this.zone.run(() => this.validateField(f.identifier));\n }\n });\n }\n });\n }\n }\n\n private clearAllFieldUi(): void {\n for (const f of this.normalized) {\n this.clearFieldUi(f.identifier);\n }\n }\n\n private clearFieldUi(identifier: string): void {\n const ctrl = this.resolveControl(identifier);\n if (ctrl) {\n patchSuiFormValidationControlError(ctrl, null);\n }\n const el = resolveFieldElement(this.host, identifier);\n const group = el ? findSemanticField(el) : null;\n if (group) {\n this.renderer.removeClass(group, 'error');\n const prompt = group.querySelector<HTMLElement>('.prompt');\n if (prompt) {\n this.renderer.setProperty(prompt, 'textContent', '');\n if (this.suiInline) {\n this.renderer.removeStyle(prompt, 'display');\n } else {\n this.renderer.setStyle(prompt, 'display', 'none');\n }\n }\n }\n }\n\n private applyFieldError(identifier: string, message: string): void {\n const el = resolveFieldElement(this.host, identifier);\n const group = el ? findSemanticField(el) : null;\n if (!group) {\n return;\n }\n this.renderer.addClass(group, 'error');\n if (!this.suiInline) {\n return;\n }\n let prompt = group.querySelector<HTMLElement>('.prompt');\n if (!prompt) {\n prompt = this.renderer.createElement('div');\n this.renderer.addClass(prompt, 'ui');\n this.renderer.addClass(prompt, 'basic');\n this.renderer.addClass(prompt, 'red');\n this.renderer.addClass(prompt, 'pointing');\n this.renderer.addClass(prompt, 'label');\n this.renderer.addClass(prompt, 'prompt');\n this.renderer.setAttribute(prompt, 'role', 'alert');\n this.renderer.appendChild(group, prompt);\n }\n this.renderer.setProperty(prompt, 'textContent', message);\n this.renderer.removeStyle(prompt, 'display');\n }\n\n private renderFormLevelErrors(messages: string[]): void {\n const block = this.host.querySelector<HTMLElement>('.ui.error.message, .error.message');\n if (!block || !messages.length) {\n return;\n }\n const ul = this.renderer.createElement('ul');\n ul.className = 'list';\n for (const m of messages) {\n const li = this.renderer.createElement('li');\n li.textContent = m;\n ul.appendChild(li);\n }\n block.innerHTML = '';\n block.appendChild(ul);\n this.renderer.removeClass(block, 'hidden');\n }\n\n private clearFormLevelMessage(): void {\n const block = this.host.querySelector<HTMLElement>('.ui.error.message, .error.message');\n if (block) {\n block.innerHTML = '';\n }\n }\n\n private writeControlValue(el: HTMLElement, value: unknown): void {\n if (el instanceof HTMLInputElement) {\n if (el.type === 'checkbox') {\n el.checked = Boolean(value);\n return;\n }\n if (el.type === 'radio') {\n const form = el.form ?? this.host;\n const name = el.name;\n const str = String(value ?? '');\n form\n .querySelectorAll<HTMLInputElement>(\n `input[type=\"radio\"][name=\"${escapeAttrSelector(name)}\"]`\n )\n .forEach(r => {\n r.checked = r.value === str;\n });\n return;\n }\n el.value = value === null || value === undefined ? '' : String(value);\n return;\n }\n if (el instanceof HTMLSelectElement) {\n if (el.multiple && Array.isArray(value)) {\n const set = new Set(value.map(String));\n Array.from(el.options).forEach(o => {\n o.selected = set.has(o.value);\n });\n } else {\n el.value = String(value ?? '');\n }\n return;\n }\n if (el instanceof HTMLTextAreaElement) {\n el.value = value === null || value === undefined ? '' : String(value);\n }\n }\n}\n","/**\n * Created by bolor on 5/26/2020\n */\n\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { SuiFormFieldDirective } from './form-field.directive';\nimport { SuiFormDirective } from './form.directive';\nimport { SuiFormFieldsDirective } from './form-fields.directive';\nimport { SuiFormValidationDirective } from './validation/form-validation.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n SuiFormFieldDirective,\n SuiFormDirective,\n SuiFormFieldsDirective,\n SuiFormValidationDirective\n ],\n exports: [\n FormsModule,\n ReactiveFormsModule,\n SuiFormFieldDirective,\n SuiFormDirective,\n SuiFormFieldsDirective,\n SuiFormValidationDirective\n ]\n})\nexport class SuiFormModule {\n}\n","/**\n * Created by bolor on 6/5/2020\n */\n\nexport * from './form-field.directive';\nexport * from './form-fields.directive';\nexport * from './form.directive';\nexport * from './form.module';\nexport * from './validation/form-validation.model';\nexport * from './validation/form-validation.control-errors';\nexport * from './validation/form-validation.rules';\nexport * from './validation/form-validation.normalize';\nexport * from './validation/form-validation.prompt';\nexport * from './validation/form-validation.dom';\nexport * from './validation/form-validation.directive';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["isEmptyValue"],"mappings":";;;;;;;;;;AAcM,MAAO,qBAAsB,SAAQ,aAAa,CAAA;AAOtD,IAAA,WAAA,GAAA;AACE,QAAA,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC;QAElC,KAAK,CAAC,OAAO,CAAC;QATA,IAAA,CAAA,QAAQ,GAAa,IAAI;QACT,IAAA,CAAA,QAAQ,GAAG,KAAK;QAChB,IAAA,CAAA,SAAS,GAAG,KAAK;QACjB,IAAA,CAAA,QAAQ,GAAG,KAAK;QAChB,IAAA,CAAA,WAAW,GAAG,KAAK;IAMnD;AAEA,IAAA,IAAI,OAAO,GAAA;QACT,OAAO;YACL,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC;AACjD,YAAA,IAAI,CAAC,QAAQ;YACb,IAAI,CAAC,QAAQ,GAAG,MAAM,GAAG,EAAE;YAC3B,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC;YAClD,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC;YACrD,OAAO;YACP,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO;AAC/C,SAAA,CAAC,IAAI,CAAC,GAAG,CAAC;IACb;8GAvBW,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAArB,qBAAqB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,UAAA,EAAA,SAAA,EAAA,WAAA,EAAA,QAAA,EAAA,UAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;AAEA,UAAA,CAAA;AAAtB,IAAA,YAAY;AAA2B,CAAA,EAAA,qBAAA,CAAA,SAAA,EAAA,UAAA,EAAA,KAAA,CAAA,CAAA;AACjB,UAAA,CAAA;AAAtB,IAAA,YAAY;AAA4B,CAAA,EAAA,qBAAA,CAAA,SAAA,EAAA,WAAA,EAAA,KAAA,CAAA,CAAA;AAClB,UAAA,CAAA;AAAtB,IAAA,YAAY;AAA2B,CAAA,EAAA,qBAAA,CAAA,SAAA,EAAA,UAAA,EAAA,KAAA,CAAA,CAAA;AACjB,UAAA,CAAA;AAAtB,IAAA,YAAY;AAA8B,CAAA,EAAA,qBAAA,CAAA,SAAA,EAAA,aAAA,EAAA,KAAA,CAAA,CAAA;2FALzC,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBALjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,cAAc;AACxB,oBAAA,QAAQ,EAAE;AACX,iBAAA;;sBAEE;;sBACA;;sBACA;;sBACA;;sBACA;;;ACLG,MAAO,sBAAuB,SAAQ,aAAa,CAAA;AAMvD,IAAA,WAAA,GAAA;AACE,QAAA,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC;QAElC,KAAK,CAAC,OAAO,CAAC;QARA,IAAA,CAAA,QAAQ,GAAa,IAAI;QACT,IAAA,CAAA,SAAS,GAAG,KAAK;QACjB,IAAA,CAAA,UAAU,GAAG,KAAK;QAClB,IAAA,CAAA,aAAa,GAAG,KAAK;IAMrD;AAEA,IAAA,IAAI,OAAO,GAAA;QACT,OAAO;AACL,YAAA,IAAI,CAAC,QAAQ;YACb,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC;YACjD,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC;YACnD,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,EAAE,aAAa,CAAC;YAC1D;AACD,SAAA,CAAC,IAAI,CAAC,GAAG,CAAC;IACb;8GApBW,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAtB,sBAAsB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,SAAA,EAAA,WAAA,EAAA,UAAA,EAAA,YAAA,EAAA,aAAA,EAAA,eAAA,EAAA,EAAA,QAAA,EAAA,CAAA,eAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;AAED,UAAA,CAAA;AAAtB,IAAA,YAAY;AAA4B,CAAA,EAAA,sBAAA,CAAA,SAAA,EAAA,WAAA,EAAA,KAAA,CAAA,CAAA;AAClB,UAAA,CAAA;AAAtB,IAAA,YAAY;AAA6B,CAAA,EAAA,sBAAA,CAAA,SAAA,EAAA,YAAA,EAAA,KAAA,CAAA,CAAA;AACnB,UAAA,CAAA;AAAtB,IAAA,YAAY;AAAgC,CAAA,EAAA,sBAAA,CAAA,SAAA,EAAA,eAAA,EAAA,KAAA,CAAA,CAAA;2FAJ3C,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBALlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,eAAe;AACzB,oBAAA,QAAQ,EAAE;AACX,iBAAA;;sBAEE;;sBACA;;sBACA;;sBACA;;;ACAG,MAAO,gBAAiB,SAAQ,aAAa,CAAA;AAQjD,IAAA,WAAA,GAAA;AACE,QAAA,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC;QAElC,KAAK,CAAC,OAAO,CAAC;QAVA,IAAA,CAAA,QAAQ,GAAiB,IAAI;QAC7B,IAAA,CAAA,OAAO,GAAY,IAAI;QACP,IAAA,CAAA,UAAU,GAAG,KAAK;QAClB,IAAA,CAAA,aAAa,GAAG,KAAK;QACrB,IAAA,CAAA,WAAW,GAAG,KAAK;QACnB,IAAA,CAAA,QAAQ,GAAG,KAAK;IAMhD;AAEA,IAAA,IAAI,OAAO,GAAA;QACT,OAAO;YACL,IAAI;YACJ,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC;YACnD,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,EAAE,aAAa,CAAC;YAC1D,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC;YACrD,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC;AAC/C,YAAA,IAAI,CAAC,OAAO;YACZ,MAAM;AACN,YAAA,IAAI,CAAC;AACN,SAAA,CAAC,IAAI,CAAC,GAAG,CAAC;IACb;8GAzBW,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,OAAA,EAAA,SAAA,EAAA,UAAA,EAAA,YAAA,EAAA,aAAA,EAAA,eAAA,EAAA,WAAA,EAAA,aAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;AAGK,UAAA,CAAA;AAAtB,IAAA,YAAY;AAA6B,CAAA,EAAA,gBAAA,CAAA,SAAA,EAAA,YAAA,EAAA,KAAA,CAAA,CAAA;AACnB,UAAA,CAAA;AAAtB,IAAA,YAAY;AAAgC,CAAA,EAAA,gBAAA,CAAA,SAAA,EAAA,eAAA,EAAA,KAAA,CAAA,CAAA;AACtB,UAAA,CAAA;AAAtB,IAAA,YAAY;AAA8B,CAAA,EAAA,gBAAA,CAAA,SAAA,EAAA,aAAA,EAAA,KAAA,CAAA,CAAA;AACpB,UAAA,CAAA;AAAtB,IAAA,YAAY;AAA2B,CAAA,EAAA,gBAAA,CAAA,SAAA,EAAA,UAAA,EAAA,KAAA,CAAA,CAAA;2FANtC,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAL5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,YAAY;AACtB,oBAAA,QAAQ,EAAE;AACX,iBAAA;;sBAEE;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;;ACxBH;AACM,SAAU,mBAAmB,CAAC,IAAiB,EAAE,UAAkB,EAAA;IACvE,IAAI,CAAC,UAAU,EAAE;AACf,QAAA,OAAO,IAAI;IACb;AACA,IAAA,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,CAAA,CAAA,EAAI,WAAW,CAAC,UAAU,CAAC,CAAA,CAAE,CAAC;AAC9D,IAAA,IAAI,IAAI,YAAY,WAAW,EAAE;AAC/B,QAAA,OAAO,IAAI;IACb;AACA,IAAA,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,CAAA,OAAA,EAAU,kBAAkB,CAAC,UAAU,CAAC,CAAA,EAAA,CAAI,CAAC;AAC/E,IAAA,IAAI,MAAM,YAAY,WAAW,EAAE;AACjC,QAAA,OAAO,MAAM;IACf;AACA,IAAA,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,CAAA,gBAAA,EAAmB,kBAAkB,CAAC,UAAU,CAAC,CAAA,EAAA,CAAI,CAAC;IACxF,OAAO,MAAM,YAAY,WAAW,GAAG,MAAM,GAAG,IAAI;AACtD;AAEA,SAAS,WAAW,CAAC,EAAU,EAAA;AAC7B,IAAA,IAAI,OAAO,GAAG,KAAK,WAAW,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,UAAU,EAAE;AAClE,QAAA,OAAO,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;IACvB;IACA,OAAO,EAAE,CAAC,OAAO,CAAC,mBAAmB,EAAE,MAAM,CAAC;AAChD;AAEM,SAAU,kBAAkB,CAAC,CAAS,EAAA;AAC1C,IAAA,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;AACtD;AAEM,SAAU,gBAAgB,CAAC,EAAe,EAAA;AAC9C,IAAA,IAAI,EAAE,YAAY,gBAAgB,EAAE;AAClC,QAAA,IAAI,EAAE,CAAC,IAAI,KAAK,UAAU,EAAE;YAC1B,OAAO,EAAE,CAAC,OAAO;QACnB;AACA,QAAA,IAAI,EAAE,CAAC,IAAI,KAAK,OAAO,EAAE;AACvB,YAAA,MAAM,IAAI,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;YAC1C,IAAI,IAAI,EAAE;AACR,gBAAA,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAChC,CAAA,0BAAA,EAA6B,kBAAkB,CAAC,EAAE,CAAC,IAAI,CAAC,CAAA,UAAA,CAAY,CACrE;gBACD,OAAO,OAAO,GAAG,OAAO,CAAC,KAAK,GAAG,EAAE;YACrC;AACA,YAAA,OAAO,EAAE,CAAC,OAAO,GAAG,EAAE,CAAC,KAAK,GAAG,EAAE;QACnC;QACA,OAAO,EAAE,CAAC,KAAK;IACjB;AACA,IAAA,IAAI,EAAE,YAAY,iBAAiB,EAAE;AACnC,QAAA,IAAI,EAAE,CAAC,QAAQ,EAAE;AACf,YAAA,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC;QACzD;QACA,OAAO,EAAE,CAAC,KAAK;IACjB;AACA,IAAA,IAAI,EAAE,YAAY,mBAAmB,EAAE;QACrC,OAAO,EAAE,CAAC,KAAK;IACjB;AACA,IAAA,OAAO,EAAE;AACX;AAEM,SAAU,iBAAiB,CAAC,EAAe,EAAA;AAC/C,IAAA,OAAO,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC;AAC7B;AAEA;AACM,SAAU,cAAc,CAAC,EAAe,EAAE,UAAkB,EAAA;AAChE,IAAA,IAAI,EAAE,CAAC,EAAE,EAAE;AACT,QAAA,MAAM,KAAK,GAAG,EAAE,CAAC,aAAa,EAAE,aAAa,CAAC,CAAA,WAAA,EAAc,kBAAkB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA,EAAA,CAAI,CAAC;AAC1F,QAAA,IAAI,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE;AAC9B,YAAA,OAAO,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE;QACjC;IACF;IACA,MAAM,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,CAAC;IAC1C,IAAI,IAAI,EAAE;AACR,QAAA,OAAO,IAAI;IACb;IACA,IAAI,EAAE,YAAY,gBAAgB,IAAI,EAAE,YAAY,mBAAmB,EAAE;QACvE,MAAM,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,aAAa,CAAC;QACzC,IAAI,EAAE,EAAE;AACN,YAAA,OAAO,EAAE;QACX;IACF;AACA,IAAA,OAAO,UAAU;AACnB;;ACzEA,SAAS,WAAW,CAClB,KAAsD,EAAA;AAEtD,IAAA,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;AAC7B,QAAA,OAAO,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IAC1B;AACA,IAAA,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACxB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,OAAO,CAAC,KAAK,QAAQ,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IAClE;AACA,IAAA,OAAO,KAAK;AACd;AAEM,SAAU,eAAe,CAAC,KAAmC,EAAA;IACjE,MAAM,GAAG,GAA6B,EAAE;IACxC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;AACpC,QAAA,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;AACtB,QAAA,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YACjD,GAAG,CAAC,IAAI,CAAC;gBACP,GAAG;AACH,gBAAA,UAAU,EAAE,GAAG;AACf,gBAAA,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC;AACvB,gBAAA,QAAQ,EAAE;AACX,aAAA,CAAC;YACF;QACF;QACA,MAAM,IAAI,GAAG,GAAiC;QAC9C,GAAG,CAAC,IAAI,CAAC;YACP,GAAG;AACH,YAAA,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,GAAG;AAClC,YAAA,KAAK,EAAE,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC;AAC9B,YAAA,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ;YACzB,OAAO,EAAE,IAAI,CAAC;AACf,SAAA,CAAC;IACJ;AACA,IAAA,OAAO,GAAG;AACZ;;ACxCA;AACM,SAAU,aAAa,CAAC,IAAY,EAAA;AACxC,IAAA,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE;IACrB,MAAM,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC;AAC3B,IAAA,IAAI,IAAI,KAAK,CAAC,CAAC,EAAE;AACf,QAAA,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE;IACpB;IACA,MAAM,KAAK,GAAG,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC;AAChC,IAAA,IAAI,KAAK,IAAI,IAAI,EAAE;AACjB,QAAA,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE;IACpB;IACA,OAAO;QACL,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;QACtB,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,EAAE,KAAK;KACjC;AACH;AAEA,SAAS,QAAQ,CAAC,CAAU,EAAA;IAC1B,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,EAAE;AACjC,QAAA,OAAO,EAAE;IACX;AACA,IAAA,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;AACpB,QAAA,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;IACpB;AACA,IAAA,IAAI,OAAO,CAAC,KAAK,SAAS,EAAE;QAC1B,OAAO,CAAC,GAAG,MAAM,GAAG,EAAE;IACxB;AACA,IAAA,OAAO,MAAM,CAAC,CAAC,CAAC;AAClB;AAEA,SAASA,cAAY,CAAC,CAAU,EAAA;IAC9B,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,EAAE;AACjC,QAAA,OAAO,IAAI;IACb;AACA,IAAA,IAAI,OAAO,CAAC,KAAK,SAAS,EAAE;QAC1B,OAAO,CAAC,CAAC;IACX;AACA,IAAA,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;AACpB,QAAA,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC;IACvB;IACA,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE;AAChC;AAEA,MAAM,QAAQ,GACZ,sIAAsI;AAExI,SAAS,UAAU,CAAC,CAAS,EAAA;AAC3B,IAAA,IAAI;AACF,QAAA,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC;QACpB,OAAO,CAAC,CAAC,QAAQ,KAAK,OAAO,IAAI,CAAC,CAAC,QAAQ,KAAK,QAAQ;IAC1D;AAAE,IAAA,MAAM;AACN,QAAA,OAAO,KAAK;IACd;AACF;AAEA,SAAS,iBAAiB,CACxB,OAA2B,EAAA;IAE3B,IAAI,CAAC,OAAO,EAAE;AACZ,QAAA,OAAO,EAAE;IACX;IACA,MAAM,CAAC,GAAG,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IACrD,IAAI,CAAC,EAAE;QACL,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;IACjD;AACA,IAAA,OAAO,IAAI;AACb;AAEA,SAAS,SAAS,CAAC,MAAc,EAAA;IAC/B,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;AACnC,IAAA,IAAI,CAAC,CAAC,MAAM,GAAG,EAAE,EAAE;AACjB,QAAA,OAAO,KAAK;IACd;IACA,IAAI,GAAG,GAAG,CAAC;IACX,IAAI,GAAG,GAAG,KAAK;AACf,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;AACtC,QAAA,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACjC,IAAI,GAAG,EAAE;YACP,CAAC,IAAI,CAAC;AACN,YAAA,IAAI,CAAC,GAAG,CAAC,EAAE;gBACT,CAAC,IAAI,CAAC;YACR;QACF;QACA,GAAG,IAAI,CAAC;QACR,GAAG,GAAG,CAAC,GAAG;IACZ;AACA,IAAA,OAAO,GAAG,GAAG,EAAE,KAAK,CAAC;AACvB;AAEA,MAAM,UAAU,GAA2B;AACzC,IAAA,IAAI,EAAE,2BAA2B;AACjC,IAAA,UAAU,EAAE,mBAAmB;AAC/B,IAAA,IAAI,EAAE,kBAAkB;AACxB,IAAA,QAAQ,EAAE,+BAA+B;AACzC,IAAA,QAAQ,EAAE,kBAAkB;AAC5B,IAAA,GAAG,EAAE,+BAA+B;AACpC,IAAA,UAAU,EAAE,kCAAkC;AAC9C,IAAA,OAAO,EAAE,gDAAgD;AACzD,IAAA,KAAK,EAAE,qCAAqC;AAC5C,IAAA,YAAY,EAAE;CACf;AAED;;AAEG;AACG,SAAU,YAAY,CAC1B,IAA+B,EAC/B,UAAmB,EACnB,eAAuB,EACvB,GAAuB,EAAA;AAEvB,IAAA,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC;AAClD,IAAA,MAAM,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC;AAC9B,IAAA,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE;IAEhC,QAAQ,KAAK;AACX,QAAA,KAAK,OAAO;AACV,YAAA,OAAO,CAACA,cAAY,CAAC,UAAU,CAAC;AAClC,QAAA,KAAK,SAAS;YACZ,OAAO,UAAU,KAAK,IAAI;AAC5B,QAAA,KAAK,OAAO;YACV,OAAO,CAAC,KAAK,EAAE,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;AACrC,QAAA,KAAK,KAAK;YACR,OAAO,CAAC,KAAK,EAAE,IAAI,UAAU,CAAC,CAAC,CAAC;AAClC,QAAA,KAAK,SAAS;AACZ,YAAA,OAAO,CAAC,KAAK,EAAE,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AAClD,QAAA,KAAK,QAAQ;AACX,YAAA,OAAO,CAAC,KAAK,EAAE,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACrD,KAAK,SAAS,EAAE;AACd,YAAA,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;AACnB,gBAAA,OAAO,IAAI;YACb;YACA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE;AAC7B,gBAAA,OAAO,KAAK;YACd;YACA,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC;AACzB,YAAA,MAAM,KAAK,GAAG,iBAAiB,CAAC,OAAO,CAAC;AACxC,YAAA,IAAI,KAAK,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,EAAE;gBAC/D,OAAO,CAAC,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,KAAK,CAAC,GAAG;YACzC;AACA,YAAA,OAAO,IAAI;QACb;QACA,KAAK,QAAQ,EAAE;YACb,IAAI,EAAE,GAAkB,IAAI;AAC5B,YAAA,IAAI,IAAI,CAAC,KAAK,YAAY,MAAM,EAAE;AAChC,gBAAA,EAAE,GAAG,IAAI,CAAC,KAAK;YACjB;iBAAO,IAAI,OAAO,EAAE;AAClB,gBAAA,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,EAAE;gBAC5B,MAAM,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,sBAAsB,CAAC;gBAC7C,IAAI,CAAC,EAAE;AACL,oBAAA,EAAE,GAAG,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBACnC;YACF;YACA,IAAI,CAAC,EAAE,EAAE;AACP,gBAAA,OAAO,KAAK;YACd;AACA,YAAA,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QACnB;QACA,KAAK,WAAW,EAAE;AAChB,YAAA,MAAM,GAAG,GAAG,OAAO,GAAG,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,GAAG;AACjD,YAAA,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;AACrB,gBAAA,OAAO,KAAK;YACd;AACA,YAAA,OAAO,CAAC,CAAC,MAAM,IAAI,GAAG;QACxB;QACA,KAAK,WAAW,EAAE;AAChB,YAAA,MAAM,GAAG,GAAG,OAAO,GAAG,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,GAAG;AACjD,YAAA,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;AACrB,gBAAA,OAAO,KAAK;YACd;AACA,YAAA,OAAO,CAAC,CAAC,MAAM,IAAI,GAAG;QACxB;QACA,KAAK,aAAa,EAAE;AAClB,YAAA,MAAM,EAAE,GAAG,OAAO,GAAG,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,GAAG;AAChD,YAAA,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE;AACpB,gBAAA,OAAO,KAAK;YACd;AACA,YAAA,OAAO,CAAC,CAAC,MAAM,KAAK,EAAE;QACxB;QACA,KAAK,OAAO,EAAE;YACZ,IAAI,CAAC,OAAO,EAAE;AACZ,gBAAA,OAAO,KAAK;YACd;YACA,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YAClD,OAAO,CAAC,KAAK,KAAK;QACpB;QACA,KAAK,WAAW,EAAE;YAChB,IAAI,CAAC,OAAO,EAAE;AACZ,gBAAA,OAAO,KAAK;YACd;YACA,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;AAClD,YAAA,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,EAAE;QAChC;QACA,KAAK,UAAU,EAAE;AACf,YAAA,MAAM,GAAG,GAAG,OAAO,GAAG,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,GAAG;YACjD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;AACzB,gBAAA,OAAO,KAAK;YACd;AACA,YAAA,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,UAAU,GAAG,EAAE;AACvD,YAAA,OAAO,GAAG,CAAC,MAAM,IAAI,GAAG;QAC1B;QACA,KAAK,UAAU,EAAE;AACf,YAAA,MAAM,GAAG,GAAG,OAAO,GAAG,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,GAAG;YACjD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;AACzB,gBAAA,OAAO,KAAK;YACd;AACA,YAAA,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,UAAU,GAAG,EAAE;AACvD,YAAA,OAAO,GAAG,CAAC,MAAM,IAAI,GAAG;QAC1B;QACA,KAAK,YAAY,EAAE;AACjB,YAAA,MAAM,EAAE,GAAG,OAAO,GAAG,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,GAAG;YAChD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;AACxB,gBAAA,OAAO,KAAK;YACd;AACA,YAAA,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,UAAU,GAAG,EAAE;AACvD,YAAA,OAAO,GAAG,CAAC,MAAM,KAAK,EAAE;QAC1B;AACA,QAAA,KAAK,UAAU;YACb,OAAO,OAAO,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,GAAG,KAAK;AAC1E,QAAA,KAAK,iBAAiB;AACpB,YAAA,OAAO,OAAO,GAAG,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,KAAK;AAC9C,QAAA,KAAK,eAAe;YAClB,OAAO,OAAO,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,GAAG,KAAK;AAC3E,QAAA,KAAK,sBAAsB;AACzB,YAAA,OAAO,OAAO,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,KAAK;AAC/C,QAAA,KAAK,IAAI;AACP,YAAA,OAAO,OAAO,GAAG,CAAC,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,WAAW,EAAE,GAAG,KAAK;AACpE,QAAA,KAAK,WAAW;YACd,OAAO,OAAO,GAAG,CAAC,KAAK,OAAO,GAAG,KAAK;AACxC,QAAA,KAAK,KAAK;AACR,YAAA,OAAO,OAAO,GAAG,CAAC,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,WAAW,EAAE,GAAG,KAAK;AACpE,QAAA,KAAK,YAAY;YACf,OAAO,OAAO,GAAG,CAAC,KAAK,OAAO,GAAG,KAAK;AACxC,QAAA,KAAK,SAAS;AACZ,YAAA,OAAO,OAAO,GAAG,CAAC,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,WAAW,EAAE,GAAG,KAAK;QACpE,KAAK,YAAY,EAAE;YACjB,MAAM,MAAM,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;AACnC,YAAA,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;AACtB,gBAAA,OAAO,KAAK;YACd;YACA,IAAI,CAAC,OAAO,EAAE;AACZ,gBAAA,OAAO,IAAI;YACb;YACA,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AACjE,YAAA,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,IAAG;AACpB,gBAAA,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC;gBACxB,OAAO,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC;AAC9B,YAAA,CAAC,CAAC;QACJ;AACA,QAAA;AACE,YAAA,OAAO,IAAI;;AAEjB;;AC5PA,MAAM,eAAe,GAA2B;AAC9C,IAAA,KAAK,EAAE,0BAA0B;AACjC,IAAA,OAAO,EAAE,wBAAwB;AACjC,IAAA,KAAK,EAAE,+BAA+B;AACtC,IAAA,GAAG,EAAE,4BAA4B;AACjC,IAAA,MAAM,EAAE,mCAAmC;AAC3C,IAAA,OAAO,EAAE,2BAA2B;AACpC,IAAA,OAAO,EAAE,iCAAiC;AAC1C,IAAA,MAAM,EAAE,gCAAgC;AACxC,IAAA,EAAE,EAAE,8BAA8B;AAClC,IAAA,SAAS,EAAE,sCAAsC;AACjD,IAAA,GAAG,EAAE,uCAAuC;AAC5C,IAAA,UAAU,EAAE,+CAA+C;AAC3D,IAAA,QAAQ,EAAE,mCAAmC;AAC7C,IAAA,eAAe,EAAE,2CAA2C;AAC5D,IAAA,aAAa,EAAE,uCAAuC;AACtD,IAAA,oBAAoB,EAAE,+CAA+C;AACrE,IAAA,SAAS,EAAE,gDAAgD;AAC3D,IAAA,WAAW,EAAE,+CAA+C;AAC5D,IAAA,SAAS,EAAE,qDAAqD;AAChE,IAAA,KAAK,EAAE,qCAAqC;AAC5C,IAAA,SAAS,EAAE,2DAA2D;AACtE,IAAA,UAAU,EAAE,2CAA2C;AACvD,IAAA,QAAQ,EAAE,+CAA+C;AACzD,IAAA,UAAU,EAAE,8CAA8C;AAC1D,IAAA,QAAQ,EAAE,8CAA8C;AACxD,IAAA,OAAO,EAAE;CACV;AAEK,SAAU,sBAAsB,CACpC,QAAgB,EAChB,SAAiB,EACjB,eAAuB,EACvB,UAAmB,EACnB,YAA+D,EAC/D,SAAiB,EAAA;AAEjB,IAAA,IAAI,OAAO,YAAY,KAAK,UAAU,EAAE;AACtC,QAAA,OAAO,YAAY,CAAC,UAAU,CAAC;IACjC;IACA,IAAI,YAAY,EAAE;AAChB,QAAA,OAAO,aAAa,CAAC,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,UAAU,EAAE,SAAS,CAAC;IACvF;IACA,MAAM,EAAE,IAAI,EAAE,GAAG,aAAa,CAAC,QAAQ,CAAC;AACxC,IAAA,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE;IAC9B,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,IAAI,4BAA4B;AACrE,IAAA,OAAO,aAAa,CAAC,QAAQ,EAAE,SAAS,EAAE,eAAe,EAAE,UAAU,EAAE,SAAS,CAAC;AACnF;AAEA,SAAS,aAAa,CACpB,QAAgB,EAChB,IAAY,EACZ,UAAkB,EAClB,KAAc,EACd,SAAiB,EAAA;IAEjB,MAAM,CAAC,GACL,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK;AAC1B,UAAE;AACF,UAAE,KAAK,CAAC,OAAO,CAAC,KAAK;AACnB,cAAE,KAAK,CAAC,IAAI,CAAC,GAAG;AAChB,cAAE,MAAM,CAAC,KAAK,CAAC;AACrB,IAAA,OAAO;AACJ,SAAA,OAAO,CAAC,WAAW,EAAE,IAAI;AACzB,SAAA,OAAO,CAAC,iBAAiB,EAAE,UAAU;AACrC,SAAA,OAAO,CAAC,YAAY,EAAE,CAAC;AACvB,SAAA,OAAO,CAAC,gBAAgB,EAAE,SAAS,CAAC;AACzC;;ACrEA;;;AAGG;AAEH;AACO,MAAM,6BAA6B,GAAG;;ACH7C;AACM,SAAU,kCAAkC,CAAC,OAAwB,EAAE,OAAsB,EAAA;IACjG,MAAM,GAAG,GAAG,6BAA6B;AACzC,IAAA,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM;AAC1B,IAAA,IAAI,OAAO,KAAK,IAAI,EAAE;AACpB,QAAA,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,EAAE;YACf;QACF;AACA,QAAA,MAAM,IAAI,GAAG,EAAE,GAAG,GAAG,EAAE;AACvB,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC;QAChB,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC;IAC3D;SAAO;AACL,QAAA,OAAO,CAAC,SAAS,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,CAAC,EAAE,CAAC,GAAG,GAAG,OAAO,EAAE,CAAC;IACvD;AACF;;ACiBA,SAAS,YAAY,CAAC,CAAU,EAAA;IAC9B,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,EAAE;AACjC,QAAA,OAAO,IAAI;IACb;AACA,IAAA,IAAI,OAAO,CAAC,KAAK,SAAS,EAAE;QAC1B,OAAO,CAAC,CAAC;IACX;AACA,IAAA,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;AACpB,QAAA,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC;IACvB;IACA,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE;AAChC;MAOa,0BAA0B,CAAA;AA4BrC,IAAA,WAAA,GAAA;AA3BiB,QAAA,IAAA,CAAA,EAAE,GAAG,MAAM,CAA8B,UAAU,CAAC;AACpD,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC;AAC5B,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC;AACrB,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACvD,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAAC,kBAAkB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;;QAG1E,IAAA,CAAA,SAAS,GAAwC,IAAI;;QAErD,IAAA,CAAA,KAAK,GAAiC,QAAQ;QAC9B,IAAA,CAAA,SAAS,GAAG,KAAK;QACjB,IAAA,CAAA,aAAa,GAAG,IAAI;;QAEpC,IAAA,CAAA,QAAQ,GAAqB,IAAI;QACjB,IAAA,CAAA,oBAAoB,GAAG,IAAI;;QAE3B,IAAA,CAAA,+BAA+B,GAAG,IAAI;AAE5C,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,YAAY,EAAS;AACxC,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,YAAY,EAAwC;AAEhF,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,OAAO,EAAQ;QAEvC,IAAA,CAAA,UAAU,GAA6B,EAAE;AACzC,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,GAAG,EAAkB;QACzC,IAAA,CAAA,iBAAiB,GAAwB,IAAI;AAGnD,QAAA,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE;AAElB,QAAA,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,aAAa;IAC9B;;IAGO,cAAc,GAAA;AACnB,QAAA,IAAI,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE;AAC3B,YAAA,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI;QAC/B;AACA,QAAA,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE;AACrB,YAAA,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI;QACzB;AACA,QAAA,OAAO,IAAI;IACb;;AAGO,IAAA,cAAc,CAAC,UAAkB,EAAA;AACtC,QAAA,MAAM,CAAC,GAAG,IAAI,CAAC,cAAc,EAAE;QAC/B,MAAM,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,UAAU,CAAC;QAC5B,OAAO,CAAC,IAAI,IAAI;IAClB;AAEO,IAAA,WAAW,CAAC,OAAsB,EAAA;AACvC,QAAA,IAAI,OAAO,CAAC,WAAW,CAAC,EAAE;AACxB,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,SAAS,GAAG,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE;QACzE;QACA,IAAI,OAAO,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,eAAe,CAAC,EAAE;YAC/F,IAAI,CAAC,iBAAiB,EAAE;QAC1B;IACF;IAEO,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,iBAAiB,IAAI;AAC1B,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;AACpB,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;IAC1B;AAGU,IAAA,YAAY,CAAC,KAAY,EAAA;AACjC,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;YAC3B;QACF;QACA,IAAI,CAAC,iBAAiB,EAAE;AACxB,QAAA,MAAM,CAAC,GAAG,IAAI,CAAC,mBAAmB,EAAE;AACpC,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,EAAE;AAClC,QAAA,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC;;QAE3C,KAAK,CAAC,cAAc,EAAE;QACtB,IAAI,CAAC,EAAE,EAAE;AACP,YAAA,IAAI,IAAI,CAAC,+BAA+B,IAAI,IAAI,EAAE;gBAChD,IAAI,CAAC,gBAAgB,EAAE;YACzB;YACA,KAAK,CAAC,eAAe,EAAE;YACvB,MAAM,SAAS,GACb,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG;kBACd,CAAC,CAAC;AACJ,kBAAE,IAAI,IAAI,CAAC,IAAI,CAAC;sBACZ,CAAC,kCAAkC;AACrC,sBAAE,CAAC,CAAC,MAAM;AAChB,YAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;YACjE;QACF;AACA,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;IAC/B;AAGU,IAAA,aAAa,CAAC,EAAiB,EAAA;AACvC,QAAA,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE;YAC9B;QACF;AACA,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAc,CAAC,EAAE;YAC1C;QACF;AACA,QAAA,IAAI,EAAE,CAAC,GAAG,KAAK,QAAQ,EAAE;AACtB,YAAA,EAAE,CAAC,MAAsB,EAAE,IAAI,IAAI;QACtC;IACF;;IAGO,YAAY,GAAA;QACjB,IAAI,CAAC,iBAAiB,EAAE;AACxB,QAAA,MAAM,CAAC,GAAG,IAAI,CAAC,mBAAmB,EAAE;AACpC,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,EAAE;AAClC,QAAA,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC;QAC3C,IAAI,CAAC,EAAE,EAAE;AACP,YAAA,IAAI,IAAI,CAAC,+BAA+B,IAAI,IAAI,EAAE;gBAChD,IAAI,CAAC,gBAAgB,EAAE;YACzB;YACA,MAAM,SAAS,GACb,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG;kBACd,CAAC,CAAC;AACJ,kBAAE,IAAI,IAAI,CAAC,IAAI,CAAC;sBACZ,CAAC,kCAAkC;AACrC,sBAAE,CAAC,CAAC,MAAM;AAChB,YAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;QACnE;aAAO;YACL,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAC1D;AACA,QAAA,OAAO,EAAE;IACX;IAEQ,mBAAmB,GAAA;QACzB,MAAM,MAAM,GAAa,EAAE;QAC3B,MAAM,QAAQ,GAAa,EAAE;QAC7B,IAAI,CAAC,qBAAqB,EAAE;QAC5B,IAAI,CAAC,eAAe,EAAE;AACtB,QAAA,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,UAAU,EAAE;YAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC;YACxC,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,UAAU,CAAC;YAC9C,IAAI,GAAG,EAAE;AACP,gBAAA,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;AAChB,gBAAA,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC;gBAC3B,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,UAAU,EAAE,GAAG,CAAC;gBACvC,IAAI,IAAI,EAAE;AACR,oBAAA,kCAAkC,CAAC,IAAI,EAAE,GAAG,CAAC;gBAC/C;YACF;QACF;AACA,QAAA,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC;AAClC,QAAA,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE;IACzD;;AAGO,IAAA,aAAa,CAAC,UAAkB,EAAA;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAChC,CAAC,IAAI,CAAC,CAAC,UAAU,KAAK,UAAU,IAAI,CAAC,CAAC,GAAG,KAAK,UAAU,CACzD;QACD,IAAI,CAAC,KAAK,EAAE;AACV,YAAA,OAAO,IAAI;QACb;AACA,QAAA,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,UAAU,CAAC;QACnC,MAAM,GAAG,GAAG,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC;QAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,UAAU,CAAC;QAClD,IAAI,GAAG,EAAE;YACP,IAAI,IAAI,EAAE;AACR,gBAAA,kCAAkC,CAAC,IAAI,EAAE,GAAG,CAAC;YAC/C;YACA,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC;AAC3C,YAAA,OAAO,KAAK;QACd;AACA,QAAA,OAAO,IAAI;IACb;;AAGO,IAAA,OAAO,CAAC,UAAmB,EAAA;QAChC,IAAI,UAAU,EAAE;YACd,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAChC,CAAC,IAAI,CAAC,CAAC,UAAU,KAAK,UAAU,IAAI,CAAC,CAAC,GAAG,KAAK,UAAU,CACzD;AACD,YAAA,OAAO,KAAK,GAAG,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,KAAK,IAAI,GAAG,IAAI;QACjE;AACA,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IAC1E;AAEO,IAAA,eAAe,CAAC,UAAkB,EAAA;QACvC,OAAO,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC;IACnD;AAEO,IAAA,QAAQ,CAAC,UAAkB,EAAA;QAChC,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC;QAC5C,IAAI,IAAI,EAAE;YACR,OAAO,IAAI,CAAC,KAAK;QACnB;QACA,MAAM,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC;AAC3C,QAAA,OAAO,EAAE,GAAG,gBAAgB,CAAC,EAAE,CAAC,GAAG,SAAS;IAC9C;AAEO,IAAA,SAAS,CAAC,WAAsB,EAAA;QACrC,MAAM,GAAG,GACP,WAAW;AACX,YAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC;QACxC,MAAM,GAAG,GAA4B,EAAE;AACvC,QAAA,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE;YACpB,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;YACpC,IAAI,IAAI,EAAE;AACR,gBAAA,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK;gBACpB;YACF;YACA,MAAM,EAAE,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YAC7C,IAAI,CAAC,EAAE,EAAE;gBACP;YACF;YACA,MAAM,IAAI,GACR,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,YAAY,CAAC,eAAe,CAAC,IAAI,EAAE;YAC5F,GAAG,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,EAAE,CAAC;QAClC;AACA,QAAA,OAAO,GAAG;IACZ;IAEO,QAAQ,CAAC,UAAkB,EAAE,KAAc,EAAA;QAChD,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC;QAC5C,IAAI,IAAI,EAAE;AACR,YAAA,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;YACpB;QACF;QACA,MAAM,EAAE,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC;QACrD,IAAI,CAAC,EAAE,EAAE;YACP;QACF;AACA,QAAA,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,KAAK,CAAC;IACnC;AAEO,IAAA,SAAS,CAAC,MAA+B,EAAA;QAC9C,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YACnC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;QAC7B;IACF;;IAGO,KAAK,GAAA;QACV,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,CACvC,yBAAyB,CAC1B;AACD,QAAA,MAAM,CAAC,OAAO,CAAC,OAAO,IAAG;YACvB,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,EAAE;YACtC,IAAI,CAAC,GAAG,EAAE;gBACR;YACF;YACA,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;AAC/B,gBAAA,IAAI,CAAC,iBAAiB,CAAC,OAAsB,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC7E;AACF,QAAA,CAAC,CAAC;IACJ;;IAGO,KAAK,GAAA;AACV,QAAA,IAAI,CAAC,IAAI,CAAC,gBAAgB,CACxB,yBAAyB,CAC1B,CAAC,OAAO,CAAC,OAAO,IAAG;AAClB,YAAA,IAAI,OAAO,YAAY,gBAAgB,EAAE;AACvC,gBAAA,IAAI,OAAO,CAAC,IAAI,KAAK,UAAU,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE;AAC3D,oBAAA,OAAO,CAAC,OAAO,GAAG,KAAK;gBACzB;qBAAO;AACL,oBAAA,OAAO,CAAC,KAAK,GAAG,EAAE;gBACpB;YACF;AAAO,iBAAA,IAAI,OAAO,YAAY,iBAAiB,EAAE;AAC/C,gBAAA,IAAI,OAAO,CAAC,QAAQ,EAAE;oBACpB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAC;gBAChE;qBAAO;AACL,oBAAA,OAAO,CAAC,aAAa,GAAG,CAAC;gBAC3B;YACF;iBAAO;AACL,gBAAA,OAAO,CAAC,KAAK,GAAG,EAAE;YACpB;AACF,QAAA,CAAC,CAAC;IACJ;IAEQ,UAAU,GAAA;AAChB,QAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,KAAK,EAAE;AAC3B,YAAA,OAAO,CAAC;QACV;AACA,QAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE;AAC1B,YAAA,OAAO,GAAG;QACZ;QACA,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC;IACnC;IAEQ,GAAG,GAAA;QACT,OAAO;YACL,aAAa,EAAE,EAAE,IAAG;gBAClB,MAAM,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;gBACjC,IAAI,CAAC,EAAE;oBACL,OAAO,CAAC,CAAC,KAAK;gBAChB;gBACA,MAAM,EAAE,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;AAC7C,gBAAA,OAAO,EAAE,GAAG,gBAAgB,CAAC,EAAE,CAAC,GAAG,EAAE;YACvC,CAAC;AACD,YAAA,eAAe,EAAE,EAAE,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE;SACzD;IACH;AAEQ,IAAA,oBAAoB,CAAC,KAA6B,EAAA;AACxD,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE;AACtB,QAAA,IAAI,KAAK,CAAC,OAAO,EAAE;YACjB,MAAM,GAAG,GAAG,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC;AAC5C,YAAA,IAAI,YAAY,CAAC,GAAG,CAAC,EAAE;AACrB,gBAAA,OAAO,IAAI;YACb;QACF;QACA,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,UAAU,CAAC;AAClD,QAAA,MAAM,EAAE,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,UAAU,CAAC;QAC3D,MAAM,KAAK,GAAG,IAAI,GAAG,IAAI,CAAC,KAAK,GAAG,EAAE,GAAG,gBAAgB,CAAC,EAAE,CAAC,GAAG,SAAS;QACvE,IAAI,KAAK,CAAC,QAAQ,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE;AACzC,YAAA,OAAO,IAAI;QACb;QACA,MAAM,SAAS,GAAG,EAAE,GAAG,cAAc,CAAC,EAAE,EAAE,KAAK,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,UAAU;AAC9E,QAAA,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE;AAC9B,YAAA,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC,EAAE;gBACrD,MAAM,EAAE,OAAO,EAAE,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC5C,OAAO,sBAAsB,CAC3B,IAAI,CAAC,IAAI,EACT,SAAS,EACT,KAAK,CAAC,UAAU,EAChB,KAAK,EACL,IAAI,CAAC,MAAM,EACX,OAAO,IAAI,EAAE,CACd;YACH;QACF;AACA,QAAA,OAAO,IAAI;IACb;IAEQ,iBAAiB,GAAA;AACvB,QAAA,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE;YAC3B;QACF;AACA,QAAA,IAAI,CAAC,IAAI,CAAC,gBAAgB,CACxB,yBAAyB,CAC1B,CAAC,OAAO,CAAC,OAAO,IAAG;YAClB,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,EAAE;YACtC,IAAI,CAAC,GAAG,EAAE;gBACR;YACF;AACA,YAAA,IAAI,OAAO,YAAY,gBAAgB,KAAK,OAAO,CAAC,IAAI,KAAK,UAAU,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,CAAC,EAAE;AACpG,gBAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,GAAG,GAAG,GAAG,EAAE,CAAC;YACzD;iBAAO;gBACL,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC;YAC5C;AACF,QAAA,CAAC,CAAC;IACJ;IAEQ,iBAAiB,GAAA;AACvB,QAAA,IAAI,CAAC,iBAAiB,IAAI;AAC1B,QAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI;AAC7B,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE;YACtD;QACF;AACA,QAAA,MAAM,GAAG,GAAG,IAAI,OAAO,EAAQ;QAC/B,MAAM,IAAI,GAAG,MAAK;YAChB,GAAG,CAAC,IAAI,EAAE;YACV,GAAG,CAAC,QAAQ,EAAE;AAChB,QAAA,CAAC;AACD,QAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI;AAC7B,QAAA,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,EAAE;AAE5B,QAAA,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAK;AAC/B,YAAA,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,UAAU,EAAE;AAC/B,gBAAA,MAAM,EAAE,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC;gBACvD,IAAI,CAAC,EAAE,EAAE;oBACP;gBACF;AACA,gBAAA,MAAM,EAAE,GACN,IAAI,CAAC,KAAK,KAAK;AACb,sBAAE,SAAS,CAAC,EAAE,EAAE,MAAM;AACtB,sBAAE,KAAK,CAAC,SAAS,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;gBAC5D,MAAM,KAAK,GACT,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE;AACzC,gBAAA,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,MAAK;AAClE,oBAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAK;AACjB,wBAAA,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC;AAClC,oBAAA,CAAC,CAAC;AACJ,gBAAA,CAAC,CAAC;YACJ;AACF,QAAA,CAAC,CAAC;QAEF,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,KAAK,KAAK,MAAM,EAAE;AAC/C,YAAA,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAK;AAC/B,gBAAA,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,UAAU,EAAE;AAC/B,oBAAA,MAAM,EAAE,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC;oBACvD,IAAI,CAAC,EAAE,EAAE;wBACP;oBACF;AACA,oBAAA,MAAM,KAAK,GACT,EAAE,GAAG;AACH,0BAAE,SAAS,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;AAC9C,0BAAE,SAAS,CAAC,EAAE,EAAE,OAAO,CAAC;AAC5B,oBAAA,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,MAAK;AAClE,wBAAA,MAAM,KAAK,GAAG,iBAAiB,CAAC,EAAE,CAAC;wBACnC,IAAI,KAAK,EAAE,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;AACtC,4BAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;wBACvD;AACF,oBAAA,CAAC,CAAC;gBACJ;AACF,YAAA,CAAC,CAAC;QACJ;IACF;IAEQ,eAAe,GAAA;AACrB,QAAA,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,UAAU,EAAE;AAC/B,YAAA,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC;QACjC;IACF;AAEQ,IAAA,YAAY,CAAC,UAAkB,EAAA;QACrC,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC;QAC5C,IAAI,IAAI,EAAE;AACR,YAAA,kCAAkC,CAAC,IAAI,EAAE,IAAI,CAAC;QAChD;QACA,MAAM,EAAE,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC;AACrD,QAAA,MAAM,KAAK,GAAG,EAAE,GAAG,iBAAiB,CAAC,EAAE,CAAC,GAAG,IAAI;QAC/C,IAAI,KAAK,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC;YACzC,MAAM,MAAM,GAAG,KAAK,CAAC,aAAa,CAAc,SAAS,CAAC;YAC1D,IAAI,MAAM,EAAE;gBACV,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,aAAa,EAAE,EAAE,CAAC;AACpD,gBAAA,IAAI,IAAI,CAAC,SAAS,EAAE;oBAClB,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,SAAS,CAAC;gBAC9C;qBAAO;oBACL,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC;gBACnD;YACF;QACF;IACF;IAEQ,eAAe,CAAC,UAAkB,EAAE,OAAe,EAAA;QACzD,MAAM,EAAE,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC;AACrD,QAAA,MAAM,KAAK,GAAG,EAAE,GAAG,iBAAiB,CAAC,EAAE,CAAC,GAAG,IAAI;QAC/C,IAAI,CAAC,KAAK,EAAE;YACV;QACF;QACA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;AACtC,QAAA,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACnB;QACF;QACA,IAAI,MAAM,GAAG,KAAK,CAAC,aAAa,CAAc,SAAS,CAAC;QACxD,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;YAC3C,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC;YACpC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;YACvC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC;YACrC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;YAC1C,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;YACvC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC;YACxC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC;YACnD,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC;QAC1C;QACA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,aAAa,EAAE,OAAO,CAAC;QACzD,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,SAAS,CAAC;IAC9C;AAEQ,IAAA,qBAAqB,CAAC,QAAkB,EAAA;QAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAc,mCAAmC,CAAC;QACvF,IAAI,CAAC,KAAK,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;YAC9B;QACF;QACA,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC;AAC5C,QAAA,EAAE,CAAC,SAAS,GAAG,MAAM;AACrB,QAAA,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE;YACxB,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC;AAC5C,YAAA,EAAE,CAAC,WAAW,GAAG,CAAC;AAClB,YAAA,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;QACpB;AACA,QAAA,KAAK,CAAC,SAAS,GAAG,EAAE;AACpB,QAAA,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;QACrB,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC;IAC5C;IAEQ,qBAAqB,GAAA;QAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAc,mCAAmC,CAAC;QACvF,IAAI,KAAK,EAAE;AACT,YAAA,KAAK,CAAC,SAAS,GAAG,EAAE;QACtB;IACF;IAEQ,iBAAiB,CAAC,EAAe,EAAE,KAAc,EAAA;AACvD,QAAA,IAAI,EAAE,YAAY,gBAAgB,EAAE;AAClC,YAAA,IAAI,EAAE,CAAC,IAAI,KAAK,UAAU,EAAE;AAC1B,gBAAA,EAAE,CAAC,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC;gBAC3B;YACF;AACA,YAAA,IAAI,EAAE,CAAC,IAAI,KAAK,OAAO,EAAE;gBACvB,MAAM,IAAI,GAAG,EAAE,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI;AACjC,gBAAA,MAAM,IAAI,GAAG,EAAE,CAAC,IAAI;gBACpB,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;gBAC/B;AACG,qBAAA,gBAAgB,CACf,CAAA,0BAAA,EAA6B,kBAAkB,CAAC,IAAI,CAAC,IAAI;qBAE1D,OAAO,CAAC,CAAC,IAAG;oBACX,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,KAAK,KAAK,GAAG;AAC7B,gBAAA,CAAC,CAAC;gBACJ;YACF;YACA,EAAE,CAAC,KAAK,GAAG,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,GAAG,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC;YACrE;QACF;AACA,QAAA,IAAI,EAAE,YAAY,iBAAiB,EAAE;YACnC,IAAI,EAAE,CAAC,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AACvC,gBAAA,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACtC,gBAAA,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,IAAG;oBACjC,CAAC,CAAC,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;AAC/B,gBAAA,CAAC,CAAC;YACJ;iBAAO;gBACL,EAAE,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;YAChC;YACA;QACF;AACA,QAAA,IAAI,EAAE,YAAY,mBAAmB,EAAE;YACrC,EAAE,CAAC,KAAK,GAAG,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,GAAG,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC;QACvE;IACF;8GAxgBW,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAA1B,0BAA0B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,WAAA,EAAA,KAAA,EAAA,OAAA,EAAA,SAAA,EAAA,WAAA,EAAA,aAAA,EAAA,eAAA,EAAA,QAAA,EAAA,UAAA,EAAA,oBAAA,EAAA,sBAAA,EAAA,+BAAA,EAAA,iCAAA,EAAA,EAAA,OAAA,EAAA,EAAA,YAAA,EAAA,cAAA,EAAA,YAAA,EAAA,cAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,SAAA,EAAA,uBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;AAWL,UAAA,CAAA;AAAtB,IAAA,YAAY;AAA4B,CAAA,EAAA,0BAAA,CAAA,SAAA,EAAA,WAAA,EAAA,KAAA,CAAA,CAAA;AAClB,UAAA,CAAA;AAAtB,IAAA,YAAY;AAA+B,CAAA,EAAA,0BAAA,CAAA,SAAA,EAAA,eAAA,EAAA,KAAA,CAAA,CAAA;AAGrB,UAAA,CAAA;AAAtB,IAAA,YAAY;AAAsC,CAAA,EAAA,0BAAA,CAAA,SAAA,EAAA,sBAAA,EAAA,KAAA,CAAA,CAAA;AAE5B,UAAA,CAAA;AAAtB,IAAA,YAAY;AAAiD,CAAA,EAAA,0BAAA,CAAA,SAAA,EAAA,iCAAA,EAAA,KAAA,CAAA,CAAA;2FAjB5D,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBALtC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,yBAAyB;AACnC,oBAAA,QAAQ,EAAE;AACX,iBAAA;;sBASE;;sBAEA;;sBACA;;sBACA;;sBAEA;;sBACA;;sBAEA;;sBAEA;;sBACA;;sBA+CA,YAAY;uBAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC;;sBA4BjC,YAAY;uBAAC,SAAS,EAAE,CAAC,QAAQ,CAAC;;;ACnJrC;;AAEG;MA6BU,aAAa,CAAA;8GAAb,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAb,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,YAjBtB,YAAY;YACZ,WAAW;YACX,mBAAmB;YACnB,qBAAqB;YACrB,gBAAgB;YAChB,sBAAsB;AACtB,YAAA,0BAA0B,aAG1B,WAAW;YACX,mBAAmB;YACnB,qBAAqB;YACrB,gBAAgB;YAChB,sBAAsB;YACtB,0BAA0B,CAAA,EAAA,CAAA,CAAA;AAGjB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,YAjBtB,YAAY;YACZ,WAAW;AACX,YAAA,mBAAmB,EAOnB,WAAW;YACX,mBAAmB,CAAA,EAAA,CAAA,CAAA;;2FAOV,aAAa,EAAA,UAAA,EAAA,CAAA;kBAnBzB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,WAAW;wBACX,mBAAmB;wBACnB,qBAAqB;wBACrB,gBAAgB;wBAChB,sBAAsB;wBACtB;AACD,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,WAAW;wBACX,mBAAmB;wBACnB,qBAAqB;wBACrB,gBAAgB;wBAChB,sBAAsB;wBACtB;AACD;AACF,iBAAA;;;AC9BD;;AAEG;;ACFH;;AAEG;;;;"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { __decorate } from 'tslib';
|
|
2
2
|
import * as i0 from '@angular/core';
|
|
3
|
-
import { Input, Directive, NgModule } from '@angular/core';
|
|
3
|
+
import { inject, ElementRef, Input, Directive, NgModule } from '@angular/core';
|
|
4
4
|
import { ClassUtils, InputBoolean } from 'ngx-semantic/core/util';
|
|
5
5
|
import { BaseDirective } from 'ngx-semantic/core/base';
|
|
6
6
|
import { CommonModule } from '@angular/common';
|
|
7
7
|
|
|
8
8
|
class SuiGridDirective extends BaseDirective {
|
|
9
|
-
constructor(
|
|
9
|
+
constructor() {
|
|
10
|
+
const element = inject(ElementRef);
|
|
10
11
|
super(element);
|
|
11
12
|
this.suiWidth = null;
|
|
12
13
|
this.suiAlignment = null;
|
|
@@ -40,7 +41,7 @@ class SuiGridDirective extends BaseDirective {
|
|
|
40
41
|
ClassUtils.getPropClass(this.suiContainer, 'container')
|
|
41
42
|
].join(' ');
|
|
42
43
|
}
|
|
43
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiGridDirective, deps: [
|
|
44
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiGridDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
44
45
|
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.7", type: SuiGridDirective, isStandalone: true, selector: "[sui-grid]", inputs: { suiWidth: "suiWidth", suiAlignment: "suiAlignment", suiDivided: "suiDivided", suiCelled: "suiCelled", suiPadded: "suiPadded", suiReversed: "suiReversed", suiRelaxation: "suiRelaxation", suiEqual: "suiEqual", suiCentered: "suiCentered", suiContainer: "suiContainer", suiStackable: "suiStackable", suiDoubling: "suiDoubling" }, exportAs: ["suiGrid"], usesInheritance: true, ngImport: i0 }); }
|
|
45
46
|
}
|
|
46
47
|
__decorate([
|
|
@@ -65,7 +66,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImpor
|
|
|
65
66
|
selector: '[sui-grid]',
|
|
66
67
|
exportAs: 'suiGrid'
|
|
67
68
|
}]
|
|
68
|
-
}], ctorParameters: () => [
|
|
69
|
+
}], ctorParameters: () => [], propDecorators: { suiWidth: [{
|
|
69
70
|
type: Input
|
|
70
71
|
}], suiAlignment: [{
|
|
71
72
|
type: Input
|
|
@@ -95,7 +96,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImpor
|
|
|
95
96
|
* Created by bolor on 6/14/2020
|
|
96
97
|
*/
|
|
97
98
|
class SuiGridColumnDirective extends BaseDirective {
|
|
98
|
-
constructor(
|
|
99
|
+
constructor() {
|
|
100
|
+
const element = inject(ElementRef);
|
|
99
101
|
super(element);
|
|
100
102
|
this.suiWidth = null;
|
|
101
103
|
this.suiFloated = null;
|
|
@@ -114,7 +116,7 @@ class SuiGridColumnDirective extends BaseDirective {
|
|
|
114
116
|
'column'
|
|
115
117
|
].join(' ');
|
|
116
118
|
}
|
|
117
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiGridColumnDirective, deps: [
|
|
119
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiGridColumnDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
118
120
|
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.7", type: SuiGridColumnDirective, isStandalone: true, selector: "[suiGridColumn]", inputs: { suiWidth: "suiWidth", suiFloated: "suiFloated", suiColour: "suiColour", suiAlignment: "suiAlignment", suiDeviceVisibility: "suiDeviceVisibility" }, exportAs: ["suiGridColumn"], usesInheritance: true, ngImport: i0 }); }
|
|
119
121
|
}
|
|
120
122
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiGridColumnDirective, decorators: [{
|
|
@@ -124,7 +126,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImpor
|
|
|
124
126
|
exportAs: 'suiGridColumn',
|
|
125
127
|
selector: '[suiGridColumn]'
|
|
126
128
|
}]
|
|
127
|
-
}], ctorParameters: () => [
|
|
129
|
+
}], ctorParameters: () => [], propDecorators: { suiWidth: [{
|
|
128
130
|
type: Input
|
|
129
131
|
}], suiFloated: [{
|
|
130
132
|
type: Input
|
|
@@ -137,7 +139,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImpor
|
|
|
137
139
|
}] } });
|
|
138
140
|
|
|
139
141
|
class SuiGridRowDirective extends BaseDirective {
|
|
140
|
-
constructor(
|
|
142
|
+
constructor() {
|
|
143
|
+
const element = inject(ElementRef);
|
|
141
144
|
super(element);
|
|
142
145
|
this.suiWidth = null;
|
|
143
146
|
this.suiAlignment = null;
|
|
@@ -156,7 +159,7 @@ class SuiGridRowDirective extends BaseDirective {
|
|
|
156
159
|
'row'
|
|
157
160
|
].join(' ');
|
|
158
161
|
}
|
|
159
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiGridRowDirective, deps: [
|
|
162
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiGridRowDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
160
163
|
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.7", type: SuiGridRowDirective, isStandalone: true, selector: "[suiGridRow]", inputs: { suiWidth: "suiWidth", suiAlignment: "suiAlignment", suiDeviceVisibility: "suiDeviceVisibility", suiEqual: "suiEqual", suiCentered: "suiCentered" }, exportAs: ["suiGridRow"], usesInheritance: true, ngImport: i0 }); }
|
|
161
164
|
}
|
|
162
165
|
__decorate([
|
|
@@ -172,7 +175,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImpor
|
|
|
172
175
|
exportAs: 'suiGridRow',
|
|
173
176
|
selector: '[suiGridRow]'
|
|
174
177
|
}]
|
|
175
|
-
}], ctorParameters: () => [
|
|
178
|
+
}], ctorParameters: () => [], propDecorators: { suiWidth: [{
|
|
176
179
|
type: Input
|
|
177
180
|
}], suiAlignment: [{
|
|
178
181
|
type: Input
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngx-semantic-collections-grid.mjs","sources":["../../src/collections/grid/grid.directive.ts","../../src/collections/grid/grid-column.directive.ts","../../src/collections/grid/grid-row.directive.ts","../../src/collections/grid/grid.module.ts","../../src/collections/grid/public-api.ts","../../src/collections/grid/ngx-semantic-collections-grid.ts"],"sourcesContent":["/**\n * Created by bolor on 6/11/2020\n */\n\nimport {Directive, ElementRef, Input} from '@angular/core';\nimport {SuiWidth} from 'ngx-semantic/core/enums';\nimport {ClassUtils, InputBoolean} from 'ngx-semantic/core/util';\nimport {BaseDirective} from 'ngx-semantic/core/base';\n\nexport type SuiGridAlignment = 'left aligned' | 'center aligned' | 'right aligned' | null;\nexport type SuiGridDivision = 'divided' | 'vertically divided' | null;\nexport type SuiGridCellType = 'celled' | 'internally celled' | null;\nexport type SuiGridPadding = 'padding' | 'vertically padding' | null;\nexport type SuiGridReverse = 'computer reversed' | 'tablet reversed' | 'mobile reversed' | null;\nexport type SuiGridRelaxation = 'relaxed' | 'very relaxed' | null;\n\n@Directive({\n standalone: true,\n selector: '[sui-grid]',\n exportAs: 'suiGrid'\n})\nexport class SuiGridDirective extends BaseDirective {\n @Input() public suiWidth: SuiWidth = null;\n @Input() public suiAlignment: SuiGridAlignment = null;\n @Input() public suiDivided: SuiGridDivision = null;\n @Input() public suiCelled: SuiGridCellType = null;\n @Input() public suiPadded: SuiGridPadding = null;\n @Input() public suiReversed: SuiGridReverse = null;\n @Input() public suiRelaxation: SuiGridRelaxation = null;\n @Input() @InputBoolean() public suiEqual = false;\n @Input() @InputBoolean() public suiCentered = false;\n @Input() @InputBoolean() public suiContainer = false;\n @Input() @InputBoolean() public suiStackable = false;\n @Input() @InputBoolean() public suiDoubling = false;\n\n constructor(element: ElementRef) {\n super(element);\n }\n\n get classes(): string {\n return [\n 'ui',\n this.suiWidth,\n this.suiWidth ? 'column' : '',\n this.suiAlignment,\n this.suiDivided,\n this.suiCelled,\n this.suiPadded,\n this.suiReversed,\n this.suiRelaxation,\n ClassUtils.getPropClass(this.suiStackable, 'stackable'),\n ClassUtils.getPropClass(this.suiEqual, 'equal width'),\n ClassUtils.getPropClass(this.suiCentered, 'centered'),\n ClassUtils.getPropClass(this.suiDoubling, 'doubling'),\n 'grid',\n ClassUtils.getPropClass(this.suiContainer, 'container')\n ].join(' ');\n }\n}\n","/**\n * Created by bolor on 6/14/2020\n */\n\nimport {Directive, ElementRef, Input} from '@angular/core';\nimport {SuiColour, SuiWidth} from 'ngx-semantic/core/enums';\nimport {BaseDirective} from 'ngx-semantic/core/base';\n\nexport type SuiColumnFloat = 'left floated' | 'right floated' | null;\nexport type SuiColumnAlignment = 'left aligned' | 'middle aligned' | 'right aligned' | null;\n\n@Directive({\n standalone: true,\n exportAs: 'suiGridColumn',\n selector: '[suiGridColumn]'\n})\nexport class SuiGridColumnDirective extends BaseDirective{\n @Input() public suiWidth: SuiWidth = null;\n @Input() public suiFloated: SuiColumnFloat = null;\n @Input() public suiColour: SuiColour = null;\n @Input() public suiAlignment: SuiColumnAlignment = null;\n @Input() public suiDeviceVisibility: string | null = null;\n\n constructor(element: ElementRef) {\n super(element);\n }\n\n get classes(): string {\n return [\n this.suiFloated,\n this.suiAlignment,\n this.suiWidth,\n this.suiWidth ? 'wide' : '',\n this.suiColour,\n this.suiDeviceVisibility,\n 'column'\n ].join(' ');\n }\n}\n","/**\n * Created by bolor on 6/14/2020\n */\n\nimport {Directive, ElementRef, Input} from '@angular/core';\nimport {SuiDeviceVisibility, SuiWidth} from 'ngx-semantic/core/enums';\nimport {ClassUtils, InputBoolean} from 'ngx-semantic/core/util';\nimport {BaseDirective} from 'ngx-semantic/core/base';\n\nexport type SuiRowAlignment = 'left aligned' | 'middle aligned' | 'right aligned' | null;\n\n@Directive({\n standalone: true,\n exportAs: 'suiGridRow',\n selector: '[suiGridRow]'\n})\nexport class SuiGridRowDirective extends BaseDirective {\n @Input() public suiWidth: SuiWidth = null;\n @Input() public suiAlignment: SuiRowAlignment = null;\n @Input() public suiDeviceVisibility: SuiDeviceVisibility = null;\n @Input() @InputBoolean() public suiEqual = false;\n @Input() @InputBoolean() public suiCentered = false;\n\n constructor(element: ElementRef) {\n super(element);\n }\n\n get classes(): string {\n return [\n this.suiAlignment,\n this.suiWidth,\n this.suiWidth ? 'column' : '',\n this.suiDeviceVisibility,\n ClassUtils.getPropClass(this.suiEqual, 'equal width'),\n ClassUtils.getPropClass(this.suiCentered, 'centered'),\n 'row'\n ].join(' ');\n }\n}\n","/**\n * Created by bolor on 5/26/2020\n */\n\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {SuiGridDirective} from './grid.directive';\nimport {SuiGridColumnDirective} from './grid-column.directive';\nimport {SuiGridRowDirective} from './grid-row.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n SuiGridDirective,\n SuiGridColumnDirective,\n SuiGridRowDirective\n ],\n exports: [\n SuiGridDirective,\n SuiGridColumnDirective,\n SuiGridRowDirective\n ]\n})\nexport class SuiGridModule {\n}\n","/**\n * Created by bolor on 6/11/2020\n */\n\nexport * from './grid.directive';\nexport * from './grid-column.directive';\nexport * from './grid-row.directive';\nexport * from './grid.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ngx-semantic-collections-grid.mjs","sources":["../../src/collections/grid/grid.directive.ts","../../src/collections/grid/grid-column.directive.ts","../../src/collections/grid/grid-row.directive.ts","../../src/collections/grid/grid.module.ts","../../src/collections/grid/public-api.ts","../../src/collections/grid/ngx-semantic-collections-grid.ts"],"sourcesContent":["/**\n * Created by bolor on 6/11/2020\n */\n\nimport { Directive, ElementRef, Input, inject } from '@angular/core';\nimport { SuiWidth } from 'ngx-semantic/core/enums';\nimport { ClassUtils, InputBoolean } from 'ngx-semantic/core/util';\nimport { BaseDirective } from 'ngx-semantic/core/base';\n\nexport type SuiGridAlignment = 'left aligned' | 'center aligned' | 'right aligned' | null;\nexport type SuiGridDivision = 'divided' | 'vertically divided' | null;\nexport type SuiGridCellType = 'celled' | 'internally celled' | null;\nexport type SuiGridPadding = 'padding' | 'vertically padding' | null;\nexport type SuiGridReverse = 'computer reversed' | 'tablet reversed' | 'mobile reversed' | null;\nexport type SuiGridRelaxation = 'relaxed' | 'very relaxed' | null;\n\n@Directive({\n standalone: true,\n selector: '[sui-grid]',\n exportAs: 'suiGrid'\n})\nexport class SuiGridDirective extends BaseDirective {\n @Input() public suiWidth: SuiWidth = null;\n @Input() public suiAlignment: SuiGridAlignment = null;\n @Input() public suiDivided: SuiGridDivision = null;\n @Input() public suiCelled: SuiGridCellType = null;\n @Input() public suiPadded: SuiGridPadding = null;\n @Input() public suiReversed: SuiGridReverse = null;\n @Input() public suiRelaxation: SuiGridRelaxation = null;\n @Input() @InputBoolean() public suiEqual = false;\n @Input() @InputBoolean() public suiCentered = false;\n @Input() @InputBoolean() public suiContainer = false;\n @Input() @InputBoolean() public suiStackable = false;\n @Input() @InputBoolean() public suiDoubling = false;\n\n constructor() {\n const element = inject(ElementRef);\n\n super(element);\n }\n\n get classes(): string {\n return [\n 'ui',\n this.suiWidth,\n this.suiWidth ? 'column' : '',\n this.suiAlignment,\n this.suiDivided,\n this.suiCelled,\n this.suiPadded,\n this.suiReversed,\n this.suiRelaxation,\n ClassUtils.getPropClass(this.suiStackable, 'stackable'),\n ClassUtils.getPropClass(this.suiEqual, 'equal width'),\n ClassUtils.getPropClass(this.suiCentered, 'centered'),\n ClassUtils.getPropClass(this.suiDoubling, 'doubling'),\n 'grid',\n ClassUtils.getPropClass(this.suiContainer, 'container')\n ].join(' ');\n }\n}\n","/**\n * Created by bolor on 6/14/2020\n */\n\nimport { Directive, ElementRef, Input, inject } from '@angular/core';\nimport { SuiColour, SuiWidth } from 'ngx-semantic/core/enums';\nimport { BaseDirective } from 'ngx-semantic/core/base';\n\nexport type SuiColumnFloat = 'left floated' | 'right floated' | null;\nexport type SuiColumnAlignment = 'left aligned' | 'middle aligned' | 'right aligned' | null;\n\n@Directive({\n standalone: true,\n exportAs: 'suiGridColumn',\n selector: '[suiGridColumn]'\n})\nexport class SuiGridColumnDirective extends BaseDirective{\n @Input() public suiWidth: SuiWidth = null;\n @Input() public suiFloated: SuiColumnFloat = null;\n @Input() public suiColour: SuiColour = null;\n @Input() public suiAlignment: SuiColumnAlignment = null;\n @Input() public suiDeviceVisibility: string | null = null;\n\n constructor() {\n const element = inject(ElementRef);\n\n super(element);\n }\n\n get classes(): string {\n return [\n this.suiFloated,\n this.suiAlignment,\n this.suiWidth,\n this.suiWidth ? 'wide' : '',\n this.suiColour,\n this.suiDeviceVisibility,\n 'column'\n ].join(' ');\n }\n}\n","/**\n * Created by bolor on 6/14/2020\n */\n\nimport { Directive, ElementRef, Input, inject } from '@angular/core';\nimport { SuiDeviceVisibility, SuiWidth } from 'ngx-semantic/core/enums';\nimport { ClassUtils, InputBoolean } from 'ngx-semantic/core/util';\nimport { BaseDirective } from 'ngx-semantic/core/base';\n\nexport type SuiRowAlignment = 'left aligned' | 'middle aligned' | 'right aligned' | null;\n\n@Directive({\n standalone: true,\n exportAs: 'suiGridRow',\n selector: '[suiGridRow]'\n})\nexport class SuiGridRowDirective extends BaseDirective {\n @Input() public suiWidth: SuiWidth = null;\n @Input() public suiAlignment: SuiRowAlignment = null;\n @Input() public suiDeviceVisibility: SuiDeviceVisibility = null;\n @Input() @InputBoolean() public suiEqual = false;\n @Input() @InputBoolean() public suiCentered = false;\n\n constructor() {\n const element = inject(ElementRef);\n\n super(element);\n }\n\n get classes(): string {\n return [\n this.suiAlignment,\n this.suiWidth,\n this.suiWidth ? 'column' : '',\n this.suiDeviceVisibility,\n ClassUtils.getPropClass(this.suiEqual, 'equal width'),\n ClassUtils.getPropClass(this.suiCentered, 'centered'),\n 'row'\n ].join(' ');\n }\n}\n","/**\n * Created by bolor on 5/26/2020\n */\n\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SuiGridDirective } from './grid.directive';\nimport { SuiGridColumnDirective } from './grid-column.directive';\nimport { SuiGridRowDirective } from './grid-row.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n SuiGridDirective,\n SuiGridColumnDirective,\n SuiGridRowDirective\n ],\n exports: [\n SuiGridDirective,\n SuiGridColumnDirective,\n SuiGridRowDirective\n ]\n})\nexport class SuiGridModule {\n}\n","/**\n * Created by bolor on 6/11/2020\n */\n\nexport * from './grid.directive';\nexport * from './grid-column.directive';\nexport * from './grid-row.directive';\nexport * from './grid.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;AAqBM,MAAO,gBAAiB,SAAQ,aAAa,CAAA;AAcjD,IAAA,WAAA,GAAA;AACE,QAAA,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC;QAElC,KAAK,CAAC,OAAO,CAAC;QAhBA,IAAA,CAAA,QAAQ,GAAa,IAAI;QACzB,IAAA,CAAA,YAAY,GAAqB,IAAI;QACrC,IAAA,CAAA,UAAU,GAAoB,IAAI;QAClC,IAAA,CAAA,SAAS,GAAoB,IAAI;QACjC,IAAA,CAAA,SAAS,GAAmB,IAAI;QAChC,IAAA,CAAA,WAAW,GAAmB,IAAI;QAClC,IAAA,CAAA,aAAa,GAAsB,IAAI;QACvB,IAAA,CAAA,QAAQ,GAAG,KAAK;QAChB,IAAA,CAAA,WAAW,GAAG,KAAK;QACnB,IAAA,CAAA,YAAY,GAAG,KAAK;QACpB,IAAA,CAAA,YAAY,GAAG,KAAK;QACpB,IAAA,CAAA,WAAW,GAAG,KAAK;IAMnD;AAEA,IAAA,IAAI,OAAO,GAAA;QACT,OAAO;YACL,IAAI;AACJ,YAAA,IAAI,CAAC,QAAQ;YACb,IAAI,CAAC,QAAQ,GAAG,QAAQ,GAAG,EAAE;AAC7B,YAAA,IAAI,CAAC,YAAY;AACjB,YAAA,IAAI,CAAC,UAAU;AACf,YAAA,IAAI,CAAC,SAAS;AACd,YAAA,IAAI,CAAC,SAAS;AACd,YAAA,IAAI,CAAC,WAAW;AAChB,YAAA,IAAI,CAAC,aAAa;YAClB,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,EAAE,WAAW,CAAC;YACvD,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC;YACrD,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC;YACrD,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC;YACrD,MAAM;YACN,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,EAAE,WAAW;AACvD,SAAA,CAAC,IAAI,CAAC,GAAG,CAAC;IACb;8GAtCW,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,YAAA,EAAA,cAAA,EAAA,UAAA,EAAA,YAAA,EAAA,SAAA,EAAA,WAAA,EAAA,SAAA,EAAA,WAAA,EAAA,WAAA,EAAA,aAAA,EAAA,aAAA,EAAA,eAAA,EAAA,QAAA,EAAA,UAAA,EAAA,WAAA,EAAA,aAAA,EAAA,YAAA,EAAA,cAAA,EAAA,YAAA,EAAA,cAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;AAQK,UAAA,CAAA;AAAtB,IAAA,YAAY;AAA2B,CAAA,EAAA,gBAAA,CAAA,SAAA,EAAA,UAAA,EAAA,KAAA,CAAA,CAAA;AACjB,UAAA,CAAA;AAAtB,IAAA,YAAY;AAA8B,CAAA,EAAA,gBAAA,CAAA,SAAA,EAAA,aAAA,EAAA,KAAA,CAAA,CAAA;AACpB,UAAA,CAAA;AAAtB,IAAA,YAAY;AAA+B,CAAA,EAAA,gBAAA,CAAA,SAAA,EAAA,cAAA,EAAA,KAAA,CAAA,CAAA;AACrB,UAAA,CAAA;AAAtB,IAAA,YAAY;AAA+B,CAAA,EAAA,gBAAA,CAAA,SAAA,EAAA,cAAA,EAAA,KAAA,CAAA,CAAA;AACrB,UAAA,CAAA;AAAtB,IAAA,YAAY;AAA8B,CAAA,EAAA,gBAAA,CAAA,SAAA,EAAA,aAAA,EAAA,KAAA,CAAA,CAAA;2FAZzC,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAL5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,YAAY;AACtB,oBAAA,QAAQ,EAAE;AACX,iBAAA;;sBAEE;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;;ACjCH;;AAEG;AAcG,MAAO,sBAAuB,SAAQ,aAAa,CAAA;AAOvD,IAAA,WAAA,GAAA;AACE,QAAA,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC;QAElC,KAAK,CAAC,OAAO,CAAC;QATA,IAAA,CAAA,QAAQ,GAAa,IAAI;QACzB,IAAA,CAAA,UAAU,GAAmB,IAAI;QACjC,IAAA,CAAA,SAAS,GAAc,IAAI;QAC3B,IAAA,CAAA,YAAY,GAAuB,IAAI;QACvC,IAAA,CAAA,mBAAmB,GAAkB,IAAI;IAMzD;AAEA,IAAA,IAAI,OAAO,GAAA;QACT,OAAO;AACL,YAAA,IAAI,CAAC,UAAU;AACf,YAAA,IAAI,CAAC,YAAY;AACjB,YAAA,IAAI,CAAC,QAAQ;YACb,IAAI,CAAC,QAAQ,GAAG,MAAM,GAAG,EAAE;AAC3B,YAAA,IAAI,CAAC,SAAS;AACd,YAAA,IAAI,CAAC,mBAAmB;YACxB;AACD,SAAA,CAAC,IAAI,CAAC,GAAG,CAAC;IACb;8GAvBW,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAtB,sBAAsB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,UAAA,EAAA,YAAA,EAAA,SAAA,EAAA,WAAA,EAAA,YAAA,EAAA,cAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,EAAA,QAAA,EAAA,CAAA,eAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAtB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBALlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,eAAe;AACzB,oBAAA,QAAQ,EAAE;AACX,iBAAA;;sBAEE;;sBACA;;sBACA;;sBACA;;sBACA;;;ACLG,MAAO,mBAAoB,SAAQ,aAAa,CAAA;AAOpD,IAAA,WAAA,GAAA;AACE,QAAA,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC;QAElC,KAAK,CAAC,OAAO,CAAC;QATA,IAAA,CAAA,QAAQ,GAAa,IAAI;QACzB,IAAA,CAAA,YAAY,GAAoB,IAAI;QACpC,IAAA,CAAA,mBAAmB,GAAwB,IAAI;QAC/B,IAAA,CAAA,QAAQ,GAAG,KAAK;QAChB,IAAA,CAAA,WAAW,GAAG,KAAK;IAMnD;AAEA,IAAA,IAAI,OAAO,GAAA;QACT,OAAO;AACL,YAAA,IAAI,CAAC,YAAY;AACjB,YAAA,IAAI,CAAC,QAAQ;YACb,IAAI,CAAC,QAAQ,GAAG,QAAQ,GAAG,EAAE;AAC7B,YAAA,IAAI,CAAC,mBAAmB;YACxB,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC;YACrD,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC;YACrD;AACD,SAAA,CAAC,IAAI,CAAC,GAAG,CAAC;IACb;8GAvBW,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAnB,mBAAmB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,YAAA,EAAA,cAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;AAIE,UAAA,CAAA;AAAtB,IAAA,YAAY;AAA2B,CAAA,EAAA,mBAAA,CAAA,SAAA,EAAA,UAAA,EAAA,KAAA,CAAA,CAAA;AACjB,UAAA,CAAA;AAAtB,IAAA,YAAY;AAA8B,CAAA,EAAA,mBAAA,CAAA,SAAA,EAAA,aAAA,EAAA,KAAA,CAAA,CAAA;2FALzC,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAL/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,YAAY;AACtB,oBAAA,QAAQ,EAAE;AACX,iBAAA;;sBAEE;;sBACA;;sBACA;;sBACA;;sBACA;;;ACrBH;;AAEG;MAqBU,aAAa,CAAA;8GAAb,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAb,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,YAXtB,YAAY;YACZ,gBAAgB;YAChB,sBAAsB;AACtB,YAAA,mBAAmB,aAGnB,gBAAgB;YAChB,sBAAsB;YACtB,mBAAmB,CAAA,EAAA,CAAA,CAAA;AAGV,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,YAXtB,YAAY,CAAA,EAAA,CAAA,CAAA;;2FAWH,aAAa,EAAA,UAAA,EAAA,CAAA;kBAbzB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,gBAAgB;wBAChB,sBAAsB;wBACtB;AACD,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,gBAAgB;wBAChB,sBAAsB;wBACtB;AACD;AACF,iBAAA;;;ACtBD;;AAEG;;ACFH;;AAEG;;;;"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { __decorate } from 'tslib';
|
|
2
2
|
import * as i0 from '@angular/core';
|
|
3
|
-
import { Input, Directive, HostBinding, NgModule } from '@angular/core';
|
|
3
|
+
import { inject, ElementRef, Input, Directive, HostBinding, NgModule } from '@angular/core';
|
|
4
4
|
import { ClassUtils, InputBoolean } from 'ngx-semantic/core/util';
|
|
5
5
|
import { BaseDirective } from 'ngx-semantic/core/base';
|
|
6
6
|
import { CommonModule } from '@angular/common';
|
|
7
7
|
|
|
8
8
|
class SuiMenuDirective extends BaseDirective {
|
|
9
|
-
constructor(
|
|
9
|
+
constructor() {
|
|
10
|
+
const element = inject(ElementRef);
|
|
10
11
|
super(element);
|
|
11
12
|
this.suiWidth = null;
|
|
12
13
|
this.suiAttached = null;
|
|
@@ -54,7 +55,7 @@ class SuiMenuDirective extends BaseDirective {
|
|
|
54
55
|
'menu'
|
|
55
56
|
].join(' ');
|
|
56
57
|
}
|
|
57
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiMenuDirective, deps: [
|
|
58
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiMenuDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
58
59
|
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.7", type: SuiMenuDirective, isStandalone: true, selector: "[sui-menu]", inputs: { suiWidth: "suiWidth", suiAttached: "suiAttached", suiFixed: "suiFixed", suiColour: "suiColour", suiIcon: "suiIcon", suiSize: "suiSize", suiText: "suiText", suiSecondary: "suiSecondary", suiPointing: "suiPointing", suiTabular: "suiTabular", suiVertical: "suiVertical", suiFluid: "suiFluid", suiRight: "suiRight", suiPagination: "suiPagination", suiCompact: "suiCompact", suiStackable: "suiStackable", suiInverted: "suiInverted", suiBorderless: "suiBorderless" }, exportAs: ["suiMenu"], usesInheritance: true, ngImport: i0 }); }
|
|
59
60
|
}
|
|
60
61
|
__decorate([
|
|
@@ -100,7 +101,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImpor
|
|
|
100
101
|
selector: '[sui-menu]',
|
|
101
102
|
exportAs: 'suiMenu'
|
|
102
103
|
}]
|
|
103
|
-
}], ctorParameters: () => [
|
|
104
|
+
}], ctorParameters: () => [], propDecorators: { suiWidth: [{
|
|
104
105
|
type: Input
|
|
105
106
|
}], suiAttached: [{
|
|
106
107
|
type: Input
|
|
@@ -138,11 +139,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImpor
|
|
|
138
139
|
type: Input
|
|
139
140
|
}] } });
|
|
140
141
|
|
|
141
|
-
/**
|
|
142
|
-
* Created by bolor on 7/3/2020
|
|
143
|
-
*/
|
|
144
142
|
class SuiMenuItemDirective extends BaseDirective {
|
|
145
|
-
constructor(
|
|
143
|
+
constructor() {
|
|
144
|
+
const element = inject(ElementRef);
|
|
146
145
|
super(element);
|
|
147
146
|
this.suiLink = false;
|
|
148
147
|
this.suiActive = false;
|
|
@@ -158,9 +157,21 @@ class SuiMenuItemDirective extends BaseDirective {
|
|
|
158
157
|
'item'
|
|
159
158
|
].join(' ');
|
|
160
159
|
}
|
|
161
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiMenuItemDirective, deps: [
|
|
160
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiMenuItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
162
161
|
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.7", type: SuiMenuItemDirective, isStandalone: true, selector: "[suiMenuItem]", inputs: { suiLink: "suiLink", suiActive: "suiActive", suiBrowser: "suiBrowser", disabled: "disabled" }, exportAs: ["suiMenuItem"], usesInheritance: true, ngImport: i0 }); }
|
|
163
162
|
}
|
|
163
|
+
__decorate([
|
|
164
|
+
InputBoolean()
|
|
165
|
+
], SuiMenuItemDirective.prototype, "suiLink", void 0);
|
|
166
|
+
__decorate([
|
|
167
|
+
InputBoolean()
|
|
168
|
+
], SuiMenuItemDirective.prototype, "suiActive", void 0);
|
|
169
|
+
__decorate([
|
|
170
|
+
InputBoolean()
|
|
171
|
+
], SuiMenuItemDirective.prototype, "suiBrowser", void 0);
|
|
172
|
+
__decorate([
|
|
173
|
+
InputBoolean()
|
|
174
|
+
], SuiMenuItemDirective.prototype, "disabled", void 0);
|
|
164
175
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiMenuItemDirective, decorators: [{
|
|
165
176
|
type: Directive,
|
|
166
177
|
args: [{
|
|
@@ -168,7 +179,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImpor
|
|
|
168
179
|
exportAs: 'suiMenuItem',
|
|
169
180
|
selector: '[suiMenuItem]'
|
|
170
181
|
}]
|
|
171
|
-
}], ctorParameters: () => [
|
|
182
|
+
}], ctorParameters: () => [], propDecorators: { suiLink: [{
|
|
172
183
|
type: Input
|
|
173
184
|
}], suiActive: [{
|
|
174
185
|
type: Input
|
|
@@ -179,7 +190,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImpor
|
|
|
179
190
|
}] } });
|
|
180
191
|
|
|
181
192
|
class SuiSubMenuDirective extends BaseDirective {
|
|
182
|
-
constructor(
|
|
193
|
+
constructor() {
|
|
194
|
+
const element = inject(ElementRef);
|
|
183
195
|
super(element);
|
|
184
196
|
this.suiRight = false;
|
|
185
197
|
}
|
|
@@ -189,7 +201,7 @@ class SuiSubMenuDirective extends BaseDirective {
|
|
|
189
201
|
'menu'
|
|
190
202
|
].join(' ');
|
|
191
203
|
}
|
|
192
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiSubMenuDirective, deps: [
|
|
204
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiSubMenuDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
193
205
|
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.7", type: SuiSubMenuDirective, isStandalone: true, selector: "[suiSubMenu]", inputs: { suiRight: "suiRight" }, exportAs: ["suiSubMenu"], usesInheritance: true, ngImport: i0 }); }
|
|
194
206
|
}
|
|
195
207
|
__decorate([
|
|
@@ -202,7 +214,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImpor
|
|
|
202
214
|
selector: '[suiSubMenu]',
|
|
203
215
|
exportAs: 'suiSubMenu'
|
|
204
216
|
}]
|
|
205
|
-
}], ctorParameters: () => [
|
|
217
|
+
}], ctorParameters: () => [], propDecorators: { suiRight: [{
|
|
206
218
|
type: Input
|
|
207
219
|
}] } });
|
|
208
220
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngx-semantic-collections-menu.mjs","sources":["../../src/collections/menu/menu.directive.ts","../../src/collections/menu/menu-item.directive.ts","../../src/collections/menu/sub-menu.directive.ts","../../src/collections/menu/menu-header.directive.ts","../../src/collections/menu/menu.module.ts","../../src/collections/menu/public-api.ts","../../src/collections/menu/ngx-semantic-collections-menu.ts"],"sourcesContent":["/**\n * Created by bolor on 6/17/2020\n */\n\nimport { Directive, ElementRef, Input } from '@angular/core';\nimport {SuiColour, SuiSize, SuiWidth} from 'ngx-semantic/core/enums';\nimport {ClassUtils, InputBoolean} from 'ngx-semantic/core/util';\nimport { BaseDirective } from 'ngx-semantic/core/base';\n\nexport type SuiMenuAttachment = 'top' | 'bottom' | null;\nexport type SuiMenuFixation = 'top' | 'bottom' | 'left' | 'right' | null;\nexport type SuiMenuIconType = 'icon' | 'labeled icon' | null;\n\n@Directive({\n standalone: true,\n selector: '[sui-menu]',\n exportAs: 'suiMenu'\n})\nexport class SuiMenuDirective extends BaseDirective {\n @Input() public suiWidth: SuiWidth = null;\n @Input() public suiAttached: SuiMenuAttachment = null;\n @Input() public suiFixed: SuiMenuFixation = null;\n @Input() public suiColour: SuiColour = null;\n @Input() public suiIcon: SuiMenuIconType = null;\n @Input() public suiSize: SuiSize = null;\n @Input() @InputBoolean() public suiText = false;\n @Input() @InputBoolean() public suiSecondary = false;\n @Input() @InputBoolean() public suiPointing = false;\n @Input() @InputBoolean() public suiTabular = false;\n @Input() @InputBoolean() public suiVertical = false;\n @Input() @InputBoolean() public suiFluid = false;\n @Input() @InputBoolean() public suiRight = false;\n @Input() @InputBoolean() public suiPagination = false;\n @Input() @InputBoolean() public suiCompact = false;\n @Input() @InputBoolean() public suiStackable = false;\n @Input() @InputBoolean() public suiInverted = false;\n @Input() @InputBoolean() public suiBorderless = false;\n\n constructor(element: ElementRef) {\n super(element);\n }\n\n get classes(): string {\n return [\n 'ui',\n this.suiColour,\n this.suiSize,\n this.suiAttached,\n this.suiAttached ? 'attached' : '',\n this.suiFixed,\n this.suiFixed ? 'fixed' : '',\n this.suiWidth,\n this.suiWidth ? 'item' : '',\n this.suiIcon,\n ClassUtils.getPropClass(this.suiInverted, 'inverted'),\n ClassUtils.getPropClass(this.suiCompact, 'compact'),\n ClassUtils.getPropClass(this.suiFluid, 'fluid'),\n ClassUtils.getPropClass(this.suiVertical, 'vertical'),\n ClassUtils.getPropClass(this.suiText, 'text'),\n ClassUtils.getPropClass(this.suiSecondary, 'secondary'),\n ClassUtils.getPropClass(this.suiPointing, 'pointing'),\n ClassUtils.getPropClass(this.suiRight, 'right'),\n ClassUtils.getPropClass(this.suiTabular, 'tabular'),\n ClassUtils.getPropClass(this.suiPagination, 'pagination'),\n ClassUtils.getPropClass(this.suiStackable, 'stackable'),\n ClassUtils.getPropClass(this.suiBorderless, 'borderless'),\n 'menu'\n ].join(' ');\n }\n}\n","/**\n * Created by bolor on 7/3/2020\n */\n\nimport { Directive, ElementRef, Input } from '@angular/core';\nimport { ClassUtils } from 'ngx-semantic/core/util';\nimport { BaseDirective } from 'ngx-semantic/core/base';\n\n@Directive({\n standalone: true,\n exportAs: 'suiMenuItem',\n selector: '[suiMenuItem]'\n})\nexport class SuiMenuItemDirective extends BaseDirective {\n @Input() public suiLink = false;\n @Input() public suiActive = false;\n @Input() public suiBrowser = false;\n @Input() public disabled = false;\n\n constructor(element: ElementRef) {\n super(element);\n }\n\n get classes(): string {\n return [\n ClassUtils.getPropClass(this.suiLink, 'link'),\n ClassUtils.getPropClass(this.suiActive, 'active'),\n ClassUtils.getPropClass(this.suiBrowser, 'browser'),\n ClassUtils.getPropClass(this.disabled, 'disabled'),\n 'item'\n ].join(' ');\n }\n}\n","/**\n * Created by bolor on 7/3/2020\n */\n\nimport { Directive, ElementRef, Input } from '@angular/core';\nimport { ClassUtils, InputBoolean } from 'ngx-semantic/core/util';\nimport { BaseDirective } from 'ngx-semantic/core/base';\n\n@Directive({\n standalone: true,\n selector: '[suiSubMenu]',\n exportAs: 'suiSubMenu'\n})\nexport class SuiSubMenuDirective extends BaseDirective {\n @Input() @InputBoolean() public suiRight = false;\n\n constructor(element: ElementRef) {\n super(element);\n }\n\n get classes(): string {\n return [\n ClassUtils.getPropClass(this.suiRight, 'right'),\n 'menu'\n ].join(' ');\n }\n}\n","/**\n * Created by bolor on 7/3/2020\n */\n\nimport {Directive, HostBinding} from '@angular/core';\n\n@Directive({\n standalone: true,\n exportAs: 'suiMenuHeader',\n selector: '[suiMenuHeader]'\n})\nexport class SuiMenuHeaderDirective {\n @HostBinding('class')\n get classes(): string {\n return 'header';\n }\n}\n","/**\n * Created by bolor on 6/17/2020\n */\n\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {SuiMenuHeaderDirective} from './menu-header.directive';\nimport {SuiMenuItemDirective} from './menu-item.directive';\nimport {SuiMenuDirective} from './menu.directive';\nimport {SuiSubMenuDirective} from './sub-menu.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n SuiMenuDirective,\n SuiMenuItemDirective,\n SuiSubMenuDirective,\n SuiMenuHeaderDirective\n ],\n exports: [\n SuiMenuDirective,\n SuiMenuItemDirective,\n SuiSubMenuDirective,\n SuiMenuHeaderDirective\n ]\n})\nexport class SuiMenuModule {\n}\n","/**\n * Created by bolor on 6/17/2020\n */\n\nexport * from './menu.directive';\nexport * from './menu-item.directive';\nexport * from './sub-menu.directive';\nexport * from './menu-header.directive';\nexport * from './menu.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ngx-semantic-collections-menu.mjs","sources":["../../src/collections/menu/menu.directive.ts","../../src/collections/menu/menu-item.directive.ts","../../src/collections/menu/sub-menu.directive.ts","../../src/collections/menu/menu-header.directive.ts","../../src/collections/menu/menu.module.ts","../../src/collections/menu/public-api.ts","../../src/collections/menu/ngx-semantic-collections-menu.ts"],"sourcesContent":["/**\n * Created by bolor on 6/17/2020\n */\n\nimport { Directive, ElementRef, Input, inject } from '@angular/core';\nimport { SuiColour, SuiSize, SuiWidth } from 'ngx-semantic/core/enums';\nimport { ClassUtils, InputBoolean } from 'ngx-semantic/core/util';\nimport { BaseDirective } from 'ngx-semantic/core/base';\n\nexport type SuiMenuAttachment = 'top' | 'bottom' | null;\nexport type SuiMenuFixation = 'top' | 'bottom' | 'left' | 'right' | null;\nexport type SuiMenuIconType = 'icon' | 'labeled icon' | null;\n\n@Directive({\n standalone: true,\n selector: '[sui-menu]',\n exportAs: 'suiMenu'\n})\nexport class SuiMenuDirective extends BaseDirective {\n @Input() public suiWidth: SuiWidth = null;\n @Input() public suiAttached: SuiMenuAttachment = null;\n @Input() public suiFixed: SuiMenuFixation = null;\n @Input() public suiColour: SuiColour = null;\n @Input() public suiIcon: SuiMenuIconType = null;\n @Input() public suiSize: SuiSize = null;\n @Input() @InputBoolean() public suiText = false;\n @Input() @InputBoolean() public suiSecondary = false;\n @Input() @InputBoolean() public suiPointing = false;\n @Input() @InputBoolean() public suiTabular = false;\n @Input() @InputBoolean() public suiVertical = false;\n @Input() @InputBoolean() public suiFluid = false;\n @Input() @InputBoolean() public suiRight = false;\n @Input() @InputBoolean() public suiPagination = false;\n @Input() @InputBoolean() public suiCompact = false;\n @Input() @InputBoolean() public suiStackable = false;\n @Input() @InputBoolean() public suiInverted = false;\n @Input() @InputBoolean() public suiBorderless = false;\n\n constructor() {\n const element = inject(ElementRef);\n\n super(element);\n }\n\n get classes(): string {\n return [\n 'ui',\n this.suiColour,\n this.suiSize,\n this.suiAttached,\n this.suiAttached ? 'attached' : '',\n this.suiFixed,\n this.suiFixed ? 'fixed' : '',\n this.suiWidth,\n this.suiWidth ? 'item' : '',\n this.suiIcon,\n ClassUtils.getPropClass(this.suiInverted, 'inverted'),\n ClassUtils.getPropClass(this.suiCompact, 'compact'),\n ClassUtils.getPropClass(this.suiFluid, 'fluid'),\n ClassUtils.getPropClass(this.suiVertical, 'vertical'),\n ClassUtils.getPropClass(this.suiText, 'text'),\n ClassUtils.getPropClass(this.suiSecondary, 'secondary'),\n ClassUtils.getPropClass(this.suiPointing, 'pointing'),\n ClassUtils.getPropClass(this.suiRight, 'right'),\n ClassUtils.getPropClass(this.suiTabular, 'tabular'),\n ClassUtils.getPropClass(this.suiPagination, 'pagination'),\n ClassUtils.getPropClass(this.suiStackable, 'stackable'),\n ClassUtils.getPropClass(this.suiBorderless, 'borderless'),\n 'menu'\n ].join(' ');\n }\n}\n","/**\n * Created by bolor on 7/3/2020\n */\n\nimport { Directive, ElementRef, Input, inject } from '@angular/core';\nimport { ClassUtils, InputBoolean } from 'ngx-semantic/core/util';\nimport { BaseDirective } from 'ngx-semantic/core/base';\n\n@Directive({\n standalone: true,\n exportAs: 'suiMenuItem',\n selector: '[suiMenuItem]'\n})\nexport class SuiMenuItemDirective extends BaseDirective {\n @Input() @InputBoolean() public suiLink = false;\n @Input() @InputBoolean() public suiActive = false;\n @Input() @InputBoolean() public suiBrowser = false;\n @Input() @InputBoolean() public disabled = false;\n\n constructor() {\n const element = inject(ElementRef);\n\n super(element);\n }\n\n get classes(): string {\n return [\n ClassUtils.getPropClass(this.suiLink, 'link'),\n ClassUtils.getPropClass(this.suiActive, 'active'),\n ClassUtils.getPropClass(this.suiBrowser, 'browser'),\n ClassUtils.getPropClass(this.disabled, 'disabled'),\n 'item'\n ].join(' ');\n }\n}\n","/**\n * Created by bolor on 7/3/2020\n */\n\nimport { Directive, ElementRef, Input, inject } from '@angular/core';\nimport { ClassUtils, InputBoolean } from 'ngx-semantic/core/util';\nimport { BaseDirective } from 'ngx-semantic/core/base';\n\n@Directive({\n standalone: true,\n selector: '[suiSubMenu]',\n exportAs: 'suiSubMenu'\n})\nexport class SuiSubMenuDirective extends BaseDirective {\n @Input() @InputBoolean() public suiRight = false;\n\n constructor() {\n const element = inject(ElementRef);\n\n super(element);\n }\n\n get classes(): string {\n return [\n ClassUtils.getPropClass(this.suiRight, 'right'),\n 'menu'\n ].join(' ');\n }\n}\n","/**\n * Created by bolor on 7/3/2020\n */\n\nimport { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n standalone: true,\n exportAs: 'suiMenuHeader',\n selector: '[suiMenuHeader]'\n})\nexport class SuiMenuHeaderDirective {\n @HostBinding('class')\n get classes(): string {\n return 'header';\n }\n}\n","/**\n * Created by bolor on 6/17/2020\n */\n\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SuiMenuHeaderDirective } from './menu-header.directive';\nimport { SuiMenuItemDirective } from './menu-item.directive';\nimport { SuiMenuDirective } from './menu.directive';\nimport { SuiSubMenuDirective } from './sub-menu.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n SuiMenuDirective,\n SuiMenuItemDirective,\n SuiSubMenuDirective,\n SuiMenuHeaderDirective\n ],\n exports: [\n SuiMenuDirective,\n SuiMenuItemDirective,\n SuiSubMenuDirective,\n SuiMenuHeaderDirective\n ]\n})\nexport class SuiMenuModule {\n}\n","/**\n * Created by bolor on 6/17/2020\n */\n\nexport * from './menu.directive';\nexport * from './menu-item.directive';\nexport * from './sub-menu.directive';\nexport * from './menu-header.directive';\nexport * from './menu.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|