keevo-components 1.8.34 → 1.8.36

Sign up to get free protection for your applications and to get access to all the features.
Files changed (212) hide show
  1. package/README.md +24 -24
  2. package/esm2022/keevo-components.mjs +4 -4
  3. package/esm2022/lib/api/base-components/base-component-button.mjs +36 -36
  4. package/esm2022/lib/api/base-components/base-component-chart.mjs +92 -92
  5. package/esm2022/lib/api/base-components/base-component-crud-form.mjs +298 -298
  6. package/esm2022/lib/api/base-components/base-component-crud-list.mjs +78 -78
  7. package/esm2022/lib/api/base-components/base-component-crud.mjs +65 -65
  8. package/esm2022/lib/api/base-components/base-component-dropdown-external.mjs +31 -31
  9. package/esm2022/lib/api/base-components/base-component-dropdown.mjs +169 -169
  10. package/esm2022/lib/api/base-components/base-component-input.mjs +94 -94
  11. package/esm2022/lib/api/base-components/base-component-multi-select.mjs +130 -130
  12. package/esm2022/lib/api/base-components/base-component.mjs +51 -51
  13. package/esm2022/lib/api/components/chart/chart.config.mjs +2 -2
  14. package/esm2022/lib/api/components/chart/chart.model.mjs +2 -2
  15. package/esm2022/lib/api/components/chart/orchart.config.mjs +2 -2
  16. package/esm2022/lib/api/components/chart/orchart.item.mjs +2 -2
  17. package/esm2022/lib/api/components/dropdown/filtro.combo.mjs +2 -2
  18. package/esm2022/lib/api/components/error/error.component.mjs +26 -26
  19. package/esm2022/lib/api/components/error/kverror.module.mjs +35 -35
  20. package/esm2022/lib/api/components/table/action-item.mjs +2 -2
  21. package/esm2022/lib/api/components/table/kv-menuitem.mjs +3 -3
  22. package/esm2022/lib/api/components/table/table-dropdown-control.mjs +2 -2
  23. package/esm2022/lib/api/components/table/table.config.column.mjs +2 -2
  24. package/esm2022/lib/api/components/table/table.config.mjs +2 -2
  25. package/esm2022/lib/api/components/table/table.paginate.mjs +9 -9
  26. package/esm2022/lib/api/components/table/tabledit.config.mjs +2 -2
  27. package/esm2022/lib/api/components/table/tableedit.config.column.mjs +2 -2
  28. package/esm2022/lib/api/helpers/component-providers.mjs +16 -16
  29. package/esm2022/lib/api/helpers/keevo-validators.mjs +72 -72
  30. package/esm2022/lib/api/helpers/translate-primeng.mjs +23 -23
  31. package/esm2022/lib/api/models/menu/menu.model.mjs +2 -2
  32. package/esm2022/lib/api/models/menu/menucompleto.model.mjs +2 -2
  33. package/esm2022/lib/api/models/menu/sistemamenu.model.mjs +2 -2
  34. package/esm2022/lib/api/modules/primeng.module.mjs +251 -251
  35. package/esm2022/lib/api/services/base.api.service.mjs +74 -74
  36. package/esm2022/lib/api/services/breadcrumbs.service.mjs +57 -57
  37. package/esm2022/lib/api/services/component.service.mjs +27 -27
  38. package/esm2022/lib/api/services/form.service.mjs +85 -85
  39. package/esm2022/lib/api/services/imagens.service.mjs +28 -28
  40. package/esm2022/lib/api/services/notification.service.mjs +67 -67
  41. package/esm2022/lib/api/services/object.service.mjs +39 -39
  42. package/esm2022/lib/avatar/avatar.component.mjs +78 -78
  43. package/esm2022/lib/avatar/kv-avatar.module.mjs +32 -32
  44. package/esm2022/lib/buttons/button-personalize/button-personalize.component.mjs +17 -17
  45. package/esm2022/lib/buttons/button-popup/button-popup.component.mjs +31 -31
  46. package/esm2022/lib/buttons/button-secondary/button-secondary.component.mjs +17 -17
  47. package/esm2022/lib/buttons/button-success/button-success.component.mjs +17 -17
  48. package/esm2022/lib/buttons/kvbutton.module.mjs +39 -39
  49. package/esm2022/lib/carousel/carousel.component.mjs +92 -92
  50. package/esm2022/lib/carousel/kv-carousel.module.mjs +28 -28
  51. package/esm2022/lib/chart/chart.component.mjs +145 -145
  52. package/esm2022/lib/chart/kvchart.module.mjs +32 -32
  53. package/esm2022/lib/directives/template/template.directive.mjs +24 -24
  54. package/esm2022/lib/inputs/check/check.component.mjs +26 -26
  55. package/esm2022/lib/inputs/dropdown/dropdown.component.mjs +37 -37
  56. package/esm2022/lib/inputs/editor/editor.component.mjs +88 -88
  57. package/esm2022/lib/inputs/input-calendar/input-calendar.component.mjs +89 -89
  58. package/esm2022/lib/inputs/input-mask/input-mask.component.mjs +29 -29
  59. package/esm2022/lib/inputs/input-number/input-number.component.mjs +59 -59
  60. package/esm2022/lib/inputs/input-password/input-password.component.mjs +33 -33
  61. package/esm2022/lib/inputs/input-text/input-text.component.mjs +21 -21
  62. package/esm2022/lib/inputs/input-text-checkbox/input-text-checkbox.component.mjs +41 -41
  63. package/esm2022/lib/inputs/input-textarea/input-textarea.component.mjs +43 -43
  64. package/esm2022/lib/inputs/input-time/input-time.component.mjs +24 -24
  65. package/esm2022/lib/inputs/kvinputs.module.mjs +108 -108
  66. package/esm2022/lib/inputs/multi-select/multi-select.component.mjs +44 -44
  67. package/esm2022/lib/inputs/radio-group/radio-group.component.mjs +53 -53
  68. package/esm2022/lib/inputs/switch/switch.component.mjs +34 -34
  69. package/esm2022/lib/keevo-components.module.mjs +144 -144
  70. package/esm2022/lib/label/label.component.mjs +14 -14
  71. package/esm2022/lib/label/label.module.mjs +23 -23
  72. package/esm2022/lib/loader/kvloader.module.mjs +28 -28
  73. package/esm2022/lib/loader/loader.component.mjs +17 -17
  74. package/esm2022/lib/loader/loader.service.mjs +29 -29
  75. package/esm2022/lib/login/kvlogin.module.mjs +47 -47
  76. package/esm2022/lib/login/login.component.mjs +52 -52
  77. package/esm2022/lib/menu/kvmenu.module.mjs +47 -43
  78. package/esm2022/lib/menu/menu.component.mjs +188 -215
  79. package/esm2022/lib/modal/kv-modal.module.mjs +31 -31
  80. package/esm2022/lib/modal/modal.component.mjs +67 -60
  81. package/esm2022/lib/orgchart/orgchart.component.mjs +100 -100
  82. package/esm2022/lib/orgchart/orgchart.module.mjs +24 -24
  83. package/esm2022/lib/page-form/kv-page-form.module.mjs +38 -38
  84. package/esm2022/lib/page-form/page-form.component.mjs +147 -147
  85. package/esm2022/lib/picklist/kvpicklist.module.mjs +32 -32
  86. package/esm2022/lib/picklist/picklist.component.mjs +48 -48
  87. package/esm2022/lib/pipes/codigofile.pipe.mjs +19 -19
  88. package/esm2022/lib/pipes/cpfcnpj.pipe.mjs +25 -25
  89. package/esm2022/lib/pipes/pipes.module.mjs +34 -34
  90. package/esm2022/lib/pipes/telefone.pipe.mjs +45 -45
  91. package/esm2022/lib/progress-bar/kv-progress-bar.module.mjs +28 -28
  92. package/esm2022/lib/progress-bar/progress-bar.component.mjs +58 -58
  93. package/esm2022/lib/table/kvtable.module.mjs +36 -36
  94. package/esm2022/lib/table/table.component.mjs +554 -554
  95. package/esm2022/lib/table-edit/table-edit.component.mjs +564 -502
  96. package/esm2022/lib/table-edit/table-edit.module.mjs +31 -31
  97. package/esm2022/lib/tree-table/kv-treetable.component.mjs +371 -371
  98. package/esm2022/lib/tree-table/kv-treetable.module.mjs +32 -32
  99. package/esm2022/lib/tree-view/kvtree-view.module.mjs +28 -28
  100. package/esm2022/lib/tree-view/tree-view.component.mjs +30 -30
  101. package/esm2022/lib/treetable/treetable.component.mjs +215 -215
  102. package/esm2022/lib/treetable/treetable.module.mjs +28 -28
  103. package/esm2022/lib/workspace/kvworkspace.module.mjs +51 -51
  104. package/esm2022/lib/workspace/workspace.component.mjs +178 -178
  105. package/esm2022/public-api.mjs +165 -165
  106. package/fesm2022/keevo-components.mjs +5744 -5697
  107. package/fesm2022/keevo-components.mjs.map +1 -1
  108. package/index.d.ts +5 -5
  109. package/lib/api/base-components/base-component-button.d.ts +14 -14
  110. package/lib/api/base-components/base-component-chart.d.ts +40 -40
  111. package/lib/api/base-components/base-component-crud-form.d.ts +145 -145
  112. package/lib/api/base-components/base-component-crud-list.d.ts +63 -63
  113. package/lib/api/base-components/base-component-crud.d.ts +36 -36
  114. package/lib/api/base-components/base-component-dropdown-external.d.ts +15 -15
  115. package/lib/api/base-components/base-component-dropdown.d.ts +44 -44
  116. package/lib/api/base-components/base-component-input.d.ts +31 -31
  117. package/lib/api/base-components/base-component-multi-select.d.ts +35 -35
  118. package/lib/api/base-components/base-component.d.ts +22 -22
  119. package/lib/api/components/chart/chart.config.d.ts +11 -11
  120. package/lib/api/components/chart/chart.model.d.ts +9 -9
  121. package/lib/api/components/chart/orchart.config.d.ts +35 -35
  122. package/lib/api/components/chart/orchart.item.d.ts +26 -26
  123. package/lib/api/components/dropdown/filtro.combo.d.ts +4 -4
  124. package/lib/api/components/error/error.component.d.ts +12 -12
  125. package/lib/api/components/error/kverror.module.d.ts +10 -10
  126. package/lib/api/components/table/action-item.d.ts +9 -8
  127. package/lib/api/components/table/kv-menuitem.d.ts +10 -10
  128. package/lib/api/components/table/table-dropdown-control.d.ts +6 -6
  129. package/lib/api/components/table/table.config.column.d.ts +25 -25
  130. package/lib/api/components/table/table.config.d.ts +19 -19
  131. package/lib/api/components/table/table.paginate.d.ts +6 -6
  132. package/lib/api/components/table/tabledit.config.d.ts +8 -6
  133. package/lib/api/components/table/tableedit.config.column.d.ts +9 -9
  134. package/lib/api/helpers/component-providers.d.ts +2 -2
  135. package/lib/api/helpers/keevo-validators.d.ts +11 -11
  136. package/lib/api/helpers/translate-primeng.d.ts +4 -4
  137. package/lib/api/models/menu/menu.model.d.ts +10 -10
  138. package/lib/api/models/menu/menucompleto.model.d.ts +6 -6
  139. package/lib/api/models/menu/sistemamenu.model.d.ts +8 -8
  140. package/lib/api/modules/primeng.module.d.ts +61 -61
  141. package/lib/api/services/base.api.service.d.ts +25 -25
  142. package/lib/api/services/breadcrumbs.service.d.ts +16 -16
  143. package/lib/api/services/component.service.d.ts +11 -11
  144. package/lib/api/services/form.service.d.ts +28 -28
  145. package/lib/api/services/imagens.service.d.ts +10 -10
  146. package/lib/api/services/notification.service.d.ts +25 -25
  147. package/lib/api/services/object.service.d.ts +9 -9
  148. package/lib/avatar/avatar.component.d.ts +22 -22
  149. package/lib/avatar/kv-avatar.module.d.ts +10 -10
  150. package/lib/buttons/button-personalize/button-personalize.component.d.ts +7 -7
  151. package/lib/buttons/button-popup/button-popup.component.d.ts +13 -13
  152. package/lib/buttons/button-secondary/button-secondary.component.d.ts +7 -7
  153. package/lib/buttons/button-success/button-success.component.d.ts +7 -7
  154. package/lib/buttons/kvbutton.module.d.ts +11 -11
  155. package/lib/carousel/carousel.component.d.ts +16 -16
  156. package/lib/carousel/kv-carousel.module.d.ts +9 -9
  157. package/lib/chart/chart.component.d.ts +56 -56
  158. package/lib/chart/kvchart.module.d.ts +10 -10
  159. package/lib/directives/template/template.directive.d.ts +11 -11
  160. package/lib/inputs/check/check.component.d.ts +11 -11
  161. package/lib/inputs/dropdown/dropdown.component.d.ts +14 -14
  162. package/lib/inputs/editor/editor.component.d.ts +36 -36
  163. package/lib/inputs/input-calendar/input-calendar.component.d.ts +27 -27
  164. package/lib/inputs/input-mask/input-mask.component.d.ts +12 -12
  165. package/lib/inputs/input-number/input-number.component.d.ts +19 -19
  166. package/lib/inputs/input-password/input-password.component.d.ts +13 -13
  167. package/lib/inputs/input-text/input-text.component.d.ts +9 -9
  168. package/lib/inputs/input-text-checkbox/input-text-checkbox.component.d.ts +16 -16
  169. package/lib/inputs/input-textarea/input-textarea.component.d.ts +16 -16
  170. package/lib/inputs/input-time/input-time.component.d.ts +10 -10
  171. package/lib/inputs/kvinputs.module.d.ts +25 -25
  172. package/lib/inputs/multi-select/multi-select.component.d.ts +15 -15
  173. package/lib/inputs/radio-group/radio-group.component.d.ts +18 -18
  174. package/lib/inputs/switch/switch.component.d.ts +14 -14
  175. package/lib/keevo-components.module.d.ts +25 -25
  176. package/lib/label/label.component.d.ts +7 -7
  177. package/lib/label/label.module.d.ts +8 -8
  178. package/lib/loader/kvloader.module.d.ts +9 -9
  179. package/lib/loader/loader.component.d.ts +8 -8
  180. package/lib/loader/loader.service.d.ts +10 -10
  181. package/lib/login/kvlogin.module.d.ts +13 -13
  182. package/lib/login/login.component.d.ts +30 -30
  183. package/lib/menu/kvmenu.module.d.ts +13 -12
  184. package/lib/menu/menu.component.d.ts +61 -73
  185. package/lib/modal/kv-modal.module.d.ts +10 -10
  186. package/lib/modal/modal.component.d.ts +20 -19
  187. package/lib/orgchart/orgchart.component.d.ts +27 -27
  188. package/lib/orgchart/orgchart.module.d.ts +9 -9
  189. package/lib/page-form/kv-page-form.module.d.ts +11 -11
  190. package/lib/page-form/page-form.component.d.ts +70 -70
  191. package/lib/picklist/kvpicklist.module.d.ts +10 -10
  192. package/lib/picklist/picklist.component.d.ts +20 -20
  193. package/lib/pipes/codigofile.pipe.d.ts +7 -7
  194. package/lib/pipes/cpfcnpj.pipe.d.ts +7 -7
  195. package/lib/pipes/pipes.module.d.ts +10 -10
  196. package/lib/pipes/telefone.pipe.d.ts +7 -7
  197. package/lib/progress-bar/kv-progress-bar.module.d.ts +9 -9
  198. package/lib/progress-bar/progress-bar.component.d.ts +67 -67
  199. package/lib/table/kvtable.module.d.ts +11 -11
  200. package/lib/table/table.component.d.ts +113 -113
  201. package/lib/table-edit/table-edit.component.d.ts +116 -109
  202. package/lib/table-edit/table-edit.module.d.ts +11 -11
  203. package/lib/tree-table/kv-treetable.component.d.ts +85 -85
  204. package/lib/tree-table/kv-treetable.module.d.ts +11 -11
  205. package/lib/tree-view/kvtree-view.module.d.ts +9 -9
  206. package/lib/tree-view/tree-view.component.d.ts +14 -14
  207. package/lib/treetable/treetable.component.d.ts +42 -42
  208. package/lib/treetable/treetable.module.d.ts +9 -9
  209. package/lib/workspace/kvworkspace.module.d.ts +14 -14
  210. package/lib/workspace/workspace.component.d.ts +46 -46
  211. package/package.json +1 -1
  212. package/public-api.d.ts +161 -161
