novo-elements 11.2.0 → 11.2.1-next.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.
Files changed (104) hide show
  1. package/fesm2022/novo-elements-addons-ace-editor.mjs.map +1 -1
  2. package/fesm2022/novo-elements-addons-ckeditor.mjs.map +1 -1
  3. package/fesm2022/novo-elements-addons-code-editor.mjs +3 -3
  4. package/fesm2022/novo-elements-addons-code-editor.mjs.map +1 -1
  5. package/fesm2022/novo-elements-elements-agenda.mjs +15 -15
  6. package/fesm2022/novo-elements-elements-agenda.mjs.map +1 -1
  7. package/fesm2022/novo-elements-elements-aside.mjs.map +1 -1
  8. package/fesm2022/novo-elements-elements-autocomplete.mjs +7 -5
  9. package/fesm2022/novo-elements-elements-autocomplete.mjs.map +1 -1
  10. package/fesm2022/novo-elements-elements-avatar.mjs +2 -1
  11. package/fesm2022/novo-elements-elements-avatar.mjs.map +1 -1
  12. package/fesm2022/novo-elements-elements-breadcrumbs.mjs.map +1 -1
  13. package/fesm2022/novo-elements-elements-button.mjs.map +1 -1
  14. package/fesm2022/novo-elements-elements-calendar.mjs +7 -4
  15. package/fesm2022/novo-elements-elements-calendar.mjs.map +1 -1
  16. package/fesm2022/novo-elements-elements-card.mjs +1 -1
  17. package/fesm2022/novo-elements-elements-card.mjs.map +1 -1
  18. package/fesm2022/novo-elements-elements-category-dropdown.mjs.map +1 -1
  19. package/fesm2022/novo-elements-elements-checkbox.mjs.map +1 -1
  20. package/fesm2022/novo-elements-elements-chips.mjs +18 -14
  21. package/fesm2022/novo-elements-elements-chips.mjs.map +1 -1
  22. package/fesm2022/novo-elements-elements-color-picker.mjs +1 -1
  23. package/fesm2022/novo-elements-elements-color-picker.mjs.map +1 -1
  24. package/fesm2022/novo-elements-elements-common.mjs +28 -28
  25. package/fesm2022/novo-elements-elements-common.mjs.map +1 -1
  26. package/fesm2022/novo-elements-elements-data-table.mjs +28 -28
  27. package/fesm2022/novo-elements-elements-data-table.mjs.map +1 -1
  28. package/fesm2022/novo-elements-elements-date-picker.mjs +4 -4
  29. package/fesm2022/novo-elements-elements-date-picker.mjs.map +1 -1
  30. package/fesm2022/novo-elements-elements-date-time-picker.mjs.map +1 -1
  31. package/fesm2022/novo-elements-elements-divider.mjs.map +1 -1
  32. package/fesm2022/novo-elements-elements-drag-drop.mjs +7 -7
  33. package/fesm2022/novo-elements-elements-drag-drop.mjs.map +1 -1
  34. package/fesm2022/novo-elements-elements-dropdown.mjs +9 -9
  35. package/fesm2022/novo-elements-elements-dropdown.mjs.map +1 -1
  36. package/fesm2022/novo-elements-elements-expansion.mjs +5 -5
  37. package/fesm2022/novo-elements-elements-expansion.mjs.map +1 -1
  38. package/fesm2022/novo-elements-elements-field.mjs +20 -14
  39. package/fesm2022/novo-elements-elements-field.mjs.map +1 -1
  40. package/fesm2022/novo-elements-elements-flex.mjs +12 -12
  41. package/fesm2022/novo-elements-elements-flex.mjs.map +1 -1
  42. package/fesm2022/novo-elements-elements-form.mjs +16 -15
  43. package/fesm2022/novo-elements-elements-form.mjs.map +1 -1
  44. package/fesm2022/novo-elements-elements-header.mjs +6 -6
  45. package/fesm2022/novo-elements-elements-header.mjs.map +1 -1
  46. package/fesm2022/novo-elements-elements-icon.mjs.map +1 -1
  47. package/fesm2022/novo-elements-elements-layout.mjs +2 -2
  48. package/fesm2022/novo-elements-elements-layout.mjs.map +1 -1
  49. package/fesm2022/novo-elements-elements-list.mjs +12 -12
  50. package/fesm2022/novo-elements-elements-list.mjs.map +1 -1
  51. package/fesm2022/novo-elements-elements-loading.mjs +5 -5
  52. package/fesm2022/novo-elements-elements-loading.mjs.map +1 -1
  53. package/fesm2022/novo-elements-elements-menu.mjs +4 -4
  54. package/fesm2022/novo-elements-elements-menu.mjs.map +1 -1
  55. package/fesm2022/novo-elements-elements-modal.mjs.map +1 -1
  56. package/fesm2022/novo-elements-elements-multi-picker.mjs.map +1 -1
  57. package/fesm2022/novo-elements-elements-non-ideal-state.mjs.map +1 -1
  58. package/fesm2022/novo-elements-elements-picker.mjs +5 -5
  59. package/fesm2022/novo-elements-elements-picker.mjs.map +1 -1
  60. package/fesm2022/novo-elements-elements-places.mjs.map +1 -1
  61. package/fesm2022/novo-elements-elements-popover.mjs +3 -3
  62. package/fesm2022/novo-elements-elements-popover.mjs.map +1 -1
  63. package/fesm2022/novo-elements-elements-progress.mjs +3 -3
  64. package/fesm2022/novo-elements-elements-progress.mjs.map +1 -1
  65. package/fesm2022/novo-elements-elements-query-builder.mjs +27 -25
  66. package/fesm2022/novo-elements-elements-query-builder.mjs.map +1 -1
  67. package/fesm2022/novo-elements-elements-quick-note.mjs +2 -2
  68. package/fesm2022/novo-elements-elements-quick-note.mjs.map +1 -1
  69. package/fesm2022/novo-elements-elements-radio.mjs.map +1 -1
  70. package/fesm2022/novo-elements-elements-search.mjs.map +1 -1
  71. package/fesm2022/novo-elements-elements-select-search.mjs +2 -2
  72. package/fesm2022/novo-elements-elements-select-search.mjs.map +1 -1
  73. package/fesm2022/novo-elements-elements-select.mjs +5 -5
  74. package/fesm2022/novo-elements-elements-select.mjs.map +1 -1
  75. package/fesm2022/novo-elements-elements-simple-table.mjs +30 -30
  76. package/fesm2022/novo-elements-elements-simple-table.mjs.map +1 -1
  77. package/fesm2022/novo-elements-elements-slider.mjs.map +1 -1
  78. package/fesm2022/novo-elements-elements-stepper.mjs +4 -4
  79. package/fesm2022/novo-elements-elements-stepper.mjs.map +1 -1
  80. package/fesm2022/novo-elements-elements-switch.mjs.map +1 -1
  81. package/fesm2022/novo-elements-elements-tabbed-group-picker.mjs.map +1 -1
  82. package/fesm2022/novo-elements-elements-tabs.mjs +2 -1
  83. package/fesm2022/novo-elements-elements-tabs.mjs.map +1 -1
  84. package/fesm2022/novo-elements-elements-tiles.mjs.map +1 -1
  85. package/fesm2022/novo-elements-elements-time-picker.mjs +1 -0
  86. package/fesm2022/novo-elements-elements-time-picker.mjs.map +1 -1
  87. package/fesm2022/novo-elements-elements-tip-well.mjs.map +1 -1
  88. package/fesm2022/novo-elements-elements-toast.mjs.map +1 -1
  89. package/fesm2022/novo-elements-elements-toolbar.mjs +1 -1
  90. package/fesm2022/novo-elements-elements-toolbar.mjs.map +1 -1
  91. package/fesm2022/novo-elements-elements-tooltip.mjs +3 -4
  92. package/fesm2022/novo-elements-elements-tooltip.mjs.map +1 -1
  93. package/fesm2022/novo-elements-elements-unless.mjs +1 -1
  94. package/fesm2022/novo-elements-elements-unless.mjs.map +1 -1
  95. package/fesm2022/novo-elements-elements-value.mjs +2 -2
  96. package/fesm2022/novo-elements-elements-value.mjs.map +1 -1
  97. package/fesm2022/novo-elements-pipes.mjs +9 -9
  98. package/fesm2022/novo-elements-pipes.mjs.map +1 -1
  99. package/fesm2022/novo-elements-services.mjs +21 -22
  100. package/fesm2022/novo-elements-services.mjs.map +1 -1
  101. package/fesm2022/novo-elements-utils.mjs +33 -17
  102. package/fesm2022/novo-elements-utils.mjs.map +1 -1
  103. package/package.json +1 -1
  104. package/services/date-format/DateFormat.d.ts +2 -2
@@ -48,7 +48,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
48
48
  type: Directive,
49
49
  args: [{
50
50
  selector: '[bhUnless]',
51
- standalone: false
51
+ standalone: false,
52
52
  }]
