@sapphire-ion/framework 1.2.36 → 1.2.41

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 (91) hide show
  1. package/esm2022/lib/components/carousel/carousel-image/carousel-image.component.mjs +3 -3
  2. package/esm2022/lib/components/carousel/carousel-item/carousel-item.component.mjs +3 -3
  3. package/esm2022/lib/components/carousel/carousel.component.mjs +3 -3
  4. package/esm2022/lib/components/carousel/carousel.module.mjs +4 -4
  5. package/esm2022/lib/components/carousel/i-carousel-item.component.mjs +3 -3
  6. package/esm2022/lib/components/content-block/content-block.component.mjs +3 -3
  7. package/esm2022/lib/components/default/default-list/abstract-list.mjs +3 -3
  8. package/esm2022/lib/components/default/default-list/default-list.component.mjs +3 -3
  9. package/esm2022/lib/components/default/default-list/header-list/header-list.component.mjs +3 -3
  10. package/esm2022/lib/components/default/default-list/list.mjs +3 -3
  11. package/esm2022/lib/components/default/default-pagination/default-pagination.component.mjs +3 -3
  12. package/esm2022/lib/components/default/default-table/default-table.component.mjs +6 -6
  13. package/esm2022/lib/components/default/default-table/th-filter/th-filter.component.mjs +27 -11
  14. package/esm2022/lib/components/default/default-view/abstract-view.mjs +3 -3
  15. package/esm2022/lib/components/default/default-view/default-view.component.mjs +3 -3
  16. package/esm2022/lib/components/default/default-view/header-view/header-view.component.mjs +3 -3
  17. package/esm2022/lib/components/default/default-view/view.mjs +3 -3
  18. package/esm2022/lib/components/default/default.module.mjs +4 -4
  19. package/esm2022/lib/components/default-page/default.page.mjs +3 -3
  20. package/esm2022/lib/components/drag-drop-file/drag-drop-file.directive.mjs +3 -3
  21. package/esm2022/lib/components/drag-drop-file/drag-drop-file.module.mjs +4 -4
  22. package/esm2022/lib/components/drag-drop-file/drag-drop-overlay/drag-drop-overlay.component.mjs +3 -3
  23. package/esm2022/lib/components/drawer/default-drawer-end/default-drawer-end.component.mjs +3 -3
  24. package/esm2022/lib/components/drawer/drawer-group/drawer-group.component.mjs +3 -3
  25. package/esm2022/lib/components/drawer/drawer.component.mjs +3 -3
  26. package/esm2022/lib/components/filter/filter.component.mjs +26 -10
  27. package/esm2022/lib/components/http-responses-pages/forbidden-403/forbidden-403.component.mjs +3 -3
  28. package/esm2022/lib/components/image/image.component.mjs +3 -3
  29. package/esm2022/lib/components/info-popover/info-popover.component.mjs +3 -3
  30. package/esm2022/lib/components/inputs/custom-input.mjs +3 -3
  31. package/esm2022/lib/components/inputs/input-bool/input-bool.component.mjs +3 -3
  32. package/esm2022/lib/components/inputs/input-cep/input-cep.component.mjs +7 -5
  33. package/esm2022/lib/components/inputs/input-cep/input-cep.configuration.mjs +4 -0
  34. package/esm2022/lib/components/inputs/input-color/input-color.component.mjs +3 -3
  35. package/esm2022/lib/components/inputs/input-configuration.mjs +1 -1
  36. package/esm2022/lib/components/inputs/input-cpf-cnpj/input-cpf-cnpj.component.mjs +3 -3
  37. package/esm2022/lib/components/inputs/input-date/input-date.component.mjs +17 -6
  38. package/esm2022/lib/components/inputs/input-decimal/input-decimal.component.mjs +3 -3
  39. package/esm2022/lib/components/inputs/input-file/download-button/download-button.component.mjs +3 -3
  40. package/esm2022/lib/components/inputs/input-file/input-file.component.mjs +3 -3
  41. package/esm2022/lib/components/inputs/input-icon/input-icon.component.mjs +3 -3
  42. package/esm2022/lib/components/inputs/input-select/directives/sion-label-template.directive.mjs +3 -3
  43. package/esm2022/lib/components/inputs/input-select/directives/sion-option-template.directive.mjs +3 -3
  44. package/esm2022/lib/components/inputs/input-select/directives/sion-placeholder-template.directive.mjs +3 -3
  45. package/esm2022/lib/components/inputs/input-select/input-select.component.mjs +3 -3
  46. package/esm2022/lib/components/inputs/input-string/input-string.component.mjs +3 -3
  47. package/esm2022/lib/components/inputs/input-telefone/input-telefone.component.mjs +3 -3
  48. package/esm2022/lib/components/inputs/input-textarea/input-textarea.component.mjs +3 -3
  49. package/esm2022/lib/components/inputs/inputs.module.mjs +4 -4
  50. package/esm2022/lib/components/loading/loading.component.mjs +3 -3
  51. package/esm2022/lib/components/login/login-admin/login-admin.component.mjs +3 -3
  52. package/esm2022/lib/components/login/login.component.mjs +3 -3
  53. package/esm2022/lib/components/main-content/main-content.component.mjs +3 -3
  54. package/esm2022/lib/components/popover/sion-popover/sion-popover.component.mjs +3 -3
  55. package/esm2022/lib/components/popover/sion-popover.module.mjs +4 -4
  56. package/esm2022/lib/components/sion-card/sion-card.component.mjs +3 -3
  57. package/esm2022/lib/components/stepper/step/step.component.mjs +3 -3
  58. package/esm2022/lib/components/stepper/stepper.component.mjs +3 -3
  59. package/esm2022/lib/components/stepper/stepper.module.mjs +4 -4
  60. package/esm2022/lib/components/tabs/tab/tab.component.mjs +3 -3
  61. package/esm2022/lib/components/tabs/tabs/tabs.component.mjs +3 -3
  62. package/esm2022/lib/components/tabs/tabs.module.mjs +4 -4
  63. package/esm2022/lib/components/text-tooltip/text-tooltip.component.mjs +3 -3
  64. package/esm2022/lib/components/tooltip/tooltip.component.mjs +3 -3
  65. package/esm2022/lib/core.module.mjs +4 -4
  66. package/esm2022/lib/directives/ng-var.directive.mjs +3 -3
  67. package/esm2022/lib/guards/auth.guard.mjs +3 -3
  68. package/esm2022/lib/guards/error.interceptor.mjs +3 -3
  69. package/esm2022/lib/guards/token.interceptor.mjs +3 -3
  70. package/esm2022/lib/index.mjs +2 -1
  71. package/esm2022/lib/pipes/secure.pipe.mjs +3 -3
  72. package/esm2022/lib/services/auth.service.mjs +3 -3
  73. package/esm2022/lib/services/environment.service.mjs +3 -3
  74. package/esm2022/lib/services/generic.service.mjs +3 -3
  75. package/esm2022/lib/services/modal-focus-trap.service.mjs +3 -3
  76. package/esm2022/lib/services/popover-focus-trap.service.mjs +3 -3
  77. package/esm2022/lib/services/route/route.provider.service.mjs +3 -3
  78. package/esm2022/lib/services/usuario.service.mjs +3 -3
  79. package/esm2022/lib/services/utils.service.mjs +3 -3
  80. package/esm2022/lib/services/web/api-url-provider.service.mjs +3 -3
  81. package/esm2022/lib/services/web/http.ativo.service.mjs +3 -3
  82. package/esm2022/lib/services/web/http.service.mjs +3 -3
  83. package/esm2022/lib/services/web/storage.service.mjs +3 -3
  84. package/fesm2022/sapphire-ion-framework.mjs +296 -256
  85. package/fesm2022/sapphire-ion-framework.mjs.map +1 -1
  86. package/lib/components/inputs/input-cep/input-cep.component.d.ts +4 -2
  87. package/lib/components/inputs/input-cep/input-cep.configuration.d.ts +3 -0
  88. package/lib/components/inputs/input-configuration.d.ts +2 -1
  89. package/lib/components/inputs/input-date/input-date.component.d.ts +1 -0
  90. package/lib/index.d.ts +1 -0
  91. package/package.json +1 -1
@@ -45,10 +45,10 @@ export class DefaultViewComponent extends View {
45
45
  */
46
46
  this.backRouterLink = undefined;
47
47
  }
