taon 19.0.9 → 19.0.10

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 (224) hide show
  1. package/README.md +175 -175
  2. package/bin/start.js +279 -279
  3. package/bin/taon +6 -6
  4. package/bin/taon-debug +5 -5
  5. package/bin/taon-debug-brk +5 -5
  6. package/browser/README.md +24 -24
  7. package/browser/fesm2022/taon.mjs +50 -27
  8. package/browser/fesm2022/taon.mjs.map +1 -1
  9. package/browser/lib/base-classes/base-angular-service.d.ts +1 -3
  10. package/browser/lib/base-classes/base-controller.d.ts +1 -0
  11. package/browser/lib/base-classes/base-crud-controller.d.ts +1 -1
  12. package/browser/lib/base-classes/base-injector.d.ts +1 -3
  13. package/browser/lib/base-classes/base-migration.d.ts +1 -1
  14. package/browser/lib/base-classes/base-provider.d.ts +5 -0
  15. package/browser/lib/constants.d.ts +6 -1
  16. package/browser/lib/endpoint-context.d.ts +2 -2
  17. package/browser/lib/ui/taon-full-material.module.d.ts +3 -0
  18. package/browser/package.json +1 -1
  19. package/cli.js.map +1 -1
  20. package/client/README.md +24 -24
  21. package/client/fesm2022/taon.mjs +50 -27
  22. package/client/fesm2022/taon.mjs.map +1 -1
  23. package/client/lib/base-classes/base-angular-service.d.ts +1 -3
  24. package/client/lib/base-classes/base-controller.d.ts +1 -0
  25. package/client/lib/base-classes/base-crud-controller.d.ts +1 -1
  26. package/client/lib/base-classes/base-injector.d.ts +1 -3
  27. package/client/lib/base-classes/base-migration.d.ts +1 -1
  28. package/client/lib/base-classes/base-provider.d.ts +5 -0
  29. package/client/lib/constants.d.ts +6 -1
  30. package/client/lib/endpoint-context.d.ts +2 -2
  31. package/client/lib/ui/taon-full-material.module.d.ts +3 -0
  32. package/client/package.json +1 -1
  33. package/env.d.ts +3 -0
  34. package/environments/angular-node-app/env.angular-node-app.__.d.ts +3 -0
  35. package/environments/angular-node-app/env.angular-node-app.dev.d.ts +3 -0
  36. package/environments/angular-node-app/env.angular-node-app.localhost.d.ts +3 -0
  37. package/environments/angular-node-app/env.angular-node-app.prod.d.ts +3 -0
  38. package/environments/angular-node-app/env.angular-node-app.stage.d.ts +3 -0
  39. package/environments/docs-webapp/env.docs-webapp.__.d.ts +3 -0
  40. package/environments/electron-app/env.electron-app.__.d.ts +3 -0
  41. package/environments/electron-app/env.electron-app.prod.d.ts +3 -0
  42. package/environments/mobile-app/env.mobile-app.__.d.ts +3 -0
  43. package/environments/mobile-app/env.mobile-app.prod.d.ts +3 -0
  44. package/environments/npm-lib-and-cli-tool/env.npm-lib-and-cli-tool.__.d.ts +3 -0
  45. package/environments/npm-lib-and-cli-tool/env.npm-lib-and-cli-tool.prod.d.ts +3 -0
  46. package/environments/vscode-plugin/env.vscode-plugin.__.d.ts +6 -0
  47. package/environments/vscode-plugin/env.vscode-plugin.prod.d.ts +4 -0
  48. package/index.js.map +1 -1
  49. package/lib/base-classes/base-abstract-entity.js.map +1 -1
  50. package/lib/base-classes/base-angular-service.d.ts +2 -4
  51. package/lib/base-classes/base-angular-service.js +0 -5
  52. package/lib/base-classes/base-angular-service.js.map +1 -1
  53. package/lib/base-classes/base-class.js.map +1 -1
  54. package/lib/base-classes/base-context.js.map +1 -1
  55. package/lib/base-classes/base-controller.d.ts +1 -0
  56. package/lib/base-classes/base-controller.js +1 -0
  57. package/lib/base-classes/base-controller.js.map +1 -1
  58. package/lib/base-classes/base-crud-controller.d.ts +1 -1
  59. package/lib/base-classes/base-crud-controller.js +4 -4
  60. package/lib/base-classes/base-crud-controller.js.map +1 -1
  61. package/lib/base-classes/base-custom-repository.js.map +1 -1
  62. package/lib/base-classes/base-entity.js.map +1 -1
  63. package/lib/base-classes/base-injector.d.ts +1 -3
  64. package/lib/base-classes/base-injector.js +2 -11
  65. package/lib/base-classes/base-injector.js.map +1 -1
  66. package/lib/base-classes/base-migration.d.ts +1 -1
  67. package/lib/base-classes/base-migration.js.map +1 -1
  68. package/lib/base-classes/base-provider.d.ts +5 -0
  69. package/lib/base-classes/base-provider.js +5 -0
  70. package/lib/base-classes/base-provider.js.map +1 -1
  71. package/lib/base-classes/base-repository.js.map +1 -1
  72. package/lib/base-classes/base-subscriber-for-entity.js.map +1 -1
  73. package/lib/base-classes/base.js.map +1 -1
  74. package/lib/build-info._auto-generated_.d.ts +1 -1
  75. package/lib/build-info._auto-generated_.js +1 -1
  76. package/lib/build-info._auto-generated_.js.map +1 -1
  77. package/lib/constants.d.ts +6 -1
  78. package/lib/constants.js +21 -0
  79. package/lib/constants.js.map +1 -1
  80. package/lib/context-db-migrations.js.map +1 -1
  81. package/lib/create-context.js.map +1 -1
  82. package/lib/decorators/classes/controller-decorator.js.map +1 -1
  83. package/lib/decorators/classes/entity-decorator.js.map +1 -1
  84. package/lib/decorators/classes/migration-decorator.js.map +1 -1
  85. package/lib/decorators/classes/provider-decorator.js.map +1 -1
  86. package/lib/decorators/classes/repository-decorator.js.map +1 -1
  87. package/lib/decorators/classes/subscriber-decorator.js.map +1 -1
  88. package/lib/decorators/http/http-decorators.js.map +1 -1
  89. package/lib/decorators/http/http-methods-decorators.js.map +1 -1
  90. package/lib/decorators/http/http-params-decorators.js.map +1 -1
  91. package/lib/dependency-injection/di-container.js.map +1 -1
  92. package/lib/endpoint-context.d.ts +2 -2
  93. package/lib/endpoint-context.js.map +1 -1
  94. package/lib/entity-process.js.map +1 -1
  95. package/lib/env.js.map +1 -1
  96. package/lib/formly/formly-group-wrapper-component.js.map +1 -1
  97. package/lib/formly/formly-repeat-component.js.map +1 -1
  98. package/lib/formly/formly.models.js.map +1 -1
  99. package/lib/formly/fromly.js.map +1 -1
  100. package/lib/formly/type-from-entity.js.map +1 -1
  101. package/lib/get-response-value.js.map +1 -1
  102. package/lib/helpers/class-helpers.js.map +1 -1
  103. package/lib/helpers/taon-helpers.js.map +1 -1
  104. package/lib/index._auto-generated_.js.map +1 -1
  105. package/lib/index.js.map +1 -1
  106. package/lib/inject.js.map +1 -1
  107. package/lib/models.js.map +1 -1
  108. package/lib/orm.js.map +1 -1
  109. package/lib/realtime/realtime-client.js.map +1 -1
  110. package/lib/realtime/realtime-core.js.map +1 -1
  111. package/lib/realtime/realtime-server.js.map +1 -1
  112. package/lib/realtime/realtime-strategy/index.js.map +1 -1
  113. package/lib/realtime/realtime-strategy/realtime-strategy-ipc.js.map +1 -1
  114. package/lib/realtime/realtime-strategy/realtime-strategy-mock.js.map +1 -1
  115. package/lib/realtime/realtime-strategy/realtime-strategy-socket-io.js.map +1 -1
  116. package/lib/realtime/realtime-strategy/realtime-strategy.js.map +1 -1
  117. package/lib/realtime/realtime-subs-manager.js.map +1 -1
  118. package/lib/realtime/realtime.models.js.map +1 -1
  119. package/lib/storage.js.map +1 -1
  120. package/lib/symbols.js.map +1 -1
  121. package/lib/ui/directives/index.js +2 -2
  122. package/lib/ui/directives/index.js.map +1 -1
  123. package/lib/ui/directives/view-mode.js.map +1 -1
  124. package/lib/ui/index.js +2 -2
  125. package/lib/ui/index.js.map +1 -1
  126. package/lib/ui/taon-admin-mode-configuration/index.js +2 -2
  127. package/lib/ui/taon-admin-mode-configuration/index.js.map +1 -1
  128. package/lib/ui/taon-admin-mode-configuration/taon-admin.models.js.map +1 -1
  129. package/lib/ui/taon-full-material.module.d.ts +3 -0
  130. package/lib/ui/taon-github-fork-me-corner/index.js +2 -2
  131. package/lib/ui/taon-github-fork-me-corner/index.js.map +1 -1
  132. package/lib/ui/taon-github-fork-me-ribbon/index.js +2 -2
  133. package/lib/ui/taon-github-fork-me-ribbon/index.js.map +1 -1
  134. package/lib/ui/taon-notifications/index.js.map +1 -1
  135. package/lib/ui/taon-notifications/taon-notifications.models.js +2 -2
  136. package/lib/ui/taon-notifications/taon-notifications.models.js.map +1 -1
  137. package/lib/ui/taon-progress-bar/index.js +2 -2
  138. package/lib/ui/taon-progress-bar/index.js.map +1 -1
  139. package/lib/ui/taon-session-passcode/index.js +2 -2
  140. package/lib/ui/taon-session-passcode/index.js.map +1 -1
  141. package/lib/ui/taon-table/index.js +2 -2
  142. package/lib/ui/taon-table/index.js.map +1 -1
  143. package/lib/ui/taon.models.js.map +1 -1
  144. package/lib/validators.js.map +1 -1
  145. package/migrations/index.js.map +1 -1
  146. package/migrations/migrations_index._auto-generated_.js.map +1 -1
  147. package/old-app .js.map +1 -1
  148. package/package.json +1 -1
  149. package/playground.js.map +1 -1
  150. package/tmp-environment.json +3 -3
  151. package/websql/README.md +24 -24
  152. package/websql/fesm2022/taon.mjs +50 -27
  153. package/websql/fesm2022/taon.mjs.map +1 -1
  154. package/websql/lib/base-classes/base-angular-service.d.ts +1 -3
  155. package/websql/lib/base-classes/base-controller.d.ts +1 -0
  156. package/websql/lib/base-classes/base-crud-controller.d.ts +1 -1
  157. package/websql/lib/base-classes/base-injector.d.ts +1 -3
  158. package/websql/lib/base-classes/base-migration.d.ts +1 -1
  159. package/websql/lib/base-classes/base-provider.d.ts +5 -0
  160. package/websql/lib/constants.d.ts +6 -1
  161. package/websql/lib/endpoint-context.d.ts +2 -2
  162. package/websql/lib/ui/taon-full-material.module.d.ts +3 -0
  163. package/websql/package.json +1 -1
  164. package/lib/base-classes/base-subscriber.d.ts +0 -4
  165. package/lib/base-classes/base-subscriber.js +0 -25
  166. package/lib/base-classes/base-subscriber.js.map +0 -1
  167. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/index.d.ts +0 -0
  168. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/index.js +0 -5
  169. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/index.js.map +0 -1
  170. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-namespace.d.ts +0 -22
  171. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-namespace.js +0 -139
  172. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-namespace.js.map +0 -1
  173. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-wrapper.d.ts +0 -16
  174. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-wrapper.js +0 -68
  175. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-wrapper.js.map +0 -1
  176. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-namespace.d.ts +0 -10
  177. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-namespace.js +0 -56
  178. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-namespace.js.map +0 -1
  179. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-wrapper.d.ts +0 -10
  180. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-wrapper.js +0 -50
  181. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-wrapper.js.map +0 -1
  182. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc.models.d.ts +0 -13
  183. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc.models.js +0 -3
  184. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc.models.js.map +0 -1
  185. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/index.d.ts +0 -2
  186. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/index.js +0 -6
  187. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/index.js.map +0 -1
  188. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-client.d.ts +0 -16
  189. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-client.js +0 -54
  190. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-client.js.map +0 -1
  191. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-namespaces.d.ts +0 -17
  192. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-namespaces.js +0 -52
  193. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-namespaces.js.map +0 -1
  194. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-server.d.ts +0 -11
  195. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-server.js +0 -39
  196. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-server.js.map +0 -1
  197. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-socket.d.ts +0 -13
  198. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-socket.js +0 -46
  199. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-socket.js.map +0 -1
  200. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock.models.d.ts +0 -11
  201. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock.models.js +0 -3
  202. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock.models.js.map +0 -1
  203. package/lib/ui/directives/firedev-inject-html.directive.d.ts +0 -6
  204. package/lib/ui/directives/firedev-long-press.directive.d.ts +0 -22
  205. package/lib/ui/taon-admin-mode-configuration/components/taon-admin-edit-mode/index.d.ts +0 -2
  206. package/lib/ui/taon-admin-mode-configuration/components/taon-admin-edit-mode/index.js +0 -5
  207. package/lib/ui/taon-admin-mode-configuration/components/taon-admin-edit-mode/index.js.map +0 -1
  208. package/lib/ui/taon-admin-mode-configuration/components/taon-admin-edit-mode/taon-admin-edit-mode.component.d.ts +0 -29
  209. package/lib/ui/taon-admin-mode-configuration/components/taon-admin-edit-mode/taon-admin-edit-mode.module.d.ts +0 -2
  210. package/lib/ui/taon-admin-mode-configuration/components/taon-db-admin/index.d.ts +0 -1
  211. package/lib/ui/taon-admin-mode-configuration/components/taon-db-admin/index.js +0 -5
  212. package/lib/ui/taon-admin-mode-configuration/components/taon-db-admin/index.js.map +0 -1
  213. package/lib/ui/taon-admin-mode-configuration/components/taon-db-admin/taon-db-admin.component.d.ts +0 -8
  214. package/lib/ui/taon-admin-mode-configuration/components/taon-file-general-opt/index.d.ts +0 -2
  215. package/lib/ui/taon-admin-mode-configuration/components/taon-file-general-opt/index.js +0 -5
  216. package/lib/ui/taon-admin-mode-configuration/components/taon-file-general-opt/index.js.map +0 -1
  217. package/lib/ui/taon-admin-mode-configuration/components/taon-file-general-opt/taon-file-general-opt.component.d.ts +0 -13
  218. package/lib/ui/taon-admin-mode-configuration/components/taon-file-general-opt/taon-file-general-opt.module.d.ts +0 -2
  219. package/lib/ui/taon-admin-mode-configuration/models/taon-admin-mode-tabs.d.ts +0 -5
  220. package/lib/ui/taon-admin-mode-configuration/models/taon-admin-mode-tabs.js +0 -3
  221. package/lib/ui/taon-admin-mode-configuration/models/taon-admin-mode-tabs.js.map +0 -1
  222. package/lib/ui/taon-admin-mode-configuration/taon-admin-control.service.d.ts +0 -14
  223. package/lib/ui/taon-admin-mode-configuration/taon-admin-mode-configuration.module.d.ts +0 -2
  224. package/lib/ui/toan-full-material.module.d.ts +0 -2
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "taon",
3
- "version": "19.0.9",
3
+ "version": "19.0.10",
4
4
  "scripts": {
5
5
  "mkdocs": "python3 -m mkdocs"
6
6
  },
