@vgip/meta-ui 1.6.3 → 1.6.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/esm2020/lib/common/fieldNormalizer/index.mjs +7 -1
  2. package/esm2020/lib/common/metaNormalizer.mjs +7 -1
  3. package/esm2020/lib/fieldHidden/index.mjs +18 -0
  4. package/esm2020/lib/fieldRadio/index.mjs +3 -3
  5. package/esm2020/lib/fieldReference/index.mjs +8 -6
  6. package/esm2020/lib/index.mjs +5 -2
  7. package/esm2020/lib/layout/index.mjs +3 -3
  8. package/esm2020/lib/metaField/index.mjs +4 -1
  9. package/esm2020/lib/refDialog/index.mjs +1 -1
  10. package/esm2020/lib/resource/index.mjs +9 -5
  11. package/fesm2015/{vgip-meta-ui-index-da2ecdec.mjs → vgip-meta-ui-index-0c552739.mjs} +3 -3
  12. package/fesm2015/{vgip-meta-ui-index-da2ecdec.mjs.map → vgip-meta-ui-index-0c552739.mjs.map} +1 -1
  13. package/fesm2015/{vgip-meta-ui-index-b06db34f.mjs → vgip-meta-ui-index-15dcf7b5.mjs} +2 -2
  14. package/fesm2015/{vgip-meta-ui-index-b06db34f.mjs.map → vgip-meta-ui-index-15dcf7b5.mjs.map} +1 -1
  15. package/fesm2015/{vgip-meta-ui-index-d4adecb8.mjs → vgip-meta-ui-index-4d9daab3.mjs} +26 -9
  16. package/fesm2015/vgip-meta-ui-index-4d9daab3.mjs.map +1 -0
  17. package/fesm2015/vgip-meta-ui-index-50b9fec5.mjs +95 -0
  18. package/fesm2015/vgip-meta-ui-index-50b9fec5.mjs.map +1 -0
  19. package/fesm2015/{vgip-meta-ui-index-49945788.mjs → vgip-meta-ui-index-9ef72a41.mjs} +10 -8
  20. package/fesm2015/vgip-meta-ui-index-9ef72a41.mjs.map +1 -0
  21. package/fesm2015/{vgip-meta-ui-index-7b049bac.mjs → vgip-meta-ui-index-adfcae76.mjs} +2 -2
  22. package/fesm2015/{vgip-meta-ui-index-7b049bac.mjs.map → vgip-meta-ui-index-adfcae76.mjs.map} +1 -1
  23. package/fesm2015/{vgip-meta-ui-index-73d82a16.mjs → vgip-meta-ui-index-caafe70c.mjs} +9 -6
  24. package/fesm2015/vgip-meta-ui-index-caafe70c.mjs.map +1 -0
  25. package/fesm2015/vgip-meta-ui-index-eb92e6e3.mjs +23 -0
  26. package/fesm2015/vgip-meta-ui-index-eb92e6e3.mjs.map +1 -0
  27. package/fesm2015/vgip-meta-ui.mjs +13 -10
  28. package/fesm2015/vgip-meta-ui.mjs.map +1 -1
  29. package/fesm2020/{vgip-meta-ui-index-bdbbd9af.mjs → vgip-meta-ui-index-169df58e.mjs} +2 -2
  30. package/fesm2020/{vgip-meta-ui-index-bdbbd9af.mjs.map → vgip-meta-ui-index-169df58e.mjs.map} +1 -1
  31. package/fesm2020/vgip-meta-ui-index-50b9fec5.mjs +95 -0
  32. package/fesm2020/vgip-meta-ui-index-50b9fec5.mjs.map +1 -0
  33. package/fesm2020/{vgip-meta-ui-index-67e60328.mjs → vgip-meta-ui-index-69095f3e.mjs} +25 -9
  34. package/fesm2020/vgip-meta-ui-index-69095f3e.mjs.map +1 -0
  35. package/fesm2020/{vgip-meta-ui-index-f657d1a0.mjs → vgip-meta-ui-index-70f8f801.mjs} +10 -8
  36. package/fesm2020/vgip-meta-ui-index-70f8f801.mjs.map +1 -0
  37. package/fesm2020/{vgip-meta-ui-index-75b13454.mjs → vgip-meta-ui-index-97aa8d2a.mjs} +2 -2
  38. package/fesm2020/{vgip-meta-ui-index-75b13454.mjs.map → vgip-meta-ui-index-97aa8d2a.mjs.map} +1 -1
  39. package/fesm2020/vgip-meta-ui-index-eb92e6e3.mjs +23 -0
  40. package/fesm2020/vgip-meta-ui-index-eb92e6e3.mjs.map +1 -0
  41. package/fesm2020/{vgip-meta-ui-index-3a0bf3f8.mjs → vgip-meta-ui-index-f0eff384.mjs} +9 -6
  42. package/fesm2020/vgip-meta-ui-index-f0eff384.mjs.map +1 -0
  43. package/fesm2020/{vgip-meta-ui-index-1b4cf6cf.mjs → vgip-meta-ui-index-f82f305b.mjs} +3 -3
  44. package/fesm2020/{vgip-meta-ui-index-1b4cf6cf.mjs.map → vgip-meta-ui-index-f82f305b.mjs.map} +1 -1
  45. package/fesm2020/vgip-meta-ui.mjs +13 -10
  46. package/fesm2020/vgip-meta-ui.mjs.map +1 -1
  47. package/lib/fieldHidden/index.d.ts +6 -0
  48. package/lib/index.d.ts +9 -7
  49. package/lib/resource/index.d.ts +3 -2
  50. package/package.json +1 -1
  51. package/fesm2015/vgip-meta-ui-index-49945788.mjs.map +0 -1
  52. package/fesm2015/vgip-meta-ui-index-73d82a16.mjs.map +0 -1
  53. package/fesm2015/vgip-meta-ui-index-8a80f78d.mjs +0 -95
  54. package/fesm2015/vgip-meta-ui-index-8a80f78d.mjs.map +0 -1
  55. package/fesm2015/vgip-meta-ui-index-d4adecb8.mjs.map +0 -1
  56. package/fesm2020/vgip-meta-ui-index-3a0bf3f8.mjs.map +0 -1
  57. package/fesm2020/vgip-meta-ui-index-67e60328.mjs.map +0 -1
  58. package/fesm2020/vgip-meta-ui-index-8a80f78d.mjs +0 -95
  59. package/fesm2020/vgip-meta-ui-index-8a80f78d.mjs.map +0 -1
  60. package/fesm2020/vgip-meta-ui-index-f657d1a0.mjs.map +0 -1
@@ -6,25 +6,26 @@ import { FormsModule, ReactiveFormsModule } from '@angular/forms';
6
6
  import { HttpClientModule } from '@angular/common/http';
7
7
  import * as i4 from 'ngx-quill';
8
8
  import { QuillModule } from 'ngx-quill';
9
- import { M as MetaRefDialog, a as MetaResourceService, b as MetaReferenceService, c as MetaLayout, d as MetaResource, e as MetaAutofocusDirective } from './vgip-meta-ui-index-67e60328.mjs';
10
- export { g as MetaHttpClient, f as MetaMsgService, m as metaNormalizer } from './vgip-meta-ui-index-67e60328.mjs';
9
+ import { M as MetaRefDialog, a as MetaResourceService, b as MetaReferenceService, c as MetaLayout, d as MetaResource, e as MetaAutofocusDirective } from './vgip-meta-ui-index-69095f3e.mjs';
10
+ export { g as MetaHttpClient, f as MetaMsgService, m as metaNormalizer } from './vgip-meta-ui-index-69095f3e.mjs';
11
11
  import { FieldUnknown } from './vgip-meta-ui-index-b1f2dc7e.mjs';