48
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DefaultViewComponent, deps: [{ token: i1.FormBuilder }, { token: i0.ElementRef }, { token: i2.ActivatedRoute }, { token: i3.GenericService }, { token: i4.NavController }], target: i0.ɵɵFactoryTarget.Component }); }
49
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: DefaultViewComponent, selector: "default-view", inputs: { noBack: "noBack", noNew: "noNew", noBreadcrumbs: "noBreadcrumbs", backRouterLink: "backRouterLink" }, usesInheritance: true, ngImport: i0, template: "<ion-content class=\"bg-transparent\"> \r\n <div class=\"wrapper\" [ngClass]=\"{'!p-0 translucid-primary-background': nested}\" tabindex=\"-1\">\r\n @if (!noBreadcrumbs) {\r\n <ion-breadcrumbs>\r\n <ion-breadcrumb class=\"cursor-pointer\" (click)=\"NavigateToList()\">\r\n {{service.title}}\r\n </ion-breadcrumb>\r\n <ion-breadcrumb> \r\n {{id == 0 ? 'Novo Registro' : 'Editar Registro' }} \r\n </ion-breadcrumb>\r\n </ion-breadcrumbs>\r\n }\r\n \r\n <ion-card>\r\n <ion-card-header class=\"!block\">\r\n @if (service) {\r\n <header-view \r\n *ngIf=\"service\" \r\n [novo]=\"id == 0\" \r\n [useDefaultRouting]=\"nested\" \r\n [loading]=\"loading\" \r\n [progress]=\"progress\" \r\n (save)=\"Save()\" \r\n [noBack]=\"noBack\" \r\n [noNew]=\"noNew\"\r\n [backRouterLink]=\"backRouterLink\"\r\n ></header-view>\r\n }\r\n </ion-card-header>\r\n <ion-card-content class=\"p-0 h-full !overflow-y-auto overflow-x-hidden\">\r\n <div class=\"grid grid-cols-12 gap-2 w-full\" *ngIf=\"frm\" [formGroup]=\"frm\">\r\n \r\n @for (field of lstTableFields; track $index) {\r\n @if (field.index != 'id') {\r\n @if (!field.hiddenView) {\r\n @switch (field.type) {\r\n @case (InputType.Bool) {\r\n <input-bool [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\" ></input-bool>\r\n }\r\n @case (InputType.Cep){\r\n <input-cep [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\"></input-cep>\r\n }\r\n @case (InputType.Color){\r\n <input-color [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\"></input-color>\r\n }\r\n @case (InputType.CpfCnpj) {\r\n <input-cpf [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-cpf>\r\n }\r\n @case (InputType.Cpf) {\r\n <input-cpf [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-cpf>\r\n }\r\n @case (InputType.Cnpj) {\r\n <input-cnpj [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-cnpj>\r\n }\r\n @case (InputType.Date) {\r\n <input-date [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-date>\r\n }\r\n @case (InputType.DateTime) {\r\n <input-date-time [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-date-time>\r\n }\r\n @case (InputType.Time) {\r\n <input-time [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-time>\r\n }\r\n @case (InputType.Decimal) {\r\n <input-decimal [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-decimal>\r\n }\r\n @case (InputType.Currency) {\r\n <input-currency [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-currency>\r\n }\r\n @case (InputType.Number) {\r\n <input-number [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-number>\r\n }\r\n @case (InputType.File) {\r\n <input-file [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-file>\r\n }\r\n @case (InputType.Icon) {\r\n <input-icon [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\"></input-icon>\r\n }\r\n @case (InputType.Select) {\r\n <input-select [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-select>\r\n }\r\n @case (InputType.String) {\r\n <input-string [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-string>\r\n }\r\n @case (InputType.TelefoneCelular) {\r\n <input-telefone-celular [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-telefone-celular>\r\n }\r\n @case (InputType.Telefone) {\r\n <input-telefone [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-telefone>\r\n }\r\n @case (InputType.Celular) {\r\n <input-celular [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-celular>\r\n }\r\n @case (InputType.TextArea) {\r\n <input-textarea [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-textarea>\r\n }\r\n }\r\n }\r\n }\r\n }\r\n \r\n <div class=\"col-span-full rounded-2xl p-3 flex items-center justify-center\" *ngIf=\"!service || service.lstTableFields.length == 0\" style=\"background: var(--ion-color-danger);\">\r\n <ion-text class=\"text-2xl text-light\">\r\n <ion-icon class=\"align-sub text-3xl\" name=\"alert-circle\"></ion-icon> [ Invalid Configuration ]\r\n </ion-text>\r\n </div>\r\n </div>\r\n </ion-card-content>\r\n </ion-card>\r\n </div>\r\n</ion-content>", styles: ["ion-card-header{padding:0}\n"], dependencies: [{ kind: "component", type: i4.IonBreadcrumb, selector: "ion-breadcrumb", inputs: ["active", "color", "disabled", "download", "href", "mode", "rel", "routerAnimation", "routerDirection", "separator", "target"] }, { kind: "component", type: i4.IonBreadcrumbs, selector: "ion-breadcrumbs", inputs: ["color", "itemsAfterCollapse", "itemsBeforeCollapse", "maxItems", "mode"] }, { kind: "component", type: i4.IonCard, selector: "ion-card", inputs: ["button", "color", "disabled", "download", "href", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: i4.IonCardContent, selector: "ion-card-content", inputs: ["mode"] }, { kind: "component", type: i4.IonCardHeader, selector: "ion-card-header", inputs: ["color", "mode", "translucent"] }, { kind: "component", type: i4.IonContent, selector: "ion-content", inputs: ["color", "fixedSlotPlacement", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { kind: "component", type: i4.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: i4.IonText, selector: "ion-text", inputs: ["color", "mode"] }, { kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.InputBoolComponent, selector: "input-bool", inputs: ["configuration"] }, { kind: "component", type: i7.InputCepComponent, selector: "input-cep" }, { kind: "component", type: i8.InputColorComponent, selector: "input-color" }, { kind: "component", type: i9.InputCpfCnpjComponent, selector: "input-cpf-cnpj, input-cpf, input-cnpj", inputs: ["configuration"], outputs: ["configurationChange"] }, { kind: "component", type: i10.InputDateComponent, selector: "input-date, input-date-time, input-time", inputs: ["configuration"] }, { kind: "component", type: i11.InputDecimalComponent, selector: "input-decimal, input-number, input-currency, input-percentage", inputs: ["configuration"], outputs: ["configurationChange"] }, { kind: "component", type: i12.InputFileComponent, selector: "input-file", inputs: ["configuration"] }, { kind: "component", type: i13.InputIconComponent, selector: "input-icon" }, { kind: "component", type: i14.InputSelectComponent, selector: "input-select", inputs: ["items", "configuration"], outputs: ["itemsChange"] }, { kind: "component", type: i15.InputStringComponent, selector: "input-string", inputs: ["configuration"] }, { kind: "component", type: i16.InputTelefoneComponent, selector: "input-telefone, input-celular, input-telefone-celular", inputs: ["configuration"], outputs: ["configurationChange"] }, { kind: "component", type: i17.InputTextareaComponent, selector: "input-textarea", inputs: ["configuration"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i18.HeaderViewComponent, selector: "header-view", inputs: ["novo", "loading", "progress", "noBack", "noNew", "useDefaultRouting", "backRouterLink"], outputs: ["save"] }] }); }
48
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DefaultViewComponent, deps: [{ token: i1.FormBuilder }, { token: i0.ElementRef }, { token: i2.ActivatedRoute }, { token: i3.GenericService }, { token: i4.NavController }], target: i0.ɵɵFactoryTarget.Component }); }
49
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: DefaultViewComponent, selector: "default-view", inputs: { noBack: "noBack", noNew: "noNew", noBreadcrumbs: "noBreadcrumbs", backRouterLink: "backRouterLink" }, usesInheritance: true, ngImport: i0, template: "<ion-content class=\"bg-transparent\"> \r\n <div class=\"wrapper\" [ngClass]=\"{'!p-0 translucid-primary-background': nested}\" tabindex=\"-1\">\r\n @if (!noBreadcrumbs) {\r\n <ion-breadcrumbs>\r\n <ion-breadcrumb class=\"cursor-pointer\" (click)=\"NavigateToList()\">\r\n {{service.title}}\r\n </ion-breadcrumb>\r\n <ion-breadcrumb> \r\n {{id == 0 ? 'Novo Registro' : 'Editar Registro' }} \r\n </ion-breadcrumb>\r\n </ion-breadcrumbs>\r\n }\r\n \r\n <ion-card>\r\n <ion-card-header class=\"!block\">\r\n @if (service) {\r\n <header-view \r\n *ngIf=\"service\" \r\n [novo]=\"id == 0\" \r\n [useDefaultRouting]=\"nested\" \r\n [loading]=\"loading\" \r\n [progress]=\"progress\" \r\n (save)=\"Save()\" \r\n [noBack]=\"noBack\" \r\n [noNew]=\"noNew\"\r\n [backRouterLink]=\"backRouterLink\"\r\n ></header-view>\r\n }\r\n </ion-card-header>\r\n <ion-card-content class=\"p-0 h-full !overflow-y-auto overflow-x-hidden\">\r\n <div class=\"grid grid-cols-12 gap-2 w-full\" *ngIf=\"frm\" [formGroup]=\"frm\">\r\n \r\n @for (field of lstTableFields; track $index) {\r\n @if (field.index != 'id') {\r\n @if (!field.hiddenView) {\r\n @switch (field.type) {\r\n @case (InputType.Bool) {\r\n <input-bool [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\" ></input-bool>\r\n }\r\n @case (InputType.Cep){\r\n <input-cep [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\"></input-cep>\r\n }\r\n @case (InputType.Color){\r\n <input-color [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\"></input-color>\r\n }\r\n @case (InputType.CpfCnpj) {\r\n <input-cpf [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-cpf>\r\n }\r\n @case (InputType.Cpf) {\r\n <input-cpf [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-cpf>\r\n }\r\n @case (InputType.Cnpj) {\r\n <input-cnpj [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-cnpj>\r\n }\r\n @case (InputType.Date) {\r\n <input-date [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-date>\r\n }\r\n @case (InputType.DateTime) {\r\n <input-date-time [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-date-time>\r\n }\r\n @case (InputType.Time) {\r\n <input-time [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-time>\r\n }\r\n @case (InputType.Decimal) {\r\n <input-decimal [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-decimal>\r\n }\r\n @case (InputType.Currency) {\r\n <input-currency [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-currency>\r\n }\r\n @case (InputType.Number) {\r\n <input-number [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-number>\r\n }\r\n @case (InputType.File) {\r\n <input-file [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-file>\r\n }\r\n @case (InputType.Icon) {\r\n <input-icon [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\"></input-icon>\r\n }\r\n @case (InputType.Select) {\r\n <input-select [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-select>\r\n }\r\n @case (InputType.String) {\r\n <input-string [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-string>\r\n }\r\n @case (InputType.TelefoneCelular) {\r\n <input-telefone-celular [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-telefone-celular>\r\n }\r\n @case (InputType.Telefone) {\r\n <input-telefone [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-telefone>\r\n }\r\n @case (InputType.Celular) {\r\n <input-celular [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-celular>\r\n }\r\n @case (InputType.TextArea) {\r\n <input-textarea [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-textarea>\r\n }\r\n }\r\n }\r\n }\r\n }\r\n \r\n <div class=\"col-span-full rounded-2xl p-3 flex items-center justify-center\" *ngIf=\"!service || service.lstTableFields.length == 0\" style=\"background: var(--ion-color-danger);\">\r\n <ion-text class=\"text-2xl text-light\">\r\n <ion-icon class=\"align-sub text-3xl\" name=\"alert-circle\"></ion-icon> [ Invalid Configuration ]\r\n </ion-text>\r\n </div>\r\n </div>\r\n </ion-card-content>\r\n </ion-card>\r\n </div>\r\n</ion-content>", styles: ["ion-card-header{padding:0}\n"], dependencies: [{ kind: "component", type: i4.IonBreadcrumb, selector: "ion-breadcrumb", inputs: ["active", "color", "disabled", "download", "href", "mode", "rel", "routerAnimation", "routerDirection", "separator", "target"] }, { kind: "component", type: i4.IonBreadcrumbs, selector: "ion-breadcrumbs", inputs: ["color", "itemsAfterCollapse", "itemsBeforeCollapse", "maxItems", "mode"] }, { kind: "component", type: i4.IonCard, selector: "ion-card", inputs: ["button", "color", "disabled", "download", "href", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: i4.IonCardContent, selector: "ion-card-content", inputs: ["mode"] }, { kind: "component", type: i4.IonCardHeader, selector: "ion-card-header", inputs: ["color", "mode", "translucent"] }, { kind: "component", type: i4.IonContent, selector: "ion-content", inputs: ["color", "fixedSlotPlacement", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { kind: "component", type: i4.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: i4.IonText, selector: "ion-text", inputs: ["color", "mode"] }, { kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.InputBoolComponent, selector: "input-bool", inputs: ["configuration"] }, { kind: "component", type: i7.InputCepComponent, selector: "input-cep", inputs: ["configuration"] }, { kind: "component", type: i8.InputColorComponent, selector: "input-color" }, { kind: "component", type: i9.InputCpfCnpjComponent, selector: "input-cpf-cnpj, input-cpf, input-cnpj", inputs: ["configuration"], outputs: ["configurationChange"] }, { kind: "component", type: i10.InputDateComponent, selector: "input-date, input-date-time, input-time", inputs: ["configuration"] }, { kind: "component", type: i11.InputDecimalComponent, selector: "input-decimal, input-number, input-currency, input-percentage", inputs: ["configuration"], outputs: ["configurationChange"] }, { kind: "component", type: i12.InputFileComponent, selector: "input-file", inputs: ["configuration"] }, { kind: "component", type: i13.InputIconComponent, selector: "input-icon" }, { kind: "component", type: i14.InputSelectComponent, selector: "input-select", inputs: ["items", "configuration"], outputs: ["itemsChange"] }, { kind: "component", type: i15.InputStringComponent, selector: "input-string", inputs: ["configuration"] }, { kind: "component", type: i16.InputTelefoneComponent, selector: "input-telefone, input-celular, input-telefone-celular", inputs: ["configuration"], outputs: ["configurationChange"] }, { kind: "component", type: i17.InputTextareaComponent, selector: "input-textarea", inputs: ["configuration"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i18.HeaderViewComponent, selector: "header-view", inputs: ["novo", "loading", "progress", "noBack", "noNew", "useDefaultRouting", "backRouterLink"], outputs: ["save"] }] }); }
50
50
  }