package/playground.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"playground.js","sourceRoot":"","sources":["c:/Users/darek/projects/npm/taon-dev/taon/src/playground.ts"],"names":[],"mappings":"AAAA,gBAAgB;AAEhB,gBAAgB;AAChB,kBAAkB;AAClB,wBAAwB;AACxB,IAAI;AAEJ,mBAAmB;AACnB,2BAA2B;AAC3B,kBAAkB;AAClB,wBAAwB;AACxB,IAAI;AAEJ,+BAA+B;AAC/B,iBAAiB;AACjB,UAAU;AACV,iBAAiB;AACjB,UAAU;AAEV,kEAAkE;AAElE,6DAA6D;AAC7D,yGAAyG;AAEzG,uEAAuE;AAEvE,kBAAkB;AAClB,wCAAwC;AACxC,kBAAkB;AAClB,sFAAsF;AACtF,kBAAkB;AAClB,2DAA2D;AAC3D,kBAAkB;AAClB,mFAAmF;AACnF,aAAa;AACb,MAAM;AAEN,IAAI;AAEJ,uCAAuC;AACvC,0BAA0B;AAE1B,sEAAsE;AAEtE,gBAAgB;AAEhB,gBAAgB;AAChB,kBAAkB;AAClB,IAAI;AAEJ,mBAAmB;AACnB,2BAA2B;AAC3B,kBAAkB;AAClB,wBAAwB;AACxB,IAAI;AAEJ,qCAAqC;AAErC,0BAA0B;AAE1B,uBAAuB;AACvB,oCAAoC;AACpC,MAAM;AAEN,6BAA6B;AAC7B,yCAAyC;AACzC,MAAM;AAEN,IAAI;AAEJ,0BAA0B;AAC1B,qBAAqB;AACrB,IAAI;AAEJ,uBAAuB;AACvB,yBAAyB;AACzB,IAAI;AAEJ,kEAAkE;AAClE,uBAAuB;AACvB,kBAAkB;AAClB,8BAA8B;AAC9B,mCAAmC;AACnC,uBAAuB;AACvB,qDAAqD;AACrD,mCAAmC;AACnC,SAAS;AACT,+BAA+B;AAC/B,mCAAmC;AACnC,SAAS;AACT,eAAe;AACf,mCAAmC;AACnC,QAAQ;AACR,OAAO;AACP,gBAAgB;AAChB,IAAI;AAEJ,4EAA4E;AAE5E,sBAAsB;AAEtB,QAAQ;AAER,gCAAgC;AAEhC,qBAAqB;AAErB,IAAI;AAEJ,6BAA6B;AAE7B,gCAAgC;AAChC,oCAAoC;AAEpC,gBAAgB;AAEhB,IAAI;AAEJ,iCAAiC;AACjC,sDAAsD;AAEtD,SAAS;AACT,OAAO;AAEP,4CAA4C;AAC5C,uBAAuB;AACvB,OAAO;AAEP,4CAA4C;AAC5C,iBAAiB;AACjB,OAAO;AAEP,wCAAwC;AACxC,gBAAgB;AAChB,yBAAyB;AACzB,UAAU;AACV,OAAO;AAEP,iCAAiC;AACjC,qBAAqB;AACrB,OAAO;AAEP,8CAA8C;AAC9C,gFAAgF;AAChF,6GAA6G;AAC7G,0IAA0I;AAC1I,0CAA0C;AAC1C,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,gCAAgC;AAChC,6BAA6B;AAC7B,6CAA6C;AAC7C,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,gCAAgC;AAChC,6BAA6B;AAC7B,gDAAgD;AAChD,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,gCAAgC;AAChC,6BAA6B;AAC7B,mDAAmD;AACnD,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,gCAAgC;AAChC,6BAA6B;AAC7B,sDAAsD;AACtD,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,gCAAgC;AAChC,6BAA6B;AAC7B,yDAAyD;AACzD,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,gCAAgC;AAChC,6BAA6B;AAC7B,yDAAyD;AACzD,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,yCAAyC;AACzC,mCAAmC"}
1
+ {"version":3,"file":"playground.js","sourceRoot":"","sources":["/Users/dfilipiak/projects/npm/taon-dev/taon/src/playground.ts"],"names":[],"mappings":"AAAA,gBAAgB;AAEhB,gBAAgB;AAChB,kBAAkB;AAClB,wBAAwB;AACxB,IAAI;AAEJ,mBAAmB;AACnB,2BAA2B;AAC3B,kBAAkB;AAClB,wBAAwB;AACxB,IAAI;AAEJ,+BAA+B;AAC/B,iBAAiB;AACjB,UAAU;AACV,iBAAiB;AACjB,UAAU;AAEV,kEAAkE;AAElE,6DAA6D;AAC7D,yGAAyG;AAEzG,uEAAuE;AAEvE,kBAAkB;AAClB,wCAAwC;AACxC,kBAAkB;AAClB,sFAAsF;AACtF,kBAAkB;AAClB,2DAA2D;AAC3D,kBAAkB;AAClB,mFAAmF;AACnF,aAAa;AACb,MAAM;AAEN,IAAI;AAEJ,uCAAuC;AACvC,0BAA0B;AAE1B,sEAAsE;AAEtE,gBAAgB;AAEhB,gBAAgB;AAChB,kBAAkB;AAClB,IAAI;AAEJ,mBAAmB;AACnB,2BAA2B;AAC3B,kBAAkB;AAClB,wBAAwB;AACxB,IAAI;AAEJ,qCAAqC;AAErC,0BAA0B;AAE1B,uBAAuB;AACvB,oCAAoC;AACpC,MAAM;AAEN,6BAA6B;AAC7B,yCAAyC;AACzC,MAAM;AAEN,IAAI;AAEJ,0BAA0B;AAC1B,qBAAqB;AACrB,IAAI;AAEJ,uBAAuB;AACvB,yBAAyB;AACzB,IAAI;AAEJ,kEAAkE;AAClE,uBAAuB;AACvB,kBAAkB;AAClB,8BAA8B;AAC9B,mCAAmC;AACnC,uBAAuB;AACvB,qDAAqD;AACrD,mCAAmC;AACnC,SAAS;AACT,+BAA+B;AAC/B,mCAAmC;AACnC,SAAS;AACT,eAAe;AACf,mCAAmC;AACnC,QAAQ;AACR,OAAO;AACP,gBAAgB;AAChB,IAAI;AAEJ,4EAA4E;AAE5E,sBAAsB;AAEtB,QAAQ;AAER,gCAAgC;AAEhC,qBAAqB;AAErB,IAAI;AAEJ,6BAA6B;AAE7B,gCAAgC;AAChC,oCAAoC;AAEpC,gBAAgB;AAEhB,IAAI;AAEJ,iCAAiC;AACjC,sDAAsD;AAEtD,SAAS;AACT,OAAO;AAEP,4CAA4C;AAC5C,uBAAuB;AACvB,OAAO;AAEP,4CAA4C;AAC5C,iBAAiB;AACjB,OAAO;AAEP,wCAAwC;AACxC,gBAAgB;AAChB,yBAAyB;AACzB,UAAU;AACV,OAAO;AAEP,iCAAiC;AACjC,qBAAqB;AACrB,OAAO;AAEP,8CAA8C;AAC9C,gFAAgF;AAChF,6GAA6G;AAC7G,0IAA0I;AAC1I,0CAA0C;AAC1C,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,gCAAgC;AAChC,6BAA6B;AAC7B,6CAA6C;AAC7C,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,gCAAgC;AAChC,6BAA6B;AAC7B,gDAAgD;AAChD,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,gCAAgC;AAChC,6BAA6B;AAC7B,mDAAmD;AACnD,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,gCAAgC;AAChC,6BAA6B;AAC7B,sDAAsD;AACtD,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,gCAAgC;AAChC,6BAA6B;AAC7B,yDAAyD;AACzD,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,gCAAgC;AAChC,6BAA6B;AAC7B,yDAAyD;AACzD,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,iCAAiC;AACjC,yCAAyC;AACzC,mCAAmC"}
@@ -24,12 +24,12 @@
24
24
  "releaseType": "manual",
