@vgip/meta-ui 1.7.0 → 1.7.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{esm2020 → esm2022}/lib/common/metaAutofocus.directive.mjs +4 -4
- package/{esm2020 → esm2022}/lib/common/metaIcons.pipe.mjs +4 -4
- package/{esm2020 → esm2022}/lib/common/metaModel.pipe.mjs +4 -4
- package/{esm2020 → esm2022}/lib/common/metaNormalizer.mjs +16 -1
- package/{esm2020 → esm2022}/lib/common/metaStripHtml.pipe.mjs +4 -4
- package/{esm2020 → esm2022}/lib/fieldAbstract.mjs +4 -4
- package/{esm2020 → esm2022}/lib/fieldBoolean/index.mjs +4 -4
- package/{esm2020 → esm2022}/lib/fieldComposite/index.mjs +4 -4
- package/{esm2020 → esm2022}/lib/fieldDatetime/index.mjs +4 -4
- package/{esm2020 → esm2022}/lib/fieldHidden/index.mjs +4 -4
- package/{esm2020 → esm2022}/lib/fieldInput/index.mjs +4 -4
- package/{esm2020 → esm2022}/lib/fieldList/index.mjs +4 -4
- package/{esm2020 → esm2022}/lib/fieldRadio/index.mjs +4 -4
- package/esm2022/lib/fieldReference/index.mjs +825 -0
- package/esm2022/lib/fieldRichtext/index.mjs +95 -0
- package/{esm2020 → esm2022}/lib/fieldSelect/index.mjs +4 -4
- package/{esm2020 → esm2022}/lib/fieldText/index.mjs +4 -4
- package/{esm2020 → esm2022}/lib/fieldUnknown/index.mjs +4 -4
- package/esm2022/lib/index.mjs +163 -0
- package/{esm2020 → esm2022}/lib/layout/index.mjs +4 -4
- package/{esm2020 → esm2022}/lib/metaField/index.mjs +7 -7
- package/{esm2020 → esm2022}/lib/refDialog/index.mjs +4 -4
- package/{esm2020 → esm2022}/lib/resource/index.mjs +4 -4
- package/{esm2020 → esm2022}/lib/resourceCard/index.mjs +4 -4
- package/{esm2020 → esm2022}/lib/services/metaContext/index.mjs +4 -4
- package/{esm2020 → esm2022}/lib/services/metaMsg/index.mjs +4 -4
- package/{esm2020 → esm2022}/lib/services/metaReference/index.mjs +4 -4
- package/{esm2020 → esm2022}/lib/services/metaResource/index.mjs +4 -4
- package/{esm2020 → esm2022}/lib/services/metaResource/metaHttpClient.mjs +4 -4
- package/{esm2020 → esm2022}/lib/services/metaTracker/index.mjs +4 -4
- package/{esm2020 → esm2022}/lib/services/resourceDrafts/index.mjs +4 -4
- package/{fesm2020/vgip-meta-ui-fieldAbstract-f7d80db6.mjs → fesm2022/vgip-meta-ui-fieldAbstract-ce47588e.mjs} +4 -4
- package/{fesm2020/vgip-meta-ui-fieldAbstract-f7d80db6.mjs.map → fesm2022/vgip-meta-ui-fieldAbstract-ce47588e.mjs.map} +1 -1
- package/{fesm2020/vgip-meta-ui-index-6e77c362.mjs → fesm2022/vgip-meta-ui-index-1467556e.mjs} +4 -4
- package/{fesm2020/vgip-meta-ui-index-6e77c362.mjs.map → fesm2022/vgip-meta-ui-index-1467556e.mjs.map} +1 -1
- package/{fesm2015/vgip-meta-ui-index-1d2b4c69.mjs → fesm2022/vgip-meta-ui-index-5509b1d2.mjs} +7 -7
- package/{fesm2020/vgip-meta-ui-index-1d2b4c69.mjs.map → fesm2022/vgip-meta-ui-index-5509b1d2.mjs.map} +1 -1
- package/{fesm2015/vgip-meta-ui-index-62be0e3e.mjs → fesm2022/vgip-meta-ui-index-5d664781.mjs} +13 -13
- package/fesm2022/vgip-meta-ui-index-5d664781.mjs.map +1 -0
- package/{fesm2020/vgip-meta-ui-index-4fcefde0.mjs → fesm2022/vgip-meta-ui-index-617c4bac.mjs} +43 -28
- package/fesm2022/vgip-meta-ui-index-617c4bac.mjs.map +1 -0
- package/fesm2022/vgip-meta-ui-index-6dcb4942.mjs +24 -0
- package/{fesm2015/vgip-meta-ui-index-476b6cb7.mjs.map → fesm2022/vgip-meta-ui-index-6dcb4942.mjs.map} +1 -1
- package/{fesm2015/vgip-meta-ui-index-2b20afc8.mjs → fesm2022/vgip-meta-ui-index-78d7b9be.mjs} +6 -6
- package/{fesm2020/vgip-meta-ui-index-2b20afc8.mjs.map → fesm2022/vgip-meta-ui-index-78d7b9be.mjs.map} +1 -1
- package/fesm2022/vgip-meta-ui-index-85109066.mjs +97 -0
- package/fesm2022/vgip-meta-ui-index-85109066.mjs.map +1 -0
- package/{fesm2020/vgip-meta-ui-index-f7370960.mjs → fesm2022/vgip-meta-ui-index-86211382.mjs} +7 -7
- package/{fesm2020/vgip-meta-ui-index-f7370960.mjs.map → fesm2022/vgip-meta-ui-index-86211382.mjs.map} +1 -1
- package/{fesm2015/vgip-meta-ui-index-640f8e62.mjs → fesm2022/vgip-meta-ui-index-adb42356.mjs} +6 -6
- package/{fesm2020/vgip-meta-ui-index-640f8e62.mjs.map → fesm2022/vgip-meta-ui-index-adb42356.mjs.map} +1 -1
- package/{fesm2020/vgip-meta-ui-index-87041aad.mjs → fesm2022/vgip-meta-ui-index-cb0d4f82.mjs} +5 -5
- package/{fesm2015/vgip-meta-ui-index-87041aad.mjs.map → fesm2022/vgip-meta-ui-index-cb0d4f82.mjs.map} +1 -1
- package/{fesm2015/vgip-meta-ui-index-a76ba482.mjs → fesm2022/vgip-meta-ui-index-cfb67422.mjs} +9 -10
- package/{fesm2020/vgip-meta-ui-index-aee28354.mjs.map → fesm2022/vgip-meta-ui-index-cfb67422.mjs.map} +1 -1
- package/{fesm2020/vgip-meta-ui-index-81aa79dc.mjs → fesm2022/vgip-meta-ui-index-eba0dd05.mjs} +7 -7
- package/{fesm2020/vgip-meta-ui-index-81aa79dc.mjs.map → fesm2022/vgip-meta-ui-index-eba0dd05.mjs.map} +1 -1
- package/{fesm2015/vgip-meta-ui-index-bf5b6c0f.mjs → fesm2022/vgip-meta-ui-index-eef5fc0f.mjs} +6 -6
- package/{fesm2020/vgip-meta-ui-index-bf5b6c0f.mjs.map → fesm2022/vgip-meta-ui-index-eef5fc0f.mjs.map} +1 -1
- package/{fesm2020/vgip-meta-ui-index-b92a559b.mjs → fesm2022/vgip-meta-ui-index-f0fa2cbd.mjs} +6 -6
- package/{fesm2020/vgip-meta-ui-index-b92a559b.mjs.map → fesm2022/vgip-meta-ui-index-f0fa2cbd.mjs.map} +1 -1
- package/{fesm2020/vgip-meta-ui-index-301b28cd.mjs → fesm2022/vgip-meta-ui-index-f5e42e1d.mjs} +20 -20
- package/{fesm2020/vgip-meta-ui-index-301b28cd.mjs.map → fesm2022/vgip-meta-ui-index-f5e42e1d.mjs.map} +1 -1
- package/{fesm2015/vgip-meta-ui-metaModel.pipe-4b068359.mjs → fesm2022/vgip-meta-ui-metaModel.pipe-3487ede2.mjs} +4 -4
- package/{fesm2015/vgip-meta-ui-metaModel.pipe-4b068359.mjs.map → fesm2022/vgip-meta-ui-metaModel.pipe-3487ede2.mjs.map} +1 -1
- package/{fesm2020 → fesm2022}/vgip-meta-ui.mjs +96 -91
- package/{fesm2015 → fesm2022}/vgip-meta-ui.mjs.map +1 -1
- package/lib/common/metaAutofocus.directive.d.ts +1 -1
- package/lib/fieldBoolean/index.d.ts +1 -1
- package/lib/fieldComposite/index.d.ts +1 -1
- package/lib/fieldRadio/index.d.ts +1 -1
- package/lib/fieldRichtext/index.d.ts +6 -8
- package/lib/fieldText/index.d.ts +1 -1
- package/lib/layout/index.d.ts +1 -1
- package/lib/metaField/index.d.ts +1 -1
- package/lib/resource/index.d.ts +1 -1
- package/lib/resourceCard/index.d.ts +1 -1
- package/package.json +8 -14
- package/esm2020/lib/fieldReference/index.mjs +0 -825
- package/esm2020/lib/fieldRichtext/index.mjs +0 -85
- package/esm2020/lib/index.mjs +0 -158
- package/fesm2015/vgip-meta-ui-fieldAbstract-f7d80db6.mjs +0 -397
- package/fesm2015/vgip-meta-ui-fieldAbstract-f7d80db6.mjs.map +0 -1
- package/fesm2015/vgip-meta-ui-index-1d2b4c69.mjs.map +0 -1
- package/fesm2015/vgip-meta-ui-index-2737c81e.mjs +0 -1900
- package/fesm2015/vgip-meta-ui-index-2737c81e.mjs.map +0 -1
- package/fesm2015/vgip-meta-ui-index-2b20afc8.mjs.map +0 -1
- package/fesm2015/vgip-meta-ui-index-3eefa50a.mjs +0 -75
- package/fesm2015/vgip-meta-ui-index-3eefa50a.mjs.map +0 -1
- package/fesm2015/vgip-meta-ui-index-476b6cb7.mjs +0 -24
- package/fesm2015/vgip-meta-ui-index-4b8d731c.mjs +0 -151
- package/fesm2015/vgip-meta-ui-index-4b8d731c.mjs.map +0 -1
- package/fesm2015/vgip-meta-ui-index-4ecdd48a.mjs +0 -72
- package/fesm2015/vgip-meta-ui-index-4ecdd48a.mjs.map +0 -1
- package/fesm2015/vgip-meta-ui-index-62be0e3e.mjs.map +0 -1
- package/fesm2015/vgip-meta-ui-index-640f8e62.mjs.map +0 -1
- package/fesm2015/vgip-meta-ui-index-695384af.mjs +0 -88
- package/fesm2015/vgip-meta-ui-index-695384af.mjs.map +0 -1
- package/fesm2015/vgip-meta-ui-index-6e77c362.mjs +0 -130
- package/fesm2015/vgip-meta-ui-index-6e77c362.mjs.map +0 -1
- package/fesm2015/vgip-meta-ui-index-81aa79dc.mjs +0 -460
- package/fesm2015/vgip-meta-ui-index-81aa79dc.mjs.map +0 -1
- package/fesm2015/vgip-meta-ui-index-87041aad.mjs +0 -23
- package/fesm2015/vgip-meta-ui-index-a76ba482.mjs.map +0 -1
- package/fesm2015/vgip-meta-ui-index-bf5b6c0f.mjs.map +0 -1
- package/fesm2015/vgip-meta-ui.mjs +0 -525
- package/fesm2020/vgip-meta-ui-index-1d2b4c69.mjs +0 -68
- package/fesm2020/vgip-meta-ui-index-2b20afc8.mjs +0 -368
- package/fesm2020/vgip-meta-ui-index-476b6cb7.mjs +0 -24
- package/fesm2020/vgip-meta-ui-index-476b6cb7.mjs.map +0 -1
- package/fesm2020/vgip-meta-ui-index-4c4a4daf.mjs +0 -858
- package/fesm2020/vgip-meta-ui-index-4c4a4daf.mjs.map +0 -1
- package/fesm2020/vgip-meta-ui-index-4fcefde0.mjs.map +0 -1
- package/fesm2020/vgip-meta-ui-index-640f8e62.mjs +0 -95
- package/fesm2020/vgip-meta-ui-index-695384af.mjs +0 -88
- package/fesm2020/vgip-meta-ui-index-695384af.mjs.map +0 -1
- package/fesm2020/vgip-meta-ui-index-87041aad.mjs.map +0 -1
- package/fesm2020/vgip-meta-ui-index-aee28354.mjs +0 -497
- package/fesm2020/vgip-meta-ui-index-bf5b6c0f.mjs +0 -61
- package/fesm2020/vgip-meta-ui-metaModel.pipe-4b068359.mjs +0 -28
- package/fesm2020/vgip-meta-ui-metaModel.pipe-4b068359.mjs.map +0 -1
- package/fesm2020/vgip-meta-ui-relativeTimeBuilder-31791ce4.mjs +0 -51
- package/fesm2020/vgip-meta-ui-relativeTimeBuilder-31791ce4.mjs.map +0 -1
- package/fesm2020/vgip-meta-ui.mjs.map +0 -1
- /package/{esm2020 → esm2022}/lib/common/fieldNormalizer/boolean.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/fieldNormalizer/datetime.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/fieldNormalizer/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/fieldNormalizer/number.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/fieldNormalizer/options.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/fieldNormalizer/radio.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/fieldNormalizer/reference.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/fieldNormalizer/richtext.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/fieldNormalizer/string.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/fieldNormalizer/text.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/fieldNormalizer/uniqueNameFilter.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/utils/colorThemes.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/utils/indexedDbStore/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/utils/relativeTimeBuilder.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/utils/resourceCardLabel.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/utils/smartProp.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/utils/templateBuilder.mjs +0 -0
- /package/{esm2020 → esm2022}/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/vgip-meta-ui.mjs +0 -0
- /package/{fesm2015 → fesm2022}/vgip-meta-ui-relativeTimeBuilder-31791ce4.mjs +0 -0
- /package/{fesm2015 → fesm2022}/vgip-meta-ui-relativeTimeBuilder-31791ce4.mjs.map +0 -0
|
@@ -1,151 +0,0 @@
|
|
|
1
|
-
import { __awaiter } from 'tslib';
|
|
2
|
-
import * as i0 from '@angular/core';
|
|
3
|
-
import { Directive, EventEmitter, Component, Input, Output, ViewChild } from '@angular/core';
|
|
4
|
-
import { F as FieldAbstract } from './vgip-meta-ui-fieldAbstract-f7d80db6.mjs';
|
|
5
|
-
|
|
6
|
-
const FMAP = (fType) => __awaiter(void 0, void 0, void 0, function* () {
|
|
7
|
-
switch (fType) {
|
|
8
|
-
case '':
|
|
9
|
-
case null:
|
|
10
|
-
case undefined:
|
|
11
|
-
case 'number':
|
|
12
|
-
// case 'datetime':
|
|
13
|
-
// case 'time':
|
|
14
|
-
// case 'date':
|
|
15
|
-
case 'string': { // eslint-disable-line no-fallthrough
|
|
16
|
-
// return FieldInput;
|
|
17
|
-
return import('./vgip-meta-ui-index-81aa79dc.mjs').then(m => m.FieldInput);
|
|
18
|
-
}
|
|
19
|
-
case 'textarea':
|
|
20
|
-
case 'text': {
|
|
21
|
-
// return FieldText;
|
|
22
|
-
return import('./vgip-meta-ui-index-1d2b4c69.mjs').then(m => m.FieldText);
|
|
23
|
-
}
|
|
24
|
-
case 'select':
|
|
25
|
-
case 'options': {
|
|
26
|
-
// return FieldSelect;
|
|
27
|
-
return import('./vgip-meta-ui-index-a76ba482.mjs').then(m => m.FieldSelect);
|
|
28
|
-
}
|
|
29
|
-
case 'reference': {
|
|
30
|
-
// return FieldReference;
|
|
31
|
-
return import('./vgip-meta-ui-index-62be0e3e.mjs').then(function (n) { return n.i; }).then(m => m.FieldReference);
|
|
32
|
-
}
|
|
33
|
-
case 'composite': {
|
|
34
|
-
// return FieldComposite;
|
|
35
|
-
return import('./vgip-meta-ui-index-4ecdd48a.mjs').then(m => m.FieldComposite);
|
|
36
|
-
}
|
|
37
|
-
case 'boolean': {
|
|
38
|
-
// return FieldBoolean;
|
|
39
|
-
return import('./vgip-meta-ui-index-bf5b6c0f.mjs').then(m => m.FieldBoolean);
|
|
40
|
-
}
|
|
41
|
-
case 'radio': {
|
|
42
|
-
// return FieldRadio;
|
|
43
|
-
return import('./vgip-meta-ui-index-640f8e62.mjs').then(m => m.FieldRadio);
|
|
44
|
-
}
|
|
45
|
-
case 'list': {
|
|
46
|
-
// return FieldList;
|
|
47
|
-
return import('./vgip-meta-ui-index-3eefa50a.mjs').then(m => m.FieldList);
|
|
48
|
-
}
|
|
49
|
-
case 'richtext': {
|
|
50
|
-
// return FieldRichtext;
|
|
51
|
-
return import('./vgip-meta-ui-index-695384af.mjs').then(m => m.FieldRichtext);
|
|
52
|
-
}
|
|
53
|
-
case 'datetime':
|
|
54
|
-
case 'time':
|
|
55
|
-
case 'date': {
|
|
56
|
-
// return FieldDatetime;
|
|
57
|
-
return import('./vgip-meta-ui-index-2b20afc8.mjs').then(m => m.FieldDatetime);
|
|
58
|
-
}
|
|
59
|
-
case 'hidden': {
|
|
60
|
-
return import('./vgip-meta-ui-index-87041aad.mjs').then(m => m.FieldHidden);
|
|
61
|
-
}
|
|
62
|
-
default: {
|
|
63
|
-
// return FieldUnknown;
|
|
64
|
-
return import('./vgip-meta-ui-index-476b6cb7.mjs').then(m => m.FieldUnknown);
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
});
|
|
68
|
-
class MetaFieldContentDirective {
|
|
69
|
-
constructor(viewContainerRef) {
|
|
70
|
-
this.viewContainerRef = viewContainerRef;
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
MetaFieldContentDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: MetaFieldContentDirective, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
74
|
-
MetaFieldContentDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.8", type: MetaFieldContentDirective, selector: "[metaFieldContent]", ngImport: i0 });
|
|
75
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: MetaFieldContentDirective, decorators: [{
|
|
76
|
-
type: Directive,
|
|
77
|
-
args: [{
|
|
78
|
-
selector: '[metaFieldContent]'
|
|
79
|
-
}]
|
|
80
|
-
}], ctorParameters: function () { return [{ type: i0.ViewContainerRef }]; } });
|
|
81
|
-
class MetaField extends FieldAbstract {
|
|
82
|
-
constructor(el) {
|
|
83
|
-
super();
|
|
84
|
-
this.el = el;
|
|
85
|
-
// eslint-disable-next-line
|
|
86
|
-
this.onChange = new EventEmitter();
|
|
87
|
-
// eslint-disable-next-line
|
|
88
|
-
this.onLeave = new EventEmitter();
|
|
89
|
-
}
|
|
90
|
-
ngOnInit() {
|
|
91
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
92
|
-
const component = yield FMAP(this.meta.type);
|
|
93
|
-
this.fieldContent.viewContainerRef.clear();
|
|
94
|
-
const componentRef = this.fieldContent.viewContainerRef.createComponent(component);
|
|
95
|
-
const field = componentRef.instance;
|
|
96
|
-
if (component.setup) {
|
|
97
|
-
// console.log('setup', {a: this.el.nativeElement.parentNode.parentNode})
|
|
98
|
-
component.setup(field, this.parent, this.meta);
|
|
99
|
-
}
|
|
100
|
-
field.meta = this.meta;
|
|
101
|
-
field.parent = this.parent;
|
|
102
|
-
field.integrationCode = (this.integrationCode || '').toLowerCase();
|
|
103
|
-
field.resourceType = (this.resourceType || '');
|
|
104
|
-
field.index = this.index;
|
|
105
|
-
field.scope = this.scope;
|
|
106
|
-
field.elementRef = this.el;
|
|
107
|
-
field.onChange = this.onChange;
|
|
108
|
-
field.onLeave = this.onLeave;
|
|
109
|
-
field.preview = this.preview;
|
|
110
|
-
field.theme = this.theme;
|
|
111
|
-
Object.defineProperty(field.meta, 'unset', {
|
|
112
|
-
value: false,
|
|
113
|
-
writable: true,
|
|
114
|
-
configurable: true,
|
|
115
|
-
enumerable: false
|
|
116
|
-
});
|
|
117
|
-
});
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
MetaField.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: MetaField, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
121
|
-
MetaField.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: MetaField, selector: "vgip-meta-field", inputs: { meta: "meta", parent: "parent", integrationCode: "integrationCode", resourceType: "resourceType", index: "index", scope: "scope", preview: "preview", theme: "theme" }, outputs: { onChange: "onChange", onLeave: "onLeave" }, viewQueries: [{ propertyName: "fieldContent", first: true, predicate: MetaFieldContentDirective, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: '<ng-template metaFieldContent>Loading</ng-template>', isInline: true, styles: [":host ::ng-deep label.wrapper{padding:0;pointer-events:initial;position:initial;top:initial;transition:none}@media only screen and (max-width: 575px){:host ::ng-deep .hidden-mobile{display:none}}@media only screen and (min-width: 576px){:host ::ng-deep .hidden-desktop{display:none}}:host ::ng-deep .Vlt-form__element>.Vlt-label,:host ::ng-deep .Vlt-form__element>label>.Vlt-label{margin-top:-6px}:host ::ng-deep .Vlt-form__element .Vlt-form__element__hint{color:var(--vgip-meta-input-hint-color)}:host ::ng-deep .Vlt-form__element .Vlt-input input,:host ::ng-deep .Vlt-form__element .Vlt-select select,:host ::ng-deep .Vlt-form__element .Vlt-textarea textarea{color:var(--vgip-meta-input-color)}@media (hover: none){:host ::ng-deep .Vlt-form__element .Vlt-input input,:host ::ng-deep .Vlt-form__element .Vlt-select select,:host ::ng-deep .Vlt-form__element .Vlt-textarea textarea{font-size:16px}}:host ::ng-deep .Vlt-form__element .Vlt-input input::placeholder,:host ::ng-deep .Vlt-form__element .Vlt-select select::placeholder,:host ::ng-deep .Vlt-form__element .Vlt-textarea textarea::placeholder{color:var(--vgip-meta-input-placeholder-color)}:host ::ng-deep .Vlt-form__element label{color:var(--vgip-meta-input-label-color)}:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-form-error-style,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-input input,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-input input.ng-untouched:invalid,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-select select.ng-untouched:invalid,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-textarea textarea,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-textarea textarea.ng-untouched:invalid,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-custom-select__input:invalid,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-radio input.ng-untouched:invalid+.Vlt-radio__icon,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-radio input.ng-untouched:invalid+.Vlt-checkbox__icon,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-checkbox input.ng-untouched:invalid+.Vlt-radio__icon,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-checkbox input.ng-untouched:invalid+.Vlt-checkbox__icon{background:var(--vgip-meta-input-bg-color);border-color:var(--vgip-meta-input-border-color)}:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-form-error-style:disabled,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-input input:disabled,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-input input.ng-untouched:invalid:disabled,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-select select.ng-untouched:invalid:disabled,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-textarea textarea:disabled,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-textarea textarea.ng-untouched:invalid:disabled,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-custom-select__input:invalid:disabled,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-radio input.ng-untouched:invalid+.Vlt-radio__icon:disabled,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-radio input.ng-untouched:invalid+.Vlt-checkbox__icon:disabled,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-checkbox input.ng-untouched:invalid+.Vlt-radio__icon:disabled,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-checkbox input.ng-untouched:invalid+.Vlt-checkbox__icon:disabled{background:var(--vgip-meta-input-disabled-bg-color);border-color:var(--vgip-meta-input-disabled-border-color)}:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-form-error-style:hover,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-form-error-style:focus,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-form-error-style .active,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-input input:hover,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-input input:focus,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-input input .active,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-input input.ng-untouched:invalid:hover,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-input input.ng-untouched:invalid:focus,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-input input.ng-untouched:invalid .active,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-select select.ng-untouched:invalid:hover,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-select select.ng-untouched:invalid:focus,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-select select.ng-untouched:invalid .active,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-textarea textarea:hover,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-textarea textarea:focus,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-textarea textarea .active,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-textarea textarea.ng-untouched:invalid:hover,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-textarea textarea.ng-untouched:invalid:focus,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-textarea textarea.ng-untouched:invalid .active,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-custom-select__input:invalid:hover,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-custom-select__input:invalid:focus,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-custom-select__input:invalid .active,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-radio input.ng-untouched:invalid+.Vlt-radio__icon:hover,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-radio input.ng-untouched:invalid+.Vlt-radio__icon:focus,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-radio input.ng-untouched:invalid+.Vlt-radio__icon .active,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-radio input.ng-untouched:invalid+.Vlt-checkbox__icon:hover,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-radio input.ng-untouched:invalid+.Vlt-checkbox__icon:focus,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-radio input.ng-untouched:invalid+.Vlt-checkbox__icon .active,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-checkbox input.ng-untouched:invalid+.Vlt-radio__icon:hover,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-checkbox input.ng-untouched:invalid+.Vlt-radio__icon:focus,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-checkbox input.ng-untouched:invalid+.Vlt-radio__icon .active,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-checkbox input.ng-untouched:invalid+.Vlt-checkbox__icon:hover,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-checkbox input.ng-untouched:invalid+.Vlt-checkbox__icon:focus,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-checkbox input.ng-untouched:invalid+.Vlt-checkbox__icon .active{border-color:var(--vgip-meta-input-active-border-color)}:host ::ng-deep .Vlt-form__element.Vlt-form__element--error .Vlt-input input:focus,:host ::ng-deep .Vlt-form__element.Vlt-form__element--error .Vlt-select select:focus,:host ::ng-deep .Vlt-form__element.Vlt-form__element--error .Vlt-textarea textarea:focus,:host ::ng-deep .Vlt-form__element.Vlt-form__element--error .Vlt-custom-select__input:focus{border-color:#f25a6b}:host ::ng-deep .Vlt-dropdown__link{padding:12px}:host ::ng-deep .Vlt-dropdown__link svg{margin-left:0}:host ::ng-deep .Vlt-dropdown__link small{line-height:inherit}:host ::ng-deep .Vlt-dropdown__link.Vlt-dropdown__link--selected:after{width:20px;top:14px;background:var(--vgip-meta-dropdown-check-icon) no-repeat right center;background-size:contain}:host ::ng-deep .Vlt-dropdown__block{padding:2px 16px}:host ::ng-deep .meta-field-reference .Vlt-dropdown__link.has-type.Vlt-dropdown__link--selected:after{position:initial}:host ::ng-deep .Vlt-dropdown__panel__content{background:var(--vgip-meta-dropdown-bg-color);box-shadow:var(--vgip-meta-dropdown-shadow)}:host ::ng-deep .Vlt-dropdown__panel__content .Vlt-dropdown__link,:host ::ng-deep .Vlt-dropdown__panel__content .Vlt-dropdown__block{color:var(--vgip-meta-input-color)}:host ::ng-deep .Vlt-dropdown__panel__content .Vlt-dropdown__scroll::-webkit-scrollbar{width:8px}:host ::ng-deep .Vlt-dropdown__panel__content .Vlt-dropdown__scroll::-webkit-scrollbar-thumb{background-color:var(--vgip-meta-scrollbar-color);border:2px solid transparent;border-radius:6px;background-clip:content-box}:host ::ng-deep .Vlt-dropdown__panel__content.suggestions{background:var(--vgip-meta-suggestions-bg-color)}:host ::ng-deep .Vlt-dropdown__panel{z-index:999}:host ::ng-deep .Vlt-dropdown__panel__content--scroll-area{padding:0}:host ::ng-deep .Vlt-composite__append--icon{bottom:0;height:initial}:host ::ng-deep .search-progress{display:block;position:relative;width:100%;height:3px;margin-top:-3px;padding-top:0!important;margin-bottom:0!important}:host ::ng-deep .search-progress .container{display:block;position:relative;overflow:hidden;width:100%;height:3px;transform:translate(0) scale(1)}:host ::ng-deep .search-progress .container .bar{position:absolute;left:0;top:0;bottom:0;width:100%;height:3px;border-radius:50%;transition:all .3s linear;animation:query .9s infinite cubic-bezier(.3,.6,.6,1)}@keyframes query{0%{opacity:1;transform:translate(35%) scaleX(.3)}to{opacity:0;transform:translate(-50%) scaleX(0)}}::ng-deep vgip-meta-field.shown vgip-meta-field{display:initial}::ng-deep vgip-meta-field .vgip-meta-field-preview{display:flex;flex-direction:row;padding-bottom:5px;padding-top:5px;margin-left:10px;border-bottom:1px solid #e7ebee}::ng-deep vgip-meta-field .vgip-meta-field-preview .vgip-meta-field-label{flex:1 1 100%;max-width:20%;max-height:100%;box-sizing:border-box;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin-right:2px}::ng-deep vgip-meta-field .vgip-meta-field-preview .vgip-meta-field-value{min-width:0;width:0;box-sizing:border-box;flex:1;font-weight:700}\n"], dependencies: [{ kind: "directive", type: MetaFieldContentDirective, selector: "[metaFieldContent]" }] });
|
|
122
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: MetaField, decorators: [{
|
|
123
|
-
type: Component,
|
|
124
|
-
args: [{ selector: 'vgip-meta-field', template: '<ng-template metaFieldContent>Loading</ng-template>', styles: [":host ::ng-deep label.wrapper{padding:0;pointer-events:initial;position:initial;top:initial;transition:none}@media only screen and (max-width: 575px){:host ::ng-deep .hidden-mobile{display:none}}@media only screen and (min-width: 576px){:host ::ng-deep .hidden-desktop{display:none}}:host ::ng-deep .Vlt-form__element>.Vlt-label,:host ::ng-deep .Vlt-form__element>label>.Vlt-label{margin-top:-6px}:host ::ng-deep .Vlt-form__element .Vlt-form__element__hint{color:var(--vgip-meta-input-hint-color)}:host ::ng-deep .Vlt-form__element .Vlt-input input,:host ::ng-deep .Vlt-form__element .Vlt-select select,:host ::ng-deep .Vlt-form__element .Vlt-textarea textarea{color:var(--vgip-meta-input-color)}@media (hover: none){:host ::ng-deep .Vlt-form__element .Vlt-input input,:host ::ng-deep .Vlt-form__element .Vlt-select select,:host ::ng-deep .Vlt-form__element .Vlt-textarea textarea{font-size:16px}}:host ::ng-deep .Vlt-form__element .Vlt-input input::placeholder,:host ::ng-deep .Vlt-form__element .Vlt-select select::placeholder,:host ::ng-deep .Vlt-form__element .Vlt-textarea textarea::placeholder{color:var(--vgip-meta-input-placeholder-color)}:host ::ng-deep .Vlt-form__element label{color:var(--vgip-meta-input-label-color)}:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-form-error-style,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-input input,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-input input.ng-untouched:invalid,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-select select.ng-untouched:invalid,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-textarea textarea,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-textarea textarea.ng-untouched:invalid,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-custom-select__input:invalid,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-radio input.ng-untouched:invalid+.Vlt-radio__icon,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-radio input.ng-untouched:invalid+.Vlt-checkbox__icon,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-checkbox input.ng-untouched:invalid+.Vlt-radio__icon,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-checkbox input.ng-untouched:invalid+.Vlt-checkbox__icon{background:var(--vgip-meta-input-bg-color);border-color:var(--vgip-meta-input-border-color)}:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-form-error-style:disabled,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-input input:disabled,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-input input.ng-untouched:invalid:disabled,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-select select.ng-untouched:invalid:disabled,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-textarea textarea:disabled,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-textarea textarea.ng-untouched:invalid:disabled,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-custom-select__input:invalid:disabled,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-radio input.ng-untouched:invalid+.Vlt-radio__icon:disabled,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-radio input.ng-untouched:invalid+.Vlt-checkbox__icon:disabled,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-checkbox input.ng-untouched:invalid+.Vlt-radio__icon:disabled,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-checkbox input.ng-untouched:invalid+.Vlt-checkbox__icon:disabled{background:var(--vgip-meta-input-disabled-bg-color);border-color:var(--vgip-meta-input-disabled-border-color)}:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-form-error-style:hover,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-form-error-style:focus,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-form-error-style .active,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-input input:hover,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-input input:focus,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-input input .active,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-input input.ng-untouched:invalid:hover,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-input input.ng-untouched:invalid:focus,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-input input.ng-untouched:invalid .active,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-select select.ng-untouched:invalid:hover,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-select select.ng-untouched:invalid:focus,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-select select.ng-untouched:invalid .active,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-textarea textarea:hover,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-textarea textarea:focus,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-textarea textarea .active,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-textarea textarea.ng-untouched:invalid:hover,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-textarea textarea.ng-untouched:invalid:focus,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-textarea textarea.ng-untouched:invalid .active,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-custom-select__input:invalid:hover,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-custom-select__input:invalid:focus,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-custom-select__input:invalid .active,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-radio input.ng-untouched:invalid+.Vlt-radio__icon:hover,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-radio input.ng-untouched:invalid+.Vlt-radio__icon:focus,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-radio input.ng-untouched:invalid+.Vlt-radio__icon .active,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-radio input.ng-untouched:invalid+.Vlt-checkbox__icon:hover,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-radio input.ng-untouched:invalid+.Vlt-checkbox__icon:focus,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-radio input.ng-untouched:invalid+.Vlt-checkbox__icon .active,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-checkbox input.ng-untouched:invalid+.Vlt-radio__icon:hover,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-checkbox input.ng-untouched:invalid+.Vlt-radio__icon:focus,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-checkbox input.ng-untouched:invalid+.Vlt-radio__icon .active,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-checkbox input.ng-untouched:invalid+.Vlt-checkbox__icon:hover,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-checkbox input.ng-untouched:invalid+.Vlt-checkbox__icon:focus,:host ::ng-deep .Vlt-form__element:not(.Vlt-form__element--error) .Vlt-checkbox input.ng-untouched:invalid+.Vlt-checkbox__icon .active{border-color:var(--vgip-meta-input-active-border-color)}:host ::ng-deep .Vlt-form__element.Vlt-form__element--error .Vlt-input input:focus,:host ::ng-deep .Vlt-form__element.Vlt-form__element--error .Vlt-select select:focus,:host ::ng-deep .Vlt-form__element.Vlt-form__element--error .Vlt-textarea textarea:focus,:host ::ng-deep .Vlt-form__element.Vlt-form__element--error .Vlt-custom-select__input:focus{border-color:#f25a6b}:host ::ng-deep .Vlt-dropdown__link{padding:12px}:host ::ng-deep .Vlt-dropdown__link svg{margin-left:0}:host ::ng-deep .Vlt-dropdown__link small{line-height:inherit}:host ::ng-deep .Vlt-dropdown__link.Vlt-dropdown__link--selected:after{width:20px;top:14px;background:var(--vgip-meta-dropdown-check-icon) no-repeat right center;background-size:contain}:host ::ng-deep .Vlt-dropdown__block{padding:2px 16px}:host ::ng-deep .meta-field-reference .Vlt-dropdown__link.has-type.Vlt-dropdown__link--selected:after{position:initial}:host ::ng-deep .Vlt-dropdown__panel__content{background:var(--vgip-meta-dropdown-bg-color);box-shadow:var(--vgip-meta-dropdown-shadow)}:host ::ng-deep .Vlt-dropdown__panel__content .Vlt-dropdown__link,:host ::ng-deep .Vlt-dropdown__panel__content .Vlt-dropdown__block{color:var(--vgip-meta-input-color)}:host ::ng-deep .Vlt-dropdown__panel__content .Vlt-dropdown__scroll::-webkit-scrollbar{width:8px}:host ::ng-deep .Vlt-dropdown__panel__content .Vlt-dropdown__scroll::-webkit-scrollbar-thumb{background-color:var(--vgip-meta-scrollbar-color);border:2px solid transparent;border-radius:6px;background-clip:content-box}:host ::ng-deep .Vlt-dropdown__panel__content.suggestions{background:var(--vgip-meta-suggestions-bg-color)}:host ::ng-deep .Vlt-dropdown__panel{z-index:999}:host ::ng-deep .Vlt-dropdown__panel__content--scroll-area{padding:0}:host ::ng-deep .Vlt-composite__append--icon{bottom:0;height:initial}:host ::ng-deep .search-progress{display:block;position:relative;width:100%;height:3px;margin-top:-3px;padding-top:0!important;margin-bottom:0!important}:host ::ng-deep .search-progress .container{display:block;position:relative;overflow:hidden;width:100%;height:3px;transform:translate(0) scale(1)}:host ::ng-deep .search-progress .container .bar{position:absolute;left:0;top:0;bottom:0;width:100%;height:3px;border-radius:50%;transition:all .3s linear;animation:query .9s infinite cubic-bezier(.3,.6,.6,1)}@keyframes query{0%{opacity:1;transform:translate(35%) scaleX(.3)}to{opacity:0;transform:translate(-50%) scaleX(0)}}::ng-deep vgip-meta-field.shown vgip-meta-field{display:initial}::ng-deep vgip-meta-field .vgip-meta-field-preview{display:flex;flex-direction:row;padding-bottom:5px;padding-top:5px;margin-left:10px;border-bottom:1px solid #e7ebee}::ng-deep vgip-meta-field .vgip-meta-field-preview .vgip-meta-field-label{flex:1 1 100%;max-width:20%;max-height:100%;box-sizing:border-box;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin-right:2px}::ng-deep vgip-meta-field .vgip-meta-field-preview .vgip-meta-field-value{min-width:0;width:0;box-sizing:border-box;flex:1;font-weight:700}\n"] }]
|
|
125
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { meta: [{
|
|
126
|
-
type: Input
|
|
127
|
-
}], parent: [{
|
|
128
|
-
type: Input
|
|
129
|
-
}], integrationCode: [{
|
|
130
|
-
type: Input
|
|
131
|
-
}], resourceType: [{
|
|
132
|
-
type: Input
|
|
133
|
-
}], index: [{
|
|
134
|
-
type: Input
|
|
135
|
-
}], scope: [{
|
|
136
|
-
type: Input
|
|
137
|
-
}], preview: [{
|
|
138
|
-
type: Input
|
|
139
|
-
}], theme: [{
|
|
140
|
-
type: Input
|
|
141
|
-
}], onChange: [{
|
|
142
|
-
type: Output
|
|
143
|
-
}], onLeave: [{
|
|
144
|
-
type: Output
|
|
145
|
-
}], fieldContent: [{
|
|
146
|
-
type: ViewChild,
|
|
147
|
-
args: [MetaFieldContentDirective, { static: true }]
|
|
148
|
-
}] } });
|
|
149
|
-
|
|
150
|
-
export { MetaField as M, MetaFieldContentDirective as a };
|
|
151
|
-
//# sourceMappingURL=vgip-meta-ui-index-4b8d731c.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"vgip-meta-ui-index-4b8d731c.mjs","sources":["../../../projects/meta-ui/src/lib/metaField/index.ts"],"sourcesContent":["import { Component, Directive, ElementRef, EventEmitter, Input, OnInit, Output, ViewChild, ViewContainerRef } from '@angular/core';\nimport { FieldAbstract } from '../fieldAbstract';\n\nconst FMAP = async (fType) => {\n switch (fType) {\n case '':\n case null:\n case undefined:\n case 'number':\n // case 'datetime':\n // case 'time':\n // case 'date':\n case 'string': { // eslint-disable-line no-fallthrough\n // return FieldInput;\n return import('../fieldInput').then(m => m.FieldInput);\n }\n case 'textarea':\n case 'text': {\n // return FieldText;\n return import('../fieldText').then(m => m.FieldText);\n }\n case 'select':\n case 'options': {\n // return FieldSelect;\n return import('../fieldSelect').then(m => m.FieldSelect);\n }\n case 'reference': {\n // return FieldReference;\n return import('../fieldReference').then(m => m.FieldReference);\n }\n case 'composite': {\n // return FieldComposite;\n return import('../fieldComposite').then(m => m.FieldComposite);\n }\n case 'boolean': {\n // return FieldBoolean;\n return import('../fieldBoolean').then(m => m.FieldBoolean);\n }\n case 'radio': {\n // return FieldRadio;\n return import('../fieldRadio').then(m => m.FieldRadio);\n }\n case 'list': {\n // return FieldList;\n return import('../fieldList').then(m => m.FieldList);\n }\n case 'richtext': {\n // return FieldRichtext;\n return import('../fieldRichtext').then(m => m.FieldRichtext);\n }\n case 'datetime':\n case 'time':\n case 'date': {\n // return FieldDatetime;\n return import('../fieldDatetime').then(m => m.FieldDatetime);\n }\n case 'hidden': {\n return import('../fieldHidden').then(m => m.FieldHidden);\n }\n default: {\n // return FieldUnknown;\n return import('../fieldUnknown').then(m => m.FieldUnknown);\n }\n }\n};\n\n@Directive({\n selector: '[metaFieldContent]'\n})\nexport class MetaFieldContentDirective {\n constructor(public viewContainerRef: ViewContainerRef) { }\n}\n\n@Component({\n selector: 'vgip-meta-field',\n template: '<ng-template metaFieldContent>Loading</ng-template>',\n styleUrls: ['../field.scss']\n})\nexport class MetaField extends FieldAbstract implements OnInit {\n @Input() meta: any;\n @Input() parent: any;\n @Input() integrationCode: any;\n @Input() resourceType: any;\n @Input() index: number;\n @Input() scope: string;\n @Input() preview: boolean;\n @Input() theme: string;\n // eslint-disable-next-line\n @Output() onChange = new EventEmitter();\n // eslint-disable-next-line\n @Output() onLeave = new EventEmitter();\n\n @ViewChild(MetaFieldContentDirective, { static: true }) fieldContent: MetaFieldContentDirective;\n\n constructor(private el: ElementRef) {\n super();\n }\n\n async ngOnInit() {\n const component = await FMAP(this.meta.type);\n this.fieldContent.viewContainerRef.clear();\n const componentRef = this.fieldContent.viewContainerRef.createComponent(component);\n const field: FieldAbstract = componentRef.instance;\n if (component.setup) {\n // console.log('setup', {a: this.el.nativeElement.parentNode.parentNode})\n component.setup(field, this.parent, this.meta);\n }\n field.meta = this.meta;\n field.parent = this.parent;\n field.integrationCode = (this.integrationCode || '').toLowerCase();\n field.resourceType = (this.resourceType || '');\n field.index = this.index;\n field.scope = this.scope;\n field.elementRef = this.el;\n field.onChange = this.onChange;\n field.onLeave = this.onLeave;\n field.preview = this.preview;\n field.theme = this.theme;\n Object.defineProperty(field.meta, 'unset', {\n value: false,\n writable: true,\n configurable: true,\n enumerable: false\n });\n }\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
import * as i0 from '@angular/core';
|
|
2
|
-
import { Component, Input } from '@angular/core';
|
|
3
|
-
import { F as FieldAbstract } from './vgip-meta-ui-fieldAbstract-f7d80db6.mjs';
|
|
4
|
-
import * as i1 from '@angular/common';
|
|
5
|
-
import { M as MetaField } from './vgip-meta-ui-index-4b8d731c.mjs';
|
|
6
|
-
import 'rxjs';
|
|
7
|
-
import 'rxjs/operators';
|
|
8
|
-
import 'tslib';
|
|
9
|
-
|
|
10
|
-
class FieldComposite extends FieldAbstract {
|
|
11
|
-
get isRow() {
|
|
12
|
-
return this.meta.subtype !== 'column';
|
|
13
|
-
}
|
|
14
|
-
get fields() {
|
|
15
|
-
return (this.meta.fields || []).map((f) => {
|
|
16
|
-
if (f.type === 'textarea') { // no textareas inside composite (use string)
|
|
17
|
-
delete f.type;
|
|
18
|
-
}
|
|
19
|
-
return f;
|
|
20
|
-
});
|
|
21
|
-
}
|
|
22
|
-
ngOnInit() {
|
|
23
|
-
// super.ngOnInit()
|
|
24
|
-
let nestedFieldsRegex;
|
|
25
|
-
if (this.meta.name) {
|
|
26
|
-
this.scope += `${this.meta.name}_`;
|
|
27
|
-
this.value = this.parent[this.meta.name] || {};
|
|
28
|
-
nestedFieldsRegex = new RegExp(`^${this.meta.name}\\.(.*)`);
|
|
29
|
-
Object.defineProperty(this.parent, this.meta.name, {
|
|
30
|
-
set: (value) => {
|
|
31
|
-
if (value) {
|
|
32
|
-
for (const v of Object.keys(value)) {
|
|
33
|
-
this.value[v] = value[v];
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
},
|
|
37
|
-
get: () => {
|
|
38
|
-
if (JSON.stringify(this.value) !== '{}') {
|
|
39
|
-
return this.value;
|
|
40
|
-
}
|
|
41
|
-
},
|
|
42
|
-
enumerable: this.sendToServer,
|
|
43
|
-
configurable: true
|
|
44
|
-
});
|
|
45
|
-
for (const f of this.meta.fields) {
|
|
46
|
-
if (this.isRow) {
|
|
47
|
-
if (f.type === 'text') {
|
|
48
|
-
f.type = 'string';
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
const nestedFieldMatch = f.name.match(nestedFieldsRegex);
|
|
52
|
-
if (nestedFieldMatch) {
|
|
53
|
-
f.name = nestedFieldMatch[1]; // for VGIS V2 backward compatibility normalize name with dotted syntax
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
else {
|
|
58
|
-
this.value = this.parent;
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
FieldComposite.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: FieldComposite, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
63
|
-
FieldComposite.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: FieldComposite, selector: "ng-component", inputs: { meta: "meta" }, usesInheritance: true, ngImport: i0, template: "<div [ngClass]=\"{ 'Vlt-grid Vlt-grid--narrow': isRow }\">\n <ng-container *ngFor='let field of fields'>\n <div style='margin: 0;' [ngClass]=\"{ 'Vlt-col': isRow, 'Vlt-col--1of3': isRow && fields.length > 3 }\" *ngIf=\"!field.$invisible\">\n <vgip-meta-field *ngIf='!meta.$invisible' [ngClass]=\"{ shown: !field.$invisible}\" [index]='index' [scope]='scope' [meta]='field'\n [parent]='value' [integrationCode]='integrationCode' [resourceType]='resourceType' [preview]='preview'\n theme='inherit'></vgip-meta-field>\n </div>\n </ng-container>\n</div>\n", styles: ["div>vgip-meta-field{display:none}div>vgip-meta-field.shown{display:initial}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: MetaField, selector: "vgip-meta-field", inputs: ["meta", "parent", "integrationCode", "resourceType", "index", "scope", "preview", "theme"], outputs: ["onChange", "onLeave"] }] });
|
|
64
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: FieldComposite, decorators: [{
|
|
65
|
-
type: Component,
|
|
66
|
-
args: [{ template: "<div [ngClass]=\"{ 'Vlt-grid Vlt-grid--narrow': isRow }\">\n <ng-container *ngFor='let field of fields'>\n <div style='margin: 0;' [ngClass]=\"{ 'Vlt-col': isRow, 'Vlt-col--1of3': isRow && fields.length > 3 }\" *ngIf=\"!field.$invisible\">\n <vgip-meta-field *ngIf='!meta.$invisible' [ngClass]=\"{ shown: !field.$invisible}\" [index]='index' [scope]='scope' [meta]='field'\n [parent]='value' [integrationCode]='integrationCode' [resourceType]='resourceType' [preview]='preview'\n theme='inherit'></vgip-meta-field>\n </div>\n </ng-container>\n</div>\n", styles: ["div>vgip-meta-field{display:none}div>vgip-meta-field.shown{display:initial}\n"] }]
|
|
67
|
-
}], propDecorators: { meta: [{
|
|
68
|
-
type: Input
|
|
69
|
-
}] } });
|
|
70
|
-
|
|
71
|
-
export { FieldComposite };
|
|
72
|
-
//# sourceMappingURL=vgip-meta-ui-index-4ecdd48a.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"vgip-meta-ui-index-4ecdd48a.mjs","sources":["../../../projects/meta-ui/src/lib/fieldComposite/index.ts","../../../projects/meta-ui/src/lib/fieldComposite/view.html"],"sourcesContent":["import { Component, Input, OnInit } from '@angular/core';\nimport { FieldAbstract } from '../fieldAbstract';\n\n@Component({\n templateUrl: './view.html',\n styleUrls: ['./style.scss'],\n})\nexport class FieldComposite extends FieldAbstract implements OnInit {\n @Input() meta: any;\n value: any;\n\n get isRow() {\n return this.meta.subtype !== 'column';\n }\n\n get fields() {\n return (this.meta.fields || []).map((f) => {\n if (f.type === 'textarea') { // no textareas inside composite (use string)\n delete f.type;\n }\n return f;\n });\n }\n\n ngOnInit() {\n // super.ngOnInit()\n let nestedFieldsRegex: RegExp;\n if (this.meta.name) {\n this.scope += `${this.meta.name}_`;\n this.value = this.parent[this.meta.name] || {};\n nestedFieldsRegex = new RegExp(`^${this.meta.name}\\\\.(.*)`);\n Object.defineProperty(this.parent, this.meta.name, {\n set: (value) => {\n if (value) {\n for (const v of Object.keys(value)) {\n this.value[v] = value[v];\n }\n }\n },\n get: () => {\n if (JSON.stringify(this.value) !== '{}') {\n return this.value;\n }\n },\n enumerable: this.sendToServer,\n configurable: true\n });\n for (const f of this.meta.fields) {\n if (this.isRow) {\n if (f.type === 'text') {\n f.type = 'string';\n }\n }\n const nestedFieldMatch = f.name.match(nestedFieldsRegex);\n if (nestedFieldMatch) {\n f.name = nestedFieldMatch[1]; // for VGIS V2 backward compatibility normalize name with dotted syntax\n }\n }\n } else {\n this.value = this.parent;\n }\n }\n\n}\n","<div [ngClass]=\"{ 'Vlt-grid Vlt-grid--narrow': isRow }\">\n <ng-container *ngFor='let field of fields'>\n <div style='margin: 0;' [ngClass]=\"{ 'Vlt-col': isRow, 'Vlt-col--1of3': isRow && fields.length > 3 }\" *ngIf=\"!field.$invisible\">\n <vgip-meta-field *ngIf='!meta.$invisible' [ngClass]=\"{ shown: !field.$invisible}\" [index]='index' [scope]='scope' [meta]='field'\n [parent]='value' [integrationCode]='integrationCode' [resourceType]='resourceType' [preview]='preview'\n theme='inherit'></vgip-meta-field>\n </div>\n </ng-container>\n</div>\n"],"names":["i2.MetaField"],"mappings":";;;;;;;;;AAOM,MAAO,cAAe,SAAQ,aAAa,CAAA;AAI/C,IAAA,IAAI,KAAK,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,KAAK,QAAQ,CAAC;KACvC;AAED,IAAA,IAAI,MAAM,GAAA;AACR,QAAA,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,KAAI;AACxC,YAAA,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,EAAE;gBACzB,OAAO,CAAC,CAAC,IAAI,CAAC;AACf,aAAA;AACD,YAAA,OAAO,CAAC,CAAC;AACX,SAAC,CAAC,CAAC;KACJ;IAED,QAAQ,GAAA;;AAEN,QAAA,IAAI,iBAAyB,CAAC;AAC9B,QAAA,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YAClB,IAAI,CAAC,KAAK,IAAI,CAAG,EAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAA,CAAA,CAAG,CAAC;AACnC,YAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;AAC/C,YAAA,iBAAiB,GAAG,IAAI,MAAM,CAAC,CAAI,CAAA,EAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAS,OAAA,CAAA,CAAC,CAAC;AAC5D,YAAA,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;AACjD,gBAAA,GAAG,EAAE,CAAC,KAAK,KAAI;AACb,oBAAA,IAAI,KAAK,EAAE;wBACT,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;4BAClC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;AAC1B,yBAAA;AACF,qBAAA;iBACF;gBACD,GAAG,EAAE,MAAK;oBACR,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE;wBACvC,OAAO,IAAI,CAAC,KAAK,CAAC;AACnB,qBAAA;iBACF;gBACD,UAAU,EAAE,IAAI,CAAC,YAAY;AAC7B,gBAAA,YAAY,EAAE,IAAI;AACnB,aAAA,CAAC,CAAC;YACH,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;gBAChC,IAAI,IAAI,CAAC,KAAK,EAAE;AACd,oBAAA,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE;AACrB,wBAAA,CAAC,CAAC,IAAI,GAAG,QAAQ,CAAC;AACnB,qBAAA;AACF,iBAAA;gBACD,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;AACzD,gBAAA,IAAI,gBAAgB,EAAE;oBACpB,CAAC,CAAC,IAAI,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;AAC9B,iBAAA;AACF,aAAA;AACF,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;AAC1B,SAAA;KACF;;2GAtDU,cAAc,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAd,cAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,cAAc,qGCP3B,okBASA,EAAA,MAAA,EAAA,CAAA,+EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,SAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,OAAA,EAAA,OAAA,EAAA,SAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDFa,cAAc,EAAA,UAAA,EAAA,CAAA;kBAJ1B,SAAS;;8BAKC,IAAI,EAAA,CAAA;sBAAZ,KAAK;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"vgip-meta-ui-index-62be0e3e.mjs","sources":["../../../projects/meta-ui/src/lib/services/metaTracker/index.ts","../../../projects/meta-ui/src/lib/fieldReference/index.ts","../../../projects/meta-ui/src/lib/fieldReference/view.html"],"sourcesContent":["/*\n * @Author: Alexander.Vangelov@vonage.com\n * @Date: 2019-09-19 17:35:19\n * @Last Modified by: Alexander.Vangelov@vonage.com\n * @Last Modified time: 2020-03-23 17:08:23\n */\n\nimport { Injectable, EventEmitter } from '@angular/core';\n\nexport interface IMetaTrackerEvent {\n integration?: string;\n resource?: string;\n field?: string;\n action?: string;\n value?: string;\n isContactable?: boolean;\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MetaTrackerService {\n integrationCode: string;\n resourceType: string;\n events: EventEmitter<IMetaTrackerEvent> = new EventEmitter();\n\n constructor() {}\n\n emit(event: IMetaTrackerEvent) {\n if (!event.integration) {\n event.integration = this.integrationCode || 'N/A';\n }\n if (!event.resource) {\n event.resource = this.resourceType || 'N/A';\n }\n this.events.emit(event);\n }\n}\n","import { Component, OnInit, ViewContainerRef } from '@angular/core';\nimport { FieldAbstract } from '../fieldAbstract';\nimport { ControlContainer, NgForm } from '@angular/forms';\nimport { MetaReferenceService } from '../services/metaReference';\nimport { Subject } from 'rxjs';\nimport { debounceTime, distinctUntilChanged } from 'rxjs/operators';\nimport { MetaResourceService, IMetaResourceConfig } from '../services/metaResource';\nimport { MetaRefDialog } from '../refDialog';\nimport { MetaMsgService } from '../services/metaMsg';\nimport { MetaContextService } from '../services/metaContext';\nimport { IMetaTrackerEvent, MetaTrackerService } from '../services/metaTracker';\n\n@Component({\n templateUrl: './view.html',\n styleUrls: ['./style.scss'],\n viewProviders: [{ provide: ControlContainer, useExisting: NgForm }]\n})\nexport class FieldReference extends FieldAbstract implements OnInit {\n input: any;\n dropdown: HTMLElement;\n dropdownScrollContainer: HTMLElement;\n searching: boolean;\n searchResourceType: any = {};\n searchText: string;\n searchResults: Array<any>;\n searchError: any;\n activeSuggestionIndex: number;\n searchResourceTypesScope: string;\n searchTextChanged: Subject<string> = new Subject<string>();\n isCreatable = false;\n value: any;\n isPolymorphic: boolean;\n isSearchable: boolean;\n multiple: boolean;\n vr: MetaResourceService;\n externalLink: string;\n dropdownVisible = false;\n searchResourceTypeMeta: any = {\n type: 'select',\n name: 'resourceType',\n label: 'Type',\n options: [], // { label: '-- All types --' }],\n standalone: true\n };\n filteredSuggestions: Array<any> = [];\n placeHolderLabel: string;\n asyncSuggestions: Array<any>;\n smartSuggestions: Array<any> = [];\n\n constructor(\n private referenceService: MetaReferenceService,\n private metaResource: MetaResourceService,\n private metaMsgService: MetaMsgService,\n private metaContext: MetaContextService,\n private metaTracker: MetaTrackerService,\n private viewContainerRef: ViewContainerRef\n ) {\n super();\n }\n\n get disabled() {\n const superDisabled = this.logicalDisabled || this.validations.disabled || this.meta.disabled === true\n || (this.meta.updatable === false && this.isPersistedParent);\n this.searchResourceTypeMeta.disabled = superDisabled;\n return superDisabled;\n }\n\n get showTypes() {\n return (typeof (this.meta.showTypes) !== 'undefined') ? this.meta.showTypes : true;\n }\n\n get suggestions() {\n return this.smartSuggestions.concat(\n !this.searchResourceType.resourceType ?\n // eslint-disable-next-line max-len\n (this.asyncSuggestions || this.meta.suggestions || []) : (this.asyncSuggestions || this.meta.suggestions || []).filter((s) => s.type === this.searchResourceType.resourceType)\n );\n }\n\n get hasAppendButton() {\n if (!this.multiple && this.model) {\n if (this.isPolymorphic) {\n for (const ref of this.metaReference) {\n if ((ref.name || ref.resourceType) === (this.model.type || this.model.resourceType)) {\n return ref.updatable || (ref.creatable && ref.updatable !== false);\n }\n }\n } else {\n return this.metaReference.updatable || (this.metaReference.creatable && this.metaReference.updatable !== false); // VGIS-6911\n }\n } else if (this.metaReference instanceof Array) {\n // setTimeout(() => {\n // this.searchResourceTypesScope = this.metaReference.map(rt => rt.name).join(',');\n // }, 0);\n for (const rt of this.metaReference) {\n if (rt.hidden !== false && rt.creatable) {\n return true;\n }\n }\n } else {\n return this.metaReference.creatable;\n }\n }\n\n get resourceService() {\n if (!this.metaResourceService) {\n const metaResourceConfig: IMetaResourceConfig = {\n integrationCode: this.integrationCode,\n resourceType: this.resourceType\n };\n this.metaResourceService = this.metaResource.new(metaResourceConfig);\n }\n return this.metaResourceService;\n }\n\n get metaReference() {\n return this.meta.reference || {};\n }\n\n ngOnInit() {\n this.multiple = (this.meta.type === 'multireference') || this.meta.multiple;\n this.searchResourceTypeMeta.label = this.meta.label;\n if (!this.meta.valueType) {\n // this.meta.valueType = 'object';\n Object.defineProperty(this.meta, 'valueType', {\n value: 'object'\n });\n }\n if (this.metaReference instanceof Array) {\n this.isPolymorphic = true;\n this.isSearchable = true;\n this.searchResourceTypesScope = this.metaReference.filter(rt => rt.hidden !== true).map(rt => rt.name).join(',');\n for (const rt of this.metaReference) {\n if (rt.creatable) {\n this.isCreatable = true;\n if (typeof (rt.searchable) !== 'undefined' && !rt.searchable) {\n this.isSearchable = false;\n }\n }\n }\n this.metaReference.forEach((r) => {\n if (!r.hidden) {\n this.searchResourceTypeMeta.options.push({ id: r.name, label: r.label || r.name });\n }\n });\n } else {\n this.isSearchable = typeof (this.metaReference.searchable) === 'undefined' || this.metaReference.searchable;\n this.searchResourceType = this.metaReference;\n this.searchResourceTypesScope = this.metaReference.name || this.metaReference.resourceType;\n this.isCreatable = this.metaReference.creatable;\n }\n this.buildPlaceholderLabel();\n this.searchTextChanged.pipe(debounceTime(300), distinctUntilChanged()).subscribe((value: string) => {\n this.searchText = value;\n this.search();\n });\n const origValue = this.parent[this.meta.name];\n\n // this.suggestions = this.meta.suggestions; // TODO filter by default type\n // console.log('this.suggestions', this.suggestions);\n\n Object.defineProperty(this.parent, this.meta.name, {\n set: (value) => {\n if (value === '') {\n value = null;\n }\n if (this.multiple) {\n if (value && value instanceof Array) {\n for (const v of value) {\n if (!this.model) {\n this.model = [];\n }\n if (typeof (v) === 'string') {\n this.model.push({\n id: v,\n label: v,\n type: this.metaReference.name\n });\n }\n }\n } else {\n value = null; // protect when value from server is not array\n }\n } else {\n if (typeof (value) === 'string') {\n value = {\n id: value,\n label: value, // could be found with extra call\n type: this.metaReference.name\n };\n }\n this.searchText = value ?\n ((!value.label || value.label === ' ') ? `N/A (${value.type}#${value.id})` : value.label || value) :\n '';\n // if (this.isPolymorphic && this.model) { //TODO show or not?\n // this.searchResourceType = this.metaReference.find((rt)=> {\n // return rt.name === this.model.type;\n // });\n // }\n }\n this.model = value;\n if (!this.multiple) {\n this.value = this.modelToValue(value, this.meta.valueType || 'object');\n this.buildExternalLink();\n } else {\n this.value = !this.model ? this.model : this.model.map((m) => this.modelToValue(m, this.meta.valueType || 'object'));\n }\n this.meta.$optional = this.isOptional;\n },\n get: () => this.value,\n enumerable: this.sendToServer,\n configurable: true\n });\n if (origValue) {\n this.parent[this.meta.name] = origValue;\n }\n if (!this.model && this.default) {\n if (this.multiple) {\n this.parent[this.meta.name] = [];\n if (this.default.length) {\n for (const dv of this.default) {\n if ((dv.id || dv.value) && dv.type) {\n const item: any = {\n id: dv.id || dv.value,\n label: dv.label || dv.id || dv.value,\n type: dv.type\n };\n if (dv.externalLink) {\n item.externalLink = dv.externalLink;\n }\n this.parent[this.meta.name].push(item);\n }\n }\n }\n if (!this.parent[this.meta.name].length) {\n this.clear();\n }\n } else {\n if (this.default.id && this.default.label && this.default.type) {\n setTimeout(() => {\n const item: any = {\n id: this.default.id || this.default.value,\n label: this.default.label || this.default.id || this.default.value,\n type: this.default.type,\n smart: true\n };\n if (this.default.externalLink) {\n item.externalLink = this.default.externalLink;\n }\n this.parent[this.meta.name] = item;\n }, 0);\n } else {\n console.warn('!!!default value is not valid format', this.meta);\n }\n }\n }\n\n if (typeof (this.meta.disabled) !== undefined) {\n if (typeof (this.meta.disabled) === 'object') {\n for (const p of Object.keys(this.meta.disabled)) {\n const props = p.split('.');\n if (typeof (this.parent[props[0]]) !== 'undefined') {\n let val = this.parent;\n for (const prop of props) {\n val = val[prop];\n if (!val) {\n break;\n }\n }\n if (val === this.meta.disabled[p]) {\n this.logicalDisabled = true;\n this.clear();\n }\n }\n this.parentChangeSubject.subscribe((value) => {\n if (value && value.hasOwnProperty(props[0])) {\n let val = this.parent;\n for (const prop of props) {\n val = val[prop];\n if (!val) {\n break;\n }\n }\n if (val === this.meta.disabled[p]) {\n this.logicalDisabled = true;\n this.clear();\n } else {\n delete this.logicalDisabled;\n }\n }\n });\n }\n }\n }\n\n if (this.meta.auto && this.meta.auto.search) {\n const searchParams = this.meta.auto.search.params;\n if (searchParams) {\n for (const par of Object.keys(searchParams)) {\n const props = searchParams[par].split('.');\n const field = props[0];\n const prop = props[1];\n let parValue = this.parent[field];\n if (parValue) {\n if (prop) {\n parValue = parValue[prop];\n }\n if (parValue) {\n const params = {};\n params[par] = parValue;\n this.searchAutoSuggestions(params);\n }\n }\n this.parentChangeSubject.subscribe((value) => {\n if (value && value.hasOwnProperty(field)) {\n if (value[field]) {\n if (prop) {\n value[field] = value[field][prop];\n }\n const params = {};\n params[par] = value[field];\n this.searchAutoSuggestions(params);\n }\n }\n });\n }\n }\n }\n }\n\n clearSearchResourceType() {\n this.searchResourceType = {};\n this.onSearchResourceTypeChanged();\n }\n\n onSearchResourceTypeChanged(resourceType?) {\n if (!resourceType || !resourceType.id) {\n this.searchResourceType.resourceType = null;\n this.searchResourceTypesScope = (this.metaReference || []).filter(rt => rt.hidden !== true).map(rt => rt.name).join(',');\n } else {\n this.searchResourceType.resourceType = resourceType.id;\n this.searchResourceTypesScope = resourceType.id;\n }\n this.buildPlaceholderLabel();\n this.focus();\n if (!this.model && !this.searchText) { // filter suggestions by type\n this.filteredSuggestions = !resourceType ? (this.meta.suggestions || []) : (this.meta.suggestions || []).filter(\n (s) => s.type === resourceType.id\n );\n } else { // regular search (return scoped results)\n if (!this.model) {\n this.search();\n } else if (this.searchResults && resourceType) {\n this.searchResults = this.searchResults.filter((s) => s.type === resourceType.id);\n }\n }\n delete this.searchError;\n }\n\n onSearchTextChanged(value: string) {\n this.searchTextChanged.next(value);\n }\n\n search() {\n this.searching = true;\n // this.activeSuggestionIndex;\n if (!this.searchText || this.searchText.length < 2) {\n this.searching = false;\n delete this.searchResults;\n return;\n }\n const showSearchResults = (results) => {\n this.searching = false;\n delete this.searchError;\n delete this.activeSuggestionIndex;\n if (!results || !(results instanceof Array)) {\n results = [];\n }\n if (this.meta.acceptNew && this.meta.acceptNew.type && this.meta.acceptNew.pattern) {\n const regex = new RegExp(this.meta.acceptNew.pattern);\n if (regex.test(this.searchText)) {\n results.unshift({ id: null, label: this.searchText, type: this.meta.acceptNew.type });\n }\n }\n this.searchResults = results.map((r) => { // eslint-disable-line arrow-body-style\n return { id: r.id, label: r.label, type: r.type || r.resourceType || this.searchResourceType.name, externalLink: r.externalLink };\n });\n if (!/Vlt-dropdown--expanded/.test(this.dropdown.className)) {\n this.showDropdown();\n }\n };\n\n if (this.meta.search) {\n const searchParams = this.meta.search.params || {};\n let searchUrl = `/fields/${this.meta.name}/search`;\n if (this.meta.search.url) {\n searchUrl = this.meta.search.url.replace(/\\${\\s*([\\w\\.]+)\\s*}/g, (match, key) => {\n if (searchParams.hasOwnProperty(key)) {\n const props = searchParams[key].split('.');\n const field = props[0];\n const prop = props[1];\n delete searchParams[key]; // if it is URL param, remove it as query param\n let parValue = this.parent[field];\n if (parValue) {\n if (prop) {\n parValue = parValue[prop];\n }\n if (parValue) {\n return parValue;\n }\n }\n }\n return 'undefined';\n });\n }\n for (const p of Object.keys(searchParams)) {\n searchUrl += `${searchUrl.indexOf('?') === -1 ? '?' : '&'}${encodeURIComponent(p)}=${encodeURIComponent(searchParams[p])}`;\n }\n searchUrl += `${searchUrl.indexOf('?') === -1 ? '?' : '&'}q=${encodeURIComponent(this.searchText)}`;\n this.searching = true;\n this.resourceService.getByPath(searchUrl).subscribe((results) => {\n showSearchResults(results);\n }, (error) => {\n delete this.searching;\n this.searchResults = [];\n this.searchError = error.error ? error.error.message || error.error : error.message || error;\n if (!/Vlt-dropdown--expanded/.test(this.dropdown.className)) {\n this.showDropdown();\n }\n });\n } else {\n if (!this.vr) {\n this.vr = this.metaResource.new({\n integrationCode: this.integrationCode,\n resourceType: null\n });\n }\n this.vr.searchIntegration(\n this.searchText,\n this.searchResourceType.name || this.searchResourceTypesScope\n ).subscribe((results: Array<any>) => {\n showSearchResults(results);\n }, (error) => {\n this.searching = false;\n this.searchResults = [];\n this.searchError = error.error ? error.error.message || error.error : error.message || error;\n if (!/Vlt-dropdown--expanded/.test(this.dropdown.className)) {\n this.showDropdown();\n }\n });\n }\n }\n\n onActivated(ev) {\n // ev.preventDefault();\n // ev.stopPropagation();\n this.input = ev.srcElement;\n if (!this.dropdown) {\n // this.dropdown = ev.srcElement.parentNode.parentNode;\n this.dropdown = this.elementRef.nativeElement.querySelector('.dropdown-wrapper');\n }\n this.showDropdown();\n }\n\n onBlur(ev) {\n let internalControl = false;\n if (ev.relatedTarget) {\n if (!this.elementRef.nativeElement.contains(ev.relatedTarget)) {\n this.dismissDropdown();\n } else {\n internalControl = true;\n }\n }\n if (this.keyListenerActive && !internalControl) {\n this.input.removeEventListener('keydown', this.keydown);\n setTimeout(() => {\n if (!this.keyListenerActive) {\n document.removeEventListener('click', this.clickout);\n }\n }, 400);\n delete this.keyListenerActive;\n }\n }\n\n removeSelection() {\n if (this.model && !this.suggestions.find((s) => (s.id === this.model.id && s.type === this.model.type))) {\n this.smartSuggestions.push({\n id: this.model.id,\n label: this.model.label,\n type: this.model.type,\n smart: true\n });\n }\n this.metaTracker.emit(this.buildTrackEvent('REMOVE'));\n this.clear();\n }\n\n onSuggestionSelect(ev, suggestion) {\n if (!suggestion) {\n return;\n }\n ev.preventDefault();\n ev.stopPropagation();\n this.focus();\n this.metaTracker.emit(this.buildTrackEvent('SELECT'));\n if (this.multiple) {\n if (!this.model) {\n this.model = [];\n }\n let existingEntry;\n for (const entry of this.model) {\n if (suggestion.id && (entry.id === suggestion.id)) {\n existingEntry = entry;\n break;\n } else if (suggestion.label === entry.label) { // create new (google emails)\n existingEntry = entry;\n break;\n }\n }\n if (!existingEntry) {\n this.model.push(suggestion);\n }\n this.onModelChange(this.model);\n delete this.searchText;\n this.searchTextChanged.next();\n } else {\n this.model = suggestion;\n this.externalLink = suggestion.externalLink;\n this.onModelChange(suggestion);\n this.searchText = suggestion.label;\n this.activeSuggestionIndex = (this.searchResults || this.suggestions).indexOf(suggestion);\n }\n this.dismissDropdown();\n // if (this.isPolymorphic) {\n // this.searchResourceType = this.metaReference.find((rt)=> {\n // return rt.name === suggestion.type;\n // });\n // }\n }\n\n showDropdown() {\n this.dropdownVisible = true;\n this.dropdown.classList.add('Vlt-dropdown--expanded');\n if (!this.keyListenerActive) {\n this.input.addEventListener('keydown', this.keydown);\n setTimeout(() => {\n document.addEventListener('click', this.clickout);\n }, 200);\n this.keyListenerActive = true;\n }\n if (typeof (this.activeSuggestionIndex) === 'undefined') {\n if (this.model && (this.searchResults || this.suggestions)) {\n for (let suggestionIndex = 0; suggestionIndex < (this.searchResults || this.suggestions).length; suggestionIndex++) {\n const item = (this.searchResults || this.suggestions)[suggestionIndex];\n if (this.model.id === item.id && this.model.type === item.type) {\n this.activeSuggestionIndex = suggestionIndex;\n break;\n }\n }\n }\n }\n this.ensureDropdownIsVisible();\n }\n\n dismissDropdown(event?) {\n this.dropdownVisible = false;\n if (event) {\n this.focus();\n }\n if (this.dropdown) {\n this.dropdown.classList.remove('Vlt-dropdown--expanded');\n }\n }\n\n clear() {\n this.prevModel = this.model;\n delete this.searchText;\n delete this.searchResults;\n delete this.model;\n delete this.activeSuggestionIndex;\n this.onModelChange(this.model);\n this.onSearchTextChanged(this.searchText);\n this.focus();\n }\n\n revert() {\n this.model = this.prevModel;\n delete this.prevModel;\n this.onModelChange(this.model);\n this.focus();\n }\n\n remove(ev, item) {\n ev.preventDefault();\n ev.stopPropagation();\n const optionIndex = this.model.indexOf(item);\n if (optionIndex !== -1) {\n this.model.splice(optionIndex, 1);\n if (!this.model.length) {\n delete this.model;\n delete this.value;\n }\n this.onModelChange(this.model);\n }\n }\n\n openResource(model?) {\n this.keyListenerActive = true; // suppress dropdown in this case\n setTimeout(() => {\n this.dismissDropdown();\n });\n const refDialogComponent = this.viewContainerRef.createComponent(MetaRefDialog);\n this.metaTracker.emit(this.buildTrackEvent(model ? 'EDIT' : 'NEW'));\n let theme = this.elementRef.nativeElement.dataset.theme;\n if (!theme || theme === 'inherit') {\n let parentComponent = this.elementRef.nativeElement.closest('vgip-meta-layout');\n if (parentComponent) {\n theme = parentComponent.dataset.theme;\n }\n if (!theme || theme === 'inherit') {\n parentComponent = this.elementRef.nativeElement.closest('vgip-meta-resource');\n if (parentComponent) {\n theme = parentComponent.dataset.theme;\n }\n }\n }\n this.referenceService.openDialog(\n refDialogComponent, this.metaResource, this.integrationCode,\n (this.metaReference instanceof Array) ? this.metaReference.filter(rt => rt.hidden !== true) : this.metaReference,\n model, null, this.searchResourceType.resourceType, theme\n ).subscribe((result: any) => {\n if (result) {\n this.parent[this.meta.name] = result;\n this.onChange.emit(result);\n const existingSuggestion = (this.meta.suggestions || []).find((s) => (s.id === result.id && s.type === result.type));\n if (existingSuggestion) {\n existingSuggestion.label = result.label;\n } else {\n if (!this.meta.suggestions) {\n this.meta.suggestions = [];\n }\n this.meta.suggestions.unshift(result);\n }\n this.metaTracker.emit(this.buildTrackEvent(model ? 'UPDATE' : 'CREATE', result.type || result.resourceType));\n } else {\n this.metaTracker.emit(this.buildTrackEvent(model ? 'CANCEL_EDIT' : 'CANCEL_UPDATE'));\n }\n });\n }\n\n private ensureDropdownIsVisible() {\n setTimeout(() => {\n const holder = this.dropdown.closest('.Vlt-card__content');\n if (holder) {\n const el = this.elementRef.nativeElement.querySelector('.Vlt-dropdown__panel');\n const elRect = el.getBoundingClientRect();\n const holderRect = holder.getBoundingClientRect();\n if (holderRect.top + holderRect.height < elRect.top + elRect.height) {\n el.scrollIntoView({ block: 'end' });\n }\n }\n }, 400);\n }\n\n private ensureDropdownOptionIsVisible() {\n if (!this.dropdownScrollContainer) {\n this.dropdownScrollContainer = this.dropdown.querySelector('.Vlt-dropdown__scroll');\n }\n if (this.dropdownScrollContainer && typeof (this.activeSuggestionIndex) === 'number') {\n const scrollTop = 44 * this.activeSuggestionIndex;\n const scrollBottom = 44 * (this.activeSuggestionIndex - 7);\n if (scrollTop < this.dropdownScrollContainer.scrollTop) {\n this.dropdownScrollContainer.scrollTop = scrollTop;\n } else if (scrollBottom > this.dropdownScrollContainer.scrollTop) {\n this.dropdownScrollContainer.scrollTop = scrollBottom;\n }\n }\n }\n\n private clickout = (event) => {\n const internalControl = this.elementRef.nativeElement.contains(event.target);\n if (internalControl && ['Vlt-dropdown__link', 'Vlt-dropdown__block'].indexOf(event.target.className) !== -1) {\n this.focus();\n } else if (!internalControl && event.target !== this.input && event.target.className !== 'Vlt-dropdown__title') {\n this.dismissDropdown();\n } else {\n if (!internalControl && internalControl.tagName !== 'INPUT') {\n this.focus();\n }\n }\n };\n\n private buildTrackEvent(action: string, value?: string) {\n const e: IMetaTrackerEvent = {\n integration: this.integrationCode,\n resource: this.model ? (this.model.type || this.model.resourceType) : this.searchResourceType.resourceType,\n field: this.meta.name,\n action\n };\n if (this.meta.$isContactable) {\n e.isContactable = true;\n }\n if (typeof (value) !== 'undefined') {\n e.value = value;\n }\n return e;\n }\n\n private buildPlaceholderLabel() {\n this.placeHolderLabel = this.meta.label;\n if (this.multiple && !this.isPolymorphic) {\n this.placeHolderLabel = '+Add ';\n } else {\n this.placeHolderLabel = (this.isSearchable && (this.multiple || !this.isPolymorphic)) ? 'Search ' : '';\n }\n this.placeHolderLabel += this.searchResourceType.resourceType ? this.searchResourceType.resourceType : this.searchResourceTypesScope;\n }\n\n private keydown = (event) => {\n switch (event.key) {\n case 'ArrowDown': {\n this.showDropdown();\n if (typeof (this.activeSuggestionIndex) === 'undefined') {\n this.activeSuggestionIndex = 0;\n } else {\n this.activeSuggestionIndex++;\n if (this.activeSuggestionIndex >= (this.searchResults || this.suggestions).length) {\n this.activeSuggestionIndex = 0;\n }\n }\n this.ensureDropdownOptionIsVisible();\n event.preventDefault();\n event.stopPropagation();\n break;\n }\n case 'ArrowUp': {\n this.showDropdown();\n if (typeof (this.activeSuggestionIndex) === 'undefined') {\n this.activeSuggestionIndex = (this.searchResults || this.suggestions).length - 1;\n } else {\n this.activeSuggestionIndex--;\n if (this.activeSuggestionIndex < 0) {\n this.activeSuggestionIndex = (this.searchResults || this.suggestions).length - 1;\n }\n }\n this.ensureDropdownOptionIsVisible();\n event.preventDefault();\n event.stopPropagation();\n break;\n }\n case 'Space':\n case 'Enter': {\n if (typeof (this.activeSuggestionIndex) !== 'undefined') {\n event.preventDefault();\n event.stopPropagation();\n this.onSuggestionSelect(event, (this.searchResults || this.suggestions)[this.activeSuggestionIndex]);\n delete this.activeSuggestionIndex;\n }\n break;\n }\n case 'Escape': {\n event.preventDefault();\n event.stopPropagation();\n this.dismissDropdown();\n break;\n }\n case 'Backspace': {\n if (!this.multiple && this.model) { // HPBR-8229\n event.preventDefault();\n event.stopPropagation();\n this.removeSelection();\n }\n break;\n }\n }\n };\n\n private buildExternalLink() {\n if (this.model) {\n if (this.model.externalLink) {\n this.externalLink = this.model.externalLink;\n } else if (this.metaContext.profiles[this.integrationCode.toUpperCase()]) {\n delete this.externalLink;\n this.metaMsgService.sendMessage(\n this.integrationCode.toUpperCase(),\n {\n action: 'buildExternalLink',\n integrationCode: this.integrationCode,\n ref: this.model,\n profile: this.metaContext.profiles[this.integrationCode.toUpperCase()]\n },\n (response) => {\n if (!response.error) {\n this.externalLink = response.externalLink;\n } else {\n console.warn('No external link support for', this.integrationCode, this.model.resourceType || this.model.type);\n }\n }\n );\n }\n } else {\n delete this.externalLink;\n }\n }\n\n private searchAutoSuggestions(params?) {\n let searchUrl = `/suggestions/${this.meta.name}/search`;\n if (this.meta.auto && this.meta.auto.search) {\n if (this.meta.auto.search.url) {\n searchUrl = this.meta.auto.search.url.replace(/\\${\\s*([\\w\\.]+)\\s*}/g, (match, key) => {\n if (params.hasOwnProperty(key)) {\n const val = params[key];\n delete params[key];\n return val;\n }\n return '';\n });\n }\n for (const p of Object.keys(params)) {\n searchUrl += `${searchUrl.indexOf('?') === -1 ? '?' : '&'}${encodeURIComponent(p)}=${encodeURIComponent(params[p])}`;\n }\n this.searching = true;\n this.resourceService.getByPath(searchUrl).subscribe((result) => {\n delete this.searching;\n if (result) {\n let suggestions;\n suggestions = result;\n if (this.meta.auto.search.extract) {\n suggestions = result[this.meta.auto.search.extract];\n }\n if (suggestions instanceof Array !== true) {\n suggestions = [suggestions];\n }\n const asyncSuggestions = [];\n suggestions.forEach((s) => {\n if (s && s.id && s.type) { // TOOD check the type is acceptable\n asyncSuggestions.push({\n id: s.id,\n label: s.label || `${s.type}#${s.id}`,\n type: s.type\n });\n }\n });\n if (asyncSuggestions.length) {\n if (asyncSuggestions.length === 1) {\n this.parent[this.meta.name] = asyncSuggestions[0];\n } else {\n delete this.asyncSuggestions;\n }\n }\n this.asyncSuggestions = asyncSuggestions;\n }\n }, (err) => {\n delete this.searching;\n });\n }\n }\n\n}\n","<div class='vgip-meta-field-preview' *ngIf='preview && model && (!multiple || (multiple && model.length))'>\n <div class='vgip-meta-field-label' [title]='meta.label || meta.name'>{{meta.label || meta.name}}</div>\n <div *ngIf='!multiple' class='vgip-meta-field-value __gu'>\n <svg class=\"Vlt-icon Vlt-icon--smaller\" style='margin-top: -3px;'><use attr.xlink:href=\"volta/volta-brand-icons.svg#{{integrationIcon}}\"/></svg>\n {{model.label || model.id}} <span class='Vlt-grey'>({{model.type}})</span>\n </div>\n <div *ngIf='multiple' class='vgip-meta-field-value __gu'>\n <span *ngFor='let m of (model || [])' class='Vlt-badge Vlt-badge--app'>\n {{m.label || m.id || m}} <span class='Vlt-grey-dark' *ngIf='isPolymorphic'>({{m.type}})</span>\n </span>\n </div>\n <a [href]='externalLink || model.externalLink' target='_blank' rel='noopener' *ngIf='externalLink && (model && !multiple)' class=\"Vlt-composite__append--icon preview\" aria-label='Open external'>\n <div class=\"Vlt-composite__icon\">\n <svg><use xlink:href=\"volta/volta-icons.svg#Vlt-icon-open\"/></svg>\n </div>\n </a>\n</div>\n<div *ngIf='!preview' class=\"meta-field-reference Vlt-form__element Vlt-form__element--big\" [ngClass]=\"{ 'Vlt-form__element--error': (searchError && keyListenerActive) || (f.invalid && ((f | metaModel)._parent.submitted || (ft | metaModel ).touched)), 'multiple': multiple, 'has-value': model, active: keyListenerActive }\">\n <div *ngIf='multiple' class='items-container' [ngClass]='{ creatable: isCreatable }'>\n <div *ngIf='model' class='badges-container keep-focus' (click)='focus()' style='width: 100%;'>\n <div *ngFor='let item of model' class=\"Vlt-badge Vlt-badge--app Vlt-badge--large keep-focus\" [ngClass]=\"{ grid: (item.label || item.id || '').length > 56}\">\n <span class='Vlt-truncate'>{{item.label || item.id || item }} <span *ngIf='isPolymorphic' class='Vlt-grey-dark' style='font-weight: normal;'>({{item.type}})</span></span>\n <button class=\"Vlt-badge__dismiss keep-focus\" (click)='remove($event, item)' style='position: absolute; right: 12px; top: 8px;' aria-label='Remove'></button>\n </div>\n </div>\n </div>\n <div class=\"Vlt-composite\">\n <div class='dropdown-wrapper Vlt-dropdown' style='width: 100%; position: absolute; top: 48px;'>\n <div class=\"Vlt-dropdown__panel\">\n <div *ngIf='searchError'>\n <div class=\"Vlt-callout Vlt-callout--critical keep-focus\">\n <i></i>\n <div class=\"Vlt-callout__content\">{{searchError}}</div>\n </div>\n </div>\n <div *ngIf='!searchError && (suggestions.length || searchResults)' [ngClass]=\"{ suggestions: !searchResults}\" class=\"Vlt-dropdown__panel__content Vlt-dropdown__panel__content--scroll-area\" style='padding: 0;'>\n <div class=\"Vlt-dropdown__block\"></div>\n <div *ngIf='!searchResults' class=\"Vlt-dropdown__scroll\">\n <div [ngClass]=\"{ 'Vlt-dropdown__link--selected': activeSuggestionIndex === i, smart: suggestion.smart }\" (click)='onSuggestionSelect($event, suggestion)' *ngFor='let suggestion of suggestions; let i = index' class=\"Vlt-dropdown__link has-type\">\n <svg class='Vlt-icon Vlt-icon--small'><use attr.xlink:href=\"volta/volta-brand-icons.svg#{{integrationIcon}}\"/></svg>\n <div class='__gu' [title]='suggestion.label'>{{ suggestion.label }}</div>\n <small class='Vlt-grey-dark' style='text-transform: capitalize;'>{{suggestion.type}}</small>\n </div>\n </div>\n <div *ngIf='searchResults' class=\"Vlt-dropdown__scroll\">\n <div *ngIf='!searchResults.length' class='Vlt-dropdown__block'> No records matching '<b style='pointer-events: none;'>{{searchText}}</b>' were found.</div>\n <div [ngClass]=\"{ 'Vlt-dropdown__link--selected': activeSuggestionIndex === i }\" (click)='onSuggestionSelect($event, suggestion)' *ngFor='let suggestion of searchResults; let i = index' class=\"Vlt-dropdown__link has-type\">\n <svg class='Vlt-icon Vlt-icon--small'><use attr.xlink:href=\"volta/volta-brand-icons.svg#{{integrationIcon}}\"/></svg>\n <div class='__gu' [title]='suggestion.label'>{{ suggestion.label }}</div>\n <small class='Vlt-grey-dark' style='text-transform: capitalize;'>{{suggestion.type}}</small>\n </div>\n </div>\n <!-- <div *ngIf='searchResults' class=\"Vlt-dropdown__block\" style='text-align: right; padding-top: 0;'>\n <small>\n {{ searchResults ? searchResults.length+' results' : 'Suggestions' }} <span style='font-style: italic; font-weight: normal;' *ngIf='searchResults'>~{{ model ? 'last search' : searchText}}</span>\n </small>\n </div> -->\n <div class=\"Vlt-dropdown__block\"></div>\n </div>\n </div>\n </div>\n <div class=\"Vlt-composite__prepend\" *ngIf='isPolymorphic && showTypes && (multiple || !model || (dropdownVisible && ((suggestions || searchResults || []).length || searchResourceType.resourceType)))'>\n <div class=\"search-scope\" [ngClass]=\"{ 'has-value': searchResourceType.resourceType }\">\n <vgip-meta-field class='shown' [meta]='searchResourceTypeMeta' [parent]='searchResourceType' (onChange)='onSearchResourceTypeChanged($event)' (onLeave)='onBlur($event)' [integrationCode]='integrationCode' theme='inherit'></vgip-meta-field>\n <svg class='Vlt-icon Vlt-grey Vlt-icon--smaller visible-mobile mobile-icon' style='position: absolute; top: 15px; left: 14px; pointer-events: none;'>\n <use xlink:href=\"volta/volta-icons.svg#Vlt-icon-menu\"/>\n </svg>\n <label class='mobile-label hidden-mobile hidden-desktop'>Search</label>\n </div>\n </div>\n <div *ngIf='!(isPolymorphic && showTypes && (multiple || !model || dropdownVisible))'><!-- required by css --></div>\n <div class=\"Vlt-composite__wrapper Vlt-input\" style='overflow: hidden;' [ngClass]=\"{ 'has-append-button': hasAppendButton && !disabled }\">\n <label class='wrapper'>\n <div class=\"Vlt-composite__prepend Vlt-composite__prepend--icon\" style='top: 0; padding-top: 15px;'>\n <div class=\"Vlt-composite__icon\">\n <svg *ngIf='isSearchable && (!model || multiple)' class='Vlt-grey'><use attr.xlink:href=\"volta/volta-icons.svg#Vlt-icon-{{ multiple ? 'stack' : 'search'}}\"/></svg>\n <svg *ngIf='!isSearchable || (model && !multiple)' [ngStyle]=\"{fill: integrationIcon === 'Brand-icon-vonage' ? 'var(--vgip-meta-input-color)' : ''}\"><use attr.xlink:href=\"volta/volta-brand-icons.svg#{{integrationIcon}}\"/></svg>\n </div>\n <div *ngIf='suggestions.length' class=\"Vlt-badge Vlt-badge--small Vlt-badge--purple\" style='padding: 0px 4px; position: absolute; top: 26px; left: 4px; pointer-events: none; min-width: 14px;'>{{suggestions.length}}</div>\n </div>\n <input class='model' type='hidden' [required]='validations.required' [(ngModel)]='model' #f='ngModel' [name]='name' />\n <input class='main' [readonly]='!isSearchable || (model && !multiple)' [ngModel]='searchText' #ft='ngModel' (ngModelChange)='onSearchTextChanged($event)' [ngModelOptions]=\"{standalone: true}\" type=\"text\" placeholder=\"{{ placeHolderLabel || ' ' }}\" [ngClass]='{ ext: externalLink }' (click)='onActivated($event)' (focus)='onActivated($event)' (blur)='onBlur($event)' [disabled]='disabled' [title]=\"model ? model.label : ''\"/>\n <label class='Vlt-truncate hidden-mobile' style='padding-left: 25px; padding-right: 42px;'>{{ (multiple && isPolymorphic) ? '+Add ' : ((model || !isPolymorphic) ? meta.label : ( meta.searchLabel || 'Search')) }}<span *ngIf='validations.required' class='Vlt-red'>*</span> <span style='color: var(--vgip-meta-input-color); text-transform: capitalize;' *ngIf='model'>({{model.type || model.resourceType || model.length}})</span></label>\n <label class='Vlt-truncate hidden-desktop' style='padding-left: 25px; padding-right: 42px;'>{{meta.label || meta.name}}<span *ngIf='validations.required' class='Vlt-red'>*</span> <span style='color: var(--vgip-meta-input-color); text-transform: capitalize;' *ngIf='model'>({{model.type || model.resourceType || model.length}})</span></label>\n </label>\n <div *ngIf='searching' class='search-progress'>\n <div class=\"container\">\n <div class=\"bar Vlt-bg-purple\"></div>\n </div>\n </div>\n <div class='Vlt-composite__append right-actions'>\n <!-- <div *ngIf='prevModel && !model' class=\"Vlt-composite__append--icon\" (click)='revert()'>\n <div class=\"Vlt-composite__icon\">\n <svg><use xlink:href=\"volta/volta-icons.svg#Vlt-icon-reply\"/></svg>\n </div>\n </div> -->\n <div *ngIf='model && !multiple' class=\"Vlt-composite__append--icon\" (click)='removeSelection()'>\n <div class=\"Vlt-composite__icon\">\n <svg><use xlink:href=\"volta/volta-icons.svg#Vlt-icon-cross\"/></svg>\n </div>\n </div>\n <a [href]='externalLink || model.externalLink' target='_blank' rel='noopener' *ngIf='externalLink && (model && !multiple)' class=\"Vlt-composite__append--icon\" aria-label='Open external'>\n <div class=\"Vlt-composite__icon\">\n <svg><use xlink:href=\"volta/volta-icons.svg#Vlt-icon-open\"/></svg>\n </div>\n </a>\n </div>\n </div>\n <!-- <span *ngIf='hasCreatables'>\n <button type='button' *ngIf='!model || multiple' (click)='openResource()' class=\"Vlt-btn Vlt-btn--secondary Vlt-btn--icon Vlt-btn--large\" style='margin-left: 12px;'>\n <svg><use xlink:href=\"volta/volta-icons.svg#Vlt-icon-plus\"/></svg>\n </button>\n <button type='button' *ngIf='model && !multiple' (click)='openResource(model)' class=\"Vlt-btn Vlt-btn--primary Vlt-btn--icon Vlt-btn--large\" style='margin-left: 12px;'>\n <svg><use xlink:href=\"volta/volta-icons.svg#Vlt-icon-edit\"/></svg>\n </button>\n </span> -->\n <div *ngIf='hasAppendButton && !disabled' class=\"Vlt-composite__append\">\n <button (focus)='onActivated($event)' (blur)='onBlur($event)' type='button' *ngIf='!model || multiple' (click)='openResource()' class=\"Vlt-btn Vlt-btn--white Vlt-btn--icon\" aria-label='Add new'>\n <svg><use xlink:href=\"volta/volta-icons.svg#Vlt-icon-plus\"/></svg>\n </button>\n <button (focus)='onActivated($event)' (blur)='onBlur($event)' type='button' *ngIf='model && !multiple' (click)='openResource(model)' class=\"Vlt-btn Vlt-btn--white Vlt-btn--icon\" aria-label='Edit'>\n <svg><use xlink:href=\"volta/volta-icons.svg#Vlt-icon-edit\"/></svg>\n </button>\n </div>\n </div>\n <small *ngIf='f.invalid && ((f | metaModel)._parent.submitted || ((ft | metaModel).touched && keyListenerActive))' class=\"Vlt-form__element__error\">\n <span *ngIf=\"f.errors.required\">Required</span>\n <span *ngIf=\"f.errors.pattern\">Should match '{{validations.pattern}}' pattern</span>\n <span *ngIf=\"f.errors.custom\">{{f.errors.custom}} </span>\n </small>\n <small *ngIf='meta.helpText || meta.hint' class=\"Vlt-form__element__hint\">{{meta.helpText || meta.hint}}</small>\n</div>\n"],"names":["i1.MetaReferenceService","i2.MetaResourceService","i3.MetaMsgService","i4.MetaContextService","i5.MetaTrackerService","i6","i7","i8.MetaField","i9.MetaModelPipe"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"vgip-meta-ui-index-640f8e62.mjs","sources":["../../../projects/meta-ui/src/lib/fieldRadio/index.ts","../../../projects/meta-ui/src/lib/fieldRadio/view.html"],"sourcesContent":["/*\n * @Author: Alexander.Vangelov@vonage.com\n * @Date: 2019-09-19 17:35:19\n * @Last Modified by: Alexander.Vangelov@vonage.com\n * @Last Modified time: 2020-03-26 12:56:38\n */\n\nimport { Component, Input, OnInit } from '@angular/core';\nimport { ControlContainer, NgForm } from '@angular/forms';\n\nimport { FieldAbstract } from '../fieldAbstract';\n\n@Component({\n templateUrl: './view.html',\n styleUrls: ['./style.scss'],\n viewProviders: [{ provide: ControlContainer, useExisting: NgForm }]\n})\n\nexport class FieldRadio extends FieldAbstract implements OnInit {\n @Input() meta: any;\n value: any;\n\n get options() {\n return this.meta.options || this.meta.picklist;\n }\n\n ngOnInit() {\n this.validationAttributes = ['required'];\n const origValue = this.parent[this.meta.name];\n Object.defineProperty(this.parent, this.meta.name, {\n set: (value) => {\n if (value) {\n for (const o of this.options) {\n if ((value.id || value) === (o.id || o.value || o.name || o)) {\n this.model = o;\n this.value = this.modelToValue(o, this.meta.valueType);\n break;\n }\n }\n } else {\n delete this.model;\n delete this.value;\n }\n this.meta.$optional = this.isOptional;\n },\n get: () => this.value,\n enumerable: this.sendToServer,\n configurable: true\n });\n\n if (origValue) {\n this.parent[this.meta.name] = origValue;\n }\n\n if (this.default && !this.model) {\n setTimeout(() => {\n this.parent[this.meta.name] = this.meta.valueType === 'object' ? this.default : (this.default.id || this.default);\n setTimeout(() => {\n this.onModelChange(this.model);\n }, 0);\n }, 0);\n }\n }\n\n onOptionChange(model) {\n this.model = model;\n this.onModelChange(this.model);\n }\n\n onActivated(ev) {\n if (!this.keyListenerActive) {\n ev.srcElement.addEventListener('keydown', this.keydown);\n }\n }\n\n onBlur(ev) {\n if (this.keyListenerActive) {\n ev.srcElement.removeEventListener('keydown', this.keydown);\n }\n }\n\n private keydown = (event) => {\n switch (event.key) {\n case 'Backspace': {\n event.preventDefault();\n event.stopPropagation();\n this.clear();\n break;\n }\n }\n };\n}\n","<div class='vgip-meta-field-preview' *ngIf='preview && model'>\n <div class='vgip-meta-field-label' [title]='meta.label || meta.name'>{{meta.label || meta.name}}</div>\n <div class='vgip-meta-field-value __gu'>\n {{ model.label || model }}\n </div>\n</div>\n<div *ngIf='!preview' class=\"Vlt-form__element\" [ngClass]=\"{ 'Vlt-form__element--error': f && f.invalid && ((f | metaModel)._parent.submitted || (f | metaModel ).touched) }\">\n\t<label class=\"Vlt-label\">{{meta.label || meta.name}}<span *ngIf='validations.required' class='Vlt-red'>*</span></label>\n\t<input class='model' type='hidden' [required]='validations.required' [(ngModel)]='model' #f='ngModel' [name]='name' />\n\t<fieldset *ngFor='let option of options' class=\"Vlt-radio Vlt-radio--inline\">\n\t\t<label style='cursor: pointer;'>\n\t\t\t<span class=\"Vlt-radio__button\">\n <input class='main' (change)='onOptionChange(option)' type=\"radio\" [checked]='option === model' [value]='option' [name]='name' (focus)='onActivated($event)' (blur)='onBlur($event)'/>\n <span class=\"Vlt-radio__icon\"></span>\n </span>\n\t\t\t<span style='white-space: nowrap;'>{{option.label || option}}</span>\n\t\t</label>\n\t</fieldset>\n\t<small *ngIf='f && f.invalid && ((f | metaModel)._parent.submitted || (f | metaModel ).touched)' class=\"Vlt-form__element__error\">\n\t\t<span *ngIf=\"f.errors.required\">Required. </span>\n\t\t<span *ngIf=\"f.errors.custom\">{{f.errors.custom}} </span>\n\t</small>\n\t<small *ngIf='meta.hint' class=\"Vlt-form__element__hint\">{{meta.hint}}</small>\n</div>\n"],"names":["i3.MetaModelPipe"],"mappings":"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"}
|