@@ -1,37 +1,37 @@
1
- import { Component, Input } from '@angular/core';
2
- import { ComponentProviders } from '../../api/helpers/component-providers';
3
- import { BaseComponentDropDown } from '../../api/base-components/base-component-dropdown';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "../../api/services/component.service";
6
- import * as i2 from "primeng/dynamicdialog";
7
- import * as i3 from "@angular/common";
8
- import * as i4 from "@angular/forms";
9
- import * as i5 from "../../api/components/error/error.component";
10
- import * as i6 from "primeng/api";
11
- import * as i7 from "primeng/button";
12
- import * as i8 from "primeng/tooltip";
13
- import * as i9 from "primeng/divider";
14
- import * as i10 from "primeng/dropdown";
15
- import * as i11 from "../../label/label.component";
16
- export class DropdownComponent extends BaseComponentDropDown {
17
- constructor(componentService, dialogService) {
18
- super(componentService, dialogService);
19
- }
20
- ngOnInit() {
21
- if (this.dropDowValue)
22
- this.value = this.dropDowValue;
23
- }
24
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DropdownComponent, deps: [{ token: i1.ComponentService }, { token: i2.DialogService }], target: i0.ɵɵFactoryTarget.Component }); }
25
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DropdownComponent, selector: "kv-dropdown", inputs: { dropDowValue: "dropDowValue", itemTemplate: "itemTemplate", selectedItemTemplate: "selectedItemTemplate" }, providers: ComponentProviders(DropdownComponent), usesInheritance: true, ngImport: i0, template: "<span>\r\n <kv-label\r\n [componentId]=\"componentId\"\r\n [label]=\"label\"\r\n />\r\n <p-dropdown\r\n appendTo=\"body\"\r\n [class]=\"baseInputClass\"\r\n [disabled]=\"disabled\"\r\n [filter]=\"filter\"\r\n [inputId]=\"componentId\"\r\n [(ngModel)]=\"value\"\r\n [options]=\"filteredOptions\"\r\n [optionLabel]=\"optionLabel\"\r\n [optionValue]=\"optionValue\"\r\n [optionDisabled]=\"optionDisabled\"\r\n [group]=\"group\"\r\n [optionGroupLabel]=\"optionGroupLabel\"\r\n [optionGroupChildren]=\"optionGroupChildren\"\r\n [showClear]=\"showClear\"\r\n [lazy]=\"lazy\"\r\n scrollHeight=\"250px\"\r\n (onBlur)=\"onInputBlur($event)\"\r\n (onClick)=\"onInputClick($event)\"\r\n (onChange)=\"onInputChange($event)\"\r\n (onFilter)=\"onInputFilter($event)\"\r\n [style]=\"{'width':widthField}\"\r\n [panelStyle]=\"{ width: widthField, overflow: 'auto' }\"\r\n styleClass=\"inputs\"\r\n >\r\n\r\n <ng-template\r\n *ngIf=\"showAddButton\"\r\n pTemplate=\"footer\"\r\n >\r\n <p-divider></p-divider>\r\n <div class=\"flex flex-wrap card-container p-1\">\r\n <div class=\"flex justify-content-center\">\r\n <button\r\n pButton\r\n label=\"Incluir\"\r\n pTooltip=\"Clique aqui para incluir um novo registro\"\r\n tooltipPosition=\"bottom\"\r\n icon=\"pi pi-plus\"\r\n class=\"p-button-rounded p-button-success mr-2\"\r\n (click)=\"addClick($event)\"\r\n ></button>\r\n </div>\r\n </div>\r\n </ng-template>\r\n\r\n\r\n\r\n\r\n <!-- :: -->\r\n\r\n <ng-template\r\n let-item\r\n pTemplate=\"item\"\r\n *ngIf=\"itemTemplate\"\r\n >\r\n <ng-container\r\n [ngTemplateOutlet]=\"itemTemplate\"\r\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\r\n >\r\n\r\n </ng-container>\r\n </ng-template>\r\n\r\n\r\n <ng-template\r\n let-selectedItem\r\n pTemplate=\"selectedItem\"\r\n *ngIf=\"selectedItemTemplate\"\r\n >\r\n <ng-container\r\n [ngTemplateOutlet]=\"selectedItemTemplate\"\r\n [ngTemplateOutletContext]=\"{ $implicit: selectedItem }\"\r\n >\r\n\r\n </ng-container>\r\n </ng-template>\r\n\r\n <!-- :: -->\r\n\r\n\r\n </p-dropdown>\r\n\r\n <kv-error [hasError]=\"hasControlError()\">{{ erroMessage() }}</kv-error>\r\n</span>\r\n<ng-content></ng-content>\r\n", styles: ["::ng-deep .p-dropdown .p-dropdown-label{display:flex;align-items:center}\n", "label{font-family:Inter var,Roboto,Arial,Helvetica,sans-serif}:host ::ng-deep .inputs{height:35px}*{margin:0}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.ErrorComponent, selector: "kv-error", inputs: ["formControl", "hasError"] }, { kind: "directive", type: i6.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i7.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "directive", type: i8.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "component", type: i9.Divider, selector: "p-divider", inputs: ["style", "styleClass", "layout", "type", "align"] }, { kind: "component", type: i10.Dropdown, selector: "p-dropdown", inputs: ["id", "scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "filterPlaceholder", "filterLocale", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "component", type: i11.LabelComponent, selector: "kv-label", inputs: ["componentId", "label"] }] }); }
26
- }
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DropdownComponent, decorators: [{
28
- type: Component,
29
- args: [{ selector: 'kv-dropdown', providers: ComponentProviders(DropdownComponent), template: "<span>\r\n <kv-label\r\n [componentId]=\"componentId\"\r\n [label]=\"label\"\r\n />\r\n <p-dropdown\r\n appendTo=\"body\"\r\n [class]=\"baseInputClass\"\r\n [disabled]=\"disabled\"\r\n [filter]=\"filter\"\r\n [inputId]=\"componentId\"\r\n [(ngModel)]=\"value\"\r\n [options]=\"filteredOptions\"\r\n [optionLabel]=\"optionLabel\"\r\n [optionValue]=\"optionValue\"\r\n [optionDisabled]=\"optionDisabled\"\r\n [group]=\"group\"\r\n [optionGroupLabel]=\"optionGroupLabel\"\r\n [optionGroupChildren]=\"optionGroupChildren\"\r\n [showClear]=\"showClear\"\r\n [lazy]=\"lazy\"\r\n scrollHeight=\"250px\"\r\n (onBlur)=\"onInputBlur($event)\"\r\n (onClick)=\"onInputClick($event)\"\r\n (onChange)=\"onInputChange($event)\"\r\n (onFilter)=\"onInputFilter($event)\"\r\n [style]=\"{'width':widthField}\"\r\n [panelStyle]=\"{ width: widthField, overflow: 'auto' }\"\r\n styleClass=\"inputs\"\r\n >\r\n\r\n <ng-template\r\n *ngIf=\"showAddButton\"\r\n pTemplate=\"footer\"\r\n >\r\n <p-divider></p-divider>\r\n <div class=\"flex flex-wrap card-container p-1\">\r\n <div class=\"flex justify-content-center\">\r\n <button\r\n pButton\r\n label=\"Incluir\"\r\n pTooltip=\"Clique aqui para incluir um novo registro\"\r\n tooltipPosition=\"bottom\"\r\n icon=\"pi pi-plus\"\r\n class=\"p-button-rounded p-button-success mr-2\"\r\n (click)=\"addClick($event)\"\r\n ></button>\r\n </div>\r\n </div>\r\n </ng-template>\r\n\r\n\r\n\r\n\r\n <!-- :: -->\r\n\r\n <ng-template\r\n let-item\r\n pTemplate=\"item\"\r\n *ngIf=\"itemTemplate\"\r\n >\r\n <ng-container\r\n [ngTemplateOutlet]=\"itemTemplate\"\r\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\r\n >\r\n\r\n </ng-container>\r\n </ng-template>\r\n\r\n\r\n <ng-template\r\n let-selectedItem\r\n pTemplate=\"selectedItem\"\r\n *ngIf=\"selectedItemTemplate\"\r\n >\r\n <ng-container\r\n [ngTemplateOutlet]=\"selectedItemTemplate\"\r\n [ngTemplateOutletContext]=\"{ $implicit: selectedItem }\"\r\n >\r\n\r\n </ng-container>\r\n </ng-template>\r\n\r\n <!-- :: -->\r\n\r\n\r\n </p-dropdown>\r\n\r\n <kv-error [hasError]=\"hasControlError()\">{{ erroMessage() }}</kv-error>\r\n</span>\r\n<ng-content></ng-content>\r\n", styles: ["::ng-deep .p-dropdown .p-dropdown-label{display:flex;align-items:center}\n", "label{font-family:Inter var,Roboto,Arial,Helvetica,sans-serif}:host ::ng-deep .inputs{height:35px}*{margin:0}\n"] }]
30
- }], ctorParameters: function () { return [{ type: i1.ComponentService }, { type: i2.DialogService }]; }, propDecorators: { dropDowValue: [{
31
- type: Input
32
- }], itemTemplate: [{
33
- type: Input
34
- }], selectedItemTemplate: [{
35
- type: Input
36
- }] } });
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2lucHV0cy9kcm9wZG93bi9kcm9wZG93bi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZWV2by1jb21wb25lbnRzL3NyYy9saWIvaW5wdXRzL2Ryb3Bkb3duL2Ryb3Bkb3duLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUF1QixNQUFNLGVBQWUsQ0FBQztBQUd0RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQzs7Ozs7Ozs7Ozs7OztBQVExRixNQUFNLE9BQU8saUJBQWtCLFNBQVEscUJBQXFCO0lBQzFELFlBQ0UsZ0JBQWtDLEVBQ2xDLGFBQTRCO1FBQzVCLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRSxhQUFhLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBTVEsUUFBUTtRQUNmLElBQUksSUFBSSxDQUFDLFlBQVk7WUFDbkIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQ25DLENBQUM7K0dBZFUsaUJBQWlCO21HQUFqQixpQkFBaUIsNEpBRmpCLGtCQUFrQixDQUFDLGlCQUFpQixDQUFDLGlEQ1ZsRCxtN0VBMkZBOzs0RkQvRWEsaUJBQWlCO2tCQU43QixTQUFTOytCQUNFLGFBQWEsYUFHWixrQkFBa0IsbUJBQW1CO21JQVN2QyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csb0JBQW9CO3NCQUE1QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0LCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBEaWFsb2dTZXJ2aWNlIH0gZnJvbSAncHJpbWVuZy9keW5hbWljZGlhbG9nJztcclxuaW1wb3J0IHsgQ29tcG9uZW50U2VydmljZSB9IGZyb20gJy4uLy4uL2FwaS9zZXJ2aWNlcy9jb21wb25lbnQuc2VydmljZSc7XHJcbmltcG9ydCB7IENvbXBvbmVudFByb3ZpZGVycyB9IGZyb20gJy4uLy4uL2FwaS9oZWxwZXJzL2NvbXBvbmVudC1wcm92aWRlcnMnO1xyXG5pbXBvcnQgeyBCYXNlQ29tcG9uZW50RHJvcERvd24gfSBmcm9tICcuLi8uLi9hcGkvYmFzZS1jb21wb25lbnRzL2Jhc2UtY29tcG9uZW50LWRyb3Bkb3duJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAna3YtZHJvcGRvd24nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9kcm9wZG93bi5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZHJvcGRvd24uY29tcG9uZW50LnNjc3MnLCAnLi4vLi4vc3R5bGVzLWNvbXBvbmVudHMuc2NzcyddLFxyXG4gIHByb3ZpZGVyczogQ29tcG9uZW50UHJvdmlkZXJzKERyb3Bkb3duQ29tcG9uZW50KSxcclxufSlcclxuZXhwb3J0IGNsYXNzIERyb3Bkb3duQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudERyb3BEb3duIGltcGxlbWVudHMgT25Jbml0e1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgY29tcG9uZW50U2VydmljZTogQ29tcG9uZW50U2VydmljZSxcclxuICAgIGRpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2UpIHtcclxuICAgIHN1cGVyKGNvbXBvbmVudFNlcnZpY2UsIGRpYWxvZ1NlcnZpY2UpO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KCkgZHJvcERvd1ZhbHVlITogYW55O1xyXG4gIEBJbnB1dCgpIGl0ZW1UZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgQElucHV0KCkgc2VsZWN0ZWRJdGVtVGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuICBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmRyb3BEb3dWYWx1ZSlcclxuICAgICAgdGhpcy52YWx1ZSA9IHRoaXMuZHJvcERvd1ZhbHVlO1xyXG4gIH1cclxufVxyXG4iLCI8c3Bhbj5cclxuICA8a3YtbGFiZWxcclxuICAgIFtjb21wb25lbnRJZF09XCJjb21wb25lbnRJZFwiXHJcbiAgICBbbGFiZWxdPVwibGFiZWxcIlxyXG4gIC8+XHJcbiAgPHAtZHJvcGRvd25cclxuICAgIGFwcGVuZFRvPVwiYm9keVwiXHJcbiAgICBbY2xhc3NdPVwiYmFzZUlucHV0Q2xhc3NcIlxyXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgIFtmaWx0ZXJdPVwiZmlsdGVyXCJcclxuICAgIFtpbnB1dElkXT1cImNvbXBvbmVudElkXCJcclxuICAgIFsobmdNb2RlbCldPVwidmFsdWVcIlxyXG4gICAgW29wdGlvbnNdPVwiZmlsdGVyZWRPcHRpb25zXCJcclxuICAgIFtvcHRpb25MYWJlbF09XCJvcHRpb25MYWJlbFwiXHJcbiAgICBbb3B0aW9uVmFsdWVdPVwib3B0aW9uVmFsdWVcIlxyXG4gICAgW29wdGlvbkRpc2FibGVkXT1cIm9wdGlvbkRpc2FibGVkXCJcclxuICAgIFtncm91cF09XCJncm91cFwiXHJcbiAgICBbb3B0aW9uR3JvdXBMYWJlbF09XCJvcHRpb25Hcm91cExhYmVsXCJcclxuICAgIFtvcHRpb25Hcm91cENoaWxkcmVuXT1cIm9wdGlvbkdyb3VwQ2hpbGRyZW5cIlxyXG4gICAgW3Nob3dDbGVhcl09XCJzaG93Q2xlYXJcIlxyXG4gICAgW2xhenldPVwibGF6eVwiXHJcbiAgICBzY3JvbGxIZWlnaHQ9XCIyNTBweFwiXHJcbiAgICAob25CbHVyKT1cIm9uSW5wdXRCbHVyKCRldmVudClcIlxyXG4gICAgKG9uQ2xpY2spPVwib25JbnB1dENsaWNrKCRldmVudClcIlxyXG4gICAgKG9uQ2hhbmdlKT1cIm9uSW5wdXRDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAob25GaWx0ZXIpPVwib25JbnB1dEZpbHRlcigkZXZlbnQpXCJcclxuICAgIFtzdHlsZV09XCJ7J3dpZHRoJzp3aWR0aEZpZWxkfVwiXHJcbiAgICBbcGFuZWxTdHlsZV09XCJ7IHdpZHRoOiB3aWR0aEZpZWxkLCBvdmVyZmxvdzogJ2F1dG8nIH1cIlxyXG4gICAgc3R5bGVDbGFzcz1cImlucHV0c1wiXHJcbiAgPlxyXG5cclxuICAgIDxuZy10ZW1wbGF0ZVxyXG4gICAgICAqbmdJZj1cInNob3dBZGRCdXR0b25cIlxyXG4gICAgICBwVGVtcGxhdGU9XCJmb290ZXJcIlxyXG4gICAgPlxyXG4gICAgICA8cC1kaXZpZGVyPjwvcC1kaXZpZGVyPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXdyYXAgY2FyZC1jb250YWluZXIgcC0xXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlclwiPlxyXG4gICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICBwQnV0dG9uXHJcbiAgICAgICAgICAgIGxhYmVsPVwiSW5jbHVpclwiXHJcbiAgICAgICAgICAgIHBUb29sdGlwPVwiQ2xpcXVlIGFxdWkgcGFyYSBpbmNsdWlyIHVtIG5vdm8gcmVnaXN0cm9cIlxyXG4gICAgICAgICAgICB0b29sdGlwUG9zaXRpb249XCJib3R0b21cIlxyXG4gICAgICAgICAgICBpY29uPVwicGkgcGktcGx1c1wiXHJcbiAgICAgICAgICAgIGNsYXNzPVwicC1idXR0b24tcm91bmRlZCBwLWJ1dHRvbi1zdWNjZXNzIG1yLTJcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwiYWRkQ2xpY2soJGV2ZW50KVwiXHJcbiAgICAgICAgICA+PC9idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcblxyXG5cclxuXHJcbiAgICA8IS0tIDo6IC0tPlxyXG5cclxuICAgIDxuZy10ZW1wbGF0ZVxyXG4gICAgICBsZXQtaXRlbVxyXG4gICAgICBwVGVtcGxhdGU9XCJpdGVtXCJcclxuICAgICAgKm5nSWY9XCJpdGVtVGVtcGxhdGVcIlxyXG4gICAgPlxyXG4gICAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiaXRlbVRlbXBsYXRlXCJcclxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IGl0ZW0gfVwiXHJcbiAgICAgID5cclxuXHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcblxyXG4gICAgPG5nLXRlbXBsYXRlXHJcbiAgICAgIGxldC1zZWxlY3RlZEl0ZW1cclxuICAgICAgcFRlbXBsYXRlPVwic2VsZWN0ZWRJdGVtXCJcclxuICAgICAgKm5nSWY9XCJzZWxlY3RlZEl0ZW1UZW1wbGF0ZVwiXHJcbiAgICA+XHJcbiAgICAgIDxuZy1jb250YWluZXJcclxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJzZWxlY3RlZEl0ZW1UZW1wbGF0ZVwiXHJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBzZWxlY3RlZEl0ZW0gfVwiXHJcbiAgICAgID5cclxuXHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICA8IS0tIDo6IC0tPlxyXG5cclxuXHJcbiAgPC9wLWRyb3Bkb3duPlxyXG5cclxuICA8a3YtZXJyb3IgW2hhc0Vycm9yXT1cImhhc0NvbnRyb2xFcnJvcigpXCI+e3sgZXJyb01lc3NhZ2UoKSB9fTwva3YtZXJyb3I+XHJcbjwvc3Bhbj5cclxuPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4iXX0=
1
+ import { Component, Input } from '@angular/core';
2
+ import { ComponentProviders } from '../../api/helpers/component-providers';
3
+ import { BaseComponentDropDown } from '../../api/base-components/base-component-dropdown';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../../api/services/component.service";
6
+ import * as i2 from "primeng/dynamicdialog";
7
+ import * as i3 from "@angular/common";
8
+ import * as i4 from "@angular/forms";
9
+ import * as i5 from "../../api/components/error/error.component";
10
+ import * as i6 from "primeng/api";
11
+ import * as i7 from "primeng/button";
12
+ import * as i8 from "primeng/tooltip";
13
+ import * as i9 from "primeng/divider";
14
+ import * as i10 from "primeng/dropdown";
15
+ import * as i11 from "../../label/label.component";
16
+ export class DropdownComponent extends BaseComponentDropDown {
17
+ constructor(componentService, dialogService) {
18
+ super(componentService, dialogService);
19
+ }
20
+ ngOnInit() {
21
+ if (this.dropDowValue)
22
+ this.value = this.dropDowValue;
23
+ }
24
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DropdownComponent, deps: [{ token: i1.ComponentService }, { token: i2.DialogService }], target: i0.ɵɵFactoryTarget.Component }); }
25
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DropdownComponent, selector: "kv-dropdown", inputs: { dropDowValue: "dropDowValue", itemTemplate: "itemTemplate", selectedItemTemplate: "selectedItemTemplate" }, providers: ComponentProviders(DropdownComponent), usesInheritance: true, ngImport: i0, template: "<span>\n <kv-label\n [componentId]=\"componentId\"\n [label]=\"label\"\n />\n <p-dropdown\n appendTo=\"body\"\n [class]=\"baseInputClass\"\n [disabled]=\"disabled\"\n [filter]=\"filter\"\n [inputId]=\"componentId\"\n [(ngModel)]=\"value\"\n [options]=\"filteredOptions\"\n [optionLabel]=\"optionLabel\"\n [optionValue]=\"optionValue\"\n [optionDisabled]=\"optionDisabled\"\n [group]=\"group\"\n [optionGroupLabel]=\"optionGroupLabel\"\n [optionGroupChildren]=\"optionGroupChildren\"\n [showClear]=\"showClear\"\n [lazy]=\"lazy\"\n scrollHeight=\"250px\"\n (onBlur)=\"onInputBlur($event)\"\n (onClick)=\"onInputClick($event)\"\n (onChange)=\"onInputChange($event)\"\n (onFilter)=\"onInputFilter($event)\"\n [style]=\"{'width':widthField}\"\n [panelStyle]=\"{ width: widthField, overflow: 'auto' }\"\n styleClass=\"inputs\"\n >\n\n <ng-template\n *ngIf=\"showAddButton\"\n pTemplate=\"footer\"\n >\n <p-divider></p-divider>\n <div class=\"flex flex-wrap card-container p-1\">\n <div class=\"flex justify-content-center\">\n <button\n pButton\n label=\"Incluir\"\n pTooltip=\"Clique aqui para incluir um novo registro\"\n tooltipPosition=\"bottom\"\n icon=\"pi pi-plus\"\n class=\"p-button-rounded p-button-success mr-2\"\n (click)=\"addClick($event)\"\n ></button>\n </div>\n </div>\n </ng-template>\n\n\n\n\n <!-- :: -->\n\n <ng-template\n let-item\n pTemplate=\"item\"\n *ngIf=\"itemTemplate\"\n >\n <ng-container\n [ngTemplateOutlet]=\"itemTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n >\n\n </ng-container>\n </ng-template>\n\n\n <ng-template\n let-selectedItem\n pTemplate=\"selectedItem\"\n *ngIf=\"selectedItemTemplate\"\n >\n <ng-container\n [ngTemplateOutlet]=\"selectedItemTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: selectedItem }\"\n >\n\n </ng-container>\n </ng-template>\n\n <!-- :: -->\n\n\n </p-dropdown>\n\n <kv-error [hasError]=\"hasControlError()\">{{ erroMessage() }}</kv-error>\n</span>\n<ng-content></ng-content>\n", styles: ["::ng-deep .p-dropdown .p-dropdown-label{display:flex;align-items:center}\n", "label{font-family:Inter var,Roboto,Arial,Helvetica,sans-serif}:host ::ng-deep .inputs{height:35px}*{margin:0}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.ErrorComponent, selector: "kv-error", inputs: ["formControl", "hasError"] }, { kind: "directive", type: i6.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i7.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "directive", type: i8.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "component", type: i9.Divider, selector: "p-divider", inputs: ["style", "styleClass", "layout", "type", "align"] }, { kind: "component", type: i10.Dropdown, selector: "p-dropdown", inputs: ["id", "scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "filterPlaceholder", "filterLocale", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "component", type: i11.LabelComponent, selector: "kv-label", inputs: ["componentId", "label"] }] }); }
26
+ }
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DropdownComponent, decorators: [{
28
+ type: Component,
29
+ args: [{ selector: 'kv-dropdown', providers: ComponentProviders(DropdownComponent), template: "<span>\n <kv-label\n [componentId]=\"componentId\"\n [label]=\"label\"\n />\n <p-dropdown\n appendTo=\"body\"\n [class]=\"baseInputClass\"\n [disabled]=\"disabled\"\n [filter]=\"filter\"\n [inputId]=\"componentId\"\n [(ngModel)]=\"value\"\n [options]=\"filteredOptions\"\n [optionLabel]=\"optionLabel\"\n [optionValue]=\"optionValue\"\n [optionDisabled]=\"optionDisabled\"\n [group]=\"group\"\n [optionGroupLabel]=\"optionGroupLabel\"\n [optionGroupChildren]=\"optionGroupChildren\"\n [showClear]=\"showClear\"\n [lazy]=\"lazy\"\n scrollHeight=\"250px\"\n (onBlur)=\"onInputBlur($event)\"\n (onClick)=\"onInputClick($event)\"\n (onChange)=\"onInputChange($event)\"\n (onFilter)=\"onInputFilter($event)\"\n [style]=\"{'width':widthField}\"\n [panelStyle]=\"{ width: widthField, overflow: 'auto' }\"\n styleClass=\"inputs\"\n >\n\n <ng-template\n *ngIf=\"showAddButton\"\n pTemplate=\"footer\"\n >\n <p-divider></p-divider>\n <div class=\"flex flex-wrap card-container p-1\">\n <div class=\"flex justify-content-center\">\n <button\n pButton\n label=\"Incluir\"\n pTooltip=\"Clique aqui para incluir um novo registro\"\n tooltipPosition=\"bottom\"\n icon=\"pi pi-plus\"\n class=\"p-button-rounded p-button-success mr-2\"\n (click)=\"addClick($event)\"\n ></button>\n </div>\n </div>\n </ng-template>\n\n\n\n\n <!-- :: -->\n\n <ng-template\n let-item\n pTemplate=\"item\"\n *ngIf=\"itemTemplate\"\n >\n <ng-container\n [ngTemplateOutlet]=\"itemTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n >\n\n </ng-container>\n </ng-template>\n\n\n <ng-template\n let-selectedItem\n pTemplate=\"selectedItem\"\n *ngIf=\"selectedItemTemplate\"\n >\n <ng-container\n [ngTemplateOutlet]=\"selectedItemTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: selectedItem }\"\n >\n\n </ng-container>\n </ng-template>\n\n <!-- :: -->\n\n\n </p-dropdown>\n\n <kv-error [hasError]=\"hasControlError()\">{{ erroMessage() }}</kv-error>\n</span>\n<ng-content></ng-content>\n", styles: ["::ng-deep .p-dropdown .p-dropdown-label{display:flex;align-items:center}\n", "label{font-family:Inter var,Roboto,Arial,Helvetica,sans-serif}:host ::ng-deep .inputs{height:35px}*{margin:0}\n"] }]
30
+ }], ctorParameters: function () { return [{ type: i1.ComponentService }, { type: i2.DialogService }]; }, propDecorators: { dropDowValue: [{
31
+ type: Input
32
+ }], itemTemplate: [{
33
+ type: Input
34
+ }], selectedItemTemplate: [{
35
+ type: Input
36
+ }] } });
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2lucHV0cy9kcm9wZG93bi9kcm9wZG93bi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZWV2by1jb21wb25lbnRzL3NyYy9saWIvaW5wdXRzL2Ryb3Bkb3duL2Ryb3Bkb3duLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUF1QixNQUFNLGVBQWUsQ0FBQztBQUd0RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQzs7Ozs7Ozs7Ozs7OztBQVExRixNQUFNLE9BQU8saUJBQWtCLFNBQVEscUJBQXFCO0lBQzFELFlBQ0UsZ0JBQWtDLEVBQ2xDLGFBQTRCO1FBQzVCLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRSxhQUFhLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBTVEsUUFBUTtRQUNmLElBQUksSUFBSSxDQUFDLFlBQVk7WUFDbkIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQ25DLENBQUM7K0dBZFUsaUJBQWlCO21HQUFqQixpQkFBaUIsNEpBRmpCLGtCQUFrQixDQUFDLGlCQUFpQixDQUFDLGlEQ1ZsRCw2dkVBMkZBOzs0RkQvRWEsaUJBQWlCO2tCQU43QixTQUFTOytCQUNFLGFBQWEsYUFHWixrQkFBa0IsbUJBQW1CO21JQVN2QyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csb0JBQW9CO3NCQUE1QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0LCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGlhbG9nU2VydmljZSB9IGZyb20gJ3ByaW1lbmcvZHluYW1pY2RpYWxvZyc7XG5pbXBvcnQgeyBDb21wb25lbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vYXBpL3NlcnZpY2VzL2NvbXBvbmVudC5zZXJ2aWNlJztcbmltcG9ydCB7IENvbXBvbmVudFByb3ZpZGVycyB9IGZyb20gJy4uLy4uL2FwaS9oZWxwZXJzL2NvbXBvbmVudC1wcm92aWRlcnMnO1xuaW1wb3J0IHsgQmFzZUNvbXBvbmVudERyb3BEb3duIH0gZnJvbSAnLi4vLi4vYXBpL2Jhc2UtY29tcG9uZW50cy9iYXNlLWNvbXBvbmVudC1kcm9wZG93bic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2t2LWRyb3Bkb3duJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Ryb3Bkb3duLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZHJvcGRvd24uY29tcG9uZW50LnNjc3MnLCAnLi4vLi4vc3R5bGVzLWNvbXBvbmVudHMuc2NzcyddLFxuICBwcm92aWRlcnM6IENvbXBvbmVudFByb3ZpZGVycyhEcm9wZG93bkNvbXBvbmVudCksXG59KVxuZXhwb3J0IGNsYXNzIERyb3Bkb3duQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudERyb3BEb3duIGltcGxlbWVudHMgT25Jbml0e1xuICBjb25zdHJ1Y3RvcihcbiAgICBjb21wb25lbnRTZXJ2aWNlOiBDb21wb25lbnRTZXJ2aWNlLFxuICAgIGRpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2UpIHtcbiAgICBzdXBlcihjb21wb25lbnRTZXJ2aWNlLCBkaWFsb2dTZXJ2aWNlKTtcbiAgfVxuXG4gIEBJbnB1dCgpIGRyb3BEb3dWYWx1ZSE6IGFueTtcbiAgQElucHV0KCkgaXRlbVRlbXBsYXRlITogVGVtcGxhdGVSZWY8YW55PjtcbiAgQElucHV0KCkgc2VsZWN0ZWRJdGVtVGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIG92ZXJyaWRlIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmRyb3BEb3dWYWx1ZSlcbiAgICAgIHRoaXMudmFsdWUgPSB0aGlzLmRyb3BEb3dWYWx1ZTtcbiAgfVxufVxuIiwiPHNwYW4+XG4gIDxrdi1sYWJlbFxuICAgIFtjb21wb25lbnRJZF09XCJjb21wb25lbnRJZFwiXG4gICAgW2xhYmVsXT1cImxhYmVsXCJcbiAgLz5cbiAgPHAtZHJvcGRvd25cbiAgICBhcHBlbmRUbz1cImJvZHlcIlxuICAgIFtjbGFzc109XCJiYXNlSW5wdXRDbGFzc1wiXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICBbZmlsdGVyXT1cImZpbHRlclwiXG4gICAgW2lucHV0SWRdPVwiY29tcG9uZW50SWRcIlxuICAgIFsobmdNb2RlbCldPVwidmFsdWVcIlxuICAgIFtvcHRpb25zXT1cImZpbHRlcmVkT3B0aW9uc1wiXG4gICAgW29wdGlvbkxhYmVsXT1cIm9wdGlvbkxhYmVsXCJcbiAgICBbb3B0aW9uVmFsdWVdPVwib3B0aW9uVmFsdWVcIlxuICAgIFtvcHRpb25EaXNhYmxlZF09XCJvcHRpb25EaXNhYmxlZFwiXG4gICAgW2dyb3VwXT1cImdyb3VwXCJcbiAgICBbb3B0aW9uR3JvdXBMYWJlbF09XCJvcHRpb25Hcm91cExhYmVsXCJcbiAgICBbb3B0aW9uR3JvdXBDaGlsZHJlbl09XCJvcHRpb25Hcm91cENoaWxkcmVuXCJcbiAgICBbc2hvd0NsZWFyXT1cInNob3dDbGVhclwiXG4gICAgW2xhenldPVwibGF6eVwiXG4gICAgc2Nyb2xsSGVpZ2h0PVwiMjUwcHhcIlxuICAgIChvbkJsdXIpPVwib25JbnB1dEJsdXIoJGV2ZW50KVwiXG4gICAgKG9uQ2xpY2spPVwib25JbnB1dENsaWNrKCRldmVudClcIlxuICAgIChvbkNoYW5nZSk9XCJvbklucHV0Q2hhbmdlKCRldmVudClcIlxuICAgIChvbkZpbHRlcik9XCJvbklucHV0RmlsdGVyKCRldmVudClcIlxuICAgIFtzdHlsZV09XCJ7J3dpZHRoJzp3aWR0aEZpZWxkfVwiXG4gICAgW3BhbmVsU3R5bGVdPVwieyB3aWR0aDogd2lkdGhGaWVsZCwgb3ZlcmZsb3c6ICdhdXRvJyB9XCJcbiAgICBzdHlsZUNsYXNzPVwiaW5wdXRzXCJcbiAgPlxuXG4gICAgPG5nLXRlbXBsYXRlXG4gICAgICAqbmdJZj1cInNob3dBZGRCdXR0b25cIlxuICAgICAgcFRlbXBsYXRlPVwiZm9vdGVyXCJcbiAgICA+XG4gICAgICA8cC1kaXZpZGVyPjwvcC1kaXZpZGVyPlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC13cmFwIGNhcmQtY29udGFpbmVyIHAtMVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyXCI+XG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgcEJ1dHRvblxuICAgICAgICAgICAgbGFiZWw9XCJJbmNsdWlyXCJcbiAgICAgICAgICAgIHBUb29sdGlwPVwiQ2xpcXVlIGFxdWkgcGFyYSBpbmNsdWlyIHVtIG5vdm8gcmVnaXN0cm9cIlxuICAgICAgICAgICAgdG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tXCJcbiAgICAgICAgICAgIGljb249XCJwaSBwaS1wbHVzXCJcbiAgICAgICAgICAgIGNsYXNzPVwicC1idXR0b24tcm91bmRlZCBwLWJ1dHRvbi1zdWNjZXNzIG1yLTJcIlxuICAgICAgICAgICAgKGNsaWNrKT1cImFkZENsaWNrKCRldmVudClcIlxuICAgICAgICAgID48L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLXRlbXBsYXRlPlxuXG5cblxuXG4gICAgPCEtLSA6OiAtLT5cblxuICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgbGV0LWl0ZW1cbiAgICAgIHBUZW1wbGF0ZT1cIml0ZW1cIlxuICAgICAgKm5nSWY9XCJpdGVtVGVtcGxhdGVcIlxuICAgID5cbiAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiaXRlbVRlbXBsYXRlXCJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBpdGVtIH1cIlxuICAgICAgPlxuXG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLXRlbXBsYXRlPlxuXG5cbiAgICA8bmctdGVtcGxhdGVcbiAgICAgIGxldC1zZWxlY3RlZEl0ZW1cbiAgICAgIHBUZW1wbGF0ZT1cInNlbGVjdGVkSXRlbVwiXG4gICAgICAqbmdJZj1cInNlbGVjdGVkSXRlbVRlbXBsYXRlXCJcbiAgICA+XG4gICAgICA8bmctY29udGFpbmVyXG4gICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInNlbGVjdGVkSXRlbVRlbXBsYXRlXCJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBzZWxlY3RlZEl0ZW0gfVwiXG4gICAgICA+XG5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICA8IS0tIDo6IC0tPlxuXG5cbiAgPC9wLWRyb3Bkb3duPlxuXG4gIDxrdi1lcnJvciBbaGFzRXJyb3JdPVwiaGFzQ29udHJvbEVycm9yKClcIj57eyBlcnJvTWVzc2FnZSgpIH19PC9rdi1lcnJvcj5cbjwvc3Bhbj5cbjxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiJdfQ==
@@ -1,88 +1,88 @@
1
- import { Component, EventEmitter, Input, Output, } from '@angular/core';
2
- import { ComponentProviders } from '../../api/helpers/component-providers';
3
- import { BaseComponentInput } from '../../api/base-components/base-component-input';
4
- import Quill from 'quill';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "../../api/services/component.service";
7
- import * as i2 from "@angular/forms";
8
- export class EditorComponent extends BaseComponentInput {
9
- /**
10
- *
11
- */
12
- constructor(componentService) {
13
- super(componentService);
14
- /**
15
- * @type {boolean}
16
- * @description
17
- * Esse item define se o editor e somente para leitura
18
- */
19
- this.readonly = false;
20
- /**
21
- * @type {boolean}
22
- * @description
23
- * Esse item define o tamanho do canva
24
- */
25
- this.canvaHeigth = '380px';
26
- this.debug = false;
27
- /**
28
- * @description Executado a cada iteração
29
- */
30
- this.onTextChange = new EventEmitter();
31
- /**
32
- * @description Executado a cada seleção
33
- */
34
- this.onSelectionChange = new EventEmitter();
35
- }
36
- ngOnInit() {
37
- const ColorClass = Quill.import('attributors/class/color');
38
- const ColorStyle = Quill.import('attributors/style/color');
39
- const SizeStyle = Quill.import('attributors/style/size');
40
- Quill.register(ColorClass, true);
41
- Quill.register(SizeStyle, true);
42
- Quill.register(ColorStyle, true);
43
- const Font = Quill.import('formats/font');
44
- Font.whitelist = ['monospace', 'roboto', 'serif'];
45
- Quill.register(Font, true);
46
- var Size = Quill.import('attributors/style/size');
47
- Size.whitelist = ['15px', '20px', '30px', '40px', '50px', '70px', '90px'];
48
- Quill.register(Size, true);
49
- this.quill = new Quill('#kv-editor', {
50
- theme: 'snow',
51
- modules: {
52
- toolbar: '#kv-editor-toolbar',
53
- },
54
- placeholder: this.label ? this.label : '',
55
- debug: this.debug,
56
- });
57
- this.quill.on('text-change', (delta, oldContents, source) => {
58
- this.writeValue(this.quill.root.innerHTML);
59
- console.log();
60
- this.onTextChange.emit({ delta: delta, oldContents: oldContents, source: source });
61
- });
62
- this.quill.on('selection-change', (range, oldRange, source) => {
63
- this.onTouched();
64
- this.onSelectionChange.emit({
65
- range: range,
66
- oldRange: oldRange,
67
- source: source
68
- });
69
- });
70
- }
71
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditorComponent, deps: [{ token: i1.ComponentService }], target: i0.ɵɵFactoryTarget.Component }); }
72
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EditorComponent, selector: "kv-editor", inputs: { readonly: "readonly", canvaHeigth: "canvaHeigth", debug: "debug" }, outputs: { onTextChange: "onTextChange", onSelectionChange: "onSelectionChange" }, providers: ComponentProviders(EditorComponent), usesInheritance: true, ngImport: i0, template: "\r\n\r\n\r\n<div class=\"kv-editor-container\">\r\n\r\n<!-- Include stylesheet -->\r\n<link href=\"https://cdn.jsdelivr.net/npm/quill@2.0.0-rc.2/dist/quill.snow.css\" rel=\"stylesheet\" />\r\n\r\n\r\n\r\n<div #editor id=\"kv-editor-toolbar\" >\r\n <span class=\"ql-formats\">\r\n <select class=\"ql-font\">\r\n <option selected>Sans Serif</option>\r\n <option value=\"roboto\">Roboto</option>\r\n <option value=\"monospace\">Monospace</option>\r\n <option value=\"serif\">Serif</option>\r\n\r\n </select>\r\n\r\n <select class=\"ql-header\">\r\n <option value=\"1\">Titulo</option>\r\n <option value=\"2\">Subtitulo</option>\r\n <option selected>Normal</option>\r\n </select>\r\n\r\n <span class=\"ql-format-group\">\r\n <select title=\"Size\" class=\"ql-size\">\r\n <option value=\"15px\">15px</option>\r\n <option value=\"20px\">20px</option>\r\n <option value=\"30px\">30px</option>\r\n <option value=\"40px\">40px</option>\r\n <option value=\"50px\">50px</option>\r\n <option value=\"70px\">70px</option>\r\n <option value=\"90px\">90px</option>\r\n\r\n </select>\r\n </span>\r\n\r\n </span>\r\n\r\n <span class=\"ql-formats\">\r\n <button class=\"ql-bold\"></button>\r\n <button class=\"ql-italic\"></button>\r\n <button class=\"ql-underline\"></button>\r\n <button class=\"ql-strike\"></button>\r\n </span>\r\n <span class=\"ql-formats\">\r\n <select class=\"ql-color\"></select>\r\n <select class=\"ql-background\"></select>\r\n </span>\r\n <span class=\"ql-formats\">\r\n <button class=\"ql-script\" value=\"sub\"></button>\r\n <button class=\"ql-script\" value=\"super\"></button>\r\n </span>\r\n <span class=\"ql-formats\">\r\n <button class=\"ql-header\" value=\"1\"></button>\r\n <button class=\"ql-header\" value=\"2\"></button>\r\n <button class=\"ql-blockquote\"></button>\r\n <button class=\"ql-code-block\"></button>\r\n </span>\r\n <span class=\"ql-formats\">\r\n <button class=\"ql-list\" value=\"ordered\"></button>\r\n <button class=\"ql-list\" value=\"bullet\"></button>\r\n <button class=\"ql-indent\" value=\"-1\"></button>\r\n <button class=\"ql-indent\" value=\"+1\"></button>\r\n </span>\r\n <span class=\"ql-formats\">\r\n <button class=\"ql-direction\" value=\"rtl\"></button>\r\n <select class=\"ql-align\"></select>\r\n </span>\r\n <span class=\"ql-formats\">\r\n <button class=\"ql-link\"></button>\r\n <button class=\"ql-image\"></button>\r\n <button class=\"ql-video\"></button>\r\n </span>\r\n <span class=\"ql-formats\">\r\n <button class=\"ql-clean\"></button>\r\n </span>\r\n</div>\r\n<div id=\"kv-editor\" [style.height]=\"canvaHeigth\">\r\n</div>\r\n<!-- Include the Quill library -->\r\n<script src=\"https://cdn.jsdelivr.net/npm/quill@2.0.0-rc.2/dist/quill.js\"></script>\r\n\r\n\r\n<link href=\"https://unpkg.com/quill@1.3.7/dist/quill.snow.css\" rel=\"stylesheet\" />\r\n<link href=\"https://fonts.googleapis.com/css?family=Roboto\" rel=\"stylesheet\">\r\n\r\n\r\n<script src=\"https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/highlight.min.js\"></script>\r\n<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/atom-one-dark.min.css\" />\r\n<script src=\"https://cdn.jsdelivr.net/npm/katex@0.16.9/dist/katex.min.js\"></script>\r\n<link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/katex@0.16.9/dist/katex.min.css\" />\r\n<link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/quill@2.0.0-rc.2/dist/quill.snow.css\" />\r\n<script src=\"https://cdn.jsdelivr.net/npm/quill@2.0.0-rc.2/dist/quill.js\"></script>\r\n</div>\r\n", styles: [":host ::ng-deep .ql-font-roboto{font-family:Roboto,sans-serif}\n"], dependencies: [{ kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }] }); }
73
- }
74
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditorComponent, decorators: [{
75
- type: Component,
76
- args: [{ selector: 'kv-editor', providers: ComponentProviders(EditorComponent), template: "\r\n\r\n\r\n<div class=\"kv-editor-container\">\r\n\r\n<!-- Include stylesheet -->\r\n<link href=\"https://cdn.jsdelivr.net/npm/quill@2.0.0-rc.2/dist/quill.snow.css\" rel=\"stylesheet\" />\r\n\r\n\r\n\r\n<div #editor id=\"kv-editor-toolbar\" >\r\n <span class=\"ql-formats\">\r\n <select class=\"ql-font\">\r\n <option selected>Sans Serif</option>\r\n <option value=\"roboto\">Roboto</option>\r\n <option value=\"monospace\">Monospace</option>\r\n <option value=\"serif\">Serif</option>\r\n\r\n </select>\r\n\r\n <select class=\"ql-header\">\r\n <option value=\"1\">Titulo</option>\r\n <option value=\"2\">Subtitulo</option>\r\n <option selected>Normal</option>\r\n </select>\r\n\r\n <span class=\"ql-format-group\">\r\n <select title=\"Size\" class=\"ql-size\">\r\n <option value=\"15px\">15px</option>\r\n <option value=\"20px\">20px</option>\r\n <option value=\"30px\">30px</option>\r\n <option value=\"40px\">40px</option>\r\n <option value=\"50px\">50px</option>\r\n <option value=\"70px\">70px</option>\r\n <option value=\"90px\">90px</option>\r\n\r\n </select>\r\n </span>\r\n\r\n </span>\r\n\r\n <span class=\"ql-formats\">\r\n <button class=\"ql-bold\"></button>\r\n <button class=\"ql-italic\"></button>\r\n <button class=\"ql-underline\"></button>\r\n <button class=\"ql-strike\"></button>\r\n </span>\r\n <span class=\"ql-formats\">\r\n <select class=\"ql-color\"></select>\r\n <select class=\"ql-background\"></select>\r\n </span>\r\n <span class=\"ql-formats\">\r\n <button class=\"ql-script\" value=\"sub\"></button>\r\n <button class=\"ql-script\" value=\"super\"></button>\r\n </span>\r\n <span class=\"ql-formats\">\r\n <button class=\"ql-header\" value=\"1\"></button>\r\n <button class=\"ql-header\" value=\"2\"></button>\r\n <button class=\"ql-blockquote\"></button>\r\n <button class=\"ql-code-block\"></button>\r\n </span>\r\n <span class=\"ql-formats\">\r\n <button class=\"ql-list\" value=\"ordered\"></button>\r\n <button class=\"ql-list\" value=\"bullet\"></button>\r\n <button class=\"ql-indent\" value=\"-1\"></button>\r\n <button class=\"ql-indent\" value=\"+1\"></button>\r\n </span>\r\n <span class=\"ql-formats\">\r\n <button class=\"ql-direction\" value=\"rtl\"></button>\r\n <select class=\"ql-align\"></select>\r\n </span>\r\n <span class=\"ql-formats\">\r\n <button class=\"ql-link\"></button>\r\n <button class=\"ql-image\"></button>\r\n <button class=\"ql-video\"></button>\r\n </span>\r\n <span class=\"ql-formats\">\r\n <button class=\"ql-clean\"></button>\r\n </span>\r\n</div>\r\n<div id=\"kv-editor\" [style.height]=\"canvaHeigth\">\r\n</div>\r\n<!-- Include the Quill library -->\r\n<script src=\"https://cdn.jsdelivr.net/npm/quill@2.0.0-rc.2/dist/quill.js\"></script>\r\n\r\n\r\n<link href=\"https://unpkg.com/quill@1.3.7/dist/quill.snow.css\" rel=\"stylesheet\" />\r\n<link href=\"https://fonts.googleapis.com/css?family=Roboto\" rel=\"stylesheet\">\r\n\r\n\r\n<script src=\"https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/highlight.min.js\"></script>\r\n<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/atom-one-dark.min.css\" />\r\n<script src=\"https://cdn.jsdelivr.net/npm/katex@0.16.9/dist/katex.min.js\"></script>\r\n<link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/katex@0.16.9/dist/katex.min.css\" />\r\n<link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/quill@2.0.0-rc.2/dist/quill.snow.css\" />\r\n<script src=\"https://cdn.jsdelivr.net/npm/quill@2.0.0-rc.2/dist/quill.js\"></script>\r\n</div>\r\n", styles: [":host ::ng-deep .ql-font-roboto{font-family:Roboto,sans-serif}\n"] }]
77
- }], ctorParameters: function () { return [{ type: i1.ComponentService }]; }, propDecorators: { readonly: [{
78
- type: Input
79
- }], canvaHeigth: [{
80
- type: Input
81
- }], debug: [{
82
- type: Input
83
- }], onTextChange: [{
84
- type: Output
85
- }], onSelectionChange: [{
86
- type: Output
87
- }] } });
88
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9pbnB1dHMvZWRpdG9yL2VkaXRvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZWV2by1jb21wb25lbnRzL3NyYy9saWIvaW5wdXRzL2VkaXRvci9lZGl0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUdwRixPQUFPLEtBQStCLE1BQU0sT0FBTyxDQUFDOzs7O0FBUXBELE1BQU0sT0FBTyxlQUFnQixTQUFRLGtCQUEwQjtJQUM3RDs7T0FFRztJQUNILFlBQ0UsZ0JBQWtDO1FBQ2xDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRzFCOzs7O1dBSUc7UUFDTSxhQUFRLEdBQVksS0FBSyxDQUFDO1FBRW5DOzs7O1dBSUc7UUFDTSxnQkFBVyxHQUFXLE9BQU8sQ0FBQztRQUU5QixVQUFLLEdBQVksS0FBSyxDQUFDO1FBRWhDOztXQUVHO1FBQ08saUJBQVksR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUUvRDs7V0FFRztRQUNPLHNCQUFpQixHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO0lBMUJwRSxDQUFDO0lBK0JRLFFBQVE7UUFDZixNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLHlCQUF5QixDQUFDLENBQUM7UUFDM0QsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBRTNELE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQztRQUV6RCxLQUFLLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNqQyxLQUFLLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNoQyxLQUFLLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUdqQyxNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQzFDLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxXQUFXLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ2xELEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRTNCLElBQUksSUFBSSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQztRQUNsRCxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDMUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFFM0IsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLEtBQUssQ0FBQyxZQUFZLEVBQUU7WUFDbkMsS0FBSyxFQUFFLE1BQU07WUFDYixPQUFPLEVBQUU7Z0JBQ1AsT0FBTyxFQUFFLG9CQUFvQjthQUM5QjtZQUNELFdBQVcsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ3pDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztTQUNsQixDQUFDLENBQUM7UUFJSCxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxLQUFVLEVBQUUsV0FBZ0IsRUFBRSxNQUFlLEVBQUUsRUFBRTtZQUM3RSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQzNDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQTtZQUNiLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUMsS0FBSyxFQUFDLEtBQUssRUFBRSxXQUFXLEVBQUMsV0FBVyxFQUFFLE1BQU0sRUFBQyxNQUFNLEVBQUMsQ0FBQyxDQUFBO1FBQy9FLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxLQUFrQixFQUFFLFFBQXFCLEVBQUUsTUFBZSxFQUFFLEVBQUU7WUFDL0YsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUM7Z0JBQzFCLEtBQUssRUFBRSxLQUFLO2dCQUNaLFFBQVEsRUFBRSxRQUFRO2dCQUNsQixNQUFNLEVBQUUsTUFBTTthQUNmLENBQUMsQ0FBQTtRQUNKLENBQUMsQ0FBQyxDQUFDO0lBRUwsQ0FBQzsrR0FuRlUsZUFBZTttR0FBZixlQUFlLHFNQUZmLGtCQUFrQixDQUFDLGVBQWUsQ0FBQyxpRENqQmhELDhuSEFpR0E7OzRGRDlFYSxlQUFlO2tCQU4zQixTQUFTOytCQUNFLFdBQVcsYUFHVixrQkFBa0IsaUJBQWlCO3VHQWdCckMsUUFBUTtzQkFBaEIsS0FBSztnQkFPRyxXQUFXO3NCQUFuQixLQUFLO2dCQUVHLEtBQUs7c0JBQWIsS0FBSztnQkFLSSxZQUFZO3NCQUFyQixNQUFNO2dCQUtHLGlCQUFpQjtzQkFBMUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIERvQ2hlY2ssXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE91dHB1dCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tcG9uZW50UHJvdmlkZXJzIH0gZnJvbSAnLi4vLi4vYXBpL2hlbHBlcnMvY29tcG9uZW50LXByb3ZpZGVycyc7XHJcbmltcG9ydCB7IEJhc2VDb21wb25lbnRJbnB1dCB9IGZyb20gJy4uLy4uL2FwaS9iYXNlLWNvbXBvbmVudHMvYmFzZS1jb21wb25lbnQtaW5wdXQnO1xyXG5pbXBvcnQgeyBDb21wb25lbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vYXBpL3NlcnZpY2VzL2NvbXBvbmVudC5zZXJ2aWNlJztcclxuXHJcbmltcG9ydCBRdWlsbCwgeyBSYW5nZVN0YXRpYywgU291cmNlcyB9IGZyb20gJ3F1aWxsJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAna3YtZWRpdG9yJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZWRpdG9yLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9lZGl0b3IuY29tcG9uZW50LnNjc3MnXSxcclxuICBwcm92aWRlcnM6IENvbXBvbmVudFByb3ZpZGVycyhFZGl0b3JDb21wb25lbnQpLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRWRpdG9yQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudElucHV0PHN0cmluZz4gIHtcclxuICAvKipcclxuICAgKlxyXG4gICAqL1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgY29tcG9uZW50U2VydmljZTogQ29tcG9uZW50U2VydmljZSkge1xyXG4gICAgc3VwZXIoY29tcG9uZW50U2VydmljZSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cclxuICAgKiBAZGVzY3JpcHRpb25cclxuICAgKiBFc3NlIGl0ZW0gZGVmaW5lIHNlIG8gZWRpdG9yIGUgc29tZW50ZSBwYXJhIGxlaXR1cmFcclxuICAgKi9cclxuICBASW5wdXQoKSByZWFkb25seTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cclxuICAgKiBAZGVzY3JpcHRpb25cclxuICAgKiBFc3NlIGl0ZW0gZGVmaW5lIG8gdGFtYW5obyBkbyBjYW52YVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGNhbnZhSGVpZ3RoOiBzdHJpbmcgPSAnMzgwcHgnO1xyXG5cclxuICBASW5wdXQoKSBkZWJ1ZzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiAgQGRlc2NyaXB0aW9uIEV4ZWN1dGFkbyBhIGNhZGEgaXRlcmHDp8Ojb1xyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBvblRleHRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAvKipcclxuICAgKiAgQGRlc2NyaXB0aW9uIEV4ZWN1dGFkbyBhIGNhZGEgc2VsZcOnw6NvXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIG9uU2VsZWN0aW9uQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcblxyXG4gIHF1aWxsITogUXVpbGw7XHJcblxyXG4gIG92ZXJyaWRlIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgY29uc3QgQ29sb3JDbGFzcyA9IFF1aWxsLmltcG9ydCgnYXR0cmlidXRvcnMvY2xhc3MvY29sb3InKTtcclxuICAgIGNvbnN0IENvbG9yU3R5bGUgPSBRdWlsbC5pbXBvcnQoJ2F0dHJpYnV0b3JzL3N0eWxlL2NvbG9yJyk7XHJcblxyXG4gICAgY29uc3QgU2l6ZVN0eWxlID0gUXVpbGwuaW1wb3J0KCdhdHRyaWJ1dG9ycy9zdHlsZS9zaXplJyk7XHJcblxyXG4gICAgUXVpbGwucmVnaXN0ZXIoQ29sb3JDbGFzcywgdHJ1ZSk7XHJcbiAgICBRdWlsbC5yZWdpc3RlcihTaXplU3R5bGUsIHRydWUpO1xyXG4gICAgUXVpbGwucmVnaXN0ZXIoQ29sb3JTdHlsZSwgdHJ1ZSk7XHJcblxyXG5cclxuICAgIGNvbnN0IEZvbnQgPSBRdWlsbC5pbXBvcnQoJ2Zvcm1hdHMvZm9udCcpO1xyXG4gICAgRm9udC53aGl0ZWxpc3QgPSBbJ21vbm9zcGFjZScsICdyb2JvdG8nLCAnc2VyaWYnXTtcclxuICAgIFF1aWxsLnJlZ2lzdGVyKEZvbnQsIHRydWUpO1xyXG5cclxuICAgIHZhciBTaXplID0gUXVpbGwuaW1wb3J0KCdhdHRyaWJ1dG9ycy9zdHlsZS9zaXplJyk7XHJcbiAgICBTaXplLndoaXRlbGlzdCA9IFsnMTVweCcsICcyMHB4JywgJzMwcHgnLCAnNDBweCcsICc1MHB4JywgJzcwcHgnLCAnOTBweCddO1xyXG4gICAgUXVpbGwucmVnaXN0ZXIoU2l6ZSwgdHJ1ZSk7XHJcblxyXG4gICAgdGhpcy5xdWlsbCA9IG5ldyBRdWlsbCgnI2t2LWVkaXRvcicsIHtcclxuICAgICAgdGhlbWU6ICdzbm93JyxcclxuICAgICAgbW9kdWxlczoge1xyXG4gICAgICAgIHRvb2xiYXI6ICcja3YtZWRpdG9yLXRvb2xiYXInLFxyXG4gICAgICB9LFxyXG4gICAgICBwbGFjZWhvbGRlcjogdGhpcy5sYWJlbCA/IHRoaXMubGFiZWwgOiAnJyxcclxuICAgICAgZGVidWc6IHRoaXMuZGVidWcsXHJcbiAgICB9KTtcclxuXHJcblxyXG5cclxuICAgIHRoaXMucXVpbGwub24oJ3RleHQtY2hhbmdlJywgKGRlbHRhOiBhbnksIG9sZENvbnRlbnRzOiBhbnksIHNvdXJjZTogU291cmNlcykgPT4ge1xyXG4gICAgICB0aGlzLndyaXRlVmFsdWUodGhpcy5xdWlsbC5yb290LmlubmVySFRNTCk7XHJcbiAgICAgIGNvbnNvbGUubG9nKClcclxuICAgICAgdGhpcy5vblRleHRDaGFuZ2UuZW1pdCh7ZGVsdGE6ZGVsdGEsIG9sZENvbnRlbnRzOm9sZENvbnRlbnRzLCBzb3VyY2U6c291cmNlfSlcclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMucXVpbGwub24oJ3NlbGVjdGlvbi1jaGFuZ2UnLCAocmFuZ2U6IFJhbmdlU3RhdGljLCBvbGRSYW5nZTogUmFuZ2VTdGF0aWMsIHNvdXJjZTogU291cmNlcykgPT4ge1xyXG4gICAgICB0aGlzLm9uVG91Y2hlZCgpO1xyXG4gICAgICB0aGlzLm9uU2VsZWN0aW9uQ2hhbmdlLmVtaXQoe1xyXG4gICAgICAgIHJhbmdlOiByYW5nZSxcclxuICAgICAgICBvbGRSYW5nZTogb2xkUmFuZ2UsXHJcbiAgICAgICAgc291cmNlOiBzb3VyY2VcclxuICAgICAgfSlcclxuICAgIH0pO1xyXG5cclxuICB9XHJcblxyXG5cclxufVxyXG4iLCJcclxuXHJcblxyXG48ZGl2IGNsYXNzPVwia3YtZWRpdG9yLWNvbnRhaW5lclwiPlxyXG5cclxuPCEtLSBJbmNsdWRlIHN0eWxlc2hlZXQgLS0+XHJcbjxsaW5rIGhyZWY9XCJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL3F1aWxsQDIuMC4wLXJjLjIvZGlzdC9xdWlsbC5zbm93LmNzc1wiIHJlbD1cInN0eWxlc2hlZXRcIiAvPlxyXG5cclxuXHJcblxyXG48ZGl2ICNlZGl0b3IgaWQ9XCJrdi1lZGl0b3ItdG9vbGJhclwiID5cclxuICA8c3BhbiBjbGFzcz1cInFsLWZvcm1hdHNcIj5cclxuICAgIDxzZWxlY3QgY2xhc3M9XCJxbC1mb250XCI+XHJcbiAgICAgIDxvcHRpb24gc2VsZWN0ZWQ+U2FucyBTZXJpZjwvb3B0aW9uPlxyXG4gICAgICA8b3B0aW9uIHZhbHVlPVwicm9ib3RvXCI+Um9ib3RvPC9vcHRpb24+XHJcbiAgICAgIDxvcHRpb24gdmFsdWU9XCJtb25vc3BhY2VcIj5Nb25vc3BhY2U8L29wdGlvbj5cclxuICAgICAgPG9wdGlvbiB2YWx1ZT1cInNlcmlmXCI+U2VyaWY8L29wdGlvbj5cclxuXHJcbiAgICA8L3NlbGVjdD5cclxuXHJcbiAgICA8c2VsZWN0IGNsYXNzPVwicWwtaGVhZGVyXCI+XHJcbiAgICAgIDxvcHRpb24gdmFsdWU9XCIxXCI+VGl0dWxvPC9vcHRpb24+XHJcbiAgICAgIDxvcHRpb24gdmFsdWU9XCIyXCI+U3VidGl0dWxvPC9vcHRpb24+XHJcbiAgICAgIDxvcHRpb24gc2VsZWN0ZWQ+Tm9ybWFsPC9vcHRpb24+XHJcbiAgPC9zZWxlY3Q+XHJcblxyXG4gIDxzcGFuIGNsYXNzPVwicWwtZm9ybWF0LWdyb3VwXCI+XHJcbiAgICA8c2VsZWN0IHRpdGxlPVwiU2l6ZVwiIGNsYXNzPVwicWwtc2l6ZVwiPlxyXG4gICAgICA8b3B0aW9uIHZhbHVlPVwiMTVweFwiPjE1cHg8L29wdGlvbj5cclxuICAgICAgPG9wdGlvbiB2YWx1ZT1cIjIwcHhcIj4yMHB4PC9vcHRpb24+XHJcbiAgICAgIDxvcHRpb24gdmFsdWU9XCIzMHB4XCI+MzBweDwvb3B0aW9uPlxyXG4gICAgICA8b3B0aW9uIHZhbHVlPVwiNDBweFwiPjQwcHg8L29wdGlvbj5cclxuICAgICAgPG9wdGlvbiB2YWx1ZT1cIjUwcHhcIj41MHB4PC9vcHRpb24+XHJcbiAgICAgIDxvcHRpb24gdmFsdWU9XCI3MHB4XCI+NzBweDwvb3B0aW9uPlxyXG4gICAgICA8b3B0aW9uIHZhbHVlPVwiOTBweFwiPjkwcHg8L29wdGlvbj5cclxuXHJcbiAgICA8L3NlbGVjdD5cclxuICA8L3NwYW4+XHJcblxyXG4gIDwvc3Bhbj5cclxuXHJcbiAgPHNwYW4gY2xhc3M9XCJxbC1mb3JtYXRzXCI+XHJcbiAgICA8YnV0dG9uIGNsYXNzPVwicWwtYm9sZFwiPjwvYnV0dG9uPlxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cInFsLWl0YWxpY1wiPjwvYnV0dG9uPlxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cInFsLXVuZGVybGluZVwiPjwvYnV0dG9uPlxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cInFsLXN0cmlrZVwiPjwvYnV0dG9uPlxyXG4gIDwvc3Bhbj5cclxuICA8c3BhbiBjbGFzcz1cInFsLWZvcm1hdHNcIj5cclxuICAgIDxzZWxlY3QgY2xhc3M9XCJxbC1jb2xvclwiPjwvc2VsZWN0PlxyXG4gICAgPHNlbGVjdCBjbGFzcz1cInFsLWJhY2tncm91bmRcIj48L3NlbGVjdD5cclxuICA8L3NwYW4+XHJcbiAgPHNwYW4gY2xhc3M9XCJxbC1mb3JtYXRzXCI+XHJcbiAgICA8YnV0dG9uIGNsYXNzPVwicWwtc2NyaXB0XCIgdmFsdWU9XCJzdWJcIj48L2J1dHRvbj5cclxuICAgIDxidXR0b24gY2xhc3M9XCJxbC1zY3JpcHRcIiB2YWx1ZT1cInN1cGVyXCI+PC9idXR0b24+XHJcbiAgPC9zcGFuPlxyXG4gIDxzcGFuIGNsYXNzPVwicWwtZm9ybWF0c1wiPlxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cInFsLWhlYWRlclwiIHZhbHVlPVwiMVwiPjwvYnV0dG9uPlxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cInFsLWhlYWRlclwiIHZhbHVlPVwiMlwiPjwvYnV0dG9uPlxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cInFsLWJsb2NrcXVvdGVcIj48L2J1dHRvbj5cclxuICAgIDxidXR0b24gY2xhc3M9XCJxbC1jb2RlLWJsb2NrXCI+PC9idXR0b24+XHJcbiAgPC9zcGFuPlxyXG4gIDxzcGFuIGNsYXNzPVwicWwtZm9ybWF0c1wiPlxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cInFsLWxpc3RcIiB2YWx1ZT1cIm9yZGVyZWRcIj48L2J1dHRvbj5cclxuICAgIDxidXR0b24gY2xhc3M9XCJxbC1saXN0XCIgdmFsdWU9XCJidWxsZXRcIj48L2J1dHRvbj5cclxuICAgIDxidXR0b24gY2xhc3M9XCJxbC1pbmRlbnRcIiB2YWx1ZT1cIi0xXCI+PC9idXR0b24+XHJcbiAgICA8YnV0dG9uIGNsYXNzPVwicWwtaW5kZW50XCIgdmFsdWU9XCIrMVwiPjwvYnV0dG9uPlxyXG4gIDwvc3Bhbj5cclxuICA8c3BhbiBjbGFzcz1cInFsLWZvcm1hdHNcIj5cclxuICAgIDxidXR0b24gY2xhc3M9XCJxbC1kaXJlY3Rpb25cIiB2YWx1ZT1cInJ0bFwiPjwvYnV0dG9uPlxyXG4gICAgPHNlbGVjdCBjbGFzcz1cInFsLWFsaWduXCI+PC9zZWxlY3Q+XHJcbiAgPC9zcGFuPlxyXG4gIDxzcGFuIGNsYXNzPVwicWwtZm9ybWF0c1wiPlxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cInFsLWxpbmtcIj48L2J1dHRvbj5cclxuICAgIDxidXR0b24gY2xhc3M9XCJxbC1pbWFnZVwiPjwvYnV0dG9uPlxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cInFsLXZpZGVvXCI+PC9idXR0b24+XHJcbiAgPC9zcGFuPlxyXG4gIDxzcGFuIGNsYXNzPVwicWwtZm9ybWF0c1wiPlxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cInFsLWNsZWFuXCI+PC9idXR0b24+XHJcbiAgPC9zcGFuPlxyXG48L2Rpdj5cclxuPGRpdiBpZD1cImt2LWVkaXRvclwiIFtzdHlsZS5oZWlnaHRdPVwiY2FudmFIZWlndGhcIj5cclxuPC9kaXY+XHJcbjwhLS0gSW5jbHVkZSB0aGUgUXVpbGwgbGlicmFyeSAtLT5cclxuPHNjcmlwdCBzcmM9XCJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL3F1aWxsQDIuMC4wLXJjLjIvZGlzdC9xdWlsbC5qc1wiPjwvc2NyaXB0PlxyXG5cclxuXHJcbjxsaW5rIGhyZWY9XCJodHRwczovL3VucGtnLmNvbS9xdWlsbEAxLjMuNy9kaXN0L3F1aWxsLnNub3cuY3NzXCIgcmVsPVwic3R5bGVzaGVldFwiIC8+XHJcbjxsaW5rIGhyZWY9XCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9Um9ib3RvXCIgcmVsPVwic3R5bGVzaGVldFwiPlxyXG5cclxuXHJcbjxzY3JpcHQgc3JjPVwiaHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvaGlnaGxpZ2h0LmpzLzExLjkuMC9oaWdobGlnaHQubWluLmpzXCI+PC9zY3JpcHQ+XHJcbjxsaW5rIHJlbD1cInN0eWxlc2hlZXRcIiBocmVmPVwiaHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvaGlnaGxpZ2h0LmpzLzExLjkuMC9zdHlsZXMvYXRvbS1vbmUtZGFyay5taW4uY3NzXCIgLz5cclxuPHNjcmlwdCBzcmM9XCJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2thdGV4QDAuMTYuOS9kaXN0L2thdGV4Lm1pbi5qc1wiPjwvc2NyaXB0PlxyXG48bGluayByZWw9XCJzdHlsZXNoZWV0XCIgaHJlZj1cImh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0va2F0ZXhAMC4xNi45L2Rpc3Qva2F0ZXgubWluLmNzc1wiIC8+XHJcbjxsaW5rIHJlbD1cInN0eWxlc2hlZXRcIiBocmVmPVwiaHR0cHM6Ly9jZG4uanNkZWxpdnIubmV0L25wbS9xdWlsbEAyLjAuMC1yYy4yL2Rpc3QvcXVpbGwuc25vdy5jc3NcIiAvPlxyXG48c2NyaXB0IHNyYz1cImh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vcXVpbGxAMi4wLjAtcmMuMi9kaXN0L3F1aWxsLmpzXCI+PC9zY3JpcHQ+XHJcbjwvZGl2PlxyXG4iXX0=
1
+ import { Component, EventEmitter, Input, Output, } from '@angular/core';
2
+ import { ComponentProviders } from '../../api/helpers/component-providers';
3
+ import { BaseComponentInput } from '../../api/base-components/base-component-input';
4
+ import Quill from 'quill';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../../api/services/component.service";
7
+ import * as i2 from "@angular/forms";
8
+ export class EditorComponent extends BaseComponentInput {
9
+ /**
10
+ *
11
+ */
12
+ constructor(componentService) {
13
+ super(componentService);
14
+ /**
15
+ * @type {boolean}
16
+ * @description
17
+ * Esse item define se o editor e somente para leitura
18
+ */
19
+ this.readonly = false;
20
+ /**
21
+ * @type {boolean}
22
+ * @description
23
+ * Esse item define o tamanho do canva
24
+ */
25
+ this.canvaHeigth = '380px';
26
+ this.debug = false;
27
+ /**
28
+ * @description Executado a cada iteração
29
+ */
30
+ this.onTextChange = new EventEmitter();
31
+ /**
32
+ * @description Executado a cada seleção
33
+ */
34
+ this.onSelectionChange = new EventEmitter();
35
+ }
36
+ ngOnInit() {
37
+ const ColorClass = Quill.import('attributors/class/color');
38
+ const ColorStyle = Quill.import('attributors/style/color');
39
+ const SizeStyle = Quill.import('attributors/style/size');
40
+ Quill.register(ColorClass, true);
41
+ Quill.register(SizeStyle, true);
42
+ Quill.register(ColorStyle, true);
43
+ const Font = Quill.import('formats/font');
44
+ Font.whitelist = ['monospace', 'roboto', 'serif'];
45
+ Quill.register(Font, true);
46
+ var Size = Quill.import('attributors/style/size');
47
+ Size.whitelist = ['15px', '20px', '30px', '40px', '50px', '70px', '90px'];
48
+ Quill.register(Size, true);
49
+ this.quill = new Quill('#kv-editor', {
50
+ theme: 'snow',
51
+ modules: {
52
+ toolbar: '#kv-editor-toolbar',
53
+ },
54
+ placeholder: this.label ? this.label : '',
55
+ debug: this.debug,
56
+ });
57
+ this.quill.on('text-change', (delta, oldContents, source) => {
58
+ this.writeValue(this.quill.root.innerHTML);
59
+ console.log();
60
+ this.onTextChange.emit({ delta: delta, oldContents: oldContents, source: source });
61
+ });
62
+ this.quill.on('selection-change', (range, oldRange, source) => {
63
+ this.onTouched();
64
+ this.onSelectionChange.emit({
65
+ range: range,
66
+ oldRange: oldRange,
67
+ source: source
68
+ });
69
+ });
70
+ }
71
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditorComponent, deps: [{ token: i1.ComponentService }], target: i0.ɵɵFactoryTarget.Component }); }
72
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EditorComponent, selector: "kv-editor", inputs: { readonly: "readonly", canvaHeigth: "canvaHeigth", debug: "debug" }, outputs: { onTextChange: "onTextChange", onSelectionChange: "onSelectionChange" }, providers: ComponentProviders(EditorComponent), usesInheritance: true, ngImport: i0, template: "\n\n\n<div class=\"kv-editor-container\">\n\n<!-- Include stylesheet -->\n<link href=\"https://cdn.jsdelivr.net/npm/quill@2.0.0-rc.2/dist/quill.snow.css\" rel=\"stylesheet\" />\n\n\n\n<div #editor id=\"kv-editor-toolbar\" >\n <span class=\"ql-formats\">\n <select class=\"ql-font\">\n <option selected>Sans Serif</option>\n <option value=\"roboto\">Roboto</option>\n <option value=\"monospace\">Monospace</option>\n <option value=\"serif\">Serif</option>\n\n </select>\n\n <select class=\"ql-header\">\n <option value=\"1\">Titulo</option>\n <option value=\"2\">Subtitulo</option>\n <option selected>Normal</option>\n </select>\n\n <span class=\"ql-format-group\">\n <select title=\"Size\" class=\"ql-size\">\n <option value=\"15px\">15px</option>\n <option value=\"20px\">20px</option>\n <option value=\"30px\">30px</option>\n <option value=\"40px\">40px</option>\n <option value=\"50px\">50px</option>\n <option value=\"70px\">70px</option>\n <option value=\"90px\">90px</option>\n\n </select>\n </span>\n\n </span>\n\n <span class=\"ql-formats\">\n <button class=\"ql-bold\"></button>\n <button class=\"ql-italic\"></button>\n <button class=\"ql-underline\"></button>\n <button class=\"ql-strike\"></button>\n </span>\n <span class=\"ql-formats\">\n <select class=\"ql-color\"></select>\n <select class=\"ql-background\"></select>\n </span>\n <span class=\"ql-formats\">\n <button class=\"ql-script\" value=\"sub\"></button>\n <button class=\"ql-script\" value=\"super\"></button>\n </span>\n <span class=\"ql-formats\">\n <button class=\"ql-header\" value=\"1\"></button>\n <button class=\"ql-header\" value=\"2\"></button>\n <button class=\"ql-blockquote\"></button>\n <button class=\"ql-code-block\"></button>\n </span>\n <span class=\"ql-formats\">\n <button class=\"ql-list\" value=\"ordered\"></button>\n <button class=\"ql-list\" value=\"bullet\"></button>\n <button class=\"ql-indent\" value=\"-1\"></button>\n <button class=\"ql-indent\" value=\"+1\"></button>\n </span>\n <span class=\"ql-formats\">\n <button class=\"ql-direction\" value=\"rtl\"></button>\n <select class=\"ql-align\"></select>\n </span>\n <span class=\"ql-formats\">\n <button class=\"ql-link\"></button>\n <button class=\"ql-image\"></button>\n <button class=\"ql-video\"></button>\n </span>\n <span class=\"ql-formats\">\n <button class=\"ql-clean\"></button>\n </span>\n</div>\n<div id=\"kv-editor\" [style.height]=\"canvaHeigth\">\n</div>\n<!-- Include the Quill library -->\n<script src=\"https://cdn.jsdelivr.net/npm/quill@2.0.0-rc.2/dist/quill.js\"></script>\n\n\n<link href=\"https://unpkg.com/quill@1.3.7/dist/quill.snow.css\" rel=\"stylesheet\" />\n<link href=\"https://fonts.googleapis.com/css?family=Roboto\" rel=\"stylesheet\">\n\n\n<script src=\"https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/highlight.min.js\"></script>\n<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/atom-one-dark.min.css\" />\n<script src=\"https://cdn.jsdelivr.net/npm/katex@0.16.9/dist/katex.min.js\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/katex@0.16.9/dist/katex.min.css\" />\n<link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/quill@2.0.0-rc.2/dist/quill.snow.css\" />\n<script src=\"https://cdn.jsdelivr.net/npm/quill@2.0.0-rc.2/dist/quill.js\"></script>\n</div>\n", styles: [":host ::ng-deep .ql-font-roboto{font-family:Roboto,sans-serif}\n"], dependencies: [{ kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }] }); }
73
+ }
74
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditorComponent, decorators: [{
75
+ type: Component,
76
+ args: [{ selector: 'kv-editor', providers: ComponentProviders(EditorComponent), template: "\n\n\n<div class=\"kv-editor-container\">\n\n<!-- Include stylesheet -->\n<link href=\"https://cdn.jsdelivr.net/npm/quill@2.0.0-rc.2/dist/quill.snow.css\" rel=\"stylesheet\" />\n\n\n\n<div #editor id=\"kv-editor-toolbar\" >\n <span class=\"ql-formats\">\n <select class=\"ql-font\">\n <option selected>Sans Serif</option>\n <option value=\"roboto\">Roboto</option>\n <option value=\"monospace\">Monospace</option>\n <option value=\"serif\">Serif</option>\n\n </select>\n\n <select class=\"ql-header\">\n <option value=\"1\">Titulo</option>\n <option value=\"2\">Subtitulo</option>\n <option selected>Normal</option>\n </select>\n\n <span class=\"ql-format-group\">\n <select title=\"Size\" class=\"ql-size\">\n <option value=\"15px\">15px</option>\n <option value=\"20px\">20px</option>\n <option value=\"30px\">30px</option>\n <option value=\"40px\">40px</option>\n <option value=\"50px\">50px</option>\n <option value=\"70px\">70px</option>\n <option value=\"90px\">90px</option>\n\n </select>\n </span>\n\n </span>\n\n <span class=\"ql-formats\">\n <button class=\"ql-bold\"></button>\n <button class=\"ql-italic\"></button>\n <button class=\"ql-underline\"></button>\n <button class=\"ql-strike\"></button>\n </span>\n <span class=\"ql-formats\">\n <select class=\"ql-color\"></select>\n <select class=\"ql-background\"></select>\n </span>\n <span class=\"ql-formats\">\n <button class=\"ql-script\" value=\"sub\"></button>\n <button class=\"ql-script\" value=\"super\"></button>\n </span>\n <span class=\"ql-formats\">\n <button class=\"ql-header\" value=\"1\"></button>\n <button class=\"ql-header\" value=\"2\"></button>\n <button class=\"ql-blockquote\"></button>\n <button class=\"ql-code-block\"></button>\n </span>\n <span class=\"ql-formats\">\n <button class=\"ql-list\" value=\"ordered\"></button>\n <button class=\"ql-list\" value=\"bullet\"></button>\n <button class=\"ql-indent\" value=\"-1\"></button>\n <button class=\"ql-indent\" value=\"+1\"></button>\n </span>\n <span class=\"ql-formats\">\n <button class=\"ql-direction\" value=\"rtl\"></button>\n <select class=\"ql-align\"></select>\n </span>\n <span class=\"ql-formats\">\n <button class=\"ql-link\"></button>\n <button class=\"ql-image\"></button>\n <button class=\"ql-video\"></button>\n </span>\n <span class=\"ql-formats\">\n <button class=\"ql-clean\"></button>\n </span>\n</div>\n<div id=\"kv-editor\" [style.height]=\"canvaHeigth\">\n</div>\n<!-- Include the Quill library -->\n<script src=\"https://cdn.jsdelivr.net/npm/quill@2.0.0-rc.2/dist/quill.js\"></script>\n\n\n<link href=\"https://unpkg.com/quill@1.3.7/dist/quill.snow.css\" rel=\"stylesheet\" />\n<link href=\"https://fonts.googleapis.com/css?family=Roboto\" rel=\"stylesheet\">\n\n\n<script src=\"https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/highlight.min.js\"></script>\n<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/atom-one-dark.min.css\" />\n<script src=\"https://cdn.jsdelivr.net/npm/katex@0.16.9/dist/katex.min.js\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/katex@0.16.9/dist/katex.min.css\" />\n<link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/quill@2.0.0-rc.2/dist/quill.snow.css\" />\n<script src=\"https://cdn.jsdelivr.net/npm/quill@2.0.0-rc.2/dist/quill.js\"></script>\n</div>\n", styles: [":host ::ng-deep .ql-font-roboto{font-family:Roboto,sans-serif}\n"] }]
77
+ }], ctorParameters: function () { return [{ type: i1.ComponentService }]; }, propDecorators: { readonly: [{
78
+ type: Input
79
+ }], canvaHeigth: [{
80
+ type: Input
81
+ }], debug: [{
82
+ type: Input
83
+ }], onTextChange: [{
84
+ type: Output
85
+ }], onSelectionChange: [{
86
+ type: Output
87
+ }] } });
88
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9pbnB1dHMvZWRpdG9yL2VkaXRvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZWV2by1jb21wb25lbnRzL3NyYy9saWIvaW5wdXRzL2VkaXRvci9lZGl0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUdwRixPQUFPLEtBQStCLE1BQU0sT0FBTyxDQUFDOzs7O0FBUXBELE1BQU0sT0FBTyxlQUFnQixTQUFRLGtCQUEwQjtJQUM3RDs7T0FFRztJQUNILFlBQ0UsZ0JBQWtDO1FBQ2xDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRzFCOzs7O1dBSUc7UUFDTSxhQUFRLEdBQVksS0FBSyxDQUFDO1FBRW5DOzs7O1dBSUc7UUFDTSxnQkFBVyxHQUFXLE9BQU8sQ0FBQztRQUU5QixVQUFLLEdBQVksS0FBSyxDQUFDO1FBRWhDOztXQUVHO1FBQ08saUJBQVksR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUUvRDs7V0FFRztRQUNPLHNCQUFpQixHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO0lBMUJwRSxDQUFDO0lBK0JRLFFBQVE7UUFDZixNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLHlCQUF5QixDQUFDLENBQUM7UUFDM0QsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBRTNELE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQztRQUV6RCxLQUFLLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNqQyxLQUFLLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNoQyxLQUFLLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUdqQyxNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQzFDLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxXQUFXLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ2xELEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRTNCLElBQUksSUFBSSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQztRQUNsRCxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDMUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFFM0IsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLEtBQUssQ0FBQyxZQUFZLEVBQUU7WUFDbkMsS0FBSyxFQUFFLE1BQU07WUFDYixPQUFPLEVBQUU7Z0JBQ1AsT0FBTyxFQUFFLG9CQUFvQjthQUM5QjtZQUNELFdBQVcsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ3pDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztTQUNsQixDQUFDLENBQUM7UUFJSCxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxLQUFVLEVBQUUsV0FBZ0IsRUFBRSxNQUFlLEVBQUUsRUFBRTtZQUM3RSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQzNDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQTtZQUNiLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUMsS0FBSyxFQUFDLEtBQUssRUFBRSxXQUFXLEVBQUMsV0FBVyxFQUFFLE1BQU0sRUFBQyxNQUFNLEVBQUMsQ0FBQyxDQUFBO1FBQy9FLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxLQUFrQixFQUFFLFFBQXFCLEVBQUUsTUFBZSxFQUFFLEVBQUU7WUFDL0YsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUM7Z0JBQzFCLEtBQUssRUFBRSxLQUFLO2dCQUNaLFFBQVEsRUFBRSxRQUFRO2dCQUNsQixNQUFNLEVBQUUsTUFBTTthQUNmLENBQUMsQ0FBQTtRQUNKLENBQUMsQ0FBQyxDQUFDO0lBRUwsQ0FBQzsrR0FuRlUsZUFBZTttR0FBZixlQUFlLHFNQUZmLGtCQUFrQixDQUFDLGVBQWUsQ0FBQyxpRENqQmhELDQ3R0FpR0E7OzRGRDlFYSxlQUFlO2tCQU4zQixTQUFTOytCQUNFLFdBQVcsYUFHVixrQkFBa0IsaUJBQWlCO3VHQWdCckMsUUFBUTtzQkFBaEIsS0FBSztnQkFPRyxXQUFXO3NCQUFuQixLQUFLO2dCQUVHLEtBQUs7c0JBQWIsS0FBSztnQkFLSSxZQUFZO3NCQUFyQixNQUFNO2dCQUtHLGlCQUFpQjtzQkFBMUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRG9DaGVjayxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbXBvbmVudFByb3ZpZGVycyB9IGZyb20gJy4uLy4uL2FwaS9oZWxwZXJzL2NvbXBvbmVudC1wcm92aWRlcnMnO1xuaW1wb3J0IHsgQmFzZUNvbXBvbmVudElucHV0IH0gZnJvbSAnLi4vLi4vYXBpL2Jhc2UtY29tcG9uZW50cy9iYXNlLWNvbXBvbmVudC1pbnB1dCc7XG5pbXBvcnQgeyBDb21wb25lbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vYXBpL3NlcnZpY2VzL2NvbXBvbmVudC5zZXJ2aWNlJztcblxuaW1wb3J0IFF1aWxsLCB7IFJhbmdlU3RhdGljLCBTb3VyY2VzIH0gZnJvbSAncXVpbGwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdrdi1lZGl0b3InLFxuICB0ZW1wbGF0ZVVybDogJy4vZWRpdG9yLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZWRpdG9yLmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogQ29tcG9uZW50UHJvdmlkZXJzKEVkaXRvckNvbXBvbmVudCksXG59KVxuZXhwb3J0IGNsYXNzIEVkaXRvckNvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnRJbnB1dDxzdHJpbmc+ICB7XG4gIC8qKlxuICAgKlxuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgY29tcG9uZW50U2VydmljZTogQ29tcG9uZW50U2VydmljZSkge1xuICAgIHN1cGVyKGNvbXBvbmVudFNlcnZpY2UpO1xuICB9XG5cbiAgLyoqXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogRXNzZSBpdGVtIGRlZmluZSBzZSBvIGVkaXRvciBlIHNvbWVudGUgcGFyYSBsZWl0dXJhXG4gICAqL1xuICBASW5wdXQoKSByZWFkb25seTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIEVzc2UgaXRlbSBkZWZpbmUgbyB0YW1hbmhvIGRvIGNhbnZhXG4gICAqL1xuICBASW5wdXQoKSBjYW52YUhlaWd0aDogc3RyaW5nID0gJzM4MHB4JztcblxuICBASW5wdXQoKSBkZWJ1ZzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiAgQGRlc2NyaXB0aW9uIEV4ZWN1dGFkbyBhIGNhZGEgaXRlcmHDp8Ojb1xuICAgKi9cbiAgQE91dHB1dCgpIG9uVGV4dENoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgLyoqXG4gICAqICBAZGVzY3JpcHRpb24gRXhlY3V0YWRvIGEgY2FkYSBzZWxlw6fDo29cbiAgICovXG4gIEBPdXRwdXQoKSBvblNlbGVjdGlvbkNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cblxuICBxdWlsbCE6IFF1aWxsO1xuXG4gIG92ZXJyaWRlIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IENvbG9yQ2xhc3MgPSBRdWlsbC5pbXBvcnQoJ2F0dHJpYnV0b3JzL2NsYXNzL2NvbG9yJyk7XG4gICAgY29uc3QgQ29sb3JTdHlsZSA9IFF1aWxsLmltcG9ydCgnYXR0cmlidXRvcnMvc3R5bGUvY29sb3InKTtcblxuICAgIGNvbnN0IFNpemVTdHlsZSA9IFF1aWxsLmltcG9ydCgnYXR0cmlidXRvcnMvc3R5bGUvc2l6ZScpO1xuXG4gICAgUXVpbGwucmVnaXN0ZXIoQ29sb3JDbGFzcywgdHJ1ZSk7XG4gICAgUXVpbGwucmVnaXN0ZXIoU2l6ZVN0eWxlLCB0cnVlKTtcbiAgICBRdWlsbC5yZWdpc3RlcihDb2xvclN0eWxlLCB0cnVlKTtcblxuXG4gICAgY29uc3QgRm9udCA9IFF1aWxsLmltcG9ydCgnZm9ybWF0cy9mb250Jyk7XG4gICAgRm9udC53aGl0ZWxpc3QgPSBbJ21vbm9zcGFjZScsICdyb2JvdG8nLCAnc2VyaWYnXTtcbiAgICBRdWlsbC5yZWdpc3RlcihGb250LCB0cnVlKTtcblxuICAgIHZhciBTaXplID0gUXVpbGwuaW1wb3J0KCdhdHRyaWJ1dG9ycy9zdHlsZS9zaXplJyk7XG4gICAgU2l6ZS53aGl0ZWxpc3QgPSBbJzE1cHgnLCAnMjBweCcsICczMHB4JywgJzQwcHgnLCAnNTBweCcsICc3MHB4JywgJzkwcHgnXTtcbiAgICBRdWlsbC5yZWdpc3RlcihTaXplLCB0cnVlKTtcblxuICAgIHRoaXMucXVpbGwgPSBuZXcgUXVpbGwoJyNrdi1lZGl0b3InLCB7XG4gICAgICB0aGVtZTogJ3Nub3cnLFxuICAgICAgbW9kdWxlczoge1xuICAgICAgICB0b29sYmFyOiAnI2t2LWVkaXRvci10b29sYmFyJyxcbiAgICAgIH0sXG4gICAgICBwbGFjZWhvbGRlcjogdGhpcy5sYWJlbCA/IHRoaXMubGFiZWwgOiAnJyxcbiAgICAgIGRlYnVnOiB0aGlzLmRlYnVnLFxuICAgIH0pO1xuXG5cblxuICAgIHRoaXMucXVpbGwub24oJ3RleHQtY2hhbmdlJywgKGRlbHRhOiBhbnksIG9sZENvbnRlbnRzOiBhbnksIHNvdXJjZTogU291cmNlcykgPT4ge1xuICAgICAgdGhpcy53cml0ZVZhbHVlKHRoaXMucXVpbGwucm9vdC5pbm5lckhUTUwpO1xuICAgICAgY29uc29sZS5sb2coKVxuICAgICAgdGhpcy5vblRleHRDaGFuZ2UuZW1pdCh7ZGVsdGE6ZGVsdGEsIG9sZENvbnRlbnRzOm9sZENvbnRlbnRzLCBzb3VyY2U6c291cmNlfSlcbiAgICB9KTtcblxuICAgIHRoaXMucXVpbGwub24oJ3NlbGVjdGlvbi1jaGFuZ2UnLCAocmFuZ2U6IFJhbmdlU3RhdGljLCBvbGRSYW5nZTogUmFuZ2VTdGF0aWMsIHNvdXJjZTogU291cmNlcykgPT4ge1xuICAgICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICAgIHRoaXMub25TZWxlY3Rpb25DaGFuZ2UuZW1pdCh7XG4gICAgICAgIHJhbmdlOiByYW5nZSxcbiAgICAgICAgb2xkUmFuZ2U6IG9sZFJhbmdlLFxuICAgICAgICBzb3VyY2U6IHNvdXJjZVxuICAgICAgfSlcbiAgICB9KTtcblxuICB9XG5cblxufVxuIiwiXG5cblxuPGRpdiBjbGFzcz1cImt2LWVkaXRvci1jb250YWluZXJcIj5cblxuPCEtLSBJbmNsdWRlIHN0eWxlc2hlZXQgLS0+XG48bGluayBocmVmPVwiaHR0cHM6Ly9jZG4uanNkZWxpdnIubmV0L25wbS9xdWlsbEAyLjAuMC1yYy4yL2Rpc3QvcXVpbGwuc25vdy5jc3NcIiByZWw9XCJzdHlsZXNoZWV0XCIgLz5cblxuXG5cbjxkaXYgI2VkaXRvciBpZD1cImt2LWVkaXRvci10b29sYmFyXCIgPlxuICA8c3BhbiBjbGFzcz1cInFsLWZvcm1hdHNcIj5cbiAgICA8c2VsZWN0IGNsYXNzPVwicWwtZm9udFwiPlxuICAgICAgPG9wdGlvbiBzZWxlY3RlZD5TYW5zIFNlcmlmPC9vcHRpb24+XG4gICAgICA8b3B0aW9uIHZhbHVlPVwicm9ib3RvXCI+Um9ib3RvPC9vcHRpb24+XG4gICAgICA8b3B0aW9uIHZhbHVlPVwibW9ub3NwYWNlXCI+TW9ub3NwYWNlPC9vcHRpb24+XG4gICAgICA8b3B0aW9uIHZhbHVlPVwic2VyaWZcIj5TZXJpZjwvb3B0aW9uPlxuXG4gICAgPC9zZWxlY3Q+XG5cbiAgICA8c2VsZWN0IGNsYXNzPVwicWwtaGVhZGVyXCI+XG4gICAgICA8b3B0aW9uIHZhbHVlPVwiMVwiPlRpdHVsbzwvb3B0aW9uPlxuICAgICAgPG9wdGlvbiB2YWx1ZT1cIjJcIj5TdWJ0aXR1bG88L29wdGlvbj5cbiAgICAgIDxvcHRpb24gc2VsZWN0ZWQ+Tm9ybWFsPC9vcHRpb24+XG4gIDwvc2VsZWN0PlxuXG4gIDxzcGFuIGNsYXNzPVwicWwtZm9ybWF0LWdyb3VwXCI+XG4gICAgPHNlbGVjdCB0aXRsZT1cIlNpemVcIiBjbGFzcz1cInFsLXNpemVcIj5cbiAgICAgIDxvcHRpb24gdmFsdWU9XCIxNXB4XCI+MTVweDwvb3B0aW9uPlxuICAgICAgPG9wdGlvbiB2YWx1ZT1cIjIwcHhcIj4yMHB4PC9vcHRpb24+XG4gICAgICA8b3B0aW9uIHZhbHVlPVwiMzBweFwiPjMwcHg8L29wdGlvbj5cbiAgICAgIDxvcHRpb24gdmFsdWU9XCI0MHB4XCI+NDBweDwvb3B0aW9uPlxuICAgICAgPG9wdGlvbiB2YWx1ZT1cIjUwcHhcIj41MHB4PC9vcHRpb24+XG4gICAgICA8b3B0aW9uIHZhbHVlPVwiNzBweFwiPjcwcHg8L29wdGlvbj5cbiAgICAgIDxvcHRpb24gdmFsdWU9XCI5MHB4XCI+OTBweDwvb3B0aW9uPlxuXG4gICAgPC9zZWxlY3Q+XG4gIDwvc3Bhbj5cblxuICA8L3NwYW4+XG5cbiAgPHNwYW4gY2xhc3M9XCJxbC1mb3JtYXRzXCI+XG4gICAgPGJ1dHRvbiBjbGFzcz1cInFsLWJvbGRcIj48L2J1dHRvbj5cbiAgICA8YnV0dG9uIGNsYXNzPVwicWwtaXRhbGljXCI+PC9idXR0b24+XG4gICAgPGJ1dHRvbiBjbGFzcz1cInFsLXVuZGVybGluZVwiPjwvYnV0dG9uPlxuICAgIDxidXR0b24gY2xhc3M9XCJxbC1zdHJpa2VcIj48L2J1dHRvbj5cbiAgPC9zcGFuPlxuICA8c3BhbiBjbGFzcz1cInFsLWZvcm1hdHNcIj5cbiAgICA8c2VsZWN0IGNsYXNzPVwicWwtY29sb3JcIj48L3NlbGVjdD5cbiAgICA8c2VsZWN0IGNsYXNzPVwicWwtYmFja2dyb3VuZFwiPjwvc2VsZWN0PlxuICA8L3NwYW4+XG4gIDxzcGFuIGNsYXNzPVwicWwtZm9ybWF0c1wiPlxuICAgIDxidXR0b24gY2xhc3M9XCJxbC1zY3JpcHRcIiB2YWx1ZT1cInN1YlwiPjwvYnV0dG9uPlxuICAgIDxidXR0b24gY2xhc3M9XCJxbC1zY3JpcHRcIiB2YWx1ZT1cInN1cGVyXCI+PC9idXR0b24+XG4gIDwvc3Bhbj5cbiAgPHNwYW4gY2xhc3M9XCJxbC1mb3JtYXRzXCI+XG4gICAgPGJ1dHRvbiBjbGFzcz1cInFsLWhlYWRlclwiIHZhbHVlPVwiMVwiPjwvYnV0dG9uPlxuICAgIDxidXR0b24gY2xhc3M9XCJxbC1oZWFkZXJcIiB2YWx1ZT1cIjJcIj48L2J1dHRvbj5cbiAgICA8YnV0dG9uIGNsYXNzPVwicWwtYmxvY2txdW90ZVwiPjwvYnV0dG9uPlxuICAgIDxidXR0b24gY2xhc3M9XCJxbC1jb2RlLWJsb2NrXCI+PC9idXR0b24+XG4gIDwvc3Bhbj5cbiAgPHNwYW4gY2xhc3M9XCJxbC1mb3JtYXRzXCI+XG4gICAgPGJ1dHRvbiBjbGFzcz1cInFsLWxpc3RcIiB2YWx1ZT1cIm9yZGVyZWRcIj48L2J1dHRvbj5cbiAgICA8YnV0dG9uIGNsYXNzPVwicWwtbGlzdFwiIHZhbHVlPVwiYnVsbGV0XCI+PC9idXR0b24+XG4gICAgPGJ1dHRvbiBjbGFzcz1cInFsLWluZGVudFwiIHZhbHVlPVwiLTFcIj48L2J1dHRvbj5cbiAgICA8YnV0dG9uIGNsYXNzPVwicWwtaW5kZW50XCIgdmFsdWU9XCIrMVwiPjwvYnV0dG9uPlxuICA8L3NwYW4+XG4gIDxzcGFuIGNsYXNzPVwicWwtZm9ybWF0c1wiPlxuICAgIDxidXR0b24gY2xhc3M9XCJxbC1kaXJlY3Rpb25cIiB2YWx1ZT1cInJ0bFwiPjwvYnV0dG9uPlxuICAgIDxzZWxlY3QgY2xhc3M9XCJxbC1hbGlnblwiPjwvc2VsZWN0PlxuICA8L3NwYW4+XG4gIDxzcGFuIGNsYXNzPVwicWwtZm9ybWF0c1wiPlxuICAgIDxidXR0b24gY2xhc3M9XCJxbC1saW5rXCI+PC9idXR0b24+XG4gICAgPGJ1dHRvbiBjbGFzcz1cInFsLWltYWdlXCI+PC9idXR0b24+XG4gICAgPGJ1dHRvbiBjbGFzcz1cInFsLXZpZGVvXCI+PC9idXR0b24+XG4gIDwvc3Bhbj5cbiAgPHNwYW4gY2xhc3M9XCJxbC1mb3JtYXRzXCI+XG4gICAgPGJ1dHRvbiBjbGFzcz1cInFsLWNsZWFuXCI+PC9idXR0b24+XG4gIDwvc3Bhbj5cbjwvZGl2PlxuPGRpdiBpZD1cImt2LWVkaXRvclwiIFtzdHlsZS5oZWlnaHRdPVwiY2FudmFIZWlndGhcIj5cbjwvZGl2PlxuPCEtLSBJbmNsdWRlIHRoZSBRdWlsbCBsaWJyYXJ5IC0tPlxuPHNjcmlwdCBzcmM9XCJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL3F1aWxsQDIuMC4wLXJjLjIvZGlzdC9xdWlsbC5qc1wiPjwvc2NyaXB0PlxuXG5cbjxsaW5rIGhyZWY9XCJodHRwczovL3VucGtnLmNvbS9xdWlsbEAxLjMuNy9kaXN0L3F1aWxsLnNub3cuY3NzXCIgcmVsPVwic3R5bGVzaGVldFwiIC8+XG48bGluayBocmVmPVwiaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVJvYm90b1wiIHJlbD1cInN0eWxlc2hlZXRcIj5cblxuXG48c2NyaXB0IHNyYz1cImh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2hpZ2hsaWdodC5qcy8xMS45LjAvaGlnaGxpZ2h0Lm1pbi5qc1wiPjwvc2NyaXB0PlxuPGxpbmsgcmVsPVwic3R5bGVzaGVldFwiIGhyZWY9XCJodHRwczovL2NkbmpzLmNsb3VkZmxhcmUuY29tL2FqYXgvbGlicy9oaWdobGlnaHQuanMvMTEuOS4wL3N0eWxlcy9hdG9tLW9uZS1kYXJrLm1pbi5jc3NcIiAvPlxuPHNjcmlwdCBzcmM9XCJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2thdGV4QDAuMTYuOS9kaXN0L2thdGV4Lm1pbi5qc1wiPjwvc2NyaXB0PlxuPGxpbmsgcmVsPVwic3R5bGVzaGVldFwiIGhyZWY9XCJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2thdGV4QDAuMTYuOS9kaXN0L2thdGV4Lm1pbi5jc3NcIiAvPlxuPGxpbmsgcmVsPVwic3R5bGVzaGVldFwiIGhyZWY9XCJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL3F1aWxsQDIuMC4wLXJjLjIvZGlzdC9xdWlsbC5zbm93LmNzc1wiIC8+XG48c2NyaXB0IHNyYz1cImh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vcXVpbGxAMi4wLjAtcmMuMi9kaXN0L3F1aWxsLmpzXCI+PC9zY3JpcHQ+XG48L2Rpdj5cbiJdfQ==