25
25
  "targetArtifact": "npm-lib-and-cli-tool",
26
26
  "envName": "__",
27
- "resolvedNewVersion": "19.0.9"
27
+ "resolvedNewVersion": "19.0.10"
28
28
  },
29
29
  "copyToManager": {},
30
30
  "buildInfo": {
31
- "date": "2025-05-10T22:11:07.000Z",
32
- "hash": "b1ed7ddecc11106d04c1c5d9a19fe2761d0b2286"
31
+ "date": "2025-05-11T21:44:21.000Z",
32
+ "hash": "5a93bab6a2d7aecb7d74be1957d0847bcba0254e"
33
33
  },
34
34
  "currentProjectName": "taon",
35
35
  "currentProjectType": "isomorphic-lib",
package/websql/README.md CHANGED
@@ -1,24 +1,24 @@
1
- # MyLib
2
-
3
- This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 13.2.0.
4
-
5
- ## Code scaffolding
6
-
7
- Run `ng generate component component-name --project my-lib` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project my-lib`.
8
- > Note: Don't forget to add `--project my-lib` or else it will be added to the default project in your `angular.json` file.
9
-
10
- ## Build
11
-
12
- Run `ng build my-lib` to build the project. The build artifacts will be stored in the `dist/` directory.
13
-
14
- ## Publishing
15
-
16
- After building your library with `ng build my-lib`, go to the dist folder `cd dist/my-lib` and run `npm publish`.
17
-
18
- ## Running unit tests
19
-
20
- Run `ng test my-lib` to execute the unit tests via [Karma](https://karma-runner.github.io).
21
-
22
- ## Further help
23
-
24
- To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
1
+ # MyLib
2
+
3
+ This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 13.2.0.
4
+
5
+ ## Code scaffolding
6
+
7
+ Run `ng generate component component-name --project my-lib` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project my-lib`.
8
+ > Note: Don't forget to add `--project my-lib` or else it will be added to the default project in your `angular.json` file.
9
+
10
+ ## Build
11
+
12
+ Run `ng build my-lib` to build the project. The build artifacts will be stored in the `dist/` directory.
13
+
14
+ ## Publishing
15
+
16
+ After building your library with `ng build my-lib`, go to the dist folder `cd dist/my-lib` and run `npm publish`.
17
+
18
+ ## Running unit tests
19
+
20
+ Run `ng test my-lib` to execute the unit tests via [Karma](https://karma-runner.github.io).
21
+
22
+ ## Further help
23
+
24
+ To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
@@ -9,7 +9,7 @@ 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 { Injectable, EventEmitter, HostListener, HostBinding, Output, Input, Directive, Pipe, NgModule, Component, inject as inject$1, DestroyRef, Self, ViewChild, ChangeDetectorRef } 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';
13
13
  import axios from 'axios';
14
14
  import { JSON10 } from 'json10/websql';
15
15
  import { Observable, Subject, from, interval, tap, Subscription, defer, fromEvent, map, debounceTime, distinctUntilChanged, share, takeUntil } from 'rxjs';
@@ -913,6 +913,29 @@ BaseAbstractEntity = __decorate([
913
913
  EntityDecorator()
914
914
  ], BaseAbstractEntity);
915
915
 
916
+ const TaonEntityKeysToOmitArr = [
917
+ 'ctrl',
918
+ 'clone',
919
+ '__endpoint_context__',
920
+ 'ctx',
921
+ 'inject',
922
+ '_',
923
+ 'relation',
924
+ 'relations',
925
+ 'inject',
926
+ 'injectRepo',
927
+ 'injectCustomRepository',
928
+ 'injectCustomRepo',
929
+ 'injectController',
930
+ 'injectCtrl',
931
+ 'injectGlobalProvider',
932
+ 'injectLocalProvider',
933
+ 'injectContextProvider',
934
+ ];
935
+ let TAON_CONTEXT;
936
+ //#region @browser
937
+ TAON_CONTEXT = new InjectionToken('TAON_CONTEXT');
938
+
916
939
  /**
917
940
  * TODO prevent calling methods when not initialized
918
941
  * with init(ctx)
@@ -920,9 +943,9 @@ BaseAbstractEntity = __decorate([
920
943
  //#region @browser
921
944
  //#endregion
922
945
  class BaseAngularsService {
923
- init(currentContext) {
924
- this.currentContext = currentContext;
925
- this.initControllers();
946
+ constructor() {
947
+ //#region @browser
948
+ this.currentContext = inject$1(TAON_CONTEXT);
926
949
  }
927
950
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: BaseAngularsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
928
951
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: BaseAngularsService }); }
@@ -4635,9 +4658,9 @@ function TaonRepository(options) {
4635
4658
  class TaonRepositoryOptions extends Models.DecoratorAbstractOpt {
4636
4659
  }
4637
4660
 
4638
- //#region imports
4639
4661
  //#endregion
4640
4662
  class BaseInjector {
4663
+ //#endregion
4641
4664
  //#region class initialization hook
4642
4665
  /**
4643
4666
  * class initialization hook
@@ -4818,15 +4841,6 @@ class BaseInjector {
4818
4841
  },
4819
4842
  });
4820
4843
  }
4821
- //#endregion
4822
- //#endregion
4823
- //#region clone
4824
- clone(override) {
4825
- const classFn = ClassHelpers.getClassFnFromObject(this);
4826
- const result = _.merge(new classFn(), _.merge(_.cloneDeep(this), override));
4827
- // console.log({result})
4828
- return result;
4829
- }
4830
4844
  }
4831
4845
 
4832
4846
  //#endregion
@@ -5449,6 +5463,7 @@ class TaonControllerOptions extends Models.DecoratorAbstractOpt {
5449
5463
 
5450
5464
  let BaseController = class BaseController extends BaseInjector {
5451
5465
  /**
5466
+ * @deprecated use migration instead
5452
5467
  * THIS ONLY WORKS IF NO MIGRATIONS PROVIDED IN CONFIG
5453
5468
  * Purpose: init example data for db.
5454
5469
  */
@@ -5872,6 +5887,11 @@ class BaseMigration extends BaseInjector {
5872
5887
  }
5873
5888
  }
