taon 19.0.20 → 19.0.22

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 (165) hide show
  1. package/browser/fesm2022/taon.mjs +13 -1201
  2. package/browser/fesm2022/taon.mjs.map +1 -1
  3. package/browser/lib/ui/index.d.ts +0 -8
  4. package/browser/lib/ui/taon-admin-mode-configuration/index.d.ts +0 -2
  5. package/browser/package.json +1 -1
  6. package/client/fesm2022/taon.mjs +13 -1201
  7. package/client/fesm2022/taon.mjs.map +1 -1
  8. package/client/lib/ui/index.d.ts +0 -8
  9. package/client/lib/ui/taon-admin-mode-configuration/index.d.ts +0 -2
  10. package/client/package.json +1 -1
  11. package/lib/base-classes/base-subscriber.d.ts +4 -0
  12. package/lib/base-classes/base-subscriber.js +25 -0
  13. package/lib/base-classes/base-subscriber.js.map +1 -0
  14. package/lib/build-info._auto-generated_.d.ts +1 -1
  15. package/lib/build-info._auto-generated_.js +1 -1
  16. package/lib/realtime/realtime-strategy/realtime-abstract-mock.d.ts +10 -0
  17. package/lib/realtime/realtime-strategy/realtime-abstract-mock.js +214 -0
  18. package/lib/realtime/realtime-strategy/realtime-abstract-mock.js.map +1 -0
  19. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/index.d.ts +0 -0
  20. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/index.js +5 -0
  21. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/index.js.map +1 -0
  22. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-namespace.d.ts +22 -0
  23. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-namespace.js +139 -0
  24. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-namespace.js.map +1 -0
  25. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-wrapper.d.ts +16 -0
  26. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-wrapper.js +68 -0
  27. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-wrapper.js.map +1 -0
  28. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-namespace.d.ts +10 -0
  29. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-namespace.js +56 -0
  30. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-namespace.js.map +1 -0
  31. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-wrapper.d.ts +10 -0
  32. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-wrapper.js +50 -0
  33. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-wrapper.js.map +1 -0
  34. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc.models.d.ts +13 -0
  35. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc.models.js +3 -0
  36. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc.models.js.map +1 -0
  37. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/index.d.ts +2 -0
  38. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/index.js +6 -0
  39. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/index.js.map +1 -0
  40. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-client.d.ts +16 -0
  41. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-client.js +54 -0
  42. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-client.js.map +1 -0
  43. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-namespaces.d.ts +17 -0
  44. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-namespaces.js +52 -0
  45. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-namespaces.js.map +1 -0
  46. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-server.d.ts +11 -0
  47. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-server.js +39 -0
  48. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-server.js.map +1 -0
  49. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-socket.d.ts +13 -0
  50. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-socket.js +46 -0
  51. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-socket.js.map +1 -0
  52. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock.models.d.ts +11 -0
  53. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock.models.js +3 -0
  54. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock.models.js.map +1 -0
  55. package/lib/ui/directives/firedev-inject-html.directive.d.ts +6 -0
  56. package/{websql/lib/ui/directives/taon-long-press.directive.d.ts → lib/ui/directives/firedev-long-press.directive.d.ts} +1 -5
  57. package/lib/ui/directives/index.js +2 -2
  58. package/lib/ui/index.d.ts +0 -8
  59. package/lib/ui/index.js +2 -2
  60. package/lib/ui/taon-admin-mode-configuration/components/taon-admin-edit-mode/index.d.ts +2 -0
  61. package/lib/ui/taon-admin-mode-configuration/components/taon-admin-edit-mode/index.js +5 -0
  62. package/lib/ui/taon-admin-mode-configuration/components/taon-admin-edit-mode/index.js.map +1 -0
  63. package/lib/ui/taon-admin-mode-configuration/components/taon-admin-edit-mode/taon-admin-edit-mode.component.d.ts +29 -0
  64. package/lib/ui/taon-admin-mode-configuration/components/taon-admin-edit-mode/taon-admin-edit-mode.module.d.ts +2 -0
  65. package/lib/ui/taon-admin-mode-configuration/components/taon-db-admin/index.d.ts +1 -0
  66. package/lib/ui/taon-admin-mode-configuration/components/taon-db-admin/index.js +5 -0
  67. package/lib/ui/taon-admin-mode-configuration/components/taon-db-admin/index.js.map +1 -0
  68. package/lib/ui/taon-admin-mode-configuration/components/taon-db-admin/taon-db-admin.component.d.ts +8 -0
  69. package/lib/ui/taon-admin-mode-configuration/components/taon-file-general-opt/index.d.ts +2 -0
  70. package/lib/ui/taon-admin-mode-configuration/components/taon-file-general-opt/index.js +5 -0
  71. package/lib/ui/taon-admin-mode-configuration/components/taon-file-general-opt/index.js.map +1 -0
  72. package/lib/ui/taon-admin-mode-configuration/components/taon-file-general-opt/taon-file-general-opt.component.d.ts +13 -0
  73. package/lib/ui/taon-admin-mode-configuration/components/taon-file-general-opt/taon-file-general-opt.module.d.ts +2 -0
  74. package/lib/ui/taon-admin-mode-configuration/index.d.ts +0 -2
  75. package/lib/ui/taon-admin-mode-configuration/index.js +2 -17
  76. package/lib/ui/taon-admin-mode-configuration/index.js.map +1 -1
  77. package/{browser/lib/ui/taon-admin-mode-configuration/taon-admin.models.d.ts → lib/ui/taon-admin-mode-configuration/models/taon-admin-mode-tabs.d.ts} +1 -2
  78. package/lib/ui/taon-admin-mode-configuration/models/taon-admin-mode-tabs.js +3 -0
  79. package/lib/ui/taon-admin-mode-configuration/models/taon-admin-mode-tabs.js.map +1 -0
  80. package/lib/ui/taon-admin-mode-configuration/taon-admin-control.service.d.ts +14 -0
  81. package/lib/ui/taon-admin-mode-configuration/taon-admin-mode-configuration.module.d.ts +2 -0
  82. package/lib/ui/taon-github-fork-me-corner/index.js +2 -2
  83. package/lib/ui/taon-github-fork-me-ribbon/index.js +2 -2
  84. package/lib/ui/taon-notifications/taon-notifications.models.js +2 -2
  85. package/lib/ui/taon-progress-bar/index.js +2 -2
  86. package/lib/ui/taon-session-passcode/index.js +2 -2
  87. package/lib/ui/taon-table/index.js +2 -2
  88. package/lib/ui/toan-full-material.module.d.ts +2 -0
  89. package/package.json +1 -1
  90. package/tmp-environment.json +6 -6
  91. package/websql/fesm2022/taon.mjs +13 -1196
  92. package/websql/fesm2022/taon.mjs.map +1 -1
  93. package/websql/lib/ui/index.d.ts +0 -8
  94. package/websql/lib/ui/taon-admin-mode-configuration/index.d.ts +0 -2
  95. package/websql/package.json +1 -1
  96. package/browser/lib/ui/directives/index.d.ts +0 -4
  97. package/browser/lib/ui/directives/safe.pipe.d.ts +0 -11
  98. package/browser/lib/ui/directives/taon-inject-html.directive.d.ts +0 -10
  99. package/browser/lib/ui/directives/taon-long-press.directive.d.ts +0 -26
  100. package/browser/lib/ui/taon-admin-mode-configuration/taon-admin-mode-configuration.component.d.ts +0 -47
  101. package/browser/lib/ui/taon-full-material.module.d.ts +0 -50
  102. package/browser/lib/ui/taon-github-fork-me-corner/index.d.ts +0 -3
  103. package/browser/lib/ui/taon-github-fork-me-corner/taon-github-fork-me-corner.component.d.ts +0 -7
  104. package/browser/lib/ui/taon-github-fork-me-corner/taon-github-fork-me-corner.module.d.ts +0 -9
  105. package/browser/lib/ui/taon-notifications/index.d.ts +0 -5
  106. package/browser/lib/ui/taon-notifications/taon-notifications.component.d.ts +0 -13
  107. package/browser/lib/ui/taon-notifications/taon-notifications.models.d.ts +0 -7
  108. package/browser/lib/ui/taon-notifications/taon-notifications.module.d.ts +0 -8
  109. package/browser/lib/ui/taon-notifications/taon-notifications.service.d.ts +0 -15
  110. package/browser/lib/ui/taon-progress-bar/index.d.ts +0 -3
  111. package/browser/lib/ui/taon-progress-bar/taon-progress-bar.component.d.ts +0 -17
  112. package/browser/lib/ui/taon-progress-bar/taon-progress-bar.module.d.ts +0 -9
  113. package/browser/lib/ui/taon-session-passcode/index.d.ts +0 -2
  114. package/browser/lib/ui/taon-session-passcode/taon-session-passcode.component.d.ts +0 -39
  115. package/browser/lib/ui/taon-table/index.d.ts +0 -3
  116. package/browser/lib/ui/taon-table/taon-table.component.d.ts +0 -38
  117. package/browser/lib/ui/taon-table/taon-table.module.d.ts +0 -17
  118. package/client/lib/ui/directives/index.d.ts +0 -4
  119. package/client/lib/ui/directives/safe.pipe.d.ts +0 -11
  120. package/client/lib/ui/directives/taon-inject-html.directive.d.ts +0 -10
  121. package/client/lib/ui/directives/taon-long-press.directive.d.ts +0 -26
  122. package/client/lib/ui/taon-admin-mode-configuration/taon-admin-mode-configuration.component.d.ts +0 -47
  123. package/client/lib/ui/taon-admin-mode-configuration/taon-admin.models.d.ts +0 -6
  124. package/client/lib/ui/taon-full-material.module.d.ts +0 -50
  125. package/client/lib/ui/taon-github-fork-me-corner/index.d.ts +0 -3
  126. package/client/lib/ui/taon-github-fork-me-corner/taon-github-fork-me-corner.component.d.ts +0 -7
  127. package/client/lib/ui/taon-github-fork-me-corner/taon-github-fork-me-corner.module.d.ts +0 -9
  128. package/client/lib/ui/taon-notifications/index.d.ts +0 -5
  129. package/client/lib/ui/taon-notifications/taon-notifications.component.d.ts +0 -13
  130. package/client/lib/ui/taon-notifications/taon-notifications.models.d.ts +0 -7
  131. package/client/lib/ui/taon-notifications/taon-notifications.module.d.ts +0 -8
  132. package/client/lib/ui/taon-notifications/taon-notifications.service.d.ts +0 -15
  133. package/client/lib/ui/taon-progress-bar/index.d.ts +0 -3
  134. package/client/lib/ui/taon-progress-bar/taon-progress-bar.component.d.ts +0 -17
  135. package/client/lib/ui/taon-progress-bar/taon-progress-bar.module.d.ts +0 -9
  136. package/client/lib/ui/taon-session-passcode/index.d.ts +0 -2
  137. package/client/lib/ui/taon-session-passcode/taon-session-passcode.component.d.ts +0 -39
  138. package/client/lib/ui/taon-table/index.d.ts +0 -3
  139. package/client/lib/ui/taon-table/taon-table.component.d.ts +0 -38
  140. package/client/lib/ui/taon-table/taon-table.module.d.ts +0 -17
  141. package/lib/base-classes/base-repository copy.d.ts +0 -255
  142. package/lib/base-classes/base-repository copy.js +0 -653
  143. package/lib/base-classes/base-repository copy.js.map +0 -1
  144. package/websql/lib/ui/directives/index.d.ts +0 -4
  145. package/websql/lib/ui/directives/safe.pipe.d.ts +0 -11
  146. package/websql/lib/ui/directives/taon-inject-html.directive.d.ts +0 -10
  147. package/websql/lib/ui/taon-admin-mode-configuration/taon-admin-mode-configuration.component.d.ts +0 -47
  148. package/websql/lib/ui/taon-admin-mode-configuration/taon-admin.models.d.ts +0 -6
  149. package/websql/lib/ui/taon-full-material.module.d.ts +0 -50
  150. package/websql/lib/ui/taon-github-fork-me-corner/index.d.ts +0 -3
  151. package/websql/lib/ui/taon-github-fork-me-corner/taon-github-fork-me-corner.component.d.ts +0 -7
  152. package/websql/lib/ui/taon-github-fork-me-corner/taon-github-fork-me-corner.module.d.ts +0 -9
  153. package/websql/lib/ui/taon-notifications/index.d.ts +0 -5
  154. package/websql/lib/ui/taon-notifications/taon-notifications.component.d.ts +0 -13
  155. package/websql/lib/ui/taon-notifications/taon-notifications.models.d.ts +0 -7
  156. package/websql/lib/ui/taon-notifications/taon-notifications.module.d.ts +0 -8
  157. package/websql/lib/ui/taon-notifications/taon-notifications.service.d.ts +0 -15
  158. package/websql/lib/ui/taon-progress-bar/index.d.ts +0 -3
  159. package/websql/lib/ui/taon-progress-bar/taon-progress-bar.component.d.ts +0 -17
  160. package/websql/lib/ui/taon-progress-bar/taon-progress-bar.module.d.ts +0 -9
  161. package/websql/lib/ui/taon-session-passcode/index.d.ts +0 -2
  162. package/websql/lib/ui/taon-session-passcode/taon-session-passcode.component.d.ts +0 -39
  163. package/websql/lib/ui/taon-table/index.d.ts +0 -3
  164. package/websql/lib/ui/taon-table/taon-table.component.d.ts +0 -38
  165. package/websql/lib/ui/taon-table/taon-table.module.d.ts +0 -17
