@acorex/components 7.0.20 → 7.0.22

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.
Files changed (35) hide show
  1. package/color-picker/src/color-picker.component.d.ts +1 -5
  2. package/esm2020/button/src/button.component.mjs +2 -2
  3. package/esm2020/chips/src/chips.component.mjs +2 -2
  4. package/esm2020/form/src/form-field.component.mjs +2 -2
  5. package/esm2020/form/src/form.component.mjs +18 -16
  6. package/esm2020/mixin/src/value-mixin.class.mjs +46 -26
  7. package/esm2020/number-box/src/number-box.component.mjs +3 -3
  8. package/esm2020/switch/src/switch.component.mjs +2 -2
  9. package/fesm2015/acorex-components-button.mjs +2 -2
  10. package/fesm2015/acorex-components-button.mjs.map +1 -1
  11. package/fesm2015/acorex-components-chips.mjs +2 -2
  12. package/fesm2015/acorex-components-chips.mjs.map +1 -1
  13. package/fesm2015/acorex-components-form.mjs +19 -17
  14. package/fesm2015/acorex-components-form.mjs.map +1 -1
  15. package/fesm2015/acorex-components-mixin.mjs +44 -24
  16. package/fesm2015/acorex-components-mixin.mjs.map +1 -1
  17. package/fesm2015/acorex-components-number-box.mjs +2 -3
  18. package/fesm2015/acorex-components-number-box.mjs.map +1 -1
  19. package/fesm2015/acorex-components-switch.mjs +2 -2
  20. package/fesm2015/acorex-components-switch.mjs.map +1 -1
  21. package/fesm2020/acorex-components-button.mjs +2 -2
  22. package/fesm2020/acorex-components-button.mjs.map +1 -1
  23. package/fesm2020/acorex-components-chips.mjs +2 -2
  24. package/fesm2020/acorex-components-chips.mjs.map +1 -1
  25. package/fesm2020/acorex-components-form.mjs +19 -17
  26. package/fesm2020/acorex-components-form.mjs.map +1 -1
  27. package/fesm2020/acorex-components-mixin.mjs +44 -24
  28. package/fesm2020/acorex-components-mixin.mjs.map +1 -1
  29. package/fesm2020/acorex-components-number-box.mjs +2 -3
  30. package/fesm2020/acorex-components-number-box.mjs.map +1 -1
  31. package/fesm2020/acorex-components-switch.mjs +2 -2
  32. package/fesm2020/acorex-components-switch.mjs.map +1 -1
  33. package/form/src/form.component.d.ts +10 -9
  34. package/mixin/src/value-mixin.class.d.ts +5 -5
  35. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-components-form.mjs","sources":["../../../../projects/acorex/components/form/src/form-field.component.ts","../../../../projects/acorex/components/form/src/form.component.ts","../../../../projects/acorex/components/form/src/validation-rule.widget.ts","../../../../projects/acorex/components/form/src/validation-summary.component.ts","../../../../projects/acorex/components/form/src/form.module.ts","../../../../projects/acorex/components/form/acorex-components-form.ts"],"sourcesContent":["import { AXBaseComponentMixin } from '@acorex/components/mixin';\r\nimport {\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ax-form-field',\r\n template: '<ng-content></ng-content>',\r\n styleUrls: ['./form-field.component.scss'],\r\n host: { class: 'ax-form-field' },\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class AXFormFieldComponent extends AXBaseComponentMixin {\r\n constructor(elementRef: ElementRef, cdr: ChangeDetectorRef) {\r\n super(elementRef, cdr);\r\n }\r\n}\r\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core';\r\nimport { AXEvent } from '@acorex/components/common';\r\nimport { AXFormValidationResult } from './validation.class';\r\nimport { AXBaseComponentMixin } from '@acorex/components/mixin';\r\nimport { Subscription } from 'rxjs';\r\n\r\n/**\r\n* Contains native event\r\n* @category Events\r\n*/\r\nexport class AXFormValidationEvent extends AXEvent {\r\n result: AXFormValidationResult;\r\n}\r\n\r\n/**\r\n* Contains native event\r\n* @category Events\r\n*/\r\nexport type AXFormUpdateOn = 'change' | 'blur' | 'manual';\r\n\r\n\r\n/**\r\n * The Button is a component which detects user interaction and triggers a corresponding event\r\n *\r\n * @category Components\r\n */\r\n@Component({\r\n selector: 'ax-form',\r\n template: '<form (submit)=\"_handleSubmit($event)\" (reset)=\"_handleReset($event)\"><ng-content></ng-content></form>',\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class AXFormComponent extends AXBaseComponentMixin {\r\n\r\n\r\n @Output()\r\n onValidate: EventEmitter<AXFormValidationEvent> = new EventEmitter<AXFormValidationEvent>();\r\n\r\n\r\n @Output()\r\n updateOnChange: EventEmitter<AXFormUpdateOn> = new EventEmitter<AXFormUpdateOn>();\r\n\r\n private _updateOn: AXFormUpdateOn = 'blur';\r\n @Input()\r\n public get updateOn(): AXFormUpdateOn {\r\n return this._updateOn;\r\n }\r\n public set updateOn(v: AXFormUpdateOn) {\r\n this._setOption({\r\n name: 'updateOn',\r\n value: v,\r\n afterCallback: (oldValue?, newValue?) => {\r\n this._bindEvents();\r\n },\r\n })\r\n }\r\n\r\n @Input()\r\n validateInitValues: boolean = false;\r\n\r\n\r\n private _observer: MutationObserver;\r\n private _subs: Subscription[] = [];\r\n\r\n\r\n\r\n /**\r\n * @ignore\r\n */\r\n constructor(\r\n elementRef: ElementRef,\r\n private cdr: ChangeDetectorRef\r\n ) {\r\n super(elementRef, cdr);\r\n }\r\n\r\n _handleSubmit(e:SubmitEvent)\r\n {\r\n e.preventDefault();\r\n this.validate();\r\n }\r\n\r\n _handleReset(e:Event)\r\n {\r\n this.clear();\r\n }\r\n\r\n private _getComponenets() {\r\n return Array.from(\r\n this._getHostElement().querySelectorAll('[ax-form-input=\"true\"]')\r\n ).map((c) => (c as any).__axContext__);\r\n }\r\n\r\n onViewInit(): void {\r\n if (this.validateInitValues) {\r\n this._validateInitValues();\r\n }\r\n this._bindEvents();\r\n\r\n const config = { attributes: false, childList: true, subtree: true };\r\n const callback = (mutationList, observer) => {\r\n this._bindEvents();\r\n };\r\n\r\n // Create an observer instance linked to the callback function\r\n this._observer = new MutationObserver(callback);\r\n this._observer.observe(this._getHostElement(), config);\r\n }\r\n\r\n private _bindEvents() {\r\n this._clearSubs();\r\n const widgets = this._getComponenets()\r\n //\r\n widgets.forEach(w => {\r\n if (this.updateOn == 'change') {\r\n this._subs.push(w.onValueChanged?.subscribe(v => {\r\n w.validate();\r\n }));\r\n }\r\n else if (this.updateOn == 'blur') {\r\n this._subs.push(w.onBlur?.subscribe(v => {\r\n w.validate();\r\n }));\r\n }\r\n })\r\n }\r\n\r\n private _clearSubs() {\r\n this._subs.forEach(c => c.unsubscribe())\r\n this._subs = [];\r\n }\r\n\r\n private _validateInitValues() {\r\n this._getComponenets()\r\n .filter(c => c['value'])\r\n .forEach(c => c.validate());\r\n }\r\n\r\n\r\n\r\n validate(...args: string[]): Promise<AXFormValidationResult> {\r\n const widgets = this._getComponenets();\r\n if (widgets.length === 0) {\r\n this._emitOnValidateEvent({ result: true });\r\n return Promise.resolve({ result: true });\r\n }\r\n //\r\n return new Promise<AXFormValidationResult>((resolve, reject) => {\r\n Promise.all(widgets\r\n .filter(c => (args == null || args.length == 0) || args.includes(c.name))\r\n .map((c) => c.validate()))\r\n .then((rules: any) => {\r\n const failed = rules.filter((c: any) => !c.result);\r\n if (failed.length) {\r\n this._emitOnValidateEvent({\r\n result: false,\r\n items: failed\r\n });\r\n resolve({\r\n result: false,\r\n items: failed\r\n });\r\n }\r\n else {\r\n this._emitOnValidateEvent({ result: true });\r\n resolve({ result: true });\r\n }\r\n });\r\n });\r\n }\r\n\r\n private _emitOnValidateEvent(e: AXFormValidationResult) {\r\n this.onValidate.emit({\r\n component: this,\r\n result: e,\r\n htmlElement: this._getHostElement(),\r\n })\r\n }\r\n\r\n clear() {\r\n const widgets = this._getComponenets();\r\n widgets.forEach(w => {\r\n w.clear();\r\n });\r\n }\r\n\r\n onDestroy(): void {\r\n this._observer.disconnect();\r\n this._observer = null;\r\n this._clearSubs();\r\n }\r\n}","import {\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n Input,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\nimport {\r\n AXValidationRuleResult,\r\n AXValidationRule,\r\n AXValidationRuleTypes,\r\n} from './validation.class';\r\nimport { AXConfig } from '@acorex/core/config';\r\nimport { AXTranslator } from '@acorex/core/translation';\r\nimport { AXBaseComponentMixin } from '@acorex/components/mixin';\r\n\r\n@Component({\r\n selector: 'ax-validation-rule',\r\n template: '',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class AXValidationRuleComponent\r\n extends AXBaseComponentMixin\r\n implements AXValidationRule {\r\n @Input()\r\n rule: AXValidationRuleTypes = 'required';\r\n\r\n @Input()\r\n message: string;\r\n\r\n @Input()\r\n showMessage: boolean = true;\r\n\r\n @Input()\r\n value: any;\r\n\r\n @Input()\r\n enabled: boolean = true;\r\n\r\n constructor(elementRef: ElementRef, cdr: ChangeDetectorRef) {\r\n super(elementRef, cdr);\r\n }\r\n\r\n onInit() {\r\n (this._getHostElement() as any).validate = this.validate.bind(this);\r\n }\r\n\r\n validate(value: any): Promise<AXValidationRuleResult> {\r\n if (this.enabled === false) {\r\n return Promise.resolve({ result: true });\r\n }\r\n if (this.rule == 'custom') {\r\n const regRule = AXConfig.get(`form.validation.rules.${this.value}`);\r\n if (regRule) {\r\n return this._internalValidate(\r\n regRule.rule,\r\n value,\r\n this.message || regRule.message,\r\n regRule.value\r\n );\r\n }\r\n }\r\n return this._internalValidate(this.rule, value, this.message, this.value);\r\n }\r\n\r\n private _internalValidate(\r\n type: string,\r\n value?: any,\r\n message?: string,\r\n ruleValue?: any\r\n ): Promise<AXValidationRuleResult> {\r\n return new Promise<AXValidationRuleResult>((resolve) => {\r\n switch (type) {\r\n case 'required':\r\n resolve({\r\n message: this.showMessage\r\n ? message || AXTranslator.get('validation.messages.required')\r\n : '',\r\n result: !this._isNullOrEmpty(value)\r\n });\r\n break;\r\n case 'regex':\r\n const ex = new RegExp(ruleValue);\r\n resolve({\r\n message: this.showMessage\r\n ? message || AXTranslator.get('validation.messages.regex')\r\n : '',\r\n result: ex.test(value),\r\n });\r\n break;\r\n case 'callback':\r\n if (typeof ruleValue === 'function') {\r\n const res: any = {};\r\n res.message = this.showMessage ? message : null;\r\n const val = ruleValue({ value, message });\r\n if (val instanceof Promise) {\r\n val\r\n .then((c) => {\r\n res.result = c;\r\n })\r\n .catch((c) => {\r\n res.result = false;\r\n })\r\n .finally(() => {\r\n resolve(res);\r\n });\r\n } else {\r\n res.result = val;\r\n resolve(res);\r\n }\r\n } else {\r\n resolve({\r\n message: AXTranslator.get('validation.messages.invalid-rull-fn'),\r\n result: false,\r\n });\r\n }\r\n break;\r\n default:\r\n resolve({\r\n message: AXTranslator.get('validation.messages.invalid-rull-name'),\r\n result: false,\r\n });\r\n }\r\n });\r\n }\r\n\r\n\r\n private _isNullOrEmpty(value: any): boolean {\r\n return (value === undefined ||\r\n value === null ||\r\n value === NaN ||\r\n //(typeof value === 'object' && Object.keys(value).length === 0) ||\r\n (Array.isArray(value) && value.length == 0) ||\r\n (typeof value === 'string' && value.trim().length === 0));\r\n }\r\n}\r\n","import { AXTranslator } from \"@acorex/core/translation\";\r\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, Inject, Input, Optional, ViewEncapsulation } from \"@angular/core\";\r\nimport { AXEvent } from \"@acorex/components/common\";\r\nimport { AXToastService } from \"@acorex/components/toast\";\r\nimport { AXFormComponent } from \"./form.component\";\r\nimport { AXBaseComponentMixin } from \"@acorex/components/mixin\";\r\n\r\n\r\nexport type AXValidationSummaryDisplayMode = 'toast' | 'alert'\r\n\r\n@Component({\r\n selector: 'ax-validation-summary',\r\n template: `\r\n <ax-alert color=\"danger\" *ngIf=\"displayMode=='alert' && _content\" [timeOut]=\"_timeOut\" #a (onClosed)=\"_handleOnDismissed($event)\">\r\n <ax-icon></ax-icon>\r\n <ax-title>{{title}}</ax-title>\r\n <ax-content>\r\n <div [innerHTML]=\"_content\">\r\n </div>\r\n </ax-content>\r\n <ax-footer>\r\n <ax-suffix>\r\n <ax-button text=\"Dismiss\" (onClick)=\"a.close()\"></ax-button>\r\n </ax-suffix>\r\n </ax-footer>\r\n </ax-alert>\r\n `,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class AXValidationSummaryComponent extends AXBaseComponentMixin {\r\n\r\n _content?: string = '';\r\n\r\n private _title: string = AXTranslator.get('validation.messages.title');\r\n\r\n @Input()\r\n public get title(): string {\r\n return this._title;\r\n }\r\n public set title(v: string) {\r\n this._title = v;\r\n }\r\n\r\n\r\n @Input()\r\n displayMode: AXValidationSummaryDisplayMode = 'toast';\r\n\r\n @Input()\r\n timeOut?: number;\r\n\r\n @Input()\r\n autoHide: boolean = false;\r\n\r\n _timeOut: number;\r\n\r\n constructor(\r\n _elementRef: ElementRef,\r\n _cdr: ChangeDetectorRef,\r\n private _tosatService: AXToastService,\r\n @Optional()\r\n @Inject(AXFormComponent)\r\n private _parent: AXFormComponent\r\n ) {\r\n super(_elementRef, _cdr);\r\n //\r\n _parent.onValidate.subscribe((c: any) => {\r\n if (!c.result.result) {\r\n this._content = `<ul>${c.result.items.map(c => `<li>${c.message}</li>`).join('')}</ul>`;\r\n this._timeOut = this.autoHide ? (this.timeOut ?? Math.max(c.result.items.length * 1500, 2000)) : 0;\r\n //\r\n if (this.displayMode == 'toast') {\r\n this._tosatService.show({\r\n color: 'danger',\r\n closeable: true,\r\n timeOut: this._timeOut,\r\n content: this._content,\r\n title: this.title\r\n });\r\n }\r\n }\r\n else {\r\n this._content = '';\r\n }\r\n _cdr.markForCheck();\r\n });\r\n }\r\n\r\n _handleOnDismissed(e: AXEvent) {\r\n this._content = '';\r\n }\r\n}","import { AXAlertModule } from '@acorex/components/alert';\r\nimport { AXButtonModule } from '@acorex/components/button';\r\nimport { AXDecoratorModule } from '@acorex/components/decorators';\r\nimport { AXConfig } from '@acorex/core/config';\r\nimport { AXTranslator } from '@acorex/core/translation';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\n\r\nimport { AXFormFieldComponent } from './form-field.component';\r\nimport { AXFormComponent } from './form.component';\r\nimport { AXValidationRuleComponent } from './validation-rule.widget';\r\nimport { AXValidationSummaryComponent } from './validation-summary.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n AXFormFieldComponent,\r\n AXFormComponent,\r\n AXValidationRuleComponent,\r\n AXValidationSummaryComponent,\r\n ],\r\n imports: [CommonModule, AXDecoratorModule, AXAlertModule, AXButtonModule],\r\n exports: [\r\n AXFormFieldComponent,\r\n AXFormComponent,\r\n AXValidationRuleComponent,\r\n AXValidationSummaryComponent,\r\n ],\r\n providers: [],\r\n})\r\nexport class AXFormModule {\r\n constructor() {\r\n AXConfig.set({\r\n form: {\r\n validation: {\r\n rules: {\r\n email: {\r\n rule: 'regex',\r\n value:\r\n /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/,\r\n message: AXTranslator.get('validation.messages.email'),\r\n },\r\n phone: {\r\n rule: 'regex',\r\n value: /^[+]*[(]{0,1}[0-9]{1,4}[)]{0,1}[-\\s\\./0-9]*$/,\r\n message: AXTranslator.get('validation.messages.phone'),\r\n },\r\n },\r\n },\r\n },\r\n });\r\n }\r\n}\r\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":"acorex-components-form.mjs","sources":["../../../../projects/acorex/components/form/src/form-field.component.ts","../../../../projects/acorex/components/form/src/form.component.ts","../../../../projects/acorex/components/form/src/validation-rule.widget.ts","../../../../projects/acorex/components/form/src/validation-summary.component.ts","../../../../projects/acorex/components/form/src/form.module.ts","../../../../projects/acorex/components/form/acorex-components-form.ts"],"sourcesContent":["import { AXBaseComponentMixin } from '@acorex/components/mixin';\r\nimport {\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ax-form-field',\r\n template: '<ng-content></ng-content>',\r\n styleUrls: ['./form-field.component.scss'],\r\n host: { class: 'ax-form-field' },\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class AXFormFieldComponent extends AXBaseComponentMixin {\r\n constructor(elementRef: ElementRef, cdr: ChangeDetectorRef) {\r\n super(elementRef, cdr);\r\n }\r\n}\r\n","import {\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n Input,\r\n Output,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\nimport { AXEvent } from '@acorex/components/common';\r\nimport { AXFormValidationResult } from './validation.class';\r\nimport { AXBaseComponentMixin } from '@acorex/components/mixin';\r\nimport { Subscription } from 'rxjs';\r\n\r\n/**\r\n * Contains native event\r\n * @category Events\r\n */\r\nexport class AXFormValidationEvent extends AXEvent {\r\n result: AXFormValidationResult;\r\n}\r\n\r\n/**\r\n * Contains native event\r\n * @category Events\r\n */\r\nexport type AXFormUpdateOn = 'change' | 'blur' | 'manual';\r\n\r\n/**\r\n * The Button is a component which detects user interaction and triggers a corresponding event\r\n *\r\n * @category Components\r\n */\r\n@Component({\r\n selector: 'ax-form',\r\n template:\r\n '<form (submit)=\"_handleSubmit($event)\" (reset)=\"_handleReset($event)\" class=\"ax-{{validationMessageMode}}-error\"><ng-content></ng-content></form>',\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class AXFormComponent extends AXBaseComponentMixin {\r\n @Input() validationMessageMode: 'normal' | 'tooltip' = 'normal';\r\n\r\n @Output()\r\n onValidate: EventEmitter<AXFormValidationEvent> =\r\n new EventEmitter<AXFormValidationEvent>();\r\n\r\n @Output()\r\n updateOnChange: EventEmitter<AXFormUpdateOn> =\r\n new EventEmitter<AXFormUpdateOn>();\r\n\r\n private _updateOn: AXFormUpdateOn = 'blur';\r\n @Input()\r\n public get updateOn(): AXFormUpdateOn {\r\n return this._updateOn;\r\n }\r\n public set updateOn(v: AXFormUpdateOn) {\r\n this._setOption({\r\n name: 'updateOn',\r\n value: v,\r\n afterCallback: (oldValue?, newValue?) => {\r\n this._bindEvents();\r\n },\r\n });\r\n }\r\n\r\n @Input()\r\n validateInitValues: boolean = false;\r\n\r\n private _observer: MutationObserver;\r\n private _subs: Subscription[] = [];\r\n\r\n /**\r\n * @ignore\r\n */\r\n constructor(elementRef: ElementRef, private cdr: ChangeDetectorRef) {\r\n super(elementRef, cdr);\r\n }\r\n\r\n _handleSubmit(e: SubmitEvent) {\r\n e.preventDefault();\r\n this.validate();\r\n }\r\n\r\n _handleReset(e: Event) {\r\n this.clear();\r\n }\r\n\r\n private _getComponenets() {\r\n return Array.from(\r\n this._getHostElement().querySelectorAll('[ax-form-input=\"true\"]')\r\n ).map(c => (c as any).__axContext__);\r\n }\r\n\r\n onViewInit(): void {\r\n if (this.validateInitValues) {\r\n this._validateInitValues();\r\n }\r\n this._bindEvents();\r\n\r\n const config = { attributes: false, childList: true, subtree: true };\r\n const callback = (mutationList, observer) => {\r\n this._bindEvents();\r\n };\r\n\r\n // Create an observer instance linked to the callback function\r\n this._observer = new MutationObserver(callback);\r\n this._observer.observe(this._getHostElement(), config);\r\n }\r\n\r\n private _bindEvents() {\r\n this._clearSubs();\r\n const widgets = this._getComponenets();\r\n //\r\n widgets.forEach(w => {\r\n if (this.updateOn == 'change') {\r\n this._subs.push(\r\n w.onValueChanged?.subscribe(v => {\r\n w.validate();\r\n })\r\n );\r\n } else if (this.updateOn == 'blur') {\r\n this._subs.push(\r\n w.onBlur?.subscribe(v => {\r\n w.validate();\r\n })\r\n );\r\n }\r\n });\r\n }\r\n\r\n private _clearSubs() {\r\n this._subs.forEach(c => c.unsubscribe());\r\n this._subs = [];\r\n }\r\n\r\n private _validateInitValues() {\r\n this._getComponenets()\r\n .filter(c => c['value'])\r\n .forEach(c => c.validate());\r\n }\r\n\r\n validate(...args: string[]): Promise<AXFormValidationResult> {\r\n const widgets = this._getComponenets();\r\n if (widgets.length === 0) {\r\n this._emitOnValidateEvent({ result: true });\r\n return Promise.resolve({ result: true });\r\n }\r\n //\r\n return new Promise<AXFormValidationResult>((resolve, reject) => {\r\n Promise.all(\r\n widgets\r\n .filter(\r\n c => args == null || args.length == 0 || args.includes(c.name)\r\n )\r\n .map(c => c.validate())\r\n ).then((rules: any) => {\r\n const failed = rules.filter((c: any) => !c.result);\r\n if (failed.length) {\r\n this._emitOnValidateEvent({\r\n result: false,\r\n items: failed,\r\n });\r\n resolve({\r\n result: false,\r\n items: failed,\r\n });\r\n } else {\r\n this._emitOnValidateEvent({ result: true });\r\n resolve({ result: true });\r\n }\r\n });\r\n });\r\n }\r\n\r\n private _emitOnValidateEvent(e: AXFormValidationResult) {\r\n this.onValidate.emit({\r\n component: this,\r\n result: e,\r\n htmlElement: this._getHostElement(),\r\n });\r\n }\r\n\r\n clear() {\r\n const widgets = this._getComponenets();\r\n widgets.forEach(w => {\r\n w.clear();\r\n });\r\n }\r\n\r\n onDestroy(): void {\r\n this._observer.disconnect();\r\n this._observer = null;\r\n this._clearSubs();\r\n }\r\n}\r\n","import {\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n Input,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\nimport {\r\n AXValidationRuleResult,\r\n AXValidationRule,\r\n AXValidationRuleTypes,\r\n} from './validation.class';\r\nimport { AXConfig } from '@acorex/core/config';\r\nimport { AXTranslator } from '@acorex/core/translation';\r\nimport { AXBaseComponentMixin } from '@acorex/components/mixin';\r\n\r\n@Component({\r\n selector: 'ax-validation-rule',\r\n template: '',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class AXValidationRuleComponent\r\n extends AXBaseComponentMixin\r\n implements AXValidationRule {\r\n @Input()\r\n rule: AXValidationRuleTypes = 'required';\r\n\r\n @Input()\r\n message: string;\r\n\r\n @Input()\r\n showMessage: boolean = true;\r\n\r\n @Input()\r\n value: any;\r\n\r\n @Input()\r\n enabled: boolean = true;\r\n\r\n constructor(elementRef: ElementRef, cdr: ChangeDetectorRef) {\r\n super(elementRef, cdr);\r\n }\r\n\r\n onInit() {\r\n (this._getHostElement() as any).validate = this.validate.bind(this);\r\n }\r\n\r\n validate(value: any): Promise<AXValidationRuleResult> {\r\n if (this.enabled === false) {\r\n return Promise.resolve({ result: true });\r\n }\r\n if (this.rule == 'custom') {\r\n const regRule = AXConfig.get(`form.validation.rules.${this.value}`);\r\n if (regRule) {\r\n return this._internalValidate(\r\n regRule.rule,\r\n value,\r\n this.message || regRule.message,\r\n regRule.value\r\n );\r\n }\r\n }\r\n return this._internalValidate(this.rule, value, this.message, this.value);\r\n }\r\n\r\n private _internalValidate(\r\n type: string,\r\n value?: any,\r\n message?: string,\r\n ruleValue?: any\r\n ): Promise<AXValidationRuleResult> {\r\n return new Promise<AXValidationRuleResult>((resolve) => {\r\n switch (type) {\r\n case 'required':\r\n resolve({\r\n message: this.showMessage\r\n ? message || AXTranslator.get('validation.messages.required')\r\n : '',\r\n result: !this._isNullOrEmpty(value)\r\n });\r\n break;\r\n case 'regex':\r\n const ex = new RegExp(ruleValue);\r\n resolve({\r\n message: this.showMessage\r\n ? message || AXTranslator.get('validation.messages.regex')\r\n : '',\r\n result: ex.test(value),\r\n });\r\n break;\r\n case 'callback':\r\n if (typeof ruleValue === 'function') {\r\n const res: any = {};\r\n res.message = this.showMessage ? message : null;\r\n const val = ruleValue({ value, message });\r\n if (val instanceof Promise) {\r\n val\r\n .then((c) => {\r\n res.result = c;\r\n })\r\n .catch((c) => {\r\n res.result = false;\r\n })\r\n .finally(() => {\r\n resolve(res);\r\n });\r\n } else {\r\n res.result = val;\r\n resolve(res);\r\n }\r\n } else {\r\n resolve({\r\n message: AXTranslator.get('validation.messages.invalid-rull-fn'),\r\n result: false,\r\n });\r\n }\r\n break;\r\n default:\r\n resolve({\r\n message: AXTranslator.get('validation.messages.invalid-rull-name'),\r\n result: false,\r\n });\r\n }\r\n });\r\n }\r\n\r\n\r\n private _isNullOrEmpty(value: any): boolean {\r\n return (value === undefined ||\r\n value === null ||\r\n value === NaN ||\r\n //(typeof value === 'object' && Object.keys(value).length === 0) ||\r\n (Array.isArray(value) && value.length == 0) ||\r\n (typeof value === 'string' && value.trim().length === 0));\r\n }\r\n}\r\n","import { AXTranslator } from \"@acorex/core/translation\";\r\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, Inject, Input, Optional, ViewEncapsulation } from \"@angular/core\";\r\nimport { AXEvent } from \"@acorex/components/common\";\r\nimport { AXToastService } from \"@acorex/components/toast\";\r\nimport { AXFormComponent } from \"./form.component\";\r\nimport { AXBaseComponentMixin } from \"@acorex/components/mixin\";\r\n\r\n\r\nexport type AXValidationSummaryDisplayMode = 'toast' | 'alert'\r\n\r\n@Component({\r\n selector: 'ax-validation-summary',\r\n template: `\r\n <ax-alert color=\"danger\" *ngIf=\"displayMode=='alert' && _content\" [timeOut]=\"_timeOut\" #a (onClosed)=\"_handleOnDismissed($event)\">\r\n <ax-icon></ax-icon>\r\n <ax-title>{{title}}</ax-title>\r\n <ax-content>\r\n <div [innerHTML]=\"_content\">\r\n </div>\r\n </ax-content>\r\n <ax-footer>\r\n <ax-suffix>\r\n <ax-button text=\"Dismiss\" (onClick)=\"a.close()\"></ax-button>\r\n </ax-suffix>\r\n </ax-footer>\r\n </ax-alert>\r\n `,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class AXValidationSummaryComponent extends AXBaseComponentMixin {\r\n\r\n _content?: string = '';\r\n\r\n private _title: string = AXTranslator.get('validation.messages.title');\r\n\r\n @Input()\r\n public get title(): string {\r\n return this._title;\r\n }\r\n public set title(v: string) {\r\n this._title = v;\r\n }\r\n\r\n\r\n @Input()\r\n displayMode: AXValidationSummaryDisplayMode = 'toast';\r\n\r\n @Input()\r\n timeOut?: number;\r\n\r\n @Input()\r\n autoHide: boolean = false;\r\n\r\n _timeOut: number;\r\n\r\n constructor(\r\n _elementRef: ElementRef,\r\n _cdr: ChangeDetectorRef,\r\n private _tosatService: AXToastService,\r\n @Optional()\r\n @Inject(AXFormComponent)\r\n private _parent: AXFormComponent\r\n ) {\r\n super(_elementRef, _cdr);\r\n //\r\n _parent.onValidate.subscribe((c: any) => {\r\n if (!c.result.result) {\r\n this._content = `<ul>${c.result.items.map(c => `<li>${c.message}</li>`).join('')}</ul>`;\r\n this._timeOut = this.autoHide ? (this.timeOut ?? Math.max(c.result.items.length * 1500, 2000)) : 0;\r\n //\r\n if (this.displayMode == 'toast') {\r\n this._tosatService.show({\r\n color: 'danger',\r\n closeable: true,\r\n timeOut: this._timeOut,\r\n content: this._content,\r\n title: this.title\r\n });\r\n }\r\n }\r\n else {\r\n this._content = '';\r\n }\r\n _cdr.markForCheck();\r\n });\r\n }\r\n\r\n _handleOnDismissed(e: AXEvent) {\r\n this._content = '';\r\n }\r\n}","import { AXAlertModule } from '@acorex/components/alert';\r\nimport { AXButtonModule } from '@acorex/components/button';\r\nimport { AXDecoratorModule } from '@acorex/components/decorators';\r\nimport { AXConfig } from '@acorex/core/config';\r\nimport { AXTranslator } from '@acorex/core/translation';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\n\r\nimport { AXFormFieldComponent } from './form-field.component';\r\nimport { AXFormComponent } from './form.component';\r\nimport { AXValidationRuleComponent } from './validation-rule.widget';\r\nimport { AXValidationSummaryComponent } from './validation-summary.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n AXFormFieldComponent,\r\n AXFormComponent,\r\n AXValidationRuleComponent,\r\n AXValidationSummaryComponent,\r\n ],\r\n imports: [CommonModule, AXDecoratorModule, AXAlertModule, AXButtonModule],\r\n exports: [\r\n AXFormFieldComponent,\r\n AXFormComponent,\r\n AXValidationRuleComponent,\r\n AXValidationSummaryComponent,\r\n ],\r\n providers: [],\r\n})\r\nexport class AXFormModule {\r\n constructor() {\r\n AXConfig.set({\r\n form: {\r\n validation: {\r\n rules: {\r\n email: {\r\n rule: 'regex',\r\n value:\r\n /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/,\r\n message: AXTranslator.get('validation.messages.email'),\r\n },\r\n phone: {\r\n rule: 'regex',\r\n value: /^[+]*[(]{0,1}[0-9]{1,4}[)]{0,1}[-\\s\\./0-9]*$/,\r\n message: AXTranslator.get('validation.messages.phone'),\r\n },\r\n },\r\n },\r\n },\r\n });\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -1009,14 +1009,14 @@ function _ValueComponenetMixin(Base) {
1009
1009
  var _readonly, _allowNull, _name, _isUserInteraction, _value, _state, _a;
1010
1010
  return _a = class extends Base {
1011
1011
  /**
1012
- * @ignore
1013
- */
1012
+ * @ignore
1013
+ */
1014
1014
  constructor(...args) {
1015
1015
  super(...args);
1016
1016
  /**
1017
- * Fires each time the user press a key.
1018
- * @event
1019
- */
1017
+ * Fires each time the user press a key.
1018
+ * @event
1019
+ */
1020
1020
  this.onValueChanged = new EventEmitter();
1021
1021
  this.valueChange = new EventEmitter();
1022
1022
  _readonly.set(this, false);
@@ -1027,8 +1027,8 @@ function _ValueComponenetMixin(Base) {
1027
1027
  _state.set(this, 'clear');
1028
1028
  }
1029
1029
  /**
1030
- * If set to true, user cannot change the value of component.
1031
- */
1030
+ * If set to true, user cannot change the value of component.
1031
+ */
1032
1032
  get readonly() {
1033
1033
  return __classPrivateFieldGet(this, _readonly, "f");
1034
1034
  }
@@ -1062,7 +1062,10 @@ function _ValueComponenetMixin(Base) {
1062
1062
  __classPrivateFieldSet(this, _value, v, "f");
1063
1063
  this._emitOnValueChangedEvent(old, __classPrivateFieldGet(this, _value, "f"));
1064
1064
  this._cdr.markForCheck();
1065
- if (v == null || v == undefined || v == '' || (Array.isArray(v) && v.length == 0)) {
1065
+ if (v == null ||
1066
+ v == undefined ||
1067
+ v == '' ||
1068
+ (Array.isArray(v) && v.length == 0)) {
1066
1069
  this._setState('clear');
1067
1070
  }
1068
1071
  // else {
@@ -1072,7 +1075,7 @@ function _ValueComponenetMixin(Base) {
1072
1075
  // }
1073
1076
  }
1074
1077
  __classPrivateFieldSet(this, _isUserInteraction, false, "f");
1075
- //}
1078
+ //}
1076
1079
  }
1077
1080
  get state() {
1078
1081
  return __classPrivateFieldGet(this, _state, "f");
@@ -1084,7 +1087,7 @@ function _ValueComponenetMixin(Base) {
1084
1087
  value: newValue,
1085
1088
  oldValue: oldValue,
1086
1089
  name: this.name,
1087
- isUserInteraction: this.isUserInteraction
1090
+ isUserInteraction: this.isUserInteraction,
1088
1091
  });
1089
1092
  this._onValueChanged(oldValue, __classPrivateFieldGet(this, _value, "f"));
1090
1093
  }
@@ -1115,36 +1118,53 @@ function _ValueComponenetMixin(Base) {
1115
1118
  this.value = null;
1116
1119
  }
1117
1120
  validate() {
1118
- const rules = Array.from(this._getHostElement().querySelectorAll('ax-validation-rule')).filter((c) => c.__axContext__.enabled);
1121
+ const rules = Array.from(this._getHostElement().querySelectorAll('ax-validation-rule')).filter(c => c.__axContext__.enabled);
1119
1122
  //
1120
1123
  if (!rules || rules.length === 0) {
1121
1124
  this._setState('clear');
1122
- return Promise.resolve({ result: true, value: this.value, name: this.name, id: this.id });
1125
+ return Promise.resolve({
1126
+ result: true,
1127
+ value: this.value,
1128
+ name: this.name,
1129
+ id: this.id,
1130
+ });
1123
1131
  }
1124
- return new Promise((resolve) => {
1132
+ return new Promise(resolve => {
1125
1133
  Promise.all(rules
1126
- .filter((c) => typeof (c === null || c === void 0 ? void 0 : c.validate) === 'function')
1127
- .map((c) => {
1134
+ .filter(c => typeof (c === null || c === void 0 ? void 0 : c.validate) === 'function')
1135
+ .map(c => {
1128
1136
  return c.validate(this.value);
1129
- })).then((d) => {
1130
- const error = d.find((c) => c.result === false);
1137
+ })).then(d => {
1138
+ const error = d.find(c => c.result === false);
1131
1139
  if (error) {
1132
1140
  this._setState('error', error.message);
1133
- resolve({ result: false, value: this.value, message: error.message, name: this.name, id: this.id });
1141
+ resolve({
1142
+ result: false,
1143
+ value: this.value,
1144
+ message: error.message,
1145
+ name: this.name,
1146
+ id: this.id,
1147
+ });
1134
1148
  }
1135
1149
  else {
1136
1150
  this._setState('success');
1137
- resolve({ result: true, value: this.value, name: this.name, id: this.id });
1151
+ resolve({
1152
+ result: true,
1153
+ value: this.value,
1154
+ name: this.name,
1155
+ id: this.id,
1156
+ });
1138
1157
  }
1139
1158
  });
1140
1159
  });
1141
1160
  }
1142
1161
  _setState(state, ...args) {
1143
- const container = this._getHostElement().classList.contains('ax-editor-container') ?
1144
- this._getHostElement() :
1145
- this._getHostElement().querySelector('.ax-editor-container');
1162
+ const container = this._getHostElement().classList.contains('ax-editor-container')
1163
+ ? this._getHostElement()
1164
+ : this._getHostElement().querySelector('.ax-editor-container');
1146
1165
  const formField = container === null || container === void 0 ? void 0 : container.closest('.ax-form-field');
1147
- const label = (formField === null || formField === void 0 ? void 0 : formField.querySelector('ax-label')) || (formField === null || formField === void 0 ? void 0 : formField.querySelector('label'));
1166
+ const label = (formField === null || formField === void 0 ? void 0 : formField.querySelector('ax-label')) ||
1167
+ (formField === null || formField === void 0 ? void 0 : formField.querySelector('label'));
1148
1168
  let target = container || this._getInnerElement();
1149
1169
  if (target === null || target === void 0 ? void 0 : target.querySelector('.ax-error-container')) {
1150
1170
  target = target.querySelector('.ax-error-container');
@@ -1195,7 +1215,7 @@ const VALUE_INPUTS = [
1195
1215
  'allowNull',
1196
1216
  'value',
1197
1217
  'name',
1198
- 'checked'
1218
+ 'checked',
1199
1219
  ];
1200
1220
  const VALUE_OUTPUT = ['valueChange', 'onValueChanged'];
1201
1221