5874
5889
 
5890
+ /**
5891
+ * TODO
5892
+ * - global provider available in all contexts
5893
+ * - provider available in own context
5894
+ */
5875
5895
  class BaseProvider extends BaseInjector {
5876
5896
  }
5877
5897
 
@@ -6368,6 +6388,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImpo
6368
6388
  //#endregion
6369
6389
 
6370
6390
  //#region @browser
6391
+ /**
6392
+ * @deprecated too heavy!
6393
+ */
6371
6394
  class TaonFullMaterialModule {
6372
6395
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: TaonFullMaterialModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6373
6396
  static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.10", ngImport: i0, type: TaonFullMaterialModule, exports: [A11yModule,
@@ -6508,11 +6531,11 @@ class TaonGithubForkMeCornerComponent {
6508
6531
  this.url = 'https://github.com';
6509
6532
  }
6510
6533
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: TaonGithubForkMeCornerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6511
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.10", 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"] }); }
6534
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.10", 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>\n", 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"] }); }
6512
6535
  }
6513
6536
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: TaonGithubForkMeCornerComponent, decorators: [{
6514
6537
  type: Component,
6515
- 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"] }]
6538
+ 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>\n", 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"] }]
6516
6539
  }], propDecorators: { url: [{
6517
6540
  type: Input
6518
6541
  }] } });