12
12
  import { FieldInput } from './vgip-meta-ui-index-bcc42b36.mjs';
13
13
  import { FieldText } from './vgip-meta-ui-index-dc3b86fd.mjs';
14
- import { FieldSelect } from './vgip-meta-ui-index-1b4cf6cf.mjs';
15
- import { F as FieldReference } from './vgip-meta-ui-index-f657d1a0.mjs';
16
- export { M as MetaTrackerService } from './vgip-meta-ui-index-f657d1a0.mjs';
17
- import { FieldComposite } from './vgip-meta-ui-index-bdbbd9af.mjs';
14
+ import { FieldSelect } from './vgip-meta-ui-index-f82f305b.mjs';
15
+ import { F as FieldReference } from './vgip-meta-ui-index-70f8f801.mjs';
16
+ export { M as MetaTrackerService } from './vgip-meta-ui-index-70f8f801.mjs';
17
+ import { FieldComposite } from './vgip-meta-ui-index-169df58e.mjs';
18
18
  import { FieldBoolean } from './vgip-meta-ui-index-619930c4.mjs';
19
- import { FieldRadio } from './vgip-meta-ui-index-8a80f78d.mjs';
20
- import { FieldList } from './vgip-meta-ui-index-75b13454.mjs';
19
+ import { FieldRadio } from './vgip-meta-ui-index-50b9fec5.mjs';
20
+ import { FieldList } from './vgip-meta-ui-index-97aa8d2a.mjs';
21
21
  import { FieldRichtext } from './vgip-meta-ui-index-a03a7056.mjs';
22
22
  import { FieldDatetime } from './vgip-meta-ui-index-6055a61f.mjs';
23
+ import { FieldHidden } from './vgip-meta-ui-index-eb92e6e3.mjs';
23
24
  import * as i1$1 from '@angular/platform-browser';
24
25
  import { M as MetaModelPipe } from './vgip-meta-ui-metaModel.pipe-4b068359.mjs';
25
26
  import { M as MetaContextService } from './vgip-meta-ui-index-6e77c362.mjs';
26
27
  export { r as relativeTimeBuilder } from './vgip-meta-ui-relativeTimeBuilder-31791ce4.mjs';
27
- import { M as MetaField, a as MetaFieldContentDirective } from './vgip-meta-ui-index-3a0bf3f8.mjs';
28
+ import { M as MetaField, a as MetaFieldContentDirective } from './vgip-meta-ui-index-f0eff384.mjs';
28
29
  export { a as metaDark, m as metaLight } from './vgip-meta-ui-fieldAbstract-5d159575.mjs';
29
30
  import 'rxjs';
30
31
  import 'rxjs/operators';
@@ -427,6 +428,7 @@ MetaModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15
427
428
  FieldList,
428
429
  FieldRichtext,
429
430
  FieldDatetime,
431
+ FieldHidden,
430
432
  MetaAutofocusDirective], imports: [CommonModule,
431
433
  FormsModule,
432
434
  ReactiveFormsModule,
@@ -477,6 +479,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
477
479
  FieldList,
478
480
  FieldRichtext,
479
481
  FieldDatetime,
482
+ FieldHidden,
480
483
  MetaAutofocusDirective
481
484
  ],
