@acorex/components 7.0.37 → 7.0.38
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/context-menu/src/context-menu.component.d.ts +1 -1
- package/esm2020/action-sheet/src/action-sheet.component.mjs +3 -3
- package/esm2020/button/src/button.component.mjs +2 -2
- package/esm2020/context-menu/src/context-menu.component.mjs +8 -8
- package/esm2020/form/src/form-field.component.mjs +3 -3
- package/esm2020/label/src/label.component.mjs +7 -4
- package/esm2020/menu/src/menu.component.mjs +29 -34
- package/esm2020/mixin/src/base-menu-mixin.class.mjs +7 -9
- package/esm2020/selection-list/src/selection-list.component.mjs +2 -2
- package/fesm2015/acorex-components-action-sheet.mjs +2 -3
- package/fesm2015/acorex-components-action-sheet.mjs.map +1 -1
- package/fesm2015/acorex-components-alert.mjs +1 -0
- package/fesm2015/acorex-components-button.mjs +2 -3
- package/fesm2015/acorex-components-button.mjs.map +1 -1
- package/fesm2015/acorex-components-context-menu.mjs +7 -8
- package/fesm2015/acorex-components-context-menu.mjs.map +1 -1
- package/fesm2015/acorex-components-form.mjs +2 -2
- package/fesm2015/acorex-components-form.mjs.map +1 -1
- package/fesm2015/acorex-components-label.mjs +5 -3
- package/fesm2015/acorex-components-label.mjs.map +1 -1
- package/fesm2015/acorex-components-menu.mjs +28 -34
- package/fesm2015/acorex-components-menu.mjs.map +1 -1
- package/fesm2015/acorex-components-mixin.mjs +6 -9
- package/fesm2015/acorex-components-mixin.mjs.map +1 -1
- package/fesm2015/acorex-components-selection-list.mjs +2 -2
- package/fesm2015/acorex-components-selection-list.mjs.map +1 -1
- package/fesm2015/acorex-components-switch.mjs +1 -0
- package/fesm2015/acorex-components-tabs.mjs +1 -0
- package/fesm2015/acorex-components-tag.mjs +1 -0
- package/fesm2015/acorex-components-textarea.mjs +1 -0
- package/fesm2015/acorex-components-time-box.mjs +1 -0
- package/fesm2015/acorex-components-tooltip.mjs +1 -0
- package/fesm2015/acorex-components-tree-view.mjs +1 -0
- package/fesm2015/acorex-components-uploader.mjs +1 -0
- package/fesm2020/acorex-components-action-sheet.mjs +2 -3
- package/fesm2020/acorex-components-action-sheet.mjs.map +1 -1
- package/fesm2020/acorex-components-alert.mjs +1 -0
- package/fesm2020/acorex-components-button.mjs +2 -3
- package/fesm2020/acorex-components-button.mjs.map +1 -1
- package/fesm2020/acorex-components-context-menu.mjs +7 -8
- package/fesm2020/acorex-components-context-menu.mjs.map +1 -1
- package/fesm2020/acorex-components-form.mjs +2 -2
- package/fesm2020/acorex-components-form.mjs.map +1 -1
- package/fesm2020/acorex-components-label.mjs +5 -3
- package/fesm2020/acorex-components-label.mjs.map +1 -1
- package/fesm2020/acorex-components-menu.mjs +28 -34
- package/fesm2020/acorex-components-menu.mjs.map +1 -1
- package/fesm2020/acorex-components-mixin.mjs +6 -9
- package/fesm2020/acorex-components-mixin.mjs.map +1 -1
- package/fesm2020/acorex-components-selection-list.mjs +2 -2
- package/fesm2020/acorex-components-selection-list.mjs.map +1 -1
- package/fesm2020/acorex-components-switch.mjs +1 -0
- package/fesm2020/acorex-components-tabs.mjs +1 -0
- package/fesm2020/acorex-components-tag.mjs +1 -0
- package/fesm2020/acorex-components-textarea.mjs +1 -0
- package/fesm2020/acorex-components-time-box.mjs +1 -0
- package/fesm2020/acorex-components-tooltip.mjs +1 -0
- package/fesm2020/acorex-components-tree-view.mjs +1 -0
- package/fesm2020/acorex-components-uploader.mjs +1 -0
- package/label/src/label.component.d.ts +2 -1
- package/menu/src/menu.component.d.ts +1 -1
- package/package.json +1 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"acorex-components-mixin.mjs","sources":["../../../../projects/acorex/components/mixin/src/base-components.class.ts","../../../../projects/acorex/components/mixin/src/base-menu-mixin.class.ts","../../../../projects/acorex/components/mixin/src/button-mixin.class.ts","../../../../projects/acorex/components/mixin/src/clickable-mixin.class.ts","../../../../projects/acorex/components/mixin/src/color-look-mixing.class.ts","../../../../projects/acorex/components/mixin/src/datalist-component.class.ts","../../../../projects/acorex/components/mixin/src/datalist.class.ts","../../../../projects/acorex/components/mixin/src/dropdown-mixin.class.ts","../../../../projects/acorex/components/mixin/src/interactive-mixin.class.ts","../../../../projects/acorex/components/mixin/src/loading-mixin.class.ts","../../../../projects/acorex/components/mixin/src/selection-component.class.ts","../../../../projects/acorex/components/mixin/src/sizable-mixin.class.ts","../../../../projects/acorex/components/mixin/src/textbox-mixin.class.ts","../../../../projects/acorex/components/mixin/src/value-mixin.class.ts","../../../../projects/acorex/components/mixin/src/mixin.class.ts","../../../../projects/acorex/components/mixin/src/page-component.class.ts","../../../../projects/acorex/components/mixin/acorex-components-mixin.ts"],"sourcesContent":["import {\r\n ChangeDetectorRef,\r\n EventEmitter,\r\n Inject,\r\n Injectable,\r\n ElementRef\r\n} from '@angular/core';\r\nimport { Constructor } from './constratctor';\r\n\r\n/**\r\n * A token that specifies the size of component.\r\n */\r\nexport type AXElementSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';\r\n\r\nexport type AXComponentState ='clear' | 'success' | 'error';\r\n\r\nexport type AXComponentOptionChanging = { name: string; value?: any };\r\nexport type AXComponentOptionChanged = {\r\n name: string;\r\n newValue?: any;\r\n oldValue?: any;\r\n};\r\nexport type AXComponentSetOption = {\r\n name: string;\r\n value?: any;\r\n afterCallback?: (oldValue?: any, newValue?: any) => void;\r\n beforeCallback?: (oldValue?: any, newValue?: any) => void;\r\n};\r\n\r\n@Injectable()\r\nexport class AXBaseComponent {\r\n\r\n id: string = `AX${Math.round(Math.random() * Math.pow(10, 10))}`;\r\n\r\n /**\r\n * A token that specifies the layout direction of component.\r\n */\r\n //rtl: boolean;\r\n\r\n #rtl: boolean;\r\n\r\n\r\n get rtl(): boolean {\r\n if (this.#rtl)\r\n return this.#rtl;\r\n else\r\n return this._getHostElement().classList.contains('ax-rtl') ||\r\n window\r\n .getComputedStyle(this._getHostElement(), null)\r\n .getPropertyValue('direction') === 'rtl';\r\n }\r\n\r\n set rtl(value: boolean) {\r\n this.#rtl = value;\r\n }\r\n\r\n\r\n #elementRef: ElementRef;\r\n _cdr: ChangeDetectorRef;\r\n\r\n _isInited: boolean;\r\n _isRendered: boolean;\r\n\r\n /**\r\n * @ignore\r\n */\r\n constructor(@Inject(Array) ...args: any[]) {\r\n this.#elementRef = args[0];\r\n this._cdr = args[1];\r\n }\r\n\r\n ngOnInit() {\r\n this._isInited = true;\r\n this._onInternalInit();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this._isRendered = true;\r\n this._onInternalViewInit();\r\n }\r\n\r\n ngOnDestroy() {\r\n this._onInternalDestroy();\r\n }\r\n\r\n _getHostElement<T = HTMLElement>(): T {\r\n return this.#elementRef.nativeElement as T;\r\n }\r\n\r\n _getInnerElement<T = HTMLElement>(): T {\r\n return this._getHostElement().firstElementChild as unknown as T;\r\n }\r\n\r\n _onInternalInit() {\r\n (this._getHostElement() as any).__axContext__ = this;\r\n this._applyRtl();\r\n this.onInit();\r\n }\r\n\r\n _onInternalViewInit() {\r\n this.onViewInit();\r\n }\r\n\r\n _onInternalDestroy() {\r\n this.onDestroy();\r\n }\r\n\r\n onInit() { }\r\n\r\n\r\n onViewInit() { }\r\n\r\n onDestroy() { }\r\n\r\n _applyRtl() {\r\n if (this.rtl) {\r\n this._getHostElement().classList.add('ax-rtl');\r\n }\r\n }\r\n\r\n _onOptionChanging(option: AXComponentOptionChanging) {\r\n return option?.value;\r\n }\r\n _onOptionChanged(option: AXComponentOptionChanged): void { }\r\n\r\n _setOption(option: AXComponentSetOption) {\r\n const oldValue = this[option.name];\r\n const newValue = this._onOptionChanging({\r\n name: option.name,\r\n value: option.value,\r\n });\r\n //TODO : check real changes\r\n if (option.beforeCallback) option.beforeCallback(oldValue, newValue);\r\n if (oldValue != newValue) {\r\n this[`_${option.name}`] = option.value;\r\n this._onOptionChanged({ name: option.name, newValue, oldValue });\r\n const emitter = this[`${option.name}Change`] as EventEmitter<any>;\r\n if (emitter) emitter.emit(newValue);\r\n }\r\n if (option.afterCallback) option.afterCallback(oldValue, newValue);\r\n }\r\n}\r\n\r\nexport function _BaseComponenetMixin<\r\n TBase extends Constructor<AXBaseComponent>\r\n>(Base: TBase) {\r\n return class extends Base {\r\n constructor(...args: any[]) {\r\n super(...args);\r\n }\r\n };\r\n}\r\n\r\nexport const BASE_INPUTS = ['rtl'];\r\nexport const BASE_OUTPUT = [];\r\n","import { AXItemClickEvent } from '@acorex/components/common';\r\nimport { EventEmitter } from '@angular/core';\r\nimport _ from 'lodash';\r\nimport { AXBaseComponent } from './base-components.class';\r\nimport { Constructor } from './constratctor';\r\n\r\nexport function _BaseMenuComponentMixin<\r\n TBase extends Constructor<AXBaseComponent>\r\n>(Base: TBase) {\r\n return class extends Base {\r\n textField: string = 'text';\r\n\r\n valueField: string = 'id';\r\n\r\n #isLoading: boolean = false;\r\n\r\n #loadedItems: any = [];\r\n\r\n visibleField: string;\r\n\r\n disableField: string = 'disabled';\r\n\r\n hasChildField: string;\r\n\r\n iconField: string = 'icon';\r\n\r\n openMode: 'click' | 'hover' = 'click';\r\n\r\n displayMode: 'horizontal' | 'vertical' | 'sidemenu' = 'sidemenu';\r\n\r\n dividerField: string = 'divider';\r\n\r\n onMenuItemClick: EventEmitter<AXItemClickEvent<any>> = new EventEmitter<\r\n AXItemClickEvent<any>\r\n >();\r\n\r\n constructor(...args: any[]) {\r\n super(...args);\r\n }\r\n\r\n #items: any = [];\r\n get items(): any {\r\n return this.#items;\r\n }\r\n set items(v: any) {\r\n if (Array.isArray(v)) {\r\n this.#items = v;\r\n } else if (typeof v === 'function') {\r\n this.#items = v;\r\n } else {\r\n this.#items = [];\r\n }\r\n }\r\n\r\n get displayItems() {\r\n if (Array.isArray(this.items)) {\r\n return this.#items || [];\r\n } else if (typeof this.#items == 'function') {\r\n return this.#loadedItems || [];\r\n }\r\n return [];\r\n }\r\n\r\n get isLoading() {\r\n return this.#isLoading;\r\n }\r\n\r\n _formatData(v: any[]) {\r\n return _.unionBy(\r\n v.map((o, i) => {\r\n if (typeof o == 'object') return o;\r\n else {\r\n const no: any = {};\r\n no[this.valueField] = o;\r\n no[\r\n Array.isArray(this.textField) ? this.textField[0] : this.textField\r\n ] = o;\r\n return no;\r\n }\r\n }),\r\n this.valueField\r\n );\r\n }\r\n\r\n _findNode(parentId: number, _children: any, source: any) {\r\n if (source.length > 0) {\r\n source.forEach((element) => {\r\n if (element[this.valueField] == parentId) {\r\n element.children = _children;\r\n } else {\r\n if (element?.children)\r\n this._findNode(parentId, _children, element.children);\r\n }\r\n });\r\n }\r\n }\r\n\r\n _fetchData(parentId?: number, searchText?: string) {\r\n return new Promise((resolve) => {\r\n if (this.#isLoading) {\r\n return;\r\n }\r\n if (this.#items) {\r\n this.#isLoading = true;\r\n this.#items({\r\n parentId: parentId,\r\n searchQuery: searchText,\r\n })\r\n .then((c) => {\r\n if (Array.isArray(c)) {\r\n if (parentId) {\r\n resolve(this._findNode(parentId, c, this.displayItems));\r\n } else {\r\n resolve((this.#loadedItems = c));\r\n }\r\n }\r\n this._cdr.markForCheck();\r\n })\r\n .finally(() => {\r\n this.#isLoading = false;\r\n });\r\n }\r\n });\r\n }\r\n\r\n _onInternalInit() {\r\n if (typeof this.#items == 'function') {\r\n this._fetchData();\r\n }\r\n super._onInternalInit();\r\n }\r\n\r\n _getItemDisplayTextTemplte(item) {\r\n if (item)\r\n return Array.isArray(this.textField)\r\n ? this.textField.map((c) => item[c]).join(',')\r\n : item[this.textField];\r\n else return 'Loading...';\r\n }\r\n\r\n public refresh() {\r\n this._fetchData();\r\n }\r\n };\r\n}\r\n\r\nexport const BASEMENU_INPUTS = [\r\n 'textField',\r\n 'valueField',\r\n 'items',\r\n 'parentId',\r\n 'iconField',\r\n 'tooltip',\r\n 'isOpen',\r\n 'isActive',\r\n 'visibleField',\r\n 'disableField',\r\n 'hasChildField',\r\n 'openMode',\r\n 'displayMode',\r\n 'dividerField',\r\n];\r\nexport const BASEMENU_OUTPUT = ['onMenuItemClick'];\r\n","import { EventEmitter } from '@angular/core';\r\nimport { AXBaseComponent } from './base-components.class';\r\nimport { Constructor } from './constratctor';\r\n\r\nexport function _ButtonComponentMixin<TBase extends Constructor<AXBaseComponent>>(Base: TBase) {\r\n return class extends Base {\r\n \r\n\r\n _text: string;\r\n /**\r\n * Defines the primary text to show inside the button.\r\n */\r\n get text(): string {\r\n return this._text;\r\n }\r\n set text(v: string) {\r\n this._setOption({\r\n name: 'text',\r\n value: v,\r\n afterCallback: () => {\r\n this._cdr.markForCheck();\r\n }\r\n })\r\n }\r\n\r\n\r\n\r\n toggleableChange: EventEmitter<boolean> = new EventEmitter();\r\n _toggleable?: boolean = false;\r\n /**\r\n * Provides visual styling that indicates if the Button is active\r\n */\r\n get toggleable(): boolean {\r\n return this._toggleable!;\r\n }\r\n set toggleable(value: boolean) {\r\n this._setOption({\r\n name: 'toggleable',\r\n value\r\n });\r\n }\r\n\r\n\r\n selectedChange: EventEmitter<boolean> = new EventEmitter();\r\n _selected?: boolean = false;\r\n /**\r\n * Indicates if the Button is selected or not\r\n */\r\n get selected(): boolean {\r\n return this._selected!;\r\n }\r\n set selected(value: boolean) {\r\n this._setOption({\r\n name: 'selected',\r\n value,\r\n afterCallback: () => {\r\n this._cdr.markForCheck();\r\n }\r\n });\r\n }\r\n\r\n constructor(...args: any[]) {\r\n super(...args);\r\n }\r\n\r\n\r\n get _classes() {\r\n const cssClasses = {\r\n 'ax-button-icon': !this.text,\r\n 'ax-state-disabled': this[\"disabled\"],\r\n 'ax-state-selected': this.selected\r\n };\r\n cssClasses[`ax-${this['color'] || 'default'}${this['look'] ? '-' + this['look'] : '-default'}`] = true;\r\n return cssClasses;\r\n }\r\n };\r\n}\r\n\r\nexport const BUTTON_INPUTS = [\r\n 'text',\r\n 'toggleable',\r\n 'selected',\r\n];\r\nexport const BUTTON_OUTPUT = ['onBlur', 'onFocus', 'onClick', 'selectedChange', 'toggleableChange'];\r\n","import { EventEmitter } from \"@angular/core\";\r\nimport { AXBaseComponent } from \"./base-components.class\";\r\nimport { Constructor } from \"./constratctor\";\r\nimport { AXClickEvent } from \"@acorex/components/common\";\r\n\r\n\r\nexport function _ClickableComponenetMixin<TBase extends Constructor<AXBaseComponent>>(Base: TBase){\r\n return class extends Base {\r\n\r\n /**\r\n * Fires each time the user clicks the button.\r\n * @event\r\n */\r\n onClick: EventEmitter<AXClickEvent> = new EventEmitter<AXClickEvent>();\r\n\r\n _emitOnClickEvent(e: MouseEvent): void {\r\n this.onClick.emit({\r\n component: this,\r\n htmlElement: this._getHostElement(),\r\n nativeEvent: e\r\n });\r\n }\r\n\r\n /**\r\n * @ignore\r\n */\r\n constructor(...args: any[]) {\r\n super(...args);\r\n }\r\n }\r\n}\r\n\r\n","import { EventEmitter } from \"@angular/core\";\r\nimport { AXStyleColorType, AXStyleLookType } from \"@acorex/components/common\";\r\nimport { AXBaseComponent } from \"./base-components.class\";\r\nimport { Constructor } from \"./constratctor\";\r\n\r\nexport function _ColorLookComponentMixin<TBase extends Constructor<AXBaseComponent>>(Base: TBase) {\r\n return class extends Base {\r\n\r\n constructor(...args: any[]) {\r\n super(...args);\r\n }\r\n\r\n colorChange: EventEmitter<AXStyleColorType> = new EventEmitter();\r\n _color: AXStyleColorType = 'primary';\r\n /**\r\n * Predefined color schemes\r\n */\r\n get color(): AXStyleColorType {\r\n return this._color;\r\n }\r\n set color(value: AXStyleColorType) {\r\n this._setOption({\r\n name: 'color',\r\n value,\r\n afterCallback: () => {\r\n this._cdr.markForCheck();\r\n }\r\n });\r\n }\r\n\r\n lookChange: EventEmitter<AXStyleLookType> = new EventEmitter();\r\n _look?: AXStyleLookType = 'default';\r\n /**\r\n * Predefined look schemes\r\n */\r\n get look(): AXStyleLookType {\r\n return this._look!;\r\n }\r\n set look(value: AXStyleLookType) {\r\n this._setOption({\r\n name: 'look',\r\n value,\r\n afterCallback: () => {\r\n this._cdr.markForCheck();\r\n }\r\n });\r\n }\r\n }\r\n}\r\n\r\n\r\nexport const COLOR_LOOK_INPUTS = [\r\n 'color',\r\n 'look',\r\n];\r\nexport const COLOR_LOOK_OUTPUT = ['lookChange', 'colorChange'];","import { unionBy, flatMapDeep } from 'lodash-es';\r\nimport { AXBaseComponent } from './base-components.class';\r\nimport { Constructor } from './constratctor';\r\nimport { AXDataListFetchDataCallback, AXDataListItems } from './datalist.class';\r\n\r\nexport function _DatalistComponenetMixin<\r\n TBase extends Constructor<AXBaseComponent>\r\n>(Base: TBase) {\r\n return class extends Base {\r\n valueField: string = 'id';\r\n textField: string = 'text';\r\n childrenField: string;\r\n pageSize: number = 10;\r\n\r\n #currentPage: number = 0;\r\n #isLoading: boolean = false;\r\n #loadedItems: any[] = [];\r\n #flatItems: any[] = [];\r\n #totalItems: number = 0;\r\n\r\n #isLazy: boolean = false;\r\n\r\n get totalCount(): number {\r\n return this.#totalItems;\r\n }\r\n\r\n get isLazy(): boolean {\r\n return this.#isLazy;\r\n }\r\n\r\n get loadedCount(): number {\r\n return this.#loadedItems?.length || 0;\r\n }\r\n\r\n constructor(...args: any[]) {\r\n super(...args);\r\n }\r\n\r\n #items: AXDataListItems = [];\r\n get items(): AXDataListItems {\r\n return this.#items;\r\n }\r\n set items(v: AXDataListItems) {\r\n if (Array.isArray(v)) {\r\n this.#items = this._formatData(v);\r\n this._onDataLoaded();\r\n this.#generateFlatItems();\r\n } else if (typeof v === 'function') {\r\n this.#isLazy = true;\r\n this.#items = v;\r\n } else {\r\n this.#items = [];\r\n this._onDataLoaded();\r\n this.#generateFlatItems();\r\n }\r\n }\r\n\r\n get displayItems(): any[] {\r\n if (Array.isArray(this.items)) {\r\n return (this.#items || []) as any[];\r\n } else if (typeof this.#items == 'function') {\r\n return this.#loadedItems || [];\r\n }\r\n return [];\r\n }\r\n\r\n get flatItems(): any[] {\r\n return this.#flatItems || [];\r\n }\r\n\r\n get isLoading(): boolean {\r\n return this.#isLoading;\r\n }\r\n\r\n _formatData(v: any[]) {\r\n return unionBy(\r\n v.map((o, i) => {\r\n if (typeof o == 'object') return o;\r\n else {\r\n const no: any = {};\r\n no[this.valueField] = o;\r\n no[\r\n Array.isArray(this.textField) ? this.textField[0] : this.textField\r\n ] = o;\r\n return no;\r\n }\r\n }),\r\n this.valueField\r\n );\r\n // return v.map((o, i) => {\r\n // if (typeof o == 'object')\r\n // return o\r\n // else {\r\n // const no: any = {};\r\n // no[this.valueField] = o;\r\n // no[Array.isArray(this.textField) ? this.textField[0] : this.textField] = o;\r\n // return no;\r\n // }\r\n // });\r\n }\r\n\r\n _fetchData(opts?: { searchQuery?: string }) {\r\n const skip = this.#currentPage * this.pageSize, take = this.pageSize;\r\n if (\r\n (this.loadedCount >= this.totalCount && this.totalCount != 0) ||\r\n this.#isLoading ||\r\n !this.#isLazy ||\r\n skip > this.totalCount\r\n ) {\r\n return;\r\n }\r\n if (this.#items) {\r\n this.#isLoading = true;\r\n const fetchFn = this.#items as AXDataListFetchDataCallback;\r\n fetchFn({ skip, take, searchQuery: opts?.searchQuery })\r\n .then((c) => {\r\n if (Array.isArray(c)) {\r\n this.#loadedItems = this._formatData(c);\r\n this.#totalItems = c.length;\r\n } else {\r\n this.#totalItems = c.total || c.items?.length || 0;\r\n this.#loadedItems = [\r\n ...new Set(this.#loadedItems.concat(this._formatData(c.items))),\r\n ];\r\n this.#currentPage++;\r\n }\r\n this._cdr.markForCheck();\r\n })\r\n .finally(() => {\r\n this.#isLoading = false;\r\n this._onDataLoaded();\r\n this.#generateFlatItems();\r\n });\r\n }\r\n }\r\n\r\n _onDataLoaded() { }\r\n\r\n #generateFlatItems(): void {\r\n const flattenFn = (item) => {\r\n return [item, flatMapDeep(item.children, flattenFn)];\r\n };\r\n this.#flatItems = flatMapDeep(this.displayItems, flattenFn);\r\n }\r\n\r\n _getItemDisplayTextTemplte(item) {\r\n if (item)\r\n return Array.isArray(this.textField)\r\n ? this.textField.map((c) => item[c]).join(',')\r\n : item[this.textField];\r\n else return 'Loading...';\r\n }\r\n\r\n _trackByFunction(item) {\r\n if (!item) return null;\r\n return item[this.valueField];\r\n }\r\n\r\n refresh() {\r\n this.empty();\r\n this._fetchData();\r\n }\r\n\r\n empty() {\r\n this.#isLoading = false;\r\n this.#currentPage = 0;\r\n if (this.#loadedItems) {\r\n this.#loadedItems.length = 0;\r\n }\r\n }\r\n };\r\n}\r\n\r\nexport const DATALIST_INPUTS = ['pageSize', 'valueField', 'textField', 'items'];\r\nexport const DATALIST_OUTPUT = [];\r\n","\r\nexport interface AXDataListQuery {\r\n take?: number;\r\n skip?: number;\r\n searchQuery?: string;\r\n}\r\nexport interface AXDataListFetchCallbackResult {\r\n items: any[];\r\n total: number;\r\n};\r\n\r\nexport type AXDataListFetchDataCallback = (e: AXDataListQuery) => Promise<any[] | AXDataListFetchCallbackResult>;\r\n\r\nexport type AXDataListItems = any[] | AXDataListFetchDataCallback;","import { EventEmitter } from \"@angular/core\";\r\nimport { AXBaseComponent } from \"./base-components.class\";\r\nimport { Constructor } from \"./constratctor\";\r\nimport { AXEvent,AXConnectedPosition } from \"@acorex/components/common\";\r\n\r\n\r\n\r\nexport interface DropdownComponentInterface {\r\n open(): void;\r\n close(): void;\r\n toggle(): void;\r\n isOpen: boolean;\r\n}\r\n\r\n\r\nexport function _DropdownComponenetMixin<TBase extends Constructor<AXBaseComponent>>(Base: TBase) {\r\n\r\n abstract class Mixin extends Base {\r\n\r\n readonly: boolean = false;\r\n\r\n\r\n onOpened: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\r\n onClosed: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\r\n\r\n //TODO: Circular dependency on AXPopverComponent\r\n abstract popover: any;\r\n\r\n position: AXConnectedPosition[] = [];\r\n\r\n _emitOnOpenedEvent() {\r\n\r\n this.onOpened.emit({\r\n component: this,\r\n htmlElement: this._getHostElement()\r\n });\r\n }\r\n\r\n _emitOnClosedEvent() {\r\n this.onClosed.emit({\r\n component: this,\r\n htmlElement: this._getHostElement()\r\n });\r\n }\r\n\r\n\r\n onInit(): void {\r\n super.onInit();\r\n this.popover.onOpened.subscribe(this.onOpened);\r\n this.popover.onClosed.subscribe(this.onClosed);\r\n }\r\n\r\n onViewInit() {\r\n // wait for documentElement\r\n setTimeout(() => {\r\n if (this.position.length == 0) {\r\n const offset = Number(getComputedStyle(document.documentElement).getPropertyValue('--ax-base-size').replace('px', ''));\r\n const list: AXConnectedPosition[] = [\r\n {\r\n originX: 'start',\r\n originY: 'bottom',\r\n overlayX: 'start',\r\n overlayY: 'top',\r\n offsetY: offset\r\n },\r\n {\r\n originX: 'start',\r\n originY: 'top',\r\n overlayX: 'start',\r\n overlayY: 'bottom',\r\n offsetY: -offset\r\n },\r\n {\r\n originX: 'end',\r\n originY: 'bottom',\r\n overlayX: 'end',\r\n overlayY: 'top',\r\n offsetY: offset\r\n },\r\n {\r\n originX: 'end',\r\n originY: 'top',\r\n overlayX: 'end',\r\n overlayY: 'bottom',\r\n offsetY: -offset\r\n },\r\n ];\r\n this.position.push(...list);\r\n }\r\n }, 500);\r\n }\r\n\r\n toggle() {\r\n if (this['disabled'] !== true) {\r\n this.popover.toggle();\r\n }\r\n }\r\n\r\n close() {\r\n if (!this.isOpen || this['disabled']) {\r\n return;\r\n }\r\n this.popover.close();\r\n (this as any)?.focus();\r\n }\r\n\r\n open() {\r\n if (this.isOpen || this['disabled']) {\r\n return;\r\n }\r\n this.popover.open();\r\n this.popover.focus();\r\n }\r\n\r\n get isOpen(): boolean {\r\n return this.popover?.isOpen;\r\n }\r\n\r\n constructor(...args: any[]) {\r\n super(...args);\r\n }\r\n\r\n }\r\n\r\n return Mixin;\r\n}\r\n\r\n\r\nexport const DROPDOWN_INPUTS = [\r\n 'isOpen',\r\n 'fitParent',\r\n 'dropdownWidth',\r\n 'position'\r\n];\r\nexport const DROPDOWN_OUTPUT = ['onOpened', 'onClosed'];","import { coerceBooleanProperty, coerceNumberProperty } from \"@angular/cdk/coercion\";\r\nimport { EventEmitter } from \"@angular/core\";\r\nimport { AXBaseComponent } from \"./base-components.class\";\r\nimport { Constructor } from \"./constratctor\";\r\nimport { AXFocusEvent } from \"@acorex/components/common\";\r\n\r\n\r\nexport function _InteractiveComponenetMixin<TBase extends Constructor<AXBaseComponent>>(Base: TBase) {\r\n abstract class Mixin extends Base {\r\n\r\n #disabled: boolean = false;\r\n /**\r\n * If set to true, it disables the component.\r\n */\r\n get disabled(): boolean { return this.#disabled; }\r\n set disabled(value: boolean) {\r\n value = this._onOptionChanging({ name: 'disabled', value: value });\r\n if (value != this.disabled) {\r\n const oldValue = this.disabled;\r\n this.#disabled = coerceBooleanProperty(value);\r\n this._onOptionChanged({ name: 'disabled', oldValue, newValue: value });\r\n this._cdr.markForCheck();\r\n }\r\n }\r\n\r\n\r\n\r\n #tabIndex: number = 0;\r\n /**\r\n * Specifies the tabindex of the component.\r\n */\r\n get tabIndex(): number { return this.disabled ? -1 : this.#tabIndex; }\r\n set tabIndex(value: number) {\r\n this.#tabIndex = value != null ? coerceNumberProperty(value) : 0;\r\n }\r\n\r\n /**\r\n * Fires each time the component gets focused.\r\n * @event\r\n */\r\n onFocus: EventEmitter<AXFocusEvent> = new EventEmitter<AXFocusEvent>();\r\n\r\n _emitOnFocusEvent(e: FocusEvent): void {\r\n this.onFocus.emit({\r\n component: this,\r\n htmlElement: this._getHostElement(),\r\n nativeEvent: e\r\n });\r\n }\r\n\r\n /**\r\n * Fires each time the component gets blurred.\r\n * @event\r\n */\r\n onBlur: EventEmitter<AXFocusEvent> = new EventEmitter<AXFocusEvent>();\r\n\r\n _emitOnBlurEvent(e: FocusEvent): void {\r\n this.onBlur.emit({\r\n component: this,\r\n htmlElement: this._getHostElement(),\r\n nativeEvent: e\r\n });\r\n }\r\n\r\n /**\r\n * Focuses the component.\r\n */\r\n focus(): void {\r\n const list = ['button', 'input', '[href]', 'select', 'textarea', '[tabindex]'].map(c => c + ':not([tabindex=\"-1\"])');\r\n const focusable = this._getHostElement().querySelector<HTMLElement>(list.join(', '));\r\n if (focusable) {\r\n focusable.focus();\r\n }\r\n }\r\n\r\n /**\r\n * Check component is focused or has any focused element.\r\n */\r\n hasFocus(): boolean {\r\n return this._getHostElement().matches(':focus-within') || this._getHostElement().matches(':focus');\r\n }\r\n\r\n /**\r\n * @ignore\r\n */\r\n constructor(...args: any[]) {\r\n super(...args);\r\n }\r\n }\r\n return Mixin;\r\n}\r\n\r\nexport const INTERACTIVE_INPUTS = [\r\n 'disabled',\r\n 'tabIndex',\r\n];\r\nexport const INTERACTIVE_OUTPUT = ['onBlur', 'onFocus'];","import { AXBaseComponent } from './base-components.class';\r\nimport { Constructor } from './constratctor';\r\n\r\nexport function _LoadingComponenetMixin<TBase extends Constructor<AXBaseComponent>>(Base: TBase) {\r\n return class extends Base {\r\n /**\r\n * Defines a CSS class—or multiple classes separated by spaces— which are applied to a span element inside the Button. Allows the usage of custom icons.\r\n */\r\n loading: boolean = false;\r\n /**\r\n * Defines a CSS class—or multiple classes separated by spaces— which are applied to a span element inside the Button. Allows the usage of custom icons.\r\n */\r\n loadingIconClass: string;\r\n /**\r\n * Defines a CSS class—or multiple classes separated by spaces— which are applied to a span element inside the Button. Allows the usage of custom icons.\r\n */\r\n loadingText: string;\r\n\r\n\r\n constructor(...args: any[]) {\r\n super(...args.slice(0, 2))\r\n }\r\n\r\n _onInternalInit() {\r\n // if (!this.size) {\r\n // this.size = AXConfig.get('layout.size', 'sm');\r\n // }\r\n super._onInternalInit();\r\n }\r\n }\r\n}","import { AXObjectUtil } from '@acorex/core/utils';\r\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\r\nimport { EventEmitter } from '@angular/core';\r\nimport { AXSelectionValueChangedEvent } from '@acorex/components/common';\r\nimport { AXBaseComponent } from './base-components.class';\r\nimport { Constructor } from './constratctor';\r\n\r\nexport function _SelectionComponenetMixin<TBase extends Constructor<AXBaseComponent>>(Base: TBase) {\r\n return class extends Base {\r\n\r\n valueField: string = 'id';\r\n textField: string = 'text';\r\n disabledField: string = 'disabled';\r\n disabledCallback: (e: { item: any, index: number }) => boolean;\r\n multiple: boolean = false;\r\n selectionMode: 'value' | 'item' = 'value';\r\n\r\n /**\r\n * Defines the primary text to show inside the button.\r\n */\r\n get items(): any[] {\r\n return [];\r\n }\r\n\r\n get displayItems(): any[] {\r\n return [];\r\n }\r\n\r\n get flatItems(): any[] {\r\n return [];\r\n }\r\n\r\n\r\n public valueChange: EventEmitter<any> = new EventEmitter<any>();\r\n public onValueChanged: EventEmitter<AXSelectionValueChangedEvent> = new EventEmitter<AXSelectionValueChangedEvent>();\r\n\r\n\r\n constructor(...args: any[]) {\r\n super(...args)\r\n }\r\n\r\n _onInternalInit() {\r\n super._onInternalInit();\r\n }\r\n\r\n _value: any | any[];\r\n get value(): any | any[] {\r\n return this._value;\r\n }\r\n set value(v: any | any[]) {\r\n v = (this as any)._internalSetValue(v);\r\n if (v !== this._value) {\r\n const oldValue = AXObjectUtil.deepJSONClone(this._value);\r\n if (this.multiple) {\r\n this._value = Array.isArray(v) ? v : (v ? [v] : []);\r\n } else {\r\n this._value = Array.isArray(v) ? v[0] : v;\r\n }\r\n this._renderSelection();\r\n this.valueChange.emit(this._value);\r\n this.onValueChanged.emit({\r\n component: this,\r\n htmlElement: this._getHostElement(),\r\n isUserInteraction: false,\r\n oldValue,\r\n value: this._value,\r\n selectedKeys: this.selectedItems.map(c => c[this.valueField]),\r\n selectedItems: this.selectedItems.slice()\r\n });\r\n if (v == null || v == undefined || v == \"\") {\r\n (this as any)._setState('clear');\r\n }\r\n else {\r\n if (this._isInited) {\r\n (this as any).validate();\r\n }\r\n }\r\n }\r\n }\r\n\r\n _selectedItems: any[];\r\n get selectedItems(): any[] {\r\n return this._selectedItems || [];\r\n }\r\n\r\n _renderSelection() {\r\n const func = () => {\r\n if (this.value == null || this.value == undefined) {\r\n return [];\r\n }\r\n const items = this.flatItems;\r\n if (items.length > 0) {\r\n return items.filter(i => {\r\n if (Array.isArray(this.value)) {\r\n return this.value.some(ii => {\r\n if (typeof ii === 'object') {\r\n return i[this.valueField] === ii[this.valueField];\r\n }\r\n else {\r\n return i[this.valueField] === ii;\r\n }\r\n });\r\n }\r\n else {\r\n if (typeof this.value === 'object') {\r\n return i[this.valueField] === this.value[this.valueField];\r\n }\r\n else {\r\n return i[this.valueField] === this.value;\r\n }\r\n }\r\n });\r\n }\r\n if (Array.isArray(this.value)) {\r\n return this.value.map(ii => {\r\n if (typeof ii === 'object') {\r\n return ii;\r\n }\r\n else {\r\n const fake: any = {};\r\n fake[this.valueField] = this.value;\r\n fake[this.textField] = this.value;\r\n return fake;\r\n }\r\n });\r\n }\r\n else {\r\n if (typeof this.value === 'object') {\r\n return [this.value];\r\n }\r\n else {\r\n const fake: any = {};\r\n fake[this.valueField] = this.value;\r\n fake[this.textField] = this.value;\r\n return [fake];\r\n }\r\n }\r\n };\r\n this._selectedItems = func();\r\n }\r\n\r\n _getItemByDataMode(item: any) {\r\n return this.selectionMode === 'item' ? item : item[this.valueField];\r\n }\r\n\r\n _getItemValue(item: any) {\r\n return typeof item === 'object' ? item[this.valueField] : item;\r\n }\r\n\r\n unselectItems(...items: any[]) {\r\n if (!items || items.length === 0) {\r\n this.value = null;\r\n }\r\n else if (Array.isArray(this.value)) {\r\n this.value = this.value.filter(c => !items.some(d =>\r\n this._getItemValue(c) === this._getItemValue(d))\r\n );\r\n }\r\n else {\r\n this.value = null;\r\n }\r\n }\r\n\r\n selectItems(...items: any[]) {\r\n debugger\r\n if (items && items.length) {\r\n if (this.multiple) {\r\n this.value = (this.value || []).concat(items.map(c => this._getItemByDataMode(c)));\r\n }\r\n else {\r\n this.value = this._getItemByDataMode(items[0]);\r\n }\r\n }\r\n }\r\n\r\n toggleSelect(...items: any[]) {\r\n if (items && items.length) {\r\n items.forEach(item => {\r\n if (this.multiple) {\r\n this.isItemSelected(item) ? this.unselectItems(item) : this.selectItems(item);\r\n }\r\n else {\r\n this.selectItems(item)\r\n }\r\n });\r\n }\r\n }\r\n\r\n isItemSelected(item: any): boolean {\r\n return this.selectedItems.some(c => c[this.valueField] === item[this.valueField]);\r\n }\r\n\r\n isItemDisabled(item: any): boolean {\r\n return coerceBooleanProperty(item[this.disabledField]) === true || (this.disabledCallback ? this.disabledCallback({ item, index: -1 }) : false);\r\n }\r\n }\r\n}\r\n\r\n\r\nexport const SELECTION_INPUTS = [\r\n 'valueField',\r\n 'textField',\r\n 'disabledField',\r\n 'disabledCallback',\r\n 'multiple',\r\n 'selectionMode'\r\n];\r\nexport const SELECTION_OUTPUT = ['onValueChanged', 'valueChanged'];","import { AXBaseComponent, AXElementSize } from './base-components.class';\r\nimport { Constructor } from './constratctor';\r\n\r\nexport function _SizableComponenetMixin<TBase extends Constructor<AXBaseComponent>>(Base: TBase) {\r\n return class extends Base {\r\n\r\n /**\r\n * A token that specifies the size of component.\r\n */\r\n size: AXElementSize;\r\n\r\n /**\r\n * @ignore\r\n */\r\n constructor(...args: any[]) {\r\n super(...args.slice(0, 2))\r\n }\r\n\r\n _onInternalInit() {\r\n super._onInternalInit();\r\n }\r\n }\r\n}\r\n\r\n\r\nexport const SIZABLE_INPUTS = [\r\n 'size',\r\n];\r\nexport const SIZABLE_OUTPUT = [];","import { EventEmitter } from '@angular/core';\r\nimport { AXHtmlEvent } from '@acorex/components/common';\r\nimport { AXBaseComponent } from './base-components.class';\r\nimport { Constructor } from './constratctor';\r\n\r\nexport function _TextboxComponenetMixin<TBase extends Constructor<AXBaseComponent>>(Base: TBase) {\r\n return class extends Base {\r\n\r\n /**\r\n * A string value that specifies the type of text box.\r\n */\r\n type = 'text'\r\n\r\n /**\r\n * A string value that specifies the placeholder of text box.\r\n */\r\n placeholder: string = '';\r\n\r\n /**\r\n * A number value that specifies the maximum characters of text box.\r\n */\r\n maxLength: number;\r\n\r\n /**\r\n * Specifies that autocomplete is on or off.\r\n */\r\n autoComplete: string;\r\n\r\n /**\r\n * Fires each time the user press a key.\r\n * @event\r\n */\r\n onKeyDown: EventEmitter<AXHtmlEvent<KeyboardEvent>> = new EventEmitter<AXHtmlEvent<KeyboardEvent>>();\r\n\r\n /**\r\n * Fires each time the user press a key.\r\n * @event\r\n */\r\n onKeyUp: EventEmitter<AXHtmlEvent<KeyboardEvent>> = new EventEmitter<AXHtmlEvent<KeyboardEvent>>();\r\n\r\n /**\r\n * Fires each time the user press a key.\r\n * @event\r\n */\r\n onKeyPress: EventEmitter<AXHtmlEvent<KeyboardEvent>> = new EventEmitter<AXHtmlEvent<KeyboardEvent>>();\r\n\r\n\r\n _emitOnKeydownEvent(e: KeyboardEvent) {\r\n this.onKeyDown.emit({\r\n component: this,\r\n nativeEvent: e\r\n });\r\n (this as any)._setUserInteraction();\r\n }\r\n\r\n _emitOnKeyupEvent(e: KeyboardEvent) {\r\n this.onKeyUp.emit({\r\n component: this,\r\n nativeEvent: e\r\n });\r\n (this as any)._setUserInteraction();\r\n }\r\n \r\n _emitOnKeypressEvent(e: KeyboardEvent) {\r\n this.onKeyPress.emit({\r\n component: this,\r\n nativeEvent: e\r\n });\r\n (this as any)._setUserInteraction();\r\n }\r\n\r\n /**\r\n * @ignore\r\n */\r\n constructor(...args: any[]) {\r\n super(...args.slice(0, 2))\r\n }\r\n }\r\n}\r\n\r\nexport const TEXTBOX_INPUTS = ['placeholder', 'maxLength', 'allowNull', 'type', 'autoComplete', 'readonly','value','name']\r\nexport const TEXTBOX_OUTPUT = ['valueChange', 'onValueChanged']","import { coerceBooleanProperty } from '@angular/cdk/coercion';\r\nimport { EventEmitter } from '@angular/core';\r\nimport { AXBaseComponent, AXComponentState } from './base-components.class';\r\nimport { Constructor } from './constratctor';\r\nimport { AXValueChangedEvent } from '@acorex/components/common';\r\nimport { AXObjectUtil } from '@acorex/core/utils';\r\n\r\nexport function _ValueComponenetMixin<\r\n TBase extends Constructor<AXBaseComponent>\r\n>(Base: TBase) {\r\n return class extends Base {\r\n /**\r\n * Fires each time the user press a key.\r\n * @event\r\n */\r\n onValueChanged: EventEmitter<AXValueChangedEvent<any>> = new EventEmitter<\r\n AXValueChangedEvent<any>\r\n >();\r\n\r\n valueChange: EventEmitter<any> = new EventEmitter<any>();\r\n stateChange: EventEmitter<AXComponentState> = new EventEmitter<AXComponentState>();\r\n\r\n #readonly: boolean = false;\r\n\r\n /**\r\n * If set to true, user cannot change the value of component.\r\n */\r\n get readonly() {\r\n return this.#readonly;\r\n }\r\n set readonly(value: boolean) {\r\n this.#readonly = coerceBooleanProperty(value);\r\n }\r\n\r\n #allowNull: boolean = true;\r\n get allowNull() {\r\n return this.#allowNull;\r\n }\r\n set allowNull(value: boolean) {\r\n this.#allowNull = coerceBooleanProperty(value);\r\n }\r\n\r\n #name: string;\r\n get name() {\r\n return this.#name;\r\n }\r\n set name(value: string) {\r\n this.#name = value;\r\n }\r\n\r\n #isUserInteraction: boolean = false;\r\n\r\n get isUserInteraction(): boolean {\r\n return this.#isUserInteraction;\r\n }\r\n\r\n #value: any;\r\n get value(): any {\r\n return this._internalGetValue();\r\n }\r\n set value(v: any) {\r\n v = this._internalSetValue(v);\r\n //if (!this._isInited ) {\r\n const old = AXObjectUtil.deepJSONClone(this.value);\r\n // TODO: check real equality\r\n if (v != old) {\r\n this.#value = v;\r\n this._emitOnValueChangedEvent(old, this.value);\r\n this._cdr.markForCheck();\r\n if (\r\n v == null ||\r\n v == undefined ||\r\n v == '' ||\r\n (Array.isArray(v) && v.length == 0)\r\n ) {\r\n this._setState('clear');\r\n }\r\n // else {\r\n // if (this._isInited) {\r\n // this.validate();\r\n // }\r\n // }\r\n }\r\n this.#isUserInteraction = false;\r\n //}\r\n }\r\n\r\n #state: AXComponentState = 'clear';\r\n\r\n get state():AXComponentState {\r\n return this.#state;\r\n }\r\n\r\n set state(value:AXComponentState) {\r\n this._setState(value)\r\n this.stateChange.emit(value);\r\n }\r\n\r\n _emitOnValueChangedEvent(oldValue?: any, newValue?: any) {\r\n this.valueChange.emit(newValue);\r\n this.onValueChanged.emit({\r\n component: this,\r\n value: newValue,\r\n oldValue: oldValue,\r\n name: this.name,\r\n isUserInteraction: this.isUserInteraction,\r\n });\r\n this._onValueChanged(oldValue, this.#value);\r\n this.#isUserInteraction = false;\r\n }\r\n\r\n _internalSetValue(value: any) {\r\n return this._setValue(value);\r\n }\r\n\r\n _internalGetValue() {\r\n return this._getValue(this.#value);\r\n }\r\n\r\n _setValue(value: any) {\r\n return value;\r\n }\r\n\r\n _getValue(value: any) {\r\n return value;\r\n }\r\n\r\n _setUserInteraction() {\r\n this.#isUserInteraction = true;\r\n }\r\n\r\n _onValueChanged(oldValue: any, newValue: any): void {}\r\n\r\n _onInternalInit() {\r\n this._getHostElement().setAttribute('ax-form-input', 'true');\r\n super._onInternalInit();\r\n }\r\n\r\n _onInternalDestroy() {\r\n super.onDestroy();\r\n }\r\n\r\n clear() {\r\n this.value = null;\r\n }\r\n\r\n validate(): Promise<any> {\r\n const rules = Array.from(\r\n this._getHostElement().querySelectorAll('ax-validation-rule')\r\n ).filter(c => (c as any).__axContext__.enabled);\r\n //\r\n if (!rules || rules.length === 0) {\r\n this._setState('clear');\r\n return Promise.resolve({\r\n result: true,\r\n value: this.value,\r\n name: this.name,\r\n id: this.id,\r\n });\r\n }\r\n\r\n return new Promise<any>(resolve => {\r\n Promise.all(\r\n rules\r\n .filter(c => typeof (c as any)?.validate === 'function')\r\n .map(c => {\r\n return (c as any).validate(this.value);\r\n })\r\n ).then(d => {\r\n const error = d.find(c => c.result === false);\r\n if (error) {\r\n this._setState('error', error.message);\r\n resolve({\r\n result: false,\r\n value: this.value,\r\n message: error.message,\r\n name: this.name,\r\n id: this.id,\r\n });\r\n } else {\r\n this._setState('success');\r\n resolve({\r\n result: true,\r\n value: this.value,\r\n name: this.name,\r\n id: this.id,\r\n });\r\n }\r\n });\r\n });\r\n }\r\n\r\n /**\r\n * @ignore\r\n */\r\n constructor(...args: any[]) {\r\n super(...args);\r\n }\r\n\r\n\r\n _setState(state: AXComponentState, ...args) {\r\n const container = this._getHostElement().classList.contains(\r\n 'ax-editor-container'\r\n )\r\n ? this._getHostElement()\r\n : this._getHostElement().querySelector('.ax-editor-container');\r\n const formField = container?.closest('.ax-form-field');\r\n const label =\r\n formField?.querySelector('ax-label') ||\r\n formField?.querySelector('label');\r\n let target = container || this._getInnerElement();\r\n if (target?.querySelector('.ax-error-container')) {\r\n target = target.querySelector('.ax-error-container');\r\n }\r\n const parent = target?.parentElement;\r\n if (!target || !parent) return;\r\n\r\n switch (state) {\r\n case 'clear':\r\n this.#state = 'clear';\r\n if (parent.querySelector('span.ax-error-message')) {\r\n parent.removeChild(parent.querySelector('span.ax-error-message')!);\r\n }\r\n label?.classList.remove('ax-state-error');\r\n target.classList.remove('ax-state-error', 'ax-state-success');\r\n break;\r\n case 'success':\r\n this._setState('clear');\r\n target.classList.add('ax-state-success');\r\n this.#state = 'success';\r\n break;\r\n case 'error':\r\n this._setState('clear');\r\n if (args[0]) {\r\n const span = document.createElement('span');\r\n span.innerText = args[0];\r\n span.classList.add('ax-error-message');\r\n parent.appendChild(span);\r\n }\r\n label?.classList.add('ax-state-error');\r\n target.classList.add('ax-state-error');\r\n\r\n this.#state = 'error';\r\n break;\r\n }\r\n this._cdr.markForCheck();\r\n }\r\n };\r\n}\r\n\r\n","import { _BaseComponenetMixin, AXBaseComponent } from \"./base-components.class\";\r\nimport { _BaseMenuComponentMixin } from \"./base-menu-mixin.class\";\r\nimport { _ButtonComponentMixin } from \"./button-mixin.class\";\r\nimport { _ClickableComponenetMixin } from \"./clickable-mixin.class\";\r\nimport { _ColorLookComponentMixin } from \"./color-look-mixing.class\";\r\nimport { _DatalistComponenetMixin } from \"./datalist-component.class\";\r\nimport { _DropdownComponenetMixin } from \"./dropdown-mixin.class\";\r\nimport { _InteractiveComponenetMixin } from \"./interactive-mixin.class\";\r\nimport { _SelectionComponenetMixin } from \"./selection-component.class\";\r\nimport { _SizableComponenetMixin } from \"./sizable-mixin.class\";\r\nimport { _TextboxComponenetMixin } from \"./textbox-mixin.class\";\r\nimport { _ValueComponenetMixin } from \"./value-mixin.class\";\r\n\r\n\r\nexport const AXBaseComponentMixin = _BaseComponenetMixin(AXBaseComponent);\r\n\r\nexport const AXSizableComponentMixin = _SizableComponenetMixin(\r\n _BaseComponenetMixin(AXBaseComponent)\r\n);\r\n\r\nexport const AXInteractiveComponenetMixin = _SizableComponenetMixin(\r\n _InteractiveComponenetMixin(AXBaseComponent)\r\n);\r\n\r\nexport const AXBaseClickableMixin = _InteractiveComponenetMixin(\r\n _ClickableComponenetMixin(AXBaseComponent)\r\n);\r\n\r\nexport const AXBaseButtonMixin = _SizableComponenetMixin(\r\n _InteractiveComponenetMixin(\r\n _ClickableComponenetMixin(\r\n _ColorLookComponentMixin(_ButtonComponentMixin(AXBaseComponent))\r\n )\r\n )\r\n);\r\n\r\nexport const AXBaseValueComponentMixin = _InteractiveComponenetMixin(_ValueComponenetMixin<any>(AXBaseComponent))\r\n\r\n\r\nexport const AXBaseTextBoxMixin = _SizableComponenetMixin(\r\n _InteractiveComponenetMixin(\r\n _ValueComponenetMixin(_TextboxComponenetMixin(AXBaseComponent))\r\n )\r\n);\r\n\r\nexport const AXBaseSelectionValueMixin = _SizableComponenetMixin(\r\n _InteractiveComponenetMixin(\r\n _DatalistComponenetMixin(\r\n _SelectionComponenetMixin(_ValueComponenetMixin<any>(AXBaseComponent))\r\n )\r\n )\r\n);\r\n\r\nexport const AXBaseValueDropdownMixin = _InteractiveComponenetMixin(\r\n _DropdownComponenetMixin(\r\n _DatalistComponenetMixin(_ValueComponenetMixin<any>(AXBaseComponent))\r\n )\r\n);\r\n\r\nexport const AXBaseSelectionDropdownMixin = _DropdownComponenetMixin(\r\n AXBaseSelectionValueMixin\r\n);\r\n\r\nexport const AXBaseDropdownMixin = _SizableComponenetMixin(\r\n _InteractiveComponenetMixin(_DropdownComponenetMixin(AXBaseComponent))\r\n);\r\n\r\nexport const AXBaseMenuMixin = _BaseMenuComponentMixin(AXBaseComponent);\r\nexport const AXAvatarMixin = _ColorLookComponentMixin(AXBaseComponent);\r\n","import { AXBaseComponent } from \"./base-components.class\";\r\nimport { Constructor } from \"./constratctor\";\r\n\r\nexport function _PageComponenetMixin<TBase extends Constructor<AXBaseComponent>>(Base: TBase) {\r\n return class extends Base {\r\n\r\n\r\n /**\r\n * @ignore\r\n */\r\n constructor(...args: any[]) {\r\n super(...args.slice(0, 2))\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-mixin.mjs","sources":["../../../../projects/acorex/components/mixin/src/base-components.class.ts","../../../../projects/acorex/components/mixin/src/base-menu-mixin.class.ts","../../../../projects/acorex/components/mixin/src/button-mixin.class.ts","../../../../projects/acorex/components/mixin/src/clickable-mixin.class.ts","../../../../projects/acorex/components/mixin/src/color-look-mixing.class.ts","../../../../projects/acorex/components/mixin/src/datalist-component.class.ts","../../../../projects/acorex/components/mixin/src/datalist.class.ts","../../../../projects/acorex/components/mixin/src/dropdown-mixin.class.ts","../../../../projects/acorex/components/mixin/src/interactive-mixin.class.ts","../../../../projects/acorex/components/mixin/src/loading-mixin.class.ts","../../../../projects/acorex/components/mixin/src/selection-component.class.ts","../../../../projects/acorex/components/mixin/src/sizable-mixin.class.ts","../../../../projects/acorex/components/mixin/src/textbox-mixin.class.ts","../../../../projects/acorex/components/mixin/src/value-mixin.class.ts","../../../../projects/acorex/components/mixin/src/mixin.class.ts","../../../../projects/acorex/components/mixin/src/page-component.class.ts","../../../../projects/acorex/components/mixin/acorex-components-mixin.ts"],"sourcesContent":["import {\r\n ChangeDetectorRef,\r\n EventEmitter,\r\n Inject,\r\n Injectable,\r\n ElementRef\r\n} from '@angular/core';\r\nimport { Constructor } from './constratctor';\r\n\r\n/**\r\n * A token that specifies the size of component.\r\n */\r\nexport type AXElementSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';\r\n\r\nexport type AXComponentState ='clear' | 'success' | 'error';\r\n\r\nexport type AXComponentOptionChanging = { name: string; value?: any };\r\nexport type AXComponentOptionChanged = {\r\n name: string;\r\n newValue?: any;\r\n oldValue?: any;\r\n};\r\nexport type AXComponentSetOption = {\r\n name: string;\r\n value?: any;\r\n afterCallback?: (oldValue?: any, newValue?: any) => void;\r\n beforeCallback?: (oldValue?: any, newValue?: any) => void;\r\n};\r\n\r\n@Injectable()\r\nexport class AXBaseComponent {\r\n\r\n id: string = `AX${Math.round(Math.random() * Math.pow(10, 10))}`;\r\n\r\n /**\r\n * A token that specifies the layout direction of component.\r\n */\r\n //rtl: boolean;\r\n\r\n #rtl: boolean;\r\n\r\n\r\n get rtl(): boolean {\r\n if (this.#rtl)\r\n return this.#rtl;\r\n else\r\n return this._getHostElement().classList.contains('ax-rtl') ||\r\n window\r\n .getComputedStyle(this._getHostElement(), null)\r\n .getPropertyValue('direction') === 'rtl';\r\n }\r\n\r\n set rtl(value: boolean) {\r\n this.#rtl = value;\r\n }\r\n\r\n\r\n #elementRef: ElementRef;\r\n _cdr: ChangeDetectorRef;\r\n\r\n _isInited: boolean;\r\n _isRendered: boolean;\r\n\r\n /**\r\n * @ignore\r\n */\r\n constructor(@Inject(Array) ...args: any[]) {\r\n this.#elementRef = args[0];\r\n this._cdr = args[1];\r\n }\r\n\r\n ngOnInit() {\r\n this._isInited = true;\r\n this._onInternalInit();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this._isRendered = true;\r\n this._onInternalViewInit();\r\n }\r\n\r\n ngOnDestroy() {\r\n this._onInternalDestroy();\r\n }\r\n\r\n _getHostElement<T = HTMLElement>(): T {\r\n return this.#elementRef.nativeElement as T;\r\n }\r\n\r\n _getInnerElement<T = HTMLElement>(): T {\r\n return this._getHostElement().firstElementChild as unknown as T;\r\n }\r\n\r\n _onInternalInit() {\r\n (this._getHostElement() as any).__axContext__ = this;\r\n this._applyRtl();\r\n this.onInit();\r\n }\r\n\r\n _onInternalViewInit() {\r\n this.onViewInit();\r\n }\r\n\r\n _onInternalDestroy() {\r\n this.onDestroy();\r\n }\r\n\r\n onInit() { }\r\n\r\n\r\n onViewInit() { }\r\n\r\n onDestroy() { }\r\n\r\n _applyRtl() {\r\n if (this.rtl) {\r\n this._getHostElement().classList.add('ax-rtl');\r\n }\r\n }\r\n\r\n _onOptionChanging(option: AXComponentOptionChanging) {\r\n return option?.value;\r\n }\r\n _onOptionChanged(option: AXComponentOptionChanged): void { }\r\n\r\n _setOption(option: AXComponentSetOption) {\r\n const oldValue = this[option.name];\r\n const newValue = this._onOptionChanging({\r\n name: option.name,\r\n value: option.value,\r\n });\r\n //TODO : check real changes\r\n if (option.beforeCallback) option.beforeCallback(oldValue, newValue);\r\n if (oldValue != newValue) {\r\n this[`_${option.name}`] = option.value;\r\n this._onOptionChanged({ name: option.name, newValue, oldValue });\r\n const emitter = this[`${option.name}Change`] as EventEmitter<any>;\r\n if (emitter) emitter.emit(newValue);\r\n }\r\n if (option.afterCallback) option.afterCallback(oldValue, newValue);\r\n }\r\n}\r\n\r\nexport function _BaseComponenetMixin<\r\n TBase extends Constructor<AXBaseComponent>\r\n>(Base: TBase) {\r\n return class extends Base {\r\n constructor(...args: any[]) {\r\n super(...args);\r\n }\r\n };\r\n}\r\n\r\nexport const BASE_INPUTS = ['rtl'];\r\nexport const BASE_OUTPUT = [];\r\n","import { AXItemClickEvent } from '@acorex/components/common';\r\nimport { EventEmitter } from '@angular/core';\r\nimport _ from 'lodash';\r\nimport { AXBaseComponent } from './base-components.class';\r\nimport { Constructor } from './constratctor';\r\n\r\nexport function _BaseMenuComponentMixin<TBase extends Constructor<AXBaseComponent>>(Base: TBase) {\r\n return class extends Base {\r\n textField: string = 'text';\r\n\r\n valueField: string = 'id';\r\n\r\n #isLoading: boolean = false;\r\n\r\n #loadedItems: any = [];\r\n\r\n visibleField: string;\r\n\r\n disableField: string = 'disabled';\r\n\r\n hasChildField: string;\r\n\r\n iconField: string = 'icon';\r\n\r\n openMode: 'click' | 'hover' = 'click';\r\n\r\n displayMode: 'horizontal' | 'vertical' | 'sidemenu' = 'sidemenu';\r\n\r\n dividerField: string = 'divider';\r\n\r\n onMenuItemClick: EventEmitter<AXItemClickEvent<any>> = new EventEmitter<AXItemClickEvent<any>>();\r\n\r\n constructor(...args: any[]) {\r\n super(...args);\r\n }\r\n\r\n #items: any = [];\r\n get items(): any {\r\n return this.#items;\r\n }\r\n set items(v: any) {\r\n if (Array.isArray(v)) {\r\n this.#items = v;\r\n } else if (typeof v === 'function') {\r\n this.#items = v;\r\n } else {\r\n this.#items = [];\r\n }\r\n }\r\n\r\n get displayItems() {\r\n if (Array.isArray(this.items)) {\r\n return this.#items || [];\r\n } else if (typeof this.#items == 'function') {\r\n return this.#loadedItems || [];\r\n }\r\n return [];\r\n }\r\n\r\n get isLoading() {\r\n return this.#isLoading;\r\n }\r\n\r\n _formatData(v: any[]) {\r\n return _.unionBy(\r\n v.map((o, i) => {\r\n if (typeof o == 'object') return o;\r\n else {\r\n const no: any = {};\r\n no[this.valueField] = o;\r\n no[Array.isArray(this.textField) ? this.textField[0] : this.textField] = o;\r\n return no;\r\n }\r\n }),\r\n this.valueField\r\n );\r\n }\r\n\r\n _findNode(parentId: number, _children: any, source: any) {\r\n if (source.length > 0) {\r\n source.forEach(element => {\r\n if (element[this.valueField] == parentId) {\r\n element.children = _children;\r\n } else {\r\n if (element?.children) this._findNode(parentId, _children, element.children);\r\n }\r\n });\r\n }\r\n }\r\n\r\n _fetchData(parentId?: number, searchText?: string) {\r\n return new Promise(resolve => {\r\n if (this.#isLoading) {\r\n return;\r\n }\r\n if (this.#items) {\r\n this.#isLoading = true;\r\n this.#items({\r\n parentId: parentId,\r\n searchQuery: searchText,\r\n })\r\n .then(c => {\r\n if (Array.isArray(c)) {\r\n if (parentId) {\r\n resolve(this._findNode(parentId, c, this.displayItems));\r\n } else {\r\n resolve((this.#loadedItems = c));\r\n }\r\n }\r\n this._cdr.markForCheck();\r\n })\r\n .finally(() => {\r\n this.#isLoading = false;\r\n });\r\n }\r\n });\r\n }\r\n\r\n _onInternalInit() {\r\n if (typeof this.#items == 'function') {\r\n this._fetchData();\r\n }\r\n super._onInternalInit();\r\n }\r\n\r\n _getItemDisplayTextTemplte(item) {\r\n if (item) return Array.isArray(this.textField) ? this.textField.map(c => item[c]).join(',') : item[this.textField];\r\n else return 'Loading...';\r\n }\r\n\r\n public refresh() {\r\n this._fetchData();\r\n }\r\n };\r\n}\r\n\r\nexport const BASEMENU_INPUTS = [\r\n 'textField',\r\n 'valueField',\r\n 'items',\r\n 'parentId',\r\n 'iconField',\r\n 'tooltip',\r\n 'opened',\r\n 'active',\r\n 'visibleField',\r\n 'disableField',\r\n 'hasChildField',\r\n 'openMode',\r\n 'displayMode',\r\n 'dividerField',\r\n];\r\nexport const BASEMENU_OUTPUT = ['onMenuItemClick'];\r\n","import { EventEmitter } from '@angular/core';\r\nimport { AXBaseComponent } from './base-components.class';\r\nimport { Constructor } from './constratctor';\r\n\r\nexport function _ButtonComponentMixin<TBase extends Constructor<AXBaseComponent>>(Base: TBase) {\r\n return class extends Base {\r\n \r\n\r\n _text: string;\r\n /**\r\n * Defines the primary text to show inside the button.\r\n */\r\n get text(): string {\r\n return this._text;\r\n }\r\n set text(v: string) {\r\n this._setOption({\r\n name: 'text',\r\n value: v,\r\n afterCallback: () => {\r\n this._cdr.markForCheck();\r\n }\r\n })\r\n }\r\n\r\n\r\n\r\n toggleableChange: EventEmitter<boolean> = new EventEmitter();\r\n _toggleable?: boolean = false;\r\n /**\r\n * Provides visual styling that indicates if the Button is active\r\n */\r\n get toggleable(): boolean {\r\n return this._toggleable!;\r\n }\r\n set toggleable(value: boolean) {\r\n this._setOption({\r\n name: 'toggleable',\r\n value\r\n });\r\n }\r\n\r\n\r\n selectedChange: EventEmitter<boolean> = new EventEmitter();\r\n _selected?: boolean = false;\r\n /**\r\n * Indicates if the Button is selected or not\r\n */\r\n get selected(): boolean {\r\n return this._selected!;\r\n }\r\n set selected(value: boolean) {\r\n this._setOption({\r\n name: 'selected',\r\n value,\r\n afterCallback: () => {\r\n this._cdr.markForCheck();\r\n }\r\n });\r\n }\r\n\r\n constructor(...args: any[]) {\r\n super(...args);\r\n }\r\n\r\n\r\n get _classes() {\r\n const cssClasses = {\r\n 'ax-button-icon': !this.text,\r\n 'ax-state-disabled': this[\"disabled\"],\r\n 'ax-state-selected': this.selected\r\n };\r\n cssClasses[`ax-${this['color'] || 'default'}${this['look'] ? '-' + this['look'] : '-default'}`] = true;\r\n return cssClasses;\r\n }\r\n };\r\n}\r\n\r\nexport const BUTTON_INPUTS = [\r\n 'text',\r\n 'toggleable',\r\n 'selected',\r\n];\r\nexport const BUTTON_OUTPUT = ['onBlur', 'onFocus', 'onClick', 'selectedChange', 'toggleableChange'];\r\n","import { EventEmitter } from \"@angular/core\";\r\nimport { AXBaseComponent } from \"./base-components.class\";\r\nimport { Constructor } from \"./constratctor\";\r\nimport { AXClickEvent } from \"@acorex/components/common\";\r\n\r\n\r\nexport function _ClickableComponenetMixin<TBase extends Constructor<AXBaseComponent>>(Base: TBase){\r\n return class extends Base {\r\n\r\n /**\r\n * Fires each time the user clicks the button.\r\n * @event\r\n */\r\n onClick: EventEmitter<AXClickEvent> = new EventEmitter<AXClickEvent>();\r\n\r\n _emitOnClickEvent(e: MouseEvent): void {\r\n this.onClick.emit({\r\n component: this,\r\n htmlElement: this._getHostElement(),\r\n nativeEvent: e\r\n });\r\n }\r\n\r\n /**\r\n * @ignore\r\n */\r\n constructor(...args: any[]) {\r\n super(...args);\r\n }\r\n }\r\n}\r\n\r\n","import { EventEmitter } from \"@angular/core\";\r\nimport { AXStyleColorType, AXStyleLookType } from \"@acorex/components/common\";\r\nimport { AXBaseComponent } from \"./base-components.class\";\r\nimport { Constructor } from \"./constratctor\";\r\n\r\nexport function _ColorLookComponentMixin<TBase extends Constructor<AXBaseComponent>>(Base: TBase) {\r\n return class extends Base {\r\n\r\n constructor(...args: any[]) {\r\n super(...args);\r\n }\r\n\r\n colorChange: EventEmitter<AXStyleColorType> = new EventEmitter();\r\n _color: AXStyleColorType = 'primary';\r\n /**\r\n * Predefined color schemes\r\n */\r\n get color(): AXStyleColorType {\r\n return this._color;\r\n }\r\n set color(value: AXStyleColorType) {\r\n this._setOption({\r\n name: 'color',\r\n value,\r\n afterCallback: () => {\r\n this._cdr.markForCheck();\r\n }\r\n });\r\n }\r\n\r\n lookChange: EventEmitter<AXStyleLookType> = new EventEmitter();\r\n _look?: AXStyleLookType = 'default';\r\n /**\r\n * Predefined look schemes\r\n */\r\n get look(): AXStyleLookType {\r\n return this._look!;\r\n }\r\n set look(value: AXStyleLookType) {\r\n this._setOption({\r\n name: 'look',\r\n value,\r\n afterCallback: () => {\r\n this._cdr.markForCheck();\r\n }\r\n });\r\n }\r\n }\r\n}\r\n\r\n\r\nexport const COLOR_LOOK_INPUTS = [\r\n 'color',\r\n 'look',\r\n];\r\nexport const COLOR_LOOK_OUTPUT = ['lookChange', 'colorChange'];","import { unionBy, flatMapDeep } from 'lodash-es';\r\nimport { AXBaseComponent } from './base-components.class';\r\nimport { Constructor } from './constratctor';\r\nimport { AXDataListFetchDataCallback, AXDataListItems } from './datalist.class';\r\n\r\nexport function _DatalistComponenetMixin<\r\n TBase extends Constructor<AXBaseComponent>\r\n>(Base: TBase) {\r\n return class extends Base {\r\n valueField: string = 'id';\r\n textField: string = 'text';\r\n childrenField: string;\r\n pageSize: number = 10;\r\n\r\n #currentPage: number = 0;\r\n #isLoading: boolean = false;\r\n #loadedItems: any[] = [];\r\n #flatItems: any[] = [];\r\n #totalItems: number = 0;\r\n\r\n #isLazy: boolean = false;\r\n\r\n get totalCount(): number {\r\n return this.#totalItems;\r\n }\r\n\r\n get isLazy(): boolean {\r\n return this.#isLazy;\r\n }\r\n\r\n get loadedCount(): number {\r\n return this.#loadedItems?.length || 0;\r\n }\r\n\r\n constructor(...args: any[]) {\r\n super(...args);\r\n }\r\n\r\n #items: AXDataListItems = [];\r\n get items(): AXDataListItems {\r\n return this.#items;\r\n }\r\n set items(v: AXDataListItems) {\r\n if (Array.isArray(v)) {\r\n this.#items = this._formatData(v);\r\n this._onDataLoaded();\r\n this.#generateFlatItems();\r\n } else if (typeof v === 'function') {\r\n this.#isLazy = true;\r\n this.#items = v;\r\n } else {\r\n this.#items = [];\r\n this._onDataLoaded();\r\n this.#generateFlatItems();\r\n }\r\n }\r\n\r\n get displayItems(): any[] {\r\n if (Array.isArray(this.items)) {\r\n return (this.#items || []) as any[];\r\n } else if (typeof this.#items == 'function') {\r\n return this.#loadedItems || [];\r\n }\r\n return [];\r\n }\r\n\r\n get flatItems(): any[] {\r\n return this.#flatItems || [];\r\n }\r\n\r\n get isLoading(): boolean {\r\n return this.#isLoading;\r\n }\r\n\r\n _formatData(v: any[]) {\r\n return unionBy(\r\n v.map((o, i) => {\r\n if (typeof o == 'object') return o;\r\n else {\r\n const no: any = {};\r\n no[this.valueField] = o;\r\n no[\r\n Array.isArray(this.textField) ? this.textField[0] : this.textField\r\n ] = o;\r\n return no;\r\n }\r\n }),\r\n this.valueField\r\n );\r\n // return v.map((o, i) => {\r\n // if (typeof o == 'object')\r\n // return o\r\n // else {\r\n // const no: any = {};\r\n // no[this.valueField] = o;\r\n // no[Array.isArray(this.textField) ? this.textField[0] : this.textField] = o;\r\n // return no;\r\n // }\r\n // });\r\n }\r\n\r\n _fetchData(opts?: { searchQuery?: string }) {\r\n const skip = this.#currentPage * this.pageSize, take = this.pageSize;\r\n if (\r\n (this.loadedCount >= this.totalCount && this.totalCount != 0) ||\r\n this.#isLoading ||\r\n !this.#isLazy ||\r\n skip > this.totalCount\r\n ) {\r\n return;\r\n }\r\n if (this.#items) {\r\n this.#isLoading = true;\r\n const fetchFn = this.#items as AXDataListFetchDataCallback;\r\n fetchFn({ skip, take, searchQuery: opts?.searchQuery })\r\n .then((c) => {\r\n if (Array.isArray(c)) {\r\n this.#loadedItems = this._formatData(c);\r\n this.#totalItems = c.length;\r\n } else {\r\n this.#totalItems = c.total || c.items?.length || 0;\r\n this.#loadedItems = [\r\n ...new Set(this.#loadedItems.concat(this._formatData(c.items))),\r\n ];\r\n this.#currentPage++;\r\n }\r\n this._cdr.markForCheck();\r\n })\r\n .finally(() => {\r\n this.#isLoading = false;\r\n this._onDataLoaded();\r\n this.#generateFlatItems();\r\n });\r\n }\r\n }\r\n\r\n _onDataLoaded() { }\r\n\r\n #generateFlatItems(): void {\r\n const flattenFn = (item) => {\r\n return [item, flatMapDeep(item.children, flattenFn)];\r\n };\r\n this.#flatItems = flatMapDeep(this.displayItems, flattenFn);\r\n }\r\n\r\n _getItemDisplayTextTemplte(item) {\r\n if (item)\r\n return Array.isArray(this.textField)\r\n ? this.textField.map((c) => item[c]).join(',')\r\n : item[this.textField];\r\n else return 'Loading...';\r\n }\r\n\r\n _trackByFunction(item) {\r\n if (!item) return null;\r\n return item[this.valueField];\r\n }\r\n\r\n refresh() {\r\n this.empty();\r\n this._fetchData();\r\n }\r\n\r\n empty() {\r\n this.#isLoading = false;\r\n this.#currentPage = 0;\r\n if (this.#loadedItems) {\r\n this.#loadedItems.length = 0;\r\n }\r\n }\r\n };\r\n}\r\n\r\nexport const DATALIST_INPUTS = ['pageSize', 'valueField', 'textField', 'items'];\r\nexport const DATALIST_OUTPUT = [];\r\n","\r\nexport interface AXDataListQuery {\r\n take?: number;\r\n skip?: number;\r\n searchQuery?: string;\r\n}\r\nexport interface AXDataListFetchCallbackResult {\r\n items: any[];\r\n total: number;\r\n};\r\n\r\nexport type AXDataListFetchDataCallback = (e: AXDataListQuery) => Promise<any[] | AXDataListFetchCallbackResult>;\r\n\r\nexport type AXDataListItems = any[] | AXDataListFetchDataCallback;","import { EventEmitter } from \"@angular/core\";\r\nimport { AXBaseComponent } from \"./base-components.class\";\r\nimport { Constructor } from \"./constratctor\";\r\nimport { AXEvent,AXConnectedPosition } from \"@acorex/components/common\";\r\n\r\n\r\n\r\nexport interface DropdownComponentInterface {\r\n open(): void;\r\n close(): void;\r\n toggle(): void;\r\n isOpen: boolean;\r\n}\r\n\r\n\r\nexport function _DropdownComponenetMixin<TBase extends Constructor<AXBaseComponent>>(Base: TBase) {\r\n\r\n abstract class Mixin extends Base {\r\n\r\n readonly: boolean = false;\r\n\r\n\r\n onOpened: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\r\n onClosed: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\r\n\r\n //TODO: Circular dependency on AXPopverComponent\r\n abstract popover: any;\r\n\r\n position: AXConnectedPosition[] = [];\r\n\r\n _emitOnOpenedEvent() {\r\n\r\n this.onOpened.emit({\r\n component: this,\r\n htmlElement: this._getHostElement()\r\n });\r\n }\r\n\r\n _emitOnClosedEvent() {\r\n this.onClosed.emit({\r\n component: this,\r\n htmlElement: this._getHostElement()\r\n });\r\n }\r\n\r\n\r\n onInit(): void {\r\n super.onInit();\r\n this.popover.onOpened.subscribe(this.onOpened);\r\n this.popover.onClosed.subscribe(this.onClosed);\r\n }\r\n\r\n onViewInit() {\r\n // wait for documentElement\r\n setTimeout(() => {\r\n if (this.position.length == 0) {\r\n const offset = Number(getComputedStyle(document.documentElement).getPropertyValue('--ax-base-size').replace('px', ''));\r\n const list: AXConnectedPosition[] = [\r\n {\r\n originX: 'start',\r\n originY: 'bottom',\r\n overlayX: 'start',\r\n overlayY: 'top',\r\n offsetY: offset\r\n },\r\n {\r\n originX: 'start',\r\n originY: 'top',\r\n overlayX: 'start',\r\n overlayY: 'bottom',\r\n offsetY: -offset\r\n },\r\n {\r\n originX: 'end',\r\n originY: 'bottom',\r\n overlayX: 'end',\r\n overlayY: 'top',\r\n offsetY: offset\r\n },\r\n {\r\n originX: 'end',\r\n originY: 'top',\r\n overlayX: 'end',\r\n overlayY: 'bottom',\r\n offsetY: -offset\r\n },\r\n ];\r\n this.position.push(...list);\r\n }\r\n }, 500);\r\n }\r\n\r\n toggle() {\r\n if (this['disabled'] !== true) {\r\n this.popover.toggle();\r\n }\r\n }\r\n\r\n close() {\r\n if (!this.isOpen || this['disabled']) {\r\n return;\r\n }\r\n this.popover.close();\r\n (this as any)?.focus();\r\n }\r\n\r\n open() {\r\n if (this.isOpen || this['disabled']) {\r\n return;\r\n }\r\n this.popover.open();\r\n this.popover.focus();\r\n }\r\n\r\n get isOpen(): boolean {\r\n return this.popover?.isOpen;\r\n }\r\n\r\n constructor(...args: any[]) {\r\n super(...args);\r\n }\r\n\r\n }\r\n\r\n return Mixin;\r\n}\r\n\r\n\r\nexport const DROPDOWN_INPUTS = [\r\n 'isOpen',\r\n 'fitParent',\r\n 'dropdownWidth',\r\n 'position'\r\n];\r\nexport const DROPDOWN_OUTPUT = ['onOpened', 'onClosed'];","import { coerceBooleanProperty, coerceNumberProperty } from \"@angular/cdk/coercion\";\r\nimport { EventEmitter } from \"@angular/core\";\r\nimport { AXBaseComponent } from \"./base-components.class\";\r\nimport { Constructor } from \"./constratctor\";\r\nimport { AXFocusEvent } from \"@acorex/components/common\";\r\n\r\n\r\nexport function _InteractiveComponenetMixin<TBase extends Constructor<AXBaseComponent>>(Base: TBase) {\r\n abstract class Mixin extends Base {\r\n\r\n #disabled: boolean = false;\r\n /**\r\n * If set to true, it disables the component.\r\n */\r\n get disabled(): boolean { return this.#disabled; }\r\n set disabled(value: boolean) {\r\n value = this._onOptionChanging({ name: 'disabled', value: value });\r\n if (value != this.disabled) {\r\n const oldValue = this.disabled;\r\n this.#disabled = coerceBooleanProperty(value);\r\n this._onOptionChanged({ name: 'disabled', oldValue, newValue: value });\r\n this._cdr.markForCheck();\r\n }\r\n }\r\n\r\n\r\n\r\n #tabIndex: number = 0;\r\n /**\r\n * Specifies the tabindex of the component.\r\n */\r\n get tabIndex(): number { return this.disabled ? -1 : this.#tabIndex; }\r\n set tabIndex(value: number) {\r\n this.#tabIndex = value != null ? coerceNumberProperty(value) : 0;\r\n }\r\n\r\n /**\r\n * Fires each time the component gets focused.\r\n * @event\r\n */\r\n onFocus: EventEmitter<AXFocusEvent> = new EventEmitter<AXFocusEvent>();\r\n\r\n _emitOnFocusEvent(e: FocusEvent): void {\r\n this.onFocus.emit({\r\n component: this,\r\n htmlElement: this._getHostElement(),\r\n nativeEvent: e\r\n });\r\n }\r\n\r\n /**\r\n * Fires each time the component gets blurred.\r\n * @event\r\n */\r\n onBlur: EventEmitter<AXFocusEvent> = new EventEmitter<AXFocusEvent>();\r\n\r\n _emitOnBlurEvent(e: FocusEvent): void {\r\n this.onBlur.emit({\r\n component: this,\r\n htmlElement: this._getHostElement(),\r\n nativeEvent: e\r\n });\r\n }\r\n\r\n /**\r\n * Focuses the component.\r\n */\r\n focus(): void {\r\n const list = ['button', 'input', '[href]', 'select', 'textarea', '[tabindex]'].map(c => c + ':not([tabindex=\"-1\"])');\r\n const focusable = this._getHostElement().querySelector<HTMLElement>(list.join(', '));\r\n if (focusable) {\r\n focusable.focus();\r\n }\r\n }\r\n\r\n /**\r\n * Check component is focused or has any focused element.\r\n */\r\n hasFocus(): boolean {\r\n return this._getHostElement().matches(':focus-within') || this._getHostElement().matches(':focus');\r\n }\r\n\r\n /**\r\n * @ignore\r\n */\r\n constructor(...args: any[]) {\r\n super(...args);\r\n }\r\n }\r\n return Mixin;\r\n}\r\n\r\nexport const INTERACTIVE_INPUTS = [\r\n 'disabled',\r\n 'tabIndex',\r\n];\r\nexport const INTERACTIVE_OUTPUT = ['onBlur', 'onFocus'];","import { AXBaseComponent } from './base-components.class';\r\nimport { Constructor } from './constratctor';\r\n\r\nexport function _LoadingComponenetMixin<TBase extends Constructor<AXBaseComponent>>(Base: TBase) {\r\n return class extends Base {\r\n /**\r\n * Defines a CSS class—or multiple classes separated by spaces— which are applied to a span element inside the Button. Allows the usage of custom icons.\r\n */\r\n loading: boolean = false;\r\n /**\r\n * Defines a CSS class—or multiple classes separated by spaces— which are applied to a span element inside the Button. Allows the usage of custom icons.\r\n */\r\n loadingIconClass: string;\r\n /**\r\n * Defines a CSS class—or multiple classes separated by spaces— which are applied to a span element inside the Button. Allows the usage of custom icons.\r\n */\r\n loadingText: string;\r\n\r\n\r\n constructor(...args: any[]) {\r\n super(...args.slice(0, 2))\r\n }\r\n\r\n _onInternalInit() {\r\n // if (!this.size) {\r\n // this.size = AXConfig.get('layout.size', 'sm');\r\n // }\r\n super._onInternalInit();\r\n }\r\n }\r\n}","import { AXObjectUtil } from '@acorex/core/utils';\r\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\r\nimport { EventEmitter } from '@angular/core';\r\nimport { AXSelectionValueChangedEvent } from '@acorex/components/common';\r\nimport { AXBaseComponent } from './base-components.class';\r\nimport { Constructor } from './constratctor';\r\n\r\nexport function _SelectionComponenetMixin<TBase extends Constructor<AXBaseComponent>>(Base: TBase) {\r\n return class extends Base {\r\n\r\n valueField: string = 'id';\r\n textField: string = 'text';\r\n disabledField: string = 'disabled';\r\n disabledCallback: (e: { item: any, index: number }) => boolean;\r\n multiple: boolean = false;\r\n selectionMode: 'value' | 'item' = 'value';\r\n\r\n /**\r\n * Defines the primary text to show inside the button.\r\n */\r\n get items(): any[] {\r\n return [];\r\n }\r\n\r\n get displayItems(): any[] {\r\n return [];\r\n }\r\n\r\n get flatItems(): any[] {\r\n return [];\r\n }\r\n\r\n\r\n public valueChange: EventEmitter<any> = new EventEmitter<any>();\r\n public onValueChanged: EventEmitter<AXSelectionValueChangedEvent> = new EventEmitter<AXSelectionValueChangedEvent>();\r\n\r\n\r\n constructor(...args: any[]) {\r\n super(...args)\r\n }\r\n\r\n _onInternalInit() {\r\n super._onInternalInit();\r\n }\r\n\r\n _value: any | any[];\r\n get value(): any | any[] {\r\n return this._value;\r\n }\r\n set value(v: any | any[]) {\r\n v = (this as any)._internalSetValue(v);\r\n if (v !== this._value) {\r\n const oldValue = AXObjectUtil.deepJSONClone(this._value);\r\n if (this.multiple) {\r\n this._value = Array.isArray(v) ? v : (v ? [v] : []);\r\n } else {\r\n this._value = Array.isArray(v) ? v[0] : v;\r\n }\r\n this._renderSelection();\r\n this.valueChange.emit(this._value);\r\n this.onValueChanged.emit({\r\n component: this,\r\n htmlElement: this._getHostElement(),\r\n isUserInteraction: false,\r\n oldValue,\r\n value: this._value,\r\n selectedKeys: this.selectedItems.map(c => c[this.valueField]),\r\n selectedItems: this.selectedItems.slice()\r\n });\r\n if (v == null || v == undefined || v == \"\") {\r\n (this as any)._setState('clear');\r\n }\r\n else {\r\n if (this._isInited) {\r\n (this as any).validate();\r\n }\r\n }\r\n }\r\n }\r\n\r\n _selectedItems: any[];\r\n get selectedItems(): any[] {\r\n return this._selectedItems || [];\r\n }\r\n\r\n _renderSelection() {\r\n const func = () => {\r\n if (this.value == null || this.value == undefined) {\r\n return [];\r\n }\r\n const items = this.flatItems;\r\n if (items.length > 0) {\r\n return items.filter(i => {\r\n if (Array.isArray(this.value)) {\r\n return this.value.some(ii => {\r\n if (typeof ii === 'object') {\r\n return i[this.valueField] === ii[this.valueField];\r\n }\r\n else {\r\n return i[this.valueField] === ii;\r\n }\r\n });\r\n }\r\n else {\r\n if (typeof this.value === 'object') {\r\n return i[this.valueField] === this.value[this.valueField];\r\n }\r\n else {\r\n return i[this.valueField] === this.value;\r\n }\r\n }\r\n });\r\n }\r\n if (Array.isArray(this.value)) {\r\n return this.value.map(ii => {\r\n if (typeof ii === 'object') {\r\n return ii;\r\n }\r\n else {\r\n const fake: any = {};\r\n fake[this.valueField] = this.value;\r\n fake[this.textField] = this.value;\r\n return fake;\r\n }\r\n });\r\n }\r\n else {\r\n if (typeof this.value === 'object') {\r\n return [this.value];\r\n }\r\n else {\r\n const fake: any = {};\r\n fake[this.valueField] = this.value;\r\n fake[this.textField] = this.value;\r\n return [fake];\r\n }\r\n }\r\n };\r\n this._selectedItems = func();\r\n }\r\n\r\n _getItemByDataMode(item: any) {\r\n return this.selectionMode === 'item' ? item : item[this.valueField];\r\n }\r\n\r\n _getItemValue(item: any) {\r\n return typeof item === 'object' ? item[this.valueField] : item;\r\n }\r\n\r\n unselectItems(...items: any[]) {\r\n if (!items || items.length === 0) {\r\n this.value = null;\r\n }\r\n else if (Array.isArray(this.value)) {\r\n this.value = this.value.filter(c => !items.some(d =>\r\n this._getItemValue(c) === this._getItemValue(d))\r\n );\r\n }\r\n else {\r\n this.value = null;\r\n }\r\n }\r\n\r\n selectItems(...items: any[]) {\r\n debugger\r\n if (items && items.length) {\r\n if (this.multiple) {\r\n this.value = (this.value || []).concat(items.map(c => this._getItemByDataMode(c)));\r\n }\r\n else {\r\n this.value = this._getItemByDataMode(items[0]);\r\n }\r\n }\r\n }\r\n\r\n toggleSelect(...items: any[]) {\r\n if (items && items.length) {\r\n items.forEach(item => {\r\n if (this.multiple) {\r\n this.isItemSelected(item) ? this.unselectItems(item) : this.selectItems(item);\r\n }\r\n else {\r\n this.selectItems(item)\r\n }\r\n });\r\n }\r\n }\r\n\r\n isItemSelected(item: any): boolean {\r\n return this.selectedItems.some(c => c[this.valueField] === item[this.valueField]);\r\n }\r\n\r\n isItemDisabled(item: any): boolean {\r\n return coerceBooleanProperty(item[this.disabledField]) === true || (this.disabledCallback ? this.disabledCallback({ item, index: -1 }) : false);\r\n }\r\n }\r\n}\r\n\r\n\r\nexport const SELECTION_INPUTS = [\r\n 'valueField',\r\n 'textField',\r\n 'disabledField',\r\n 'disabledCallback',\r\n 'multiple',\r\n 'selectionMode'\r\n];\r\nexport const SELECTION_OUTPUT = ['onValueChanged', 'valueChanged'];","import { AXBaseComponent, AXElementSize } from './base-components.class';\r\nimport { Constructor } from './constratctor';\r\n\r\nexport function _SizableComponenetMixin<TBase extends Constructor<AXBaseComponent>>(Base: TBase) {\r\n return class extends Base {\r\n\r\n /**\r\n * A token that specifies the size of component.\r\n */\r\n size: AXElementSize;\r\n\r\n /**\r\n * @ignore\r\n */\r\n constructor(...args: any[]) {\r\n super(...args.slice(0, 2))\r\n }\r\n\r\n _onInternalInit() {\r\n super._onInternalInit();\r\n }\r\n }\r\n}\r\n\r\n\r\nexport const SIZABLE_INPUTS = [\r\n 'size',\r\n];\r\nexport const SIZABLE_OUTPUT = [];","import { EventEmitter } from '@angular/core';\r\nimport { AXHtmlEvent } from '@acorex/components/common';\r\nimport { AXBaseComponent } from './base-components.class';\r\nimport { Constructor } from './constratctor';\r\n\r\nexport function _TextboxComponenetMixin<TBase extends Constructor<AXBaseComponent>>(Base: TBase) {\r\n return class extends Base {\r\n\r\n /**\r\n * A string value that specifies the type of text box.\r\n */\r\n type = 'text'\r\n\r\n /**\r\n * A string value that specifies the placeholder of text box.\r\n */\r\n placeholder: string = '';\r\n\r\n /**\r\n * A number value that specifies the maximum characters of text box.\r\n */\r\n maxLength: number;\r\n\r\n /**\r\n * Specifies that autocomplete is on or off.\r\n */\r\n autoComplete: string;\r\n\r\n /**\r\n * Fires each time the user press a key.\r\n * @event\r\n */\r\n onKeyDown: EventEmitter<AXHtmlEvent<KeyboardEvent>> = new EventEmitter<AXHtmlEvent<KeyboardEvent>>();\r\n\r\n /**\r\n * Fires each time the user press a key.\r\n * @event\r\n */\r\n onKeyUp: EventEmitter<AXHtmlEvent<KeyboardEvent>> = new EventEmitter<AXHtmlEvent<KeyboardEvent>>();\r\n\r\n /**\r\n * Fires each time the user press a key.\r\n * @event\r\n */\r\n onKeyPress: EventEmitter<AXHtmlEvent<KeyboardEvent>> = new EventEmitter<AXHtmlEvent<KeyboardEvent>>();\r\n\r\n\r\n _emitOnKeydownEvent(e: KeyboardEvent) {\r\n this.onKeyDown.emit({\r\n component: this,\r\n nativeEvent: e\r\n });\r\n (this as any)._setUserInteraction();\r\n }\r\n\r\n _emitOnKeyupEvent(e: KeyboardEvent) {\r\n this.onKeyUp.emit({\r\n component: this,\r\n nativeEvent: e\r\n });\r\n (this as any)._setUserInteraction();\r\n }\r\n \r\n _emitOnKeypressEvent(e: KeyboardEvent) {\r\n this.onKeyPress.emit({\r\n component: this,\r\n nativeEvent: e\r\n });\r\n (this as any)._setUserInteraction();\r\n }\r\n\r\n /**\r\n * @ignore\r\n */\r\n constructor(...args: any[]) {\r\n super(...args.slice(0, 2))\r\n }\r\n }\r\n}\r\n\r\nexport const TEXTBOX_INPUTS = ['placeholder', 'maxLength', 'allowNull', 'type', 'autoComplete', 'readonly','value','name']\r\nexport const TEXTBOX_OUTPUT = ['valueChange', 'onValueChanged']","import { coerceBooleanProperty } from '@angular/cdk/coercion';\r\nimport { EventEmitter } from '@angular/core';\r\nimport { AXBaseComponent, AXComponentState } from './base-components.class';\r\nimport { Constructor } from './constratctor';\r\nimport { AXValueChangedEvent } from '@acorex/components/common';\r\nimport { AXObjectUtil } from '@acorex/core/utils';\r\n\r\nexport function _ValueComponenetMixin<\r\n TBase extends Constructor<AXBaseComponent>\r\n>(Base: TBase) {\r\n return class extends Base {\r\n /**\r\n * Fires each time the user press a key.\r\n * @event\r\n */\r\n onValueChanged: EventEmitter<AXValueChangedEvent<any>> = new EventEmitter<\r\n AXValueChangedEvent<any>\r\n >();\r\n\r\n valueChange: EventEmitter<any> = new EventEmitter<any>();\r\n stateChange: EventEmitter<AXComponentState> = new EventEmitter<AXComponentState>();\r\n\r\n #readonly: boolean = false;\r\n\r\n /**\r\n * If set to true, user cannot change the value of component.\r\n */\r\n get readonly() {\r\n return this.#readonly;\r\n }\r\n set readonly(value: boolean) {\r\n this.#readonly = coerceBooleanProperty(value);\r\n }\r\n\r\n #allowNull: boolean = true;\r\n get allowNull() {\r\n return this.#allowNull;\r\n }\r\n set allowNull(value: boolean) {\r\n this.#allowNull = coerceBooleanProperty(value);\r\n }\r\n\r\n #name: string;\r\n get name() {\r\n return this.#name;\r\n }\r\n set name(value: string) {\r\n this.#name = value;\r\n }\r\n\r\n #isUserInteraction: boolean = false;\r\n\r\n get isUserInteraction(): boolean {\r\n return this.#isUserInteraction;\r\n }\r\n\r\n #value: any;\r\n get value(): any {\r\n return this._internalGetValue();\r\n }\r\n set value(v: any) {\r\n v = this._internalSetValue(v);\r\n //if (!this._isInited ) {\r\n const old = AXObjectUtil.deepJSONClone(this.value);\r\n // TODO: check real equality\r\n if (v != old) {\r\n this.#value = v;\r\n this._emitOnValueChangedEvent(old, this.value);\r\n this._cdr.markForCheck();\r\n if (\r\n v == null ||\r\n v == undefined ||\r\n v == '' ||\r\n (Array.isArray(v) && v.length == 0)\r\n ) {\r\n this._setState('clear');\r\n }\r\n // else {\r\n // if (this._isInited) {\r\n // this.validate();\r\n // }\r\n // }\r\n }\r\n this.#isUserInteraction = false;\r\n //}\r\n }\r\n\r\n #state: AXComponentState = 'clear';\r\n\r\n get state():AXComponentState {\r\n return this.#state;\r\n }\r\n\r\n set state(value:AXComponentState) {\r\n this._setState(value)\r\n this.stateChange.emit(value);\r\n }\r\n\r\n _emitOnValueChangedEvent(oldValue?: any, newValue?: any) {\r\n this.valueChange.emit(newValue);\r\n this.onValueChanged.emit({\r\n component: this,\r\n value: newValue,\r\n oldValue: oldValue,\r\n name: this.name,\r\n isUserInteraction: this.isUserInteraction,\r\n });\r\n this._onValueChanged(oldValue, this.#value);\r\n this.#isUserInteraction = false;\r\n }\r\n\r\n _internalSetValue(value: any) {\r\n return this._setValue(value);\r\n }\r\n\r\n _internalGetValue() {\r\n return this._getValue(this.#value);\r\n }\r\n\r\n _setValue(value: any) {\r\n return value;\r\n }\r\n\r\n _getValue(value: any) {\r\n return value;\r\n }\r\n\r\n _setUserInteraction() {\r\n this.#isUserInteraction = true;\r\n }\r\n\r\n _onValueChanged(oldValue: any, newValue: any): void {}\r\n\r\n _onInternalInit() {\r\n this._getHostElement().setAttribute('ax-form-input', 'true');\r\n super._onInternalInit();\r\n }\r\n\r\n _onInternalDestroy() {\r\n super.onDestroy();\r\n }\r\n\r\n clear() {\r\n this.value = null;\r\n }\r\n\r\n validate(): Promise<any> {\r\n const rules = Array.from(\r\n this._getHostElement().querySelectorAll('ax-validation-rule')\r\n ).filter(c => (c as any).__axContext__.enabled);\r\n //\r\n if (!rules || rules.length === 0) {\r\n this._setState('clear');\r\n return Promise.resolve({\r\n result: true,\r\n value: this.value,\r\n name: this.name,\r\n id: this.id,\r\n });\r\n }\r\n\r\n return new Promise<any>(resolve => {\r\n Promise.all(\r\n rules\r\n .filter(c => typeof (c as any)?.validate === 'function')\r\n .map(c => {\r\n return (c as any).validate(this.value);\r\n })\r\n ).then(d => {\r\n const error = d.find(c => c.result === false);\r\n if (error) {\r\n this._setState('error', error.message);\r\n resolve({\r\n result: false,\r\n value: this.value,\r\n message: error.message,\r\n name: this.name,\r\n id: this.id,\r\n });\r\n } else {\r\n this._setState('success');\r\n resolve({\r\n result: true,\r\n value: this.value,\r\n name: this.name,\r\n id: this.id,\r\n });\r\n }\r\n });\r\n });\r\n }\r\n\r\n /**\r\n * @ignore\r\n */\r\n constructor(...args: any[]) {\r\n super(...args);\r\n }\r\n\r\n\r\n _setState(state: AXComponentState, ...args) {\r\n const container = this._getHostElement().classList.contains(\r\n 'ax-editor-container'\r\n )\r\n ? this._getHostElement()\r\n : this._getHostElement().querySelector('.ax-editor-container');\r\n const formField = container?.closest('.ax-form-field');\r\n const label =\r\n formField?.querySelector('ax-label') ||\r\n formField?.querySelector('label');\r\n let target = container || this._getInnerElement();\r\n if (target?.querySelector('.ax-error-container')) {\r\n target = target.querySelector('.ax-error-container');\r\n }\r\n const parent = target?.parentElement;\r\n if (!target || !parent) return;\r\n\r\n switch (state) {\r\n case 'clear':\r\n this.#state = 'clear';\r\n if (parent.querySelector('span.ax-error-message')) {\r\n parent.removeChild(parent.querySelector('span.ax-error-message')!);\r\n }\r\n label?.classList.remove('ax-state-error');\r\n target.classList.remove('ax-state-error', 'ax-state-success');\r\n break;\r\n case 'success':\r\n this._setState('clear');\r\n target.classList.add('ax-state-success');\r\n this.#state = 'success';\r\n break;\r\n case 'error':\r\n this._setState('clear');\r\n if (args[0]) {\r\n const span = document.createElement('span');\r\n span.innerText = args[0];\r\n span.classList.add('ax-error-message');\r\n parent.appendChild(span);\r\n }\r\n label?.classList.add('ax-state-error');\r\n target.classList.add('ax-state-error');\r\n\r\n this.#state = 'error';\r\n break;\r\n }\r\n this._cdr.markForCheck();\r\n }\r\n };\r\n}\r\n\r\n","import { _BaseComponenetMixin, AXBaseComponent } from \"./base-components.class\";\r\nimport { _BaseMenuComponentMixin } from \"./base-menu-mixin.class\";\r\nimport { _ButtonComponentMixin } from \"./button-mixin.class\";\r\nimport { _ClickableComponenetMixin } from \"./clickable-mixin.class\";\r\nimport { _ColorLookComponentMixin } from \"./color-look-mixing.class\";\r\nimport { _DatalistComponenetMixin } from \"./datalist-component.class\";\r\nimport { _DropdownComponenetMixin } from \"./dropdown-mixin.class\";\r\nimport { _InteractiveComponenetMixin } from \"./interactive-mixin.class\";\r\nimport { _SelectionComponenetMixin } from \"./selection-component.class\";\r\nimport { _SizableComponenetMixin } from \"./sizable-mixin.class\";\r\nimport { _TextboxComponenetMixin } from \"./textbox-mixin.class\";\r\nimport { _ValueComponenetMixin } from \"./value-mixin.class\";\r\n\r\n\r\nexport const AXBaseComponentMixin = _BaseComponenetMixin(AXBaseComponent);\r\n\r\nexport const AXSizableComponentMixin = _SizableComponenetMixin(\r\n _BaseComponenetMixin(AXBaseComponent)\r\n);\r\n\r\nexport const AXInteractiveComponenetMixin = _SizableComponenetMixin(\r\n _InteractiveComponenetMixin(AXBaseComponent)\r\n);\r\n\r\nexport const AXBaseClickableMixin = _InteractiveComponenetMixin(\r\n _ClickableComponenetMixin(AXBaseComponent)\r\n);\r\n\r\nexport const AXBaseButtonMixin = _SizableComponenetMixin(\r\n _InteractiveComponenetMixin(\r\n _ClickableComponenetMixin(\r\n _ColorLookComponentMixin(_ButtonComponentMixin(AXBaseComponent))\r\n )\r\n )\r\n);\r\n\r\nexport const AXBaseValueComponentMixin = _InteractiveComponenetMixin(_ValueComponenetMixin<any>(AXBaseComponent))\r\n\r\n\r\nexport const AXBaseTextBoxMixin = _SizableComponenetMixin(\r\n _InteractiveComponenetMixin(\r\n _ValueComponenetMixin(_TextboxComponenetMixin(AXBaseComponent))\r\n )\r\n);\r\n\r\nexport const AXBaseSelectionValueMixin = _SizableComponenetMixin(\r\n _InteractiveComponenetMixin(\r\n _DatalistComponenetMixin(\r\n _SelectionComponenetMixin(_ValueComponenetMixin<any>(AXBaseComponent))\r\n )\r\n )\r\n);\r\n\r\nexport const AXBaseValueDropdownMixin = _InteractiveComponenetMixin(\r\n _DropdownComponenetMixin(\r\n _DatalistComponenetMixin(_ValueComponenetMixin<any>(AXBaseComponent))\r\n )\r\n);\r\n\r\nexport const AXBaseSelectionDropdownMixin = _DropdownComponenetMixin(\r\n AXBaseSelectionValueMixin\r\n);\r\n\r\nexport const AXBaseDropdownMixin = _SizableComponenetMixin(\r\n _InteractiveComponenetMixin(_DropdownComponenetMixin(AXBaseComponent))\r\n);\r\n\r\nexport const AXBaseMenuMixin = _BaseMenuComponentMixin(AXBaseComponent);\r\nexport const AXAvatarMixin = _ColorLookComponentMixin(AXBaseComponent);\r\n","import { AXBaseComponent } from \"./base-components.class\";\r\nimport { Constructor } from \"./constratctor\";\r\n\r\nexport function _PageComponenetMixin<TBase extends Constructor<AXBaseComponent>>(Base: TBase) {\r\n return class extends Base {\r\n\r\n\r\n /**\r\n * @ignore\r\n */\r\n constructor(...args: any[]) {\r\n super(...args.slice(0, 2))\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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"}
|
@@ -46,7 +46,7 @@ class AXSelectionListComponent extends AXBaseSelectionValueMixin {
|
|
46
46
|
}
|
47
47
|
}
|
48
48
|
AXSelectionListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: AXSelectionListComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
49
|
-
AXSelectionListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.4", type: AXSelectionListComponent, selector: "ax-selection-list", inputs: { disabled: "disabled", readonly: "readonly", tabIndex: "tabIndex", size: "size", value: "value", valueField: "valueField", textField: "textField", multiple: "multiple", items: "items", selectionMode: "selectionMode", direction: "direction" }, outputs: { valueChange: "valueChange", onValueChanged: "onValueChanged", onBlur: "onBlur", onFocus: "onFocus" }, usesInheritance: true, ngImport: i0, template: "<div class=\"ax-selection-list ax-{{ direction }}\">\r\n <ng-container\r\n *ngIf=\"multiple; then checkboxList; else radioButtonList\"></ng-container>\r\n <ng-template #checkboxList>\r\n <ng-container *ngFor=\"let item of displayItems; let i = index\">\r\n <div\r\n class=\"ax-item-container\"\r\n [class.ax-state-selected]=\"isItemSelected(item)\">\r\n <div class=\"ax-item-input\">\r\n <input\r\n #ic\r\n [id]=\"id + '-' + i\"\r\n class=\"ax-checkbox\"\r\n type=\"checkbox\"\r\n (change)=\"_handleOnItemValueChange(item, $event)\"\r\n [checked]=\"isItemSelected(item)\"\r\n [disabled]=\"disabled || item.disabled\"\r\n [readonly]=\"readonly || item.readonly\" />\r\n </div>\r\n <div class=\"ax-item-text\">\r\n <label [for]=\"id + '-' + i\"> {{ item[textField] }}</label>\r\n <p class=\"ax-hint-text\">\r\n {{ item.hint ? item.hint : item[hintField] }}\r\n </p>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </ng-template>\r\n <ng-template #radioButtonList>\r\n <ng-container *ngFor=\"let item of displayItems; let i = index\">\r\n <div\r\n class=\"ax-item-container\"\r\n [class.ax-state-selected]=\"isItemSelected(item)\">\r\n <div class=\"ax-item-input\">\r\n <input\r\n #ir\r\n [id]=\"id + '-' + i\"\r\n class=\"ax-radio\"\r\n type=\"radio\"\r\n [attr.name]=\"id\"\r\n (change)=\"_handleOnItemValueChange(item, $event)\"\r\n [checked]=\"isItemSelected(item)\"\r\n [disabled]=\"disabled || item.disabled\"\r\n [readonly]=\"readonly || item.readonly\" />\r\n </div>\r\n <div class=\"ax-item-text\">\r\n <label [for]=\"id + '-' + i\"> {{ item[textField] }}</label>\r\n <p class=\"ax-hint-text\">\r\n {{ item.hint ? item.hint : item[hintField] }}\r\n </p>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </ng-template>\r\n <ng-content select=\"ax-validation-rule\"> </ng-content>\r\n</div>\r\n", styles: [".ax-dark .ax-card-style .ax-selection-list.ax-vertical>div,.ax-dark .ax-card-style .ax-selection-list.ax-horizontal>div{background-color:rgba(var(--ax-color-surface))}.ax-selection-list{display:flex;flex-wrap:wrap}.ax-selection-list .ax-item-container{display:flex;align-items:flex-start}.ax-selection-list .ax-item-container .ax-item-input{display:flex;align-items:center;height:1.25rem}.ax-selection-list .ax-item-container .ax-item-text{font-size:.875rem;margin-inline-start:.75rem}.ax-selection-list.ax-vertical{flex-direction:column}.ax-selection-list.ax-vertical .ax-item-container:not(.ax-selection-list.ax-vertical .ax-item-container:last-child){margin-bottom:1rem}.ax-selection-list.ax-horizontal{flex-direction:row}.ax-selection-list.ax-horizontal .ax-item-container{padding-inline-end:.75rem}.ax-selection-list.ax-state-error{color:rgba(var(--ax-color-danger-500))}.ax-selection-list.ax-state-error .ax-checkbox-checkmark,.ax-selection-list.ax-state-error .ax-radio-checkmark{border-color:rgba(var(--ax-color-danger-500))}.ax-separate-style .ax-selection-list.ax-vertical>div{padding-bottom:.875rem;border-bottom:1px solid;border-color:rgba(var(--ax-color-border-default))}.ax-separate-style .ax-selection-list.ax-vertical>div:last-child{border:0}.ax-card-style .ax-selection-list.ax-vertical>div,.ax-card-style .ax-selection-list.ax-horizontal>div{padding:1rem;border:1px solid;border-color:rgba(var(--ax-color-border-default));border-radius:var(--ax-rounded-border-default)}.ax-card-style .ax-selection-list.ax-vertical>div.ax-state-selected,.ax-card-style .ax-selection-list.ax-horizontal>div.ax-state-selected{border-color:rgba(var(--ax-color-primary-500))}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
49
|
+
AXSelectionListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.4", type: AXSelectionListComponent, selector: "ax-selection-list", inputs: { disabled: "disabled", readonly: "readonly", tabIndex: "tabIndex", size: "size", value: "value", valueField: "valueField", textField: "textField", multiple: "multiple", items: "items", selectionMode: "selectionMode", direction: "direction" }, outputs: { valueChange: "valueChange", onValueChanged: "onValueChanged", onBlur: "onBlur", onFocus: "onFocus" }, usesInheritance: true, ngImport: i0, template: "<div class=\"ax-selection-list ax-{{ direction }}\">\r\n <ng-container\r\n *ngIf=\"multiple; then checkboxList; else radioButtonList\"></ng-container>\r\n <ng-template #checkboxList>\r\n <ng-container *ngFor=\"let item of displayItems; let i = index\">\r\n <div\r\n class=\"ax-item-container\"\r\n [class.ax-state-selected]=\"isItemSelected(item)\">\r\n <div class=\"ax-item-input\">\r\n <input\r\n #ic\r\n [id]=\"id + '-' + i\"\r\n class=\"ax-checkbox\"\r\n type=\"checkbox\"\r\n (change)=\"_handleOnItemValueChange(item, $event)\"\r\n [checked]=\"isItemSelected(item)\"\r\n [disabled]=\"disabled || item.disabled\"\r\n [readonly]=\"readonly || item.readonly\" />\r\n </div>\r\n <div class=\"ax-item-text\">\r\n <label [for]=\"id + '-' + i\"> {{ item[textField] }}</label>\r\n <p class=\"ax-hint-text\">\r\n {{ item.hint ? item.hint : item[hintField] }}\r\n </p>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </ng-template>\r\n <ng-template #radioButtonList>\r\n <ng-container *ngFor=\"let item of displayItems; let i = index\">\r\n <div\r\n class=\"ax-item-container\"\r\n [class.ax-state-selected]=\"isItemSelected(item)\">\r\n <div class=\"ax-item-input\">\r\n <input\r\n #ir\r\n [id]=\"id + '-' + i\"\r\n class=\"ax-radio\"\r\n type=\"radio\"\r\n [attr.name]=\"id\"\r\n (change)=\"_handleOnItemValueChange(item, $event)\"\r\n [checked]=\"isItemSelected(item)\"\r\n [disabled]=\"disabled || item.disabled\"\r\n [readonly]=\"readonly || item.readonly\" />\r\n </div>\r\n <div class=\"ax-item-text\">\r\n <label [for]=\"id + '-' + i\"> {{ item[textField] }}</label>\r\n <p class=\"ax-hint-text\">\r\n {{ item.hint ? item.hint : item[hintField] }}\r\n </p>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </ng-template>\r\n <ng-content select=\"ax-validation-rule\"> </ng-content>\r\n</div>\r\n", styles: [".ax-dark .ax-card-style .ax-selection-list.ax-vertical>div,.ax-dark .ax-card-style .ax-selection-list.ax-horizontal>div{background-color:rgba(var(--ax-color-surface))}.ax-selection-list{display:flex;flex-wrap:wrap}.ax-selection-list .ax-item-container{display:flex;align-items:flex-start}.ax-selection-list .ax-item-container .ax-item-input{display:flex;align-items:center;height:1.25rem}.ax-selection-list .ax-item-container .ax-item-text{font-size:.875rem;margin-inline-start:.75rem}.ax-selection-list.ax-vertical{flex-direction:column}.ax-selection-list.ax-vertical .ax-item-container:not(.ax-selection-list.ax-vertical .ax-item-container:last-child){margin-bottom:1rem}.ax-selection-list.ax-horizontal{flex-direction:row;gap:.75rem}.ax-selection-list.ax-horizontal .ax-item-container{padding-inline-end:.75rem}.ax-selection-list.ax-state-error{color:rgba(var(--ax-color-danger-500))}.ax-selection-list.ax-state-error .ax-checkbox-checkmark,.ax-selection-list.ax-state-error .ax-radio-checkmark{border-color:rgba(var(--ax-color-danger-500))}.ax-separate-style .ax-selection-list.ax-vertical>div{padding-bottom:.875rem;border-bottom:1px solid;border-color:rgba(var(--ax-color-border-default))}.ax-separate-style .ax-selection-list.ax-vertical>div:last-child{border:0}.ax-card-style .ax-selection-list.ax-vertical>div,.ax-card-style .ax-selection-list.ax-horizontal>div{padding:1rem;border:1px solid;border-color:rgba(var(--ax-color-border-default));border-radius:var(--ax-rounded-border-default)}.ax-card-style .ax-selection-list.ax-vertical>div.ax-state-selected,.ax-card-style .ax-selection-list.ax-horizontal>div.ax-state-selected{border-color:rgba(var(--ax-color-primary-500))}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
50
50
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: AXSelectionListComponent, decorators: [{
|
51
51
|
type: Component,
|
52
52
|
args: [{ selector: 'ax-selection-list', inputs: [
|
@@ -60,7 +60,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
|
|
60
60
|
'multiple',
|
61
61
|
'items',
|
62
62
|
'selectionMode',
|
63
|
-
], outputs: ['valueChange', 'onValueChanged', 'onBlur', 'onFocus'], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"ax-selection-list ax-{{ direction }}\">\r\n <ng-container\r\n *ngIf=\"multiple; then checkboxList; else radioButtonList\"></ng-container>\r\n <ng-template #checkboxList>\r\n <ng-container *ngFor=\"let item of displayItems; let i = index\">\r\n <div\r\n class=\"ax-item-container\"\r\n [class.ax-state-selected]=\"isItemSelected(item)\">\r\n <div class=\"ax-item-input\">\r\n <input\r\n #ic\r\n [id]=\"id + '-' + i\"\r\n class=\"ax-checkbox\"\r\n type=\"checkbox\"\r\n (change)=\"_handleOnItemValueChange(item, $event)\"\r\n [checked]=\"isItemSelected(item)\"\r\n [disabled]=\"disabled || item.disabled\"\r\n [readonly]=\"readonly || item.readonly\" />\r\n </div>\r\n <div class=\"ax-item-text\">\r\n <label [for]=\"id + '-' + i\"> {{ item[textField] }}</label>\r\n <p class=\"ax-hint-text\">\r\n {{ item.hint ? item.hint : item[hintField] }}\r\n </p>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </ng-template>\r\n <ng-template #radioButtonList>\r\n <ng-container *ngFor=\"let item of displayItems; let i = index\">\r\n <div\r\n class=\"ax-item-container\"\r\n [class.ax-state-selected]=\"isItemSelected(item)\">\r\n <div class=\"ax-item-input\">\r\n <input\r\n #ir\r\n [id]=\"id + '-' + i\"\r\n class=\"ax-radio\"\r\n type=\"radio\"\r\n [attr.name]=\"id\"\r\n (change)=\"_handleOnItemValueChange(item, $event)\"\r\n [checked]=\"isItemSelected(item)\"\r\n [disabled]=\"disabled || item.disabled\"\r\n [readonly]=\"readonly || item.readonly\" />\r\n </div>\r\n <div class=\"ax-item-text\">\r\n <label [for]=\"id + '-' + i\"> {{ item[textField] }}</label>\r\n <p class=\"ax-hint-text\">\r\n {{ item.hint ? item.hint : item[hintField] }}\r\n </p>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </ng-template>\r\n <ng-content select=\"ax-validation-rule\"> </ng-content>\r\n</div>\r\n", styles: [".ax-dark .ax-card-style .ax-selection-list.ax-vertical>div,.ax-dark .ax-card-style .ax-selection-list.ax-horizontal>div{background-color:rgba(var(--ax-color-surface))}.ax-selection-list{display:flex;flex-wrap:wrap}.ax-selection-list .ax-item-container{display:flex;align-items:flex-start}.ax-selection-list .ax-item-container .ax-item-input{display:flex;align-items:center;height:1.25rem}.ax-selection-list .ax-item-container .ax-item-text{font-size:.875rem;margin-inline-start:.75rem}.ax-selection-list.ax-vertical{flex-direction:column}.ax-selection-list.ax-vertical .ax-item-container:not(.ax-selection-list.ax-vertical .ax-item-container:last-child){margin-bottom:1rem}.ax-selection-list.ax-horizontal{flex-direction:row}.ax-selection-list.ax-horizontal .ax-item-container{padding-inline-end:.75rem}.ax-selection-list.ax-state-error{color:rgba(var(--ax-color-danger-500))}.ax-selection-list.ax-state-error .ax-checkbox-checkmark,.ax-selection-list.ax-state-error .ax-radio-checkmark{border-color:rgba(var(--ax-color-danger-500))}.ax-separate-style .ax-selection-list.ax-vertical>div{padding-bottom:.875rem;border-bottom:1px solid;border-color:rgba(var(--ax-color-border-default))}.ax-separate-style .ax-selection-list.ax-vertical>div:last-child{border:0}.ax-card-style .ax-selection-list.ax-vertical>div,.ax-card-style .ax-selection-list.ax-horizontal>div{padding:1rem;border:1px solid;border-color:rgba(var(--ax-color-border-default));border-radius:var(--ax-rounded-border-default)}.ax-card-style .ax-selection-list.ax-vertical>div.ax-state-selected,.ax-card-style .ax-selection-list.ax-horizontal>div.ax-state-selected{border-color:rgba(var(--ax-color-primary-500))}\n"] }]
|
63
|
+
], outputs: ['valueChange', 'onValueChanged', 'onBlur', 'onFocus'], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"ax-selection-list ax-{{ direction }}\">\r\n <ng-container\r\n *ngIf=\"multiple; then checkboxList; else radioButtonList\"></ng-container>\r\n <ng-template #checkboxList>\r\n <ng-container *ngFor=\"let item of displayItems; let i = index\">\r\n <div\r\n class=\"ax-item-container\"\r\n [class.ax-state-selected]=\"isItemSelected(item)\">\r\n <div class=\"ax-item-input\">\r\n <input\r\n #ic\r\n [id]=\"id + '-' + i\"\r\n class=\"ax-checkbox\"\r\n type=\"checkbox\"\r\n (change)=\"_handleOnItemValueChange(item, $event)\"\r\n [checked]=\"isItemSelected(item)\"\r\n [disabled]=\"disabled || item.disabled\"\r\n [readonly]=\"readonly || item.readonly\" />\r\n </div>\r\n <div class=\"ax-item-text\">\r\n <label [for]=\"id + '-' + i\"> {{ item[textField] }}</label>\r\n <p class=\"ax-hint-text\">\r\n {{ item.hint ? item.hint : item[hintField] }}\r\n </p>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </ng-template>\r\n <ng-template #radioButtonList>\r\n <ng-container *ngFor=\"let item of displayItems; let i = index\">\r\n <div\r\n class=\"ax-item-container\"\r\n [class.ax-state-selected]=\"isItemSelected(item)\">\r\n <div class=\"ax-item-input\">\r\n <input\r\n #ir\r\n [id]=\"id + '-' + i\"\r\n class=\"ax-radio\"\r\n type=\"radio\"\r\n [attr.name]=\"id\"\r\n (change)=\"_handleOnItemValueChange(item, $event)\"\r\n [checked]=\"isItemSelected(item)\"\r\n [disabled]=\"disabled || item.disabled\"\r\n [readonly]=\"readonly || item.readonly\" />\r\n </div>\r\n <div class=\"ax-item-text\">\r\n <label [for]=\"id + '-' + i\"> {{ item[textField] }}</label>\r\n <p class=\"ax-hint-text\">\r\n {{ item.hint ? item.hint : item[hintField] }}\r\n </p>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </ng-template>\r\n <ng-content select=\"ax-validation-rule\"> </ng-content>\r\n</div>\r\n", styles: [".ax-dark .ax-card-style .ax-selection-list.ax-vertical>div,.ax-dark .ax-card-style .ax-selection-list.ax-horizontal>div{background-color:rgba(var(--ax-color-surface))}.ax-selection-list{display:flex;flex-wrap:wrap}.ax-selection-list .ax-item-container{display:flex;align-items:flex-start}.ax-selection-list .ax-item-container .ax-item-input{display:flex;align-items:center;height:1.25rem}.ax-selection-list .ax-item-container .ax-item-text{font-size:.875rem;margin-inline-start:.75rem}.ax-selection-list.ax-vertical{flex-direction:column}.ax-selection-list.ax-vertical .ax-item-container:not(.ax-selection-list.ax-vertical .ax-item-container:last-child){margin-bottom:1rem}.ax-selection-list.ax-horizontal{flex-direction:row;gap:.75rem}.ax-selection-list.ax-horizontal .ax-item-container{padding-inline-end:.75rem}.ax-selection-list.ax-state-error{color:rgba(var(--ax-color-danger-500))}.ax-selection-list.ax-state-error .ax-checkbox-checkmark,.ax-selection-list.ax-state-error .ax-radio-checkmark{border-color:rgba(var(--ax-color-danger-500))}.ax-separate-style .ax-selection-list.ax-vertical>div{padding-bottom:.875rem;border-bottom:1px solid;border-color:rgba(var(--ax-color-border-default))}.ax-separate-style .ax-selection-list.ax-vertical>div:last-child{border:0}.ax-card-style .ax-selection-list.ax-vertical>div,.ax-card-style .ax-selection-list.ax-horizontal>div{padding:1rem;border:1px solid;border-color:rgba(var(--ax-color-border-default));border-radius:var(--ax-rounded-border-default)}.ax-card-style .ax-selection-list.ax-vertical>div.ax-state-selected,.ax-card-style .ax-selection-list.ax-horizontal>div.ax-state-selected{border-color:rgba(var(--ax-color-primary-500))}\n"] }]
|
64
64
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { direction: [{
|
65
65
|
type: Input
|
66
66
|
}] } });
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"acorex-components-selection-list.mjs","sources":["../../../../projects/acorex/components/selection-list/src/selection-list.component.ts","../../../../projects/acorex/components/selection-list/src/selection-list.component.html","../../../../projects/acorex/components/selection-list/src/selection-list.module.ts","../../../../projects/acorex/components/selection-list/acorex-components-selection-list.ts"],"sourcesContent":["import { AXDirection } from '@acorex/components/common';\r\nimport { AXBaseSelectionValueMixin } from '@acorex/components/mixin';\r\nimport {\r\n Component,\r\n ChangeDetectionStrategy,\r\n ViewEncapsulation,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n Input,\r\n} from '@angular/core';\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-selection-list',\r\n templateUrl: './selection-list.component.html',\r\n styleUrls: ['./selection-list.component.scss'],\r\n inputs: [\r\n 'disabled',\r\n 'readonly',\r\n 'tabIndex',\r\n 'size',\r\n 'value',\r\n 'valueField',\r\n 'textField',\r\n 'multiple',\r\n 'items',\r\n 'selectionMode',\r\n ],\r\n outputs: ['valueChange', 'onValueChanged', 'onBlur', 'onFocus'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\n\r\n//TODO: on parent click (card style) -> checkbox or radio change value\r\nexport class AXSelectionListComponent extends AXBaseSelectionValueMixin {\r\n /**\r\n * @ignore\r\n */\r\n constructor(elementRef: ElementRef, cdr: ChangeDetectorRef) {\r\n super(elementRef, cdr);\r\n }\r\n\r\n /**\r\n * Defines the direction.\r\n */\r\n @Input()\r\n direction: AXDirection = 'horizontal';\r\n\r\n _handleOnItemValueChange(item: any, e: Event) {\r\n if (this.readonly || this.disabled) {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n } else {\r\n (e.target as any).checked\r\n ? this.selectItems(item)\r\n : this.unselectItems(item);\r\n }\r\n }\r\n\r\n _handleContainerClick(item: HTMLInputElement, e: MouseEvent) {\r\n if (e.target == item) return;\r\n item.click();\r\n e.stopImmediatePropagation();\r\n e.stopPropagation();\r\n }\r\n\r\n // _handleOnClickEvent(e: MouseEvent) {\r\n //\r\n // if (this.readonly || this.disabled) {\r\n // e.preventDefault();\r\n // e.stopPropagation();\r\n // }\r\n // }\r\n}\r\n","<div class=\"ax-selection-list ax-{{ direction }}\">\r\n <ng-container\r\n *ngIf=\"multiple; then checkboxList; else radioButtonList\"></ng-container>\r\n <ng-template #checkboxList>\r\n <ng-container *ngFor=\"let item of displayItems; let i = index\">\r\n <div\r\n class=\"ax-item-container\"\r\n [class.ax-state-selected]=\"isItemSelected(item)\">\r\n <div class=\"ax-item-input\">\r\n <input\r\n #ic\r\n [id]=\"id + '-' + i\"\r\n class=\"ax-checkbox\"\r\n type=\"checkbox\"\r\n (change)=\"_handleOnItemValueChange(item, $event)\"\r\n [checked]=\"isItemSelected(item)\"\r\n [disabled]=\"disabled || item.disabled\"\r\n [readonly]=\"readonly || item.readonly\" />\r\n </div>\r\n <div class=\"ax-item-text\">\r\n <label [for]=\"id + '-' + i\"> {{ item[textField] }}</label>\r\n <p class=\"ax-hint-text\">\r\n {{ item.hint ? item.hint : item[hintField] }}\r\n </p>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </ng-template>\r\n <ng-template #radioButtonList>\r\n <ng-container *ngFor=\"let item of displayItems; let i = index\">\r\n <div\r\n class=\"ax-item-container\"\r\n [class.ax-state-selected]=\"isItemSelected(item)\">\r\n <div class=\"ax-item-input\">\r\n <input\r\n #ir\r\n [id]=\"id + '-' + i\"\r\n class=\"ax-radio\"\r\n type=\"radio\"\r\n [attr.name]=\"id\"\r\n (change)=\"_handleOnItemValueChange(item, $event)\"\r\n [checked]=\"isItemSelected(item)\"\r\n [disabled]=\"disabled || item.disabled\"\r\n [readonly]=\"readonly || item.readonly\" />\r\n </div>\r\n <div class=\"ax-item-text\">\r\n <label [for]=\"id + '-' + i\"> {{ item[textField] }}</label>\r\n <p class=\"ax-hint-text\">\r\n {{ item.hint ? item.hint : item[hintField] }}\r\n </p>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </ng-template>\r\n <ng-content select=\"ax-validation-rule\"> </ng-content>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AXSelectionListComponent } from './selection-list.component';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\nimport { AXCheckBoxModule } from '@acorex/components/checkbox';\r\nimport { AXRadioModule } from '@acorex/components/radio';\r\nimport { AXLabelModule } from '@acorex/components/label';\r\nimport { AXFormModule } from '@acorex/components/form';\r\n\r\n@NgModule({\r\n declarations: [AXSelectionListComponent],\r\n imports: [CommonModule, FormsModule, AXCheckBoxModule,AXRadioModule,AXLabelModule,AXFormModule],\r\n exports: [AXSelectionListComponent],\r\n providers: []\r\n})\r\nexport class AXSelectionListModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;;;;AAWA;;;;AAIG;AAsBH;AACM,MAAO,wBAAyB,SAAQ,yBAAyB,CAAA;AACrE;;AAEG;IACH,WAAY,CAAA,UAAsB,EAAE,GAAsB,EAAA;AACxD,QAAA,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;AAGzB;;AAEG;QAEH,IAAS,CAAA,SAAA,GAAgB,YAAY,CAAC;KANrC;IAQD,wBAAwB,CAAC,IAAS,EAAE,CAAQ,EAAA;AAC1C,QAAA,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE;YAClC,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,CAAC,CAAC,eAAe,EAAE,CAAC;AACrB,SAAA;AAAM,aAAA;YACJ,CAAC,CAAC,MAAc,CAAC,OAAO;AACvB,kBAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;AACxB,kBAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;AAC9B,SAAA;KACF;IAED,qBAAqB,CAAC,IAAsB,EAAE,CAAa,EAAA;AACzD,QAAA,IAAI,CAAC,CAAC,MAAM,IAAI,IAAI;YAAE,OAAO;QAC7B,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,CAAC,CAAC,wBAAwB,EAAE,CAAC;QAC7B,CAAC,CAAC,eAAe,EAAE,CAAC;KACrB;;qHA9BU,wBAAwB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAxB,wBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,wBAAwB,6bCtCrC,ypEAwDA,EAAA,MAAA,EAAA,CAAA,
|
1
|
+
{"version":3,"file":"acorex-components-selection-list.mjs","sources":["../../../../projects/acorex/components/selection-list/src/selection-list.component.ts","../../../../projects/acorex/components/selection-list/src/selection-list.component.html","../../../../projects/acorex/components/selection-list/src/selection-list.module.ts","../../../../projects/acorex/components/selection-list/acorex-components-selection-list.ts"],"sourcesContent":["import { AXDirection } from '@acorex/components/common';\r\nimport { AXBaseSelectionValueMixin } from '@acorex/components/mixin';\r\nimport {\r\n Component,\r\n ChangeDetectionStrategy,\r\n ViewEncapsulation,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n Input,\r\n} from '@angular/core';\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-selection-list',\r\n templateUrl: './selection-list.component.html',\r\n styleUrls: ['./selection-list.component.scss'],\r\n inputs: [\r\n 'disabled',\r\n 'readonly',\r\n 'tabIndex',\r\n 'size',\r\n 'value',\r\n 'valueField',\r\n 'textField',\r\n 'multiple',\r\n 'items',\r\n 'selectionMode',\r\n ],\r\n outputs: ['valueChange', 'onValueChanged', 'onBlur', 'onFocus'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\n\r\n//TODO: on parent click (card style) -> checkbox or radio change value\r\nexport class AXSelectionListComponent extends AXBaseSelectionValueMixin {\r\n /**\r\n * @ignore\r\n */\r\n constructor(elementRef: ElementRef, cdr: ChangeDetectorRef) {\r\n super(elementRef, cdr);\r\n }\r\n\r\n /**\r\n * Defines the direction.\r\n */\r\n @Input()\r\n direction: AXDirection = 'horizontal';\r\n\r\n _handleOnItemValueChange(item: any, e: Event) {\r\n if (this.readonly || this.disabled) {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n } else {\r\n (e.target as any).checked\r\n ? this.selectItems(item)\r\n : this.unselectItems(item);\r\n }\r\n }\r\n\r\n _handleContainerClick(item: HTMLInputElement, e: MouseEvent) {\r\n if (e.target == item) return;\r\n item.click();\r\n e.stopImmediatePropagation();\r\n e.stopPropagation();\r\n }\r\n\r\n // _handleOnClickEvent(e: MouseEvent) {\r\n //\r\n // if (this.readonly || this.disabled) {\r\n // e.preventDefault();\r\n // e.stopPropagation();\r\n // }\r\n // }\r\n}\r\n","<div class=\"ax-selection-list ax-{{ direction }}\">\r\n <ng-container\r\n *ngIf=\"multiple; then checkboxList; else radioButtonList\"></ng-container>\r\n <ng-template #checkboxList>\r\n <ng-container *ngFor=\"let item of displayItems; let i = index\">\r\n <div\r\n class=\"ax-item-container\"\r\n [class.ax-state-selected]=\"isItemSelected(item)\">\r\n <div class=\"ax-item-input\">\r\n <input\r\n #ic\r\n [id]=\"id + '-' + i\"\r\n class=\"ax-checkbox\"\r\n type=\"checkbox\"\r\n (change)=\"_handleOnItemValueChange(item, $event)\"\r\n [checked]=\"isItemSelected(item)\"\r\n [disabled]=\"disabled || item.disabled\"\r\n [readonly]=\"readonly || item.readonly\" />\r\n </div>\r\n <div class=\"ax-item-text\">\r\n <label [for]=\"id + '-' + i\"> {{ item[textField] }}</label>\r\n <p class=\"ax-hint-text\">\r\n {{ item.hint ? item.hint : item[hintField] }}\r\n </p>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </ng-template>\r\n <ng-template #radioButtonList>\r\n <ng-container *ngFor=\"let item of displayItems; let i = index\">\r\n <div\r\n class=\"ax-item-container\"\r\n [class.ax-state-selected]=\"isItemSelected(item)\">\r\n <div class=\"ax-item-input\">\r\n <input\r\n #ir\r\n [id]=\"id + '-' + i\"\r\n class=\"ax-radio\"\r\n type=\"radio\"\r\n [attr.name]=\"id\"\r\n (change)=\"_handleOnItemValueChange(item, $event)\"\r\n [checked]=\"isItemSelected(item)\"\r\n [disabled]=\"disabled || item.disabled\"\r\n [readonly]=\"readonly || item.readonly\" />\r\n </div>\r\n <div class=\"ax-item-text\">\r\n <label [for]=\"id + '-' + i\"> {{ item[textField] }}</label>\r\n <p class=\"ax-hint-text\">\r\n {{ item.hint ? item.hint : item[hintField] }}\r\n </p>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </ng-template>\r\n <ng-content select=\"ax-validation-rule\"> </ng-content>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AXSelectionListComponent } from './selection-list.component';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\nimport { AXCheckBoxModule } from '@acorex/components/checkbox';\r\nimport { AXRadioModule } from '@acorex/components/radio';\r\nimport { AXLabelModule } from '@acorex/components/label';\r\nimport { AXFormModule } from '@acorex/components/form';\r\n\r\n@NgModule({\r\n declarations: [AXSelectionListComponent],\r\n imports: [CommonModule, FormsModule, AXCheckBoxModule,AXRadioModule,AXLabelModule,AXFormModule],\r\n exports: [AXSelectionListComponent],\r\n providers: []\r\n})\r\nexport class AXSelectionListModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
@@ -301,3 +301,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
|
|
301
301
|
|
302
302
|
export { AXBaseTabItemMixin, AXTabContentDirective, AXTabItemComponent, AXTabStripChangedEvent, AXTabsComponent, AXTabsModule };
|
303
303
|
//# sourceMappingURL=acorex-components-tabs.mjs.map
|
304
|
+
//# sourceMappingURL=acorex-components-tabs.mjs.map
|
@@ -197,3 +197,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
|
|
197
197
|
|
198
198
|
export { AXTooltipComponent, AXTooltipDirective, AXTooltipModule };
|
199
199
|
//# sourceMappingURL=acorex-components-tooltip.mjs.map
|
200
|
+
//# sourceMappingURL=acorex-components-tooltip.mjs.map
|