@@ -6592,11 +6615,11 @@ class TaonNotificationsComponent {
6592
6615
  }));
6593
6616
  }
6594
6617
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: TaonNotificationsComponent, deps: [{ token: TaonNotificationsService }], target: i0.ɵɵFactoryTarget.Component }); }
6595
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.10", 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"] }); }
6618
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.10", type: TaonNotificationsComponent, isStandalone: false, selector: "taon-notifications", ngImport: i0, template: "<!-- <p>\n notyfications works!\n</p> -->\n", styles: [":host{position:absolute;width:0px;height:0px}\n"] }); }
6596
6619
  }
6597
6620
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: TaonNotificationsComponent, decorators: [{
6598
6621
  type: Component,
6599
- args: [{ selector: 'taon-notifications', standalone: false, template: "<!-- <p>\n notyfications works!\n</p> -->", styles: [":host{position:absolute;width:0px;height:0px}\n"] }]
6622
+ args: [{ selector: 'taon-notifications', standalone: false, template: "<!-- <p>\n notyfications works!\n</p> -->\n", styles: [":host{position:absolute;width:0px;height:0px}\n"] }]
6600
6623
  }], ctorParameters: () => [{ type: TaonNotificationsService }] });
6601
6624
 
6602
6625
  class TaonNotificationOptions {
@@ -6706,7 +6729,7 @@ class TaonSessionPasscodeComponent {
6706
6729
  }
6707
6730
  }