51
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DefaultViewComponent, decorators: [{
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DefaultViewComponent, decorators: [{
52
52
  type: Component,
53
53
  args: [{ selector: 'default-view', template: "<ion-content class=\"bg-transparent\"> \r\n <div class=\"wrapper\" [ngClass]=\"{'!p-0 translucid-primary-background': nested}\" tabindex=\"-1\">\r\n @if (!noBreadcrumbs) {\r\n <ion-breadcrumbs>\r\n <ion-breadcrumb class=\"cursor-pointer\" (click)=\"NavigateToList()\">\r\n {{service.title}}\r\n </ion-breadcrumb>\r\n <ion-breadcrumb> \r\n {{id == 0 ? 'Novo Registro' : 'Editar Registro' }} \r\n </ion-breadcrumb>\r\n </ion-breadcrumbs>\r\n }\r\n \r\n <ion-card>\r\n <ion-card-header class=\"!block\">\r\n @if (service) {\r\n <header-view \r\n *ngIf=\"service\" \r\n [novo]=\"id == 0\" \r\n [useDefaultRouting]=\"nested\" \r\n [loading]=\"loading\" \r\n [progress]=\"progress\" \r\n (save)=\"Save()\" \r\n [noBack]=\"noBack\" \r\n [noNew]=\"noNew\"\r\n [backRouterLink]=\"backRouterLink\"\r\n ></header-view>\r\n }\r\n </ion-card-header>\r\n <ion-card-content class=\"p-0 h-full !overflow-y-auto overflow-x-hidden\">\r\n <div class=\"grid grid-cols-12 gap-2 w-full\" *ngIf=\"frm\" [formGroup]=\"frm\">\r\n \r\n @for (field of lstTableFields; track $index) {\r\n @if (field.index != 'id') {\r\n @if (!field.hiddenView) {\r\n @switch (field.type) {\r\n @case (InputType.Bool) {\r\n <input-bool [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\" ></input-bool>\r\n }\r\n @case (InputType.Cep){\r\n <input-cep [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\"></input-cep>\r\n }\r\n @case (InputType.Color){\r\n <input-color [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\"></input-color>\r\n }\r\n @case (InputType.CpfCnpj) {\r\n <input-cpf [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-cpf>\r\n }\r\n @case (InputType.Cpf) {\r\n <input-cpf [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-cpf>\r\n }\r\n @case (InputType.Cnpj) {\r\n <input-cnpj [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-cnpj>\r\n }\r\n @case (InputType.Date) {\r\n <input-date [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-date>\r\n }\r\n @case (InputType.DateTime) {\r\n <input-date-time [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-date-time>\r\n }\r\n @case (InputType.Time) {\r\n <input-time [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-time>\r\n }\r\n @case (InputType.Decimal) {\r\n <input-decimal [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-decimal>\r\n }\r\n @case (InputType.Currency) {\r\n <input-currency [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-currency>\r\n }\r\n @case (InputType.Number) {\r\n <input-number [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-number>\r\n }\r\n @case (InputType.File) {\r\n <input-file [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-file>\r\n }\r\n @case (InputType.Icon) {\r\n <input-icon [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\"></input-icon>\r\n }\r\n @case (InputType.Select) {\r\n <input-select [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-select>\r\n }\r\n @case (InputType.String) {\r\n <input-string [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-string>\r\n }\r\n @case (InputType.TelefoneCelular) {\r\n <input-telefone-celular [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-telefone-celular>\r\n }\r\n @case (InputType.Telefone) {\r\n <input-telefone [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-telefone>\r\n }\r\n @case (InputType.Celular) {\r\n <input-celular [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-celular>\r\n }\r\n @case (InputType.TextArea) {\r\n <input-textarea [class]=\"field.class\" [formControlName]=\"field.index\" [label]=\"field.header\" [loading]=\"loading\" [disabled]=\"field.disabled\" [submitted]=\"submitted\" [configuration]=\"field.configuration\"></input-textarea>\r\n }\r\n }\r\n }\r\n }\r\n }\r\n \r\n <div class=\"col-span-full rounded-2xl p-3 flex items-center justify-center\" *ngIf=\"!service || service.lstTableFields.length == 0\" style=\"background: var(--ion-color-danger);\">\r\n <ion-text class=\"text-2xl text-light\">\r\n <ion-icon class=\"align-sub text-3xl\" name=\"alert-circle\"></ion-icon> [ Invalid Configuration ]\r\n </ion-text>\r\n </div>\r\n </div>\r\n </ion-card-content>\r\n </ion-card>\r\n </div>\r\n</ion-content>", styles: ["ion-card-header{padding:0}\n"] }]
54
54
  }], ctorParameters: () => [{ type: i1.FormBuilder }, { type: i0.ElementRef }, { type: i2.ActivatedRoute }, { type: i3.GenericService }, { type: i4.NavController }], propDecorators: { noBack: [{
@@ -45,10 +45,10 @@ export class HeaderViewComponent {
45
45
  Save() {
46
46
  this.saveEmitter.emit();
47
47
  }
48
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: HeaderViewComponent, deps: [{ token: i1.NavController }, { token: i2.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
49
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: HeaderViewComponent, selector: "header-view", inputs: { novo: "novo", loading: "loading", progress: "progress", noBack: "noBack", noNew: "noNew", useDefaultRouting: "useDefaultRouting", backRouterLink: "backRouterLink" }, outputs: { saveEmitter: "save" }, viewQueries: [{ propertyName: "IonBackButtonElement", first: true, predicate: IonBackButton, descendants: true }, { propertyName: "NewIonButtonElement", first: true, predicate: ["new"], descendants: true }], ngImport: i0, template: "<div class=\"w-full h-7 flex\">\r\n <div class=\"w-1/2 flex items-center justify-start gap-3\">\r\n @if(!noBack){\r\n @if(useDefaultRouting || backRouterLink){\r\n <ion-button class=\"m-0\" fill=\"clear\" size=\"small\" [routerLink]=\"backRouterLink ? backRouterLink : DefaultBackRoute\">\r\n <ion-icon class=\"text-[1.7rem]\" name=\"chevron-back\" slot=\"icon-only\"></ion-icon>\r\n <ion-text class=\"text-base\">Voltar</ion-text>\r\n </ion-button>\r\n }\r\n @else{\r\n <ion-back-button style=\"--min-height: 100%;\" [disabled]=\"loading\" text=\"Voltar\" [defaultHref]=\"DefaultBackRoute\"></ion-back-button>\r\n }\r\n\r\n <!-- <ion-card button [disabled]=\"loading\" class=\"h-full w-12 m-0 default-transition\" style=\"border-color: var(--ion-color-primary)\">\r\n <ion-card-content class=\"p-0 bg-transparent\">\r\n @if(!useDefaultRouting){\r\n <ion-back-button class=\"scale-75 size-full\" style=\"--min-height: 100%;\" text=\"\" [defaultHref]=\"BackRoute\" >\r\n </ion-back-button>\r\n }@else {\r\n <ion-button class=\"size-full\" size=\"small\" fill=\"clear\" [routerLink]=\"BackRoute\">\r\n <ion-icon name=\"chevron-back\" slot=\"icon-only\"></ion-icon>\r\n </ion-button>\r\n }\r\n </ion-card-content>\r\n </ion-card> -->\r\n }\r\n @if(!noBack){\r\n <div class=\"h-full border-r-2 border-r-primary border-solid mask-y/50\"></div>\r\n }\r\n\r\n <div class=\"relative\">\r\n <ion-button class=\"-mx-2\" [disabled]=\"loading\" fill=\"clear\" size=\"small\" (click)=\"Save()\">\r\n <ion-icon class=\"text-base\" slot=\"start\" name=\"save\"></ion-icon>\r\n <ion-text class=\"text-base\">\r\n Salvar\r\n </ion-text>\r\n </ion-button>\r\n\r\n <div class=\"absolute w-[125%] h-[125%] -top-[12.5%] -left-[12.5%] flex flex-col items-center justify-center default-transition backdrop-blur-sm\" [ngClass]=\"{'opacity-0 -translate-y-8': !loading}\">\r\n <ion-text color=\"success\" class=\"text-sm mt-1\"><b>\r\n @if(progress){\r\n {{(progress * 100) | number: '1.1-1'}}%\r\n }@else {\r\n {{0 | number: '1.1-1'}}%\r\n }\r\n </b></ion-text>\r\n <ion-progress-bar [value]=\"progress\" color=\"success\" class=\"w-full default-transition\"></ion-progress-bar>\r\n </div>\r\n </div>\r\n <ng-content select=\"[slot=start]\"></ng-content>\r\n </div>\r\n <div class=\"w-1/2 flex justify-end items-center gap-2\">\r\n <ng-content select=\"[slot=end]\"></ng-content>\r\n\r\n @if(!(noNew || novo)){\r\n <ion-button #new [routerLink]=\"['../']\" class=\"m-0\" fill=\"clear\" size=\"small\">\r\n <ion-icon class=\"text-base\" name=\"add\" slot=\"start\"></ion-icon> \r\n <ion-text class=\"text-base\">\r\n Novo\r\n </ion-text>\r\n </ion-button>\r\n }\r\n </div>\r\n</div>", styles: ["#back{margin:0;margin-right:.5rem;width:2rem;border-radius:1rem;padding:0}#back::part(native){padding-left:.5rem;padding-right:.5rem}\n"], dependencies: [{ kind: "component", type: i1.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: i1.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: i1.IonProgressBar, selector: "ion-progress-bar", inputs: ["buffer", "color", "mode", "reversed", "type", "value"] }, { kind: "component", type: i1.IonText, selector: "ion-text", inputs: ["color", "mode"] }, { kind: "component", type: i1.IonBackButton, selector: "ion-back-button" }, { kind: "directive", type: i1.RouterLinkDelegate, selector: ":not(a):not(area)[routerLink]" }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: i3.DecimalPipe, name: "number" }] }); }
48
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: HeaderViewComponent, deps: [{ token: i1.NavController }, { token: i2.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
49
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: HeaderViewComponent, selector: "header-view", inputs: { novo: "novo", loading: "loading", progress: "progress", noBack: "noBack", noNew: "noNew", useDefaultRouting: "useDefaultRouting", backRouterLink: "backRouterLink" }, outputs: { saveEmitter: "save" }, viewQueries: [{ propertyName: "IonBackButtonElement", first: true, predicate: IonBackButton, descendants: true }, { propertyName: "NewIonButtonElement", first: true, predicate: ["new"], descendants: true }], ngImport: i0, template: "<div class=\"w-full h-7 flex\">\r\n <div class=\"w-1/2 flex items-center justify-start gap-3\">\r\n @if(!noBack){\r\n @if(useDefaultRouting || backRouterLink){\r\n <ion-button class=\"m-0\" fill=\"clear\" size=\"small\" [routerLink]=\"backRouterLink ? backRouterLink : DefaultBackRoute\">\r\n <ion-icon class=\"text-[1.7rem]\" name=\"chevron-back\" slot=\"icon-only\"></ion-icon>\r\n <ion-text class=\"text-base\">Voltar</ion-text>\r\n </ion-button>\r\n }\r\n @else{\r\n <ion-back-button style=\"--min-height: 100%;\" [disabled]=\"loading\" text=\"Voltar\" [defaultHref]=\"DefaultBackRoute\"></ion-back-button>\r\n }\r\n\r\n <!-- <ion-card button [disabled]=\"loading\" class=\"h-full w-12 m-0 default-transition\" style=\"border-color: var(--ion-color-primary)\">\r\n <ion-card-content class=\"p-0 bg-transparent\">\r\n @if(!useDefaultRouting){\r\n <ion-back-button class=\"scale-75 size-full\" style=\"--min-height: 100%;\" text=\"\" [defaultHref]=\"BackRoute\" >\r\n </ion-back-button>\r\n }@else {\r\n <ion-button class=\"size-full\" size=\"small\" fill=\"clear\" [routerLink]=\"BackRoute\">\r\n <ion-icon name=\"chevron-back\" slot=\"icon-only\"></ion-icon>\r\n </ion-button>\r\n }\r\n </ion-card-content>\r\n </ion-card> -->\r\n }\r\n @if(!noBack){\r\n <div class=\"h-full border-r-2 border-r-primary border-solid mask-y/50\"></div>\r\n }\r\n\r\n <div class=\"relative\">\r\n <ion-button class=\"-mx-2\" [disabled]=\"loading\" fill=\"clear\" size=\"small\" (click)=\"Save()\">\r\n <ion-icon class=\"text-base\" slot=\"start\" name=\"save\"></ion-icon>\r\n <ion-text class=\"text-base\">\r\n Salvar\r\n </ion-text>\r\n </ion-button>\r\n\r\n <div class=\"absolute w-[125%] h-[125%] -top-[12.5%] -left-[12.5%] flex flex-col items-center justify-center default-transition backdrop-blur-sm\" [ngClass]=\"{'opacity-0 -translate-y-8': !loading}\">\r\n <ion-text color=\"success\" class=\"text-sm mt-1\"><b>\r\n @if(progress){\r\n {{(progress * 100) | number: '1.1-1'}}%\r\n }@else {\r\n {{0 | number: '1.1-1'}}%\r\n }\r\n </b></ion-text>\r\n <ion-progress-bar [value]=\"progress\" color=\"success\" class=\"w-full default-transition\"></ion-progress-bar>\r\n </div>\r\n </div>\r\n <ng-content select=\"[slot=start]\"></ng-content>\r\n </div>\r\n <div class=\"w-1/2 flex justify-end items-center gap-2\">\r\n <ng-content select=\"[slot=end]\"></ng-content>\r\n\r\n @if(!(noNew || novo)){\r\n <ion-button #new [routerLink]=\"['../']\" class=\"m-0\" fill=\"clear\" size=\"small\">\r\n <ion-icon class=\"text-base\" name=\"add\" slot=\"start\"></ion-icon> \r\n <ion-text class=\"text-base\">\r\n Novo\r\n </ion-text>\r\n </ion-button>\r\n }\r\n </div>\r\n</div>", styles: ["#back{margin:0;margin-right:.5rem;width:2rem;border-radius:1rem;padding:0}#back::part(native){padding-left:.5rem;padding-right:.5rem}\n"], dependencies: [{ kind: "component", type: i1.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: i1.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: i1.IonProgressBar, selector: "ion-progress-bar", inputs: ["buffer", "color", "mode", "reversed", "type", "value"] }, { kind: "component", type: i1.IonText, selector: "ion-text", inputs: ["color", "mode"] }, { kind: "component", type: i1.IonBackButton, selector: "ion-back-button" }, { kind: "directive", type: i1.RouterLinkDelegate, selector: ":not(a):not(area)[routerLink]" }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: i3.DecimalPipe, name: "number" }] }); }
50
50
  }
51
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: HeaderViewComponent, decorators: [{
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: HeaderViewComponent, decorators: [{
52
52
  type: Component,
53
53
  args: [{ selector: 'header-view', template: "<div class=\"w-full h-7 flex\">\r\n <div class=\"w-1/2 flex items-center justify-start gap-3\">\r\n @if(!noBack){\r\n @if(useDefaultRouting || backRouterLink){\r\n <ion-button class=\"m-0\" fill=\"clear\" size=\"small\" [routerLink]=\"backRouterLink ? backRouterLink : DefaultBackRoute\">\r\n <ion-icon class=\"text-[1.7rem]\" name=\"chevron-back\" slot=\"icon-only\"></ion-icon>\r\n <ion-text class=\"text-base\">Voltar</ion-text>\r\n </ion-button>\r\n }\r\n @else{\r\n <ion-back-button style=\"--min-height: 100%;\" [disabled]=\"loading\" text=\"Voltar\" [defaultHref]=\"DefaultBackRoute\"></ion-back-button>\r\n }\r\n\r\n <!-- <ion-card button [disabled]=\"loading\" class=\"h-full w-12 m-0 default-transition\" style=\"border-color: var(--ion-color-primary)\">\r\n <ion-card-content class=\"p-0 bg-transparent\">\r\n @if(!useDefaultRouting){\r\n <ion-back-button class=\"scale-75 size-full\" style=\"--min-height: 100%;\" text=\"\" [defaultHref]=\"BackRoute\" >\r\n </ion-back-button>\r\n }@else {\r\n <ion-button class=\"size-full\" size=\"small\" fill=\"clear\" [routerLink]=\"BackRoute\">\r\n <ion-icon name=\"chevron-back\" slot=\"icon-only\"></ion-icon>\r\n </ion-button>\r\n }\r\n </ion-card-content>\r\n </ion-card> -->\r\n }\r\n @if(!noBack){\r\n <div class=\"h-full border-r-2 border-r-primary border-solid mask-y/50\"></div>\r\n }\r\n\r\n <div class=\"relative\">\r\n <ion-button class=\"-mx-2\" [disabled]=\"loading\" fill=\"clear\" size=\"small\" (click)=\"Save()\">\r\n <ion-icon class=\"text-base\" slot=\"start\" name=\"save\"></ion-icon>\r\n <ion-text class=\"text-base\">\r\n Salvar\r\n </ion-text>\r\n </ion-button>\r\n\r\n <div class=\"absolute w-[125%] h-[125%] -top-[12.5%] -left-[12.5%] flex flex-col items-center justify-center default-transition backdrop-blur-sm\" [ngClass]=\"{'opacity-0 -translate-y-8': !loading}\">\r\n <ion-text color=\"success\" class=\"text-sm mt-1\"><b>\r\n @if(progress){\r\n {{(progress * 100) | number: '1.1-1'}}%\r\n }@else {\r\n {{0 | number: '1.1-1'}}%\r\n }\r\n </b></ion-text>\r\n <ion-progress-bar [value]=\"progress\" color=\"success\" class=\"w-full default-transition\"></ion-progress-bar>\r\n </div>\r\n </div>\r\n <ng-content select=\"[slot=start]\"></ng-content>\r\n </div>\r\n <div class=\"w-1/2 flex justify-end items-center gap-2\">\r\n <ng-content select=\"[slot=end]\"></ng-content>\r\n\r\n @if(!(noNew || novo)){\r\n <ion-button #new [routerLink]=\"['../']\" class=\"m-0\" fill=\"clear\" size=\"small\">\r\n <ion-icon class=\"text-base\" name=\"add\" slot=\"start\"></ion-icon> \r\n <ion-text class=\"text-base\">\r\n Novo\r\n </ion-text>\r\n </ion-button>\r\n }\r\n </div>\r\n</div>", styles: ["#back{margin:0;margin-right:.5rem;width:2rem;border-radius:1rem;padding:0}#back::part(native){padding-left:.5rem;padding-right:.5rem}\n"] }]
54
54
  }], ctorParameters: () => [{ type: i1.NavController }, { type: i2.ActivatedRoute }], propDecorators: { novo: [{
@@ -140,10 +140,10 @@ export class View {
140
140
  return;
141
141
  }
142
142
  }
143
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: View, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
144
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: View, selector: "ng-component", inputs: { id: "id", loading: "loading", submitted: "submitted", progress: "progress", service: "service", lstTableFields: "lstTableFields", redirectPath: "redirectPath" }, outputs: { ViewDidRefreshEmitter: "ViewDidRefresh", SaveEmitter: "Save" }, host: { listeners: { "window:keydown": "onKeyPress($event)" } }, viewQueries: [{ propertyName: "Wrapper", first: true, predicate: [".wrapper"], descendants: true }, { propertyName: "HeaderViewComponentElement", first: true, predicate: HeaderViewComponent, descendants: true }, { propertyName: "lstCustomInputs", predicate: CustomInput, descendants: true }], ngImport: i0, template: '', isInline: true, styles: [""] }); }
143
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: View, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
144
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: View, selector: "ng-component", inputs: { id: "id", loading: "loading", submitted: "submitted", progress: "progress", service: "service", lstTableFields: "lstTableFields", redirectPath: "redirectPath" }, outputs: { ViewDidRefreshEmitter: "ViewDidRefresh", SaveEmitter: "Save" }, host: { listeners: { "window:keydown": "onKeyPress($event)" } }, viewQueries: [{ propertyName: "Wrapper", first: true, predicate: [".wrapper"], descendants: true }, { propertyName: "HeaderViewComponentElement", first: true, predicate: HeaderViewComponent, descendants: true }, { propertyName: "lstCustomInputs", predicate: CustomInput, descendants: true }], ngImport: i0, template: '', isInline: true, styles: [""] }); }
145
145
  }