53
53
  }], ctorParameters: () => [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }, { type: i1.Security }], propDecorators: { bhUnless: [{
54
54
  type: Input
@@ -1 +1 @@
1
- {"version":3,"file":"novo-elements-elements-unless.mjs","sources":["../../../projects/novo-elements/src/elements/unless/Unless.ts","../../../projects/novo-elements/src/elements/unless/Unless.module.ts","../../../projects/novo-elements/src/elements/unless/novo-elements-elements-unless.ts"],"sourcesContent":["// NG2\nimport { Directive, Input, TemplateRef, ViewContainerRef } from '@angular/core';\n// App\nimport { Security } from 'novo-elements/services';\n\n@Directive({\n selector: '[bhUnless]',\n standalone: false\n})\nexport class Unless {\n permissions: string = '';\n isDisplayed: boolean = false;\n\n constructor(public templateRef: TemplateRef<any>, public viewContainer: ViewContainerRef, public security: Security) {\n this.security.subscribe(this.check.bind(this));\n }\n\n @Input()\n set bhUnless(value: string) {\n this.permissions = value || '';\n this.check();\n }\n\n check(): void {\n let display: boolean = false;\n if (~this.permissions.indexOf('||')) {\n const ps: any = this.permissions.split('||');\n for (const p of ps) {\n if (this.security.has(p.trim())) {\n display = true;\n }\n }\n } else {\n display = this.permissions.split('&&').every((p) => this.security.has(p.trim()));\n }\n\n if (display) {\n if (!this.isDisplayed) {\n this.isDisplayed = true;\n this.viewContainer.createEmbeddedView(this.templateRef);\n }\n } else {\n this.isDisplayed = false;\n this.viewContainer.clear();\n }\n }\n}\n","// NG2\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n// APP\nimport { Unless } from './Unless';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [Unless],\n exports: [Unless],\n})\nexport class UnlessModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"novo-elements-elements-unless.mjs","sources":["../../../projects/novo-elements/src/elements/unless/Unless.ts","../../../projects/novo-elements/src/elements/unless/Unless.module.ts","../../../projects/novo-elements/src/elements/unless/novo-elements-elements-unless.ts"],"sourcesContent":["// NG2\nimport { Directive, Input, TemplateRef, ViewContainerRef } from '@angular/core';\n// App\nimport { Security } from 'novo-elements/services';\n\n@Directive({\n selector: '[bhUnless]',\n standalone: false,\n})\nexport class Unless {\n permissions: string = '';\n isDisplayed: boolean = false;\n\n constructor(public templateRef: TemplateRef<any>, public viewContainer: ViewContainerRef, public security: Security) {\n this.security.subscribe(this.check.bind(this));\n }\n\n @Input()\n set bhUnless(value: string) {\n this.permissions = value || '';\n this.check();\n }\n\n check(): void {\n let display: boolean = false;\n if (~this.permissions.indexOf('||')) {\n const ps: any = this.permissions.split('||');\n for (const p of ps) {\n if (this.security.has(p.trim())) {\n display = true;\n }\n }\n } else {\n display = this.permissions.split('&&').every((p) => this.security.has(p.trim()));\n }\n\n if (display) {\n if (!this.isDisplayed) {\n this.isDisplayed = true;\n this.viewContainer.createEmbeddedView(this.templateRef);\n }\n } else {\n this.isDisplayed = false;\n this.viewContainer.clear();\n }\n }\n}\n","// NG2\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n// APP\nimport { Unless } from './Unless';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [Unless],\n exports: [Unless],\n})\nexport class UnlessModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;AAAA;MASa,MAAM,CAAA;AAIjB,IAAA,WAAA,CAAmB,WAA6B,EAAS,aAA+B,EAAS,QAAkB,EAAA;QAAhG,IAAW,CAAA,WAAA,GAAX,WAAW;QAA2B,IAAa,CAAA,aAAA,GAAb,aAAa;QAA2B,IAAQ,CAAA,QAAA,GAAR,QAAQ;QAHzG,IAAW,CAAA,WAAA,GAAW,EAAE;QACxB,IAAW,CAAA,WAAA,GAAY,KAAK;AAG1B,QAAA,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;;IAGhD,IACI,QAAQ,CAAC,KAAa,EAAA;AACxB,QAAA,IAAI,CAAC,WAAW,GAAG,KAAK,IAAI,EAAE;QAC9B,IAAI,CAAC,KAAK,EAAE;;IAGd,KAAK,GAAA;QACH,IAAI,OAAO,GAAY,KAAK;QAC5B,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACnC,MAAM,EAAE,GAAQ,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC;AAC5C,YAAA,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE;AAClB,gBAAA,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE;oBAC/B,OAAO,GAAG,IAAI;;;;aAGb;AACL,YAAA,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;;QAGlF,IAAI,OAAO,EAAE;AACX,YAAA,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;AACrB,gBAAA,IAAI,CAAC,WAAW,GAAG,IAAI;gBACvB,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC;;;aAEpD;AACL,YAAA,IAAI,CAAC,WAAW,GAAG,KAAK;AACxB,YAAA,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE;;;+GAlCnB,MAAM,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,WAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,QAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAN,MAAM,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAN,MAAM,EAAA,UAAA,EAAA,CAAA;kBAJlB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,YAAY;AACtB,oBAAA,UAAU,EAAE,KAAK;AACpB,iBAAA;sIAUK,QAAQ,EAAA,CAAA;sBADX;;;ACjBH;MAWa,YAAY,CAAA;+GAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAZ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,EAHR,YAAA,EAAA,CAAA,MAAM,CADX,EAAA,OAAA,EAAA,CAAA,YAAY,aAEZ,MAAM,CAAA,EAAA,CAAA,CAAA;AAEL,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,YAJb,YAAY,CAAA,EAAA,CAAA,CAAA;;4FAIX,YAAY,EAAA,UAAA,EAAA,CAAA;kBALxB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,YAAY,EAAE,CAAC,MAAM,CAAC;oBACtB,OAAO,EAAE,CAAC,MAAM,CAAC;AAClB,iBAAA;;;ACVD;;AAEG;;;;"}
@@ -421,7 +421,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
421
421
  args: [{
422
422
  name: 'render',
423
423
  pure: false,
424
- standalone: false
424
+ standalone: false,
425
425
  }]
426
426
  }, {
427
427
  type: Injectable
@@ -516,7 +516,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
516
516
  </span>
517
517
  </div>
518
518
  `,
519
- standalone: false
519
+ standalone: false,
520
520
  }]
521
521
  }], ctorParameters: () => [], propDecorators: { data: [{
522
522
  type: Input
@@ -1 +1 @@
1
- {"version":3,"file":"novo-elements-elements-value.mjs","sources":["../../../projects/novo-elements/src/elements/value/Render.ts","../../../projects/novo-elements/src/elements/value/EntityList.ts","../../../projects/novo-elements/src/elements/value/Value.ts","../../../projects/novo-elements/src/elements/value/Value.module.ts","../../../projects/novo-elements/src/elements/value/novo-elements-elements-value.ts"],"sourcesContent":["// NG2\nimport { ChangeDetectorRef, Injectable, Pipe, PipeTransform } from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n// APP\nimport { NovoLabelService } from 'novo-elements/services';\nimport { findByCountryId } from 'novo-elements/utils';\n\n/**\n * @classdesc\n * Renders data appropriately based on the data type found in Meta\n * All data types defined by bullhorn should be supported:\n *\n * - **String**: trims value and returns\n * - **Integer**: return value\n * - **Double**: return value fixed to 2 decimals\n * - **BigDecimal**: return value fixed to 2 decimals\n * - **Address**: only city and/or state returned\n * - **Address1**: only city and/or state returned\n * - **AddressWithoutCountry**: only city and/or state returned\n * - **Currency**: put a $ in front\n * - **Percentage**: divide by 100 fix to 2 decimals place and return\n * - **Options**: returns the appropriate 'label' for the 'value' from 'options'\n * - **Array**: returns list comma separated\n * - **DateTime**: formats the date\n * - **TimeStamp**: formats the date\n * - **ToOne**: return the entity specific name (ie. name, firstName lastName, title, ...)\n * - **ToMany**: return an array of the entity specific names (ie. name, firstName lastName, title, ...)\n *\n * @example\n * ```\n * {{ expression | render:field }}\n * ```\n */\n@Pipe({\n name: 'render',\n pure: false,\n standalone: false\n})\n@Injectable()\nexport class RenderPipe implements PipeTransform {\n value: any;\n lastValue: any;\n lastArgs: any;\n\n constructor(private changeDetector: ChangeDetectorRef, private sanitizationService: DomSanitizer, private labels: NovoLabelService) {}\n\n equals(objectOne: any, objectTwo: any): any {\n if (objectOne === objectTwo) {\n return true;\n }\n if (objectOne === null || objectTwo === null) {\n return false;\n }\n if (objectOne !== objectOne && objectTwo !== objectTwo) {\n return true;\n }\n const t1: any = typeof objectOne;\n const t2: any = typeof objectTwo;\n let length: number;\n let key: any;\n let keySet: any;\n if (t1 === t2 && t1 === 'object') {\n if (Array.isArray(objectOne)) {\n if (!Array.isArray(objectTwo)) {\n return false;\n }\n length = objectOne.length;\n if (length === objectTwo.length) {\n for (key = 0; key < length; key++) {\n if (!this.equals(objectOne[key], objectTwo[key])) {\n return false;\n }\n }\n return true;\n }\n } else {\n if (Array.isArray(objectTwo)) {\n return false;\n }\n keySet = Object.create(null);\n for (key in objectOne) {\n if (objectOne[key]) {\n if (!this.equals(objectOne[key], objectTwo[key])) {\n return false;\n }\n keySet[key] = true;\n }\n }\n for (key in objectTwo) {\n if (!(key in keySet) && typeof objectTwo[key] !== 'undefined') {\n return false;\n }\n }\n return true;\n }\n }\n return false;\n }\n\n getEntityLabel(item: any, entity: string): string {\n switch (entity) {\n case 'CorporateUser':\n case 'ClientContact':\n case 'ClientContact1':\n case 'ClientContact2':\n case 'ClientContact3':\n case 'ClientContact4':\n case 'ClientContact5':\n case 'Lead':\n case 'Candidate':\n case 'Person':\n return `${item.firstName || ''} ${item.lastName || ''}`.trim();\n case 'ClientCorporation':\n case 'ClientCorporation1':\n case 'ClientCorporation2':\n case 'ClientCorporation3':\n case 'ClientCorporation4':\n case 'ClientCorporation5':\n return `${item.name || ''}`.trim();\n case 'JobOrder':\n case 'JobOrder1':\n case 'JobOrder2':\n case 'JobOrder3':\n case 'JobOrder4':\n case 'JobOrder5':\n case 'Opportunity':\n return `${item.title || ''}`.trim();\n case 'Placement':\n let label: string = '';\n if (item.candidate) {\n label = `${item.candidate.firstName} ${item.candidate.lastName}`.trim();\n }\n if (item.jobOrder) {\n label = `${label} - ${item.jobOrder.title}`.trim();\n }\n return label;\n default:\n return '';\n }\n }\n\n /**\n * Define the fields to set or retrieve for the given entity. Getter and Setter methods will automagically\n * be set up on the entity once the fields are defined.\n * @param args - fields can either be sent as a list of arguments or as an Array\n * @return text\n */\n render(value: any, args: any): any {\n let type: any = null;\n let text: any = value;\n\n // Handle when we don't have meta, but passing an entity\n if (value && value._subtype && !args) {\n return this.getEntityLabel(value, value._subtype);\n }\n\n // Stop logic for nulls\n if (value === undefined || value === null || !args) {\n return text;\n }\n\n if (args.formatter && typeof args.formatter === 'function') {\n return args.formatter(value, args);\n }\n // TODO move this to a service\n // Determine TYPE because its not just 1 value that determines this.\n if (args.type === 'TO_MANY') {\n type = 'ToMany';\n } else if (args.type === 'TO_ONE') {\n type = args.associatedEntity.entity;\n } else if (args.dataSpecialization === 'DATETIME') {\n type = 'DateTime';\n } else if (args.dataSpecialization === 'YEAR') {\n type = 'Year';\n } else if (args.dataSpecialization === 'TIME') {\n type = 'Time';\n } else if (args.dataSpecialization === 'DATE' && args.dataType === 'Date') {\n type = 'Date';\n } else if (args.dataType === 'Timestamp') {\n type = 'Timestamp';\n } else if (['mobile', 'phone', 'phone1', 'phone2', 'phone3', 'workPhone'].indexOf(args.name) > -1) {\n type = 'Phone';\n } else if (args.name && args.name.substring(0, 5) === 'email') {\n type = 'Email';\n } else if ((args.name && args.name === 'address.countryID') || args.optionsType === 'Country') {\n type = 'Country';\n } else if (args.optionsType === 'SkillText') {\n type = 'SkillText';\n } else if (args.options || args.inputType === 'SELECT' || args.inputType === 'CHECKBOX') {\n type = 'Options';\n } else if (['MONEY', 'PERCENTAGE', 'HTML', 'SSN'].indexOf(args.dataSpecialization) > -1) {\n type = this.capitalize(args.dataSpecialization.toLowerCase());\n } else {\n type = args.dataType || 'default';\n }\n\n // Transform data here\n try {\n switch (type) {\n case 'Address':\n case 'Address1':\n case 'AddressWithoutCountry':\n case 'SecondaryAddress':\n case 'BillingAddress':\n const country: any = findByCountryId(Number(value.countryName));\n text = '';\n if (value.address1 || value.address2) {\n text += `${value.address1 || ''} ${value.address2 || ''}<br />\\n`;\n }\n text += `${value.city || ''} ${value.state || ''} ${value.zip || ''}${value.city || value.state || value.zip ? '<br />\\n' : ''}`;\n text += `${country ? country.name : value.countryName || ''}${country || value.countryName ? '<br />\\n' : ''}`;\n text = this.sanitizationService.bypassSecurityTrustHtml(text.trim());\n break;\n case 'DateTime':\n case 'Timestamp':\n text = this.labels.formatDateShort(value);\n break;\n case 'Date':\n text = this.labels.formatDate(new Date(value));\n break;\n case 'Year':\n text = new Date(value).getFullYear();\n break;\n case 'Time':\n text = this.labels.formatTimeWithFormat(value, { hour: 'numeric', minute: 'numeric' });\n break;\n case 'Phone':\n case 'Email':\n text = value;\n break;\n case 'Money':\n text = this.labels.formatCurrency(value);\n break;\n case 'Percentage':\n text = this.labels.formatNumber(parseFloat(value).toString(), { style: 'percent', minimumFractionDigits: 2 });\n break;\n case 'Double':\n case 'BigDecimal':\n text = this.labels.formatNumber(value, { minimumFractionDigits: this.getNumberDecimalPlaces(value) });\n break;\n case 'Integer':\n text = value;\n break;\n case 'BusinessSector':\n case 'Category':\n case 'Certification':\n case 'ClientCorporation':\n case 'CorporationDepartment':\n case 'DistributionList':\n case 'Skill':\n case 'Tearsheet':\n case 'Specialty':\n text = value.label || value.name || '';\n break;\n case 'SkillText':\n text = Array.isArray(value) ? value.join(', ') : value;\n break;\n case 'Lead':\n case 'Candidate':\n case 'ClientContact':\n case 'CorporateUser':\n case 'Person':\n text = value.label || `${value.firstName || ''} ${value.lastName || ''}`;\n break;\n case 'Opportunity':\n case 'JobOrder':\n text = value.label || value.title || '';\n break;\n case 'Placement':\n if (value.candidate) {\n text = `${value.candidate.firstName || ''} ${value.candidate.lastName || ''}`;\n }\n if (value.jobOrder) {\n text = value.candidate ? `${text} - ${value.jobOrder.title || ''}` : `${value.jobOrder.title || ''}`;\n }\n break;\n case 'JobSubmission':\n text =\n value.label ||\n `${value.jobOrder ? `${value.jobOrder.title} - ` : ''} ${value.candidate ? value.candidate.firstName : ''} ${\n value.candidate ? value.candidate.lastName : ''\n }`;\n break;\n case 'WorkersCompensationRate':\n text = `${value.compensation ? `${value.compensation.code} - ` : ''} ${value.compensation ? value.compensation.name : ''}`;\n break;\n case 'Options':\n text = this.options(value, args.options, args);\n break;\n case 'ToMany':\n if (['Candidate', 'CorporateUser', 'Person'].indexOf(args.associatedEntity.entity) > -1) {\n text = this.concat(value.data, 'firstName', 'lastName');\n if (value.data.length < value.total) {\n text = text + ', ' + this.labels.getToManyPlusMore({ quantity: value.total - value.data.length });\n }\n } else if (\n ['Category', 'BusinessSector', 'Skill', 'Specialty', 'ClientCorporation', 'CorporationDepartment'].indexOf(\n args.associatedEntity.entity,\n ) > -1\n ) {\n text = this.concat(value.data, 'name');\n if (value.data.length < value.total) {\n text = text + ', ' + this.labels.getToManyPlusMore({ quantity: value.total - value.data.length });\n }\n } else if (args.associatedEntity.entity === 'MailListPushHistoryDetail') {\n text = this.concat(value.data, 'externalListName');\n } else {\n text = `${value.total || ''}`;\n }\n break;\n case 'Country':\n const countryObj: any = findByCountryId(Number(value));\n text = countryObj ? countryObj.name : value;\n break;\n case 'Html':\n if (Array.isArray(value)) {\n value = value.join(' ');\n }\n if (typeof text === 'string') {\n text = this.sanitizationService.bypassSecurityTrustHtml(value.replace(/\\<a/gi, '<a target=\"_blank\"'));\n }\n break;\n case 'CandidateComment':\n text = value.comments ? `${this.labels.formatDateShort(value.dateLastModified)} (${value.name}) - ${value.comments}` : '';\n break;\n default:\n text = value.trim ? value.trim() : value;\n break;\n }\n return text;\n } catch (e) {\n console.error(`WARNING: There was a problem rendering the value of the field: ${args.label}. Please check the configuration`);\n console.error(e);\n return text;\n }\n }\n\n updateValue(value: any, args: any): any {\n this.value = this.render(value, args);\n this.changeDetector.markForCheck();\n }\n\n transform(value?: any, args?: any): any {\n if (value === undefined || value === null) {\n return '';\n }\n\n if (this.equals(value, this.lastValue) && this.equals(args, this.lastArgs)) {\n return this.value;\n }\n\n this.lastValue = value;\n this.lastArgs = args;\n\n this.updateValue(this.lastValue, this.lastArgs);\n\n return this.value;\n }\n\n /**\n * Simple function concat a list of fields from a list of objects\n * @param list - the list of values to use\n * @param fields - list of fields to extract\n */\n concat(list: any, ...fields: any[]): any {\n const data: any = [];\n for (const item of list) {\n const label: any = [];\n for (const field of fields) {\n label.push(`${item[field]}`);\n }\n data.push(label.join(' '));\n }\n return data.join(', ');\n }\n\n /**\n * Simple function to look up the **label** to display from options\n * @param value - the value to find\n * @param list - list of options (label/value pairs)\n */\n options(value: any, list: any, args: any): any {\n if (!Array.isArray(value)) {\n value = [value];\n }\n try {\n return value.map((item: any) => {\n for (const option of list) {\n if (option.value === item) {\n return option.label;\n }\n }\n return item;\n });\n } catch (e) {\n if (!args.optionsType) {\n throw Error(e);\n }\n return value;\n }\n }\n\n getNumberDecimalPlaces(value: any): any {\n let decimalPlaces: any;\n if (value) {\n const numberString: any = parseFloat(value).toString();\n const decimalPlace: any = (numberString || '').split('.')[1] || '';\n decimalPlaces = decimalPlace.length;\n }\n return decimalPlaces || 1;\n }\n\n /**\n * Capitalizes the first letter\n */\n capitalize(value: any): string {\n return value.charAt(0).toUpperCase() + value.slice(1);\n }\n}\n","// NG2\nimport { ChangeDetectionStrategy, Component, Input, OnInit } from '@angular/core';\nimport { Helpers } from 'novo-elements/utils';\n\n@Component({\n selector: 'novo-entity-list',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <div *ngFor=\"let entity of data.data\" class=\"entity\">\n <a *ngIf=\"entity.isLinkable\" (click)=\"openLink(entity)\">\n <i class=\"bhi-circle {{ entity.class }}\"></i>{{ entity | render: metaDisplay }}\n </a>\n <span *ngIf=\"!entity.isLinkable && entity.personSubtype\">\n <i class=\"bhi-circle {{ entity.class }}\"></i>{{ entity | render: metaDisplay }}\n </span>\n <span *ngIf=\"!entity.isLinkable && !entity.personSubtype\">\n {{ entity | render: metaDisplay }}\n </span>\n </div>\n `,\n standalone: false\n})\nexport class EntityList implements OnInit {\n @Input()\n data: any;\n @Input()\n meta: any;\n baseEntity: string = '';\n metaDisplay: any;\n ENTITY_SHORT_NAMES: any = {\n Lead: 'lead',\n ClientContact: 'contact',\n ClientContact1: 'contact',\n ClientContact2: 'contact',\n ClientContact3: 'contact',\n ClientContact4: 'contact',\n ClientContact5: 'contact',\n ClientCorporation: 'company',\n ClientCorporation1: 'company',\n ClientCorporation2: 'company',\n ClientCorporation3: 'company',\n ClientCorporation4: 'company',\n ClientCorporation5: 'company',\n Opportunity: 'opportunity',\n Task: 'task',\n Note: 'note',\n CorporateUser: 'user',\n Candidate: 'candidate',\n JobOrder: 'job',\n JobOrder1: 'job',\n JobOrder2: 'job',\n JobOrder3: 'job',\n JobOrder4: 'job',\n JobOrder5: 'job',\n Placement: 'placement',\n JobSubmission: 'submission',\n CandidateReference: 'references',\n DistributionList: 'distributionList',\n Appointment: 'appointment',\n };\n\n constructor() {}\n\n ngOnInit(): any {\n // use a local copy of the meta to set the type to TO_ONE for proper display\n // without changing the input object\n this.metaDisplay = Helpers.deepClone(this.meta);\n this.metaDisplay.type = 'TO_ONE';\n this.baseEntity = this.meta.associatedEntity.entity;\n for (const entity of this.data.data) {\n entity.isLinkable = this.isLinkable(entity);\n entity.class = this.getClass(entity);\n }\n }\n\n getClass(entity: any): any {\n return this.ENTITY_SHORT_NAMES[entity.personSubtype];\n }\n\n openLink(entity: any): void {\n entity.openLink(entity);\n }\n\n isLinkable(entity: any): boolean {\n return entity.openLink;\n }\n}\n","// NG2\nimport { Component, HostBinding, Input, OnChanges, OnInit, SimpleChanges } from '@angular/core';\nimport { BooleanInput, Helpers } from 'novo-elements/utils';\n// APP\nexport enum NOVO_VALUE_TYPE {\n DEFAULT,\n ENTITY_LIST,\n LINK,\n INTERNAL_LINK,\n}\nexport enum NOVO_VALUE_THEME {\n DEFAULT,\n MOBILE,\n}\n\n@Component({\n selector: 'novo-value',\n template: `\n <div class=\"value-outer\" [ngClass]=\"customClass\">\n <novo-label>{{ meta.label }}</novo-label>\n <span class=\"value\">\n <i *ngIf=\"meta.showEntityIcon\" class=\"bhi-circle {{ meta.entityIconClass }}\"></i>\n <novo-icon *ngIf=\"meta?.icon\">{{ meta.icon }}</novo-icon>\n <ng-container [ngSwitch]=\"_type\">\n <a *ngSwitchCase=\"NOVO_VALUE_TYPE.INTERNAL_LINK\" (click)=\"openLink()\" [innerHTML]=\"data | render: meta\"></a>\n <a *ngSwitchCase=\"NOVO_VALUE_TYPE.LINK\" class=\"value\" [href]=\"url\" target=\"_blank\" [innerHTML]=\"data | render: meta\"></a>\n <novo-entity-list *ngSwitchCase=\"NOVO_VALUE_TYPE.ENTITY_LIST\" [data]=\"data\" [meta]=\"meta\"></novo-entity-list>\n <novo-text *ngSwitchDefault [innerHTML]=\"data | render: meta\"></novo-text>\n </ng-container>\n </span>\n </div>\n <div class=\"actions\" *ngIf=\"showIcon\">\n <i *ngFor=\"let icon of meta.icons\" [class]=\"iconClass(icon)\" (click)=\"onValueClick(icon)\"></i>\n </div>\n `,\n styleUrls: ['./Value.scss'],\n standalone: false\n})\nexport class NovoValueElement implements OnInit, OnChanges {\n @Input()\n data: any; // TODO use interface\n @Input()\n meta: any = { type: 'SCALAR', label: '' }; // TODO use interface\n @Input()\n theme: NOVO_VALUE_THEME = NOVO_VALUE_THEME.DEFAULT;\n\n @HostBinding('class.horizontal')\n @Input()\n @BooleanInput()\n row: Boolean = false;\n\n _type: NOVO_VALUE_TYPE;\n NOVO_VALUE_TYPE = NOVO_VALUE_TYPE;\n NOVO_VALUE_THEME = NOVO_VALUE_THEME;\n url: string;\n customClass: string = '';\n\n @Input()\n set label(lbl: string) {\n this.meta.label = lbl;\n }\n get label(): string {\n return this.meta.label;\n }\n\n @Input()\n set type(typ: string) {\n this.meta.type = typ;\n }\n get type(): string {\n return this.meta.type;\n }\n\n @Input()\n set icon(value: string) {\n this.meta.icon = value;\n }\n get icon(): string {\n return this.meta.icon;\n }\n\n ngOnInit() {\n if (Helpers.isEmpty(this.meta)) {\n this.meta = {\n label: '',\n };\n }\n }\n\n @HostBinding('class.mobile')\n public get isMobile(): boolean {\n return this.theme === NOVO_VALUE_THEME.MOBILE;\n }\n\n iconClass(icon): string {\n let iconClass = '';\n if (icon && icon.iconCls) {\n iconClass = `bhi-${icon.iconCls} actions`;\n if (icon.onIconClick) {\n iconClass = `${iconClass} clickable`;\n }\n return iconClass;\n }\n return iconClass;\n }\n\n public get isDefault(): boolean {\n return true;\n }\n\n public get showLabel(): boolean {\n return (\n this._type === NOVO_VALUE_TYPE.INTERNAL_LINK || this._type === NOVO_VALUE_TYPE.LINK || this._type === NOVO_VALUE_TYPE.ENTITY_LIST\n );\n }\n\n public get showIcon(): boolean {\n return this.meta && this.meta.icons && this.meta.icons.length && !Helpers.isEmpty(this.data);\n }\n\n onValueClick(icon): void {\n if (icon.onIconClick && typeof icon.onIconClick === 'function') {\n icon.onIconClick(this.data, this.meta);\n }\n }\n\n openLink(): void {\n if (this.meta && this.meta.openLink && typeof this.meta.openLink === 'function') {\n this.meta.openLink(this.data, this.meta);\n }\n }\n\n ngOnChanges(changes?: SimpleChanges): any {\n if (this.meta && this.isLinkField(this.meta, this.data)) {\n this._type = NOVO_VALUE_TYPE.LINK;\n // Make sure the value has a protocol, otherwise the URL will be relative\n const hasProtocol: any = new RegExp('^(http|https)://', 'i');\n if (!hasProtocol.test(this.data)) {\n this.url = `http://${this.data}`;\n } else {\n this.url = this.data;\n }\n } else if (this.isEntityList(this.meta.type)) {\n this._type = NOVO_VALUE_TYPE.ENTITY_LIST;\n } else if (this.isHTMLField(this.meta)) {\n this.customClass = this.meta.customClass ? this.meta.customClass : '';\n if (this.meta.stripHTML && this.data && this.data.replace) {\n this.data = this.data.replace(/<(?!style|\\/style).+?>/gi, '').trim();\n }\n } else if (this.meta && this.meta.associatedEntity) {\n switch (this.meta.associatedEntity.entity) {\n case 'ClientCorporation':\n case 'ClientContact':\n case 'Candidate':\n case 'Opportunity':\n case 'JobOrder':\n case 'Placement':\n case 'Lead':\n this._type = NOVO_VALUE_TYPE.INTERNAL_LINK;\n break;\n default:\n break;\n }\n }\n }\n\n isLinkField(field: { name?: string; type?: NOVO_VALUE_TYPE }, data: any): boolean {\n const linkFields: any = ['companyURL', 'clientCorporationCompanyURL'];\n const regex: any = new RegExp('^(https?://(?:www.|(?!www))[^s.]+.[^s]{2,}|www.[^s]+.[^s]{2,})$', 'gi');\n const isURL: any = Helpers.isString(data) && regex.exec(data.trim());\n return linkFields.indexOf(field.name) > -1 || !!isURL || field.type === NOVO_VALUE_TYPE.LINK;\n }\n\n isEntityList(type: string): boolean {\n return type === 'TO_MANY';\n }\n\n isHTMLField(meta: any): boolean {\n return meta.dataSpecialization === 'HTML' || meta.inputType === 'TEXTAREA';\n }\n}\n","// NG2\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { NovoCommonModule } from 'novo-elements/elements/common';\nimport { NovoIconModule } from 'novo-elements/elements/icon';\nimport { EntityList } from './EntityList';\nimport { RenderPipe } from './Render';\nimport { NovoValueElement } from './Value';\n\n@NgModule({\n imports: [CommonModule, NovoCommonModule, NovoIconModule],\n declarations: [NovoValueElement, RenderPipe, EntityList],\n exports: [NovoValueElement, RenderPipe, EntityList],\n})\nexport class NovoValueModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.RenderPipe","i2","i4.EntityList","i5.RenderPipe"],"mappings":";;;;;;;;;;;;AAAA;AAOA;;;;;;;;;;;;;;;;;;;;;;;;;AAyBG;MAOU,UAAU,CAAA;AAKrB,IAAA,WAAA,CAAoB,cAAiC,EAAU,mBAAiC,EAAU,MAAwB,EAAA;QAA9G,IAAc,CAAA,cAAA,GAAd,cAAc;QAA6B,IAAmB,CAAA,mBAAA,GAAnB,mBAAmB;QAAwB,IAAM,CAAA,MAAA,GAAN,MAAM;;IAEhH,MAAM,CAAC,SAAc,EAAE,SAAc,EAAA;AACnC,QAAA,IAAI,SAAS,KAAK,SAAS,EAAE;AAC3B,YAAA,OAAO,IAAI;;QAEb,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,IAAI,EAAE;AAC5C,YAAA,OAAO,KAAK;;QAEd,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,EAAE;AACtD,YAAA,OAAO,IAAI;;AAEb,QAAA,MAAM,EAAE,GAAQ,OAAO,SAAS;AAChC,QAAA,MAAM,EAAE,GAAQ,OAAO,SAAS;AAChC,QAAA,IAAI,MAAc;AAClB,QAAA,IAAI,GAAQ;AACZ,QAAA,IAAI,MAAW;QACf,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,QAAQ,EAAE;AAChC,YAAA,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;gBAC5B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;AAC7B,oBAAA,OAAO,KAAK;;AAEd,gBAAA,MAAM,GAAG,SAAS,CAAC,MAAM;AACzB,gBAAA,IAAI,MAAM,KAAK,SAAS,CAAC,MAAM,EAAE;oBAC/B,KAAK,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,MAAM,EAAE,GAAG,EAAE,EAAE;AACjC,wBAAA,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE;AAChD,4BAAA,OAAO,KAAK;;;AAGhB,oBAAA,OAAO,IAAI;;;iBAER;AACL,gBAAA,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;AAC5B,oBAAA,OAAO,KAAK;;AAEd,gBAAA,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;AAC5B,gBAAA,KAAK,GAAG,IAAI,SAAS,EAAE;AACrB,oBAAA,IAAI,SAAS,CAAC,GAAG,CAAC,EAAE;AAClB,wBAAA,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE;AAChD,4BAAA,OAAO,KAAK;;AAEd,wBAAA,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI;;;AAGtB,gBAAA,KAAK,GAAG,IAAI,SAAS,EAAE;AACrB,oBAAA,IAAI,EAAE,GAAG,IAAI,MAAM,CAAC,IAAI,OAAO,SAAS,CAAC,GAAG,CAAC,KAAK,WAAW,EAAE;AAC7D,wBAAA,OAAO,KAAK;;;AAGhB,gBAAA,OAAO,IAAI;;;AAGf,QAAA,OAAO,KAAK;;IAGd,cAAc,CAAC,IAAS,EAAE,MAAc,EAAA;QACtC,QAAQ,MAAM;AACZ,YAAA,KAAK,eAAe;AACpB,YAAA,KAAK,eAAe;AACpB,YAAA,KAAK,gBAAgB;AACrB,YAAA,KAAK,gBAAgB;AACrB,YAAA,KAAK,gBAAgB;AACrB,YAAA,KAAK,gBAAgB;AACrB,YAAA,KAAK,gBAAgB;AACrB,YAAA,KAAK,MAAM;AACX,YAAA,KAAK,WAAW;AAChB,YAAA,KAAK,QAAQ;AACX,gBAAA,OAAO,GAAG,IAAI,CAAC,SAAS,IAAI,EAAE,CAAI,CAAA,EAAA,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAA,CAAE,CAAC,IAAI,EAAE;AAChE,YAAA,KAAK,mBAAmB;AACxB,YAAA,KAAK,oBAAoB;AACzB,YAAA,KAAK,oBAAoB;AACzB,YAAA,KAAK,oBAAoB;AACzB,YAAA,KAAK,oBAAoB;AACzB,YAAA,KAAK,oBAAoB;gBACvB,OAAO,CAAA,EAAG,IAAI,CAAC,IAAI,IAAI,EAAE,CAAE,CAAA,CAAC,IAAI,EAAE;AACpC,YAAA,KAAK,UAAU;AACf,YAAA,KAAK,WAAW;AAChB,YAAA,KAAK,WAAW;AAChB,YAAA,KAAK,WAAW;AAChB,YAAA,KAAK,WAAW;AAChB,YAAA,KAAK,WAAW;AAChB,YAAA,KAAK,aAAa;gBAChB,OAAO,CAAA,EAAG,IAAI,CAAC,KAAK,IAAI,EAAE,CAAE,CAAA,CAAC,IAAI,EAAE;AACrC,YAAA,KAAK,WAAW;gBACd,IAAI,KAAK,GAAW,EAAE;AACtB,gBAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AAClB,oBAAA,KAAK,GAAG,CAAG,EAAA,IAAI,CAAC,SAAS,CAAC,SAAS,CAAA,CAAA,EAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE;;AAEzE,gBAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,oBAAA,KAAK,GAAG,CAAA,EAAG,KAAK,CAAA,GAAA,EAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAA,CAAE,CAAC,IAAI,EAAE;;AAEpD,gBAAA,OAAO,KAAK;AACd,YAAA;AACE,gBAAA,OAAO,EAAE;;;AAIf;;;;;AAKG;IACH,MAAM,CAAC,KAAU,EAAE,IAAS,EAAA;QAC1B,IAAI,IAAI,GAAQ,IAAI;QACpB,IAAI,IAAI,GAAQ,KAAK;;QAGrB,IAAI,KAAK,IAAI,KAAK,CAAC,QAAQ,IAAI,CAAC,IAAI,EAAE;YACpC,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC;;;QAInD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI,EAAE;AAClD,YAAA,OAAO,IAAI;;QAGb,IAAI,IAAI,CAAC,SAAS,IAAI,OAAO,IAAI,CAAC,SAAS,KAAK,UAAU,EAAE;YAC1D,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC;;;;AAIpC,QAAA,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE;YAC3B,IAAI,GAAG,QAAQ;;AACV,aAAA,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE;AACjC,YAAA,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM;;AAC9B,aAAA,IAAI,IAAI,CAAC,kBAAkB,KAAK,UAAU,EAAE;YACjD,IAAI,GAAG,UAAU;;AACZ,aAAA,IAAI,IAAI,CAAC,kBAAkB,KAAK,MAAM,EAAE;YAC7C,IAAI,GAAG,MAAM;;AACR,aAAA,IAAI,IAAI,CAAC,kBAAkB,KAAK,MAAM,EAAE;YAC7C,IAAI,GAAG,MAAM;;AACR,aAAA,IAAI,IAAI,CAAC,kBAAkB,KAAK,MAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM,EAAE;YACzE,IAAI,GAAG,MAAM;;AACR,aAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,WAAW,EAAE;YACxC,IAAI,GAAG,WAAW;;aACb,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE;YACjG,IAAI,GAAG,OAAO;;AACT,aAAA,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,OAAO,EAAE;YAC7D,IAAI,GAAG,OAAO;;AACT,aAAA,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,mBAAmB,KAAK,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE;YAC7F,IAAI,GAAG,SAAS;;AACX,aAAA,IAAI,IAAI,CAAC,WAAW,KAAK,WAAW,EAAE;YAC3C,IAAI,GAAG,WAAW;;AACb,aAAA,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,KAAK,QAAQ,IAAI,IAAI,CAAC,SAAS,KAAK,UAAU,EAAE;YACvF,IAAI,GAAG,SAAS;;aACX,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,EAAE;AACvF,YAAA,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE,CAAC;;aACxD;AACL,YAAA,IAAI,GAAG,IAAI,CAAC,QAAQ,IAAI,SAAS;;;AAInC,QAAA,IAAI;YACF,QAAQ,IAAI;AACV,gBAAA,KAAK,SAAS;AACd,gBAAA,KAAK,UAAU;AACf,gBAAA,KAAK,uBAAuB;AAC5B,gBAAA,KAAK,kBAAkB;AACvB,gBAAA,KAAK,gBAAgB;oBACnB,MAAM,OAAO,GAAQ,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;oBAC/D,IAAI,GAAG,EAAE;oBACT,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,EAAE;AACpC,wBAAA,IAAI,IAAI,CAAA,EAAG,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAI,CAAA,EAAA,KAAK,CAAC,QAAQ,IAAI,EAAE,UAAU;;AAEnE,oBAAA,IAAI,IAAI,CAAG,EAAA,KAAK,CAAC,IAAI,IAAI,EAAE,CAAI,CAAA,EAAA,KAAK,CAAC,KAAK,IAAI,EAAE,CAAA,CAAA,EAAI,KAAK,CAAC,GAAG,IAAI,EAAE,CAAA,EAAG,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG,GAAG,UAAU,GAAG,EAAE,EAAE;AAChI,oBAAA,IAAI,IAAI,CAAA,EAAG,OAAO,GAAG,OAAO,CAAC,IAAI,GAAG,KAAK,CAAC,WAAW,IAAI,EAAE,CAAA,EAAG,OAAO,IAAI,KAAK,CAAC,WAAW,GAAG,UAAU,GAAG,EAAE,EAAE;AAC9G,oBAAA,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;oBACpE;AACF,gBAAA,KAAK,UAAU;AACf,gBAAA,KAAK,WAAW;oBACd,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC;oBACzC;AACF,gBAAA,KAAK,MAAM;AACT,oBAAA,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC9C;AACF,gBAAA,KAAK,MAAM;oBACT,IAAI,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE;oBACpC;AACF,gBAAA,KAAK,MAAM;AACT,oBAAA,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;oBACtF;AACF,gBAAA,KAAK,OAAO;AACZ,gBAAA,KAAK,OAAO;oBACV,IAAI,GAAG,KAAK;oBACZ;AACF,gBAAA,KAAK,OAAO;oBACV,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC;oBACxC;AACF,gBAAA,KAAK,YAAY;oBACf,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,qBAAqB,EAAE,CAAC,EAAE,CAAC;oBAC7G;AACF,gBAAA,KAAK,QAAQ;AACb,gBAAA,KAAK,YAAY;oBACf,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,qBAAqB,EAAE,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC;oBACrG;AACF,gBAAA,KAAK,SAAS;oBACZ,IAAI,GAAG,KAAK;oBACZ;AACF,gBAAA,KAAK,gBAAgB;AACrB,gBAAA,KAAK,UAAU;AACf,gBAAA,KAAK,eAAe;AACpB,gBAAA,KAAK,mBAAmB;AACxB,gBAAA,KAAK,uBAAuB;AAC5B,gBAAA,KAAK,kBAAkB;AACvB,gBAAA,KAAK,OAAO;AACZ,gBAAA,KAAK,WAAW;AAChB,gBAAA,KAAK,WAAW;oBACd,IAAI,GAAG,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,IAAI,EAAE;oBACtC;AACF,gBAAA,KAAK,WAAW;oBACd,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK;oBACtD;AACF,gBAAA,KAAK,MAAM;AACX,gBAAA,KAAK,WAAW;AAChB,gBAAA,KAAK,eAAe;AACpB,gBAAA,KAAK,eAAe;AACpB,gBAAA,KAAK,QAAQ;AACX,oBAAA,IAAI,GAAG,KAAK,CAAC,KAAK,IAAI,CAAA,EAAG,KAAK,CAAC,SAAS,IAAI,EAAE,IAAI,KAAK,CAAC,QAAQ,IAAI,EAAE,EAAE;oBACxE;AACF,gBAAA,KAAK,aAAa;AAClB,gBAAA,KAAK,UAAU;oBACb,IAAI,GAAG,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,IAAI,EAAE;oBACvC;AACF,gBAAA,KAAK,WAAW;AACd,oBAAA,IAAI,KAAK,CAAC,SAAS,EAAE;AACnB,wBAAA,IAAI,GAAG,CAAG,EAAA,KAAK,CAAC,SAAS,CAAC,SAAS,IAAI,EAAE,CAAI,CAAA,EAAA,KAAK,CAAC,SAAS,CAAC,QAAQ,IAAI,EAAE,EAAE;;AAE/E,oBAAA,IAAI,KAAK,CAAC,QAAQ,EAAE;AAClB,wBAAA,IAAI,GAAG,KAAK,CAAC,SAAS,GAAG,CAAA,EAAG,IAAI,CAAA,GAAA,EAAM,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAE,CAAA,GAAG,CAAG,EAAA,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE,EAAE;;oBAEtG;AACF,gBAAA,KAAK,eAAe;oBAClB,IAAI;AACF,wBAAA,KAAK,CAAC,KAAK;4BACX,CAAG,EAAA,KAAK,CAAC,QAAQ,GAAG,CAAA,EAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAK,GAAA,CAAA,GAAG,EAAE,CAAA,CAAA,EAAI,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,SAAS,GAAG,EAAE,CAAA,CAAA,EACvG,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,QAAQ,GAAG,EAC/C,CAAA,CAAE;oBACJ;AACF,gBAAA,KAAK,yBAAyB;AAC5B,oBAAA,IAAI,GAAG,CAAG,EAAA,KAAK,CAAC,YAAY,GAAG,CAAG,EAAA,KAAK,CAAC,YAAY,CAAC,IAAI,CAAA,GAAA,CAAK,GAAG,EAAE,CAAA,CAAA,EAAI,KAAK,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC,IAAI,GAAG,EAAE,EAAE;oBAC1H;AACF,gBAAA,KAAK,SAAS;AACZ,oBAAA,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC;oBAC9C;AACF,gBAAA,KAAK,QAAQ;oBACX,IAAI,CAAC,WAAW,EAAE,eAAe,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE;AACvF,wBAAA,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,UAAU,CAAC;wBACvD,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,EAAE;4BACnC,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;;;yBAE9F,IACL,CAAC,UAAU,EAAE,gBAAgB,EAAE,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,uBAAuB,CAAC,CAAC,OAAO,CACxG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAC7B,GAAG,CAAC,CAAC,EACN;wBACA,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC;wBACtC,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,EAAE;4BACnC,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;;;yBAE9F,IAAI,IAAI,CAAC,gBAAgB,CAAC,MAAM,KAAK,2BAA2B,EAAE;wBACvE,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,kBAAkB,CAAC;;yBAC7C;wBACL,IAAI,GAAG,GAAG,KAAK,CAAC,KAAK,IAAI,EAAE,EAAE;;oBAE/B;AACF,gBAAA,KAAK,SAAS;oBACZ,MAAM,UAAU,GAAQ,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACtD,oBAAA,IAAI,GAAG,UAAU,GAAG,UAAU,CAAC,IAAI,GAAG,KAAK;oBAC3C;AACF,gBAAA,KAAK,MAAM;AACT,oBAAA,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AACxB,wBAAA,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC;;AAEzB,oBAAA,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;AAC5B,wBAAA,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,uBAAuB,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;;oBAEvG;AACF,gBAAA,KAAK,kBAAkB;AACrB,oBAAA,IAAI,GAAG,KAAK,CAAC,QAAQ,GAAG,CAAA,EAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAA,EAAA,EAAK,KAAK,CAAC,IAAI,CAAO,IAAA,EAAA,KAAK,CAAC,QAAQ,CAAE,CAAA,GAAG,EAAE;oBACzH;AACF,gBAAA;AACE,oBAAA,IAAI,GAAG,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,EAAE,GAAG,KAAK;oBACxC;;AAEJ,YAAA,OAAO,IAAI;;QACX,OAAO,CAAC,EAAE;YACV,OAAO,CAAC,KAAK,CAAC,CAAA,+DAAA,EAAkE,IAAI,CAAC,KAAK,CAAkC,gCAAA,CAAA,CAAC;AAC7H,YAAA,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;AAChB,YAAA,OAAO,IAAI;;;IAIf,WAAW,CAAC,KAAU,EAAE,IAAS,EAAA;QAC/B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC;AACrC,QAAA,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE;;IAGpC,SAAS,CAAC,KAAW,EAAE,IAAU,EAAA;QAC/B,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE;AACzC,YAAA,OAAO,EAAE;;QAGX,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE;YAC1E,OAAO,IAAI,CAAC,KAAK;;AAGnB,QAAA,IAAI,CAAC,SAAS,GAAG,KAAK;AACtB,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI;QAEpB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC;QAE/C,OAAO,IAAI,CAAC,KAAK;;AAGnB;;;;AAIG;AACH,IAAA,MAAM,CAAC,IAAS,EAAE,GAAG,MAAa,EAAA;QAChC,MAAM,IAAI,GAAQ,EAAE;AACpB,QAAA,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE;YACvB,MAAM,KAAK,GAAQ,EAAE;AACrB,YAAA,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;gBAC1B,KAAK,CAAC,IAAI,CAAC,CAAG,EAAA,IAAI,CAAC,KAAK,CAAC,CAAE,CAAA,CAAC;;YAE9B,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;;AAE5B,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;;AAGxB;;;;AAIG;AACH,IAAA,OAAO,CAAC,KAAU,EAAE,IAAS,EAAE,IAAS,EAAA;QACtC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AACzB,YAAA,KAAK,GAAG,CAAC,KAAK,CAAC;;AAEjB,QAAA,IAAI;AACF,YAAA,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAS,KAAI;AAC7B,gBAAA,KAAK,MAAM,MAAM,IAAI,IAAI,EAAE;AACzB,oBAAA,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI,EAAE;wBACzB,OAAO,MAAM,CAAC,KAAK;;;AAGvB,gBAAA,OAAO,IAAI;AACb,aAAC,CAAC;;QACF,OAAO,CAAC,EAAE;AACV,YAAA,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;AACrB,gBAAA,MAAM,KAAK,CAAC,CAAC,CAAC;;AAEhB,YAAA,OAAO,KAAK;;;AAIhB,IAAA,sBAAsB,CAAC,KAAU,EAAA;AAC/B,QAAA,IAAI,aAAkB;QACtB,IAAI,KAAK,EAAE;YACT,MAAM,YAAY,GAAQ,UAAU,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE;AACtD,YAAA,MAAM,YAAY,GAAQ,CAAC,YAAY,IAAI,EAAE,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;AAClE,YAAA,aAAa,GAAG,YAAY,CAAC,MAAM;;QAErC,OAAO,aAAa,IAAI,CAAC;;AAG3B;;AAEG;AACH,IAAA,UAAU,CAAC,KAAU,EAAA;AACnB,QAAA,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;;+GAzX5C,UAAU,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,YAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA;6GAAV,UAAU,EAAA,YAAA,EAAA,KAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,CAAA,CAAA;mHAAV,UAAU,EAAA,CAAA,CAAA;;4FAAV,UAAU,EAAA,UAAA,EAAA,CAAA;kBANtB,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACF,oBAAA,IAAI,EAAE,QAAQ;AACd,oBAAA,IAAI,EAAE,KAAK;AACX,oBAAA,UAAU,EAAE;AACf,iBAAA;;kBACA;;;ACtCD;MAsBa,UAAU,CAAA;AAuCrB,IAAA,WAAA,GAAA;QAlCA,IAAU,CAAA,UAAA,GAAW,EAAE;AAEvB,QAAA,IAAA,CAAA,kBAAkB,GAAQ;AACxB,YAAA,IAAI,EAAE,MAAM;AACZ,YAAA,aAAa,EAAE,SAAS;AACxB,YAAA,cAAc,EAAE,SAAS;AACzB,YAAA,cAAc,EAAE,SAAS;AACzB,YAAA,cAAc,EAAE,SAAS;AACzB,YAAA,cAAc,EAAE,SAAS;AACzB,YAAA,cAAc,EAAE,SAAS;AACzB,YAAA,iBAAiB,EAAE,SAAS;AAC5B,YAAA,kBAAkB,EAAE,SAAS;AAC7B,YAAA,kBAAkB,EAAE,SAAS;AAC7B,YAAA,kBAAkB,EAAE,SAAS;AAC7B,YAAA,kBAAkB,EAAE,SAAS;AAC7B,YAAA,kBAAkB,EAAE,SAAS;AAC7B,YAAA,WAAW,EAAE,aAAa;AAC1B,YAAA,IAAI,EAAE,MAAM;AACZ,YAAA,IAAI,EAAE,MAAM;AACZ,YAAA,aAAa,EAAE,MAAM;AACrB,YAAA,SAAS,EAAE,WAAW;AACtB,YAAA,QAAQ,EAAE,KAAK;AACf,YAAA,SAAS,EAAE,KAAK;AAChB,YAAA,SAAS,EAAE,KAAK;AAChB,YAAA,SAAS,EAAE,KAAK;AAChB,YAAA,SAAS,EAAE,KAAK;AAChB,YAAA,SAAS,EAAE,KAAK;AAChB,YAAA,SAAS,EAAE,WAAW;AACtB,YAAA,aAAa,EAAE,YAAY;AAC3B,YAAA,kBAAkB,EAAE,YAAY;AAChC,YAAA,gBAAgB,EAAE,kBAAkB;AACpC,YAAA,WAAW,EAAE,aAAa;SAC3B;;IAID,QAAQ,GAAA;;;QAGN,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;AAC/C,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,GAAG,QAAQ;QAChC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM;QACnD,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACnC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;YAC3C,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;;;AAIxC,IAAA,QAAQ,CAAC,MAAW,EAAA;QAClB,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,aAAa,CAAC;;AAGtD,IAAA,QAAQ,CAAC,MAAW,EAAA;AAClB,QAAA,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;;AAGzB,IAAA,UAAU,CAAC,MAAW,EAAA;QACpB,OAAO,MAAM,CAAC,QAAQ;;+GA9Db,UAAU,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAV,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,UAAU,EAfT,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA;;;;;;;;;;;;AAYX,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAC,UAAA,EAAA,IAAA,EAAA,QAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FAGU,UAAU,EAAA,UAAA,EAAA,CAAA;kBAlBtB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,kBAAkB;oBAC5B,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE;;;;;;;;;;;;AAYX,EAAA,CAAA;AACC,oBAAA,UAAU,EAAE;AACf,iBAAA;wDAGC,IAAI,EAAA,CAAA;sBADH;gBAGD,IAAI,EAAA,CAAA;sBADH;;;;;;;;;;;;ACtBH;IACY;AAAZ,CAAA,UAAY,eAAe,EAAA;AACzB,IAAA,eAAA,CAAA,eAAA,CAAA,SAAA,CAAA,GAAA,CAAA,CAAA,GAAA,SAAO;AACP,IAAA,eAAA,CAAA,eAAA,CAAA,aAAA,CAAA,GAAA,CAAA,CAAA,GAAA,aAAW;AACX,IAAA,eAAA,CAAA,eAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA,GAAA,MAAI;AACJ,IAAA,eAAA,CAAA,eAAA,CAAA,eAAA,CAAA,GAAA,CAAA,CAAA,GAAA,eAAa;AACf,CAAC,EALW,eAAe,KAAf,eAAe,GAK1B,EAAA,CAAA,CAAA;IACW;AAAZ,CAAA,UAAY,gBAAgB,EAAA;AAC1B,IAAA,gBAAA,CAAA,gBAAA,CAAA,SAAA,CAAA,GAAA,CAAA,CAAA,GAAA,SAAO;AACP,IAAA,gBAAA,CAAA,gBAAA,CAAA,QAAA,CAAA,GAAA,CAAA,CAAA,GAAA,QAAM;AACR,CAAC,EAHW,gBAAgB,KAAhB,gBAAgB,GAG3B,EAAA,CAAA,CAAA;MAyBY,gBAAgB,CAAA;AAvB7B,IAAA,WAAA,GAAA;AA2BE,QAAA,IAAA,CAAA,IAAI,GAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;AAE1C,QAAA,IAAA,CAAA,KAAK,GAAqB,gBAAgB,CAAC,OAAO;QAKlD,IAAG,CAAA,GAAA,GAAY,KAAK;QAGpB,IAAe,CAAA,eAAA,GAAG,eAAe;QACjC,IAAgB,CAAA,gBAAA,GAAG,gBAAgB;QAEnC,IAAW,CAAA,WAAA,GAAW,EAAE;AA6HzB;IA3HC,IACI,KAAK,CAAC,GAAW,EAAA;AACnB,QAAA,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,GAAG;;AAEvB,IAAA,IAAI,KAAK,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK;;IAGxB,IACI,IAAI,CAAC,GAAW,EAAA;AAClB,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,GAAG;;AAEtB,IAAA,IAAI,IAAI,GAAA;AACN,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI;;IAGvB,IACI,IAAI,CAAC,KAAa,EAAA;AACpB,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,KAAK;;AAExB,IAAA,IAAI,IAAI,GAAA;AACN,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI;;IAGvB,QAAQ,GAAA;QACN,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC9B,IAAI,CAAC,IAAI,GAAG;AACV,gBAAA,KAAK,EAAE,EAAE;aACV;;;AAIL,IAAA,IACW,QAAQ,GAAA;AACjB,QAAA,OAAO,IAAI,CAAC,KAAK,KAAK,gBAAgB,CAAC,MAAM;;AAG/C,IAAA,SAAS,CAAC,IAAI,EAAA;QACZ,IAAI,SAAS,GAAG,EAAE;AAClB,QAAA,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE;AACxB,YAAA,SAAS,GAAG,CAAO,IAAA,EAAA,IAAI,CAAC,OAAO,UAAU;AACzC,YAAA,IAAI,IAAI,CAAC,WAAW,EAAE;AACpB,gBAAA,SAAS,GAAG,CAAA,EAAG,SAAS,CAAA,UAAA,CAAY;;AAEtC,YAAA,OAAO,SAAS;;AAElB,QAAA,OAAO,SAAS;;AAGlB,IAAA,IAAW,SAAS,GAAA;AAClB,QAAA,OAAO,IAAI;;AAGb,IAAA,IAAW,SAAS,GAAA;QAClB,QACE,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,aAAa,IAAI,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,WAAW;;AAIrI,IAAA,IAAW,QAAQ,GAAA;QACjB,OAAO,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;;AAG9F,IAAA,YAAY,CAAC,IAAI,EAAA;QACf,IAAI,IAAI,CAAC,WAAW,IAAI,OAAO,IAAI,CAAC,WAAW,KAAK,UAAU,EAAE;YAC9D,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;;;IAI1C,QAAQ,GAAA;AACN,QAAA,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,KAAK,UAAU,EAAE;AAC/E,YAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;;;AAI5C,IAAA,WAAW,CAAC,OAAuB,EAAA;AACjC,QAAA,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;AACvD,YAAA,IAAI,CAAC,KAAK,GAAG,eAAe,CAAC,IAAI;;YAEjC,MAAM,WAAW,GAAQ,IAAI,MAAM,CAAC,kBAAkB,EAAE,GAAG,CAAC;YAC5D,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBAChC,IAAI,CAAC,GAAG,GAAG,CAAA,OAAA,EAAU,IAAI,CAAC,IAAI,EAAE;;iBAC3B;AACL,gBAAA,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI;;;aAEjB,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;AAC5C,YAAA,IAAI,CAAC,KAAK,GAAG,eAAe,CAAC,WAAW;;aACnC,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACtC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,GAAG,EAAE;AACrE,YAAA,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;AACzD,gBAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,0BAA0B,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;;;aAEjE,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;YAClD,QAAQ,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM;AACvC,gBAAA,KAAK,mBAAmB;AACxB,gBAAA,KAAK,eAAe;AACpB,gBAAA,KAAK,WAAW;AAChB,gBAAA,KAAK,aAAa;AAClB,gBAAA,KAAK,UAAU;AACf,gBAAA,KAAK,WAAW;AAChB,gBAAA,KAAK,MAAM;AACT,oBAAA,IAAI,CAAC,KAAK,GAAG,eAAe,CAAC,aAAa;oBAC1C;AACF,gBAAA;oBACE;;;;IAKR,WAAW,CAAC,KAAgD,EAAE,IAAS,EAAA;AACrE,QAAA,MAAM,UAAU,GAAQ,CAAC,YAAY,EAAE,6BAA6B,CAAC;QACrE,MAAM,KAAK,GAAQ,IAAI,MAAM,CAAC,iEAAiE,EAAE,IAAI,CAAC;AACtG,QAAA,MAAM,KAAK,GAAQ,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACpE,OAAO,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,eAAe,CAAC,IAAI;;AAG9F,IAAA,YAAY,CAAC,IAAY,EAAA;QACvB,OAAO,IAAI,KAAK,SAAS;;AAG3B,IAAA,WAAW,CAAC,IAAS,EAAA;QACnB,OAAO,IAAI,CAAC,kBAAkB,KAAK,MAAM,IAAI,IAAI,CAAC,SAAS,KAAK,UAAU;;+GA5IjE,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,gBAAgB,EArBf,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,GAAA,EAAA,KAAA,EAAA,KAAA,EAAA,OAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,kBAAA,EAAA,UAAA,EAAA,cAAA,EAAA,eAAA,EAAA,EAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA;;;;;;;;;;;;;;;;;AAiBX,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,27FAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAD,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,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,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,eAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAE,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,SAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,CAAA,IAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,OAAA,EAAA,OAAA,EAAA,OAAA,EAAA,MAAA,EAAA,SAAA,EAAA,QAAA,EAAA,KAAA,EAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,UAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAC,UAAA,EAAA,IAAA,EAAA,QAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;AAeD,UAAA,CAAA;AADC,IAAA,YAAY,EAAE;8BACV,OAAO;AAAS,CAAA,EAAA,gBAAA,CAAA,SAAA,EAAA,KAAA,EAAA,KAAA,CAAA,CAAA;4FAXV,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAvB5B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,YAAY,EACZ,QAAA,EAAA;;;;;;;;;;;;;;;;;AAiBX,EAAA,CAAA,EAAA,UAAA,EAEa,KAAK,EAAA,MAAA,EAAA,CAAA,27FAAA,CAAA,EAAA;8BAInB,IAAI,EAAA,CAAA;sBADH;gBAGD,IAAI,EAAA,CAAA;sBADH;gBAGD,KAAK,EAAA,CAAA;sBADJ;gBAMD,GAAG,EAAA,CAAA;sBAHF,WAAW;uBAAC,kBAAkB;;sBAC9B;gBAWG,KAAK,EAAA,CAAA;sBADR;gBASG,IAAI,EAAA,CAAA;sBADP;gBASG,IAAI,EAAA,CAAA;sBADP;gBAiBU,QAAQ,EAAA,CAAA;sBADlB,WAAW;uBAAC,cAAc;;;ACzF7B;MAca,eAAe,CAAA;+GAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAf,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,iBAHX,gBAAgB,EAAE,UAAU,EAAE,UAAU,CAD7C,EAAA,OAAA,EAAA,CAAA,YAAY,EAAE,gBAAgB,EAAE,cAAc,CAAA,EAAA,OAAA,EAAA,CAE9C,gBAAgB,EAAE,UAAU,EAAE,UAAU,CAAA,EAAA,CAAA,CAAA;AAEvC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,EAJhB,OAAA,EAAA,CAAA,YAAY,EAAE,gBAAgB,EAAE,cAAc,CAAA,EAAA,CAAA,CAAA;;4FAI7C,eAAe,EAAA,UAAA,EAAA,CAAA;kBAL3B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,gBAAgB,EAAE,cAAc,CAAC;AACzD,oBAAA,YAAY,EAAE,CAAC,gBAAgB,EAAE,UAAU,EAAE,UAAU,CAAC;AACxD,oBAAA,OAAO,EAAE,CAAC,gBAAgB,EAAE,UAAU,EAAE,UAAU,CAAC;AACpD,iBAAA;;;ACbD;;AAEG;;;;"}
1
+ {"version":3,"file":"novo-elements-elements-value.mjs","sources":["../../../projects/novo-elements/src/elements/value/Render.ts","../../../projects/novo-elements/src/elements/value/EntityList.ts","../../../projects/novo-elements/src/elements/value/Value.ts","../../../projects/novo-elements/src/elements/value/Value.module.ts","../../../projects/novo-elements/src/elements/value/novo-elements-elements-value.ts"],"sourcesContent":["// NG2\nimport { ChangeDetectorRef, Injectable, Pipe, PipeTransform } from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n// APP\nimport { NovoLabelService } from 'novo-elements/services';\nimport { findByCountryId } from 'novo-elements/utils';\n\n/**\n * @classdesc\n * Renders data appropriately based on the data type found in Meta\n * All data types defined by bullhorn should be supported:\n *\n * - **String**: trims value and returns\n * - **Integer**: return value\n * - **Double**: return value fixed to 2 decimals\n * - **BigDecimal**: return value fixed to 2 decimals\n * - **Address**: only city and/or state returned\n * - **Address1**: only city and/or state returned\n * - **AddressWithoutCountry**: only city and/or state returned\n * - **Currency**: put a $ in front\n * - **Percentage**: divide by 100 fix to 2 decimals place and return\n * - **Options**: returns the appropriate 'label' for the 'value' from 'options'\n * - **Array**: returns list comma separated\n * - **DateTime**: formats the date\n * - **TimeStamp**: formats the date\n * - **ToOne**: return the entity specific name (ie. name, firstName lastName, title, ...)\n * - **ToMany**: return an array of the entity specific names (ie. name, firstName lastName, title, ...)\n *\n * @example\n * ```\n * {{ expression | render:field }}\n * ```\n */\n@Pipe({\n name: 'render',\n pure: false,\n standalone: false,\n})\n@Injectable()\nexport class RenderPipe implements PipeTransform {\n value: any;\n lastValue: any;\n lastArgs: any;\n\n constructor(private changeDetector: ChangeDetectorRef, private sanitizationService: DomSanitizer, private labels: NovoLabelService) {}\n\n equals(objectOne: any, objectTwo: any): any {\n if (objectOne === objectTwo) {\n return true;\n }\n if (objectOne === null || objectTwo === null) {\n return false;\n }\n if (objectOne !== objectOne && objectTwo !== objectTwo) {\n return true;\n }\n const t1: any = typeof objectOne;\n const t2: any = typeof objectTwo;\n let length: number;\n let key: any;\n let keySet: any;\n if (t1 === t2 && t1 === 'object') {\n if (Array.isArray(objectOne)) {\n if (!Array.isArray(objectTwo)) {\n return false;\n }\n length = objectOne.length;\n if (length === objectTwo.length) {\n for (key = 0; key < length; key++) {\n if (!this.equals(objectOne[key], objectTwo[key])) {\n return false;\n }\n }\n return true;\n }\n } else {\n if (Array.isArray(objectTwo)) {\n return false;\n }\n keySet = Object.create(null);\n for (key in objectOne) {\n if (objectOne[key]) {\n if (!this.equals(objectOne[key], objectTwo[key])) {\n return false;\n }\n keySet[key] = true;\n }\n }\n for (key in objectTwo) {\n if (!(key in keySet) && typeof objectTwo[key] !== 'undefined') {\n return false;\n }\n }\n return true;\n }\n }\n return false;\n }\n\n getEntityLabel(item: any, entity: string): string {\n switch (entity) {\n case 'CorporateUser':\n case 'ClientContact':\n case 'ClientContact1':\n case 'ClientContact2':\n case 'ClientContact3':\n case 'ClientContact4':\n case 'ClientContact5':\n case 'Lead':\n case 'Candidate':\n case 'Person':\n return `${item.firstName || ''} ${item.lastName || ''}`.trim();\n case 'ClientCorporation':\n case 'ClientCorporation1':\n case 'ClientCorporation2':\n case 'ClientCorporation3':\n case 'ClientCorporation4':\n case 'ClientCorporation5':\n return `${item.name || ''}`.trim();\n case 'JobOrder':\n case 'JobOrder1':\n case 'JobOrder2':\n case 'JobOrder3':\n case 'JobOrder4':\n case 'JobOrder5':\n case 'Opportunity':\n return `${item.title || ''}`.trim();\n case 'Placement':\n let label: string = '';\n if (item.candidate) {\n label = `${item.candidate.firstName} ${item.candidate.lastName}`.trim();\n }\n if (item.jobOrder) {\n label = `${label} - ${item.jobOrder.title}`.trim();\n }\n return label;\n default:\n return '';\n }\n }\n\n /**\n * Define the fields to set or retrieve for the given entity. Getter and Setter methods will automagically\n * be set up on the entity once the fields are defined.\n * @param args - fields can either be sent as a list of arguments or as an Array\n * @return text\n */\n render(value: any, args: any): any {\n let type: any = null;\n let text: any = value;\n\n // Handle when we don't have meta, but passing an entity\n if (value && value._subtype && !args) {\n return this.getEntityLabel(value, value._subtype);\n }\n\n // Stop logic for nulls\n if (value === undefined || value === null || !args) {\n return text;\n }\n\n if (args.formatter && typeof args.formatter === 'function') {\n return args.formatter(value, args);\n }\n // TODO move this to a service\n // Determine TYPE because its not just 1 value that determines this.\n if (args.type === 'TO_MANY') {\n type = 'ToMany';\n } else if (args.type === 'TO_ONE') {\n type = args.associatedEntity.entity;\n } else if (args.dataSpecialization === 'DATETIME') {\n type = 'DateTime';\n } else if (args.dataSpecialization === 'YEAR') {\n type = 'Year';\n } else if (args.dataSpecialization === 'TIME') {\n type = 'Time';\n } else if (args.dataSpecialization === 'DATE' && args.dataType === 'Date') {\n type = 'Date';\n } else if (args.dataType === 'Timestamp') {\n type = 'Timestamp';\n } else if (['mobile', 'phone', 'phone1', 'phone2', 'phone3', 'workPhone'].indexOf(args.name) > -1) {\n type = 'Phone';\n } else if (args.name && args.name.substring(0, 5) === 'email') {\n type = 'Email';\n } else if ((args.name && args.name === 'address.countryID') || args.optionsType === 'Country') {\n type = 'Country';\n } else if (args.optionsType === 'SkillText') {\n type = 'SkillText';\n } else if (args.options || args.inputType === 'SELECT' || args.inputType === 'CHECKBOX') {\n type = 'Options';\n } else if (['MONEY', 'PERCENTAGE', 'HTML', 'SSN'].indexOf(args.dataSpecialization) > -1) {\n type = this.capitalize(args.dataSpecialization.toLowerCase());\n } else {\n type = args.dataType || 'default';\n }\n\n // Transform data here\n try {\n switch (type) {\n case 'Address':\n case 'Address1':\n case 'AddressWithoutCountry':\n case 'SecondaryAddress':\n case 'BillingAddress':\n const country: any = findByCountryId(Number(value.countryName));\n text = '';\n if (value.address1 || value.address2) {\n text += `${value.address1 || ''} ${value.address2 || ''}<br />\\n`;\n }\n text += `${value.city || ''} ${value.state || ''} ${value.zip || ''}${value.city || value.state || value.zip ? '<br />\\n' : ''}`;\n text += `${country ? country.name : value.countryName || ''}${country || value.countryName ? '<br />\\n' : ''}`;\n text = this.sanitizationService.bypassSecurityTrustHtml(text.trim());\n break;\n case 'DateTime':\n case 'Timestamp':\n text = this.labels.formatDateShort(value);\n break;\n case 'Date':\n text = this.labels.formatDate(new Date(value));\n break;\n case 'Year':\n text = new Date(value).getFullYear();\n break;\n case 'Time':\n text = this.labels.formatTimeWithFormat(value, { hour: 'numeric', minute: 'numeric' });\n break;\n case 'Phone':\n case 'Email':\n text = value;\n break;\n case 'Money':\n text = this.labels.formatCurrency(value);\n break;\n case 'Percentage':\n text = this.labels.formatNumber(parseFloat(value).toString(), { style: 'percent', minimumFractionDigits: 2 });\n break;\n case 'Double':\n case 'BigDecimal':\n text = this.labels.formatNumber(value, { minimumFractionDigits: this.getNumberDecimalPlaces(value) });\n break;\n case 'Integer':\n text = value;\n break;\n case 'BusinessSector':\n case 'Category':\n case 'Certification':\n case 'ClientCorporation':\n case 'CorporationDepartment':\n case 'DistributionList':\n case 'Skill':\n case 'Tearsheet':\n case 'Specialty':\n text = value.label || value.name || '';\n break;\n case 'SkillText':\n text = Array.isArray(value) ? value.join(', ') : value;\n break;\n case 'Lead':\n case 'Candidate':\n case 'ClientContact':\n case 'CorporateUser':\n case 'Person':\n text = value.label || `${value.firstName || ''} ${value.lastName || ''}`;\n break;\n case 'Opportunity':\n case 'JobOrder':\n text = value.label || value.title || '';\n break;\n case 'Placement':\n if (value.candidate) {\n text = `${value.candidate.firstName || ''} ${value.candidate.lastName || ''}`;\n }\n if (value.jobOrder) {\n text = value.candidate ? `${text} - ${value.jobOrder.title || ''}` : `${value.jobOrder.title || ''}`;\n }\n break;\n case 'JobSubmission':\n text =\n value.label ||\n `${value.jobOrder ? `${value.jobOrder.title} - ` : ''} ${value.candidate ? value.candidate.firstName : ''} ${\n value.candidate ? value.candidate.lastName : ''\n }`;\n break;\n case 'WorkersCompensationRate':\n text = `${value.compensation ? `${value.compensation.code} - ` : ''} ${value.compensation ? value.compensation.name : ''}`;\n break;\n case 'Options':\n text = this.options(value, args.options, args);\n break;\n case 'ToMany':\n if (['Candidate', 'CorporateUser', 'Person'].indexOf(args.associatedEntity.entity) > -1) {\n text = this.concat(value.data, 'firstName', 'lastName');\n if (value.data.length < value.total) {\n text = text + ', ' + this.labels.getToManyPlusMore({ quantity: value.total - value.data.length });\n }\n } else if (\n ['Category', 'BusinessSector', 'Skill', 'Specialty', 'ClientCorporation', 'CorporationDepartment'].indexOf(\n args.associatedEntity.entity,\n ) > -1\n ) {\n text = this.concat(value.data, 'name');\n if (value.data.length < value.total) {\n text = text + ', ' + this.labels.getToManyPlusMore({ quantity: value.total - value.data.length });\n }\n } else if (args.associatedEntity.entity === 'MailListPushHistoryDetail') {\n text = this.concat(value.data, 'externalListName');\n } else {\n text = `${value.total || ''}`;\n }\n break;\n case 'Country':\n const countryObj: any = findByCountryId(Number(value));\n text = countryObj ? countryObj.name : value;\n break;\n case 'Html':\n if (Array.isArray(value)) {\n value = value.join(' ');\n }\n if (typeof text === 'string') {\n text = this.sanitizationService.bypassSecurityTrustHtml(value.replace(/\\<a/gi, '<a target=\"_blank\"'));\n }\n break;\n case 'CandidateComment':\n text = value.comments ? `${this.labels.formatDateShort(value.dateLastModified)} (${value.name}) - ${value.comments}` : '';\n break;\n default:\n text = value.trim ? value.trim() : value;\n break;\n }\n return text;\n } catch (e) {\n console.error(`WARNING: There was a problem rendering the value of the field: ${args.label}. Please check the configuration`);\n console.error(e);\n return text;\n }\n }\n\n updateValue(value: any, args: any): any {\n this.value = this.render(value, args);\n this.changeDetector.markForCheck();\n }\n\n transform(value?: any, args?: any): any {\n if (value === undefined || value === null) {\n return '';\n }\n\n if (this.equals(value, this.lastValue) && this.equals(args, this.lastArgs)) {\n return this.value;\n }\n\n this.lastValue = value;\n this.lastArgs = args;\n\n this.updateValue(this.lastValue, this.lastArgs);\n\n return this.value;\n }\n\n /**\n * Simple function concat a list of fields from a list of objects\n * @param list - the list of values to use\n * @param fields - list of fields to extract\n */\n concat(list: any, ...fields: any[]): any {\n const data: any = [];\n for (const item of list) {\n const label: any = [];\n for (const field of fields) {\n label.push(`${item[field]}`);\n }\n data.push(label.join(' '));\n }\n return data.join(', ');\n }\n\n /**\n * Simple function to look up the **label** to display from options\n * @param value - the value to find\n * @param list - list of options (label/value pairs)\n */\n options(value: any, list: any, args: any): any {\n if (!Array.isArray(value)) {\n value = [value];\n }\n try {\n return value.map((item: any) => {\n for (const option of list) {\n if (option.value === item) {\n return option.label;\n }\n }\n return item;\n });\n } catch (e) {\n if (!args.optionsType) {\n throw Error(e);\n }\n return value;\n }\n }\n\n getNumberDecimalPlaces(value: any): any {\n let decimalPlaces: any;\n if (value) {\n const numberString: any = parseFloat(value).toString();\n const decimalPlace: any = (numberString || '').split('.')[1] || '';\n decimalPlaces = decimalPlace.length;\n }\n return decimalPlaces || 1;\n }\n\n /**\n * Capitalizes the first letter\n */\n capitalize(value: any): string {\n return value.charAt(0).toUpperCase() + value.slice(1);\n }\n}\n","// NG2\nimport { ChangeDetectionStrategy, Component, Input, OnInit } from '@angular/core';\nimport { Helpers } from 'novo-elements/utils';\n\n@Component({\n selector: 'novo-entity-list',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <div *ngFor=\"let entity of data.data\" class=\"entity\">\n <a *ngIf=\"entity.isLinkable\" (click)=\"openLink(entity)\">\n <i class=\"bhi-circle {{ entity.class }}\"></i>{{ entity | render: metaDisplay }}\n </a>\n <span *ngIf=\"!entity.isLinkable && entity.personSubtype\">\n <i class=\"bhi-circle {{ entity.class }}\"></i>{{ entity | render: metaDisplay }}\n </span>\n <span *ngIf=\"!entity.isLinkable && !entity.personSubtype\">\n {{ entity | render: metaDisplay }}\n </span>\n </div>\n `,\n standalone: false,\n})\nexport class EntityList implements OnInit {\n @Input()\n data: any;\n @Input()\n meta: any;\n baseEntity: string = '';\n metaDisplay: any;\n ENTITY_SHORT_NAMES: any = {\n Lead: 'lead',\n ClientContact: 'contact',\n ClientContact1: 'contact',\n ClientContact2: 'contact',\n ClientContact3: 'contact',\n ClientContact4: 'contact',\n ClientContact5: 'contact',\n ClientCorporation: 'company',\n ClientCorporation1: 'company',\n ClientCorporation2: 'company',\n ClientCorporation3: 'company',\n ClientCorporation4: 'company',\n ClientCorporation5: 'company',\n Opportunity: 'opportunity',\n Task: 'task',\n Note: 'note',\n CorporateUser: 'user',\n Candidate: 'candidate',\n JobOrder: 'job',\n JobOrder1: 'job',\n JobOrder2: 'job',\n JobOrder3: 'job',\n JobOrder4: 'job',\n JobOrder5: 'job',\n Placement: 'placement',\n JobSubmission: 'submission',\n CandidateReference: 'references',\n DistributionList: 'distributionList',\n Appointment: 'appointment',\n };\n\n constructor() {}\n\n ngOnInit(): any {\n // use a local copy of the meta to set the type to TO_ONE for proper display\n // without changing the input object\n this.metaDisplay = Helpers.deepClone(this.meta);\n this.metaDisplay.type = 'TO_ONE';\n this.baseEntity = this.meta.associatedEntity.entity;\n for (const entity of this.data.data) {\n entity.isLinkable = this.isLinkable(entity);\n entity.class = this.getClass(entity);\n }\n }\n\n getClass(entity: any): any {\n return this.ENTITY_SHORT_NAMES[entity.personSubtype];\n }\n\n openLink(entity: any): void {\n entity.openLink(entity);\n }\n\n isLinkable(entity: any): boolean {\n return entity.openLink;\n }\n}\n","// NG2\nimport { Component, HostBinding, Input, OnChanges, OnInit, SimpleChanges } from '@angular/core';\nimport { BooleanInput, Helpers } from 'novo-elements/utils';\n// APP\nexport enum NOVO_VALUE_TYPE {\n DEFAULT,\n ENTITY_LIST,\n LINK,\n INTERNAL_LINK,\n}\nexport enum NOVO_VALUE_THEME {\n DEFAULT,\n MOBILE,\n}\n\n@Component({\n selector: 'novo-value',\n template: `\n <div class=\"value-outer\" [ngClass]=\"customClass\">\n <novo-label>{{ meta.label }}</novo-label>\n <span class=\"value\">\n <i *ngIf=\"meta.showEntityIcon\" class=\"bhi-circle {{ meta.entityIconClass }}\"></i>\n <novo-icon *ngIf=\"meta?.icon\">{{ meta.icon }}</novo-icon>\n <ng-container [ngSwitch]=\"_type\">\n <a *ngSwitchCase=\"NOVO_VALUE_TYPE.INTERNAL_LINK\" (click)=\"openLink()\" [innerHTML]=\"data | render: meta\"></a>\n <a *ngSwitchCase=\"NOVO_VALUE_TYPE.LINK\" class=\"value\" [href]=\"url\" target=\"_blank\" [innerHTML]=\"data | render: meta\"></a>\n <novo-entity-list *ngSwitchCase=\"NOVO_VALUE_TYPE.ENTITY_LIST\" [data]=\"data\" [meta]=\"meta\"></novo-entity-list>\n <novo-text *ngSwitchDefault [innerHTML]=\"data | render: meta\"></novo-text>\n </ng-container>\n </span>\n </div>\n <div class=\"actions\" *ngIf=\"showIcon\">\n <i *ngFor=\"let icon of meta.icons\" [class]=\"iconClass(icon)\" (click)=\"onValueClick(icon)\"></i>\n </div>\n `,\n styleUrls: ['./Value.scss'],\n standalone: false,\n})\nexport class NovoValueElement implements OnInit, OnChanges {\n @Input()\n data: any; // TODO use interface\n @Input()\n meta: any = { type: 'SCALAR', label: '' }; // TODO use interface\n @Input()\n theme: NOVO_VALUE_THEME = NOVO_VALUE_THEME.DEFAULT;\n\n @HostBinding('class.horizontal')\n @Input()\n @BooleanInput()\n row: Boolean = false;\n\n _type: NOVO_VALUE_TYPE;\n NOVO_VALUE_TYPE = NOVO_VALUE_TYPE;\n NOVO_VALUE_THEME = NOVO_VALUE_THEME;\n url: string;\n customClass: string = '';\n\n @Input()\n set label(lbl: string) {\n this.meta.label = lbl;\n }\n get label(): string {\n return this.meta.label;\n }\n\n @Input()\n set type(typ: string) {\n this.meta.type = typ;\n }\n get type(): string {\n return this.meta.type;\n }\n\n @Input()\n set icon(value: string) {\n this.meta.icon = value;\n }\n get icon(): string {\n return this.meta.icon;\n }\n\n ngOnInit() {\n if (Helpers.isEmpty(this.meta)) {\n this.meta = {\n label: '',\n };\n }\n }\n\n @HostBinding('class.mobile')\n public get isMobile(): boolean {\n return this.theme === NOVO_VALUE_THEME.MOBILE;\n }\n\n iconClass(icon): string {\n let iconClass = '';\n if (icon && icon.iconCls) {\n iconClass = `bhi-${icon.iconCls} actions`;\n if (icon.onIconClick) {\n iconClass = `${iconClass} clickable`;\n }\n return iconClass;\n }\n return iconClass;\n }\n\n public get isDefault(): boolean {\n return true;\n }\n\n public get showLabel(): boolean {\n return (\n this._type === NOVO_VALUE_TYPE.INTERNAL_LINK || this._type === NOVO_VALUE_TYPE.LINK || this._type === NOVO_VALUE_TYPE.ENTITY_LIST\n );\n }\n\n public get showIcon(): boolean {\n return this.meta && this.meta.icons && this.meta.icons.length && !Helpers.isEmpty(this.data);\n }\n\n onValueClick(icon): void {\n if (icon.onIconClick && typeof icon.onIconClick === 'function') {\n icon.onIconClick(this.data, this.meta);\n }\n }\n\n openLink(): void {\n if (this.meta && this.meta.openLink && typeof this.meta.openLink === 'function') {\n this.meta.openLink(this.data, this.meta);\n }\n }\n\n ngOnChanges(changes?: SimpleChanges): any {\n if (this.meta && this.isLinkField(this.meta, this.data)) {\n this._type = NOVO_VALUE_TYPE.LINK;\n // Make sure the value has a protocol, otherwise the URL will be relative\n const hasProtocol: any = new RegExp('^(http|https)://', 'i');\n if (!hasProtocol.test(this.data)) {\n this.url = `http://${this.data}`;\n } else {\n this.url = this.data;\n }\n } else if (this.isEntityList(this.meta.type)) {\n this._type = NOVO_VALUE_TYPE.ENTITY_LIST;\n } else if (this.isHTMLField(this.meta)) {\n this.customClass = this.meta.customClass ? this.meta.customClass : '';\n if (this.meta.stripHTML && this.data && this.data.replace) {\n this.data = this.data.replace(/<(?!style|\\/style).+?>/gi, '').trim();\n }\n } else if (this.meta && this.meta.associatedEntity) {\n switch (this.meta.associatedEntity.entity) {\n case 'ClientCorporation':\n case 'ClientContact':\n case 'Candidate':\n case 'Opportunity':\n case 'JobOrder':\n case 'Placement':\n case 'Lead':\n this._type = NOVO_VALUE_TYPE.INTERNAL_LINK;\n break;\n default:\n break;\n }\n }\n }\n\n isLinkField(field: { name?: string; type?: NOVO_VALUE_TYPE }, data: any): boolean {\n const linkFields: any = ['companyURL', 'clientCorporationCompanyURL'];\n const regex: any = new RegExp('^(https?://(?:www.|(?!www))[^s.]+.[^s]{2,}|www.[^s]+.[^s]{2,})$', 'gi');\n const isURL: any = Helpers.isString(data) && regex.exec(data.trim());\n return linkFields.indexOf(field.name) > -1 || !!isURL || field.type === NOVO_VALUE_TYPE.LINK;\n }\n\n isEntityList(type: string): boolean {\n return type === 'TO_MANY';\n }\n\n isHTMLField(meta: any): boolean {\n return meta.dataSpecialization === 'HTML' || meta.inputType === 'TEXTAREA';\n }\n}\n","// NG2\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { NovoCommonModule } from 'novo-elements/elements/common';\nimport { NovoIconModule } from 'novo-elements/elements/icon';\nimport { EntityList } from './EntityList';\nimport { RenderPipe } from './Render';\nimport { NovoValueElement } from './Value';\n\n@NgModule({\n imports: [CommonModule, NovoCommonModule, NovoIconModule],\n declarations: [NovoValueElement, RenderPipe, EntityList],\n exports: [NovoValueElement, RenderPipe, EntityList],\n})\nexport class NovoValueModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.RenderPipe","i2","i4.EntityList","i5.RenderPipe"],"mappings":";;;;;;;;;;;;AAAA;AAOA;;;;;;;;;;;;;;;;;;;;;;;;;AAyBG;MAOU,UAAU,CAAA;AAKrB,IAAA,WAAA,CAAoB,cAAiC,EAAU,mBAAiC,EAAU,MAAwB,EAAA;QAA9G,IAAc,CAAA,cAAA,GAAd,cAAc;QAA6B,IAAmB,CAAA,mBAAA,GAAnB,mBAAmB;QAAwB,IAAM,CAAA,MAAA,GAAN,MAAM;;IAEhH,MAAM,CAAC,SAAc,EAAE,SAAc,EAAA;AACnC,QAAA,IAAI,SAAS,KAAK,SAAS,EAAE;AAC3B,YAAA,OAAO,IAAI;;QAEb,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,IAAI,EAAE;AAC5C,YAAA,OAAO,KAAK;;QAEd,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,EAAE;AACtD,YAAA,OAAO,IAAI;;AAEb,QAAA,MAAM,EAAE,GAAQ,OAAO,SAAS;AAChC,QAAA,MAAM,EAAE,GAAQ,OAAO,SAAS;AAChC,QAAA,IAAI,MAAc;AAClB,QAAA,IAAI,GAAQ;AACZ,QAAA,IAAI,MAAW;QACf,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,QAAQ,EAAE;AAChC,YAAA,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;gBAC5B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;AAC7B,oBAAA,OAAO,KAAK;;AAEd,gBAAA,MAAM,GAAG,SAAS,CAAC,MAAM;AACzB,gBAAA,IAAI,MAAM,KAAK,SAAS,CAAC,MAAM,EAAE;oBAC/B,KAAK,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,MAAM,EAAE,GAAG,EAAE,EAAE;AACjC,wBAAA,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE;AAChD,4BAAA,OAAO,KAAK;;;AAGhB,oBAAA,OAAO,IAAI;;;iBAER;AACL,gBAAA,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;AAC5B,oBAAA,OAAO,KAAK;;AAEd,gBAAA,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;AAC5B,gBAAA,KAAK,GAAG,IAAI,SAAS,EAAE;AACrB,oBAAA,IAAI,SAAS,CAAC,GAAG,CAAC,EAAE;AAClB,wBAAA,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE;AAChD,4BAAA,OAAO,KAAK;;AAEd,wBAAA,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI;;;AAGtB,gBAAA,KAAK,GAAG,IAAI,SAAS,EAAE;AACrB,oBAAA,IAAI,EAAE,GAAG,IAAI,MAAM,CAAC,IAAI,OAAO,SAAS,CAAC,GAAG,CAAC,KAAK,WAAW,EAAE;AAC7D,wBAAA,OAAO,KAAK;;;AAGhB,gBAAA,OAAO,IAAI;;;AAGf,QAAA,OAAO,KAAK;;IAGd,cAAc,CAAC,IAAS,EAAE,MAAc,EAAA;QACtC,QAAQ,MAAM;AACZ,YAAA,KAAK,eAAe;AACpB,YAAA,KAAK,eAAe;AACpB,YAAA,KAAK,gBAAgB;AACrB,YAAA,KAAK,gBAAgB;AACrB,YAAA,KAAK,gBAAgB;AACrB,YAAA,KAAK,gBAAgB;AACrB,YAAA,KAAK,gBAAgB;AACrB,YAAA,KAAK,MAAM;AACX,YAAA,KAAK,WAAW;AAChB,YAAA,KAAK,QAAQ;AACX,gBAAA,OAAO,GAAG,IAAI,CAAC,SAAS,IAAI,EAAE,CAAI,CAAA,EAAA,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAA,CAAE,CAAC,IAAI,EAAE;AAChE,YAAA,KAAK,mBAAmB;AACxB,YAAA,KAAK,oBAAoB;AACzB,YAAA,KAAK,oBAAoB;AACzB,YAAA,KAAK,oBAAoB;AACzB,YAAA,KAAK,oBAAoB;AACzB,YAAA,KAAK,oBAAoB;gBACvB,OAAO,CAAA,EAAG,IAAI,CAAC,IAAI,IAAI,EAAE,CAAE,CAAA,CAAC,IAAI,EAAE;AACpC,YAAA,KAAK,UAAU;AACf,YAAA,KAAK,WAAW;AAChB,YAAA,KAAK,WAAW;AAChB,YAAA,KAAK,WAAW;AAChB,YAAA,KAAK,WAAW;AAChB,YAAA,KAAK,WAAW;AAChB,YAAA,KAAK,aAAa;gBAChB,OAAO,CAAA,EAAG,IAAI,CAAC,KAAK,IAAI,EAAE,CAAE,CAAA,CAAC,IAAI,EAAE;AACrC,YAAA,KAAK,WAAW;gBACd,IAAI,KAAK,GAAW,EAAE;AACtB,gBAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AAClB,oBAAA,KAAK,GAAG,CAAG,EAAA,IAAI,CAAC,SAAS,CAAC,SAAS,CAAA,CAAA,EAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE;;AAEzE,gBAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,oBAAA,KAAK,GAAG,CAAA,EAAG,KAAK,CAAA,GAAA,EAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAA,CAAE,CAAC,IAAI,EAAE;;AAEpD,gBAAA,OAAO,KAAK;AACd,YAAA;AACE,gBAAA,OAAO,EAAE;;;AAIf;;;;;AAKG;IACH,MAAM,CAAC,KAAU,EAAE,IAAS,EAAA;QAC1B,IAAI,IAAI,GAAQ,IAAI;QACpB,IAAI,IAAI,GAAQ,KAAK;;QAGrB,IAAI,KAAK,IAAI,KAAK,CAAC,QAAQ,IAAI,CAAC,IAAI,EAAE;YACpC,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC;;;QAInD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI,EAAE;AAClD,YAAA,OAAO,IAAI;;QAGb,IAAI,IAAI,CAAC,SAAS,IAAI,OAAO,IAAI,CAAC,SAAS,KAAK,UAAU,EAAE;YAC1D,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC;;;;AAIpC,QAAA,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE;YAC3B,IAAI,GAAG,QAAQ;;AACV,aAAA,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE;AACjC,YAAA,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM;;AAC9B,aAAA,IAAI,IAAI,CAAC,kBAAkB,KAAK,UAAU,EAAE;YACjD,IAAI,GAAG,UAAU;;AACZ,aAAA,IAAI,IAAI,CAAC,kBAAkB,KAAK,MAAM,EAAE;YAC7C,IAAI,GAAG,MAAM;;AACR,aAAA,IAAI,IAAI,CAAC,kBAAkB,KAAK,MAAM,EAAE;YAC7C,IAAI,GAAG,MAAM;;AACR,aAAA,IAAI,IAAI,CAAC,kBAAkB,KAAK,MAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM,EAAE;YACzE,IAAI,GAAG,MAAM;;AACR,aAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,WAAW,EAAE;YACxC,IAAI,GAAG,WAAW;;aACb,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE;YACjG,IAAI,GAAG,OAAO;;AACT,aAAA,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,OAAO,EAAE;YAC7D,IAAI,GAAG,OAAO;;AACT,aAAA,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,mBAAmB,KAAK,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE;YAC7F,IAAI,GAAG,SAAS;;AACX,aAAA,IAAI,IAAI,CAAC,WAAW,KAAK,WAAW,EAAE;YAC3C,IAAI,GAAG,WAAW;;AACb,aAAA,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,KAAK,QAAQ,IAAI,IAAI,CAAC,SAAS,KAAK,UAAU,EAAE;YACvF,IAAI,GAAG,SAAS;;aACX,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,EAAE;AACvF,YAAA,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE,CAAC;;aACxD;AACL,YAAA,IAAI,GAAG,IAAI,CAAC,QAAQ,IAAI,SAAS;;;AAInC,QAAA,IAAI;YACF,QAAQ,IAAI;AACV,gBAAA,KAAK,SAAS;AACd,gBAAA,KAAK,UAAU;AACf,gBAAA,KAAK,uBAAuB;AAC5B,gBAAA,KAAK,kBAAkB;AACvB,gBAAA,KAAK,gBAAgB;oBACnB,MAAM,OAAO,GAAQ,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;oBAC/D,IAAI,GAAG,EAAE;oBACT,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,EAAE;AACpC,wBAAA,IAAI,IAAI,CAAA,EAAG,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAI,CAAA,EAAA,KAAK,CAAC,QAAQ,IAAI,EAAE,UAAU;;AAEnE,oBAAA,IAAI,IAAI,CAAG,EAAA,KAAK,CAAC,IAAI,IAAI,EAAE,CAAI,CAAA,EAAA,KAAK,CAAC,KAAK,IAAI,EAAE,CAAA,CAAA,EAAI,KAAK,CAAC,GAAG,IAAI,EAAE,CAAA,EAAG,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG,GAAG,UAAU,GAAG,EAAE,EAAE;AAChI,oBAAA,IAAI,IAAI,CAAA,EAAG,OAAO,GAAG,OAAO,CAAC,IAAI,GAAG,KAAK,CAAC,WAAW,IAAI,EAAE,CAAA,EAAG,OAAO,IAAI,KAAK,CAAC,WAAW,GAAG,UAAU,GAAG,EAAE,EAAE;AAC9G,oBAAA,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;oBACpE;AACF,gBAAA,KAAK,UAAU;AACf,gBAAA,KAAK,WAAW;oBACd,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC;oBACzC;AACF,gBAAA,KAAK,MAAM;AACT,oBAAA,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC9C;AACF,gBAAA,KAAK,MAAM;oBACT,IAAI,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE;oBACpC;AACF,gBAAA,KAAK,MAAM;AACT,oBAAA,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;oBACtF;AACF,gBAAA,KAAK,OAAO;AACZ,gBAAA,KAAK,OAAO;oBACV,IAAI,GAAG,KAAK;oBACZ;AACF,gBAAA,KAAK,OAAO;oBACV,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC;oBACxC;AACF,gBAAA,KAAK,YAAY;oBACf,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,qBAAqB,EAAE,CAAC,EAAE,CAAC;oBAC7G;AACF,gBAAA,KAAK,QAAQ;AACb,gBAAA,KAAK,YAAY;oBACf,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,qBAAqB,EAAE,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC;oBACrG;AACF,gBAAA,KAAK,SAAS;oBACZ,IAAI,GAAG,KAAK;oBACZ;AACF,gBAAA,KAAK,gBAAgB;AACrB,gBAAA,KAAK,UAAU;AACf,gBAAA,KAAK,eAAe;AACpB,gBAAA,KAAK,mBAAmB;AACxB,gBAAA,KAAK,uBAAuB;AAC5B,gBAAA,KAAK,kBAAkB;AACvB,gBAAA,KAAK,OAAO;AACZ,gBAAA,KAAK,WAAW;AAChB,gBAAA,KAAK,WAAW;oBACd,IAAI,GAAG,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,IAAI,EAAE;oBACtC;AACF,gBAAA,KAAK,WAAW;oBACd,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK;oBACtD;AACF,gBAAA,KAAK,MAAM;AACX,gBAAA,KAAK,WAAW;AAChB,gBAAA,KAAK,eAAe;AACpB,gBAAA,KAAK,eAAe;AACpB,gBAAA,KAAK,QAAQ;AACX,oBAAA,IAAI,GAAG,KAAK,CAAC,KAAK,IAAI,CAAA,EAAG,KAAK,CAAC,SAAS,IAAI,EAAE,IAAI,KAAK,CAAC,QAAQ,IAAI,EAAE,EAAE;oBACxE;AACF,gBAAA,KAAK,aAAa;AAClB,gBAAA,KAAK,UAAU;oBACb,IAAI,GAAG,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,IAAI,EAAE;oBACvC;AACF,gBAAA,KAAK,WAAW;AACd,oBAAA,IAAI,KAAK,CAAC,SAAS,EAAE;AACnB,wBAAA,IAAI,GAAG,CAAG,EAAA,KAAK,CAAC,SAAS,CAAC,SAAS,IAAI,EAAE,CAAI,CAAA,EAAA,KAAK,CAAC,SAAS,CAAC,QAAQ,IAAI,EAAE,EAAE;;AAE/E,oBAAA,IAAI,KAAK,CAAC,QAAQ,EAAE;AAClB,wBAAA,IAAI,GAAG,KAAK,CAAC,SAAS,GAAG,CAAA,EAAG,IAAI,CAAA,GAAA,EAAM,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAE,CAAA,GAAG,CAAG,EAAA,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE,EAAE;;oBAEtG;AACF,gBAAA,KAAK,eAAe;oBAClB,IAAI;AACF,wBAAA,KAAK,CAAC,KAAK;4BACX,CAAG,EAAA,KAAK,CAAC,QAAQ,GAAG,CAAA,EAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAK,GAAA,CAAA,GAAG,EAAE,CAAA,CAAA,EAAI,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,SAAS,GAAG,EAAE,CAAA,CAAA,EACvG,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,QAAQ,GAAG,EAC/C,CAAA,CAAE;oBACJ;AACF,gBAAA,KAAK,yBAAyB;AAC5B,oBAAA,IAAI,GAAG,CAAG,EAAA,KAAK,CAAC,YAAY,GAAG,CAAG,EAAA,KAAK,CAAC,YAAY,CAAC,IAAI,CAAA,GAAA,CAAK,GAAG,EAAE,CAAA,CAAA,EAAI,KAAK,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC,IAAI,GAAG,EAAE,EAAE;oBAC1H;AACF,gBAAA,KAAK,SAAS;AACZ,oBAAA,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC;oBAC9C;AACF,gBAAA,KAAK,QAAQ;oBACX,IAAI,CAAC,WAAW,EAAE,eAAe,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE;AACvF,wBAAA,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,UAAU,CAAC;wBACvD,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,EAAE;4BACnC,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;;;yBAE9F,IACL,CAAC,UAAU,EAAE,gBAAgB,EAAE,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,uBAAuB,CAAC,CAAC,OAAO,CACxG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAC7B,GAAG,CAAC,CAAC,EACN;wBACA,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC;wBACtC,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,EAAE;4BACnC,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;;;yBAE9F,IAAI,IAAI,CAAC,gBAAgB,CAAC,MAAM,KAAK,2BAA2B,EAAE;wBACvE,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,kBAAkB,CAAC;;yBAC7C;wBACL,IAAI,GAAG,GAAG,KAAK,CAAC,KAAK,IAAI,EAAE,EAAE;;oBAE/B;AACF,gBAAA,KAAK,SAAS;oBACZ,MAAM,UAAU,GAAQ,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACtD,oBAAA,IAAI,GAAG,UAAU,GAAG,UAAU,CAAC,IAAI,GAAG,KAAK;oBAC3C;AACF,gBAAA,KAAK,MAAM;AACT,oBAAA,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AACxB,wBAAA,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC;;AAEzB,oBAAA,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;AAC5B,wBAAA,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,uBAAuB,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;;oBAEvG;AACF,gBAAA,KAAK,kBAAkB;AACrB,oBAAA,IAAI,GAAG,KAAK,CAAC,QAAQ,GAAG,CAAA,EAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAA,EAAA,EAAK,KAAK,CAAC,IAAI,CAAO,IAAA,EAAA,KAAK,CAAC,QAAQ,CAAE,CAAA,GAAG,EAAE;oBACzH;AACF,gBAAA;AACE,oBAAA,IAAI,GAAG,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,EAAE,GAAG,KAAK;oBACxC;;AAEJ,YAAA,OAAO,IAAI;;QACX,OAAO,CAAC,EAAE;YACV,OAAO,CAAC,KAAK,CAAC,CAAA,+DAAA,EAAkE,IAAI,CAAC,KAAK,CAAkC,gCAAA,CAAA,CAAC;AAC7H,YAAA,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;AAChB,YAAA,OAAO,IAAI;;;IAIf,WAAW,CAAC,KAAU,EAAE,IAAS,EAAA;QAC/B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC;AACrC,QAAA,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE;;IAGpC,SAAS,CAAC,KAAW,EAAE,IAAU,EAAA;QAC/B,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE;AACzC,YAAA,OAAO,EAAE;;QAGX,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE;YAC1E,OAAO,IAAI,CAAC,KAAK;;AAGnB,QAAA,IAAI,CAAC,SAAS,GAAG,KAAK;AACtB,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI;QAEpB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC;QAE/C,OAAO,IAAI,CAAC,KAAK;;AAGnB;;;;AAIG;AACH,IAAA,MAAM,CAAC,IAAS,EAAE,GAAG,MAAa,EAAA;QAChC,MAAM,IAAI,GAAQ,EAAE;AACpB,QAAA,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE;YACvB,MAAM,KAAK,GAAQ,EAAE;AACrB,YAAA,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;gBAC1B,KAAK,CAAC,IAAI,CAAC,CAAG,EAAA,IAAI,CAAC,KAAK,CAAC,CAAE,CAAA,CAAC;;YAE9B,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;;AAE5B,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;;AAGxB;;;;AAIG;AACH,IAAA,OAAO,CAAC,KAAU,EAAE,IAAS,EAAE,IAAS,EAAA;QACtC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AACzB,YAAA,KAAK,GAAG,CAAC,KAAK,CAAC;;AAEjB,QAAA,IAAI;AACF,YAAA,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAS,KAAI;AAC7B,gBAAA,KAAK,MAAM,MAAM,IAAI,IAAI,EAAE;AACzB,oBAAA,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI,EAAE;wBACzB,OAAO,MAAM,CAAC,KAAK;;;AAGvB,gBAAA,OAAO,IAAI;AACb,aAAC,CAAC;;QACF,OAAO,CAAC,EAAE;AACV,YAAA,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;AACrB,gBAAA,MAAM,KAAK,CAAC,CAAC,CAAC;;AAEhB,YAAA,OAAO,KAAK;;;AAIhB,IAAA,sBAAsB,CAAC,KAAU,EAAA;AAC/B,QAAA,IAAI,aAAkB;QACtB,IAAI,KAAK,EAAE;YACT,MAAM,YAAY,GAAQ,UAAU,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE;AACtD,YAAA,MAAM,YAAY,GAAQ,CAAC,YAAY,IAAI,EAAE,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;AAClE,YAAA,aAAa,GAAG,YAAY,CAAC,MAAM;;QAErC,OAAO,aAAa,IAAI,CAAC;;AAG3B;;AAEG;AACH,IAAA,UAAU,CAAC,KAAU,EAAA;AACnB,QAAA,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;;+GAzX5C,UAAU,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,YAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA;6GAAV,UAAU,EAAA,YAAA,EAAA,KAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,CAAA,CAAA;mHAAV,UAAU,EAAA,CAAA,CAAA;;4FAAV,UAAU,EAAA,UAAA,EAAA,CAAA;kBANtB,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACF,oBAAA,IAAI,EAAE,QAAQ;AACd,oBAAA,IAAI,EAAE,KAAK;AACX,oBAAA,UAAU,EAAE,KAAK;AACpB,iBAAA;;kBACA;;;ACtCD;MAsBa,UAAU,CAAA;AAuCrB,IAAA,WAAA,GAAA;QAlCA,IAAU,CAAA,UAAA,GAAW,EAAE;AAEvB,QAAA,IAAA,CAAA,kBAAkB,GAAQ;AACxB,YAAA,IAAI,EAAE,MAAM;AACZ,YAAA,aAAa,EAAE,SAAS;AACxB,YAAA,cAAc,EAAE,SAAS;AACzB,YAAA,cAAc,EAAE,SAAS;AACzB,YAAA,cAAc,EAAE,SAAS;AACzB,YAAA,cAAc,EAAE,SAAS;AACzB,YAAA,cAAc,EAAE,SAAS;AACzB,YAAA,iBAAiB,EAAE,SAAS;AAC5B,YAAA,kBAAkB,EAAE,SAAS;AAC7B,YAAA,kBAAkB,EAAE,SAAS;AAC7B,YAAA,kBAAkB,EAAE,SAAS;AAC7B,YAAA,kBAAkB,EAAE,SAAS;AAC7B,YAAA,kBAAkB,EAAE,SAAS;AAC7B,YAAA,WAAW,EAAE,aAAa;AAC1B,YAAA,IAAI,EAAE,MAAM;AACZ,YAAA,IAAI,EAAE,MAAM;AACZ,YAAA,aAAa,EAAE,MAAM;AACrB,YAAA,SAAS,EAAE,WAAW;AACtB,YAAA,QAAQ,EAAE,KAAK;AACf,YAAA,SAAS,EAAE,KAAK;AAChB,YAAA,SAAS,EAAE,KAAK;AAChB,YAAA,SAAS,EAAE,KAAK;AAChB,YAAA,SAAS,EAAE,KAAK;AAChB,YAAA,SAAS,EAAE,KAAK;AAChB,YAAA,SAAS,EAAE,WAAW;AACtB,YAAA,aAAa,EAAE,YAAY;AAC3B,YAAA,kBAAkB,EAAE,YAAY;AAChC,YAAA,gBAAgB,EAAE,kBAAkB;AACpC,YAAA,WAAW,EAAE,aAAa;SAC3B;;IAID,QAAQ,GAAA;;;QAGN,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;AAC/C,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,GAAG,QAAQ;QAChC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM;QACnD,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACnC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;YAC3C,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;;;AAIxC,IAAA,QAAQ,CAAC,MAAW,EAAA;QAClB,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,aAAa,CAAC;;AAGtD,IAAA,QAAQ,CAAC,MAAW,EAAA;AAClB,QAAA,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;;AAGzB,IAAA,UAAU,CAAC,MAAW,EAAA;QACpB,OAAO,MAAM,CAAC,QAAQ;;+GA9Db,UAAU,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAV,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,UAAU,EAfT,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA;;;;;;;;;;;;AAYX,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAC,UAAA,EAAA,IAAA,EAAA,QAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FAGU,UAAU,EAAA,UAAA,EAAA,CAAA;kBAlBtB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,kBAAkB;oBAC5B,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE;;;;;;;;;;;;AAYX,EAAA,CAAA;AACC,oBAAA,UAAU,EAAE,KAAK;AACpB,iBAAA;wDAGC,IAAI,EAAA,CAAA;sBADH;gBAGD,IAAI,EAAA,CAAA;sBADH;;;;;;;;;;;;ACtBH;IACY;AAAZ,CAAA,UAAY,eAAe,EAAA;AACzB,IAAA,eAAA,CAAA,eAAA,CAAA,SAAA,CAAA,GAAA,CAAA,CAAA,GAAA,SAAO;AACP,IAAA,eAAA,CAAA,eAAA,CAAA,aAAA,CAAA,GAAA,CAAA,CAAA,GAAA,aAAW;AACX,IAAA,eAAA,CAAA,eAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA,GAAA,MAAI;AACJ,IAAA,eAAA,CAAA,eAAA,CAAA,eAAA,CAAA,GAAA,CAAA,CAAA,GAAA,eAAa;AACf,CAAC,EALW,eAAe,KAAf,eAAe,GAK1B,EAAA,CAAA,CAAA;IACW;AAAZ,CAAA,UAAY,gBAAgB,EAAA;AAC1B,IAAA,gBAAA,CAAA,gBAAA,CAAA,SAAA,CAAA,GAAA,CAAA,CAAA,GAAA,SAAO;AACP,IAAA,gBAAA,CAAA,gBAAA,CAAA,QAAA,CAAA,GAAA,CAAA,CAAA,GAAA,QAAM;AACR,CAAC,EAHW,gBAAgB,KAAhB,gBAAgB,GAG3B,EAAA,CAAA,CAAA;MAyBY,gBAAgB,CAAA;AAvB7B,IAAA,WAAA,GAAA;AA2BE,QAAA,IAAA,CAAA,IAAI,GAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;AAE1C,QAAA,IAAA,CAAA,KAAK,GAAqB,gBAAgB,CAAC,OAAO;QAKlD,IAAG,CAAA,GAAA,GAAY,KAAK;QAGpB,IAAe,CAAA,eAAA,GAAG,eAAe;QACjC,IAAgB,CAAA,gBAAA,GAAG,gBAAgB;QAEnC,IAAW,CAAA,WAAA,GAAW,EAAE;AA6HzB;IA3HC,IACI,KAAK,CAAC,GAAW,EAAA;AACnB,QAAA,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,GAAG;;AAEvB,IAAA,IAAI,KAAK,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK;;IAGxB,IACI,IAAI,CAAC,GAAW,EAAA;AAClB,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,GAAG;;AAEtB,IAAA,IAAI,IAAI,GAAA;AACN,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI;;IAGvB,IACI,IAAI,CAAC,KAAa,EAAA;AACpB,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,KAAK;;AAExB,IAAA,IAAI,IAAI,GAAA;AACN,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI;;IAGvB,QAAQ,GAAA;QACN,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC9B,IAAI,CAAC,IAAI,GAAG;AACV,gBAAA,KAAK,EAAE,EAAE;aACV;;;AAIL,IAAA,IACW,QAAQ,GAAA;AACjB,QAAA,OAAO,IAAI,CAAC,KAAK,KAAK,gBAAgB,CAAC,MAAM;;AAG/C,IAAA,SAAS,CAAC,IAAI,EAAA;QACZ,IAAI,SAAS,GAAG,EAAE;AAClB,QAAA,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE;AACxB,YAAA,SAAS,GAAG,CAAO,IAAA,EAAA,IAAI,CAAC,OAAO,UAAU;AACzC,YAAA,IAAI,IAAI,CAAC,WAAW,EAAE;AACpB,gBAAA,SAAS,GAAG,CAAA,EAAG,SAAS,CAAA,UAAA,CAAY;;AAEtC,YAAA,OAAO,SAAS;;AAElB,QAAA,OAAO,SAAS;;AAGlB,IAAA,IAAW,SAAS,GAAA;AAClB,QAAA,OAAO,IAAI;;AAGb,IAAA,IAAW,SAAS,GAAA;QAClB,QACE,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,aAAa,IAAI,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,WAAW;;AAIrI,IAAA,IAAW,QAAQ,GAAA;QACjB,OAAO,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;;AAG9F,IAAA,YAAY,CAAC,IAAI,EAAA;QACf,IAAI,IAAI,CAAC,WAAW,IAAI,OAAO,IAAI,CAAC,WAAW,KAAK,UAAU,EAAE;YAC9D,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;;;IAI1C,QAAQ,GAAA;AACN,QAAA,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,KAAK,UAAU,EAAE;AAC/E,YAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;;;AAI5C,IAAA,WAAW,CAAC,OAAuB,EAAA;AACjC,QAAA,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;AACvD,YAAA,IAAI,CAAC,KAAK,GAAG,eAAe,CAAC,IAAI;;YAEjC,MAAM,WAAW,GAAQ,IAAI,MAAM,CAAC,kBAAkB,EAAE,GAAG,CAAC;YAC5D,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBAChC,IAAI,CAAC,GAAG,GAAG,CAAA,OAAA,EAAU,IAAI,CAAC,IAAI,EAAE;;iBAC3B;AACL,gBAAA,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI;;;aAEjB,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;AAC5C,YAAA,IAAI,CAAC,KAAK,GAAG,eAAe,CAAC,WAAW;;aACnC,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACtC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,GAAG,EAAE;AACrE,YAAA,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;AACzD,gBAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,0BAA0B,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;;;aAEjE,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;YAClD,QAAQ,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM;AACvC,gBAAA,KAAK,mBAAmB;AACxB,gBAAA,KAAK,eAAe;AACpB,gBAAA,KAAK,WAAW;AAChB,gBAAA,KAAK,aAAa;AAClB,gBAAA,KAAK,UAAU;AACf,gBAAA,KAAK,WAAW;AAChB,gBAAA,KAAK,MAAM;AACT,oBAAA,IAAI,CAAC,KAAK,GAAG,eAAe,CAAC,aAAa;oBAC1C;AACF,gBAAA;oBACE;;;;IAKR,WAAW,CAAC,KAAgD,EAAE,IAAS,EAAA;AACrE,QAAA,MAAM,UAAU,GAAQ,CAAC,YAAY,EAAE,6BAA6B,CAAC;QACrE,MAAM,KAAK,GAAQ,IAAI,MAAM,CAAC,iEAAiE,EAAE,IAAI,CAAC;AACtG,QAAA,MAAM,KAAK,GAAQ,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACpE,OAAO,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,eAAe,CAAC,IAAI;;AAG9F,IAAA,YAAY,CAAC,IAAY,EAAA;QACvB,OAAO,IAAI,KAAK,SAAS;;AAG3B,IAAA,WAAW,CAAC,IAAS,EAAA;QACnB,OAAO,IAAI,CAAC,kBAAkB,KAAK,MAAM,IAAI,IAAI,CAAC,SAAS,KAAK,UAAU;;+GA5IjE,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,gBAAgB,EArBf,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,GAAA,EAAA,KAAA,EAAA,KAAA,EAAA,OAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,kBAAA,EAAA,UAAA,EAAA,cAAA,EAAA,eAAA,EAAA,EAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA;;;;;;;;;;;;;;;;;AAiBX,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,27FAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAD,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,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,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,eAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAE,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,SAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,CAAA,IAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,OAAA,EAAA,OAAA,EAAA,OAAA,EAAA,MAAA,EAAA,SAAA,EAAA,QAAA,EAAA,KAAA,EAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,UAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAC,UAAA,EAAA,IAAA,EAAA,QAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;AAeD,UAAA,CAAA;AADC,IAAA,YAAY,EAAE;8BACV,OAAO;AAAS,CAAA,EAAA,gBAAA,CAAA,SAAA,EAAA,KAAA,EAAA,KAAA,CAAA,CAAA;4FAXV,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAvB5B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,YAAY,EACZ,QAAA,EAAA;;;;;;;;;;;;;;;;;AAiBX,EAAA,CAAA,EAAA,UAAA,EAEa,KAAK,EAAA,MAAA,EAAA,CAAA,27FAAA,CAAA,EAAA;8BAInB,IAAI,EAAA,CAAA;sBADH;gBAGD,IAAI,EAAA,CAAA;sBADH;gBAGD,KAAK,EAAA,CAAA;sBADJ;gBAMD,GAAG,EAAA,CAAA;sBAHF,WAAW;uBAAC,kBAAkB;;sBAC9B;gBAWG,KAAK,EAAA,CAAA;sBADR;gBASG,IAAI,EAAA,CAAA;sBADP;gBASG,IAAI,EAAA,CAAA;sBADP;gBAiBU,QAAQ,EAAA,CAAA;sBADlB,WAAW;uBAAC,cAAc;;;ACzF7B;MAca,eAAe,CAAA;+GAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAf,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,iBAHX,gBAAgB,EAAE,UAAU,EAAE,UAAU,CAD7C,EAAA,OAAA,EAAA,CAAA,YAAY,EAAE,gBAAgB,EAAE,cAAc,CAAA,EAAA,OAAA,EAAA,CAE9C,gBAAgB,EAAE,UAAU,EAAE,UAAU,CAAA,EAAA,CAAA,CAAA;AAEvC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,EAJhB,OAAA,EAAA,CAAA,YAAY,EAAE,gBAAgB,EAAE,cAAc,CAAA,EAAA,CAAA,CAAA;;4FAI7C,eAAe,EAAA,UAAA,EAAA,CAAA;kBAL3B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,gBAAgB,EAAE,cAAc,CAAC;AACzD,oBAAA,YAAY,EAAE,CAAC,gBAAgB,EAAE,UAAU,EAAE,UAAU,CAAC;AACxD,oBAAA,OAAO,EAAE,CAAC,gBAAgB,EAAE,UAAU,EAAE,UAAU,CAAC;AACpD,iBAAA;;;ACbD;;AAEG;;;;"}
@@ -19,7 +19,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
19
19
  type: Pipe,
20
20
  args: [{
21
21
  name: 'decodeURI',
22
- standalone: false
22
+ standalone: false,
23
23
  }]
24
24
  }, {
25
25
  type: Injectable
@@ -38,7 +38,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
38
38
  type: Pipe,
39
39
  args: [{
40
40
  name: 'default', pure: true,
41
- standalone: false
41
+ standalone: false,
42
42
  }]
43
43
  }, {
44
44
  type: Injectable
@@ -66,7 +66,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
66
66
  type: Pipe,
67
67
  args: [{
68
68
  name: 'groupBy',
69
- standalone: false
69
+ standalone: false,
70
70
  }]
71
71
  }] });
72
72
 
@@ -87,7 +87,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
87
87
  type: Pipe,
88
88
  args: [{
89
89
  name: 'highlight', pure: true,
90
- standalone: false
90
+ standalone: false,
91
91
  }]
92
92
  }, {
93
93
  type: Injectable
@@ -112,7 +112,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
112
112
  type: Pipe,
113
113
  args: [{
114
114
  name: 'isoDateRange',
115
- standalone: false
115
+ standalone: false,
116
116
  }]
117
117
  }], ctorParameters: () => [] });