@@ -1,6 +1,6 @@
1
1
  import 'reflect-metadata';
2
2
  import * as coreHelpers from 'tnp-core/websql';
3
- import { _, Utils, UtilsMigrations, Helpers, UtilsOs, crossPlatformPath, json5 } from 'tnp-core/websql';
3
+ import { _, Utils, UtilsMigrations, Helpers, UtilsOs, crossPlatformPath } from 'tnp-core/websql';
4
4
  import { __decorate, __metadata, __param } from 'tslib';
5
5
  import * as tsorm from 'taon-typeorm/websql';
6
6
  import { OrignalClassKey, Entity, Table, TableIndex, EventSubscriber, DataSource } from 'taon-typeorm/websql';
@@ -9,78 +9,14 @@ import { SYMBOL, CLASS } from 'typescript-class-helpers/websql';
9
9
  import { Models as Models$1, RestHeaders, Resource, Mapping } from 'ng2-rest/websql';
10
10
  import * as JSON5 from 'json5';
11
11
  import * as i0 from '@angular/core';
12
- import { InjectionToken, inject as inject$1, Injectable, EventEmitter, HostListener, HostBinding, Output, Input, Directive, Pipe, NgModule, Component, DestroyRef, Self, ViewChild, ChangeDetectorRef } from '@angular/core';
12
+ import { InjectionToken, inject as inject$1, Injectable } from '@angular/core';
13
13
  import axios from 'axios';
14
14
  import { ipcRenderer } from 'electron';
15
15
  import { JSON10 } from 'json10/websql';
16
- import { Observable, Subject, from, interval, tap, Subscription, defer, fromEvent, map, debounceTime, distinctUntilChanged, share, takeUntil } from 'rxjs';
16
+ import { Observable, Subject, from } from 'rxjs';
17
17
  import { io } from 'socket.io-client';
18
18
  import { Stor } from 'taon-storage/websql';
19
19
  import { MySqlQuerySource } from 'taon-type-sql/websql';
20
- import { Log, Level } from 'ng2-logger/websql';
21
- import * as i1 from '@angular/platform-browser';
22
- import { A11yModule } from '@angular/cdk/a11y';
23
- import * as i5$1 from '@angular/cdk/drag-drop';
24
- import { DragDropModule } from '@angular/cdk/drag-drop';
25
- import { ScrollingModule } from '@angular/cdk/scrolling';
26
- import { CdkStepperModule } from '@angular/cdk/stepper';
27
- import { CdkTableModule } from '@angular/cdk/table';
28
- import { CdkTreeModule } from '@angular/cdk/tree';
29
- import { MatAutocompleteModule } from '@angular/material/autocomplete';
30
- import { MatBadgeModule } from '@angular/material/badge';
31
- import { MatBottomSheetModule } from '@angular/material/bottom-sheet';
32
- import * as i6 from '@angular/material/button';
33
- import { MatButtonModule } from '@angular/material/button';
34
- import * as i7 from '@angular/material/card';
35
- import { MatCardModule } from '@angular/material/card';
36
- import * as i8 from '@angular/material/checkbox';
37
- import { MatCheckboxModule } from '@angular/material/checkbox';
38
- import { MatButtonToggleModule } from '@angular/material/button-toggle';
39
- import { MatStepperModule } from '@angular/material/stepper';
40
- import { MatDialogModule } from '@angular/material/dialog';
41
- import { MatExpansionModule } from '@angular/material/expansion';
42
- import { MatGridListModule } from '@angular/material/grid-list';
43
- import * as i5 from '@angular/material/icon';
44
- import { MatIconModule } from '@angular/material/icon';
45
- import { MatListModule } from '@angular/material/list';
46
- import { MatDatepickerModule } from '@angular/material/datepicker';
47
- import { MatPaginatorModule } from '@angular/material/paginator';
48
- import { MatProgressBarModule } from '@angular/material/progress-bar';
49
- import { MatChipsModule } from '@angular/material/chips';
50
- import { MatDividerModule } from '@angular/material/divider';
51
- import * as i2$2 from '@angular/material/input';
52
- import { MatInputModule } from '@angular/material/input';
53
- import { MatMenuModule } from '@angular/material/menu';
54
- import { MatNativeDateModule, MatRippleModule } from '@angular/material/core';
55
- import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
56
- import { MatRadioModule } from '@angular/material/radio';
57
- import { MatSelectModule } from '@angular/material/select';
58
- import * as i10 from '@angular/material/sidenav';
59
- import { MatSidenavModule } from '@angular/material/sidenav';
60
- import { MatSliderModule } from '@angular/material/slider';
61
- import { MatSlideToggleModule } from '@angular/material/slide-toggle';
62
- import { MatSnackBarModule } from '@angular/material/snack-bar';
63
- import { MatSortModule } from '@angular/material/sort';
64
- import { MatTableModule } from '@angular/material/table';
65
- import * as i11 from '@angular/material/tabs';
66
- import { MatTabsModule } from '@angular/material/tabs';
67
- import { MatToolbarModule } from '@angular/material/toolbar';
68
- import { MatTooltipModule } from '@angular/material/tooltip';
69
- import { MatTreeModule } from '@angular/material/tree';
70
- import * as i2$1 from '@angular/common';
71
- import { CommonModule } from '@angular/common';
72
- import * as i1$1 from '@ngneat/hot-toast';
73
- import * as i2 from '@angular/forms';
74
- import { FormGroup, FormControl, ReactiveFormsModule, FormsModule } from '@angular/forms';
75
- import { PasswordModule } from 'primeng/password';
76
- import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
77
- import * as i3 from '@ng-matero/extensions/grid';
78
- import { MtxGridModule } from '@ng-matero/extensions/grid';
79
- import * as i1$2 from 'static-columns/websql';
80
- import { StaticColumnsModule } from 'static-columns/websql';
81
- import { MatFormFieldModule } from '@angular/material/form-field';
82
- import * as i4 from 'ngx-scrollbar';
83
- import { NgScrollbarModule } from 'ngx-scrollbar';
84
20
 
85
21
  //#region @websql
86
22
  //#region orm
@@ -963,10 +899,10 @@ class BaseAngularsService {
963
899
  get host() {
964
900
  return `http://localhost:${this.CURRENT_HOST_BACKEND_PORT}`;
965
901
  }
966
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: BaseAngularsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
967
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: BaseAngularsService }); }
902
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.12", ngImport: i0, type: BaseAngularsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
903
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.12", ngImport: i0, type: BaseAngularsService }); }
968
904
  }
969
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: BaseAngularsService, decorators: [{
905
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.12", ngImport: i0, type: BaseAngularsService, decorators: [{
970
906
  type: Injectable
971
907
  }], ctorParameters: () => [] });
972
908
 
@@ -1341,7 +1277,7 @@ class DITaonContainer {
1341
1277
  }
1342
1278
  }
1343
1279
 
1344
- const ENV$2 = Helpers.isBrowser ? window['ENV'] : global['ENV'];
1280
+ const ENV$1 = Helpers.isBrowser ? window['ENV'] : global['ENV'];
1345
1281
 