146
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: View, decorators: [{
146
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: View, decorators: [{
147
147
  type: Component,
148
148
  args: [{ template: '' }]
149
149
  }], ctorParameters: () => [], propDecorators: { id: [{
@@ -35,8 +35,8 @@ const lstComponents = [
35
35
  - DefaultPaginationComponent,
36
36
  */
37
37
  export class DefaultModule {
38
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DefaultModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
39
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: DefaultModule, declarations: [HeaderListComponent,
38
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DefaultModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
39
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: DefaultModule, declarations: [HeaderListComponent,
40
40
  DefaultListComponent,
41
41
  DefaultViewComponent,
42
42
  HeaderViewComponent,
@@ -62,7 +62,7 @@ export class DefaultModule {
62
62
  DefaultTableComponent,
63
63
  DefaultPaginationComponent,
64
64
  ThFilterComponent] }); }
65
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DefaultModule, imports: [IonicModule,
65
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DefaultModule, imports: [IonicModule,
66
66
  CommonModule,
67
67
  InputsModule,
68
68
  ReactiveFormsModule,
@@ -72,7 +72,7 @@ export class DefaultModule {
72
72
  SIonPopoverModule,
73
73
  ContentBlockComponent] }); }
74
74
  }
75
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DefaultModule, decorators: [{
75
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DefaultModule, decorators: [{
76
76
  type: NgModule,
77
77
  args: [{
78
78
  declarations: [...lstComponents],
@@ -45,10 +45,10 @@ export class DefaultPage {
45
45
  SetTitle(item) {
46
46
  this.genericService.SetTitle(item.title);
47
47
  }
48
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DefaultPage, deps: [{ token: i1.ActivatedRoute }, { token: i2.EnvironmentService }, { token: i3.GenericService }, { token: i4.RouteProviderService }], target: i0.ɵɵFactoryTarget.Component }); }
49
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: DefaultPage, isStandalone: true, selector: "app-default", ngImport: i0, template: "<ion-content [fullscreen]=\"true\">\r\n <div class=\"wrapper\">\r\n <ion-breadcrumbs>\r\n <ion-breadcrumb [routerLink]=\"[null]\">\r\n <ion-icon slot=\"start\" name=\"home\"></ion-icon> Inicio\r\n </ion-breadcrumb>\r\n </ion-breadcrumbs>\r\n \r\n <ion-card>\r\n <ion-card-content class=\"flex flex-col items-center justify-center !p-6\">\r\n <div class=\"w-full shrink-0 text-center\">\r\n @if(lstImage){\r\n @for (item of lstImage; track $index) {\r\n <ion-img [class]=\"item.classes\" [src]=\"item.src\" (ion-error)=\"lstImage\"></ion-img>\r\n }\r\n }\r\n @else {\r\n <ion-text class=\"text-8xl font-poppins w-full\"> {{title}} </ion-text>\r\n }\r\n </div>\r\n\r\n <div class=\"overflow-hidden p-2 w-full relative\">\r\n <loading [type]=\"3\" [loading]=\"loading\"></loading>\r\n <div class=\"size-full flex flex-wrap portrait:!grid gap-2\">\r\n @for (item of lstMenu; track item; let i = $index) {\r\n @if(item.type == \"Menu\"){\r\n <ion-button fill=\"outline\" class=\"grow min-w-fit\" [routerLink]=\"[item.route]\">\r\n <ion-icon slot=\"start\" [name]=\"item.icon\"></ion-icon> \r\n {{useTranslation ? (TranslationModule.Permissao + item.id | translate) : item.title}}\r\n </ion-button>\r\n }\r\n @if(item.type == \"MenuGroup\"){\r\n <ion-button fill=\"outline\" class=\"grow min-w-fit\" (click)=\"popover.present($event)\">\r\n <ion-icon slot=\"start\" [name]=\"item.icon\"></ion-icon> \r\n {{useTranslation ? (TranslationModule.PermissaoGrupo + item.id | translate) : item.title}}\r\n </ion-button>\r\n\r\n <ion-popover #popover class=\"overflow-y-auto\" [dismissOnSelect]=\"true\" triggerAction=\"click\">\r\n <ng-template>\r\n <ion-list class=\"no-outer-border\">\r\n <ion-item class=\"bg-transparent\" (click)=\"SetTitle(menu)\" *ngFor=\"let menu of item.lstMenu\" [routerLink]=\"['./' + menu.route]\" lines=\"none\" detail=\"false\" routerLinkActive=\"selected\">\r\n <ion-icon [name]=\"menu.icon\" slot=\"start\"></ion-icon> \r\n <ion-label> \r\n {{useTranslation ? (TranslationModule.Permissao + menu.id | translate) : menu.title}} \r\n </ion-label>\r\n </ion-item>\r\n </ion-list>\r\n </ng-template>\r\n </ion-popover>\r\n }\r\n }\r\n </div>\r\n </div>\r\n\r\n <!-- <div class=\"!overflow-y-auto w-full portrait:grow relative\">\r\n <loading [type]=\"3\" [loading]=\"loading\"></loading>\r\n <div class=\"flex flex-wrap items-start justify-start mt-4 portrait:!grid portrait:!grid-cols-1\"> \r\n </div>\r\n </div> -->\r\n </ion-card-content>\r\n </ion-card>\r\n </div>\r\n</ion-content>", styles: ["ion-popover::part(content){overflow-y:auto}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: IonicModule }, { kind: "component", type: i6.IonBreadcrumb, selector: "ion-breadcrumb", inputs: ["active", "color", "disabled", "download", "href", "mode", "rel", "routerAnimation", "routerDirection", "separator", "target"] }, { kind: "component", type: i6.IonBreadcrumbs, selector: "ion-breadcrumbs", inputs: ["color", "itemsAfterCollapse", "itemsBeforeCollapse", "maxItems", "mode"] }, { kind: "component", type: i6.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: i6.IonCard, selector: "ion-card", inputs: ["button", "color", "disabled", "download", "href", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: i6.IonCardContent, selector: "ion-card-content", inputs: ["mode"] }, { kind: "component", type: i6.IonContent, selector: "ion-content", inputs: ["color", "fixedSlotPlacement", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { kind: "component", type: i6.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: i6.IonImg, selector: "ion-img", inputs: ["alt", "src"] }, { kind: "component", type: i6.IonItem, selector: "ion-item", inputs: ["button", "color", "detail", "detailIcon", "disabled", "download", "href", "lines", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: i6.IonLabel, selector: "ion-label", inputs: ["color", "mode", "position"] }, { kind: "component", type: i6.IonList, selector: "ion-list", inputs: ["inset", "lines", "mode"] }, { kind: "component", type: i6.IonText, selector: "ion-text", inputs: ["color", "mode"] }, { kind: "component", type: i6.IonPopover, selector: "ion-popover" }, { kind: "directive", type: i6.RouterLinkDelegate, selector: ":not(a):not(area)[routerLink]" }, { kind: "ngmodule", type: InputsModule }, { kind: "directive", type: RouterLinkWithHref, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: LoadingComponent, selector: "loading", inputs: ["text", "type", "loading"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }] }); }
48
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DefaultPage, deps: [{ token: i1.ActivatedRoute }, { token: i2.EnvironmentService }, { token: i3.GenericService }, { token: i4.RouteProviderService }], target: i0.ɵɵFactoryTarget.Component }); }
49
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: DefaultPage, isStandalone: true, selector: "app-default", ngImport: i0, template: "<ion-content [fullscreen]=\"true\">\r\n <div class=\"wrapper\">\r\n <ion-breadcrumbs>\r\n <ion-breadcrumb [routerLink]=\"[null]\">\r\n <ion-icon slot=\"start\" name=\"home\"></ion-icon> Inicio\r\n </ion-breadcrumb>\r\n </ion-breadcrumbs>\r\n \r\n <ion-card>\r\n <ion-card-content class=\"flex flex-col items-center justify-center !p-6\">\r\n <div class=\"w-full shrink-0 text-center\">\r\n @if(lstImage){\r\n @for (item of lstImage; track $index) {\r\n <ion-img [class]=\"item.classes\" [src]=\"item.src\" (ion-error)=\"lstImage\"></ion-img>\r\n }\r\n }\r\n @else {\r\n <ion-text class=\"text-8xl font-poppins w-full\"> {{title}} </ion-text>\r\n }\r\n </div>\r\n\r\n <div class=\"overflow-hidden p-2 w-full relative\">\r\n <loading [type]=\"3\" [loading]=\"loading\"></loading>\r\n <div class=\"size-full flex flex-wrap portrait:!grid gap-2\">\r\n @for (item of lstMenu; track item; let i = $index) {\r\n @if(item.type == \"Menu\"){\r\n <ion-button fill=\"outline\" class=\"grow min-w-fit\" [routerLink]=\"[item.route]\">\r\n <ion-icon slot=\"start\" [name]=\"item.icon\"></ion-icon> \r\n {{useTranslation ? (TranslationModule.Permissao + item.id | translate) : item.title}}\r\n </ion-button>\r\n }\r\n @if(item.type == \"MenuGroup\"){\r\n <ion-button fill=\"outline\" class=\"grow min-w-fit\" (click)=\"popover.present($event)\">\r\n <ion-icon slot=\"start\" [name]=\"item.icon\"></ion-icon> \r\n {{useTranslation ? (TranslationModule.PermissaoGrupo + item.id | translate) : item.title}}\r\n </ion-button>\r\n\r\n <ion-popover #popover class=\"overflow-y-auto\" [dismissOnSelect]=\"true\" triggerAction=\"click\">\r\n <ng-template>\r\n <ion-list class=\"no-outer-border\">\r\n <ion-item class=\"bg-transparent\" (click)=\"SetTitle(menu)\" *ngFor=\"let menu of item.lstMenu\" [routerLink]=\"['./' + menu.route]\" lines=\"none\" detail=\"false\" routerLinkActive=\"selected\">\r\n <ion-icon [name]=\"menu.icon\" slot=\"start\"></ion-icon> \r\n <ion-label> \r\n {{useTranslation ? (TranslationModule.Permissao + menu.id | translate) : menu.title}} \r\n </ion-label>\r\n </ion-item>\r\n </ion-list>\r\n </ng-template>\r\n </ion-popover>\r\n }\r\n }\r\n </div>\r\n </div>\r\n\r\n <!-- <div class=\"!overflow-y-auto w-full portrait:grow relative\">\r\n <loading [type]=\"3\" [loading]=\"loading\"></loading>\r\n <div class=\"flex flex-wrap items-start justify-start mt-4 portrait:!grid portrait:!grid-cols-1\"> \r\n </div>\r\n </div> -->\r\n </ion-card-content>\r\n </ion-card>\r\n </div>\r\n</ion-content>", styles: ["ion-popover::part(content){overflow-y:auto}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: IonicModule }, { kind: "component", type: i6.IonBreadcrumb, selector: "ion-breadcrumb", inputs: ["active", "color", "disabled", "download", "href", "mode", "rel", "routerAnimation", "routerDirection", "separator", "target"] }, { kind: "component", type: i6.IonBreadcrumbs, selector: "ion-breadcrumbs", inputs: ["color", "itemsAfterCollapse", "itemsBeforeCollapse", "maxItems", "mode"] }, { kind: "component", type: i6.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: i6.IonCard, selector: "ion-card", inputs: ["button", "color", "disabled", "download", "href", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: i6.IonCardContent, selector: "ion-card-content", inputs: ["mode"] }, { kind: "component", type: i6.IonContent, selector: "ion-content", inputs: ["color", "fixedSlotPlacement", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { kind: "component", type: i6.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: i6.IonImg, selector: "ion-img", inputs: ["alt", "src"] }, { kind: "component", type: i6.IonItem, selector: "ion-item", inputs: ["button", "color", "detail", "detailIcon", "disabled", "download", "href", "lines", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: i6.IonLabel, selector: "ion-label", inputs: ["color", "mode", "position"] }, { kind: "component", type: i6.IonList, selector: "ion-list", inputs: ["inset", "lines", "mode"] }, { kind: "component", type: i6.IonText, selector: "ion-text", inputs: ["color", "mode"] }, { kind: "component", type: i6.IonPopover, selector: "ion-popover" }, { kind: "directive", type: i6.RouterLinkDelegate, selector: ":not(a):not(area)[routerLink]" }, { kind: "ngmodule", type: InputsModule }, { kind: "directive", type: RouterLinkWithHref, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: LoadingComponent, selector: "loading", inputs: ["text", "type", "loading"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }] }); }
50
50
  }
51
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DefaultPage, decorators: [{
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DefaultPage, decorators: [{
52
52
  type: Component,
53
53
  args: [{ standalone: true, selector: 'app-default', imports: [
54
54
  CommonModule,
@@ -31,10 +31,10 @@ export class DragDropFileDirective {
31
31
  this.fileDropped.emit(Array.from(files));
32
32
  }
33
33
  }
34
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DragDropFileDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
35
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: DragDropFileDirective, selector: "[DragDropFile]", outputs: { fileDropped: "fileDropped" }, host: { listeners: { "dragover": "onDragOver($event)", "dragleave": "onDragLeave($event)", "drop": "onDrop($event)" }, properties: { "class.fileOver": "this.fileOver" } }, queries: [{ propertyName: "dragDropOverlay", first: true, predicate: DragDropOverlayComponent, descendants: true }], ngImport: i0 }); }
34
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DragDropFileDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
35
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: DragDropFileDirective, selector: "[DragDropFile]", outputs: { fileDropped: "fileDropped" }, host: { listeners: { "dragover": "onDragOver($event)", "dragleave": "onDragLeave($event)", "drop": "onDrop($event)" }, properties: { "class.fileOver": "this.fileOver" } }, queries: [{ propertyName: "dragDropOverlay", first: true, predicate: DragDropOverlayComponent, descendants: true }], ngImport: i0 }); }
36
36
  }
37
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DragDropFileDirective, decorators: [{
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DragDropFileDirective, decorators: [{
38
38
  type: Directive,
39
39
  args: [{
40
40
  selector: '[DragDropFile]'
@@ -9,15 +9,15 @@ const values = [
9
9
  DragDropOverlayComponent
10
10
  ];
11
11
  export class DragDropFileModule {
12
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DragDropFileModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
13
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: DragDropFileModule, declarations: [DragDropFileDirective,
12
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DragDropFileModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
13
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: DragDropFileModule, declarations: [DragDropFileDirective,
14
14
  DragDropOverlayComponent], imports: [CommonModule,
15
15
  IonicModule], exports: [DragDropFileDirective,
16
16
  DragDropOverlayComponent] }); }
17
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DragDropFileModule, imports: [CommonModule,
17
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DragDropFileModule, imports: [CommonModule,
18
18
  IonicModule] }); }
19
19
  }
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DragDropFileModule, decorators: [{
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DragDropFileModule, decorators: [{
21
21
  type: NgModule,
22
22
  args: [{
23
23
  declarations: [...values],
@@ -5,10 +5,10 @@ import * as i2 from "@ionic/angular";
5
5
  export class DragDropOverlayComponent {
6
6
  constructor() { }
7
7
  ngOnInit() { }
8
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DragDropOverlayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DragDropOverlayComponent, selector: "drag-drop-overlay", ngImport: i0, template: "<div class=\"absolute top-0 left-0 size-full z-50 p-4 pointer-events-none\" [ngClass]=\"{'fileOver': fileOver}\">\r\n <div class=\"border-4 border-dashed border-transparent default-transition rounded-2xl size-full flex items-center justify-center\">\r\n <ion-icon class=\"text-9xl text-transparent\" name=\"cloud-upload\"></ion-icon>\r\n </div>\r\n</div>", styles: [".fileOver{top:0!important;--tw-backdrop-blur: blur(4px) !important;--tw-backdrop-grayscale: grayscale(.5) !important;-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)!important;backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)!important}.fileOver div{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.fileOver div ion-icon{color:var(--ion-color-dark)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }] }); }
8
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DragDropOverlayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: DragDropOverlayComponent, selector: "drag-drop-overlay", ngImport: i0, template: "<div class=\"absolute top-0 left-0 size-full z-50 p-4 pointer-events-none\" [ngClass]=\"{'fileOver': fileOver}\">\r\n <div class=\"border-4 border-dashed border-transparent default-transition rounded-2xl size-full flex items-center justify-center\">\r\n <ion-icon class=\"text-9xl text-transparent\" name=\"cloud-upload\"></ion-icon>\r\n </div>\r\n</div>", styles: [".fileOver{top:0!important;--tw-backdrop-blur: blur(4px) !important;--tw-backdrop-grayscale: grayscale(.5) !important;-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)!important;backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)!important}.fileOver div{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.fileOver div ion-icon{color:var(--ion-color-dark)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }] }); }
10
10
  }
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DragDropOverlayComponent, decorators: [{
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DragDropOverlayComponent, decorators: [{
12
12
  type: Component,
13
13
  args: [{ selector: 'drag-drop-overlay', template: "<div class=\"absolute top-0 left-0 size-full z-50 p-4 pointer-events-none\" [ngClass]=\"{'fileOver': fileOver}\">\r\n <div class=\"border-4 border-dashed border-transparent default-transition rounded-2xl size-full flex items-center justify-center\">\r\n <ion-icon class=\"text-9xl text-transparent\" name=\"cloud-upload\"></ion-icon>\r\n </div>\r\n</div>", styles: [".fileOver{top:0!important;--tw-backdrop-blur: blur(4px) !important;--tw-backdrop-grayscale: grayscale(.5) !important;-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)!important;backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)!important}.fileOver div{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.fileOver div ion-icon{color:var(--ion-color-dark)}\n"] }]
14
14
  }], ctorParameters: () => [] });
@@ -18,10 +18,10 @@ export class DefaultDrawerEndComponent {
18
18
  });
19
19
  }
20
20
  Loggout() { this.authService.Loggout(); }
21
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DefaultDrawerEndComponent, deps: [{ token: i1.AuthService }], target: i0.ɵɵFactoryTarget.Component }); }
22
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DefaultDrawerEndComponent, isStandalone: true, selector: "default-drawer-end", inputs: { colapsed: "colapsed" }, ngImport: i0, template: "<div class=\"w-full default-transition flex\" [ngClass]=\"{'!w-16': colapsed}\">\r\n <div class=\"w-10 shrink-0 aspect-square rounded-2xl flex items-center justify-center default-transition\" style=\"background-color: var(--ion-color-primary);\">\r\n <span class=\"uppercase text-white\">{{Token ? Token.Nome[0] : ''}}</span>\r\n </div>\r\n <div class=\"grow min-w-10 p-2 justify-center items-center whitespace-nowrap text-ellipsis overflow-hidden block default-transition\" [ngClass]=\"{'opacity-0 w-0': colapsed}\">\r\n <span>{{Token ? Token.Nome : ''}}</span>\r\n </div>\r\n\r\n <ion-button (click)=\"Loggout()\" class=\"size-10 shrink-0\" size=\"small\" color=\"danger\">\r\n <ion-icon slot=\"icon-only\" name=\"exit-outline\"></ion-icon> \r\n </ion-button>\r\n</div>", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: IonicModule }, { kind: "component", type: i3.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: i3.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }] }); }
21
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DefaultDrawerEndComponent, deps: [{ token: i1.AuthService }], target: i0.ɵɵFactoryTarget.Component }); }
22
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: DefaultDrawerEndComponent, isStandalone: true, selector: "default-drawer-end", inputs: { colapsed: "colapsed" }, ngImport: i0, template: "<div class=\"w-full default-transition flex\" [ngClass]=\"{'!w-16': colapsed}\">\r\n <div class=\"w-10 shrink-0 aspect-square rounded-2xl flex items-center justify-center default-transition\" style=\"background-color: var(--ion-color-primary);\">\r\n <span class=\"uppercase text-white\">{{Token ? Token.Nome[0] : ''}}</span>\r\n </div>\r\n <div class=\"grow min-w-10 p-2 justify-center items-center whitespace-nowrap text-ellipsis overflow-hidden block default-transition\" [ngClass]=\"{'opacity-0 w-0': colapsed}\">\r\n <span>{{Token ? Token.Nome : ''}}</span>\r\n </div>\r\n\r\n <ion-button (click)=\"Loggout()\" class=\"size-10 shrink-0\" size=\"small\" color=\"danger\">\r\n <ion-icon slot=\"icon-only\" name=\"exit-outline\"></ion-icon> \r\n </ion-button>\r\n</div>", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: IonicModule }, { kind: "component", type: i3.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: i3.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }] }); }
23
23
  }
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DefaultDrawerEndComponent, decorators: [{
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DefaultDrawerEndComponent, decorators: [{
25
25
  type: Component,
26
26
  args: [{ standalone: true, imports: [
27
27
  CommonModule,
@@ -33,10 +33,10 @@ export class DrawerGroupComponent {
33
33
  SetTitle(item) {
34
34
  this.genericService.SetTitle(item.title);
35
35
  }
36
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DrawerGroupComponent, deps: [{ token: i1.Router }, { token: i2.NavController }, { token: i3.GenericService }], target: i0.ɵɵFactoryTarget.Component }); }
37
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: DrawerGroupComponent, isStandalone: true, selector: "drawer-group", inputs: { MenuGroup: "MenuGroup", colapsed: "colapsed", useTranslation: "useTranslation" }, viewQueries: [{ propertyName: "lstIonAcordionGroup", predicate: IonAccordionGroup, descendants: true }], ngImport: i0, template: "<div class=\"size-full flex flex-col verflow-hidden\">\r\n <div class=\"w-full text-center\">\r\n <!-- <ion-item class=\"bg-inactive bg-active\" lines=\"none\" style=\"--border-radius: 1rem\">\r\n <ion-label class=\"text-center\">\r\n <ion-icon class=\"text-2xl\" [name]=\"MenuGroup.icon\"></ion-icon> <br>\r\n <ion-text class=\"text-lg\">\r\n {{useTranslation ? (TranslationModule.PermissaoGrupo + MenuGroup.id | translate) : MenuGroup.title}} \r\n </ion-text>\r\n </ion-label>\r\n </ion-item> -->\r\n <div class=\"gradient-background header flex flex-col gap-1 p-2 text-center items-center justify-center rounded-xl\">\r\n <ion-icon class=\"text-2xl\" [name]=\"MenuGroup.icon\"></ion-icon>\r\n <ion-text class=\"text-dark\">\r\n {{useTranslation ? (TranslationModule.PermissaoGrupo + MenuGroup.id | translate) : MenuGroup.title}} \r\n </ion-text>\r\n </div>\r\n </div>\r\n <div class=\"flex flex-col gap-2 w-full pt-2 mask-y overflow-y-auto\">\r\n @for (mGroup of MenuGroup.lstMenu; track $index) {\r\n <!-- Menu -->\r\n @if(mGroup.type == \"Menu\"){\r\n <div (click)=\"HandleNav(mGroup, $event)\" \r\n class=\"bg-inactive gradient-background menu\"\r\n [class.bg-active]=\"router.isActive('/' + mGroup.route, false)\"\r\n >\r\n <div class=\"content\">\r\n <ion-icon class=\"shrink-0\" [name]=\"mGroup.icon\"></ion-icon>\r\n <ion-label class=\"shrink\">\r\n {{useTranslation ? (TranslationModule.Permissao + mGroup.id | translate) : mGroup.title}} \r\n </ion-label>\r\n </div>\r\n </div>\r\n <!-- <ion-item \r\n class=\"bg-inactive shrink-0\" lines=\"none\" \r\n (click)=\"HandleNav(mGroup)\"\r\n [ngClass]=\"{'colapsed': colapsed, 'bg-active' : router.isActive('/' + mGroup.route, false)}\">\r\n <ion-icon slot=\"start\" [name]=\"mGroup.icon\"></ion-icon>\r\n <ion-label class=\"ion-text-nowrap\">\r\n {{useTranslation ? (TranslationModule.Permissao + mGroup.id | translate) : mGroup.title}} \r\n </ion-label>\r\n </ion-item> -->\r\n } \r\n @else if (mGroup.type == \"MenuGroup\") {\r\n <!-- MenuGroup -->\r\n <!-- <div class=\"w-full overflow-hidden shrink-0\">\r\n <ion-accordion-group class=\"ion-text-nowrap w-full\">\r\n <ion-accordion class=\"bg-transparent\" [value]=\"mGroup\">\r\n <ion-item slot=\"header\" color=\"light\" class=\"ion-text-nowrap bg-inactive\" style=\"--ion-color-base: var(--background) !important\">\r\n <ion-icon slot=\"start\" [name]=\"mGroup.icon\"></ion-icon>\r\n <ion-label>\r\n {{useTranslation ? (TranslationModule.PermissaoGrupo + mGroup.id | translate) : mGroup.title}}\r\n </ion-label>\r\n </ion-item>\r\n <div slot=\"content\">\r\n <div class=\"pl-8\">\r\n <div class=\"w-full border-l-2 border-solid rounded-bl-2xl grid gap-2 pl-2 py-2\" style=\"border-color: color-mix(in srgb, var(--ion-color-primary) 30%, transparent 70%)\">\r\n @for (mMenu of mGroup.lstMenu; track $index) {\r\n @if (mMenu.type == \"Menu\") {\r\n <ion-item \r\n class=\"bg-inactive\" lines=\"none\" \r\n (click)=\"HandleNav(mMenu)\"\r\n [ngClass]=\"{'colapsed': colapsed, 'bg-active' : router.isActive('/' + mMenu.route, false)}\">\r\n <ion-icon slot=\"start\" [name]=\"mMenu.icon\"></ion-icon>\r\n <ion-label class=\"ion-text-nowrap\">\r\n {{useTranslation ? (TranslationModule.Permissao + mMenu.id | translate) : mMenu.title}}\r\n </ion-label>\r\n </ion-item>\r\n }\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n </ion-accordion>\r\n </ion-accordion-group>\r\n </div> -->\r\n }\r\n }\r\n </div>\r\n</div>", styles: [".menu{display:flex;flex-shrink:0;cursor:pointer;align-items:center;justify-content:flex-start;overflow:hidden;border-radius:.75rem;padding:.375rem;transition:--color-primary,--step-1-opacity,--step-2-opacity .2s ease-in-out;--inset: var(--color-primary) 0px 1.75px 2px 0px inset;box-shadow:var(--inset)}.menu .content{display:flex;align-items:center;justify-content:flex-start;gap:.5rem}.menu.bg-active:after{content:\"\";position:absolute;top:50%;right:0;width:.375rem;height:75%;transform:translateY(-50%);border-radius:inherit;background-color:color-mix(in srgb,var(--ion-color-primary) 70%,transparent);opacity:1!important;filter:drop-shadow(color-mix(in srgb,var(--ion-color-primary) 70%,transparent) 0px 0px 3px)}.menu.bg-active:before{content:\"\";position:absolute;top:50%;right:-2.3rem;width:5rem;height:7rem;transform:translateY(-50%);border-radius:inherit;opacity:.5!important;background:radial-gradient(color-mix(in srgb,var(--ion-color-primary) 70%,transparent) 0%,transparent 66%)}.menu.bg-inactive{--color-primary: var(--ion-color-step-250);--step-1-opacity: .5;--step-2-opacity: .4;--step-3-opacity: .8;position:relative}.menu.bg-inactive:after{content:\"\";opacity:0;transition:opacity .2s ease-in-out;will-change:opacity}.menu.bg-inactive:before{content:\"\";opacity:0;transition:opacity .2s ease-in-out;will-change:opacity}.header{--color-primary: var(--ion-color-primary) !important;--step-1-opacity: .7 !important;--step-2-opacity: .3 !important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: IonicModule }, { kind: "component", type: i2.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: i2.IonLabel, selector: "ion-label", inputs: ["color", "mode", "position"] }, { kind: "component", type: i2.IonText, selector: "ion-text", inputs: ["color", "mode"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }] }); }
36
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DrawerGroupComponent, deps: [{ token: i1.Router }, { token: i2.NavController }, { token: i3.GenericService }], target: i0.ɵɵFactoryTarget.Component }); }
37
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: DrawerGroupComponent, isStandalone: true, selector: "drawer-group", inputs: { MenuGroup: "MenuGroup", colapsed: "colapsed", useTranslation: "useTranslation" }, viewQueries: [{ propertyName: "lstIonAcordionGroup", predicate: IonAccordionGroup, descendants: true }], ngImport: i0, template: "<div class=\"size-full flex flex-col verflow-hidden\">\r\n <div class=\"w-full text-center\">\r\n <!-- <ion-item class=\"bg-inactive bg-active\" lines=\"none\" style=\"--border-radius: 1rem\">\r\n <ion-label class=\"text-center\">\r\n <ion-icon class=\"text-2xl\" [name]=\"MenuGroup.icon\"></ion-icon> <br>\r\n <ion-text class=\"text-lg\">\r\n {{useTranslation ? (TranslationModule.PermissaoGrupo + MenuGroup.id | translate) : MenuGroup.title}} \r\n </ion-text>\r\n </ion-label>\r\n </ion-item> -->\r\n <div class=\"gradient-background header flex flex-col gap-1 p-2 text-center items-center justify-center rounded-xl\">\r\n <ion-icon class=\"text-2xl\" [name]=\"MenuGroup.icon\"></ion-icon>\r\n <ion-text class=\"text-dark\">\r\n {{useTranslation ? (TranslationModule.PermissaoGrupo + MenuGroup.id | translate) : MenuGroup.title}} \r\n </ion-text>\r\n </div>\r\n </div>\r\n <div class=\"flex flex-col gap-2 w-full pt-2 mask-y overflow-y-auto\">\r\n @for (mGroup of MenuGroup.lstMenu; track $index) {\r\n <!-- Menu -->\r\n @if(mGroup.type == \"Menu\"){\r\n <div (click)=\"HandleNav(mGroup, $event)\" \r\n class=\"bg-inactive gradient-background menu\"\r\n [class.bg-active]=\"router.isActive('/' + mGroup.route, false)\"\r\n >\r\n <div class=\"content\">\r\n <ion-icon class=\"shrink-0\" [name]=\"mGroup.icon\"></ion-icon>\r\n <ion-label class=\"shrink\">\r\n {{useTranslation ? (TranslationModule.Permissao + mGroup.id | translate) : mGroup.title}} \r\n </ion-label>\r\n </div>\r\n </div>\r\n <!-- <ion-item \r\n class=\"bg-inactive shrink-0\" lines=\"none\" \r\n (click)=\"HandleNav(mGroup)\"\r\n [ngClass]=\"{'colapsed': colapsed, 'bg-active' : router.isActive('/' + mGroup.route, false)}\">\r\n <ion-icon slot=\"start\" [name]=\"mGroup.icon\"></ion-icon>\r\n <ion-label class=\"ion-text-nowrap\">\r\n {{useTranslation ? (TranslationModule.Permissao + mGroup.id | translate) : mGroup.title}} \r\n </ion-label>\r\n </ion-item> -->\r\n } \r\n @else if (mGroup.type == \"MenuGroup\") {\r\n <!-- MenuGroup -->\r\n <!-- <div class=\"w-full overflow-hidden shrink-0\">\r\n <ion-accordion-group class=\"ion-text-nowrap w-full\">\r\n <ion-accordion class=\"bg-transparent\" [value]=\"mGroup\">\r\n <ion-item slot=\"header\" color=\"light\" class=\"ion-text-nowrap bg-inactive\" style=\"--ion-color-base: var(--background) !important\">\r\n <ion-icon slot=\"start\" [name]=\"mGroup.icon\"></ion-icon>\r\n <ion-label>\r\n {{useTranslation ? (TranslationModule.PermissaoGrupo + mGroup.id | translate) : mGroup.title}}\r\n </ion-label>\r\n </ion-item>\r\n <div slot=\"content\">\r\n <div class=\"pl-8\">\r\n <div class=\"w-full border-l-2 border-solid rounded-bl-2xl grid gap-2 pl-2 py-2\" style=\"border-color: color-mix(in srgb, var(--ion-color-primary) 30%, transparent 70%)\">\r\n @for (mMenu of mGroup.lstMenu; track $index) {\r\n @if (mMenu.type == \"Menu\") {\r\n <ion-item \r\n class=\"bg-inactive\" lines=\"none\" \r\n (click)=\"HandleNav(mMenu)\"\r\n [ngClass]=\"{'colapsed': colapsed, 'bg-active' : router.isActive('/' + mMenu.route, false)}\">\r\n <ion-icon slot=\"start\" [name]=\"mMenu.icon\"></ion-icon>\r\n <ion-label class=\"ion-text-nowrap\">\r\n {{useTranslation ? (TranslationModule.Permissao + mMenu.id | translate) : mMenu.title}}\r\n </ion-label>\r\n </ion-item>\r\n }\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n </ion-accordion>\r\n </ion-accordion-group>\r\n </div> -->\r\n }\r\n }\r\n </div>\r\n</div>", styles: [".menu{display:flex;flex-shrink:0;cursor:pointer;align-items:center;justify-content:flex-start;overflow:hidden;border-radius:.75rem;padding:.375rem;transition:--color-primary,--step-1-opacity,--step-2-opacity .2s ease-in-out;--inset: var(--color-primary) 0px 1.75px 2px 0px inset;box-shadow:var(--inset)}.menu .content{display:flex;align-items:center;justify-content:flex-start;gap:.5rem}.menu.bg-active:after{content:\"\";position:absolute;top:50%;right:0;width:.375rem;height:75%;transform:translateY(-50%);border-radius:inherit;background-color:color-mix(in srgb,var(--ion-color-primary) 70%,transparent);opacity:1!important;filter:drop-shadow(color-mix(in srgb,var(--ion-color-primary) 70%,transparent) 0px 0px 3px)}.menu.bg-active:before{content:\"\";position:absolute;top:50%;right:-2.3rem;width:5rem;height:7rem;transform:translateY(-50%);border-radius:inherit;opacity:.5!important;background:radial-gradient(color-mix(in srgb,var(--ion-color-primary) 70%,transparent) 0%,transparent 66%)}.menu.bg-inactive{--color-primary: var(--ion-color-step-250);--step-1-opacity: .5;--step-2-opacity: .4;--step-3-opacity: .8;position:relative}.menu.bg-inactive:after{content:\"\";opacity:0;transition:opacity .2s ease-in-out;will-change:opacity}.menu.bg-inactive:before{content:\"\";opacity:0;transition:opacity .2s ease-in-out;will-change:opacity}.header{--color-primary: var(--ion-color-primary) !important;--step-1-opacity: .7 !important;--step-2-opacity: .3 !important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: IonicModule }, { kind: "component", type: i2.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: i2.IonLabel, selector: "ion-label", inputs: ["color", "mode", "position"] }, { kind: "component", type: i2.IonText, selector: "ion-text", inputs: ["color", "mode"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }] }); }
38
38
  }
39
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DrawerGroupComponent, decorators: [{
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DrawerGroupComponent, decorators: [{
40
40
  type: Component,
41
41
  args: [{ standalone: true, imports: [CommonModule, IonicModule, RouterLinkWithHref, TranslateModule], selector: 'drawer-group', template: "<div class=\"size-full flex flex-col verflow-hidden\">\r\n <div class=\"w-full text-center\">\r\n <!-- <ion-item class=\"bg-inactive bg-active\" lines=\"none\" style=\"--border-radius: 1rem\">\r\n <ion-label class=\"text-center\">\r\n <ion-icon class=\"text-2xl\" [name]=\"MenuGroup.icon\"></ion-icon> <br>\r\n <ion-text class=\"text-lg\">\r\n {{useTranslation ? (TranslationModule.PermissaoGrupo + MenuGroup.id | translate) : MenuGroup.title}} \r\n </ion-text>\r\n </ion-label>\r\n </ion-item> -->\r\n <div class=\"gradient-background header flex flex-col gap-1 p-2 text-center items-center justify-center rounded-xl\">\r\n <ion-icon class=\"text-2xl\" [name]=\"MenuGroup.icon\"></ion-icon>\r\n <ion-text class=\"text-dark\">\r\n {{useTranslation ? (TranslationModule.PermissaoGrupo + MenuGroup.id | translate) : MenuGroup.title}} \r\n </ion-text>\r\n </div>\r\n </div>\r\n <div class=\"flex flex-col gap-2 w-full pt-2 mask-y overflow-y-auto\">\r\n @for (mGroup of MenuGroup.lstMenu; track $index) {\r\n <!-- Menu -->\r\n @if(mGroup.type == \"Menu\"){\r\n <div (click)=\"HandleNav(mGroup, $event)\" \r\n class=\"bg-inactive gradient-background menu\"\r\n [class.bg-active]=\"router.isActive('/' + mGroup.route, false)\"\r\n >\r\n <div class=\"content\">\r\n <ion-icon class=\"shrink-0\" [name]=\"mGroup.icon\"></ion-icon>\r\n <ion-label class=\"shrink\">\r\n {{useTranslation ? (TranslationModule.Permissao + mGroup.id | translate) : mGroup.title}} \r\n </ion-label>\r\n </div>\r\n </div>\r\n <!-- <ion-item \r\n class=\"bg-inactive shrink-0\" lines=\"none\" \r\n (click)=\"HandleNav(mGroup)\"\r\n [ngClass]=\"{'colapsed': colapsed, 'bg-active' : router.isActive('/' + mGroup.route, false)}\">\r\n <ion-icon slot=\"start\" [name]=\"mGroup.icon\"></ion-icon>\r\n <ion-label class=\"ion-text-nowrap\">\r\n {{useTranslation ? (TranslationModule.Permissao + mGroup.id | translate) : mGroup.title}} \r\n </ion-label>\r\n </ion-item> -->\r\n } \r\n @else if (mGroup.type == \"MenuGroup\") {\r\n <!-- MenuGroup -->\r\n <!-- <div class=\"w-full overflow-hidden shrink-0\">\r\n <ion-accordion-group class=\"ion-text-nowrap w-full\">\r\n <ion-accordion class=\"bg-transparent\" [value]=\"mGroup\">\r\n <ion-item slot=\"header\" color=\"light\" class=\"ion-text-nowrap bg-inactive\" style=\"--ion-color-base: var(--background) !important\">\r\n <ion-icon slot=\"start\" [name]=\"mGroup.icon\"></ion-icon>\r\n <ion-label>\r\n {{useTranslation ? (TranslationModule.PermissaoGrupo + mGroup.id | translate) : mGroup.title}}\r\n </ion-label>\r\n </ion-item>\r\n <div slot=\"content\">\r\n <div class=\"pl-8\">\r\n <div class=\"w-full border-l-2 border-solid rounded-bl-2xl grid gap-2 pl-2 py-2\" style=\"border-color: color-mix(in srgb, var(--ion-color-primary) 30%, transparent 70%)\">\r\n @for (mMenu of mGroup.lstMenu; track $index) {\r\n @if (mMenu.type == \"Menu\") {\r\n <ion-item \r\n class=\"bg-inactive\" lines=\"none\" \r\n (click)=\"HandleNav(mMenu)\"\r\n [ngClass]=\"{'colapsed': colapsed, 'bg-active' : router.isActive('/' + mMenu.route, false)}\">\r\n <ion-icon slot=\"start\" [name]=\"mMenu.icon\"></ion-icon>\r\n <ion-label class=\"ion-text-nowrap\">\r\n {{useTranslation ? (TranslationModule.Permissao + mMenu.id | translate) : mMenu.title}}\r\n </ion-label>\r\n </ion-item>\r\n }\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n </ion-accordion>\r\n </ion-accordion-group>\r\n </div> -->\r\n }\r\n }\r\n </div>\r\n</div>", styles: [".menu{display:flex;flex-shrink:0;cursor:pointer;align-items:center;justify-content:flex-start;overflow:hidden;border-radius:.75rem;padding:.375rem;transition:--color-primary,--step-1-opacity,--step-2-opacity .2s ease-in-out;--inset: var(--color-primary) 0px 1.75px 2px 0px inset;box-shadow:var(--inset)}.menu .content{display:flex;align-items:center;justify-content:flex-start;gap:.5rem}.menu.bg-active:after{content:\"\";position:absolute;top:50%;right:0;width:.375rem;height:75%;transform:translateY(-50%);border-radius:inherit;background-color:color-mix(in srgb,var(--ion-color-primary) 70%,transparent);opacity:1!important;filter:drop-shadow(color-mix(in srgb,var(--ion-color-primary) 70%,transparent) 0px 0px 3px)}.menu.bg-active:before{content:\"\";position:absolute;top:50%;right:-2.3rem;width:5rem;height:7rem;transform:translateY(-50%);border-radius:inherit;opacity:.5!important;background:radial-gradient(color-mix(in srgb,var(--ion-color-primary) 70%,transparent) 0%,transparent 66%)}.menu.bg-inactive{--color-primary: var(--ion-color-step-250);--step-1-opacity: .5;--step-2-opacity: .4;--step-3-opacity: .8;position:relative}.menu.bg-inactive:after{content:\"\";opacity:0;transition:opacity .2s ease-in-out;will-change:opacity}.menu.bg-inactive:before{content:\"\";opacity:0;transition:opacity .2s ease-in-out;will-change:opacity}.header{--color-primary: var(--ion-color-primary) !important;--step-1-opacity: .7 !important;--step-2-opacity: .3 !important}\n"] }]
42
42
  }], ctorParameters: () => [{ type: i1.Router }, { type: i2.NavController }, { type: i3.GenericService }], propDecorators: { MenuGroup: [{
@@ -89,10 +89,10 @@ export class DrawerComponent {
89
89
  SetTitle(item) {
90
90
  this.genericService.SetTitle(item.title);
91
91
  }
92
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DrawerComponent, deps: [{ token: i1.Router }, { token: i2.NavController }, { token: i3.GenericService }], target: i0.ɵɵFactoryTarget.Component }); }
93
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: DrawerComponent, isStandalone: true, selector: "drawer", inputs: { loading: { classPropertyName: "loading", publicName: "loading", isSignal: false, isRequired: false, transformFunction: null }, lstMenu: { classPropertyName: "lstMenu", publicName: "lstMenu", isSignal: true, isRequired: false, transformFunction: null }, colapsed: { classPropertyName: "colapsed", publicName: "colapsed", isSignal: false, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: false, isRequired: false, transformFunction: null }, useTranslation: { classPropertyName: "useTranslation", publicName: "useTranslation", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { colapsedChange: "colapsedChange" }, ngImport: i0, template: "<div class=\"absolute left-0 top-0 h-full bg-light size-full flex flex-col p-2 !pr-0 w-[19rem] overflow-hidden\" (mouseenter)=\"onMouseEnter()\" (mouseleave)=\"onMouseLeave()\">\r\n <!-- [ Header ] -->\r\n <div class=\"shrink-0 w-full flex justify-between items-center\">\r\n <div #anchor\r\n (click)=\"ToggleCollapsed()\" \r\n class=\"toggle size-10 aspect-square shrink-0 rounded-xl bg-inactive gradient-background menu\"\r\n >\r\n <ion-icon name=\"menu\" slot=\"icon-only\"></ion-icon>\r\n </div>\r\n <!-- <ion-button class=\"size-10 shrink-0 aspect-square\" size=\"small\" color=\"medium\" (click)=\"ToggleCollapsed()\">\r\n <ion-icon name=\"menu\" slot=\"icon-only\"></ion-icon>\r\n </ion-button> -->\r\n\r\n <div class=\"size-full shrink flex pl-2 \">\r\n <div class=\"size-full max-h-10 flex flex-wrap overflow-hidden\">\r\n @if (!ref.children.length) {\r\n <ion-text class=\"size-full flex items-center justify-center default-transition z-0\" [ngClass]=\"{'opacity-0 -translate-x-1/2 pointer-events-none': colapsed }\"> \r\n {{title}}\r\n </ion-text>\r\n }\r\n <div #ref class=\"size-full flex items-center justify-center shrink-0\">\r\n <ng-content select=\"[slot=logo]\"></ng-content>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- [ Content ] -->\r\n <div class=\"size-full shrink flex flex-col relative overflow-hidden\">\r\n <loading [type]=\"3\" [loading]=\"loading\" text=\"\"></loading>\r\n <div class=\"size-full shrink flex gap-2\">\r\n <div class=\"h-full w-12 pr-2 py-2 mask-y shrink-0 flex flex-col gap-2 overflow-y-auto overflow-x-hidden border-dashed border-r border-r-medium/30\">\r\n <div #searchAnchor (click)=\"modal.present()\" class=\"search-button size-10 aspect-square shrink-0 rounded-xl bg-inactive gradient-background menu\">\r\n <ion-icon name=\"search\" slot=\"icon-only\"></ion-icon>\r\n </div>\r\n\r\n @for (item of lstMenu(); track $index) {\r\n <div>\r\n <div\r\n [class.bg-active]=\"CurrentGroupActive == item\"\r\n #anchor (mouseenter)=\"popover.present($event)\" \r\n (mouseleave)=\"popover.dismiss()\" \r\n (click)=\"CurrentGroupActive = item\" \r\n class=\"w-10 aspect-square shrink-0 rounded-xl bg-inactive gradient-background menu\"\r\n >\r\n <ion-icon [name]=\"item.icon\"></ion-icon>\r\n </div>\r\n <sion-popover #popover [anchor]=\"anchor\" [flip]=\"false\" placement=\"right\" fill=\"solid\">\r\n <div class=\"p-1\">\r\n {{useTranslation ? (TranslationModule.PermissaoGrupo + item.id | translate) : item.title}}\r\n </div>\r\n </sion-popover>\r\n </div>\r\n }\r\n\r\n </div>\r\n <div class=\"size-full shrink relative\">\r\n @for (mGroup of lstMenu(); track $index) {\r\n <div class=\"absolute top-0 left-0 size-full py-2 default-transition opacity-0 translate-x-full z-0 overflow-hidden\" [ngClass]=\"{'opacity-100 !translate-x-0': CurrentGroupActive == mGroup}\">\r\n <drawer-group [MenuGroup]=\"mGroup\" [useTranslation]=\"useTranslation\" [colapsed]=\"colapsed\"></drawer-group>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- [ End ] -->\r\n <div class=\"shrink-0 w-full\">\r\n <ng-content select=\"[slot=drawer]\"></ng-content>\r\n </div>\r\n</div>\r\n\r\n<ion-modal #modal [keepContentsMounted]=\"true\" (onWillDismiss)=\"search.set('')\">\r\n <ng-template>\r\n <ion-content>\r\n <ion-card class=\"size-full m-0 overflow-hidden\">\r\n <ion-card-content class=\"size-full flex flex-col overflow-hidden p-0\">\r\n <div class=\"shrink-0 w-full flex items-center justify-center\">\r\n <ion-searchbar class=\"p-0 !pl-2 !py-2\" [ngModel]=\"this.search()\" (ngModelChange)=\"this.search.set($event)\" [debounce]=\"200\"></ion-searchbar>\r\n <ion-button size=\"small\" fill=\"clear\" (click)=\"modal.dismiss()\">\r\n <ion-icon name=\"close\"></ion-icon>\r\n </ion-button>\r\n </div>\r\n\r\n <div class=\"size-full flex flex-col shrink gap-2 overflow-y-auto p-2 mask-y\">\r\n @for (vGroup of lstMenuFiltered(); track $index) {\r\n <ion-card class=\"m-0 shrink-0\">\r\n <ion-card-content class=\"p-0 gradient-background bg-inactive flex flex-col\">\r\n <div class=\"w-10 flex items-center !justify-start gap-2 text-dark shrink-0 p-2\">\r\n <ion-icon [name]=\"vGroup.icon\"></ion-icon>\r\n <ion-text>\r\n {{useTranslation ? (TranslationModule.PermissaoGrupo + vGroup.id | translate) : vGroup.title}} \r\n </ion-text>\r\n </div>\r\n @for (vMenu of vGroup.lstMenu; track $index) {\r\n <div \r\n (click)=\"HandleNav(vMenu, $event); modal.dismiss()\"\r\n [class.bg-active]=\"router.isActive('/' + vMenu.route, false)\"\r\n class=\"w-full flex items-center !justify-start gap-2 text-dark shrink-0 !pl-8 p-1.5 border-t border-t-medium/30 menu-search\">\r\n <ion-icon [name]=\"vMenu.icon\"></ion-icon>\r\n <ion-text>\r\n {{useTranslation ? (TranslationModule.Permissao + vMenu.id | translate) : vMenu.title}} \r\n </ion-text>\r\n </div>\r\n }\r\n </ion-card-content>\r\n </ion-card>\r\n }\r\n\r\n @if (lstMenuFiltered().length == 0) {\r\n <ion-text class=\"text-center text-medium\">\r\n {{useTranslation ? (TranslationModule.SemResultado | translate) : 'Sem resultados encontrados'}}\r\n </ion-text>\r\n }\r\n </div>\r\n </ion-card-content>\r\n </ion-card>\r\n </ion-content>\r\n </ng-template>\r\n</ion-modal>", styles: [".bg-active{--color-primary: var(--ion-color-primary) !important;--step-1-opacity: .7 !important;--step-2-opacity: .3 !important}.bg-inactive{--color-primary: var(--ion-color-step-250);--step-1-opacity: .5;--step-2-opacity: .4;--step-3-opacity: .8}.menu{display:flex;cursor:pointer;align-items:center;justify-content:center;gap:.5rem;border-radius:.75rem;padding:.5rem;transition:--color-primary,--step-1-opacity,--step-2-opacity .2s ease-in-out;--inset: var(--color-primary) 0px 1.75px 2px 0px inset;box-shadow:var(--inset)}.toggle:hover{--color-primary: var(--ion-color-step-500) !important;transition:--color-primary .2s ease-in-out}.search-button{--inset2: var(--ion-color-medium) 0px 0px 5px -1px inset;box-shadow:var(--inset2)}.menu-search{position:relative;cursor:pointer;overflow:hidden}.menu-search.bg-active:after{content:\"\";position:absolute;top:50%;right:0;width:.375rem;height:75%;transform:translateY(-50%);border-radius:1rem;background-color:color-mix(in srgb,var(--ion-color-primary) 70%,transparent);opacity:1!important;filter:drop-shadow(color-mix(in srgb,var(--ion-color-primary) 70%,transparent) 0px 0px 3px)}.menu-search.bg-active:before{content:\"\";position:absolute;top:50%;right:-2.3rem;width:5rem;height:7rem;transform:translateY(-50%);border-radius:1rem;opacity:.5!important;background:radial-gradient(color-mix(in srgb,var(--ion-color-primary) 70%,transparent) 0%,transparent 66%)}.menu-search.bg-inactive{--color-primary: var(--ion-color-step-250);--step-1-opacity: .5;--step-2-opacity: .4;--step-3-opacity: .8;position:relative}.menu-search.bg-inactive:after{content:\"\";opacity:0;transition:opacity .2s ease-in-out;will-change:opacity}.menu-search.bg-inactive:before{content:\"\";opacity:0;transition:opacity .2s ease-in-out;will-change:opacity}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: IonicModule }, { kind: "component", type: i2.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: i2.IonCard, selector: "ion-card", inputs: ["button", "color", "disabled", "download", "href", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: i2.IonCardContent, selector: "ion-card-content", inputs: ["mode"] }, { kind: "component", type: i2.IonContent, selector: "ion-content", inputs: ["color", "fixedSlotPlacement", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { kind: "component", type: i2.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: i2.IonSearchbar, selector: "ion-searchbar", inputs: ["animated", "autocapitalize", "autocomplete", "autocorrect", "cancelButtonIcon", "cancelButtonText", "clearIcon", "color", "debounce", "disabled", "enterkeyhint", "inputmode", "maxlength", "minlength", "mode", "name", "placeholder", "searchIcon", "showCancelButton", "showClearButton", "spellcheck", "type", "value"] }, { kind: "component", type: i2.IonText, selector: "ion-text", inputs: ["color", "mode"] }, { kind: "component", type: i2.IonModal, selector: "ion-modal" }, { kind: "directive", type: i2.TextValueAccessor, selector: "ion-input:not([type=number]),ion-input-otp[type=text],ion-textarea,ion-searchbar" }, { kind: "component", type: LoadingComponent, selector: "loading", inputs: ["text", "type", "loading"] }, { kind: "component", type: DrawerGroupComponent, selector: "drawer-group", inputs: ["MenuGroup", "colapsed", "useTranslation"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: SIonPopoverModule }, { kind: "component", type: i6.SIonPopoverComponent, selector: "sion-popover", inputs: ["fill", "arrow", "flip", "placement", "height", "width", "anchor"], outputs: ["onWillPresent", "onDidPresent", "onWillDismiss", "onDidDismiss"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
92
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DrawerComponent, deps: [{ token: i1.Router }, { token: i2.NavController }, { token: i3.GenericService }], target: i0.ɵɵFactoryTarget.Component }); }
93
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: DrawerComponent, isStandalone: true, selector: "drawer", inputs: { loading: { classPropertyName: "loading", publicName: "loading", isSignal: false, isRequired: false, transformFunction: null }, lstMenu: { classPropertyName: "lstMenu", publicName: "lstMenu", isSignal: true, isRequired: false, transformFunction: null }, colapsed: { classPropertyName: "colapsed", publicName: "colapsed", isSignal: false, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: false, isRequired: false, transformFunction: null }, useTranslation: { classPropertyName: "useTranslation", publicName: "useTranslation", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { colapsedChange: "colapsedChange" }, ngImport: i0, template: "<div class=\"absolute left-0 top-0 h-full bg-light size-full flex flex-col p-2 !pr-0 w-[19rem] overflow-hidden\" (mouseenter)=\"onMouseEnter()\" (mouseleave)=\"onMouseLeave()\">\r\n <!-- [ Header ] -->\r\n <div class=\"shrink-0 w-full flex justify-between items-center\">\r\n <div #anchor\r\n (click)=\"ToggleCollapsed()\" \r\n class=\"toggle size-10 aspect-square shrink-0 rounded-xl bg-inactive gradient-background menu\"\r\n >\r\n <ion-icon name=\"menu\" slot=\"icon-only\"></ion-icon>\r\n </div>\r\n <!-- <ion-button class=\"size-10 shrink-0 aspect-square\" size=\"small\" color=\"medium\" (click)=\"ToggleCollapsed()\">\r\n <ion-icon name=\"menu\" slot=\"icon-only\"></ion-icon>\r\n </ion-button> -->\r\n\r\n <div class=\"size-full shrink flex pl-2 \">\r\n <div class=\"size-full max-h-10 flex flex-wrap overflow-hidden\">\r\n @if (!ref.children.length) {\r\n <ion-text class=\"size-full flex items-center justify-center default-transition z-0\" [ngClass]=\"{'opacity-0 -translate-x-1/2 pointer-events-none': colapsed }\"> \r\n {{title}}\r\n </ion-text>\r\n }\r\n <div #ref class=\"size-full flex items-center justify-center shrink-0\">\r\n <ng-content select=\"[slot=logo]\"></ng-content>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- [ Content ] -->\r\n <div class=\"size-full shrink flex flex-col relative overflow-hidden\">\r\n <loading [type]=\"3\" [loading]=\"loading\" text=\"\"></loading>\r\n <div class=\"size-full shrink flex gap-2\">\r\n <div class=\"h-full w-12 pr-2 py-2 mask-y shrink-0 flex flex-col gap-2 overflow-y-auto overflow-x-hidden border-dashed border-r border-r-medium/30\">\r\n <div #searchAnchor (click)=\"modal.present()\" class=\"search-button size-10 aspect-square shrink-0 rounded-xl bg-inactive gradient-background menu\">\r\n <ion-icon name=\"search\" slot=\"icon-only\"></ion-icon>\r\n </div>\r\n\r\n @for (item of lstMenu(); track $index) {\r\n <div>\r\n <div\r\n [class.bg-active]=\"CurrentGroupActive == item\"\r\n #anchor (mouseenter)=\"popover.present($event)\" \r\n (mouseleave)=\"popover.dismiss()\" \r\n (click)=\"CurrentGroupActive = item\" \r\n class=\"w-10 aspect-square shrink-0 rounded-xl bg-inactive gradient-background menu\"\r\n >\r\n <ion-icon [name]=\"item.icon\"></ion-icon>\r\n </div>\r\n <sion-popover #popover [anchor]=\"anchor\" [flip]=\"false\" placement=\"right\" fill=\"solid\">\r\n <div class=\"p-1\">\r\n {{useTranslation ? (TranslationModule.PermissaoGrupo + item.id | translate) : item.title}}\r\n </div>\r\n </sion-popover>\r\n </div>\r\n }\r\n\r\n </div>\r\n <div class=\"size-full shrink relative\">\r\n @for (mGroup of lstMenu(); track $index) {\r\n <div class=\"absolute top-0 left-0 size-full py-2 default-transition opacity-0 translate-x-full z-0 overflow-hidden\" [ngClass]=\"{'opacity-100 !translate-x-0': CurrentGroupActive == mGroup}\">\r\n <drawer-group [MenuGroup]=\"mGroup\" [useTranslation]=\"useTranslation\" [colapsed]=\"colapsed\"></drawer-group>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- [ End ] -->\r\n <div class=\"shrink-0 w-full\">\r\n <ng-content select=\"[slot=drawer]\"></ng-content>\r\n </div>\r\n</div>\r\n\r\n<ion-modal #modal [keepContentsMounted]=\"true\" (onWillDismiss)=\"search.set('')\">\r\n <ng-template>\r\n <ion-content>\r\n <ion-card class=\"size-full m-0 overflow-hidden\">\r\n <ion-card-content class=\"size-full flex flex-col overflow-hidden p-0\">\r\n <div class=\"shrink-0 w-full flex items-center justify-center\">\r\n <ion-searchbar class=\"p-0 !pl-2 !py-2\" [ngModel]=\"this.search()\" (ngModelChange)=\"this.search.set($event)\" [debounce]=\"200\"></ion-searchbar>\r\n <ion-button size=\"small\" fill=\"clear\" (click)=\"modal.dismiss()\">\r\n <ion-icon name=\"close\"></ion-icon>\r\n </ion-button>\r\n </div>\r\n\r\n <div class=\"size-full flex flex-col shrink gap-2 overflow-y-auto p-2 mask-y\">\r\n @for (vGroup of lstMenuFiltered(); track $index) {\r\n <ion-card class=\"m-0 shrink-0\">\r\n <ion-card-content class=\"p-0 gradient-background bg-inactive flex flex-col\">\r\n <div class=\"w-10 flex items-center !justify-start gap-2 text-dark shrink-0 p-2\">\r\n <ion-icon [name]=\"vGroup.icon\"></ion-icon>\r\n <ion-text>\r\n {{useTranslation ? (TranslationModule.PermissaoGrupo + vGroup.id | translate) : vGroup.title}} \r\n </ion-text>\r\n </div>\r\n @for (vMenu of vGroup.lstMenu; track $index) {\r\n <div \r\n (click)=\"HandleNav(vMenu, $event); modal.dismiss()\"\r\n [class.bg-active]=\"router.isActive('/' + vMenu.route, false)\"\r\n class=\"w-full flex items-center !justify-start gap-2 text-dark shrink-0 !pl-8 p-1.5 border-t border-t-medium/30 menu-search\">\r\n <ion-icon [name]=\"vMenu.icon\"></ion-icon>\r\n <ion-text>\r\n {{useTranslation ? (TranslationModule.Permissao + vMenu.id | translate) : vMenu.title}} \r\n </ion-text>\r\n </div>\r\n }\r\n </ion-card-content>\r\n </ion-card>\r\n }\r\n\r\n @if (lstMenuFiltered().length == 0) {\r\n <ion-text class=\"text-center text-medium\">\r\n {{useTranslation ? (TranslationModule.SemResultado | translate) : 'Sem resultados encontrados'}}\r\n </ion-text>\r\n }\r\n </div>\r\n </ion-card-content>\r\n </ion-card>\r\n </ion-content>\r\n </ng-template>\r\n</ion-modal>", styles: [".bg-active{--color-primary: var(--ion-color-primary) !important;--step-1-opacity: .7 !important;--step-2-opacity: .3 !important}.bg-inactive{--color-primary: var(--ion-color-step-250);--step-1-opacity: .5;--step-2-opacity: .4;--step-3-opacity: .8}.menu{display:flex;cursor:pointer;align-items:center;justify-content:center;gap:.5rem;border-radius:.75rem;padding:.5rem;transition:--color-primary,--step-1-opacity,--step-2-opacity .2s ease-in-out;--inset: var(--color-primary) 0px 1.75px 2px 0px inset;box-shadow:var(--inset)}.toggle:hover{--color-primary: var(--ion-color-step-500) !important;transition:--color-primary .2s ease-in-out}.search-button{--inset2: var(--ion-color-medium) 0px 0px 5px -1px inset;box-shadow:var(--inset2)}.menu-search{position:relative;cursor:pointer;overflow:hidden}.menu-search.bg-active:after{content:\"\";position:absolute;top:50%;right:0;width:.375rem;height:75%;transform:translateY(-50%);border-radius:1rem;background-color:color-mix(in srgb,var(--ion-color-primary) 70%,transparent);opacity:1!important;filter:drop-shadow(color-mix(in srgb,var(--ion-color-primary) 70%,transparent) 0px 0px 3px)}.menu-search.bg-active:before{content:\"\";position:absolute;top:50%;right:-2.3rem;width:5rem;height:7rem;transform:translateY(-50%);border-radius:1rem;opacity:.5!important;background:radial-gradient(color-mix(in srgb,var(--ion-color-primary) 70%,transparent) 0%,transparent 66%)}.menu-search.bg-inactive{--color-primary: var(--ion-color-step-250);--step-1-opacity: .5;--step-2-opacity: .4;--step-3-opacity: .8;position:relative}.menu-search.bg-inactive:after{content:\"\";opacity:0;transition:opacity .2s ease-in-out;will-change:opacity}.menu-search.bg-inactive:before{content:\"\";opacity:0;transition:opacity .2s ease-in-out;will-change:opacity}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: IonicModule }, { kind: "component", type: i2.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: i2.IonCard, selector: "ion-card", inputs: ["button", "color", "disabled", "download", "href", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: i2.IonCardContent, selector: "ion-card-content", inputs: ["mode"] }, { kind: "component", type: i2.IonContent, selector: "ion-content", inputs: ["color", "fixedSlotPlacement", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { kind: "component", type: i2.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: i2.IonSearchbar, selector: "ion-searchbar", inputs: ["animated", "autocapitalize", "autocomplete", "autocorrect", "cancelButtonIcon", "cancelButtonText", "clearIcon", "color", "debounce", "disabled", "enterkeyhint", "inputmode", "maxlength", "minlength", "mode", "name", "placeholder", "searchIcon", "showCancelButton", "showClearButton", "spellcheck", "type", "value"] }, { kind: "component", type: i2.IonText, selector: "ion-text", inputs: ["color", "mode"] }, { kind: "component", type: i2.IonModal, selector: "ion-modal" }, { kind: "directive", type: i2.TextValueAccessor, selector: "ion-input:not([type=number]),ion-input-otp[type=text],ion-textarea,ion-searchbar" }, { kind: "component", type: LoadingComponent, selector: "loading", inputs: ["text", "type", "loading"] }, { kind: "component", type: DrawerGroupComponent, selector: "drawer-group", inputs: ["MenuGroup", "colapsed", "useTranslation"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: SIonPopoverModule }, { kind: "component", type: i6.SIonPopoverComponent, selector: "sion-popover", inputs: ["fill", "arrow", "flip", "placement", "height", "width", "anchor"], outputs: ["onWillPresent", "onDidPresent", "onWillDismiss", "onDidDismiss"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
94
94
  }
95
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DrawerComponent, decorators: [{
95
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DrawerComponent, decorators: [{
96
96
  type: Component,
97
97
  args: [{ standalone: true, imports: [
98
98
  CommonModule,