6708
6731
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: TaonSessionPasscodeComponent, deps: [{ token: i0.ElementRef, self: true }, { token: i1.DomSanitizer }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
6709
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.10", 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 }] }); }
6732
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.10", 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>\n", 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 }] }); }
6710
6733
  }
6711
6734
  __decorate([
6712
6735
  (Stor.property.in.localstorage
@@ -6716,7 +6739,7 @@ __decorate([
6716
6739
  ], TaonSessionPasscodeComponent.prototype, "lastPasscode", void 0);
6717
6740
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: TaonSessionPasscodeComponent, decorators: [{
6718
6741
  type: Component,
6719
- 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"] }]
6742
+ 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>\n", 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"] }]
6720
6743
  }], ctorParameters: () => [{ type: i0.ElementRef, decorators: [{
6721
6744
  type: Self
6722
6745
  }] }, { type: i1.DomSanitizer }, { type: i0.ChangeDetectorRef }], propDecorators: { passcode: [{
@@ -6849,11 +6872,11 @@ class TaonProgressBarComponent {
6849
6872
  //#endregion
6850
6873
  }
6851
6874
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: TaonProgressBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6852
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.10", 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"] }); }
6875
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.10", 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()\" -->\n", styles: [":host{display:block}\n"] }); }
6853
6876
  }