1346
1282
  const getResponseValue = (response, options) => {
1347
1283
  //#region @websqlFunc
@@ -2519,7 +2455,7 @@ class RealtimeCore {
2519
2455
  }
2520
2456
 
2521
2457
  //#endregion
2522
- const ENV$1 = Helpers.isBrowser ? window['ENV'] : global['ENV'];
2458
+ const ENV = Helpers.isBrowser ? window['ENV'] : global['ENV'];
2523
2459
  // @Injectable({ providedIn: 'root' }) TODO make it angular service
2524
2460
  class TaonAdminService {
2525
2461
  static get Instance() {
@@ -2539,7 +2475,7 @@ class TaonAdminService {
2539
2475
  this.onEditMode$ = this.onEditMode.asObservable();
2540
2476
  this.enabledTabs = [];
2541
2477
  TaonAdminService._instance = this;
2542
- this.scrollableEnabled = !!ENV$1?.useGlobalNgxScrollbar;
2478
+ this.scrollableEnabled = !!ENV?.useGlobalNgxScrollbar;
2543
2479
  }
2544
2480
  //#endregion
2545
2481
  //#region methods
@@ -2806,7 +2742,7 @@ class EndpointContext {
2806
2742
  this.onlyMigrationRun = onlyMigrationRun;
2807
2743
  // @ts-ignore
2808
2744
  this.onlyMigrationRevertToTimestamp = onlyMigrationRevertToTimestamp;
2809
- this.config = this.configFn(ENV$2);
2745
+ this.config = this.configFn(ENV$1);
2810
2746
  if (_.isObject(this.config.database)) {
2811
2747
  this.config.database = Models.DatabaseConfig.from(this.config.database).databaseConfigTypeORM;
2812
2748
  }
@@ -4492,7 +4428,7 @@ const createContextTemplate = (configFn) => {
4492
4428
  };
4493
4429
  };
4494
4430
  const createContext = (configFn) => {
4495
- let config = configFn(ENV$2);
4431
+ let config = configFn(ENV$1);
4496
4432
  const endpointContextRef = new EndpointContext(config, configFn);
4497
4433
  const res = {
4498
4434
  //#region types
@@ -6251,1125 +6187,6 @@ const inject = (entity) => {
6251
6187
  // return proxyObservable as Observable<SubscriptionEvent<T>>;
6252
6188
  // };
6253
6189
 
6254
- const log$1 = Log.create(`[taon-helpers] long-press`, Level.__NOTHING);
6255
- class TaonLongPress {
6256
- constructor() {
6257
- this.pressDuration = 1000;
6258
- this.onLongPress = new EventEmitter();
6259
- this.onLongPressing = new EventEmitter();
6260
- this.onLongPressEnd = new EventEmitter();
6261
- this.mouseX = 0;
6262
- this.mouseY = 0;
6263
- this.allowTrigger = false;
6264
- this.triggerEnd = _.debounce(() => {
6265
- this.endPress();
6266
- }, 500);
6267
- }
6268
- get press() {
6269
- return this.pressing;
6270
- }
6271
- get longPress() {
6272
- return this.longPressing;
6273
- }
6274
- onMouseDown(event) {
6275
- // don't do right/middle clicks
6276
- log$1.d(`MOUSE DOWN `);
6277
- if (event.which !== 1)
6278
- return;
6279
- this.allowTrigger = true;
6280
- this.mouseX = event.clientX;
6281
- this.mouseY = event.clientY;
6282
- this.pressing = true;
6283
- this.longPressing = false;
6284
- this.timeout = setTimeout(() => {
6285
- if (this.allowTrigger) {
6286
- this.longPressing = true;
6287
- log$1.d(`long pressing start pressDuration:${this.pressDuration} `);
6288
- this.onLongPress.emit(event);
6289
- this.loop(event);
6290
- }
6291
- }, this.pressDuration);
6292
- this.loop(event);
6293
- }
6294
- onMouseMove(event) {
6295
- if (this.pressing && !this.longPressing) {
6296
- const xThres = event.clientX - this.mouseX > 10;
6297
- const yThres = event.clientY - this.mouseY > 10;
6298
- if (xThres || yThres) {
6299
- this.endPress();
6300
- }
6301
- }
6302
- }
6303
- loop(event) {
6304
- if (this.longPressing) {
6305
- this.timeout = setTimeout(() => {
6306
- log$1.d(`emil longpressing`);
6307
- this.triggerEnd();
6308
- this.onLongPressing.emit(event);
6309
- this.loop(event);
6310
- }, 50);
6311
- }
6312
- }
6313
- endPress(emit = true) {
6314
- this.allowTrigger = false;
6315
- clearTimeout(this.timeout);
6316
- this.longPressing = false;
6317
- this.pressing = false;
6318
- if (emit) {
6319
- log$1.d(`EMIT END`);
6320
- this.onLongPressEnd.emit(true);
6321
- }
6322
- else {
6323
- log$1.d(`NOT EMIT END`);
6324
- }
6325
- }
6326
- onMouseUp() {
6327
- this.endPress(false);
6328
- }
6329
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonLongPress, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
6330
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.7", type: TaonLongPress, isStandalone: true, selector: "[taonLongPress]", inputs: { pressDuration: "pressDuration" }, outputs: { onLongPress: "onLongPress", onLongPressing: "onLongPressing", onLongPressEnd: "onLongPressEnd" }, host: { listeners: { "mousedown": "onMouseDown($event)", "mousemove": "onMouseMove($event)", "mouseup": "onMouseUp()" }, properties: { "class.press": "this.press", "class.longpress": "this.longPress" } }, ngImport: i0 }); }
6331
- }
6332
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonLongPress, decorators: [{
6333
- type: Directive,
6334
- args: [{
6335
- selector: '[taonLongPress]',
6336
- standalone: true,
6337
- }]
6338
- }], propDecorators: { pressDuration: [{
6339
- type: Input
6340
- }], onLongPress: [{
6341
- type: Output
6342
- }], onLongPressing: [{
6343
- type: Output
6344
- }], onLongPressEnd: [{
6345
- type: Output
6346
- }], press: [{
6347
- type: HostBinding,
6348
- args: ['class.press']
6349
- }], longPress: [{
6350
- type: HostBinding,
6351
- args: ['class.longpress']
6352
- }], onMouseDown: [{
6353
- type: HostListener,
6354
- args: ['mousedown', ['$event']]
6355
- }], onMouseMove: [{
6356
- type: HostListener,
6357
- args: ['mousemove', ['$event']]
6358
- }], onMouseUp: [{
6359
- type: HostListener,
6360
- args: ['mouseup']
6361
- }] } });
6362
-
6363
- class TaonInjectHTMLDirective {
6364
- set taonInjectHTML(content) {
6365
- this.host.nativeElement.innerHTML = content;
6366
- }
6367
- constructor(host) {
6368
- this.host = host;
6369
- }
6370
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonInjectHTMLDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
6371
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.7", type: TaonInjectHTMLDirective, isStandalone: true, selector: "[taonInjectHTML]", inputs: { taonInjectHTML: "taonInjectHTML" }, ngImport: i0 }); }
6372
- }
6373
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonInjectHTMLDirective, decorators: [{
6374
- type: Directive,
6375
- args: [{
6376
- selector: '[taonInjectHTML]',
6377
- standalone: true,
6378
- }]
6379
- }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { taonInjectHTML: [{
6380
- type: Input
6381
- }] } });
6382
-
6383
- class SafePipe {
6384
- constructor(sanitizer) {
6385
- this.sanitizer = sanitizer;
6386
- }
6387
- transform(value, type) {
6388
- switch (type) {
6389
- case 'html':
6390
- return this.sanitizer.bypassSecurityTrustHtml(value);
6391
- case 'style':
6392
- return this.sanitizer.bypassSecurityTrustStyle(value);
6393
- case 'script':
6394
- return this.sanitizer.bypassSecurityTrustScript(value);
6395
- case 'url':
6396
- return this.sanitizer.bypassSecurityTrustUrl(value);
6397
- case 'resourceUrl':
6398
- return this.sanitizer.bypassSecurityTrustResourceUrl(value);
6399
- default:
6400
- throw new Error(`Invalid safe type specified: ${type}`);
6401
- }
6402
- }
6403
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: SafePipe, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe }); }
6404
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.7", ngImport: i0, type: SafePipe, isStandalone: true, name: "safe" }); }
6405
- }
6406
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: SafePipe, decorators: [{
6407
- type: Pipe,
6408
- args: [{
6409
- name: 'safe',
6410
- standalone: true,
6411
- }]
6412
- }], ctorParameters: () => [{ type: i1.DomSanitizer }] });
6413
-
6414
- //#region @browser
6415
- //#endregion
6416
-
6417
- //#region @browser
6418
- /**
6419
- * @deprecated too heavy!
6420
- */
6421
- class TaonFullMaterialModule {
6422
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonFullMaterialModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6423
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.7", ngImport: i0, type: TaonFullMaterialModule, exports: [A11yModule,
6424
- CdkStepperModule,
6425
- CdkTableModule,
6426
- CdkTreeModule,
6427
- DragDropModule,
6428
- MatAutocompleteModule,
6429
- MatBadgeModule,
6430
- MatBottomSheetModule,
6431
- MatButtonModule,
6432
- MatButtonToggleModule,
6433
- MatCardModule,
6434
- MatCheckboxModule,
6435
- MatChipsModule,
6436
- MatStepperModule,
6437
- MatDatepickerModule,
6438
- MatDialogModule,
6439
- MatDividerModule,
6440
- MatExpansionModule,
6441
- MatGridListModule,
6442
- MatIconModule,
6443
- MatInputModule,
6444
- MatListModule,
6445
- MatMenuModule,
6446
- MatNativeDateModule,
6447
- MatPaginatorModule,
6448
- MatProgressBarModule,
6449
- MatProgressSpinnerModule,
6450
- MatRadioModule,
6451
- MatRippleModule,
6452
- MatSelectModule,
6453
- MatSidenavModule,
6454
- MatSliderModule,
6455
- MatSlideToggleModule,
6456
- MatSnackBarModule,
6457
- MatSortModule,
6458
- MatTableModule,
6459
- MatTabsModule,
6460
- MatToolbarModule,
6461
- MatTooltipModule,
6462
- MatTreeModule,
6463
- ScrollingModule] }); }
6464
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonFullMaterialModule, imports: [A11yModule,
6465
- CdkStepperModule,
6466
- CdkTableModule,
6467
- CdkTreeModule,
6468
- DragDropModule,
6469
- MatAutocompleteModule,
6470
- MatBadgeModule,
6471
- MatBottomSheetModule,
6472
- MatButtonModule,
6473
- MatButtonToggleModule,
6474
- MatCardModule,
6475
- MatCheckboxModule,
6476
- MatChipsModule,
6477
- MatStepperModule,
6478
- MatDatepickerModule,
6479
- MatDialogModule,
6480
- MatDividerModule,
6481
- MatExpansionModule,
6482
- MatGridListModule,
6483
- MatIconModule,
6484
- MatInputModule,
6485
- MatListModule,
6486
- MatMenuModule,
6487
- MatNativeDateModule,
6488
- MatPaginatorModule,
6489
- MatProgressBarModule,
6490
- MatProgressSpinnerModule,
6491
- MatRadioModule,
6492
- MatRippleModule,
6493
- MatSelectModule,
6494
- MatSidenavModule,
6495
- MatSliderModule,
6496
- MatSlideToggleModule,
6497
- MatSnackBarModule,
6498
- MatSortModule,
6499
- MatTableModule,
6500
- MatTabsModule,
6501
- MatToolbarModule,
6502
- MatTooltipModule,
6503
- MatTreeModule,
6504
- ScrollingModule] }); }
6505
- }
6506
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonFullMaterialModule, decorators: [{
6507
- type: NgModule,
6508
- args: [{
6509
- exports: [
6510
- A11yModule,
6511
- CdkStepperModule,
6512
- CdkTableModule,
6513
- CdkTreeModule,
6514
- DragDropModule,
6515
- MatAutocompleteModule,
6516
- MatBadgeModule,
6517
- MatBottomSheetModule,
6518
- MatButtonModule,
6519
- MatButtonToggleModule,
6520
- MatCardModule,
6521
- MatCheckboxModule,
6522
- MatChipsModule,
6523
- MatStepperModule,
6524
- MatDatepickerModule,
6525
- MatDialogModule,
6526
- MatDividerModule,
6527
- MatExpansionModule,
6528
- MatGridListModule,
6529
- MatIconModule,
6530
- MatInputModule,
6531
- MatListModule,
6532
- MatMenuModule,
6533
- MatNativeDateModule,
6534
- MatPaginatorModule,
6535
- MatProgressBarModule,
6536
- MatProgressSpinnerModule,
6537
- MatRadioModule,
6538
- MatRippleModule,
6539
- MatSelectModule,
6540
- MatSidenavModule,
6541
- MatSliderModule,
6542
- MatSlideToggleModule,
6543
- MatSnackBarModule,
6544
- MatSortModule,
6545
- MatTableModule,
6546
- MatTabsModule,
6547
- MatToolbarModule,
6548
- MatTooltipModule,
6549
- MatTreeModule,
6550
- ScrollingModule,
6551
- ],
6552
- }]
6553
- }] });
6554
-
6555
- //#region @browser
6556
- class TaonGithubForkMeCornerComponent {
6557
- constructor() {
6558
- this.url = 'https://github.com';
6559
- }
6560
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonGithubForkMeCornerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6561
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.7", type: TaonGithubForkMeCornerComponent, isStandalone: false, selector: "taon-github-fork-me-corner", inputs: { url: "url" }, ngImport: i0, template: "<a href=\"{{ url }}\" class=\"github-corner\" aria-label=\"View source on GitHub\"\n ><svg\n width=\"80\"\n height=\"80\"\n viewBox=\"0 0 250 250\"\n style=\"\n fill: #151513;\n color: #fff;\n position: absolute;\n top: 0;\n border: 0;\n right: 0;\n \"\n aria-hidden=\"true\">\n <path d=\"M0,0 L115,115 L130,115 L142,142 L250,250 L250,0 Z\"></path>\n <path\n d=\"M128.3,109.0 C113.8,99.7 119.0,89.6 119.0,89.6 C122.0,82.7 120.5,78.6 120.5,78.6 C119.2,72.0 123.4,76.3 123.4,76.3 C127.3,80.9 125.5,87.3 125.5,87.3 C122.9,97.6 130.6,101.9 134.4,103.2\"\n fill=\"currentColor\"\n style=\"transform-origin: 130px 106px\"\n class=\"octo-arm\"></path>\n <path\n d=\"M115.0,115.0 C114.9,115.1 118.7,116.5 119.8,115.4 L133.7,101.6 C136.9,99.2 139.9,98.4 142.2,98.6 C133.8,88.0 127.5,74.4 143.8,58.0 C148.5,53.4 154.0,51.2 159.7,51.0 C160.3,49.4 163.2,43.6 171.4,40.1 C171.4,40.1 176.1,42.5 178.8,56.2 C183.1,58.6 187.2,61.8 190.9,65.4 C194.5,69.0 197.7,73.2 200.1,77.6 C213.8,80.2 216.3,84.9 216.3,84.9 C212.7,93.1 206.9,96.0 205.4,96.6 C205.1,102.4 203.0,107.8 198.3,112.5 C181.9,128.9 168.3,122.5 157.7,114.1 C157.9,116.9 156.7,120.9 152.7,124.9 L141.0,136.5 C139.8,137.7 141.6,141.9 141.8,141.8 Z\"\n fill=\"currentColor\"\n class=\"octo-body\"></path>\n </svg>\n</a>", styles: ["a{opacity:.7}a:hover{opacity:1}.github-corner:hover .octo-arm{opacity:1;animation:octocat-wave .56s ease-in-out}@keyframes octocat-wave{0%,to{transform:rotate(0)}20%,60%{transform:rotate(-25deg)}40%,80%{transform:rotate(10deg)}}@media (max-width: 500px){.github-corner:hover .octo-arm{animation:none}.github-corner .octo-arm{animation:octocat-wave .56s ease-in-out}}\n"] }); }
6562
- }
6563
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonGithubForkMeCornerComponent, decorators: [{
6564
- type: Component,
6565
- args: [{ selector: 'taon-github-fork-me-corner', standalone: false, template: "<a href=\"{{ url }}\" class=\"github-corner\" aria-label=\"View source on GitHub\"\n ><svg\n width=\"80\"\n height=\"80\"\n viewBox=\"0 0 250 250\"\n style=\"\n fill: #151513;\n color: #fff;\n position: absolute;\n top: 0;\n border: 0;\n right: 0;\n \"\n aria-hidden=\"true\">\n <path d=\"M0,0 L115,115 L130,115 L142,142 L250,250 L250,0 Z\"></path>\n <path\n d=\"M128.3,109.0 C113.8,99.7 119.0,89.6 119.0,89.6 C122.0,82.7 120.5,78.6 120.5,78.6 C119.2,72.0 123.4,76.3 123.4,76.3 C127.3,80.9 125.5,87.3 125.5,87.3 C122.9,97.6 130.6,101.9 134.4,103.2\"\n fill=\"currentColor\"\n style=\"transform-origin: 130px 106px\"\n class=\"octo-arm\"></path>\n <path\n d=\"M115.0,115.0 C114.9,115.1 118.7,116.5 119.8,115.4 L133.7,101.6 C136.9,99.2 139.9,98.4 142.2,98.6 C133.8,88.0 127.5,74.4 143.8,58.0 C148.5,53.4 154.0,51.2 159.7,51.0 C160.3,49.4 163.2,43.6 171.4,40.1 C171.4,40.1 176.1,42.5 178.8,56.2 C183.1,58.6 187.2,61.8 190.9,65.4 C194.5,69.0 197.7,73.2 200.1,77.6 C213.8,80.2 216.3,84.9 216.3,84.9 C212.7,93.1 206.9,96.0 205.4,96.6 C205.1,102.4 203.0,107.8 198.3,112.5 C181.9,128.9 168.3,122.5 157.7,114.1 C157.9,116.9 156.7,120.9 152.7,124.9 L141.0,136.5 C139.8,137.7 141.6,141.9 141.8,141.8 Z\"\n fill=\"currentColor\"\n class=\"octo-body\"></path>\n </svg>\n</a>", styles: ["a{opacity:.7}a:hover{opacity:1}.github-corner:hover .octo-arm{opacity:1;animation:octocat-wave .56s ease-in-out}@keyframes octocat-wave{0%,to{transform:rotate(0)}20%,60%{transform:rotate(-25deg)}40%,80%{transform:rotate(10deg)}}@media (max-width: 500px){.github-corner:hover .octo-arm{animation:none}.github-corner .octo-arm{animation:octocat-wave .56s ease-in-out}}\n"] }]
6566
- }], propDecorators: { url: [{
6567
- type: Input
6568
- }] } });
6569
-
6570
- //#region @browser
6571
- class TaonGithubForkMeCornerModule {
6572
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonGithubForkMeCornerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6573
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.7", ngImport: i0, type: TaonGithubForkMeCornerModule, declarations: [TaonGithubForkMeCornerComponent], imports: [CommonModule], exports: [TaonGithubForkMeCornerComponent] }); }
6574
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonGithubForkMeCornerModule, imports: [CommonModule] }); }
6575
- }
6576
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonGithubForkMeCornerModule, decorators: [{
6577
- type: NgModule,
6578
- args: [{
6579
- imports: [CommonModule],
6580
- exports: [TaonGithubForkMeCornerComponent],
6581
- declarations: [TaonGithubForkMeCornerComponent],
6582
- providers: [],
6583
- }]
6584
- }] });
6585
-
6586
- //#region @browser
6587
- //#endregion
6588
-
6589
- //#region @browser
6590
- class TaonNotificationsService {
6591
- constructor(toast) {
6592
- this.toast = toast;
6593
- }
6594
- options(type, options) {
6595
- if (_.isString(options)) {
6596
- options = {
6597
- // @ts-ignore
6598
- title: options,
6599
- };
6600
- }
6601
- return options;
6602
- }
6603
- success(options) {
6604
- const opt = this.options('success', options);
6605
- return this.toast.success(opt.title);
6606
- }
6607
- error(options) {
6608
- const opt = this.options('error', options);
6609
- return this.toast.error(opt.title);
6610
- }
6611
- warn(options) {
6612
- const opt = this.options('warning', options);
6613
- return this.toast.warning(opt.title);
6614
- }
6615
- info(options) {
6616
- const opt = this.options('info', options);
6617
- return this.toast.info(opt.title);
6618
- }
6619
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonNotificationsService, deps: [{ token: i1$1.HotToastService }], target: i0.ɵɵFactoryTarget.Injectable }); }
6620
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonNotificationsService, providedIn: 'root' }); }
6621
- }
6622
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonNotificationsService, decorators: [{
6623
- type: Injectable,
6624
- args: [{
6625
- providedIn: 'root',
6626
- }]
6627
- }], ctorParameters: () => [{ type: i1$1.HotToastService }] });
6628
-
6629
- //#region @browser
6630
- class TaonNotificationsComponent {
6631
- constructor(notification) {
6632
- this.notification = notification;
6633
- }
6634
- ngOnInit() { }
6635
- init(subscribtionsArray, template, callback) {
6636
- subscribtionsArray.push(Resource.listenErrors.subscribe(err => {
6637
- this.notification.error(err.msg);
6638
- // subscribtionsArray.push(notify.onTap.subscribe(() => {
6639
- // callback(err);
6640
- // this.modal.open(template);
6641
- // }) as any);
6642
- }));
6643
- }
6644
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonNotificationsComponent, deps: [{ token: TaonNotificationsService }], target: i0.ɵɵFactoryTarget.Component }); }
6645
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.7", type: TaonNotificationsComponent, isStandalone: false, selector: "taon-notifications", ngImport: i0, template: "<!-- <p>\n notyfications works!\n</p> -->", styles: [":host{position:absolute;width:0px;height:0px}\n"] }); }
6646
- }
6647
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonNotificationsComponent, decorators: [{
6648
- type: Component,
6649
- args: [{ selector: 'taon-notifications', standalone: false, template: "<!-- <p>\n notyfications works!\n</p> -->", styles: [":host{position:absolute;width:0px;height:0px}\n"] }]
6650
- }], ctorParameters: () => [{ type: TaonNotificationsService }] });
6651
-
6652
- class TaonNotificationOptions {
6653
- }
6654
- //#endregion
6655
-
6656
- //#region @browser
6657
- class TaonNotificationsModule {
6658
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonNotificationsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6659
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.7", ngImport: i0, type: TaonNotificationsModule, declarations: [TaonNotificationsComponent], exports: [TaonNotificationsComponent] }); }
6660
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonNotificationsModule, providers: [TaonNotificationsService] }); }
6661
- }
6662
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonNotificationsModule, decorators: [{
6663
- type: NgModule,
6664
- args: [{
6665
- imports: [
6666
- // CommonModule,
6667
- // BrowserAnimationsModule, // required animations module
6668
- // HotToastModule.forRoot({
6669
- // position: 'top-right',
6670
- // }),
6671
- ],
6672
- exports: [TaonNotificationsComponent],
6673
- declarations: [TaonNotificationsComponent],
6674
- providers: [TaonNotificationsService],
6675
- }]
6676
- }] });
6677
-
6678
- //#region @browser
6679
- //#endregion
6680
-
6681
- class TaonSessionPasscodeComponent {
6682
- constructor(element, domSanitizer, cdr) {
6683
- this.element = element;
6684
- this.domSanitizer = domSanitizer;
6685
- this.cdr = cdr;
6686
- this.destroyRef = inject$1(DestroyRef);
6687
- this.display = 'none';
6688
- this.form = new FormGroup({
6689
- passcode: new FormControl(),
6690
- });
6691
- }
6692
- ngOnInit() {
6693
- if (!this.passcode) {
6694
- this.passcode = '123456';
6695
- }
6696
- if (!this.message) {
6697
- this.message = `
6698
- This website is only for testing purpose. Please type passcode bellow to see content.
6699
-
6700
- `;
6701
- }
6702
- // console.log({
6703
- // 'lastPasscode': this.lastPasscode,
6704
- // 'current passcode': this.passcode,
6705
- // 'current message': this.message,
6706
- // })
6707
- // this.width = window.innerWidth;
6708
- // this.height = window.innerHeight;
6709
- this.safeMessage = this.domSanitizer.bypassSecurityTrustHtml(this.message);
6710
- if (this.lastPasscode?.toString() === this.passcode?.toString()) {
6711
- this.hide();
6712
- }
6713
- else {
6714
- this.show();
6715
- this.focus();
6716
- }
6717
- interval(1000)
6718
- .pipe(takeUntilDestroyed(this.destroyRef), tap(() => {
6719
- this.focus();
6720
- }))
6721
- .subscribe();
6722
- }
6723
- submit({ passcode }) {
6724
- if (this.isPasscodeOK(passcode || '')) {
6725
- this.hide();
6726
- }
6727
- else {
6728
- this.clear();
6729
- }
6730
- }
6731
- isPasscodeOK(passcode) {
6732
- this.lastPasscode = passcode.toString();
6733
- return this.passcode.toString() === passcode;
6734
- }
6735
- ngAfterViewInit() { }
6736
- focus() {
6737
- this.element.nativeElement.querySelector('input')?.focus();
6738
- }
6739
- hide() {
6740
- this.display = 'none';
6741
- }
6742
- show() {
6743
- this.display = 'block';
6744
- }
6745
- clear() {
6746
- this.form.controls.passcode.setValue('');
6747
- }
6748
- onKeyup(event) {
6749
- if (this.isPasscodeOK(event.target.value || '')) {
6750
- this.hide();
6751
- return;
6752
- }
6753
- const key = event.keyCode || event.charCode;
6754
- if (key === 8 || key === 46 || this.lastPasscode?.length > 5) {
6755
- this.clear();
6756
- }
6757
- }
6758
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonSessionPasscodeComponent, deps: [{ token: i0.ElementRef, self: true }, { token: i1.DomSanitizer }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
6759
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.7", type: TaonSessionPasscodeComponent, isStandalone: true, selector: "taon-session-passcode", inputs: { passcode: "passcode", message: "message" }, host: { properties: { "style.display": "this.display" } }, ngImport: i0, template: "<form\n [formGroup]=\"form\"\n content=\"notranslate\"\n autocomplete=\"off\"\n (click)=\"focus()\"\n (ngSubmit)=\"submit(form.value)\"\n class=\"flex flex-column align-items-center w-full h-full\">\n <div class=\"flex align-content-center w-full justify-content-center mt-8\">\n <p\n class=\"p-3\"\n style=\"max-width: 400px; min-height: 100px\"\n [innerHtml]=\"safeMessage\"></p>\n </div>\n <input\n type=\"password\"\n class=\"text-5xl md:text-8xl pointer-events-none\"\n #taonpasscode\n (keyup)=\"onKeyup($event)\"\n formControlName=\"passcode\" />\n <!-- placeholder=\"Enter passcode\" -->\n</form>", styles: [":host{position:fixed;background-color:#9f9f9f57;z-index:99999;-webkit-backdrop-filter:blur(50px);backdrop-filter:blur(50px);width:100%;height:100%;display:none}input{background:#fff;border-radius:6px;outline:0px;border:0px;color:gray;text-align:center;width:500px}\n"], dependencies: [{ kind: "ngmodule", type: PasswordModule }, { kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: FormsModule }] }); }
6760
- }
6761
- __decorate([
6762
- (Stor.property.in.localstorage
6763
- .for(TaonSessionPasscodeComponent)
6764
- .withDefaultValue('')),
6765
- __metadata("design:type", String)
6766
- ], TaonSessionPasscodeComponent.prototype, "lastPasscode", void 0);
6767
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonSessionPasscodeComponent, decorators: [{
6768
- type: Component,
6769
- args: [{ selector: 'taon-session-passcode', standalone: true, imports: [PasswordModule, CommonModule, ReactiveFormsModule, FormsModule], template: "<form\n [formGroup]=\"form\"\n content=\"notranslate\"\n autocomplete=\"off\"\n (click)=\"focus()\"\n (ngSubmit)=\"submit(form.value)\"\n class=\"flex flex-column align-items-center w-full h-full\">\n <div class=\"flex align-content-center w-full justify-content-center mt-8\">\n <p\n class=\"p-3\"\n style=\"max-width: 400px; min-height: 100px\"\n [innerHtml]=\"safeMessage\"></p>\n </div>\n <input\n type=\"password\"\n class=\"text-5xl md:text-8xl pointer-events-none\"\n #taonpasscode\n (keyup)=\"onKeyup($event)\"\n formControlName=\"passcode\" />\n <!-- placeholder=\"Enter passcode\" -->\n</form>", styles: [":host{position:fixed;background-color:#9f9f9f57;z-index:99999;-webkit-backdrop-filter:blur(50px);backdrop-filter:blur(50px);width:100%;height:100%;display:none}input{background:#fff;border-radius:6px;outline:0px;border:0px;color:gray;text-align:center;width:500px}\n"] }]
6770
- }], ctorParameters: () => [{ type: i0.ElementRef, decorators: [{
6771
- type: Self
6772
- }] }, { type: i1.DomSanitizer }, { type: i0.ChangeDetectorRef }], propDecorators: { passcode: [{
6773
- type: Input
6774
- }], message: [{
6775
- type: Input
6776
- }], display: [{
6777
- type: HostBinding,
6778
- args: ['style.display']
6779
- }] } });
6780
-
6781
- //#region @browser
6782
- //#endregion
6783
-
6784
- //#region @browser
6785
- // import { Models } from 'tnp-models';
6786
- // import type { TaonAdmin } from '../taon-admin-mode-configuration';
6787
- const calculatePercentage = (loaded, total) => Math.floor(loaded * 1.0) / total;
6788
- class TaonProgressBarComponent {
6789
- // options: NgProgressConfig = _.merge(
6790
- // {
6791
- // min: 8,
6792
- // max: 100,
6793
- // speed: 200,
6794
- // trickleSpeed: 300,
6795
- // debounceTime: 0,
6796
- // ease: 'linear',
6797
- // spinnerPosition: 'right',
6798
- // direction: 'ltr+',
6799
- // color: 'gray',
6800
- // fixed: true,
6801
- // meteor: true,
6802
- // spinner: true,
6803
- // thick: false,
6804
- // },
6805
- // _.get(ENV, `plugins['ngx-progressbar']`),
6806
- // );
6807
- constructor() {
6808
- this.handlers = [];
6809
- }
6810
- ngOnInit() { }
6811
- ngOnDestroy() {
6812
- this.handlers.forEach(h => h.unsubscribe());
6813
- }
6814
- ngAfterViewInit() {
6815
- // this.labProgress.set(20)
6816
- this.loadProgressBar(void 0, axios);
6817
- }
6818
- loadProgressBar(config, instance = axios) {
6819
- // let requestsCounter = 0;
6820
- // const setupStartProgress = () => {
6821
- // instance.interceptors.request.use(config => {
6822
- // requestsCounter++;
6823
- // this.labProgress.start();
6824
- // return config;
6825
- // });
6826
- // };
6827
- // const setupUpdateProgress = () => {
6828
- // const update = e => {
6829
- // // NProgress.inc(calculatePercentage(e.loaded, e.total))
6830
- // const percentage = calculatePercentage(e.loaded, e.total) * 100;
6831
- // // console.log(`loaded: ${e.loaded}, total: ${e.total} , pecent: ${percentage}`)
6832
- // this.labProgress.inc(percentage);
6833
- // };
6834
- // instance.defaults.onDownloadProgress = update;
6835
- // instance.defaults.onUploadProgress = update;
6836
- // };
6837
- // const setupStopProgress = () => {
6838
- // const responseFunc = response => {
6839
- // if (--requestsCounter === 0) {
6840
- // this.labProgress.complete();
6841
- // // NProgress.done()
6842
- // }
6843
- // return response;
6844
- // };
6845
- // const errorFunc = error => {
6846
- // if (--requestsCounter === 0) {
6847
- // this.labProgress.complete();
6848
- // // NProgress.done()
6849
- // }
6850
- // return Promise.reject(error);
6851
- // };
6852
- // instance.interceptors.response.use(responseFunc, errorFunc);
6853
- // };
6854
- // setupStartProgress();
6855
- // setupUpdateProgress();
6856
- // setupStopProgress();
6857
- // //#region @websqlOnly
6858
- // const SYMBOL = Taon.symbols;
6859
- // let updateFun: Observable<number> = window[SYMBOL.WEBSQL_REST_PROGRESS_FUN];
6860
- // if (!window[SYMBOL.WEBSQL_REST_PROGRESS_FUN]) {
6861
- // window[SYMBOL.WEBSQL_REST_PROGRESS_FUN] = new Subject();
6862
- // }
6863
- // updateFun = window[SYMBOL.WEBSQL_REST_PROGRESS_FUN];
6864
- // let startFun: Subject<void> = window[SYMBOL.WEBSQL_REST_PROGRESS_FUN_START];
6865
- // if (!window[SYMBOL.WEBSQL_REST_PROGRESS_FUN_START]) {
6866
- // window[SYMBOL.WEBSQL_REST_PROGRESS_FUN_START] = new Subject();
6867
- // }
6868
- // startFun = window[SYMBOL.WEBSQL_REST_PROGRESS_FUN_START];
6869
- // let doneFun: Subject<void> = window[SYMBOL.WEBSQL_REST_PROGRESS_FUN_DONE];
6870
- // if (!window[SYMBOL.WEBSQL_REST_PROGRESS_FUN_DONE]) {
6871
- // window[SYMBOL.WEBSQL_REST_PROGRESS_FUN_DONE] = new Subject();
6872
- // }
6873
- // doneFun = window[SYMBOL.WEBSQL_REST_PROGRESS_FUN_DONE];
6874
- // this.handlers.push(
6875
- // updateFun.subscribe(loaded => {
6876
- // // console.log(`update: ${loaded}`)
6877
- // const total = 100;
6878
- // const percentage = calculatePercentage(loaded, total) * 100;
6879
- // // console.log(`set pecentage: ${percentage}`)
6880
- // this.labProgress.set(percentage);
6881
- // }),
6882
- // );
6883
- // this.handlers.push(
6884
- // startFun.subscribe(() => {
6885
- // // requestsCounter++;
6886
- // // console.log('START WEBSQL REQUEST')
6887
- // this.labProgress.start();
6888
- // }),
6889
- // );
6890
- // this.handlers.push(
6891
- // doneFun.subscribe(() => {
6892
- // // if ((--requestsCounter) === 0) {
6893
- // // console.log('DONE WEBSQL REQUEST')
6894
- // this.labProgress.complete();
6895
- // // NProgress.done()
6896
- // // }
6897
- // }),
6898
- // );
6899
- //#endregion
6900
- }
6901
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonProgressBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6902
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.7", type: TaonProgressBarComponent, isStandalone: false, selector: "taon-progress-bar", inputs: { isDesktop: "isDesktop" }, viewQueries: [{ propertyName: "labProgress", first: true, predicate: ["labProgress"], descendants: true }], ngImport: i0, template: "<!-- <ng-progress\n #labProgress\n id=\"lab\"\n [meteor]=\"options.meteor\"\n [color]=\"options.color\"\n [min]=\"options.min\"\n [max]=\"options.max\"\n [speed]=\"options.speed\"\n [spinner]=\"\n options.spinner &&\n (!admin.adminPanelIsOpen ||\n (admin.adminPanelIsOpen && (admin.draggablePopupMode || !isDesktop)))\n \"\n [spinnerPosition]=\"options.spinnerPosition\"\n [direction]=\"options.direction\"\n [trickleSpeed]=\"options.trickleSpeed\"\n [debounceTime]=\"options.debounceTime\"\n [ease]=\"options.ease\"\n [thick]=\"options.thick\"\n [fixed]=\"options.fixed\">\n</ng-progress>\n(started)=\"onProgressStarted()\"\n (completed)=\"onProgressCompleted()\" -->", styles: [":host{display:block}\n"] }); }
6903
- }
6904
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonProgressBarComponent, decorators: [{
6905
- type: Component,
6906
- args: [{ selector: 'taon-progress-bar', standalone: false, template: "<!-- <ng-progress\n #labProgress\n id=\"lab\"\n [meteor]=\"options.meteor\"\n [color]=\"options.color\"\n [min]=\"options.min\"\n [max]=\"options.max\"\n [speed]=\"options.speed\"\n [spinner]=\"\n options.spinner &&\n (!admin.adminPanelIsOpen ||\n (admin.adminPanelIsOpen && (admin.draggablePopupMode || !isDesktop)))\n \"\n [spinnerPosition]=\"options.spinnerPosition\"\n [direction]=\"options.direction\"\n [trickleSpeed]=\"options.trickleSpeed\"\n [debounceTime]=\"options.debounceTime\"\n [ease]=\"options.ease\"\n [thick]=\"options.thick\"\n [fixed]=\"options.fixed\">\n</ng-progress>\n(started)=\"onProgressStarted()\"\n (completed)=\"onProgressCompleted()\" -->", styles: [":host{display:block}\n"] }]
6907
- }], ctorParameters: () => [], propDecorators: { labProgress: [{
6908
- type: ViewChild,
6909
- args: ['labProgress']
6910
- }], isDesktop: [{
6911
- type: Input
6912
- }] } });
6913
-
6914
- //#region @browser
6915
- // import { NgProgressConfig, NgProgressModule } from 'ngx-progressbar';
6916
- class TaonProgressBarModule {
6917
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonProgressBarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6918
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.7", ngImport: i0, type: TaonProgressBarModule, declarations: [TaonProgressBarComponent], imports: [CommonModule], exports: [TaonProgressBarComponent] }); }
6919
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonProgressBarModule, imports: [CommonModule] }); }
6920
- }
6921
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonProgressBarModule, decorators: [{
6922
- type: NgModule,
6923
- args: [{
6924
- imports: [CommonModule,
6925
- // NgProgressModule.withConfig({})
6926
- ],
6927
- declarations: [TaonProgressBarComponent],
6928
- exports: [TaonProgressBarComponent],
6929
- }]
6930
- }] });
6931
-
6932
- //#region @browser
6933
- //#endregion
6934
-
6935
- //#region imports
6936
- //#endregion
6937
- //#region constants
6938
- const log = Log.create('Table wrapper', Level.__NOTHING);
6939
- const defaultColumns = [
6940
- {
6941
- header: 'ID',
6942
- field: 'id',
6943
- },
6944
- {
6945
- header: 'NAME',
6946
- field: 'name',
6947
- },
6948
- ];
6949
- //#endregion
6950
- class TaonTableComponent {
6951
- constructor() {
6952
- //#region fields
6953
- this.pageNumber = 1;
6954
- this.pageSize = 5;
6955
- this.allowedColumns = [];
6956
- this.rows = _.times(20, id => {
6957
- return {
6958
- id,
6959
- name: `Amazing ${id} row `,
6960
- };
6961
- });
6962
- this.columns = defaultColumns;
6963
- this.pageSizeOptions = [5, 10, 20];
6964
- this.expansionChange = new EventEmitter();
6965
- this.addingItem = new EventEmitter();
6966
- this.expandable = false;
6967
- this.showPaginator = true;
6968
- this.isLoading = false;
6969
- this.totalElements = 100;
6970
- this.sub = new Subscription();
6971
- }
6972
- //#endregion
6973
- get entity() {
6974
- return this.entityCrudController?.entityClassResolveFn();
6975
- }
6976
- //#region hooks
6977
- //#region hooks / on init
6978
- async ngOnInit() {
6979
- if (!this.hideSearch) {
6980
- this.searchInputChange$ = defer(() => fromEvent(this.search?.nativeElement, 'keyup')).pipe(map(c => c.target['value']), debounceTime(500), distinctUntilChanged(), share(), tap(data => {
6981
- console.log({ data });
6982
- }));
6983
- this.sub.add(this.searchInputChange$.subscribe());
6984
- }
6985
- const entityClass = this.entity;
6986
- if (!!entityClass) {
6987
- this.rows = [];
6988
- }
6989
- this.expandable = !!this.expansionTemplate;
6990
- // this.arrayDataConfig.set.pagination.rowDisplayed(5);
6991
- log.i('this.columns,', this.columns);
6992
- const columnsConfigSameAsDefault = _.isEqual(this.columns, defaultColumns);
6993
- // console.log({
6994
- // columnsConfigSameAsDefault
6995
- // })
6996
- if (entityClass && columnsConfigSameAsDefault) {
6997
- log.i('this.crud.entity', CLASS.describeProperites(entityClass));
6998
- try {
6999
- const props = CLASS.describeProperites(entityClass);
7000
- let columns = props
7001
- .filter(prop => this.allowedColumns.length > 0
7002
- ? this.allowedColumns.includes(prop)
7003
- : true)
7004
- .map(prop => {
7005
- return {
7006
- header: _.upperCase(prop),
7007
- field: prop,
7008
- };
7009
- });
7010
- const extra = this.allowedColumns.filter(f => !props.includes(f));
7011
- columns = [
7012
- ...columns,
7013
- ...extra.map(prop => {
7014
- return {
7015
- header: _.upperCase(prop),
7016
- field: prop,
7017
- };
7018
- }),
7019
- ];
7020
- // console.log({
7021
- // extra
7022
- // });
7023
- if (!this.expandable) {
7024
- for (let index = 0; index < columns.length; index++) {
7025
- const col = columns[index];
7026
- delete col.showExpand;
7027
- }
7028
- }
7029
- this.columns = columns;
7030
- }
7031
- catch (error) {
7032
- console.error(error);
7033
- }
7034
- }
7035
- else {
7036
- }
7037
- if (!this.entity) {
7038
- this.showPaginator = false;
7039
- }
7040
- await this.getData();
7041
- }
7042
- //#endregion
7043
- //#region hooks / on destroy
7044
- ngOnDestroy() {
7045
- this.sub.unsubscribe();
7046
- }
7047
- //#endregion
7048
- //#endregion
7049
- //#region methods
7050
- //#region methods / get next page
7051
- async getNextPage(e) {
7052
- // console.log({
7053
- // e
7054
- // });
7055
- this.pageNumber = e.pageIndex + 1;
7056
- this.pageSize = e.pageSize;
7057
- await this.getData();
7058
- }
7059
- //#endregion
7060
- //#region methods / retrive data
7061
- async getData() {
7062
- if (!this.entity) {
7063
- return;
7064
- }
7065
- this.isLoading = true;
7066
- // console.log('PAGINTION FETCH DATA START!')
7067
- const controller = this.entityCrudController;
7068
- if (controller) {
7069
- const data = await controller.pagination(this.pageNumber, this.pageSize)
7070
- .received;
7071
- // console.log('PAGINTION DATA', {
7072
- // data,
7073
- // });
7074
- const totalElements = Number(data.headers.get(Taon.symbols.old.X_TOTAL_COUNT));
7075
- const rows = data.body.json;
7076
- // console.log('PAGINTION DATA', {
7077
- // rows,
7078
- // totalElements,
7079
- // });
7080
- this.totalElements = totalElements;
7081
- this.rows = rows.map(d => {
7082
- for (const key in d) {
7083
- if (Object.prototype.hasOwnProperty.call(d, key)) {
7084
- const elem = d[key];
7085
- if (_.isObject(elem)) {
7086
- d[key] = json5.stringify(d[key]);
7087
- }
7088
- }
7089
- }
7090
- // console.log({ d })
7091
- return d;
7092
- });
7093
- }
7094
- this.isLoading = false;
7095
- }
7096
- //#endregion
7097
- //#region methods / expansion row
7098
- expansionRow(e) {
7099
- this.expansionChange.next(e);
7100
- }
7101
- //#endregion
7102
- //#region methods / on table context menu
7103
- onTableContextMenu(e) {
7104
- // if (this.rowHref) {
7105
- // this.router.navigateByUrl(this.rowHref)
7106
- // }
7107
- log.i('context menu event', e);
7108
- }
7109
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7110
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.7", type: TaonTableComponent, isStandalone: false, selector: "taon-table", inputs: { pageNumber: "pageNumber", pageSize: "pageSize", allowedColumns: "allowedColumns", expansionTemplate: "expansionTemplate", rows: "rows", entityCrudController: "entityCrudController", columns: "columns", pageSizeOptions: "pageSizeOptions", hideSearch: "hideSearch" }, outputs: { expansionChange: "expansionChange", addingItem: "addingItem" }, viewQueries: [{ propertyName: "search", first: true, predicate: ["search"], descendants: true, static: true }], ngImport: i0, template: "<br />\n<columns-container *ngIf=\"!hideSearch\">\n <column grow>\n <mat-form-field class=\"search-input\">\n <input\n matInput\n placeholder=\"Type to search table...\"\n #search />\n </mat-form-field>\n </column>\n <column [width]=\"80\">\n <button\n mat-fab\n [ngClass]=\"{ 'half-opacity': !search.value }\"\n class=\"undo-button\"\n color=\"secondary\"\n (click)=\"search.value = ''\">\n <mat-icon>close </mat-icon>\n </button>\n </column>\n\n <column [width]=\"80\">\n <button\n mat-fab\n (click)=\"addingItem.next()\"\n class=\"undo-button\"\n color=\"primary\">\n <mat-icon>add</mat-icon>\n </button>\n </column>\n</columns-container>\n\n<mtx-grid\n *ngIf=\"rows && columns\"\n [data]=\"rows\"\n [columns]=\"columns\"\n [expandable]=\"expandable\"\n [expansionTemplate]=\"expansionTemplate\"\n (expansionChange)=\"expansionRow($event)\"\n [length]=\"totalElements\"\n [loading]=\"isLoading\"\n [pageOnFront]=\"false\"\n [pageIndex]=\"pageNumber - 1\"\n [pageSize]=\"pageSize\"\n [pageSizeOptions]=\"pageSizeOptions\"\n [showPaginator]=\"showPaginator\"\n (page)=\"getNextPage($event)\">\n</mtx-grid>", styles: [":host{min-height:250px}.search-input{width:100%}.undo-button{margin-left:10px}.half-opacity{opacity:.2}\n"], dependencies: [{ kind: "directive", type: i2$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "component", type: i3.MtxGrid, selector: "mtx-grid", inputs: ["displayedColumns", "columns", "data", "length", "loading", "trackBy", "columnResizable", "emptyValuePlaceholder", "pageOnFront", "showPaginator", "pageDisabled", "showFirstLastButtons", "pageIndex", "pageSize", "pageSizeOptions", "hidePageSize", "paginationTemplate", "sortOnFront", "sortActive", "sortDirection", "sortDisableClear", "sortDisabled", "sortStart", "rowHover", "rowStriped", "expandable", "expansionTemplate", "multiSelectable", "multiSelectionWithClick", "rowSelectable", "hideRowSelectionCheckbox", "disableRowClickSelection", "rowSelectionFormatter", "rowClassFormatter", "rowSelected", "cellSelectable", "showToolbar", "toolbarTitle", "toolbarTemplate", "columnHideable", "columnHideableChecked", "columnSortable", "columnPinnable", "columnPinOptions", "showColumnMenuButton", "columnMenuButtonText", "columnMenuButtonType", "columnMenuButtonColor", "columnMenuButtonClass", "columnMenuButtonIcon", "columnMenuButtonFontIcon", "columnMenuButtonSvgIcon", "showColumnMenuHeader", "columnMenuHeaderText", "columnMenuHeaderTemplate", "showColumnMenuFooter", "columnMenuFooterText", "columnMenuFooterTemplate", "noResultText", "noResultTemplate", "headerTemplate", "headerExtraTemplate", "cellTemplate", "useContentRowTemplate", "useContentHeaderRowTemplate", "useContentFooterRowTemplate", "showSummary", "summaryTemplate", "showSidebar", "sidebarTemplate", "showStatusbar", "statusbarTemplate"], outputs: ["page", "sortChange", "rowClick", "rowContextMenu", "expansionChange", "rowSelectedChange", "cellSelectedChange", "columnChange"], exportAs: ["mtxGrid"] }, { kind: "directive", type: i2$2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: i1$2.ColumnsComponent, selector: "columns-container" }, { kind: "component", type: i1$2.ColumnComponent, selector: "column", inputs: ["width"] }, { kind: "directive", type: i1$2.DirectiveGrow, selector: "[grow]" }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i6.MatFabButton, selector: "button[mat-fab]", inputs: ["extended"], exportAs: ["matButton"] }] }); }
7111
- }
7112
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonTableComponent, decorators: [{
7113
- type: Component,
7114
- args: [{ selector: 'taon-table', standalone: false, template: "<br />\n<columns-container *ngIf=\"!hideSearch\">\n <column grow>\n <mat-form-field class=\"search-input\">\n <input\n matInput\n placeholder=\"Type to search table...\"\n #search />\n </mat-form-field>\n </column>\n <column [width]=\"80\">\n <button\n mat-fab\n [ngClass]=\"{ 'half-opacity': !search.value }\"\n class=\"undo-button\"\n color=\"secondary\"\n (click)=\"search.value = ''\">\n <mat-icon>close </mat-icon>\n </button>\n </column>\n\n <column [width]=\"80\">\n <button\n mat-fab\n (click)=\"addingItem.next()\"\n class=\"undo-button\"\n color=\"primary\">\n <mat-icon>add</mat-icon>\n </button>\n </column>\n</columns-container>\n\n<mtx-grid\n *ngIf=\"rows && columns\"\n [data]=\"rows\"\n [columns]=\"columns\"\n [expandable]=\"expandable\"\n [expansionTemplate]=\"expansionTemplate\"\n (expansionChange)=\"expansionRow($event)\"\n [length]=\"totalElements\"\n [loading]=\"isLoading\"\n [pageOnFront]=\"false\"\n [pageIndex]=\"pageNumber - 1\"\n [pageSize]=\"pageSize\"\n [pageSizeOptions]=\"pageSizeOptions\"\n [showPaginator]=\"showPaginator\"\n (page)=\"getNextPage($event)\">\n</mtx-grid>", styles: [":host{min-height:250px}.search-input{width:100%}.undo-button{margin-left:10px}.half-opacity{opacity:.2}\n"] }]
7115
- }], propDecorators: { pageNumber: [{
7116
- type: Input
7117
- }], pageSize: [{
7118
- type: Input
7119
- }], allowedColumns: [{
7120
- type: Input
7121
- }], expansionTemplate: [{
7122
- type: Input
7123
- }], rows: [{
7124
- type: Input
7125
- }], entityCrudController: [{
7126
- type: Input
7127
- }], columns: [{
7128
- type: Input
7129
- }], pageSizeOptions: [{
7130
- type: Input
7131
- }], hideSearch: [{
7132
- type: Input
7133
- }], expansionChange: [{
7134
- type: Output
7135
- }], addingItem: [{
7136
- type: Output
7137
- }], search: [{
7138
- type: ViewChild,
7139
- args: ['search', { static: true }]
7140
- }] } });
7141
-
7142
- class TaonTableModule {
7143
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7144
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.7", ngImport: i0, type: TaonTableModule, declarations: [TaonTableComponent], imports: [CommonModule,
7145
- MatSelectModule,
7146
- MtxGridModule,
7147
- MatFormFieldModule,
7148
- MatInputModule,
7149
- StaticColumnsModule,
7150
- MatIconModule,
7151
- MatButtonModule,
7152
- FormsModule,
7153
- ReactiveFormsModule], exports: [TaonTableComponent] }); }
7154
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonTableModule, imports: [CommonModule,
7155
- MatSelectModule,
7156
- MtxGridModule,
7157
- MatFormFieldModule,
7158
- MatInputModule,
7159
- StaticColumnsModule,
7160
- MatIconModule,
7161
- MatButtonModule,
7162
- FormsModule,
7163
- ReactiveFormsModule] }); }
7164
- }
7165
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonTableModule, decorators: [{
7166
- type: NgModule,
7167
- args: [{
7168
- imports: [
7169
- CommonModule,
7170
- MatSelectModule,
7171
- MtxGridModule,
7172
- MatFormFieldModule,
7173
- MatInputModule,
7174
- StaticColumnsModule,
7175
- MatIconModule,
7176
- MatButtonModule,
7177
- FormsModule,
7178
- ReactiveFormsModule,
7179
- ],
7180
- exports: [TaonTableComponent],
7181
- declarations: [TaonTableComponent],
7182
- }]
7183
- }] });
7184
-
7185
- //#region @browser
7186
- //#endregion
7187
-
7188
- class TaonAdminModeConfigurationComponent {
7189
- get opened() {
7190
- return !this.isIframe && this.taonAdminService.adminPanelIsOpen;
7191
- }
7192
- set opened(v) {
7193
- if (v && !this.openedOnce) {
7194
- this.openedOnce = true;
7195
- }
7196
- if (this.wasOpenDraggablePopup) {
7197
- this.wasOpenDraggablePopup = false;
7198
- this.taonAdminService.draggablePopupMode = true;
7199
- }
7200
- this.taonAdminService.adminPanelIsOpen = v;
7201
- }
7202
- //#endregion
7203
- //#region constructor
7204
- constructor(breakpointsService) {
7205
- this.breakpointsService = breakpointsService;
7206
- //#region fields & getters
7207
- this.$destroy = new Subject();
7208
- this.cdr = inject$1(ChangeDetectorRef);
7209
- this.taonAdminService = TaonAdminService.Instance;
7210
- this.isWebSQLMode = Helpers.isWebSQL;
7211
- this.hideTaonToolsInProduction = ENV.hideTaonToolsInProduction && ENV.angularProd;
7212
- this.isIframe = window.location !== window.parent.location;
7213
- this.height = 100;
7214
- this.openedOnce = false;
7215
- this.reloading = false;
7216
- this.showPasscode = _.isString(ENV.passcode) || _.isObject(ENV.passcode);
7217
- this.passcode = _.isString(ENV.passcode)
7218
- ? ENV.passcode
7219
- : _.isObject(ENV.passcode)
7220
- ? ENV.passcode.code
7221
- : '';
7222
- this.message = _.isObject(ENV.passcode)
7223
- ? ENV.passcode.message
7224
- : void 0;
7225
- this.dragPositionZero = { x: 0, y: 0 };
7226
- this.taonAdminModeConfigurationDataChanged = new EventEmitter();
7227
- this.taonAdminModeConfigurationData = {};
7228
- this.breakpointsService
7229
- .listenTo()
7230
- .pipe(takeUntil(this.$destroy))
7231
- .subscribe(breakpoint => {
7232
- // @ts-ignore
7233
- this.isDesktop = breakpoint === 'desktop';
7234
- });
7235
- }
7236
- //#endregion
7237
- //#region hooks
7238
- async ngOnInit() {
7239
- await Stor.awaitPendingOperatios();
7240
- // console.log('PENDING OPERATION AWAITED ', this.selectedIndex)
7241
- // console.log('draggablePopupModeFullScreen ', this.taonAdminService.draggablePopupModeFullScreen)
7242
- this.dragPosition = { x: this.dragPositionX, y: this.dragPositionY };
7243
- this.openedOnce = this.opened;
7244
- // console.log('ONINIT',{
7245
- // 'this.openedOnce': this.openedOnce,
7246
- // 'this.dragPosition': this.dragPosition,
7247
- // this: this
7248
- // })
7249
- }
7250
- ngAfterViewInit() {
7251
- //Called after ngAfterContentInit when the component's view has been initialized. Applies to components only.
7252
- //Add 'implements AfterViewInit' to the class.
7253
- setTimeout(() => {
7254
- this.height = window.innerHeight;
7255
- // TODO QUICK_FIX for draggble popup proper first index load on tabs
7256
- if (this.taonAdminService.draggablePopupMode) {
7257
- this.reloadTabs();
7258
- }
7259
- // const tablist = (this.tabGroup?._tabHeader?._elementRef?.nativeElement as HTMLElement).querySelector('.mat-tab-list') as HTMLElement;
7260
- // if (tablist) {
7261
- // tablist.style.transform = 'translateX(0px)'; // TODO QUICK_FIX
7262
- // }
7263
- });
7264
- }
7265
- ngOnDestroy() {
7266
- this.$destroy.next(void 0);
7267
- this.$destroy.complete();
7268
- }
7269
- onResize(event) {
7270
- this.height = window.innerHeight;
7271
- }
7272
- //#endregion
7273
- //#region methods
7274
- async reloadTabs() {
7275
- return new Promise(resolve => {
7276
- this.reloading = true;
7277
- setTimeout(() => {
7278
- this.reloading = false;
7279
- console.log('reloading done');
7280
- resolve();
7281
- });
7282
- });
7283
- }
7284
- async toogle() {
7285
- // await stor.setItem(IS_OPEN_ADMIN, !this.opened);
7286
- this.opened = !this.opened;
7287
- }
7288
- async toogleFullScreen() {
7289
- this.taonAdminService.draggablePopupMode = true;
7290
- this.taonAdminService.draggablePopupModeFullScreen =
7291
- !this.taonAdminService.draggablePopupModeFullScreen;
7292
- this.resetDrag();
7293
- }
7294
- resetDrag() {
7295
- this.dragPositionX = 0;
7296
- this.dragPositionY = 0;
7297
- this.dragPosition = { x: this.dragPositionX, y: this.dragPositionY };
7298
- }
7299
- moved(c) {
7300
- this.dragPositionX += c.distance.x;
7301
- this.dragPositionY += c.distance.y;
7302
- }
7303
- scrollTabs(event) {
7304
- return;
7305
- // event?.stopPropagation();
7306
- // event?.stopImmediatePropagation(); // TODO not working
7307
- // const children = this.tabGroup._tabHeader._elementRef.nativeElement.children;
7308
- // const back = children[0];
7309
- // const forward = children[2];
7310
- // if (event.deltaY > 0) {
7311
- // forward.click();
7312
- // } else {
7313
- // back.click();
7314
- // }
7315
- }
7316
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonAdminModeConfigurationComponent, deps: [{ token: i1$2.BreakpointsService }], target: i0.ɵɵFactoryTarget.Component }); }
7317
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.7", type: TaonAdminModeConfigurationComponent, isStandalone: true, selector: "taon-admin-mode-configuration", inputs: { taonAdminModeConfigurationData: "taonAdminModeConfigurationData" }, outputs: { taonAdminModeConfigurationDataChanged: "taonAdminModeConfigurationDataChanged" }, host: { listeners: { "window:resize": "onResize($event)" } }, viewQueries: [{ propertyName: "tabGroup", first: true, predicate: ["tabGroup"], descendants: true }], ngImport: i0, template: "<!-- #region basic global components -->\n<taon-session-passcode\n *ngIf=\"showPasscode\"\n [passcode]=\"passcode\"\n [message]=\"message\" />\n<!-- <taon-progress-bar [isDesktop]=\"isDesktop\"></taon-progress-bar> -->\n<!-- <taon-notifications></taon-notifications> -->\n<button\n mat-fab\n class=\"fab-button\"\n color=\"accent\"\n aria-label=\"Taon Admin Mode\"\n *ngIf=\"\n !taonAdminService.draggablePopupMode &&\n isDesktop &&\n !isIframe &&\n !hideTaonToolsInProduction\n \"\n (click)=\"toogle()\">\n <mat-icon>build</mat-icon>\n</button>\n<!-- #endregion -->\n\n<!-- #region small hidden button -->\n<!-- <button class=\"admin-show-button\"\n *ngIf=\"!taonAdminService.draggablePopupMode && isDesktop\"\n (click)=\"toogle()\"> Admin </button> -->\n<!-- #endregion -->\n\n<ng-template #contentNoScroll>\n <ng-content> </ng-content>\n</ng-template>\n\n<ng-template #content>\n <ng-scrollbar>\n <ng-container [ngTemplateOutlet]=\"contentNoScroll\"></ng-container>\n </ng-scrollbar>\n</ng-template>\n\n<!-- #region admin tabs -->\n<ng-template #adminTabs>\n <!-- #region admin tabs / header -->\n <div class=\"taon-header-admin-wrapper\">\n <columns-container\n class=\"taon-header-admin\"\n [ngClass]=\"{ 'draggable-column': taonAdminService.draggablePopupMode }\">\n <column\n width=\"200\"\n class=\"logo-header\">\n <img\n *ngIf=\"openedOnce\"\n src=\"assets/assets-for/taon/assets/shared/logo-header-admin-mode.png\" />\n </column>\n\n <column grow>\n <!-- <span>Super Admin Mode</span> -->\n </column>\n\n <column\n width=\"40\"\n *ngIf=\"\n !taonAdminService.draggablePopupModeFullScreen &&\n !taonAdminService.draggablePopupMode\n \">\n <button\n mat-icon-button\n *ngIf=\"taonAdminService.draggablePopupMode\"\n (click)=\"\n taonAdminService.draggablePopupMode = false;\n opened = false;\n wasOpenDraggablePopup = true\n \"\n class=\"admin-close-button\">\n <mat-icon>close </mat-icon>\n </button>\n\n <button\n mat-icon-button\n *ngIf=\"!taonAdminService.draggablePopupMode\"\n (click)=\"toogle()\"\n class=\"admin-close-button\">\n <mat-icon>close</mat-icon>\n </button>\n </column>\n\n <column width=\"40\">\n <button\n mat-icon-button\n *ngIf=\"!taonAdminService.draggablePopupModeFullScreen\"\n class=\"admin-close-button\"\n (click)=\"toogleFullScreen()\">\n <mat-icon>fullscreen</mat-icon>\n </button>\n <button\n mat-icon-button\n *ngIf=\"taonAdminService.draggablePopupModeFullScreen\"\n class=\"admin-close-button\"\n (click)=\"toogleFullScreen()\">\n <mat-icon>close_fullscreen</mat-icon>\n </button>\n </column>\n\n <column\n width=\"40\"\n *ngIf=\"!taonAdminService.draggablePopupModeFullScreen\">\n <button\n mat-icon-button\n *ngIf=\"!taonAdminService.draggablePopupMode\"\n (click)=\"taonAdminService.draggablePopupMode = true\"\n class=\"admin-close-button\">\n <mat-icon>launch</mat-icon>\n </button>\n\n <button\n mat-icon-button\n *ngIf=\"taonAdminService.draggablePopupMode\"\n (click)=\"taonAdminService.draggablePopupMode = false; resetDrag()\"\n class=\"admin-close-button\">\n <mat-icon style=\"transform: rotate(180deg)\">login</mat-icon>\n </button>\n </column>\n </columns-container>\n </div>\n <!-- #endregion -->\n\n <columns-container\n [ngClass]=\"{ 'draggable-column': taonAdminService.draggablePopupMode }\">\n <column grow>\n <mat-tab-group\n dynamicHeight\n (wheel)=\"scrollTabs($event)\"\n #tabGroup\n [selectedIndex]=\"selectedIndex\"\n (selectedIndexChange)=\"selectedIndex = $event\">\n <mat-tab label=\"DB/Cache\">\n <section>\n <mat-card>\n <mat-card-header>\n <mat-card-subtitle>WEBSQL MODE</mat-card-subtitle>\n </mat-card-header>\n <mat-card-content>\n <mat-checkbox\n [disabled]=\"!isWebSQLMode\"\n [ngModel]=\"taonAdminService.keepWebsqlDbDataAfterReload\"\n (change)=\"\n taonAdminService.setKeepWebsqlDbDataAfterReload(\n $event.checked\n )\n \">\n Don't remove data when reloading\n </mat-checkbox>\n </mat-card-content>\n </mat-card>\n </section>\n <br />\n <taon-db-admin />\n </mat-tab>\n </mat-tab-group>\n </column>\n </columns-container>\n</ng-template>\n<!-- #endregion -->\n\n<!-- #region small/mobile draggable popup windows -->\n<div\n class=\"draggable-popup-mode-window\"\n *ngIf=\"\n taonAdminService.draggablePopupMode &&\n !taonAdminService.draggablePopupModeFullScreen &&\n !isIframe\n \"\n cdkDrag\n [cdkDragFreeDragPosition]=\"dragPosition\"\n (cdkDragEnded)=\"moved($event)\">\n <ng-scrollbar>\n <ng-container [ngTemplateOutlet]=\"adminTabs\"></ng-container>\n </ng-scrollbar>\n</div>\n<!-- #endregion -->\n\n<!-- #region fullscreen draggable popup window -->\n<div\n class=\"draggable-popup-mode-window-full\"\n *ngIf=\"\n taonAdminService.draggablePopupMode &&\n taonAdminService.draggablePopupModeFullScreen &&\n !isIframe &&\n !reloading\n \"\n cdkDrag\n [cdkDragFreeDragPosition]=\"dragPositionZero\">\n <ng-container [ngTemplateOutlet]=\"adminTabs\"></ng-container>\n</div>\n<!-- #endregion -->\n\n<!-- #region content when not in draggable (or fullscreen draggable) popup -->\n<div\n [style.height.px]=\"height\"\n *ngIf=\"\n (isIframe ||\n !isDesktop ||\n taonAdminService.draggablePopupMode ||\n taonAdminService.draggablePopupModeFullScreen) &&\n !reloading\n \"\n style=\"width: 100%; display: block\"\n class=\"content\">\n <ng-container\n [ngTemplateOutlet]=\"\n taonAdminService.scrollableEnabled ? content : contentNoScroll\n \"></ng-container>\n</div>\n<!-- #endregion -->\n\n<!-- #region draggable popup window -->\n<mat-drawer-container\n *ngIf=\"!taonAdminService.draggablePopupMode && isDesktop && !isIframe\"\n class=\"example-container\"\n [style.height.px]=\"height\"\n style=\"background-color: transparent\"\n (backdropClick)=\"opened = false\"\n [hasBackdrop]=\"false\">\n <mat-drawer\n #drawer\n style=\"width: 580px\"\n [opened]=\"opened\"\n [mode]=\"'side'\">\n <ng-container [ngTemplateOutlet]=\"adminTabs\"></ng-container>\n </mat-drawer>\n <mat-drawer-content style=\"overflow: hidden\">\n <ng-container\n *ngIf=\"!taonAdminService.draggablePopupMode && !reloading\"\n [ngTemplateOutlet]=\"\n taonAdminService.scrollableEnabled ? content : contentNoScroll\n \"></ng-container>\n </mat-drawer-content>\n</mat-drawer-container>\n<!-- #endregion -->", styles: ["section{display:block;padding:10px}section>*{margin-top:0!important;margin-bottom:10px!important}section>*:last-child{margin-bottom:0!important}:host{display:block}.draggable-column{display:block!important;width:100%!important}.admin-show-button{position:fixed;bottom:100px;left:-15px;z-index:2147483647;transform:rotate(90deg);border:0px;color:#fff;background:gray;opacity:.1;cursor:pointer}.admin-show-button:hover{opacity:1}.taon-ui-super-admin-mode{font-family:JosefinSans-Bold;text-align:right;margin-right:10px}mat-drawer{margin:0;background-color:#dcdcdc!important}.taon-header-admin-wrapper{overflow:hidden;width:100%;display:block}.taon-header-admin{background:#fff;box-shadow:0 -9px 6px 6px #000;height:47px}.taon-header-admin .logo-header img{height:18px;padding:8px;position:relative;float:left;top:7px;box-sizing:content-box;transform:scale(1.5);left:49px}.draggable-popup-mode-window{width:600px;height:500px;border:solid 1px #ccc;color:#000000de;cursor:move;justify-content:center;align-items:center;background:#fff;border-radius:4px;position:fixed;z-index:105;background-color:#dcdcdc!important;transition:box-shadow .2s cubic-bezier(0,0,.2,1);box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.draggable-popup-mode-window:active{box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.draggable-popup-mode-window-full{width:100%;height:100%;overflow:scroll;color:#000000de;justify-content:center;align-items:center;background:#fff;border-radius:4px;position:fixed;z-index:105;background-color:#dcdcdc!important}.admin-close-button{float:right}.fab-button{position:fixed;right:110px;bottom:100px;z-index:10;background-color:#dcdcdc;color:#8f8f8f}.full-tabs{padding:10px}.mat-drawer-container-full-screen{background-color:red}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: StaticColumnsModule }, { kind: "component", type: i1$2.ColumnsComponent, selector: "columns-container" }, { kind: "component", type: i1$2.ColumnComponent, selector: "column", inputs: ["width"] }, { kind: "directive", type: i1$2.DirectiveGrow, selector: "[grow]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: NgScrollbarModule }, { kind: "component", type: i4.NgScrollbar, selector: "ng-scrollbar:not([externalViewport])", exportAs: ["ngScrollbar"] }, { kind: "ngmodule", type: TaonProgressBarModule }, { kind: "ngmodule", type: TaonNotificationsModule }, { kind: "ngmodule", type: TaonFullMaterialModule }, { kind: "directive", type: i5$1.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: i6.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i6.MatFabButton, selector: "button[mat-fab]", inputs: ["extended"], exportAs: ["matButton"] }, { kind: "component", type: i7.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i7.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i7.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i7.MatCardSubtitle, selector: "mat-card-subtitle, [mat-card-subtitle], [matCardSubtitle]" }, { kind: "component", type: i8.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i10.MatDrawer, selector: "mat-drawer", inputs: ["position", "mode", "disableClose", "autoFocus", "opened"], outputs: ["openedChange", "opened", "openedStart", "closed", "closedStart", "positionChanged"], exportAs: ["matDrawer"] }, { kind: "component", type: i10.MatDrawerContainer, selector: "mat-drawer-container", inputs: ["autosize", "hasBackdrop"], outputs: ["backdropClick"], exportAs: ["matDrawerContainer"] }, { kind: "component", type: i10.MatDrawerContent, selector: "mat-drawer-content" }, { kind: "component", type: i11.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby", "labelClass", "bodyClass", "id"], exportAs: ["matTab"] }, { kind: "component", type: i11.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "fitInkBarToContent", "mat-stretch-tabs", "mat-align-tabs", "dynamicHeight", "selectedIndex", "headerPosition", "animationDuration", "contentTabIndex", "disablePagination", "disableRipple", "preserveContent", "backgroundColor", "aria-label", "aria-labelledby"], outputs: ["selectedIndexChange", "focusChange", "animationDone", "selectedTabChange"], exportAs: ["matTabGroup"] }, { kind: "component", type: // TODO import only partial things
7318
- // TaonDbAdminComponent,
7319
- TaonSessionPasscodeComponent, selector: "taon-session-passcode", inputs: ["passcode", "message"] }] }); }
7320
- }
7321
- __decorate([
7322
- (Stor.property.in.localstorage
7323
- .for(TaonAdminModeConfigurationComponent)
7324
- .withDefaultValue(0)),
7325
- __metadata("design:type", Number)
7326
- ], TaonAdminModeConfigurationComponent.prototype, "dragPositionX", void 0);
7327
- __decorate([
7328
- (Stor.property.in.localstorage
7329
- .for(TaonAdminModeConfigurationComponent)
7330
- .withDefaultValue(0)),
7331
- __metadata("design:type", Number)
7332
- ], TaonAdminModeConfigurationComponent.prototype, "dragPositionY", void 0);
7333
- __decorate([
7334
- (Stor.property.in.localstorage
7335
- .for(TaonAdminModeConfigurationComponent)
7336
- .withDefaultValue(0)),
7337
- __metadata("design:type", Number)
7338
- ], TaonAdminModeConfigurationComponent.prototype, "selectedIndex", void 0);
7339
- __decorate([
7340
- (Stor.property.in.localstorage
7341
- .for(TaonAdminModeConfigurationComponent)
7342
- .withDefaultValue(false)),
7343
- __metadata("design:type", Boolean)
7344
- ], TaonAdminModeConfigurationComponent.prototype, "wasOpenDraggablePopup", void 0);
7345
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: TaonAdminModeConfigurationComponent, decorators: [{
7346
- type: Component,
7347
- args: [{ selector: 'taon-admin-mode-configuration', standalone: true, imports: [
7348
- CommonModule,
7349
- StaticColumnsModule,
7350
- FormsModule,
7351
- NgScrollbarModule,
7352
- TaonProgressBarModule,
7353
- TaonNotificationsModule,
7354
- TaonFullMaterialModule, // TODO import only partial things
7355
- // TaonDbAdminComponent,
7356
- TaonSessionPasscodeComponent,
7357
- ], template: "<!-- #region basic global components -->\n<taon-session-passcode\n *ngIf=\"showPasscode\"\n [passcode]=\"passcode\"\n [message]=\"message\" />\n<!-- <taon-progress-bar [isDesktop]=\"isDesktop\"></taon-progress-bar> -->\n<!-- <taon-notifications></taon-notifications> -->\n<button\n mat-fab\n class=\"fab-button\"\n color=\"accent\"\n aria-label=\"Taon Admin Mode\"\n *ngIf=\"\n !taonAdminService.draggablePopupMode &&\n isDesktop &&\n !isIframe &&\n !hideTaonToolsInProduction\n \"\n (click)=\"toogle()\">\n <mat-icon>build</mat-icon>\n</button>\n<!-- #endregion -->\n\n<!-- #region small hidden button -->\n<!-- <button class=\"admin-show-button\"\n *ngIf=\"!taonAdminService.draggablePopupMode && isDesktop\"\n (click)=\"toogle()\"> Admin </button> -->\n<!-- #endregion -->\n\n<ng-template #contentNoScroll>\n <ng-content> </ng-content>\n</ng-template>\n\n<ng-template #content>\n <ng-scrollbar>\n <ng-container [ngTemplateOutlet]=\"contentNoScroll\"></ng-container>\n </ng-scrollbar>\n</ng-template>\n\n<!-- #region admin tabs -->\n<ng-template #adminTabs>\n <!-- #region admin tabs / header -->\n <div class=\"taon-header-admin-wrapper\">\n <columns-container\n class=\"taon-header-admin\"\n [ngClass]=\"{ 'draggable-column': taonAdminService.draggablePopupMode }\">\n <column\n width=\"200\"\n class=\"logo-header\">\n <img\n *ngIf=\"openedOnce\"\n src=\"assets/assets-for/taon/assets/shared/logo-header-admin-mode.png\" />\n </column>\n\n <column grow>\n <!-- <span>Super Admin Mode</span> -->\n </column>\n\n <column\n width=\"40\"\n *ngIf=\"\n !taonAdminService.draggablePopupModeFullScreen &&\n !taonAdminService.draggablePopupMode\n \">\n <button\n mat-icon-button\n *ngIf=\"taonAdminService.draggablePopupMode\"\n (click)=\"\n taonAdminService.draggablePopupMode = false;\n opened = false;\n wasOpenDraggablePopup = true\n \"\n class=\"admin-close-button\">\n <mat-icon>close </mat-icon>\n </button>\n\n <button\n mat-icon-button\n *ngIf=\"!taonAdminService.draggablePopupMode\"\n (click)=\"toogle()\"\n class=\"admin-close-button\">\n <mat-icon>close</mat-icon>\n </button>\n </column>\n\n <column width=\"40\">\n <button\n mat-icon-button\n *ngIf=\"!taonAdminService.draggablePopupModeFullScreen\"\n class=\"admin-close-button\"\n (click)=\"toogleFullScreen()\">\n <mat-icon>fullscreen</mat-icon>\n </button>\n <button\n mat-icon-button\n *ngIf=\"taonAdminService.draggablePopupModeFullScreen\"\n class=\"admin-close-button\"\n (click)=\"toogleFullScreen()\">\n <mat-icon>close_fullscreen</mat-icon>\n </button>\n </column>\n\n <column\n width=\"40\"\n *ngIf=\"!taonAdminService.draggablePopupModeFullScreen\">\n <button\n mat-icon-button\n *ngIf=\"!taonAdminService.draggablePopupMode\"\n (click)=\"taonAdminService.draggablePopupMode = true\"\n class=\"admin-close-button\">\n <mat-icon>launch</mat-icon>\n </button>\n\n <button\n mat-icon-button\n *ngIf=\"taonAdminService.draggablePopupMode\"\n (click)=\"taonAdminService.draggablePopupMode = false; resetDrag()\"\n class=\"admin-close-button\">\n <mat-icon style=\"transform: rotate(180deg)\">login</mat-icon>\n </button>\n </column>\n </columns-container>\n </div>\n <!-- #endregion -->\n\n <columns-container\n [ngClass]=\"{ 'draggable-column': taonAdminService.draggablePopupMode }\">\n <column grow>\n <mat-tab-group\n dynamicHeight\n (wheel)=\"scrollTabs($event)\"\n #tabGroup\n [selectedIndex]=\"selectedIndex\"\n (selectedIndexChange)=\"selectedIndex = $event\">\n <mat-tab label=\"DB/Cache\">\n <section>\n <mat-card>\n <mat-card-header>\n <mat-card-subtitle>WEBSQL MODE</mat-card-subtitle>\n </mat-card-header>\n <mat-card-content>\n <mat-checkbox\n [disabled]=\"!isWebSQLMode\"\n [ngModel]=\"taonAdminService.keepWebsqlDbDataAfterReload\"\n (change)=\"\n taonAdminService.setKeepWebsqlDbDataAfterReload(\n $event.checked\n )\n \">\n Don't remove data when reloading\n </mat-checkbox>\n </mat-card-content>\n </mat-card>\n </section>\n <br />\n <taon-db-admin />\n </mat-tab>\n </mat-tab-group>\n </column>\n </columns-container>\n</ng-template>\n<!-- #endregion -->\n\n<!-- #region small/mobile draggable popup windows -->\n<div\n class=\"draggable-popup-mode-window\"\n *ngIf=\"\n taonAdminService.draggablePopupMode &&\n !taonAdminService.draggablePopupModeFullScreen &&\n !isIframe\n \"\n cdkDrag\n [cdkDragFreeDragPosition]=\"dragPosition\"\n (cdkDragEnded)=\"moved($event)\">\n <ng-scrollbar>\n <ng-container [ngTemplateOutlet]=\"adminTabs\"></ng-container>\n </ng-scrollbar>\n</div>\n<!-- #endregion -->\n\n<!-- #region fullscreen draggable popup window -->\n<div\n class=\"draggable-popup-mode-window-full\"\n *ngIf=\"\n taonAdminService.draggablePopupMode &&\n taonAdminService.draggablePopupModeFullScreen &&\n !isIframe &&\n !reloading\n \"\n cdkDrag\n [cdkDragFreeDragPosition]=\"dragPositionZero\">\n <ng-container [ngTemplateOutlet]=\"adminTabs\"></ng-container>\n</div>\n<!-- #endregion -->\n\n<!-- #region content when not in draggable (or fullscreen draggable) popup -->\n<div\n [style.height.px]=\"height\"\n *ngIf=\"\n (isIframe ||\n !isDesktop ||\n taonAdminService.draggablePopupMode ||\n taonAdminService.draggablePopupModeFullScreen) &&\n !reloading\n \"\n style=\"width: 100%; display: block\"\n class=\"content\">\n <ng-container\n [ngTemplateOutlet]=\"\n taonAdminService.scrollableEnabled ? content : contentNoScroll\n \"></ng-container>\n</div>\n<!-- #endregion -->\n\n<!-- #region draggable popup window -->\n<mat-drawer-container\n *ngIf=\"!taonAdminService.draggablePopupMode && isDesktop && !isIframe\"\n class=\"example-container\"\n [style.height.px]=\"height\"\n style=\"background-color: transparent\"\n (backdropClick)=\"opened = false\"\n [hasBackdrop]=\"false\">\n <mat-drawer\n #drawer\n style=\"width: 580px\"\n [opened]=\"opened\"\n [mode]=\"'side'\">\n <ng-container [ngTemplateOutlet]=\"adminTabs\"></ng-container>\n </mat-drawer>\n <mat-drawer-content style=\"overflow: hidden\">\n <ng-container\n *ngIf=\"!taonAdminService.draggablePopupMode && !reloading\"\n [ngTemplateOutlet]=\"\n taonAdminService.scrollableEnabled ? content : contentNoScroll\n \"></ng-container>\n </mat-drawer-content>\n</mat-drawer-container>\n<!-- #endregion -->", styles: ["section{display:block;padding:10px}section>*{margin-top:0!important;margin-bottom:10px!important}section>*:last-child{margin-bottom:0!important}:host{display:block}.draggable-column{display:block!important;width:100%!important}.admin-show-button{position:fixed;bottom:100px;left:-15px;z-index:2147483647;transform:rotate(90deg);border:0px;color:#fff;background:gray;opacity:.1;cursor:pointer}.admin-show-button:hover{opacity:1}.taon-ui-super-admin-mode{font-family:JosefinSans-Bold;text-align:right;margin-right:10px}mat-drawer{margin:0;background-color:#dcdcdc!important}.taon-header-admin-wrapper{overflow:hidden;width:100%;display:block}.taon-header-admin{background:#fff;box-shadow:0 -9px 6px 6px #000;height:47px}.taon-header-admin .logo-header img{height:18px;padding:8px;position:relative;float:left;top:7px;box-sizing:content-box;transform:scale(1.5);left:49px}.draggable-popup-mode-window{width:600px;height:500px;border:solid 1px #ccc;color:#000000de;cursor:move;justify-content:center;align-items:center;background:#fff;border-radius:4px;position:fixed;z-index:105;background-color:#dcdcdc!important;transition:box-shadow .2s cubic-bezier(0,0,.2,1);box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.draggable-popup-mode-window:active{box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.draggable-popup-mode-window-full{width:100%;height:100%;overflow:scroll;color:#000000de;justify-content:center;align-items:center;background:#fff;border-radius:4px;position:fixed;z-index:105;background-color:#dcdcdc!important}.admin-close-button{float:right}.fab-button{position:fixed;right:110px;bottom:100px;z-index:10;background-color:#dcdcdc;color:#8f8f8f}.full-tabs{padding:10px}.mat-drawer-container-full-screen{background-color:red}\n"] }]
7358
- }], ctorParameters: () => [{ type: i1$2.BreakpointsService }], propDecorators: { tabGroup: [{
7359
- type: ViewChild,
7360
- args: ['tabGroup']
7361
- }], taonAdminModeConfigurationDataChanged: [{
7362
- type: Output
7363
- }], taonAdminModeConfigurationData: [{
7364
- type: Input
7365
- }], onResize: [{
7366
- type: HostListener,
7367
- args: ['window:resize', ['$event']]
7368
- }] } });
7369
-
7370
- //#region @browser
7371
- //#endregion
7372
-
7373
6190
  // TODO export all things
