@yuuvis/client-framework 2.5.1 → 2.6.0
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/actions/lib/components/contextmenu/contextmenu.component.d.ts +2 -0
- package/common/index.d.ts +1 -0
- package/common/lib/components/halo-focus/halo-focus.component.d.ts +5 -0
- package/common/lib/directives/file-drop-zone/file-drop-zone.directive.d.ts +1 -2
- package/common/lib/services/file-drop/file-drop.service.d.ts +7 -0
- package/datepicker/lib/calendar/calendar.component.d.ts +1 -2
- package/fesm2022/yuuvis-client-framework-actions.mjs +6 -4
- package/fesm2022/yuuvis-client-framework-actions.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-autocomplete.mjs +3 -2
- package/fesm2022/yuuvis-client-framework-autocomplete.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-common.mjs +50 -21
- package/fesm2022/yuuvis-client-framework-common.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-datepicker.mjs +10 -19
- package/fesm2022/yuuvis-client-framework-datepicker.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-forms.mjs +33 -15
- package/fesm2022/yuuvis-client-framework-forms.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-list.mjs +12 -0
- package/fesm2022/yuuvis-client-framework-list.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-metadata-form-defaults.mjs +2 -2
- package/fesm2022/yuuvis-client-framework-metadata-form-defaults.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-object-flavor.mjs +1 -1
- package/fesm2022/yuuvis-client-framework-object-flavor.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-object-relationship.mjs +198 -198
- package/fesm2022/yuuvis-client-framework-object-relationship.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-object-versions.mjs +8 -3
- package/fesm2022/yuuvis-client-framework-object-versions.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-simple-search.mjs +92 -58
- package/fesm2022/yuuvis-client-framework-simple-search.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-split-view.mjs +55 -4
- package/fesm2022/yuuvis-client-framework-split-view.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-tile-list.mjs +8 -5
- package/fesm2022/yuuvis-client-framework-tile-list.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework.mjs +231 -2
- package/fesm2022/yuuvis-client-framework.mjs.map +1 -1
- package/forms/lib/elements/datetime/datetime.component.d.ts +1 -0
- package/index.d.ts +2 -2
- package/lib/providers/halo-focus/provide-halo-focus.d.ts +10 -0
- package/lib/providers/index.d.ts +1 -0
- package/lib/services/halo-focus/halo-focus.service.d.ts +7 -0
- package/lib/services/index.d.ts +3 -0
- package/list/lib/list-item.directive.d.ts +7 -1
- package/object-versions/lib/object-versions.component.d.ts +1 -0
- package/package.json +5 -5
- package/simple-search/lib/models/index.d.ts +1 -0
- package/simple-search/lib/models/object-type-aggregation.model.d.ts +14 -0
- package/simple-search/lib/simple-search/simple-search.component.d.ts +13 -23
- package/split-view/lib/split-area-cover.directive.d.ts +15 -0
- package/tile-list/lib/tile-list/tile-list.component.d.ts +2 -1
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { inject, ElementRef, input, linkedSignal, HostListener, Input, Directive, contentChildren, effect, untracked, output, HostAttributeToken, ViewEncapsulation, Component, contentChild, NgModule } from '@angular/core';
|
|
3
|
+
import { Utils } from '@yuuvis/client-core';
|
|
3
4
|
import { ActiveDescendantKeyManager, A11yModule } from '@angular/cdk/a11y';
|
|
4
5
|
import { Directionality } from '@angular/cdk/bidi';
|
|
5
6
|
import * as i1 from '@angular/common';
|
|
@@ -37,6 +38,8 @@ class ListItemDirective {
|
|
|
37
38
|
source: this.active,
|
|
38
39
|
computation: (newOptions, previous) => (newOptions !== previous ? newOptions : previous)
|
|
39
40
|
});
|
|
41
|
+
this.focusableChildren = [];
|
|
42
|
+
this.focusedIndex = -1;
|
|
40
43
|
}
|
|
41
44
|
#elRef;
|
|
42
45
|
onHostClick(evt) {
|
|
@@ -52,6 +55,10 @@ class ListItemDirective {
|
|
|
52
55
|
setInactiveStyles() {
|
|
53
56
|
this.activeInput.set(false);
|
|
54
57
|
}
|
|
58
|
+
focusNext() {
|
|
59
|
+
}
|
|
60
|
+
focusPrevious() {
|
|
61
|
+
}
|
|
55
62
|
#scrollIntoView() {
|
|
56
63
|
const el = this.#elRef.nativeElement;
|
|
57
64
|
const { bottom, top, left, right } = el.getBoundingClientRect();
|
|
@@ -73,6 +80,11 @@ class ListItemDirective {
|
|
|
73
80
|
if (offsetX || offsetY)
|
|
74
81
|
this.#elRef.nativeElement.parentElement.scrollBy(offsetX, offsetY);
|
|
75
82
|
}
|
|
83
|
+
ngAfterViewInit() {
|
|
84
|
+
// get all focusable elements and set tabindex to -1
|
|
85
|
+
this.focusableChildren = Utils.getFocusableChildren(this.#elRef.nativeElement);
|
|
86
|
+
this.focusableChildren.forEach((el) => el.setAttribute('tabindex', '-1'));
|
|
87
|
+
}
|
|
76
88
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: ListItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
77
89
|
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.15", type: ListItemDirective, isStandalone: true, selector: "[yuvListItem]", inputs: { disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, active: { classPropertyName: "active", publicName: "active", isSignal: true, isRequired: false, transformFunction: null }, selected: { classPropertyName: "selected", publicName: "selected", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "click": "onHostClick($event)" }, properties: { "attr.aria-current": "activeInput()", "attr.aria-selected": "selectedInput()" } }, ngImport: i0 }); }
|
|
78
90
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"yuuvis-client-framework-list.mjs","sources":["../../../../../libs/yuuvis/client-framework/list/src/lib/list-item.directive.ts","../../../../../libs/yuuvis/client-framework/list/src/lib/list.component.ts","../../../../../libs/yuuvis/client-framework/list/src/lib/list-tile/list-tile.component.ts","../../../../../libs/yuuvis/client-framework/list/src/lib/list-tile/list-tile.component.html","../../../../../libs/yuuvis/client-framework/list/src/lib/list.module.ts","../../../../../libs/yuuvis/client-framework/list/src/yuuvis-client-framework-list.ts"],"sourcesContent":["import { Highlightable } from '@angular/cdk/a11y';\nimport { Directive, ElementRef, HostListener, inject, input, Input, linkedSignal } from '@angular/core';\n\n/**\n * Directive for list items. It is used in the `yuvList` component\n * to keep track of active and selected items. Every element with this\n * directive will be treated as a list item and can be selected and focused.\n * \n *```html\n * <yuv-list (itemSelect)=\"itemSelected($event)\">\n * <div yuvListItem>Entry #1</div>\n * <div yuvListItem>Entry #2</div>\n * </yuv-list>\n * ```\n */\n@Directive({\n selector: '[yuvListItem]',\n standalone: true,\n host: {\n '[attr.aria-current]': 'activeInput()',\n '[attr.aria-selected]': 'selectedInput()'\n }\n})\nexport class ListItemDirective implements Highlightable {\n #elRef = inject(ElementRef);\n\n onClick?: (evt: MouseEvent) => void;\n\n // TO SATISFY THE HIGHLIGHTABLE INTERFACE\n @Input() disabled?: boolean | undefined;\n\n /**\n * Whether the item is active or not. \n */\n active = input<boolean>(false);\n /**\n * Whether the item is selected or not. \n */\n selected = input<boolean>(false);\n\n selectedInput = linkedSignal({\n source: this.selected,\n computation: (newOptions: any, previous: any) => (newOptions !== previous ? newOptions : previous)\n });\n\n activeInput = linkedSignal({\n source: this.active,\n computation: (newOptions: any, previous: any) => (newOptions !== previous ? newOptions : previous)\n });\n\n @HostListener('click', ['$event']) onHostClick(evt: MouseEvent) {\n if (!this.disabled && this.onClick) {\n this.#elRef.nativeElement.parentElement.focus();\n this.onClick(evt);\n }\n }\n\n setActiveStyles(): void {\n this.activeInput.set(true);\n this.#scrollIntoView();\n }\n\n setInactiveStyles(): void {\n this.activeInput.set(false);\n }\n\n #scrollIntoView() {\n const el = this.#elRef.nativeElement as HTMLElement;\n const { bottom, top, left, right } = el.getBoundingClientRect();\n const containerRect = this.#elRef.nativeElement.parentElement.getBoundingClientRect();\n\n const offsetY =\n top <= containerRect.top\n ? containerRect.top - top > 0\n ? (containerRect.top - top) * -1\n : 0\n : bottom - containerRect.bottom > 0\n ? bottom - containerRect.bottom\n : 0;\n const offsetX =\n left <= containerRect.left\n ? containerRect.left - left > 0\n ? (containerRect.left - left) * -1\n : 0\n : right - containerRect.right > 0\n ? right - containerRect.right\n : 0;\n\n if (offsetX || offsetY) (this.#elRef.nativeElement.parentElement as HTMLElement).scrollBy(offsetX, offsetY);\n }\n}\n","import { A11yModule, ActiveDescendantKeyManager } from '@angular/cdk/a11y';\nimport { Directionality } from '@angular/cdk/bidi';\nimport { CommonModule } from '@angular/common';\nimport {\n Component,\n ElementRef,\n HostAttributeToken,\n HostListener,\n OnDestroy,\n ViewEncapsulation,\n contentChildren,\n effect,\n inject,\n input,\n output,\n untracked,\n AfterContentInit\n} from '@angular/core';\nimport { ListItemDirective } from './list-item.directive';\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\n\n/**\n * Component rendering a simple list of items. It supports keyboard\n * navigation as well as accessibility. To create a list just wrap\n * `yuvListItem` elements into this component:\n *\n * ```html\n * <yuv-list (itemSelect)=\"itemSelected($event)\">\n * <div yuvListItem>Entry #1</div>\n * <div yuvListItem>Entry #2</div>\n * </yuv-list>\n * ```\n */\n@Component({\n selector: 'yuv-list',\n standalone: true,\n imports: [CommonModule, A11yModule],\n template: '<ng-content></ng-content>',\n styleUrl: './list.component.scss',\n encapsulation: ViewEncapsulation.None,\n host: {\n role: 'listbox',\n tabindex: '0',\n '[class.self-handle-selection]': 'selfHandleSelection()'\n }\n})\nexport class ListComponent implements AfterContentInit, OnDestroy {\n #dir = inject(Directionality);\n #elRef = inject(ElementRef);\n\n @HostListener('keydown', ['$event']) onKeydown(event: KeyboardEvent) {\n if (this.disableSelection()) return;\n if (event.code === 'Escape') {\n this.clear();\n }\n\n if (event.code === 'Space' || (this.selectOnEnter && event.code === 'Enter')) {\n // prevent default behavior of space in scroll environments\n event.preventDefault();\n const aii: number = this._keyManager.activeItemIndex !== null ? this._keyManager.activeItemIndex : -1;\n if (aii >= 0) {\n this.#select(aii);\n this.#emitSelection();\n }\n } else this._keyManager?.onKeydown(event);\n }\n\n @HostListener('focus') onFocus() {\n // set timeout to check if the focus is coming from an item being clicked\n setTimeout(() => {\n // if there already is an active item, we do not want to set the focus again\n if (this._keyManager.activeItemIndex === -1 && this.items().length > 0) {\n const indexToFocus = this._selection.length > 0 ? this._selection[0] : 0;\n this._keyManager.setActiveItem(indexToFocus);\n this.itemFocus.emit(indexToFocus);\n this.#updateActiveItemState();\n }\n }, 200);\n\n // if (this.items().length > 0) {\n // const indexToFocus = this._selection.length > 0 ? this._selection[0] : 0;\n // this._keyManager.setActiveItem(indexToFocus);\n // this.itemFocus.emit(indexToFocus);\n // this.#updateActiveItemState();\n // }\n }\n\n items = contentChildren(ListItemDirective);\n\n #itemsEffect = effect(() => {\n const items = this.items();\n\n if (this._keyManager) this._keyManager.destroy();\n\n untracked(() => {\n this._keyManager = this.horizontal\n ? new ActiveDescendantKeyManager(items).withWrap().withHorizontalOrientation(this.#dir.value)\n : new ActiveDescendantKeyManager(items).withWrap();\n\n this._keyManager.change.subscribe((activeIndex) => {\n if (activeIndex !== null) {\n this.#updateActiveItemState();\n this.itemFocus.emit(activeIndex);\n }\n });\n\n items.forEach((item, index) => {\n item.onClick = (evt: MouseEvent) => {\n this.select(index, evt.shiftKey, evt.ctrlKey);\n };\n item.activeInput.set(false);\n });\n if (this._lastSelection !== undefined && this._lastSelection <= items.length) {\n this.select(this._lastSelection);\n }\n });\n });\n\n private _keyManager!: ActiveDescendantKeyManager<ListItemDirective>;\n private _selection: number[] = [];\n private _lastSelection?: number;\n\n preventChangeUntil = input<() => boolean>(() => false);\n /**\n * If `true`, multiple items can be selected at once.\n */\n multiselect = input<boolean>(false);\n /**\n * If `true`, the component will handle selection itself. This means that\n * the parent component will be responsible for styling the selected and\n * focused items. If `false`, the component will take care of visualizing\n * the selection and focus states.\n * @default false\n */\n selfHandleSelection = input<boolean>(false);\n\n autoSelect = input<boolean, BooleanInput>(false, { transform: (value: BooleanInput) => coerceBooleanProperty(value) });\n\n /**\n * Emits the selected items indices.\n * @type {output<number[]>}\n */\n itemSelect = output<number[]>();\n /**\n * Emits the index of the item that has focus.\n * @type {output<number>}\n */\n itemFocus = output<number>();\n\n // autoselectFirst: boolean = (inject(new HostAttributeToken('autoselectFirst'), { optional: true }) || 'false') === 'true';\n selectOnEnter: boolean = (inject(new HostAttributeToken('selectOnEnter'), { optional: true }) || 'false') === 'true';\n horizontal: boolean = (inject(new HostAttributeToken('horizontal'), { optional: true }) || 'false') === 'true';\n\n /**\n * If `true`, the list will not allow selection of items.\n * This is useful for lists that are used for display purposes only.\n */\n disableSelection = input<boolean>(false);\n\n focus() {\n this.#elRef.nativeElement.focus();\n }\n\n multiSelect(index: number[]): void {\n if (!this.multiselect() || this.disableSelection()) return;\n this._selection = index.filter((i) => i >= 0 && i < this.items().length);\n this._selection.sort();\n\n this.items().forEach((item: ListItemDirective, i: number) => item.selectedInput.set(this._selection.includes(i)));\n this.#emitSelection();\n }\n\n select(index: number, shiftKey = false, ctrlKey = false) {\n if (this.disableSelection() || index < 0) return;\n if (index >= this.items().length) index = this.items().length - 1;\n if (this._keyManager) this._keyManager.setActiveItem(index);\n\n this.#select(index, shiftKey, ctrlKey);\n this.#emitSelection();\n }\n\n /**\n * Clear the current selection.\n * @param silent If `true`, the `itemSelect` event will not be emitted.\n */\n clear(silent = false) {\n if (this._selection.length !== 0) {\n this.#select(-1);\n this._keyManager.setActiveItem(-1);\n if (!silent) this.#emitSelection();\n }\n }\n\n #select(index: number, shiftKey = false, ctrlKey = false) {\n if (index === -1) this._selection = [];\n else {\n if (this.multiselect()) {\n this._selection = this._selection.filter((i) => i !== index);\n if (ctrlKey) {\n this._selection.push(index);\n } else if (shiftKey) {\n if (this._lastSelection) {\n for (let i = this._lastSelection < index ? this._lastSelection : index; i < (this._lastSelection > index ? this._lastSelection : index); i++) {\n this._selection.push(i);\n }\n } else {\n this._selection = [index];\n }\n } else {\n this._selection = [index];\n }\n } else this._selection = [index];\n }\n this._lastSelection = this._selection.length === 0 ? undefined : index;\n this._selection.sort();\n\n this.items().forEach((item: ListItemDirective, i: number) => item.selectedInput.set(this._selection.includes(i)));\n }\n\n #updateActiveItemState() {\n const activeIndex = this._keyManager.activeItemIndex;\n this.items().forEach((item: ListItemDirective, i: number) => {\n item.activeInput.set(i === activeIndex);\n });\n }\n\n #emitSelection() {\n const shouldPrevent = this.preventChangeUntil();\n if (shouldPrevent()) return;\n this.itemSelect.emit(this._selection);\n }\n\n #preselectItem() {\n /**\n * Initially select the first item that has the \"selected\"-attribute\n * and is not disabled. If no such item exists, select the first item\n * if `autoSelect` is true.\n */\n const items = this.items();\n const autoSelect = this.autoSelect();\n let itemIndexToSelect = -1;\n\n // If the list has no items, do nothing.\n if (items.length < 1) return;\n\n // Find the first item that has the \"selected\"-attribute and is not disabled\n itemIndexToSelect = items.findIndex((item) => item.selected() && !item.disabled);\n\n // If no valid item index is given, but autoSelect is true, select the first item\n if (itemIndexToSelect === -1 && autoSelect) {\n itemIndexToSelect = 0;\n }\n\n // If there is a valid item index, select that item, otherwise do nothing\n if (itemIndexToSelect !== -1) {\n this.select(itemIndexToSelect);\n }\n }\n\n ngAfterContentInit(): void {\n this.#preselectItem();\n }\n\n ngOnDestroy(): void {\n this._keyManager?.destroy();\n }\n}\n","import { Component, contentChild, TemplateRef, viewChild } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ListItemDirective } from '../list-item.directive';\n\n@Component({\n selector: 'yuv-list-tile',\n imports: [CommonModule],\n templateUrl: './list-tile.component.html',\n styleUrl: './list-tile.component.scss',\n // hostDirectives: [ListItemDirective]\n})\nexport class ListTileComponent {\n iconSlot = contentChild<TemplateRef<any>>('iconSlot', {\n descendants: true\n });\n titleSlot = contentChild<TemplateRef<any>>('titleSlot');\n descriptionSlot = contentChild<TemplateRef<any>>('descriptionSlot');\n asideSlot = contentChild<TemplateRef<any>>('asideSlot');\n actionsSlot = contentChild<TemplateRef<any>>('actionsSlot', {\n descendants: true\n });\n badgesSlot = contentChild<TemplateRef<any>>('badgesSlot');\n metaSlot = contentChild<TemplateRef<any>>('metaSlot');\n extensionSlot = contentChild<TemplateRef<any>>('extensionSlot');\n}\n","<ng-content></ng-content>\n<div class=\"tile\">\n <div data-slot=\"icon\">\n <ng-container *ngTemplateOutlet=\"iconSlot() || null\"></ng-container>\n </div>\n <div class=\"slots\"> \n <div data-slot=\"title-description\">\n <div data-slot=\"title\">\n <ng-container *ngTemplateOutlet=\"titleSlot() || null\"></ng-container>\n </div>\n <div data-slot=\"description\">\n <ng-container *ngTemplateOutlet=\"descriptionSlot() || null\"></ng-container>\n </div>\n </div>\n <div data-slot=\"actions\">\n <ng-container *ngTemplateOutlet=\"actionsSlot() || null\"></ng-container>\n </div>\n <div data-slot=\"aside\">\n <ng-container *ngTemplateOutlet=\"asideSlot() || null\"></ng-container>\n </div>\n <div data-slot=\"meta\">\n <ng-container *ngTemplateOutlet=\"metaSlot() || null\"></ng-container>\n </div>\n <div data-slot=\"badges\">\n <ng-container *ngTemplateOutlet=\"badgesSlot() || null\"></ng-container>\n </div>\n <div class=\"extension\">\n <ng-container *ngTemplateOutlet=\"extensionSlot() || null\"></ng-container>\n </div>\n </div>\n</div>\n","import { NgModule } from '@angular/core';\nimport { ListItemDirective } from './list-item.directive';\nimport { ListComponent } from './list.component';\nimport { ListTileComponent } from './list-tile/list-tile.component';\n\n@NgModule({\n imports: [ListComponent, ListItemDirective, ListTileComponent],\n exports: [ListComponent, ListItemDirective, ListTileComponent]\n})\nexport class YuvListModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"yuuvis-client-framework-list.mjs","sources":["../../../../../libs/yuuvis/client-framework/list/src/lib/list-item.directive.ts","../../../../../libs/yuuvis/client-framework/list/src/lib/list.component.ts","../../../../../libs/yuuvis/client-framework/list/src/lib/list-tile/list-tile.component.ts","../../../../../libs/yuuvis/client-framework/list/src/lib/list-tile/list-tile.component.html","../../../../../libs/yuuvis/client-framework/list/src/lib/list.module.ts","../../../../../libs/yuuvis/client-framework/list/src/yuuvis-client-framework-list.ts"],"sourcesContent":["import { Highlightable } from '@angular/cdk/a11y';\nimport { AfterViewInit, Directive, ElementRef, HostListener, inject, input, Input, linkedSignal } from '@angular/core';\nimport { Utils } from '@yuuvis/client-core';\n\n/**\n * Directive for list items. It is used in the `yuvList` component\n * to keep track of active and selected items. Every element with this\n * directive will be treated as a list item and can be selected and focused.\n * \n *```html\n * <yuv-list (itemSelect)=\"itemSelected($event)\">\n * <div yuvListItem>Entry #1</div>\n * <div yuvListItem>Entry #2</div>\n * </yuv-list>\n * ```\n */\n@Directive({\n selector: '[yuvListItem]',\n standalone: true,\n host: {\n '[attr.aria-current]': 'activeInput()',\n '[attr.aria-selected]': 'selectedInput()'\n }\n})\nexport class ListItemDirective implements Highlightable, AfterViewInit {\n #elRef = inject(ElementRef);\n\n onClick?: (evt: MouseEvent) => void;\n\n // TO SATISFY THE HIGHLIGHTABLE INTERFACE\n @Input() disabled?: boolean | undefined;\n\n /**\n * Whether the item is active or not. \n */\n active = input<boolean>(false);\n /**\n * Whether the item is selected or not. \n */\n selected = input<boolean>(false);\n\n selectedInput = linkedSignal({\n source: this.selected,\n computation: (newOptions: any, previous: any) => (newOptions !== previous ? newOptions : previous)\n });\n\n activeInput = linkedSignal({\n source: this.active,\n computation: (newOptions: any, previous: any) => (newOptions !== previous ? newOptions : previous)\n });\n\n focusableChildren: Element[] = [];\n focusedIndex = -1;\n\n @HostListener('click', ['$event']) onHostClick(evt: MouseEvent) {\n if (!this.disabled && this.onClick) {\n this.#elRef.nativeElement.parentElement.focus();\n this.onClick(evt);\n }\n }\n\n setActiveStyles(): void {\n this.activeInput.set(true);\n this.#scrollIntoView();\n }\n\n setInactiveStyles(): void {\n this.activeInput.set(false);\n }\n\n focusNext() {\n \n }\n\n focusPrevious() {\n }\n\n #scrollIntoView() {\n const el = this.#elRef.nativeElement as HTMLElement;\n const { bottom, top, left, right } = el.getBoundingClientRect();\n const containerRect = this.#elRef.nativeElement.parentElement.getBoundingClientRect();\n\n const offsetY =\n top <= containerRect.top\n ? containerRect.top - top > 0\n ? (containerRect.top - top) * -1\n : 0\n : bottom - containerRect.bottom > 0\n ? bottom - containerRect.bottom\n : 0;\n const offsetX =\n left <= containerRect.left\n ? containerRect.left - left > 0\n ? (containerRect.left - left) * -1\n : 0\n : right - containerRect.right > 0\n ? right - containerRect.right\n : 0;\n\n if (offsetX || offsetY) (this.#elRef.nativeElement.parentElement as HTMLElement).scrollBy(offsetX, offsetY);\n }\n\n ngAfterViewInit(): void {\n // get all focusable elements and set tabindex to -1\n this.focusableChildren = Utils.getFocusableChildren(this.#elRef.nativeElement);\n this.focusableChildren.forEach((el) => el.setAttribute('tabindex', '-1'));\n }\n}\n","import { A11yModule, ActiveDescendantKeyManager } from '@angular/cdk/a11y';\nimport { Directionality } from '@angular/cdk/bidi';\nimport { CommonModule } from '@angular/common';\nimport {\n Component,\n ElementRef,\n HostAttributeToken,\n HostListener,\n OnDestroy,\n ViewEncapsulation,\n contentChildren,\n effect,\n inject,\n input,\n output,\n untracked,\n AfterContentInit\n} from '@angular/core';\nimport { ListItemDirective } from './list-item.directive';\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\n\n/**\n * Component rendering a simple list of items. It supports keyboard\n * navigation as well as accessibility. To create a list just wrap\n * `yuvListItem` elements into this component:\n *\n * ```html\n * <yuv-list (itemSelect)=\"itemSelected($event)\">\n * <div yuvListItem>Entry #1</div>\n * <div yuvListItem>Entry #2</div>\n * </yuv-list>\n * ```\n */\n@Component({\n selector: 'yuv-list',\n standalone: true,\n imports: [CommonModule, A11yModule],\n template: '<ng-content></ng-content>',\n styleUrl: './list.component.scss',\n encapsulation: ViewEncapsulation.None,\n host: {\n role: 'listbox',\n tabindex: '0',\n '[class.self-handle-selection]': 'selfHandleSelection()'\n }\n})\nexport class ListComponent implements AfterContentInit, OnDestroy {\n #dir = inject(Directionality);\n #elRef = inject(ElementRef);\n\n @HostListener('keydown', ['$event']) onKeydown(event: KeyboardEvent) {\n if (this.disableSelection()) return;\n if (event.code === 'Escape') {\n this.clear();\n }\n\n if (event.code === 'Space' || (this.selectOnEnter && event.code === 'Enter')) {\n // prevent default behavior of space in scroll environments\n event.preventDefault();\n const aii: number = this._keyManager.activeItemIndex !== null ? this._keyManager.activeItemIndex : -1;\n if (aii >= 0) {\n this.#select(aii);\n this.#emitSelection();\n }\n } else this._keyManager?.onKeydown(event);\n }\n\n @HostListener('focus') onFocus() {\n // set timeout to check if the focus is coming from an item being clicked\n setTimeout(() => {\n // if there already is an active item, we do not want to set the focus again\n if (this._keyManager.activeItemIndex === -1 && this.items().length > 0) {\n const indexToFocus = this._selection.length > 0 ? this._selection[0] : 0;\n this._keyManager.setActiveItem(indexToFocus);\n this.itemFocus.emit(indexToFocus);\n this.#updateActiveItemState();\n }\n }, 200);\n\n // if (this.items().length > 0) {\n // const indexToFocus = this._selection.length > 0 ? this._selection[0] : 0;\n // this._keyManager.setActiveItem(indexToFocus);\n // this.itemFocus.emit(indexToFocus);\n // this.#updateActiveItemState();\n // }\n }\n\n items = contentChildren(ListItemDirective);\n\n #itemsEffect = effect(() => {\n const items = this.items();\n\n if (this._keyManager) this._keyManager.destroy();\n\n untracked(() => {\n this._keyManager = this.horizontal\n ? new ActiveDescendantKeyManager(items).withWrap().withHorizontalOrientation(this.#dir.value)\n : new ActiveDescendantKeyManager(items).withWrap();\n\n this._keyManager.change.subscribe((activeIndex) => {\n if (activeIndex !== null) {\n this.#updateActiveItemState();\n this.itemFocus.emit(activeIndex);\n }\n });\n\n items.forEach((item, index) => {\n item.onClick = (evt: MouseEvent) => {\n this.select(index, evt.shiftKey, evt.ctrlKey);\n };\n item.activeInput.set(false);\n });\n if (this._lastSelection !== undefined && this._lastSelection <= items.length) {\n this.select(this._lastSelection);\n }\n });\n });\n\n private _keyManager!: ActiveDescendantKeyManager<ListItemDirective>;\n private _selection: number[] = [];\n private _lastSelection?: number;\n\n preventChangeUntil = input<() => boolean>(() => false);\n /**\n * If `true`, multiple items can be selected at once.\n */\n multiselect = input<boolean>(false);\n /**\n * If `true`, the component will handle selection itself. This means that\n * the parent component will be responsible for styling the selected and\n * focused items. If `false`, the component will take care of visualizing\n * the selection and focus states.\n * @default false\n */\n selfHandleSelection = input<boolean>(false);\n\n autoSelect = input<boolean, BooleanInput>(false, { transform: (value: BooleanInput) => coerceBooleanProperty(value) });\n\n /**\n * Emits the selected items indices.\n * @type {output<number[]>}\n */\n itemSelect = output<number[]>();\n /**\n * Emits the index of the item that has focus.\n * @type {output<number>}\n */\n itemFocus = output<number>();\n\n // autoselectFirst: boolean = (inject(new HostAttributeToken('autoselectFirst'), { optional: true }) || 'false') === 'true';\n selectOnEnter: boolean = (inject(new HostAttributeToken('selectOnEnter'), { optional: true }) || 'false') === 'true';\n horizontal: boolean = (inject(new HostAttributeToken('horizontal'), { optional: true }) || 'false') === 'true';\n\n /**\n * If `true`, the list will not allow selection of items.\n * This is useful for lists that are used for display purposes only.\n */\n disableSelection = input<boolean>(false);\n\n focus() {\n this.#elRef.nativeElement.focus();\n }\n\n multiSelect(index: number[]): void {\n if (!this.multiselect() || this.disableSelection()) return;\n this._selection = index.filter((i) => i >= 0 && i < this.items().length);\n this._selection.sort();\n\n this.items().forEach((item: ListItemDirective, i: number) => item.selectedInput.set(this._selection.includes(i)));\n this.#emitSelection();\n }\n\n select(index: number, shiftKey = false, ctrlKey = false) {\n if (this.disableSelection() || index < 0) return;\n if (index >= this.items().length) index = this.items().length - 1;\n if (this._keyManager) this._keyManager.setActiveItem(index);\n\n this.#select(index, shiftKey, ctrlKey);\n this.#emitSelection();\n }\n\n /**\n * Clear the current selection.\n * @param silent If `true`, the `itemSelect` event will not be emitted.\n */\n clear(silent = false) {\n if (this._selection.length !== 0) {\n this.#select(-1);\n this._keyManager.setActiveItem(-1);\n if (!silent) this.#emitSelection();\n }\n }\n\n #select(index: number, shiftKey = false, ctrlKey = false) {\n if (index === -1) this._selection = [];\n else {\n if (this.multiselect()) {\n this._selection = this._selection.filter((i) => i !== index);\n if (ctrlKey) {\n this._selection.push(index);\n } else if (shiftKey) {\n if (this._lastSelection) {\n for (let i = this._lastSelection < index ? this._lastSelection : index; i < (this._lastSelection > index ? this._lastSelection : index); i++) {\n this._selection.push(i);\n }\n } else {\n this._selection = [index];\n }\n } else {\n this._selection = [index];\n }\n } else this._selection = [index];\n }\n this._lastSelection = this._selection.length === 0 ? undefined : index;\n this._selection.sort();\n\n this.items().forEach((item: ListItemDirective, i: number) => item.selectedInput.set(this._selection.includes(i)));\n }\n\n #updateActiveItemState() {\n const activeIndex = this._keyManager.activeItemIndex;\n this.items().forEach((item: ListItemDirective, i: number) => {\n item.activeInput.set(i === activeIndex);\n });\n }\n\n #emitSelection() {\n const shouldPrevent = this.preventChangeUntil();\n if (shouldPrevent()) return;\n this.itemSelect.emit(this._selection);\n }\n\n #preselectItem() {\n /**\n * Initially select the first item that has the \"selected\"-attribute\n * and is not disabled. If no such item exists, select the first item\n * if `autoSelect` is true.\n */\n const items = this.items();\n const autoSelect = this.autoSelect();\n let itemIndexToSelect = -1;\n\n // If the list has no items, do nothing.\n if (items.length < 1) return;\n\n // Find the first item that has the \"selected\"-attribute and is not disabled\n itemIndexToSelect = items.findIndex((item) => item.selected() && !item.disabled);\n\n // If no valid item index is given, but autoSelect is true, select the first item\n if (itemIndexToSelect === -1 && autoSelect) {\n itemIndexToSelect = 0;\n }\n\n // If there is a valid item index, select that item, otherwise do nothing\n if (itemIndexToSelect !== -1) {\n this.select(itemIndexToSelect);\n }\n }\n\n ngAfterContentInit(): void {\n this.#preselectItem();\n }\n\n ngOnDestroy(): void {\n this._keyManager?.destroy();\n }\n}\n","import { Component, contentChild, TemplateRef, viewChild } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ListItemDirective } from '../list-item.directive';\n\n@Component({\n selector: 'yuv-list-tile',\n imports: [CommonModule],\n templateUrl: './list-tile.component.html',\n styleUrl: './list-tile.component.scss',\n // hostDirectives: [ListItemDirective]\n})\nexport class ListTileComponent {\n iconSlot = contentChild<TemplateRef<any>>('iconSlot', {\n descendants: true\n });\n titleSlot = contentChild<TemplateRef<any>>('titleSlot');\n descriptionSlot = contentChild<TemplateRef<any>>('descriptionSlot');\n asideSlot = contentChild<TemplateRef<any>>('asideSlot');\n actionsSlot = contentChild<TemplateRef<any>>('actionsSlot', {\n descendants: true\n });\n badgesSlot = contentChild<TemplateRef<any>>('badgesSlot');\n metaSlot = contentChild<TemplateRef<any>>('metaSlot');\n extensionSlot = contentChild<TemplateRef<any>>('extensionSlot');\n}\n","<ng-content></ng-content>\n<div class=\"tile\">\n <div data-slot=\"icon\">\n <ng-container *ngTemplateOutlet=\"iconSlot() || null\"></ng-container>\n </div>\n <div class=\"slots\"> \n <div data-slot=\"title-description\">\n <div data-slot=\"title\">\n <ng-container *ngTemplateOutlet=\"titleSlot() || null\"></ng-container>\n </div>\n <div data-slot=\"description\">\n <ng-container *ngTemplateOutlet=\"descriptionSlot() || null\"></ng-container>\n </div>\n </div>\n <div data-slot=\"actions\">\n <ng-container *ngTemplateOutlet=\"actionsSlot() || null\"></ng-container>\n </div>\n <div data-slot=\"aside\">\n <ng-container *ngTemplateOutlet=\"asideSlot() || null\"></ng-container>\n </div>\n <div data-slot=\"meta\">\n <ng-container *ngTemplateOutlet=\"metaSlot() || null\"></ng-container>\n </div>\n <div data-slot=\"badges\">\n <ng-container *ngTemplateOutlet=\"badgesSlot() || null\"></ng-container>\n </div>\n <div class=\"extension\">\n <ng-container *ngTemplateOutlet=\"extensionSlot() || null\"></ng-container>\n </div>\n </div>\n</div>\n","import { NgModule } from '@angular/core';\nimport { ListItemDirective } from './list-item.directive';\nimport { ListComponent } from './list.component';\nimport { ListTileComponent } from './list-tile/list-tile.component';\n\n@NgModule({\n imports: [ListComponent, ListItemDirective, ListTileComponent],\n exports: [ListComponent, ListItemDirective, ListTileComponent]\n})\nexport class YuvListModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -14,7 +14,7 @@ import { ObjectMetadataElementTemplateDirective, ObjectMetadataElementLabelDirec
|
|
|
14
14
|
|
|
15
15
|
class MetadataDefaultTemplatesComponent {
|
|
16
16
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: MetadataDefaultTemplatesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
17
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", type: MetadataDefaultTemplatesComponent, isStandalone: true, selector: "yuv-metadata-default-templates", ngImport: i0, template: "<!-- form element templates -->\n\n<!-- STRING -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-string\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [multiselect]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n [rows]=\"ctx.field.rows\"\n [classifications]=\"ctx.field.classifications\"\n [regex]=\"ctx.field.regex\"\n [readonly]=\"ctx.field.readonly\"\n [minLength]=\"ctx.field.minLength\"\n [maxLength]=\"ctx.field.maxLength\"\n >\n </yuv-string>\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- STRING CATALOG (STATIC) -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string:catalog\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-catalog\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [multiple]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n >\n </yuv-catalog>\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- STRING CATALOG (STATIC TRANSLATED) -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string:catalog:i18n\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-i18n-catalog\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [formControl]=\"ctx.ctrl\"\n [propertyName]=\"ctx.field.name\"\n [attr.data-name]=\"ctx.field.name\"\n [multiple]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n >\n </yuv-i18n-catalog>\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- ORGANIZATION -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string:organization\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-organization\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [multiselect]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n (userSelect)=\"ctx.field.dataMeta = $event\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n >\n </yuv-organization>\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- ORGANIZATION SET -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string:organization:set\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-organization-set\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [multiselect]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n >\n </yuv-organization-set>\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- INTEGER -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"integer\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n @if (ctx.situation !== 'SEARCH') {\n <yuv-number\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [precision]=\"ctx.field.precision\"\n [scale]=\"0\"\n [grouping]=\"ctx.field.grouping\"\n [minValue]=\"ctx.field.minValue\"\n [maxValue]=\"ctx.field.maxValue\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n >\n </yuv-number>\n } @else {\n <yuv-number-range\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [precision]=\"ctx.field.precision\"\n [scale]=\"0\"\n [grouping]=\"ctx.field.grouping\"\n [minValue]=\"ctx.field.minValue\"\n [maxValue]=\"ctx.field.maxValue\"\n [pattern]=\"ctx.field.pattern\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n ></yuv-number-range>\n }\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- DECIMAL -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"decimal\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n @if (ctx.situation !== 'SEARCH') {\n <yuv-number\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [precision]=\"ctx.field.precision\"\n [scale]=\"ctx.field.scale\"\n [grouping]=\"ctx.field.grouping\"\n [pattern]=\"ctx.field.pattern\"\n [minValue]=\"ctx.field.minValue\"\n [maxValue]=\"ctx.field.maxValue\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n >\n >\n </yuv-number>\n } @else {\n <yuv-number-range\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [precision]=\"ctx.field.precision\"\n [scale]=\"ctx.field.scale\"\n [pattern]=\"ctx.field.pattern\"\n [grouping]=\"ctx.field.grouping\"\n [minValue]=\"ctx.field.minValue\"\n [maxValue]=\"ctx.field.maxValue\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n ></yuv-number-range>\n }\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- BOOLEAN -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"boolean\" let-ctx>\n <mat-checkbox\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [disabled]=\"ctx.field.readonly\"\n [indeterminate]=\"ctx.field.tristate === false ? false : (ctx.ctrl.value !== true && ctx.ctrl.value !== false) ? true : false\"\n >\n </mat-checkbox>\n <label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</label>\n</ng-template>\n\n<!-- BOOLEAN SWITCH -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"boolean:switch\" let-ctx>\n <mat-slide-toggle [formControl]=\"ctx.ctrl\" switch=\"true\" [attr.data-name]=\"ctx.field.name\" [disabled]=\"ctx.field.readonly\"></mat-slide-toggle>\n <label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</label>\n</ng-template>\n\n<!-- DATETIME -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"datetime\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n @if (ctx.situation !== 'SEARCH') {\n <yuv-datetime\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [withTime]=\"ctx.field.resolution !== 'date'\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n ></yuv-datetime>\n } @else {\n <yuv-datetime-range\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [readonly]=\"ctx.field.readonly\"\n [withTime]=\"ctx.field.resolution !== 'date'\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n ></yuv-datetime-range>\n }\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- TABLE -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"table\" let-ctx>\n <yuv-data-grid\n [situation]=\"ctx.situation\"\n [formControl]=\"ctx.ctrl\"\n [formElement]=\"ctx.field\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n [formFieldContext]=\"ctx\"\n >\n </yuv-data-grid>\n</ng-template>\n", styles: ["mat-hint:not(:empty){padding-bottom:var(--ymt-spacing-xs)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: StringComponent, selector: "yuv-string", inputs: ["multiselect", "rows", "readonly", "autofocus", "classifications", "situation", "regex", "minLength", "maxLength"] }, { kind: "component", type: DataGridComponent, selector: "yuv-data-grid", inputs: ["situation", "formElement", "formControl", "classifications", "readonly", "formFieldContext", "size"] }, { kind: "component", type: OrganizationComponent, selector: "yuv-organization", inputs: ["situation", "multiselect", "classifications", "readonly", "excludeMe", "withMetadata"] }, { kind: "component", type: OrganizationSetComponent, selector: "yuv-organization-set", inputs: ["situation", "multiselect", "readonly", "withMetadata", "autocompleteMinLength", "classifications", "types"] }, { kind: "component", type: CatalogComponent, selector: "yuv-catalog", inputs: ["readonly", "multiple", "options", "classifications", "situation"] }, { kind: "component", type: I18nCatalogComponent, selector: "yuv-i18n-catalog", inputs: ["readonly", "multiple", "propertyName", "options", "classifications", "situation"] }, { kind: "component", type: NumberComponent, selector: "yuv-number", inputs: ["scale", "precision", "grouping", "groupPattern", "readonly", "minValue", "maxValue", "classifications"] }, { kind: "component", type: NumberRangeComponent, selector: "yuv-number-range", inputs: ["scale", "precision", "grouping", "pattern", "readonly", "classifications", "minValue", "maxValue", "situation"] }, { kind: "component", type: DatetimeComponent, selector: "yuv-datetime", inputs: ["locale", "onlyFutureDates", "readonly", "calendar", "withTime"] }, { kind: "component", type: DatetimeRangeComponent, selector: "yuv-datetime-range", inputs: ["withTime", "readonly", "operator", "situation"] }, { kind: "directive", type: ObjectMetadataElementTemplateDirective, selector: "[yuvMetadataElementTemplate]", inputs: ["yuvMetadataElementTemplate", "situation", "propertyType", "propertyName"] }, { kind: "directive", type: ObjectMetadataElementLabelDirective, selector: "[yuvObjectMetadataElementLabel]", inputs: ["yuvObjectMetadataElementLabel"] }, { kind: "directive", type: ObjectMetadataElementErrorDirective, selector: "[yuvObjectMetadataElementError]", inputs: ["yuvObjectMetadataElementError"] }, { kind: "ngmodule", type: MatCheckboxModule }, { kind: "component", type: i2.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: MatSlideToggleModule }, { kind: "component", type: i4.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["name", "id", "labelPosition", "aria-label", "aria-labelledby", "aria-describedby", "required", "color", "disabled", "disableRipple", "tabIndex", "checked", "hideIcon", "disabledInteractive"], outputs: ["change", "toggleChange"], exportAs: ["matSlideToggle"] }] }); }
|
|
17
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", type: MetadataDefaultTemplatesComponent, isStandalone: true, selector: "yuv-metadata-default-templates", ngImport: i0, template: "<!-- form element templates -->\n\n<!-- STRING -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-string\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [multiselect]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n [rows]=\"ctx.field.rows\"\n [classifications]=\"ctx.field.classifications\"\n [regex]=\"ctx.field.regex\"\n [readonly]=\"ctx.field.readonly\"\n [minLength]=\"ctx.field.minLength\"\n [maxLength]=\"ctx.field.maxLength\"\n >\n </yuv-string>\n <mat-hint>{{ ctx.description }}</mat-hint>\n\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- STRING CATALOG (STATIC) -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string:catalog\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-catalog\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [multiple]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n >\n </yuv-catalog>\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- STRING CATALOG (STATIC TRANSLATED) -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string:catalog:i18n\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-i18n-catalog\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [formControl]=\"ctx.ctrl\"\n [propertyName]=\"ctx.field.name\"\n [attr.data-name]=\"ctx.field.name\"\n [multiple]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n >\n </yuv-i18n-catalog>\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- ORGANIZATION -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string:organization\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-organization\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [multiselect]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n (userSelect)=\"ctx.field.dataMeta = $event\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n >\n </yuv-organization>\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- ORGANIZATION SET -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string:organization:set\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-organization-set\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [multiselect]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n >\n </yuv-organization-set>\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- INTEGER -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"integer\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n @if (ctx.situation !== 'SEARCH') {\n <yuv-number\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [precision]=\"ctx.field.precision\"\n [scale]=\"0\"\n [grouping]=\"ctx.field.grouping\"\n [minValue]=\"ctx.field.minValue\"\n [maxValue]=\"ctx.field.maxValue\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n >\n </yuv-number>\n } @else {\n <yuv-number-range\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [precision]=\"ctx.field.precision\"\n [scale]=\"0\"\n [grouping]=\"ctx.field.grouping\"\n [minValue]=\"ctx.field.minValue\"\n [maxValue]=\"ctx.field.maxValue\"\n [pattern]=\"ctx.field.pattern\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n ></yuv-number-range>\n }\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- DECIMAL -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"decimal\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n @if (ctx.situation !== 'SEARCH') {\n <yuv-number\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [precision]=\"ctx.field.precision\"\n [scale]=\"ctx.field.scale\"\n [grouping]=\"ctx.field.grouping\"\n [pattern]=\"ctx.field.pattern\"\n [minValue]=\"ctx.field.minValue\"\n [maxValue]=\"ctx.field.maxValue\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n >\n >\n </yuv-number>\n } @else {\n <yuv-number-range\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [precision]=\"ctx.field.precision\"\n [scale]=\"ctx.field.scale\"\n [pattern]=\"ctx.field.pattern\"\n [grouping]=\"ctx.field.grouping\"\n [minValue]=\"ctx.field.minValue\"\n [maxValue]=\"ctx.field.maxValue\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n ></yuv-number-range>\n }\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- BOOLEAN -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"boolean\" let-ctx>\n <mat-checkbox\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [disabled]=\"ctx.field.readonly\"\n [indeterminate]=\"ctx.field.tristate === false ? false : ctx.ctrl.value !== true && ctx.ctrl.value !== false ? true : false\"\n >\n </mat-checkbox>\n <label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</label>\n</ng-template>\n\n<!-- BOOLEAN SWITCH -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"boolean:switch\" let-ctx>\n <mat-slide-toggle [formControl]=\"ctx.ctrl\" switch=\"true\" [attr.data-name]=\"ctx.field.name\" [disabled]=\"ctx.field.readonly\"></mat-slide-toggle>\n <label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</label>\n</ng-template>\n\n<!-- DATETIME -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"datetime\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n @if (ctx.situation !== 'SEARCH') {\n <yuv-datetime\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [withTime]=\"ctx.field.resolution !== 'date'\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n ></yuv-datetime>\n } @else {\n <yuv-datetime-range\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [readonly]=\"ctx.field.readonly\"\n [withTime]=\"ctx.field.resolution !== 'date'\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n ></yuv-datetime-range>\n }\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- TABLE -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"table\" let-ctx>\n <yuv-data-grid\n [situation]=\"ctx.situation\"\n [formControl]=\"ctx.ctrl\"\n [formElement]=\"ctx.field\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n [formFieldContext]=\"ctx\"\n >\n </yuv-data-grid>\n</ng-template>\n", styles: ["mat-hint:not(:empty){padding-bottom:var(--ymt-spacing-xs)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: StringComponent, selector: "yuv-string", inputs: ["multiselect", "rows", "readonly", "autofocus", "classifications", "situation", "regex", "minLength", "maxLength"] }, { kind: "component", type: DataGridComponent, selector: "yuv-data-grid", inputs: ["situation", "formElement", "formControl", "classifications", "readonly", "formFieldContext", "size"] }, { kind: "component", type: OrganizationComponent, selector: "yuv-organization", inputs: ["situation", "multiselect", "classifications", "readonly", "excludeMe", "withMetadata"] }, { kind: "component", type: OrganizationSetComponent, selector: "yuv-organization-set", inputs: ["situation", "multiselect", "readonly", "withMetadata", "autocompleteMinLength", "classifications", "types"] }, { kind: "component", type: CatalogComponent, selector: "yuv-catalog", inputs: ["readonly", "multiple", "options", "classifications", "situation"] }, { kind: "component", type: I18nCatalogComponent, selector: "yuv-i18n-catalog", inputs: ["readonly", "multiple", "propertyName", "options", "classifications", "situation"] }, { kind: "component", type: NumberComponent, selector: "yuv-number", inputs: ["scale", "precision", "grouping", "groupPattern", "readonly", "minValue", "maxValue", "classifications"] }, { kind: "component", type: NumberRangeComponent, selector: "yuv-number-range", inputs: ["scale", "precision", "grouping", "pattern", "readonly", "classifications", "minValue", "maxValue", "situation"] }, { kind: "component", type: DatetimeComponent, selector: "yuv-datetime", inputs: ["locale", "onlyFutureDates", "readonly", "calendar", "withTime"] }, { kind: "component", type: DatetimeRangeComponent, selector: "yuv-datetime-range", inputs: ["withTime", "readonly", "operator", "situation"] }, { kind: "directive", type: ObjectMetadataElementTemplateDirective, selector: "[yuvMetadataElementTemplate]", inputs: ["yuvMetadataElementTemplate", "situation", "propertyType", "propertyName"] }, { kind: "directive", type: ObjectMetadataElementLabelDirective, selector: "[yuvObjectMetadataElementLabel]", inputs: ["yuvObjectMetadataElementLabel"] }, { kind: "directive", type: ObjectMetadataElementErrorDirective, selector: "[yuvObjectMetadataElementError]", inputs: ["yuvObjectMetadataElementError"] }, { kind: "ngmodule", type: MatCheckboxModule }, { kind: "component", type: i2.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: MatSlideToggleModule }, { kind: "component", type: i4.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["name", "id", "labelPosition", "aria-label", "aria-labelledby", "aria-describedby", "required", "color", "disabled", "disableRipple", "tabIndex", "checked", "hideIcon", "disabledInteractive"], outputs: ["change", "toggleChange"], exportAs: ["matSlideToggle"] }] }); }
|
|
18
18
|
}
|
|
19
19
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: MetadataDefaultTemplatesComponent, decorators: [{
|
|
20
20
|
type: Component,
|
|
@@ -38,7 +38,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
|
|
|
38
38
|
MatFormFieldModule,
|
|
39
39
|
MatSlideToggleModule,
|
|
40
40
|
MatFormFieldModule
|
|
41
|
-
], template: "<!-- form element templates -->\n\n<!-- STRING -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-string\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [multiselect]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n [rows]=\"ctx.field.rows\"\n [classifications]=\"ctx.field.classifications\"\n [regex]=\"ctx.field.regex\"\n [readonly]=\"ctx.field.readonly\"\n [minLength]=\"ctx.field.minLength\"\n [maxLength]=\"ctx.field.maxLength\"\n >\n </yuv-string>\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- STRING CATALOG (STATIC) -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string:catalog\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-catalog\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [multiple]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n >\n </yuv-catalog>\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- STRING CATALOG (STATIC TRANSLATED) -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string:catalog:i18n\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-i18n-catalog\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [formControl]=\"ctx.ctrl\"\n [propertyName]=\"ctx.field.name\"\n [attr.data-name]=\"ctx.field.name\"\n [multiple]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n >\n </yuv-i18n-catalog>\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- ORGANIZATION -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string:organization\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-organization\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [multiselect]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n (userSelect)=\"ctx.field.dataMeta = $event\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n >\n </yuv-organization>\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- ORGANIZATION SET -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string:organization:set\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-organization-set\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [multiselect]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n >\n </yuv-organization-set>\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- INTEGER -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"integer\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n @if (ctx.situation !== 'SEARCH') {\n <yuv-number\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [precision]=\"ctx.field.precision\"\n [scale]=\"0\"\n [grouping]=\"ctx.field.grouping\"\n [minValue]=\"ctx.field.minValue\"\n [maxValue]=\"ctx.field.maxValue\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n >\n </yuv-number>\n } @else {\n <yuv-number-range\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [precision]=\"ctx.field.precision\"\n [scale]=\"0\"\n [grouping]=\"ctx.field.grouping\"\n [minValue]=\"ctx.field.minValue\"\n [maxValue]=\"ctx.field.maxValue\"\n [pattern]=\"ctx.field.pattern\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n ></yuv-number-range>\n }\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- DECIMAL -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"decimal\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n @if (ctx.situation !== 'SEARCH') {\n <yuv-number\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [precision]=\"ctx.field.precision\"\n [scale]=\"ctx.field.scale\"\n [grouping]=\"ctx.field.grouping\"\n [pattern]=\"ctx.field.pattern\"\n [minValue]=\"ctx.field.minValue\"\n [maxValue]=\"ctx.field.maxValue\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n >\n >\n </yuv-number>\n } @else {\n <yuv-number-range\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [precision]=\"ctx.field.precision\"\n [scale]=\"ctx.field.scale\"\n [pattern]=\"ctx.field.pattern\"\n [grouping]=\"ctx.field.grouping\"\n [minValue]=\"ctx.field.minValue\"\n [maxValue]=\"ctx.field.maxValue\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n ></yuv-number-range>\n }\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- BOOLEAN -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"boolean\" let-ctx>\n <mat-checkbox\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [disabled]=\"ctx.field.readonly\"\n [indeterminate]=\"ctx.field.tristate === false ? false :
|
|
41
|
+
], template: "<!-- form element templates -->\n\n<!-- STRING -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-string\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [multiselect]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n [rows]=\"ctx.field.rows\"\n [classifications]=\"ctx.field.classifications\"\n [regex]=\"ctx.field.regex\"\n [readonly]=\"ctx.field.readonly\"\n [minLength]=\"ctx.field.minLength\"\n [maxLength]=\"ctx.field.maxLength\"\n >\n </yuv-string>\n <mat-hint>{{ ctx.description }}</mat-hint>\n\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- STRING CATALOG (STATIC) -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string:catalog\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-catalog\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [multiple]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n >\n </yuv-catalog>\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- STRING CATALOG (STATIC TRANSLATED) -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string:catalog:i18n\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-i18n-catalog\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [formControl]=\"ctx.ctrl\"\n [propertyName]=\"ctx.field.name\"\n [attr.data-name]=\"ctx.field.name\"\n [multiple]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n >\n </yuv-i18n-catalog>\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- ORGANIZATION -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string:organization\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-organization\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [multiselect]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n (userSelect)=\"ctx.field.dataMeta = $event\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n >\n </yuv-organization>\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- ORGANIZATION SET -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string:organization:set\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-organization-set\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [multiselect]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n >\n </yuv-organization-set>\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- INTEGER -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"integer\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n @if (ctx.situation !== 'SEARCH') {\n <yuv-number\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [precision]=\"ctx.field.precision\"\n [scale]=\"0\"\n [grouping]=\"ctx.field.grouping\"\n [minValue]=\"ctx.field.minValue\"\n [maxValue]=\"ctx.field.maxValue\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n >\n </yuv-number>\n } @else {\n <yuv-number-range\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [precision]=\"ctx.field.precision\"\n [scale]=\"0\"\n [grouping]=\"ctx.field.grouping\"\n [minValue]=\"ctx.field.minValue\"\n [maxValue]=\"ctx.field.maxValue\"\n [pattern]=\"ctx.field.pattern\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n ></yuv-number-range>\n }\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- DECIMAL -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"decimal\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n @if (ctx.situation !== 'SEARCH') {\n <yuv-number\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [precision]=\"ctx.field.precision\"\n [scale]=\"ctx.field.scale\"\n [grouping]=\"ctx.field.grouping\"\n [pattern]=\"ctx.field.pattern\"\n [minValue]=\"ctx.field.minValue\"\n [maxValue]=\"ctx.field.maxValue\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n >\n >\n </yuv-number>\n } @else {\n <yuv-number-range\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [precision]=\"ctx.field.precision\"\n [scale]=\"ctx.field.scale\"\n [pattern]=\"ctx.field.pattern\"\n [grouping]=\"ctx.field.grouping\"\n [minValue]=\"ctx.field.minValue\"\n [maxValue]=\"ctx.field.maxValue\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n ></yuv-number-range>\n }\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- BOOLEAN -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"boolean\" let-ctx>\n <mat-checkbox\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [disabled]=\"ctx.field.readonly\"\n [indeterminate]=\"ctx.field.tristate === false ? false : ctx.ctrl.value !== true && ctx.ctrl.value !== false ? true : false\"\n >\n </mat-checkbox>\n <label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</label>\n</ng-template>\n\n<!-- BOOLEAN SWITCH -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"boolean:switch\" let-ctx>\n <mat-slide-toggle [formControl]=\"ctx.ctrl\" switch=\"true\" [attr.data-name]=\"ctx.field.name\" [disabled]=\"ctx.field.readonly\"></mat-slide-toggle>\n <label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</label>\n</ng-template>\n\n<!-- DATETIME -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"datetime\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n @if (ctx.situation !== 'SEARCH') {\n <yuv-datetime\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [withTime]=\"ctx.field.resolution !== 'date'\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n ></yuv-datetime>\n } @else {\n <yuv-datetime-range\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [readonly]=\"ctx.field.readonly\"\n [withTime]=\"ctx.field.resolution !== 'date'\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n ></yuv-datetime-range>\n }\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- TABLE -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"table\" let-ctx>\n <yuv-data-grid\n [situation]=\"ctx.situation\"\n [formControl]=\"ctx.ctrl\"\n [formElement]=\"ctx.field\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n [formFieldContext]=\"ctx\"\n >\n </yuv-data-grid>\n</ng-template>\n", styles: ["mat-hint:not(:empty){padding-bottom:var(--ymt-spacing-xs)}\n"] }]
|
|
42
42
|
}] });
|
|
43
43
|
|
|
44
44
|
class YuvMetadataFormDefaultsModule {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"yuuvis-client-framework-metadata-form-defaults.mjs","sources":["../../../../../libs/yuuvis/client-framework/metadata-form-defaults/src/lib/metadata-default-templates/metadata-default-templates.component.ts","../../../../../libs/yuuvis/client-framework/metadata-form-defaults/src/lib/metadata-default-templates/metadata-default-templates.component.html","../../../../../libs/yuuvis/client-framework/metadata-form-defaults/src/lib/metadata-form-defaults.module.ts","../../../../../libs/yuuvis/client-framework/metadata-form-defaults/src/yuuvis-client-framework-metadata-form-defaults.ts"],"sourcesContent":["import { I } from '@angular/cdk/a11y-module.d-DBHGyKoh';\nimport { CommonModule } from '@angular/common';\nimport { Component } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatSlideToggleModule } from '@angular/material/slide-toggle';\nimport {\n CatalogComponent,\n DataGridComponent,\n DatetimeComponent,\n DatetimeRangeComponent,\n I18nCatalogComponent,\n NumberComponent,\n NumberRangeComponent,\n OrganizationComponent,\n OrganizationSetComponent,\n StringComponent\n} from '@yuuvis/client-framework/forms';\nimport { ObjectMetadataElementErrorDirective, ObjectMetadataElementLabelDirective, ObjectMetadataElementTemplateDirective } from '@yuuvis/client-framework/metadata-form';\n@Component({\n selector: 'yuv-metadata-default-templates',\n standalone: true,\n imports: [\n CommonModule,\n ReactiveFormsModule,\n StringComponent,\n DataGridComponent,\n OrganizationComponent,\n OrganizationSetComponent,\n CatalogComponent,\n I18nCatalogComponent,\n NumberComponent,\n NumberRangeComponent,\n DatetimeComponent,\n DatetimeRangeComponent,\n ObjectMetadataElementTemplateDirective,\n ObjectMetadataElementLabelDirective,\n ObjectMetadataElementErrorDirective,\n MatCheckboxModule,\n MatFormFieldModule,\n MatSlideToggleModule,\n MatFormFieldModule\n ],\n templateUrl: './metadata-default-templates.component.html',\n styleUrl: './metadata-default-templates.component.scss'\n})\nexport class MetadataDefaultTemplatesComponent {}\n","<!-- form element templates -->\n\n<!-- STRING -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-string\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [multiselect]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n [rows]=\"ctx.field.rows\"\n [classifications]=\"ctx.field.classifications\"\n [regex]=\"ctx.field.regex\"\n [readonly]=\"ctx.field.readonly\"\n [minLength]=\"ctx.field.minLength\"\n [maxLength]=\"ctx.field.maxLength\"\n >\n </yuv-string>\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- STRING CATALOG (STATIC) -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string:catalog\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-catalog\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [multiple]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n >\n </yuv-catalog>\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- STRING CATALOG (STATIC TRANSLATED) -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string:catalog:i18n\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-i18n-catalog\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [formControl]=\"ctx.ctrl\"\n [propertyName]=\"ctx.field.name\"\n [attr.data-name]=\"ctx.field.name\"\n [multiple]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n >\n </yuv-i18n-catalog>\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- ORGANIZATION -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string:organization\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-organization\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [multiselect]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n (userSelect)=\"ctx.field.dataMeta = $event\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n >\n </yuv-organization>\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- ORGANIZATION SET -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string:organization:set\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-organization-set\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [multiselect]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n >\n </yuv-organization-set>\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- INTEGER -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"integer\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n @if (ctx.situation !== 'SEARCH') {\n <yuv-number\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [precision]=\"ctx.field.precision\"\n [scale]=\"0\"\n [grouping]=\"ctx.field.grouping\"\n [minValue]=\"ctx.field.minValue\"\n [maxValue]=\"ctx.field.maxValue\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n >\n </yuv-number>\n } @else {\n <yuv-number-range\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [precision]=\"ctx.field.precision\"\n [scale]=\"0\"\n [grouping]=\"ctx.field.grouping\"\n [minValue]=\"ctx.field.minValue\"\n [maxValue]=\"ctx.field.maxValue\"\n [pattern]=\"ctx.field.pattern\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n ></yuv-number-range>\n }\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- DECIMAL -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"decimal\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n @if (ctx.situation !== 'SEARCH') {\n <yuv-number\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [precision]=\"ctx.field.precision\"\n [scale]=\"ctx.field.scale\"\n [grouping]=\"ctx.field.grouping\"\n [pattern]=\"ctx.field.pattern\"\n [minValue]=\"ctx.field.minValue\"\n [maxValue]=\"ctx.field.maxValue\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n >\n >\n </yuv-number>\n } @else {\n <yuv-number-range\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [precision]=\"ctx.field.precision\"\n [scale]=\"ctx.field.scale\"\n [pattern]=\"ctx.field.pattern\"\n [grouping]=\"ctx.field.grouping\"\n [minValue]=\"ctx.field.minValue\"\n [maxValue]=\"ctx.field.maxValue\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n ></yuv-number-range>\n }\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- BOOLEAN -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"boolean\" let-ctx>\n <mat-checkbox\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [disabled]=\"ctx.field.readonly\"\n [indeterminate]=\"ctx.field.tristate === false ? false : (ctx.ctrl.value !== true && ctx.ctrl.value !== false) ? true : false\"\n >\n </mat-checkbox>\n <label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</label>\n</ng-template>\n\n<!-- BOOLEAN SWITCH -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"boolean:switch\" let-ctx>\n <mat-slide-toggle [formControl]=\"ctx.ctrl\" switch=\"true\" [attr.data-name]=\"ctx.field.name\" [disabled]=\"ctx.field.readonly\"></mat-slide-toggle>\n <label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</label>\n</ng-template>\n\n<!-- DATETIME -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"datetime\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n @if (ctx.situation !== 'SEARCH') {\n <yuv-datetime\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [withTime]=\"ctx.field.resolution !== 'date'\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n ></yuv-datetime>\n } @else {\n <yuv-datetime-range\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [readonly]=\"ctx.field.readonly\"\n [withTime]=\"ctx.field.resolution !== 'date'\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n ></yuv-datetime-range>\n }\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- TABLE -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"table\" let-ctx>\n <yuv-data-grid\n [situation]=\"ctx.situation\"\n [formControl]=\"ctx.ctrl\"\n [formElement]=\"ctx.field\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n [formFieldContext]=\"ctx\"\n >\n </yuv-data-grid>\n</ng-template>\n","import { NgModule } from '@angular/core';\nimport { MetadataDefaultTemplatesComponent } from './metadata-default-templates/metadata-default-templates.component';\n\n@NgModule({\n imports: [MetadataDefaultTemplatesComponent],\n exports: [MetadataDefaultTemplatesComponent],\n})\nexport class YuvMetadataFormDefaultsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"yuuvis-client-framework-metadata-form-defaults.mjs","sources":["../../../../../libs/yuuvis/client-framework/metadata-form-defaults/src/lib/metadata-default-templates/metadata-default-templates.component.ts","../../../../../libs/yuuvis/client-framework/metadata-form-defaults/src/lib/metadata-default-templates/metadata-default-templates.component.html","../../../../../libs/yuuvis/client-framework/metadata-form-defaults/src/lib/metadata-form-defaults.module.ts","../../../../../libs/yuuvis/client-framework/metadata-form-defaults/src/yuuvis-client-framework-metadata-form-defaults.ts"],"sourcesContent":["import { I } from '@angular/cdk/a11y-module.d-DBHGyKoh';\nimport { CommonModule } from '@angular/common';\nimport { Component } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatSlideToggleModule } from '@angular/material/slide-toggle';\nimport {\n CatalogComponent,\n DataGridComponent,\n DatetimeComponent,\n DatetimeRangeComponent,\n I18nCatalogComponent,\n NumberComponent,\n NumberRangeComponent,\n OrganizationComponent,\n OrganizationSetComponent,\n StringComponent\n} from '@yuuvis/client-framework/forms';\nimport { ObjectMetadataElementErrorDirective, ObjectMetadataElementLabelDirective, ObjectMetadataElementTemplateDirective } from '@yuuvis/client-framework/metadata-form';\n@Component({\n selector: 'yuv-metadata-default-templates',\n standalone: true,\n imports: [\n CommonModule,\n ReactiveFormsModule,\n StringComponent,\n DataGridComponent,\n OrganizationComponent,\n OrganizationSetComponent,\n CatalogComponent,\n I18nCatalogComponent,\n NumberComponent,\n NumberRangeComponent,\n DatetimeComponent,\n DatetimeRangeComponent,\n ObjectMetadataElementTemplateDirective,\n ObjectMetadataElementLabelDirective,\n ObjectMetadataElementErrorDirective,\n MatCheckboxModule,\n MatFormFieldModule,\n MatSlideToggleModule,\n MatFormFieldModule\n ],\n templateUrl: './metadata-default-templates.component.html',\n styleUrl: './metadata-default-templates.component.scss'\n})\nexport class MetadataDefaultTemplatesComponent {}\n","<!-- form element templates -->\n\n<!-- STRING -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-string\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [multiselect]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n [rows]=\"ctx.field.rows\"\n [classifications]=\"ctx.field.classifications\"\n [regex]=\"ctx.field.regex\"\n [readonly]=\"ctx.field.readonly\"\n [minLength]=\"ctx.field.minLength\"\n [maxLength]=\"ctx.field.maxLength\"\n >\n </yuv-string>\n <mat-hint>{{ ctx.description }}</mat-hint>\n\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- STRING CATALOG (STATIC) -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string:catalog\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-catalog\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [multiple]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n >\n </yuv-catalog>\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- STRING CATALOG (STATIC TRANSLATED) -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string:catalog:i18n\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-i18n-catalog\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [formControl]=\"ctx.ctrl\"\n [propertyName]=\"ctx.field.name\"\n [attr.data-name]=\"ctx.field.name\"\n [multiple]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n >\n </yuv-i18n-catalog>\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- ORGANIZATION -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string:organization\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-organization\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [multiselect]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n (userSelect)=\"ctx.field.dataMeta = $event\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n >\n </yuv-organization>\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- ORGANIZATION SET -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"string:organization:set\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n <yuv-organization-set\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [multiselect]=\"ctx.field.cardinality === 'multi' || ctx.situation === 'SEARCH'\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n >\n </yuv-organization-set>\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- INTEGER -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"integer\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n @if (ctx.situation !== 'SEARCH') {\n <yuv-number\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [precision]=\"ctx.field.precision\"\n [scale]=\"0\"\n [grouping]=\"ctx.field.grouping\"\n [minValue]=\"ctx.field.minValue\"\n [maxValue]=\"ctx.field.maxValue\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n >\n </yuv-number>\n } @else {\n <yuv-number-range\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [precision]=\"ctx.field.precision\"\n [scale]=\"0\"\n [grouping]=\"ctx.field.grouping\"\n [minValue]=\"ctx.field.minValue\"\n [maxValue]=\"ctx.field.maxValue\"\n [pattern]=\"ctx.field.pattern\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n ></yuv-number-range>\n }\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- DECIMAL -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"decimal\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n @if (ctx.situation !== 'SEARCH') {\n <yuv-number\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [precision]=\"ctx.field.precision\"\n [scale]=\"ctx.field.scale\"\n [grouping]=\"ctx.field.grouping\"\n [pattern]=\"ctx.field.pattern\"\n [minValue]=\"ctx.field.minValue\"\n [maxValue]=\"ctx.field.maxValue\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n >\n >\n </yuv-number>\n } @else {\n <yuv-number-range\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [precision]=\"ctx.field.precision\"\n [scale]=\"ctx.field.scale\"\n [pattern]=\"ctx.field.pattern\"\n [grouping]=\"ctx.field.grouping\"\n [minValue]=\"ctx.field.minValue\"\n [maxValue]=\"ctx.field.maxValue\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n ></yuv-number-range>\n }\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- BOOLEAN -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"boolean\" let-ctx>\n <mat-checkbox\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n [disabled]=\"ctx.field.readonly\"\n [indeterminate]=\"ctx.field.tristate === false ? false : ctx.ctrl.value !== true && ctx.ctrl.value !== false ? true : false\"\n >\n </mat-checkbox>\n <label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</label>\n</ng-template>\n\n<!-- BOOLEAN SWITCH -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"boolean:switch\" let-ctx>\n <mat-slide-toggle [formControl]=\"ctx.ctrl\" switch=\"true\" [attr.data-name]=\"ctx.field.name\" [disabled]=\"ctx.field.readonly\"></mat-slide-toggle>\n <label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</label>\n</ng-template>\n\n<!-- DATETIME -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"datetime\" let-ctx>\n <mat-form-field>\n <mat-label [yuvObjectMetadataElementLabel]=\"ctx\">{{ ctx.label }}</mat-label>\n @if (ctx.situation !== 'SEARCH') {\n <yuv-datetime\n [required]=\"ctx.field.required\"\n [readonly]=\"ctx.field.readonly\"\n [withTime]=\"ctx.field.resolution !== 'date'\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n ></yuv-datetime>\n } @else {\n <yuv-datetime-range\n [required]=\"ctx.field.required\"\n [situation]=\"ctx.situation\"\n [readonly]=\"ctx.field.readonly\"\n [withTime]=\"ctx.field.resolution !== 'date'\"\n [formControl]=\"ctx.ctrl\"\n [attr.data-name]=\"ctx.field.name\"\n ></yuv-datetime-range>\n }\n <mat-hint>{{ ctx.description }}</mat-hint>\n <mat-error [yuvObjectMetadataElementError]=\"ctx.ctrl\"></mat-error>\n </mat-form-field>\n</ng-template>\n\n<!-- TABLE -->\n<ng-template yuvMetadataElementTemplate=\"default\" propertyType=\"table\" let-ctx>\n <yuv-data-grid\n [situation]=\"ctx.situation\"\n [formControl]=\"ctx.ctrl\"\n [formElement]=\"ctx.field\"\n [attr.data-name]=\"ctx.field.name\"\n [classifications]=\"ctx.field.classifications\"\n [readonly]=\"ctx.field.readonly\"\n [formFieldContext]=\"ctx\"\n >\n </yuv-data-grid>\n</ng-template>\n","import { NgModule } from '@angular/core';\nimport { MetadataDefaultTemplatesComponent } from './metadata-default-templates/metadata-default-templates.component';\n\n@NgModule({\n imports: [MetadataDefaultTemplatesComponent],\n exports: [MetadataDefaultTemplatesComponent],\n})\nexport class YuvMetadataFormDefaultsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -95,7 +95,7 @@ class DefaultApplyFlavorComponent extends AbstractApplyObjectFlavorComponent {
|
|
|
95
95
|
#loadForm(f) {
|
|
96
96
|
this.busyLoading.set(true);
|
|
97
97
|
this.#system
|
|
98
|
-
.getObjectTypeForm(f.sot, Situation.
|
|
98
|
+
.getObjectTypeForm(f.sot, Situation.CREATE)
|
|
99
99
|
.pipe(finalize(() => this.busyLoading.set(false)))
|
|
100
100
|
.subscribe({
|
|
101
101
|
next: (form) => {
|