6854
6877
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: TaonProgressBarComponent, decorators: [{
6855
6878
  type: Component,
6856
- 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"] }]
6879
+ 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()\" -->\n", styles: [":host{display:block}\n"] }]
6857
6880
  }], ctorParameters: () => [], propDecorators: { labProgress: [{
6858
6881
  type: ViewChild,
6859
6882
  args: ['labProgress']
@@ -7057,11 +7080,11 @@ class TaonTableComponent {
7057
7080
  log.i('context menu event', e);
7058
7081
  }
7059
7082
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: TaonTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7060
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.10", 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"] }] }); }
7083
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.10", 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>\n", 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"] }] }); }
7061
7084
  }
7062
7085
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: TaonTableComponent, decorators: [{
7063
7086
  type: Component,
7064
- 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"] }]
7087
+ 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>\n", styles: [":host{min-height:250px}.search-input{width:100%}.undo-button{margin-left:10px}.half-opacity{opacity:.2}\n"] }]
7065
7088
  }], propDecorators: { pageNumber: [{
7066
7089
  type: Input
7067
7090
  }], pageSize: [{
@@ -7264,7 +7287,7 @@ class TaonAdminModeConfigurationComponent {
7264
7287
  // }
7265
7288
  }
7266
7289
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: TaonAdminModeConfigurationComponent, deps: [{ token: i1$2.BreakpointsService }], target: i0.ɵɵFactoryTarget.Component }); }
7267
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.10", 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/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
7290
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.10", 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/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 -->\n", 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
7268
7291
  // TaonDbAdminComponent,