118
118
 
@@ -131,7 +131,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
131
131
  type: Pipe,
132
132
  args: [{
133
133
  name: 'isoDate',
134
- standalone: false
134
+ standalone: false,
135
135
  }]
136
136
  }], ctorParameters: () => [] });
137
137
 
@@ -154,7 +154,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
154
154
  type: Pipe,
155
155
  args: [{
156
156
  name: 'isoTimeRange',
157
- standalone: false
157
+ standalone: false,
158
158
  }]
159
159
  }], ctorParameters: () => [] });
160
160
 
@@ -174,7 +174,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
174
174
  type: Pipe,
175
175
  args: [{
176
176
  name: 'isoTime',
177
- standalone: false
177
+ standalone: false,
178
178
  }]
179
179
  }], ctorParameters: () => [] });
180
180
 
@@ -528,7 +528,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
528
528
  type: Pipe,
529
529
  args: [{
530
530
  name: 'plural',
531
- standalone: false
531
+ standalone: false,
532
532
  }]
533
533
  }, {
534
534
  type: Injectable
@@ -1 +1 @@
1
- {"version":3,"file":"novo-elements-pipes.mjs","sources":["../../../projects/novo-elements/src/pipes/decode-uri/DecodeURI.ts","../../../projects/novo-elements/src/pipes/default/Default.ts","../../../projects/novo-elements/src/pipes/group-by/GroupBy.ts","../../../projects/novo-elements/src/pipes/highlight/Highlight.ts","../../../projects/novo-elements/src/pipes/iso8601/iso-date-range.pipe.ts","../../../projects/novo-elements/src/pipes/iso8601/iso-date.pipe.ts","../../../projects/novo-elements/src/pipes/iso8601/iso-time-range.pipe.ts","../../../projects/novo-elements/src/pipes/iso8601/iso-time.pipe.ts","../../../projects/novo-elements/src/pipes/plural/Plural.ts","../../../projects/novo-elements/src/pipes/Pipes.module.ts","../../../projects/novo-elements/src/pipes/novo-elements-pipes.ts"],"sourcesContent":["// NG2\nimport { Injectable, Pipe, PipeTransform } from '@angular/core';\n// App\nimport { Helpers } from 'novo-elements/utils';\n\n@Pipe({\n name: 'decodeURI',\n standalone: false\n})\n@Injectable()\nexport class DecodeURIPipe implements PipeTransform {\n transform(encodedString: string): string {\n let decodedString: string = '';\n if (!Helpers.isBlank(encodedString) && typeof encodedString === 'string') {\n decodedString = decodeURIComponent(encodedString);\n }\n return decodedString;\n }\n}\n","// NG2\nimport { Injectable, Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'default', pure: true,\n standalone: false\n})\n@Injectable()\nexport class DefaultPipe implements PipeTransform {\n transform(value: any, defaultValue: any): any {\n return value || defaultValue;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { can, Helpers } from 'novo-elements/utils';\n\n@Pipe({\n name: 'groupBy',\n standalone: false\n})\nexport class GroupByPipe implements PipeTransform {\n transform(input: any, prop: string): Array<any> {\n if (!Array.isArray(input)) {\n return input;\n }\n\n const arr: { [key: string]: Array<any> } = {};\n\n for (const value of input) {\n const field: any = can(value).have(prop);\n if (Helpers.isBlank(arr[field])) {\n arr[field] = [];\n }\n\n arr[field].push(value);\n }\n\n return Object.keys(arr).map((key) => ({ key, value: arr[key] }));\n }\n}\n","// NG2\nimport { Injectable, Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'highlight', pure: true,\n standalone: false\n})\n@Injectable()\nexport class HighlightPipe implements PipeTransform {\n transform(value: any, term: any): any {\n return term ? value.replace(new RegExp(this.escapeRegexp(term.trim()), 'gi'), '<strong>$&</strong>') : value;\n }\n\n escapeRegexp(queryToEscape) {\n // Ex: if the capture is \"a\" the result will be \\a\n return queryToEscape.replace(/([.?*+^$[\\]\\\\(){}|-])/g, '\\\\$1');\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\ntype IsoDateRangeArgs = (string | Date)[];\n\n@Pipe({\n name: 'isoDateRange',\n standalone: false\n})\nexport class IsoDateRangePipe implements PipeTransform {\n constructor() {}\n transform(dates: IsoDateRangeArgs): string {\n // TODO: Lookup Locale to convert to Users DateFormat\n const [start, end] = dates.map((date) => {\n if (date instanceof Date) {\n return date.toISOString().slice(0, 10);\n }\n return (date as string).slice(0, 10);\n });\n\n return `${start} - ${end}`;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'isoDate',\n standalone: false\n})\nexport class IsoDatePipe implements PipeTransform {\n constructor() {}\n transform(date: string | Date): string {\n if (date instanceof Date) {\n return date.toISOString().slice(0, 10);\n }\n return (date as string).slice(0, 10);\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\ntype IsoTimeRangeArgs = (string | Date)[];\n\n@Pipe({\n name: 'isoTimeRange',\n standalone: false\n})\nexport class IsoTimeRangePipe implements PipeTransform {\n constructor() {}\n transform(dates: IsoTimeRangeArgs): string {\n // TODO: Lookup Locale to convert to 12hour\n const [start, end] = dates.map((date) => {\n if (date instanceof Date) {\n return date.toISOString().slice(11, 16);\n }\n return (date as string).slice(11, 16);\n });\n\n return `${start} - ${end}`;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'isoTime',\n standalone: false\n})\nexport class IsoTimePipe implements PipeTransform {\n constructor() {}\n transform(date: string | Date): string {\n // TODO: Lookup Locale to convert to 12hour\n if (date instanceof Date) {\n return date.toISOString().slice(11, 16);\n }\n return (date as string).slice(11, 16);\n }\n}\n","// NG2\nimport { Injectable, Pipe, PipeTransform } from '@angular/core';\n\n// Rule storage - pluralize and singularize need to be run sequentially,\n// while other rules can be optimized using an object for instant lookups.\nconst pluralRules = [];\nconst singularRules = [];\nconst uncountables = {};\nconst irregularPlurals = {};\nconst irregularSingles = {};\n\n/**\n * Title case a string.\n */\nfunction toTitleCase(str: string): string {\n return str.charAt(0).toUpperCase() + str.substr(1).toLowerCase();\n}\n\n/**\n * Sanitize a pluralization rule to a usable regular expression.\n */\nfunction sanitizeRule(rule: RegExp | string): RegExp {\n if (typeof rule === 'string') {\n return new RegExp('^' + rule + '$', 'i');\n }\n return rule;\n}\n\n/**\n * Pass in a word token to produce a function that can replicate the case on\n * another word.\n */\nfunction restoreCase(word: string, token: string): string {\n // Upper cased words. E.g. \"HELLO\".\n if (word === word.toUpperCase()) {\n return token.toUpperCase();\n }\n\n // Title cased words. E.g. \"Title\".\n if (word[0] === word[0].toUpperCase()) {\n return toTitleCase(token);\n }\n\n // Lower cased words. E.g. \"test\".\n return token.toLowerCase();\n}\n\n/**\n * Interpolate a regexp string.\n */\nfunction interpolate(str: string, args: any[]): string {\n return str.replace(/\\$(\\d{1,2})/g, (match, index) => {\n return args[index] || '';\n });\n}\n\n/**\n * Sanitize a word by passing in the word and sanitization rules.\n */\nfunction sanitizeWord(token: string, word: string, collection: RegExp[]): string {\n // Empty string or doesn't need fixing.\n if (!token.length || uncountables.hasOwnProperty(token)) {\n return word;\n }\n\n let len = collection.length;\n // Iterate over the sanitization rules and use the first one to match.\n while (len--) {\n const rule = collection[len];\n // If the rule passes, return the replacement.\n if (rule[0].test(word)) {\n return word.replace(rule[0], (match, index, words) => {\n const result = interpolate(rule[1], [match, index, words]);\n if (match === '') {\n return restoreCase(words[index - 1], result);\n }\n return restoreCase(match, result);\n });\n }\n }\n return word;\n}\n\n/**\n * Replace a word with the updated word.\n */\nfunction replaceWord(replaceMap: any, keepMap: any, rules: any[]): Function {\n return (word) => {\n // Get the correct token and case restoration functions.\n const token = word.toLowerCase();\n\n // Check against the keep object map.\n if (keepMap.hasOwnProperty(token)) {\n return restoreCase(word, token);\n }\n\n // Check against the replacement map for a direct word replacement.\n if (replaceMap.hasOwnProperty(token)) {\n return restoreCase(word, replaceMap[token]);\n }\n\n // Run all the rules against the word.\n return sanitizeWord(token, word, rules);\n };\n}\n\nclass Pluralize {\n static pluralize(word, count = 1, inclusive?) {\n const pluralized = count === 1 ? Pluralize.singular(word) : Pluralize.plural(word);\n return (inclusive ? `${count} ` : '') + pluralized;\n }\n\n static singular(word) {\n return replaceWord(irregularSingles, irregularPlurals, pluralRules)(word);\n }\n\n static plural(word) {\n return replaceWord(irregularPlurals, irregularSingles, singularRules)(word);\n }\n\n static addPluralRule(rule, replacement) {\n pluralRules.push([sanitizeRule(rule), replacement]);\n }\n\n static addSingularRule(rule, replacement) {\n singularRules.push([sanitizeRule(rule), replacement]);\n }\n\n static addUncountableRule(word) {\n if (typeof word === 'string') {\n uncountables[word.toLowerCase()] = true;\n return;\n }\n\n // Set singular and plural references for the word.\n Pluralize.addPluralRule(word, '$0');\n Pluralize.addSingularRule(word, '$0');\n }\n\n static addIrregularRule(single, plural) {\n const one = plural.toLowerCase();\n const many = single.toLowerCase();\n\n irregularSingles[one] = many;\n irregularPlurals[many] = one;\n }\n}\n\n/**\n * Irregular rules.\n */\n[\n // Pronouns.\n ['I', 'we'],\n ['me', 'us'],\n ['he', 'they'],\n ['she', 'they'],\n ['them', 'them'],\n ['myself', 'ourselves'],\n ['yourself', 'yourselves'],\n ['itself', 'themselves'],\n ['herself', 'themselves'],\n ['himself', 'themselves'],\n ['themself', 'themselves'],\n ['is', 'are'],\n ['this', 'these'],\n ['that', 'those'],\n // Words ending in with a consonant and `o`.\n ['echo', 'echoes'],\n ['dingo', 'dingoes'],\n ['volcano', 'volcanoes'],\n ['tornado', 'tornadoes'],\n ['torpedo', 'torpedoes'],\n // Ends with `us`.\n ['genus', 'genera'],\n ['viscus', 'viscera'],\n // Ends with `ma`.\n ['stigma', 'stigmata'],\n ['stoma', 'stomata'],\n ['dogma', 'dogmata'],\n ['lemma', 'lemmata'],\n ['schema', 'schemata'],\n ['anathema', 'anathemata'],\n // Other irregular rules.\n ['ox', 'oxen'],\n ['axe', 'axes'],\n ['die', 'dice'],\n ['yes', 'yeses'],\n ['foot', 'feet'],\n ['eave', 'eaves'],\n ['goose', 'geese'],\n ['tooth', 'teeth'],\n ['quiz', 'quizzes'],\n ['human', 'humans'],\n ['proof', 'proofs'],\n ['carve', 'carves'],\n ['valve', 'valves'],\n ['thief', 'thieves'],\n ['genie', 'genies'],\n ['groove', 'grooves'],\n ['pickaxe', 'pickaxes'],\n ['whiskey', 'whiskies'],\n].forEach((rule) => {\n return Pluralize.addIrregularRule(rule[0], rule[1]);\n});\n\n/**\n * Pluralization rules.\n */\n[\n [/s?$/i, 's'],\n [/([^aeiou]ese)$/i, '$1'],\n [/(ax|test)is$/i, '$1es'],\n [/(alias|[^aou]us|tlas|gas|ris)$/i, '$1es'],\n [/(e[mn]u)s?$/i, '$1s'],\n [/([^l]ias|[aeiou]las|[emjzr]as|[iu]am)$/i, '$1'],\n [/(alumn|syllab|octop|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i, '$1i'],\n [/(alumn|alg|vertebr)(?:a|ae)$/i, '$1ae'],\n [/(seraph|cherub)(?:im)?$/i, '$1im'],\n [/(her|at|gr)o$/i, '$1oes'],\n [/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|automat|quor)(?:a|um)$/i, '$1a'],\n [/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)(?:a|on)$/i, '$1a'],\n [/sis$/i, 'ses'],\n [/(?:(kni|wi|li)fe|(ar|l|ea|eo|oa|hoo)f)$/i, '$1$2ves'],\n [/([^aeiouy]|qu)y$/i, '$1ies'],\n [/([^ch][ieo][ln])ey$/i, '$1ies'],\n [/(x|ch|ss|sh|zz)$/i, '$1es'],\n [/(matr|cod|mur|sil|vert|ind|append)(?:ix|ex)$/i, '$1ices'],\n [/(m|l)(?:ice|ouse)$/i, '$1ice'],\n [/(pe)(?:rson|ople)$/i, '$1ople'],\n [/(child)(?:ren)?$/i, '$1ren'],\n [/eaux$/i, '$0'],\n [/m[ae]n$/i, 'men'],\n ['thou', 'you'],\n].forEach((rule) => {\n return Pluralize.addPluralRule(rule[0], rule[1]);\n});\n\n/**\n * Singularization rules.\n */\n[\n [/s$/i, ''],\n [/(ss)$/i, '$1'],\n [/((a)naly|(b)a|(d)iagno|(p)arenthe|(p)rogno|(s)ynop|(t)he)(?:sis|ses)$/i, '$1sis'],\n [/(^analy)(?:sis|ses)$/i, '$1sis'],\n [/(wi|kni|(?:after|half|high|low|mid|non|night|[^\\w]|^)li)ves$/i, '$1fe'],\n [/(ar|(?:wo|[ae])l|[eo][ao])ves$/i, '$1f'],\n [/([^aeiouy]|qu)ies$/i, '$1y'],\n [/(^[pl]|zomb|^(?:neck)?t|[aeo][lt]|cut)ies$/i, '$1ie'],\n [/(\\b(?:mon|smil))ies$/i, '$1ey'],\n [/(m|l)ice$/i, '$1ouse'],\n [/(seraph|cherub)im$/i, '$1'],\n [/(x|ch|ss|sh|zz|tto|go|cho|alias|[^aou]us|tlas|gas|(?:her|at|gr)o|ris)(?:es)?$/i, '$1'],\n [/(e[mn]u)s?$/i, '$1'],\n [/(movie|twelve)s$/i, '$1'],\n [/(cris|test|diagnos)(?:is|es)$/i, '$1is'],\n [/(alumn|syllab|octop|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i, '$1us'],\n [/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|quor)a$/i, '$1um'],\n [/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)a$/i, '$1on'],\n [/(alumn|alg|vertebr)ae$/i, '$1a'],\n [/(cod|mur|sil|vert|ind)ices$/i, '$1ex'],\n [/(matr|append)ices$/i, '$1ix'],\n [/(pe)(rson|ople)$/i, '$1rson'],\n [/(child)ren$/i, '$1'],\n [/(eau)x?$/i, '$1'],\n [/men$/i, 'man'],\n].forEach((rule) => {\n return Pluralize.addSingularRule(rule[0], rule[1]);\n});\n\n/**\n * Uncountable rules.\n */\n[\n // Singular words with no plurals.\n 'advice',\n 'adulthood',\n 'agenda',\n 'aid',\n 'alcohol',\n 'ammo',\n 'athletics',\n 'bison',\n 'blood',\n 'bream',\n 'buffalo',\n 'butter',\n 'carp',\n 'cash',\n 'chassis',\n 'chess',\n 'clothing',\n 'commerce',\n 'cod',\n 'cooperation',\n 'corps',\n 'digestion',\n 'debris',\n 'diabetes',\n 'energy',\n 'equipment',\n 'elk',\n 'excretion',\n 'expertise',\n 'flounder',\n 'fun',\n 'gallows',\n 'garbage',\n 'graffiti',\n 'headquarters',\n 'health',\n 'herpes',\n 'highjinks',\n 'homework',\n 'housework',\n 'information',\n 'jeans',\n 'justice',\n 'kudos',\n 'labour',\n 'literature',\n 'machinery',\n 'mackerel',\n 'media',\n 'mews',\n 'moose',\n 'music',\n 'news',\n 'pike',\n 'plankton',\n 'pliers',\n 'pollution',\n 'premises',\n 'rain',\n 'research',\n 'rice',\n 'salmon',\n 'scissors',\n 'series',\n 'sewage',\n 'shambles',\n 'shrimp',\n 'species',\n 'staff',\n 'swine',\n 'trout',\n 'traffic',\n 'transporation',\n 'tuna',\n 'wealth',\n 'welfare',\n 'whiting',\n 'wildebeest',\n 'wildlife',\n 'you',\n // Regexes.\n /pox$/i, // \"chickpox\", \"smallpox\"\n /ois$/i,\n /deer$/i, // \"deer\", \"reindeer\"\n /fish$/i, // \"fish\", \"blowfish\", \"angelfish\"\n /sheep$/i,\n /measles$/i,\n /[^aeiou]ese$/i, // \"chinese\", \"japanese\"\n].forEach(Pluralize.addUncountableRule);\n\n@Pipe({\n name: 'plural',\n standalone: false\n})\n@Injectable()\nexport class PluralPipe implements PipeTransform {\n transform(value) {\n return Pluralize.pluralize(value);\n }\n}\n","// NG2\nimport { NgModule } from '@angular/core';\nimport { DecodeURIPipe } from './decode-uri/DecodeURI';\nimport { DefaultPipe } from './default/Default';\nimport { GroupByPipe } from './group-by/GroupBy';\nimport { HighlightPipe } from './highlight/Highlight';\nimport { IsoDatePipe, IsoDateRangePipe, IsoTimePipe, IsoTimeRangePipe } from './iso8601';\nimport { PluralPipe } from './plural/Plural';\n\n@NgModule({\n declarations: [PluralPipe, DecodeURIPipe, GroupByPipe, HighlightPipe, DefaultPipe, IsoTimePipe, IsoDatePipe, IsoTimeRangePipe, IsoDateRangePipe],\n exports: [PluralPipe, DecodeURIPipe, GroupByPipe, HighlightPipe, DefaultPipe, IsoTimePipe, IsoDatePipe, IsoTimeRangePipe, IsoDateRangePipe],\n})\nexport class NovoPipesModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"novo-elements-pipes.mjs","sources":["../../../projects/novo-elements/src/pipes/decode-uri/DecodeURI.ts","../../../projects/novo-elements/src/pipes/default/Default.ts","../../../projects/novo-elements/src/pipes/group-by/GroupBy.ts","../../../projects/novo-elements/src/pipes/highlight/Highlight.ts","../../../projects/novo-elements/src/pipes/iso8601/iso-date-range.pipe.ts","../../../projects/novo-elements/src/pipes/iso8601/iso-date.pipe.ts","../../../projects/novo-elements/src/pipes/iso8601/iso-time-range.pipe.ts","../../../projects/novo-elements/src/pipes/iso8601/iso-time.pipe.ts","../../../projects/novo-elements/src/pipes/plural/Plural.ts","../../../projects/novo-elements/src/pipes/Pipes.module.ts","../../../projects/novo-elements/src/pipes/novo-elements-pipes.ts"],"sourcesContent":["// NG2\nimport { Injectable, Pipe, PipeTransform } from '@angular/core';\n// App\nimport { Helpers } from 'novo-elements/utils';\n\n@Pipe({\n name: 'decodeURI',\n standalone: false,\n})\n@Injectable()\nexport class DecodeURIPipe implements PipeTransform {\n transform(encodedString: string): string {\n let decodedString: string = '';\n if (!Helpers.isBlank(encodedString) && typeof encodedString === 'string') {\n decodedString = decodeURIComponent(encodedString);\n }\n return decodedString;\n }\n}\n","// NG2\nimport { Injectable, Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'default', pure: true,\n standalone: false,\n})\n@Injectable()\nexport class DefaultPipe implements PipeTransform {\n transform(value: any, defaultValue: any): any {\n return value || defaultValue;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { can, Helpers } from 'novo-elements/utils';\n\n@Pipe({\n name: 'groupBy',\n standalone: false,\n})\nexport class GroupByPipe implements PipeTransform {\n transform(input: any, prop: string): Array<any> {\n if (!Array.isArray(input)) {\n return input;\n }\n\n const arr: { [key: string]: Array<any> } = {};\n\n for (const value of input) {\n const field: any = can(value).have(prop);\n if (Helpers.isBlank(arr[field])) {\n arr[field] = [];\n }\n\n arr[field].push(value);\n }\n\n return Object.keys(arr).map((key) => ({ key, value: arr[key] }));\n }\n}\n","// NG2\nimport { Injectable, Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'highlight', pure: true,\n standalone: false,\n})\n@Injectable()\nexport class HighlightPipe implements PipeTransform {\n transform(value: any, term: any): any {\n return term ? value.replace(new RegExp(this.escapeRegexp(term.trim()), 'gi'), '<strong>$&</strong>') : value;\n }\n\n escapeRegexp(queryToEscape) {\n // Ex: if the capture is \"a\" the result will be \\a\n return queryToEscape.replace(/([.?*+^$[\\]\\\\(){}|-])/g, '\\\\$1');\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\ntype IsoDateRangeArgs = (string | Date)[];\n\n@Pipe({\n name: 'isoDateRange',\n standalone: false,\n})\nexport class IsoDateRangePipe implements PipeTransform {\n constructor() {}\n transform(dates: IsoDateRangeArgs): string {\n // TODO: Lookup Locale to convert to Users DateFormat\n const [start, end] = dates.map((date) => {\n if (date instanceof Date) {\n return date.toISOString().slice(0, 10);\n }\n return (date as string).slice(0, 10);\n });\n\n return `${start} - ${end}`;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'isoDate',\n standalone: false,\n})\nexport class IsoDatePipe implements PipeTransform {\n constructor() {}\n transform(date: string | Date): string {\n if (date instanceof Date) {\n return date.toISOString().slice(0, 10);\n }\n return (date as string).slice(0, 10);\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\ntype IsoTimeRangeArgs = (string | Date)[];\n\n@Pipe({\n name: 'isoTimeRange',\n standalone: false,\n})\nexport class IsoTimeRangePipe implements PipeTransform {\n constructor() {}\n transform(dates: IsoTimeRangeArgs): string {\n // TODO: Lookup Locale to convert to 12hour\n const [start, end] = dates.map((date) => {\n if (date instanceof Date) {\n return date.toISOString().slice(11, 16);\n }\n return (date as string).slice(11, 16);\n });\n\n return `${start} - ${end}`;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'isoTime',\n standalone: false,\n})\nexport class IsoTimePipe implements PipeTransform {\n constructor() {}\n transform(date: string | Date): string {\n // TODO: Lookup Locale to convert to 12hour\n if (date instanceof Date) {\n return date.toISOString().slice(11, 16);\n }\n return (date as string).slice(11, 16);\n }\n}\n","// NG2\nimport { Injectable, Pipe, PipeTransform } from '@angular/core';\n\n// Rule storage - pluralize and singularize need to be run sequentially,\n// while other rules can be optimized using an object for instant lookups.\nconst pluralRules = [];\nconst singularRules = [];\nconst uncountables = {};\nconst irregularPlurals = {};\nconst irregularSingles = {};\n\n/**\n * Title case a string.\n */\nfunction toTitleCase(str: string): string {\n return str.charAt(0).toUpperCase() + str.substr(1).toLowerCase();\n}\n\n/**\n * Sanitize a pluralization rule to a usable regular expression.\n */\nfunction sanitizeRule(rule: RegExp | string): RegExp {\n if (typeof rule === 'string') {\n return new RegExp('^' + rule + '$', 'i');\n }\n return rule;\n}\n\n/**\n * Pass in a word token to produce a function that can replicate the case on\n * another word.\n */\nfunction restoreCase(word: string, token: string): string {\n // Upper cased words. E.g. \"HELLO\".\n if (word === word.toUpperCase()) {\n return token.toUpperCase();\n }\n\n // Title cased words. E.g. \"Title\".\n if (word[0] === word[0].toUpperCase()) {\n return toTitleCase(token);\n }\n\n // Lower cased words. E.g. \"test\".\n return token.toLowerCase();\n}\n\n/**\n * Interpolate a regexp string.\n */\nfunction interpolate(str: string, args: any[]): string {\n return str.replace(/\\$(\\d{1,2})/g, (match, index) => {\n return args[index] || '';\n });\n}\n\n/**\n * Sanitize a word by passing in the word and sanitization rules.\n */\nfunction sanitizeWord(token: string, word: string, collection: RegExp[]): string {\n // Empty string or doesn't need fixing.\n if (!token.length || uncountables.hasOwnProperty(token)) {\n return word;\n }\n\n let len = collection.length;\n // Iterate over the sanitization rules and use the first one to match.\n while (len--) {\n const rule = collection[len];\n // If the rule passes, return the replacement.\n if (rule[0].test(word)) {\n return word.replace(rule[0], (match, index, words) => {\n const result = interpolate(rule[1], [match, index, words]);\n if (match === '') {\n return restoreCase(words[index - 1], result);\n }\n return restoreCase(match, result);\n });\n }\n }\n return word;\n}\n\n/**\n * Replace a word with the updated word.\n */\nfunction replaceWord(replaceMap: any, keepMap: any, rules: any[]): Function {\n return (word) => {\n // Get the correct token and case restoration functions.\n const token = word.toLowerCase();\n\n // Check against the keep object map.\n if (keepMap.hasOwnProperty(token)) {\n return restoreCase(word, token);\n }\n\n // Check against the replacement map for a direct word replacement.\n if (replaceMap.hasOwnProperty(token)) {\n return restoreCase(word, replaceMap[token]);\n }\n\n // Run all the rules against the word.\n return sanitizeWord(token, word, rules);\n };\n}\n\nclass Pluralize {\n static pluralize(word, count = 1, inclusive?) {\n const pluralized = count === 1 ? Pluralize.singular(word) : Pluralize.plural(word);\n return (inclusive ? `${count} ` : '') + pluralized;\n }\n\n static singular(word) {\n return replaceWord(irregularSingles, irregularPlurals, pluralRules)(word);\n }\n\n static plural(word) {\n return replaceWord(irregularPlurals, irregularSingles, singularRules)(word);\n }\n\n static addPluralRule(rule, replacement) {\n pluralRules.push([sanitizeRule(rule), replacement]);\n }\n\n static addSingularRule(rule, replacement) {\n singularRules.push([sanitizeRule(rule), replacement]);\n }\n\n static addUncountableRule(word) {\n if (typeof word === 'string') {\n uncountables[word.toLowerCase()] = true;\n return;\n }\n\n // Set singular and plural references for the word.\n Pluralize.addPluralRule(word, '$0');\n Pluralize.addSingularRule(word, '$0');\n }\n\n static addIrregularRule(single, plural) {\n const one = plural.toLowerCase();\n const many = single.toLowerCase();\n\n irregularSingles[one] = many;\n irregularPlurals[many] = one;\n }\n}\n\n/**\n * Irregular rules.\n */\n[\n // Pronouns.\n ['I', 'we'],\n ['me', 'us'],\n ['he', 'they'],\n ['she', 'they'],\n ['them', 'them'],\n ['myself', 'ourselves'],\n ['yourself', 'yourselves'],\n ['itself', 'themselves'],\n ['herself', 'themselves'],\n ['himself', 'themselves'],\n ['themself', 'themselves'],\n ['is', 'are'],\n ['this', 'these'],\n ['that', 'those'],\n // Words ending in with a consonant and `o`.\n ['echo', 'echoes'],\n ['dingo', 'dingoes'],\n ['volcano', 'volcanoes'],\n ['tornado', 'tornadoes'],\n ['torpedo', 'torpedoes'],\n // Ends with `us`.\n ['genus', 'genera'],\n ['viscus', 'viscera'],\n // Ends with `ma`.\n ['stigma', 'stigmata'],\n ['stoma', 'stomata'],\n ['dogma', 'dogmata'],\n ['lemma', 'lemmata'],\n ['schema', 'schemata'],\n ['anathema', 'anathemata'],\n // Other irregular rules.\n ['ox', 'oxen'],\n ['axe', 'axes'],\n ['die', 'dice'],\n ['yes', 'yeses'],\n ['foot', 'feet'],\n ['eave', 'eaves'],\n ['goose', 'geese'],\n ['tooth', 'teeth'],\n ['quiz', 'quizzes'],\n ['human', 'humans'],\n ['proof', 'proofs'],\n ['carve', 'carves'],\n ['valve', 'valves'],\n ['thief', 'thieves'],\n ['genie', 'genies'],\n ['groove', 'grooves'],\n ['pickaxe', 'pickaxes'],\n ['whiskey', 'whiskies'],\n].forEach((rule) => {\n return Pluralize.addIrregularRule(rule[0], rule[1]);\n});\n\n/**\n * Pluralization rules.\n */\n[\n [/s?$/i, 's'],\n [/([^aeiou]ese)$/i, '$1'],\n [/(ax|test)is$/i, '$1es'],\n [/(alias|[^aou]us|tlas|gas|ris)$/i, '$1es'],\n [/(e[mn]u)s?$/i, '$1s'],\n [/([^l]ias|[aeiou]las|[emjzr]as|[iu]am)$/i, '$1'],\n [/(alumn|syllab|octop|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i, '$1i'],\n [/(alumn|alg|vertebr)(?:a|ae)$/i, '$1ae'],\n [/(seraph|cherub)(?:im)?$/i, '$1im'],\n [/(her|at|gr)o$/i, '$1oes'],\n [/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|automat|quor)(?:a|um)$/i, '$1a'],\n [/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)(?:a|on)$/i, '$1a'],\n [/sis$/i, 'ses'],\n [/(?:(kni|wi|li)fe|(ar|l|ea|eo|oa|hoo)f)$/i, '$1$2ves'],\n [/([^aeiouy]|qu)y$/i, '$1ies'],\n [/([^ch][ieo][ln])ey$/i, '$1ies'],\n [/(x|ch|ss|sh|zz)$/i, '$1es'],\n [/(matr|cod|mur|sil|vert|ind|append)(?:ix|ex)$/i, '$1ices'],\n [/(m|l)(?:ice|ouse)$/i, '$1ice'],\n [/(pe)(?:rson|ople)$/i, '$1ople'],\n [/(child)(?:ren)?$/i, '$1ren'],\n [/eaux$/i, '$0'],\n [/m[ae]n$/i, 'men'],\n ['thou', 'you'],\n].forEach((rule) => {\n return Pluralize.addPluralRule(rule[0], rule[1]);\n});\n\n/**\n * Singularization rules.\n */\n[\n [/s$/i, ''],\n [/(ss)$/i, '$1'],\n [/((a)naly|(b)a|(d)iagno|(p)arenthe|(p)rogno|(s)ynop|(t)he)(?:sis|ses)$/i, '$1sis'],\n [/(^analy)(?:sis|ses)$/i, '$1sis'],\n [/(wi|kni|(?:after|half|high|low|mid|non|night|[^\\w]|^)li)ves$/i, '$1fe'],\n [/(ar|(?:wo|[ae])l|[eo][ao])ves$/i, '$1f'],\n [/([^aeiouy]|qu)ies$/i, '$1y'],\n [/(^[pl]|zomb|^(?:neck)?t|[aeo][lt]|cut)ies$/i, '$1ie'],\n [/(\\b(?:mon|smil))ies$/i, '$1ey'],\n [/(m|l)ice$/i, '$1ouse'],\n [/(seraph|cherub)im$/i, '$1'],\n [/(x|ch|ss|sh|zz|tto|go|cho|alias|[^aou]us|tlas|gas|(?:her|at|gr)o|ris)(?:es)?$/i, '$1'],\n [/(e[mn]u)s?$/i, '$1'],\n [/(movie|twelve)s$/i, '$1'],\n [/(cris|test|diagnos)(?:is|es)$/i, '$1is'],\n [/(alumn|syllab|octop|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i, '$1us'],\n [/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|quor)a$/i, '$1um'],\n [/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)a$/i, '$1on'],\n [/(alumn|alg|vertebr)ae$/i, '$1a'],\n [/(cod|mur|sil|vert|ind)ices$/i, '$1ex'],\n [/(matr|append)ices$/i, '$1ix'],\n [/(pe)(rson|ople)$/i, '$1rson'],\n [/(child)ren$/i, '$1'],\n [/(eau)x?$/i, '$1'],\n [/men$/i, 'man'],\n].forEach((rule) => {\n return Pluralize.addSingularRule(rule[0], rule[1]);\n});\n\n/**\n * Uncountable rules.\n */\n[\n // Singular words with no plurals.\n 'advice',\n 'adulthood',\n 'agenda',\n 'aid',\n 'alcohol',\n 'ammo',\n 'athletics',\n 'bison',\n 'blood',\n 'bream',\n 'buffalo',\n 'butter',\n 'carp',\n 'cash',\n 'chassis',\n 'chess',\n 'clothing',\n 'commerce',\n 'cod',\n 'cooperation',\n 'corps',\n 'digestion',\n 'debris',\n 'diabetes',\n 'energy',\n 'equipment',\n 'elk',\n 'excretion',\n 'expertise',\n 'flounder',\n 'fun',\n 'gallows',\n 'garbage',\n 'graffiti',\n 'headquarters',\n 'health',\n 'herpes',\n 'highjinks',\n 'homework',\n 'housework',\n 'information',\n 'jeans',\n 'justice',\n 'kudos',\n 'labour',\n 'literature',\n 'machinery',\n 'mackerel',\n 'media',\n 'mews',\n 'moose',\n 'music',\n 'news',\n 'pike',\n 'plankton',\n 'pliers',\n 'pollution',\n 'premises',\n 'rain',\n 'research',\n 'rice',\n 'salmon',\n 'scissors',\n 'series',\n 'sewage',\n 'shambles',\n 'shrimp',\n 'species',\n 'staff',\n 'swine',\n 'trout',\n 'traffic',\n 'transporation',\n 'tuna',\n 'wealth',\n 'welfare',\n 'whiting',\n 'wildebeest',\n 'wildlife',\n 'you',\n // Regexes.\n /pox$/i, // \"chickpox\", \"smallpox\"\n /ois$/i,\n /deer$/i, // \"deer\", \"reindeer\"\n /fish$/i, // \"fish\", \"blowfish\", \"angelfish\"\n /sheep$/i,\n /measles$/i,\n /[^aeiou]ese$/i, // \"chinese\", \"japanese\"\n].forEach(Pluralize.addUncountableRule);\n\n@Pipe({\n name: 'plural',\n standalone: false,\n})\n@Injectable()\nexport class PluralPipe implements PipeTransform {\n transform(value) {\n return Pluralize.pluralize(value);\n }\n}\n","// NG2\nimport { NgModule } from '@angular/core';\nimport { DecodeURIPipe } from './decode-uri/DecodeURI';\nimport { DefaultPipe } from './default/Default';\nimport { GroupByPipe } from './group-by/GroupBy';\nimport { HighlightPipe } from './highlight/Highlight';\nimport { IsoDatePipe, IsoDateRangePipe, IsoTimePipe, IsoTimeRangePipe } from './iso8601';\nimport { PluralPipe } from './plural/Plural';\n\n@NgModule({\n declarations: [PluralPipe, DecodeURIPipe, GroupByPipe, HighlightPipe, DefaultPipe, IsoTimePipe, IsoDatePipe, IsoTimeRangePipe, IsoDateRangePipe],\n exports: [PluralPipe, DecodeURIPipe, GroupByPipe, HighlightPipe, DefaultPipe, IsoTimePipe, IsoDatePipe, IsoTimeRangePipe, IsoDateRangePipe],\n})\nexport class NovoPipesModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}