7374
6191
  var Taon;
7375
6192
  (function (Taon) {
@@ -7424,5 +6241,5 @@ var Taon;
7424
6241
  * Generated bundle index. Do not edit.
7425
6242
  */
7426
6243
 
7427
- export { BaseContext, BaseController, BaseCustomRepository, BaseEntity, BaseMigration, BaseProvider, BaseRepository, CURRENT_HOST_BACKEND_PORT, ClassHelpers, EndpointContext, Models, SafePipe, TAON_CONTEXT, Taon, TaonAdminModeConfigurationComponent, TaonAdminService, TaonEntityKeysToOmitArr, TaonFullMaterialModule, TaonGithubForkMeCornerComponent, TaonGithubForkMeCornerModule, TaonInjectHTMLDirective, TaonLongPress, TaonNotificationOptions, TaonNotificationsComponent, TaonNotificationsModule, TaonNotificationsService, TaonProgressBarComponent, TaonProgressBarModule, TaonSessionPasscodeComponent, TaonTableComponent, TaonTableModule, createContext, inject };
7428
- //# sourceMappingURL=taon.mjs.map
6244
+ export { BaseContext, BaseController, BaseCustomRepository, BaseEntity, BaseMigration, BaseProvider, BaseRepository, CURRENT_HOST_BACKEND_PORT, ClassHelpers, EndpointContext, Models, TAON_CONTEXT, Taon, TaonAdminService, TaonEntityKeysToOmitArr, createContext, inject };
6245
+ //# sourceMappingURL=taon.mjs.map