7269
7292
  TaonSessionPasscodeComponent, selector: "taon-session-passcode", inputs: ["passcode", "message"] }] }); }
7270
7293
  }
@@ -7304,7 +7327,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImpo
7304
7327
  TaonFullMaterialModule, // TODO import only partial things
7305
7328
  // TaonDbAdminComponent,
7306
7329
  TaonSessionPasscodeComponent,
7307
- ], 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/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"] }]
7330
+ ], 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/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 -->\n", 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"] }]
7308
7331
  }], ctorParameters: () => [{ type: i1$2.BreakpointsService }], propDecorators: { tabGroup: [{
7309
7332
  type: ViewChild,
7310
7333
  args: ['tabGroup']
@@ -7377,5 +7400,5 @@ var Taon;
7377
7400
  * Generated bundle index. Do not edit.
7378
7401
  */
7379
7402
 
7380
- export { BaseContext, BaseController, BaseCustomRepository, BaseEntity, BaseMigration, BaseProvider, BaseRepository, ClassHelpers, EndpointContext, Models, SafePipe, Taon, TaonAdminModeConfigurationComponent, TaonFullMaterialModule, TaonGithubForkMeCornerComponent, TaonGithubForkMeCornerModule, TaonInjectHTMLDirective, TaonLongPress, TaonNotificationOptions, TaonNotificationsComponent, TaonNotificationsModule, TaonNotificationsService, TaonProgressBarComponent, TaonProgressBarModule, TaonSessionPasscodeComponent, TaonTableComponent, TaonTableModule, createContext, inject };
7403
+ export { BaseContext, BaseController, BaseCustomRepository, BaseEntity, BaseMigration, BaseProvider, BaseRepository, ClassHelpers, EndpointContext, Models, SafePipe, TAON_CONTEXT, Taon, TaonAdminModeConfigurationComponent, TaonEntityKeysToOmitArr, TaonFullMaterialModule, TaonGithubForkMeCornerComponent, TaonGithubForkMeCornerModule, TaonInjectHTMLDirective, TaonLongPress, TaonNotificationOptions, TaonNotificationsComponent, TaonNotificationsModule, TaonNotificationsService, TaonProgressBarComponent, TaonProgressBarModule, TaonSessionPasscodeComponent, TaonTableComponent, TaonTableModule, createContext, inject };
7381
7404
  //# sourceMappingURL=taon.mjs.map