482
485
  exports: [
@@ -517,5 +520,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
517
520
  * Generated bundle index. Do not edit.
518
521
  */
519
522
 
520
- export { FieldBoolean, FieldComposite, FieldDatetime, FieldInput, FieldList, FieldRadio, FieldReference, FieldRichtext, FieldSelect, FieldText, FieldUnknown, MetaAutofocusDirective, MetaContextService, MetaField, MetaFieldContentDirective, MetaIconsPipe, MetaLayout, MetaModelPipe, MetaModule, MetaRefDialog, MetaReferenceService, MetaResource, MetaResourceCard, MetaResourceService, MetaStripHtmlPipe, ResourceDraftsService };
523
+ export { FieldBoolean, FieldComposite, FieldDatetime, FieldHidden, FieldInput, FieldList, FieldRadio, FieldReference, FieldRichtext, FieldSelect, FieldText, FieldUnknown, MetaAutofocusDirective, MetaContextService, MetaField, MetaFieldContentDirective, MetaIconsPipe, MetaLayout, MetaModelPipe, MetaModule, MetaRefDialog, MetaReferenceService, MetaResource, MetaResourceCard, MetaResourceService, MetaStripHtmlPipe, ResourceDraftsService };
521
524
  //# sourceMappingURL=vgip-meta-ui.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"vgip-meta-ui.mjs","sources":["../../../projects/meta-ui/src/lib/resourceCard/index.ts","../../../projects/meta-ui/src/lib/resourceCard/view.html","../../../projects/meta-ui/src/lib/common/metaIcons.pipe.ts","../../../projects/meta-ui/src/lib/common/metaStripHtml.pipe.ts","../../../projects/meta-ui/src/lib/common/utils/indexedDbStore/index.ts","../../../projects/meta-ui/src/lib/services/resourceDrafts/index.ts","../../../projects/meta-ui/src/lib/index.ts","../../../projects/meta-ui/src/public-api.ts","../../../projects/meta-ui/src/vgip-meta-ui.ts"],"sourcesContent":["import { Component, Input, OnInit, ViewContainerRef } from '@angular/core';\nimport { MetaResourceService } from '../services/metaResource';\nimport { MetaReferenceService } from '../services/metaReference';\nimport { MetaRefDialog } from '../refDialog';\n\n@Component({\n selector: 'vgip-meta-resource-card',\n templateUrl: './view.html',\n styleUrls: ['./style.scss']\n})\nexport class MetaResourceCard implements OnInit {\n @Input() resource: any;\n @Input() model: any;\n\n integrationCode: string;\n\n constructor(\n private metaResource: MetaResourceService,\n private referenceService: MetaReferenceService,\n private viewContainerRef: ViewContainerRef\n ) { }\n\n ngOnInit() {\n this.integrationCode = (this.resource.integration || this.resource.integrationCode || '').toLowerCase();\n }\n\n open(reference, model?) {\n const refDialogComponent = this.viewContainerRef.createComponent(MetaRefDialog);\n this.referenceService.openDialog(\n refDialogComponent, this.metaResource, this.integrationCode, reference, model,\n model && (reference.editable === false) // is preview mode\n ).subscribe((result: any) => {\n console.log('dialog result', result);\n // if (result && result.raw) {\n // if (!this.parent[reference.type]) {\n // this.parent[reference.type] = [];\n // }\n // this.parent[reference.type].push(result.raw);\n // }\n });\n }\n\n}\n","<div class=\"Vlt-card Vlt-bg-white\">\n\t<div class=\"Vlt-card__content Vlt-btn-on-hover\">\n\t\t<h5>{{model.Subject || model.subject || model.summary || model.title || model.CaseNumber || model.comment || model.body || model.name || model.topic || '...' }}</h5>\n\t\t<div style='font-size: 12px; line-height: 16px;'>\n\t\t\tCreated: <span class='Vlt-black'>{{model._vgis.createdDate | date:'mediumDate'}}</span>\n\t\t\tEdited: <span class='Vlt-black'>{{model._vgis.modifiedDate | date:'medium'}}</span>\n\t\t</div>\n\t\t<div class=\"Vlt-badge Vlt-badge--app Vlt-badge--purple Vlt-badge--small\">{{model._vgis.resourceType}}</div>\n\t\t<div class=\"Vlt-btn-group Vlt-btn-group--hover\">\n\t\t\t<a *ngIf='model._vgis.externalLink' attr.href='{{model._vgis.externalLink}}' target='_blank' rel='noopener' class=\"Vlt-btn Vlt-btn--tertiary Vlt-btn--icon\" aria-label='Open external'><svg style='margin-left: 0; margin-right: 0;'><use xlink:href=\"volta/volta-icons.svg#Vlt-icon-open\"/></svg></a>\n\t\t\t<button type='button' (click)='open(resource, model)' class=\"Vlt-btn Vlt-btn--tertiary Vlt-btn--icon\" aria-label='Edit'><svg style='margin-left: 0; margin-right: 0;'><use xlink:href=\"volta/volta-icons.svg#Vlt-icon-edit\"/></svg></button>\n\t\t</div>\n\t</div>\n</div>\n","/*\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: 2019-11-05 13:46:18\n */\n\nimport { Pipe, PipeTransform } from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\n@Pipe({\n name: 'metaIcons'\n})\nexport class MetaIconsPipe implements PipeTransform {\n\n constructor(protected sanitizer: DomSanitizer) { }\n\n transform(value: any, ...args: any[]): any {\n if (typeof(value) === 'string') {\n value = value.replace(\n /\\${\\s*icon:([\\w\\-]+)\\s*}/g, \n (match, val) => `<svg class='Vlt-icon'><use xlink:href=\"volta/volta-icons.svg#${val}\"/></svg>`\n );\n return value; //this.sanitizer.bypassSecurityTrustHtml(value);\n }\n }\n\n}\n","/*\n* @Author: Alexander.Vangelov@vonage.com\n* @Date: 2020-04-14 12:15:36\n * @Last Modified by: Alexander.Vangelov@vonage.com\n * @Last Modified time: 2020-04-14 12:21:57\n*/\n\nimport { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'metaStripHtml'\n})\nexport class MetaStripHtmlPipe implements PipeTransform {\n transform(value: string): any {\n return value.replace(/<[^>]*>/g, '');\n }\n}\n","/*\n * @Author: Alexander.Vangelov@vonage.com\n * @Date: 2020-02-10 18:47:45\n * @Last Modified by: Alexander.Vangelov@vonage.com\n * @Last Modified time: 2020-02-28 13:29:23\n */\n\nexport interface IStoreRecord {\n id?: string | number;\n}\n\nexport interface IStore {\n initCollection(collectionName: string, items?: Array<IStoreRecord>, callback?: (err, result?) => void): any;\n findById(collectionName, id: number | string, callback?: (err, result?) => void): any;\n save(collectionName: string, record: any, callback?: (err, result?) => void): any;\n find(collectionName: string, conditions: any, options: any, callback: (err, result?) => void);\n findOne(collectionName: string, conditions: any, options: any, callback?: (err, result?) => void);\n}\n\nexport class IndexedDbStore implements IStore {\n indxDb: IDBFactory;\n db: IDBDatabase;\n dbName: string;\n\n constructor(dbName: string = 'vgip') {\n this.dbName = dbName;\n this.indxDb = window.indexedDB || (window as any).mozIndexedDB || (window as any).webkitIndexedDB || (window as any).msIndexedDB;\n }\n\n _getDb(callback: (err, result?) => void) {\n const self = this;\n if (this.db) {\n return callback(null, this.db);\n }\n const req = this.indxDb.open(this.dbName);\n req.onupgradeneeded = (ev: any) => {\n self.db = ev.target.result;\n const objectStore = self.db.createObjectStore('Draft', { keyPath: 'id', autoIncrement: true });\n objectStore.createIndex('contextIndex', 'context', { unique: false });\n objectStore.createIndex('contextintegrationIndex', ['context', 'integration'], { unique: false });\n objectStore.createIndex('contextintegrationresourceIndex', ['context', 'integration', 'resource'], { unique: true });\n };\n if (callback) {\n req.onsuccess = (ev: any) => {\n self.db = ev.target.result;\n callback(null, self.db);\n };\n }\n req.onerror = (ev: any) => {\n if (callback) {\n callback(ev.error);\n }\n };\n }\n\n initCollection(collectionName: string, items: Array<IStoreRecord> = [], callback: (err, result?) => void) {\n const self = this;\n this._getDb((err) => { // eslint-disable-line no-underscore-dangle\n if (err && callback) {\n return callback(err);\n }\n if (callback) {\n callback(null, self.db);\n }\n });\n }\n\n reset(callback: (err, result?) => void) {\n this._getDb((err) => { // eslint-disable-line no-underscore-dangle\n if (err) {\n return callback(err);\n }\n this.db.close();\n this.indxDb.deleteDatabase(this.dbName);\n delete this.db;\n this._getDb(callback); // eslint-disable-line no-underscore-dangle\n });\n }\n\n findById(collectionName: string, id: number | string, callback: (err, result?) => void): any {\n const tx = this.db.transaction([collectionName]);\n const store = tx.objectStore(collectionName);\n const request = store.get(parseInt(`${id}`, 10));\n if (callback) {\n request.onerror = () => {\n callback(request.error);\n };\n }\n request.onsuccess = () => {\n if (!request.result) {\n callback({ message: 'Not Found' });\n } else if (callback) {\n callback(null, request.result);\n }\n };\n }\n\n destroyById(collectionName: string, id: number | string, callback: (err, result?) => void): any {\n const tx = this.db.transaction([collectionName], 'readwrite');\n const store = tx.objectStore(collectionName);\n const request = store.delete(parseInt(`${id}`, 10));\n if (callback) {\n request.onerror = () => {\n callback(request.error);\n };\n }\n request.onsuccess = () => {\n if (callback) {\n callback(null, request.result);\n }\n };\n }\n\n findOne(collectionName: string, conditions: any, options: any, callback?: (err, result?) => void): any {\n const tx = this.db.transaction([collectionName]);\n const store = tx.objectStore(collectionName);\n const conditionsKeys = Object.keys(conditions);\n let idx: IDBIndex;\n let req: IDBRequest;\n if (conditionsKeys.length > 1) {\n const vals = [];\n conditionsKeys.forEach((key) => vals.push(conditions[key]));\n idx = store.index(`${conditionsKeys.join('')}Index`);\n req = idx.get(vals);\n } else {\n idx = store.index(`${conditionsKeys[0]}Index`);\n req = idx.get(conditions[conditionsKeys[0]]);\n }\n if (callback) {\n req.onerror = () => {\n callback(req.error);\n };\n }\n req.onsuccess = (ev: any) => {\n if (!ev.target.result) {\n callback({ message: 'Not Found' });\n } else if (callback) {\n callback(null, ev.target.result);\n }\n };\n }\n\n find(collectionName: string, conditions: any, options: any, callback?: (err, result?) => void): Array<IStoreRecord> | any {\n const tx = this.db.transaction([collectionName]);\n const store = tx.objectStore(collectionName);\n const conditionsKeys = Object.keys(conditions);\n let idx: IDBIndex;\n let req: IDBRequest;\n if (conditionsKeys.length > 1) {\n const vals = [];\n conditionsKeys.forEach((key) => vals.push(conditions[key]));\n idx = store.index(`${conditionsKeys.join('')}Index`);\n req = idx.openCursor(vals);\n } else {\n idx = store.index(`${conditionsKeys[0]}Index`);\n req = idx.openCursor(conditions[conditionsKeys[0]]);\n }\n req.onerror = () => {\n if (callback) {\n callback(req.error);\n }\n };\n const items = [];\n req.onsuccess = (ev: any) => {\n const cursor = ev.target.result;\n if (cursor) {\n items.push(cursor.value);\n cursor.continue();\n } else if (callback) {\n callback(null, items);\n }\n };\n }\n\n save(collectionName: string, model: any, callback?: (err, result?) => void) {\n const record = model; // model.toJson(true, false);\n const createNew = () => {\n const txN = this.db.transaction([collectionName], 'readwrite');\n const request = txN.objectStore(collectionName).add(record);\n if (callback) {\n request.onerror = () => callback(request.error);\n }\n request.onsuccess = () => {\n record.id = request.result;\n if (callback) {\n callback(null, record);\n }\n };\n };\n\n const updateOldById = (id) => {\n const txO = this.db.transaction([collectionName], 'readwrite');\n const storeW = txO.objectStore(collectionName);\n const getRequest = storeW.get(id);\n if (callback) {\n getRequest.onerror = () => callback(getRequest.error);\n }\n getRequest.onsuccess = () => {\n const existing = getRequest.result;\n if (!existing) {\n callback({ message: 'Not Found' });\n } else {\n for (const p of Object.keys(record)) {\n existing[p] = record[p];\n }\n const updateRequest = storeW.put(existing);\n updateRequest.onerror = () => callback(updateRequest.error);\n updateRequest.onsuccess = (ev: any) => {\n if (typeof (callback) === 'function') {\n callback(null, existing);\n }\n };\n }\n };\n };\n\n if (record.id) {\n updateOldById(record.id);\n } else if (record.integration && record.resource) {\n this.findOne(collectionName, {\n context: record.context || '',\n integration: record.integration || '',\n resource: record.resource || ''\n }, null, (err, existing) => {\n if (!existing) {\n createNew(); \n } else {\n updateOldById(existing.id);\n }\n });\n } else {\n createNew();\n }\n }\n}\n","/*\n * @Author: Alexander.Vangelov@vonage.com \n * @Date: 2020-02-10 17:35:19 \n * @Last Modified by: Alexander.Vangelov@vonage.com\n * @Last Modified time: 2020-02-13 06:17:24\n */\n\nimport { Injectable } from '@angular/core';\n\nimport { IndexedDbStore } from '../../common/utils/indexedDbStore';\nimport { MetaContextService } from '../metaContext';\n\nconst COLELCTION = 'Draft';\n\nexport interface IDraft {\n id: string | number;\n integrationCode: string;\n resourceType: string;\n contextUid: string;\n timestamp: number;\n data?: string;\n}\n@Injectable({\n providedIn: 'root'\n})\nexport class ResourceDraftsService {\n store: IndexedDbStore;\n db: any;\n constructor(private context: MetaContextService) {\n this.store = new IndexedDbStore('vgip');\n }\n\n init(cb?: (err, db?) => void) {\n if (!this.db) {\n this.store.initCollection(COLELCTION, null, (err, db) => {\n this.db = db;\n cb(err, this.db);\n });\n } else {\n cb(null, this.db);\n }\n }\n\n list(integrationCode, resourceType, cb: (err, drafts?: Array<IDraft>) => void) {\n console.log('list drafts', this.context.uid, integrationCode, resourceType);\n }\n\n save(integrationCode, resourceType, draft, cb?: (err, draft?: IDraft) => void) {\n const now = new Date().getTime();\n this.store.save(COLELCTION, {\n context: this.context.uid || '',\n integration: integrationCode || '',\n resource: resourceType || '',\n timestamp: now,\n data: draft\n }, cb);\n }\n\n findOne(integrationCode, resourceType, cb: (err, drafts?: IDraft) => void) {\n this.store.findOne(COLELCTION, {\n context: this.context.uid || '',\n integration: integrationCode || '',\n resource: resourceType || ''\n }, null, cb);\n }\n\n find(params, cb: (err, drafts?: Array<IDraft>) => void) {\n this.store.find(COLELCTION, params, null, cb);\n }\n\n findById(draftId, cb?: (err, drafts?: IDraft) => void) {\n this.store.findById(COLELCTION, draftId, cb);\n }\n\n destroyDraft(draft, cb?: (err, drafts?: IDraft) => void) {\n if (draft && draft.id) {\n this.store.destroyById(COLELCTION, draft.id, cb);\n }\n }\n}\n","/*\n * @Author: Alexander.Vangelov@vonage.com \n * @Date: 2019-09-19 17:34:34 \n * @Last Modified by: Alexander.Vangelov@vonage.com\n * @Last Modified time: 2021-02-09 16:57:29\n */\n\nimport { NgModule, ModuleWithProviders } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { HttpClientModule } from '@angular/common/http';\n\nimport { QuillModule } from 'ngx-quill';\n\nimport { MetaRefDialog } from './refDialog';\n\nimport { MetaLayout } from './layout';\n\nimport { MetaResource } from './resource';\n\nimport { MetaResourceCard } from './resourceCard';\n\nimport { FieldUnknown } from './fieldUnknown';\nimport { FieldInput } from './fieldInput';\nimport { FieldText } from './fieldText';\n\nimport { FieldSelect } from './fieldSelect';\n\nimport { FieldReference } from './fieldReference';\n\nimport { FieldComposite } from './fieldComposite';\n\nimport { FieldBoolean } from './fieldBoolean';\nimport { FieldRadio } from './fieldRadio';\n\nimport { FieldList } from './fieldList';\n\nimport { FieldRichtext } from './fieldRichtext';\nimport { FieldDatetime } from './fieldDatetime';\n\nimport { MetaIconsPipe } from './common/metaIcons.pipe';\nimport { MetaModelPipe } from './common/metaModel.pipe';\nimport { MetaStripHtmlPipe } from './common/metaStripHtml.pipe';\nimport { MetaAutofocusDirective } from './common/metaAutofocus.directive';\nimport { MetaContextService } from './services/metaContext';\nimport { MetaTrackerService } from './services/metaTracker';\nimport { ResourceDraftsService } from './services/resourceDrafts';\nimport { MetaMsgService } from './services/metaMsg';\nimport { MetaReferenceService } from './services/metaReference';\nimport { MetaResourceService } from './services/metaResource';\nimport { MetaHttpClient } from './services/metaResource/metaHttpClient';\nimport { relativeTimeBuilder } from './common/utils/relativeTimeBuilder';\nimport { MetaField, MetaFieldContentDirective } from './metaField';\n\nexport * from './common/utils/colorThemes';\nexport * from './common/metaNormalizer';\n\n@NgModule({\n declarations: [\n MetaIconsPipe,\n MetaModelPipe,\n MetaStripHtmlPipe,\n MetaField, \n MetaRefDialog,\n MetaFieldContentDirective,\n MetaLayout,\n MetaResource,\n MetaResourceCard,\n FieldUnknown,\n FieldInput,\n FieldText,\n FieldSelect,\n FieldReference,\n FieldComposite,\n FieldBoolean,\n FieldRadio,\n FieldList,\n FieldRichtext,\n FieldDatetime,\n MetaAutofocusDirective\n ],\n exports: [\n MetaIconsPipe,\n MetaModelPipe,\n MetaStripHtmlPipe,\n MetaField,\n MetaLayout,\n MetaResource,\n MetaResourceCard,\n MetaAutofocusDirective\n ],\n imports: [\n CommonModule,\n FormsModule, \n ReactiveFormsModule,\n HttpClientModule,\n QuillModule.forRoot({\n modules: {\n toolbar: [\n ['bold', 'italic', 'underline'],\n [{ list: 'bullet' }],\n [{ header: [1, 2, 3, 4, 5, 6, false] }],\n [{ font: [] }],\n [{ align: [] }]\n ]\n }\n })\n ]\n})\nexport class MetaModule {\n static withProviders(customProviders: any): ModuleWithProviders<MetaModule> {\n return {\n ngModule: MetaModule,\n providers: customProviders\n };\n }\n}\n\nexport { \n MetaField, MetaFieldContentDirective, MetaRefDialog, MetaResourceCard,\n MetaIconsPipe, MetaModelPipe, MetaStripHtmlPipe, MetaAutofocusDirective,\n FieldUnknown, FieldInput, FieldText, FieldSelect, MetaLayout, MetaResource,\n FieldBoolean, FieldRadio, FieldList, FieldComposite, FieldReference,\n FieldRichtext, FieldDatetime, MetaContextService, MetaTrackerService, ResourceDraftsService,\n MetaMsgService, MetaReferenceService, MetaResourceService, MetaHttpClient,\n relativeTimeBuilder\n};\n","/*\n * Public API Surface of meta-ui\n */\n\nexport * from './lib';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.MetaResourceService","i2.MetaReferenceService","i3","i1","i1.MetaContextService"],"mappings":"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"}
1
+ {"version":3,"file":"vgip-meta-ui.mjs","sources":["../../../projects/meta-ui/src/lib/resourceCard/index.ts","../../../projects/meta-ui/src/lib/resourceCard/view.html","../../../projects/meta-ui/src/lib/common/metaIcons.pipe.ts","../../../projects/meta-ui/src/lib/common/metaStripHtml.pipe.ts","../../../projects/meta-ui/src/lib/common/utils/indexedDbStore/index.ts","../../../projects/meta-ui/src/lib/services/resourceDrafts/index.ts","../../../projects/meta-ui/src/lib/index.ts","../../../projects/meta-ui/src/public-api.ts","../../../projects/meta-ui/src/vgip-meta-ui.ts"],"sourcesContent":["import { Component, Input, OnInit, ViewContainerRef } from '@angular/core';\nimport { MetaResourceService } from '../services/metaResource';\nimport { MetaReferenceService } from '../services/metaReference';\nimport { MetaRefDialog } from '../refDialog';\n\n@Component({\n selector: 'vgip-meta-resource-card',\n templateUrl: './view.html',\n styleUrls: ['./style.scss']\n})\nexport class MetaResourceCard implements OnInit {\n @Input() resource: any;\n @Input() model: any;\n\n integrationCode: string;\n\n constructor(\n private metaResource: MetaResourceService,\n private referenceService: MetaReferenceService,\n private viewContainerRef: ViewContainerRef\n ) { }\n\n ngOnInit() {\n this.integrationCode = (this.resource.integration || this.resource.integrationCode || '').toLowerCase();\n }\n\n open(reference, model?) {\n const refDialogComponent = this.viewContainerRef.createComponent(MetaRefDialog);\n this.referenceService.openDialog(\n refDialogComponent, this.metaResource, this.integrationCode, reference, model,\n model && (reference.editable === false) // is preview mode\n ).subscribe((result: any) => {\n console.log('dialog result', result);\n // if (result && result.raw) {\n // if (!this.parent[reference.type]) {\n // this.parent[reference.type] = [];\n // }\n // this.parent[reference.type].push(result.raw);\n // }\n });\n }\n\n}\n","<div class=\"Vlt-card Vlt-bg-white\">\n\t<div class=\"Vlt-card__content Vlt-btn-on-hover\">\n\t\t<h5>{{model.Subject || model.subject || model.summary || model.title || model.CaseNumber || model.comment || model.body || model.name || model.topic || '...' }}</h5>\n\t\t<div style='font-size: 12px; line-height: 16px;'>\n\t\t\tCreated: <span class='Vlt-black'>{{model._vgis.createdDate | date:'mediumDate'}}</span>\n\t\t\tEdited: <span class='Vlt-black'>{{model._vgis.modifiedDate | date:'medium'}}</span>\n\t\t</div>\n\t\t<div class=\"Vlt-badge Vlt-badge--app Vlt-badge--purple Vlt-badge--small\">{{model._vgis.resourceType}}</div>\n\t\t<div class=\"Vlt-btn-group Vlt-btn-group--hover\">\n\t\t\t<a *ngIf='model._vgis.externalLink' attr.href='{{model._vgis.externalLink}}' target='_blank' rel='noopener' class=\"Vlt-btn Vlt-btn--tertiary Vlt-btn--icon\" aria-label='Open external'><svg style='margin-left: 0; margin-right: 0;'><use xlink:href=\"volta/volta-icons.svg#Vlt-icon-open\"/></svg></a>\n\t\t\t<button type='button' (click)='open(resource, model)' class=\"Vlt-btn Vlt-btn--tertiary Vlt-btn--icon\" aria-label='Edit'><svg style='margin-left: 0; margin-right: 0;'><use xlink:href=\"volta/volta-icons.svg#Vlt-icon-edit\"/></svg></button>\n\t\t</div>\n\t</div>\n</div>\n","/*\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: 2019-11-05 13:46:18\n */\n\nimport { Pipe, PipeTransform } from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\n@Pipe({\n name: 'metaIcons'\n})\nexport class MetaIconsPipe implements PipeTransform {\n\n constructor(protected sanitizer: DomSanitizer) { }\n\n transform(value: any, ...args: any[]): any {\n if (typeof(value) === 'string') {\n value = value.replace(\n /\\${\\s*icon:([\\w\\-]+)\\s*}/g, \n (match, val) => `<svg class='Vlt-icon'><use xlink:href=\"volta/volta-icons.svg#${val}\"/></svg>`\n );\n return value; //this.sanitizer.bypassSecurityTrustHtml(value);\n }\n }\n\n}\n","/*\n* @Author: Alexander.Vangelov@vonage.com\n* @Date: 2020-04-14 12:15:36\n * @Last Modified by: Alexander.Vangelov@vonage.com\n * @Last Modified time: 2020-04-14 12:21:57\n*/\n\nimport { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'metaStripHtml'\n})\nexport class MetaStripHtmlPipe implements PipeTransform {\n transform(value: string): any {\n return value.replace(/<[^>]*>/g, '');\n }\n}\n","/*\n * @Author: Alexander.Vangelov@vonage.com\n * @Date: 2020-02-10 18:47:45\n * @Last Modified by: Alexander.Vangelov@vonage.com\n * @Last Modified time: 2020-02-28 13:29:23\n */\n\nexport interface IStoreRecord {\n id?: string | number;\n}\n\nexport interface IStore {\n initCollection(collectionName: string, items?: Array<IStoreRecord>, callback?: (err, result?) => void): any;\n findById(collectionName, id: number | string, callback?: (err, result?) => void): any;\n save(collectionName: string, record: any, callback?: (err, result?) => void): any;\n find(collectionName: string, conditions: any, options: any, callback: (err, result?) => void);\n findOne(collectionName: string, conditions: any, options: any, callback?: (err, result?) => void);\n}\n\nexport class IndexedDbStore implements IStore {\n indxDb: IDBFactory;\n db: IDBDatabase;\n dbName: string;\n\n constructor(dbName: string = 'vgip') {\n this.dbName = dbName;\n this.indxDb = window.indexedDB || (window as any).mozIndexedDB || (window as any).webkitIndexedDB || (window as any).msIndexedDB;\n }\n\n _getDb(callback: (err, result?) => void) {\n const self = this;\n if (this.db) {\n return callback(null, this.db);\n }\n const req = this.indxDb.open(this.dbName);\n req.onupgradeneeded = (ev: any) => {\n self.db = ev.target.result;\n const objectStore = self.db.createObjectStore('Draft', { keyPath: 'id', autoIncrement: true });\n objectStore.createIndex('contextIndex', 'context', { unique: false });\n objectStore.createIndex('contextintegrationIndex', ['context', 'integration'], { unique: false });\n objectStore.createIndex('contextintegrationresourceIndex', ['context', 'integration', 'resource'], { unique: true });\n };\n if (callback) {\n req.onsuccess = (ev: any) => {\n self.db = ev.target.result;\n callback(null, self.db);\n };\n }\n req.onerror = (ev: any) => {\n if (callback) {\n callback(ev.error);\n }\n };\n }\n\n initCollection(collectionName: string, items: Array<IStoreRecord> = [], callback: (err, result?) => void) {\n const self = this;\n this._getDb((err) => { // eslint-disable-line no-underscore-dangle\n if (err && callback) {\n return callback(err);\n }\n if (callback) {\n callback(null, self.db);\n }\n });\n }\n\n reset(callback: (err, result?) => void) {\n this._getDb((err) => { // eslint-disable-line no-underscore-dangle\n if (err) {\n return callback(err);\n }\n this.db.close();\n this.indxDb.deleteDatabase(this.dbName);\n delete this.db;\n this._getDb(callback); // eslint-disable-line no-underscore-dangle\n });\n }\n\n findById(collectionName: string, id: number | string, callback: (err, result?) => void): any {\n const tx = this.db.transaction([collectionName]);\n const store = tx.objectStore(collectionName);\n const request = store.get(parseInt(`${id}`, 10));\n if (callback) {\n request.onerror = () => {\n callback(request.error);\n };\n }\n request.onsuccess = () => {\n if (!request.result) {\n callback({ message: 'Not Found' });\n } else if (callback) {\n callback(null, request.result);\n }\n };\n }\n\n destroyById(collectionName: string, id: number | string, callback: (err, result?) => void): any {\n const tx = this.db.transaction([collectionName], 'readwrite');\n const store = tx.objectStore(collectionName);\n const request = store.delete(parseInt(`${id}`, 10));\n if (callback) {\n request.onerror = () => {\n callback(request.error);\n };\n }\n request.onsuccess = () => {\n if (callback) {\n callback(null, request.result);\n }\n };\n }\n\n findOne(collectionName: string, conditions: any, options: any, callback?: (err, result?) => void): any {\n const tx = this.db.transaction([collectionName]);\n const store = tx.objectStore(collectionName);\n const conditionsKeys = Object.keys(conditions);\n let idx: IDBIndex;\n let req: IDBRequest;\n if (conditionsKeys.length > 1) {\n const vals = [];\n conditionsKeys.forEach((key) => vals.push(conditions[key]));\n idx = store.index(`${conditionsKeys.join('')}Index`);\n req = idx.get(vals);\n } else {\n idx = store.index(`${conditionsKeys[0]}Index`);\n req = idx.get(conditions[conditionsKeys[0]]);\n }\n if (callback) {\n req.onerror = () => {\n callback(req.error);\n };\n }\n req.onsuccess = (ev: any) => {\n if (!ev.target.result) {\n callback({ message: 'Not Found' });\n } else if (callback) {\n callback(null, ev.target.result);\n }\n };\n }\n\n find(collectionName: string, conditions: any, options: any, callback?: (err, result?) => void): Array<IStoreRecord> | any {\n const tx = this.db.transaction([collectionName]);\n const store = tx.objectStore(collectionName);\n const conditionsKeys = Object.keys(conditions);\n let idx: IDBIndex;\n let req: IDBRequest;\n if (conditionsKeys.length > 1) {\n const vals = [];\n conditionsKeys.forEach((key) => vals.push(conditions[key]));\n idx = store.index(`${conditionsKeys.join('')}Index`);\n req = idx.openCursor(vals);\n } else {\n idx = store.index(`${conditionsKeys[0]}Index`);\n req = idx.openCursor(conditions[conditionsKeys[0]]);\n }\n req.onerror = () => {\n if (callback) {\n callback(req.error);\n }\n };\n const items = [];\n req.onsuccess = (ev: any) => {\n const cursor = ev.target.result;\n if (cursor) {\n items.push(cursor.value);\n cursor.continue();\n } else if (callback) {\n callback(null, items);\n }\n };\n }\n\n save(collectionName: string, model: any, callback?: (err, result?) => void) {\n const record = model; // model.toJson(true, false);\n const createNew = () => {\n const txN = this.db.transaction([collectionName], 'readwrite');\n const request = txN.objectStore(collectionName).add(record);\n if (callback) {\n request.onerror = () => callback(request.error);\n }\n request.onsuccess = () => {\n record.id = request.result;\n if (callback) {\n callback(null, record);\n }\n };\n };\n\n const updateOldById = (id) => {\n const txO = this.db.transaction([collectionName], 'readwrite');\n const storeW = txO.objectStore(collectionName);\n const getRequest = storeW.get(id);\n if (callback) {\n getRequest.onerror = () => callback(getRequest.error);\n }\n getRequest.onsuccess = () => {\n const existing = getRequest.result;\n if (!existing) {\n callback({ message: 'Not Found' });\n } else {\n for (const p of Object.keys(record)) {\n existing[p] = record[p];\n }\n const updateRequest = storeW.put(existing);\n updateRequest.onerror = () => callback(updateRequest.error);\n updateRequest.onsuccess = (ev: any) => {\n if (typeof (callback) === 'function') {\n callback(null, existing);\n }\n };\n }\n };\n };\n\n if (record.id) {\n updateOldById(record.id);\n } else if (record.integration && record.resource) {\n this.findOne(collectionName, {\n context: record.context || '',\n integration: record.integration || '',\n resource: record.resource || ''\n }, null, (err, existing) => {\n if (!existing) {\n createNew(); \n } else {\n updateOldById(existing.id);\n }\n });\n } else {\n createNew();\n }\n }\n}\n","/*\n * @Author: Alexander.Vangelov@vonage.com \n * @Date: 2020-02-10 17:35:19 \n * @Last Modified by: Alexander.Vangelov@vonage.com\n * @Last Modified time: 2020-02-13 06:17:24\n */\n\nimport { Injectable } from '@angular/core';\n\nimport { IndexedDbStore } from '../../common/utils/indexedDbStore';\nimport { MetaContextService } from '../metaContext';\n\nconst COLELCTION = 'Draft';\n\nexport interface IDraft {\n id: string | number;\n integrationCode: string;\n resourceType: string;\n contextUid: string;\n timestamp: number;\n data?: string;\n}\n@Injectable({\n providedIn: 'root'\n})\nexport class ResourceDraftsService {\n store: IndexedDbStore;\n db: any;\n constructor(private context: MetaContextService) {\n this.store = new IndexedDbStore('vgip');\n }\n\n init(cb?: (err, db?) => void) {\n if (!this.db) {\n this.store.initCollection(COLELCTION, null, (err, db) => {\n this.db = db;\n cb(err, this.db);\n });\n } else {\n cb(null, this.db);\n }\n }\n\n list(integrationCode, resourceType, cb: (err, drafts?: Array<IDraft>) => void) {\n console.log('list drafts', this.context.uid, integrationCode, resourceType);\n }\n\n save(integrationCode, resourceType, draft, cb?: (err, draft?: IDraft) => void) {\n const now = new Date().getTime();\n this.store.save(COLELCTION, {\n context: this.context.uid || '',\n integration: integrationCode || '',\n resource: resourceType || '',\n timestamp: now,\n data: draft\n }, cb);\n }\n\n findOne(integrationCode, resourceType, cb: (err, drafts?: IDraft) => void) {\n this.store.findOne(COLELCTION, {\n context: this.context.uid || '',\n integration: integrationCode || '',\n resource: resourceType || ''\n }, null, cb);\n }\n\n find(params, cb: (err, drafts?: Array<IDraft>) => void) {\n this.store.find(COLELCTION, params, null, cb);\n }\n\n findById(draftId, cb?: (err, drafts?: IDraft) => void) {\n this.store.findById(COLELCTION, draftId, cb);\n }\n\n destroyDraft(draft, cb?: (err, drafts?: IDraft) => void) {\n if (draft && draft.id) {\n this.store.destroyById(COLELCTION, draft.id, cb);\n }\n }\n}\n","/*\n * @Author: Alexander.Vangelov@vonage.com\n * @Date: 2019-09-19 17:34:34\n * @Last Modified by: Alexander.Vangelov@vonage.com\n * @Last Modified time: 2021-02-09 16:57:29\n */\n\nimport { NgModule, ModuleWithProviders } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { HttpClientModule } from '@angular/common/http';\n\nimport { QuillModule } from 'ngx-quill';\n\nimport { MetaRefDialog } from './refDialog';\n\nimport { MetaLayout } from './layout';\n\nimport { MetaResource } from './resource';\n\nimport { MetaResourceCard } from './resourceCard';\n\nimport { FieldUnknown } from './fieldUnknown';\nimport { FieldInput } from './fieldInput';\nimport { FieldText } from './fieldText';\n\nimport { FieldSelect } from './fieldSelect';\n\nimport { FieldReference } from './fieldReference';\n\nimport { FieldComposite } from './fieldComposite';\n\nimport { FieldBoolean } from './fieldBoolean';\nimport { FieldRadio } from './fieldRadio';\n\nimport { FieldList } from './fieldList';\n\nimport { FieldRichtext } from './fieldRichtext';\nimport { FieldDatetime } from './fieldDatetime';\n\nimport { FieldHidden } from './fieldHidden';\n\nimport { MetaIconsPipe } from './common/metaIcons.pipe';\nimport { MetaModelPipe } from './common/metaModel.pipe';\nimport { MetaStripHtmlPipe } from './common/metaStripHtml.pipe';\nimport { MetaAutofocusDirective } from './common/metaAutofocus.directive';\nimport { MetaContextService } from './services/metaContext';\nimport { MetaTrackerService } from './services/metaTracker';\nimport { ResourceDraftsService } from './services/resourceDrafts';\nimport { MetaMsgService } from './services/metaMsg';\nimport { MetaReferenceService } from './services/metaReference';\nimport { MetaResourceService } from './services/metaResource';\nimport { MetaHttpClient } from './services/metaResource/metaHttpClient';\nimport { relativeTimeBuilder } from './common/utils/relativeTimeBuilder';\nimport { MetaField, MetaFieldContentDirective } from './metaField';\n\nexport * from './common/utils/colorThemes';\nexport * from './common/metaNormalizer';\n\n@NgModule({\n declarations: [\n MetaIconsPipe,\n MetaModelPipe,\n MetaStripHtmlPipe,\n MetaField,\n MetaRefDialog,\n MetaFieldContentDirective,\n MetaLayout,\n MetaResource,\n MetaResourceCard,\n FieldUnknown,\n FieldInput,\n FieldText,\n FieldSelect,\n FieldReference,\n FieldComposite,\n FieldBoolean,\n FieldRadio,\n FieldList,\n FieldRichtext,\n FieldDatetime,\n FieldHidden,\n MetaAutofocusDirective\n ],\n exports: [\n MetaIconsPipe,\n MetaModelPipe,\n MetaStripHtmlPipe,\n MetaField,\n MetaLayout,\n MetaResource,\n MetaResourceCard,\n MetaAutofocusDirective\n ],\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n HttpClientModule,\n QuillModule.forRoot({\n modules: {\n toolbar: [\n ['bold', 'italic', 'underline'],\n [{ list: 'bullet' }],\n [{ header: [1, 2, 3, 4, 5, 6, false] }],\n [{ font: [] }],\n [{ align: [] }]\n ]\n }\n })\n ]\n})\nexport class MetaModule {\n static withProviders(customProviders: any): ModuleWithProviders<MetaModule> {\n return {\n ngModule: MetaModule,\n providers: customProviders\n };\n }\n}\n\nexport {\n MetaField, MetaFieldContentDirective, MetaRefDialog, MetaResourceCard,\n MetaIconsPipe, MetaModelPipe, MetaStripHtmlPipe, MetaAutofocusDirective,\n FieldUnknown, FieldInput, FieldText, FieldSelect, MetaLayout, MetaResource,\n FieldBoolean, FieldRadio, FieldList, FieldComposite, FieldReference, FieldHidden,\n FieldRichtext, FieldDatetime, MetaContextService, MetaTrackerService, ResourceDraftsService,\n MetaMsgService, MetaReferenceService, MetaResourceService, MetaHttpClient,\n relativeTimeBuilder\n};\n","/*\n * Public API Surface of meta-ui\n */\n\nexport * from './lib';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.MetaResourceService","i2.MetaReferenceService","i3","i1","i1.MetaContextService"],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { FieldAbstract } from '../fieldAbstract';
2
+ import * as i0 from "@angular/core";
3
+ export declare class FieldHidden extends FieldAbstract {
4
+ static ɵfac: i0.ɵɵFactoryDeclaration<FieldHidden, never>;
5
+ static ɵcmp: i0.ɵɵComponentDeclaration<FieldHidden, "ng-component", never, {}, {}, never, never, false, never>;
6
+ }
package/lib/index.d.ts CHANGED
@@ -14,6 +14,7 @@ import { FieldRadio } from './fieldRadio';
14
14
  import { FieldList } from './fieldList';
15
15
  import { FieldRichtext } from './fieldRichtext';
16
16
  import { FieldDatetime } from './fieldDatetime';
17
+ import { FieldHidden } from './fieldHidden';
17
18
  import { MetaIconsPipe } from './common/metaIcons.pipe';
18
19
  import { MetaModelPipe } from './common/metaModel.pipe';
19
20
  import { MetaStripHtmlPipe } from './common/metaStripHtml.pipe';
@@ -47,17 +48,18 @@ import * as i16 from "./fieldRadio/index";
47
48
  import * as i17 from "./fieldList/index";
48
49
  import * as i18 from "./fieldRichtext/index";
49
50
  import * as i19 from "./fieldDatetime/index";
50
- import * as i20 from "./common/metaAutofocus.directive";
51
- import * as i21 from "@angular/common";
52
- import * as i22 from "@angular/forms";
53
- import * as i23 from "@angular/common/http";
54
- import * as i24 from "ngx-quill";
51
+ import * as i20 from "./fieldHidden/index";
52
+ import * as i21 from "./common/metaAutofocus.directive";
53
+ import * as i22 from "@angular/common";
54
+ import * as i23 from "@angular/forms";
55
+ import * as i24 from "@angular/common/http";
56
+ import * as i25 from "ngx-quill";
55
57
  export * from './common/utils/colorThemes';
56
58
  export * from './common/metaNormalizer';
57
59
  export declare class MetaModule {
58
60
  static withProviders(customProviders: any): ModuleWithProviders<MetaModule>;
59
61
  static ɵfac: i0.ɵɵFactoryDeclaration<MetaModule, never>;
60
- static ɵmod: i0.ɵɵNgModuleDeclaration<MetaModule, [typeof i1.MetaIconsPipe, typeof i2.MetaModelPipe, typeof i3.MetaStripHtmlPipe, typeof i4.MetaField, typeof i5.MetaRefDialog, typeof i4.MetaFieldContentDirective, typeof i6.MetaLayout, typeof i7.MetaResource, typeof i8.MetaResourceCard, typeof i9.FieldUnknown, typeof i10.FieldInput, typeof i11.FieldText, typeof i12.FieldSelect, typeof i13.FieldReference, typeof i14.FieldComposite, typeof i15.FieldBoolean, typeof i16.FieldRadio, typeof i17.FieldList, typeof i18.FieldRichtext, typeof i19.FieldDatetime, typeof i20.MetaAutofocusDirective], [typeof i21.CommonModule, typeof i22.FormsModule, typeof i22.ReactiveFormsModule, typeof i23.HttpClientModule, typeof i24.QuillModule], [typeof i1.MetaIconsPipe, typeof i2.MetaModelPipe, typeof i3.MetaStripHtmlPipe, typeof i4.MetaField, typeof i6.MetaLayout, typeof i7.MetaResource, typeof i8.MetaResourceCard, typeof i20.MetaAutofocusDirective]>;
62
+ static ɵmod: i0.ɵɵNgModuleDeclaration<MetaModule, [typeof i1.MetaIconsPipe, typeof i2.MetaModelPipe, typeof i3.MetaStripHtmlPipe, typeof i4.MetaField, typeof i5.MetaRefDialog, typeof i4.MetaFieldContentDirective, typeof i6.MetaLayout, typeof i7.MetaResource, typeof i8.MetaResourceCard, typeof i9.FieldUnknown, typeof i10.FieldInput, typeof i11.FieldText, typeof i12.FieldSelect, typeof i13.FieldReference, typeof i14.FieldComposite, typeof i15.FieldBoolean, typeof i16.FieldRadio, typeof i17.FieldList, typeof i18.FieldRichtext, typeof i19.FieldDatetime, typeof i20.FieldHidden, typeof i21.MetaAutofocusDirective], [typeof i22.CommonModule, typeof i23.FormsModule, typeof i23.ReactiveFormsModule, typeof i24.HttpClientModule, typeof i25.QuillModule], [typeof i1.MetaIconsPipe, typeof i2.MetaModelPipe, typeof i3.MetaStripHtmlPipe, typeof i4.MetaField, typeof i6.MetaLayout, typeof i7.MetaResource, typeof i8.MetaResourceCard, typeof i21.MetaAutofocusDirective]>;
61
63
  static ɵinj: i0.ɵɵInjectorDeclaration<MetaModule>;
62
64
  }
63
- export { MetaField, MetaFieldContentDirective, MetaRefDialog, MetaResourceCard, MetaIconsPipe, MetaModelPipe, MetaStripHtmlPipe, MetaAutofocusDirective, FieldUnknown, FieldInput, FieldText, FieldSelect, MetaLayout, MetaResource, FieldBoolean, FieldRadio, FieldList, FieldComposite, FieldReference, FieldRichtext, FieldDatetime, MetaContextService, MetaTrackerService, ResourceDraftsService, MetaMsgService, MetaReferenceService, MetaResourceService, MetaHttpClient, relativeTimeBuilder };
65
+ export { MetaField, MetaFieldContentDirective, MetaRefDialog, MetaResourceCard, MetaIconsPipe, MetaModelPipe, MetaStripHtmlPipe, MetaAutofocusDirective, FieldUnknown, FieldInput, FieldText, FieldSelect, MetaLayout, MetaResource, FieldBoolean, FieldRadio, FieldList, FieldComposite, FieldReference, FieldHidden, FieldRichtext, FieldDatetime, MetaContextService, MetaTrackerService, ResourceDraftsService, MetaMsgService, MetaReferenceService, MetaResourceService, MetaHttpClient, relativeTimeBuilder };
@@ -13,6 +13,7 @@ export declare class MetaResource implements OnInit, OnChanges {
13
13
  model: any;
14
14
  metaResourceServiceDelegated: MetaResourceService;
15
15
  theme: string;
16
+ editMode: boolean;
16
17
  done: EventEmitter<any>;
17
18
  integrationCode: string;
18
19
  resourceType: string;
@@ -34,7 +35,7 @@ export declare class MetaResource implements OnInit, OnChanges {
34
35
  get fieldNames(): string[];
35
36
  ngOnInit(): void;
36
37
  ngOnChanges(changes: any): void;
37
- editMode(): void;
38
+ setEditMode(): void;
38
39
  loadMetadata(layoutId?: any, refresh?: boolean): void;
39
40
  changeLayout(): void;
40
41
  getDetails(): void;
@@ -54,5 +55,5 @@ export declare class MetaResource implements OnInit, OnChanges {
54
55
  private applyTheme;
55
56
  private forceUiUpdate;
56
57
  static ɵfac: i0.ɵɵFactoryDeclaration<MetaResource, never>;
57
- static ɵcmp: i0.ɵɵComponentDeclaration<MetaResource, "vgip-meta-resource", never, { "resource": "resource"; "model": "model"; "metaResourceServiceDelegated": "metaResourceServiceDelegated"; "theme": "theme"; }, { "done": "done"; }, never, never, false, never>;
58
+ static ɵcmp: i0.ɵɵComponentDeclaration<MetaResource, "vgip-meta-resource", never, { "resource": "resource"; "model": "model"; "metaResourceServiceDelegated": "metaResourceServiceDelegated"; "theme": "theme"; "editMode": "editMode"; }, { "done": "done"; }, never, never, false, never>;
58
59
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vgip/meta-ui",
3
- "version": "1.6.3",
3
+ "version": "1.6.5",
4
4
  "description": "VGIP Meta UI",
5
5
  "peerDependencies": {
6
6
  "@angular/common": "^15.1.0",
@@ -1 +0,0 @@
1
- {"version":3,"file":"vgip-meta-ui-index-49945788.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.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.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 this.searchResourceTypeMeta.options.push({ id: r.name, label: r.label || r.name });\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 || []).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, this.metaReference, model, null, this.searchResourceType.resourceType,\n 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'>{{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</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>&nbsp;<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>&nbsp;<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}}&nbsp;</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-73d82a16.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 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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"}