taon 19.0.49 → 19.0.50

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 (148) hide show
  1. package/browser/fesm2022/taon.mjs +60 -9
  2. package/browser/fesm2022/taon.mjs.map +1 -1
  3. package/browser/lib/endpoint-context.d.ts +6 -0
  4. package/browser/lib/models.d.ts +19 -0
  5. package/browser/package.json +1 -1
  6. package/lib/base-classes/base-subscriber.d.ts +4 -0
  7. package/lib/base-classes/base-subscriber.js +25 -0
  8. package/lib/base-classes/base-subscriber.js.map +1 -0
  9. package/lib/build-info._auto-generated_.d.ts +16 -1
  10. package/lib/build-info._auto-generated_.js +16 -1
  11. package/lib/build-info._auto-generated_.js.map +1 -1
  12. package/lib/create-context.js +15 -0
  13. package/lib/create-context.js.map +1 -1
  14. package/lib/endpoint-context.d.ts +6 -0
  15. package/lib/endpoint-context.js +36 -6
  16. package/lib/endpoint-context.js.map +1 -1
  17. package/lib/env.js +5 -1
  18. package/lib/env.js.map +1 -1
  19. package/lib/models.d.ts +19 -0
  20. package/lib/models.js +3 -0
  21. package/lib/models.js.map +1 -1
  22. package/lib/realtime/realtime-client.js +9 -0
  23. package/lib/realtime/realtime-client.js.map +1 -1
  24. package/lib/realtime/realtime-server.js +1 -4
  25. package/lib/realtime/realtime-server.js.map +1 -1
  26. package/lib/realtime/realtime-strategy/realtime-abstract-mock.d.ts +10 -0
  27. package/lib/realtime/realtime-strategy/realtime-abstract-mock.js +214 -0
  28. package/lib/realtime/realtime-strategy/realtime-abstract-mock.js.map +1 -0
  29. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/index.d.ts +0 -0
  30. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/index.js +5 -0
  31. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/index.js.map +1 -0
  32. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-namespace.d.ts +22 -0
  33. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-namespace.js +139 -0
  34. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-namespace.js.map +1 -0
  35. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-wrapper.d.ts +16 -0
  36. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-wrapper.js +68 -0
  37. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-wrapper.js.map +1 -0
  38. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-namespace.d.ts +10 -0
  39. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-namespace.js +56 -0
  40. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-namespace.js.map +1 -0
  41. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-wrapper.d.ts +10 -0
  42. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-wrapper.js +50 -0
  43. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-wrapper.js.map +1 -0
  44. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc.models.d.ts +13 -0
  45. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc.models.js +3 -0
  46. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc.models.js.map +1 -0
  47. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/index.d.ts +2 -0
  48. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/index.js +6 -0
  49. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/index.js.map +1 -0
  50. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-client.d.ts +16 -0
  51. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-client.js +54 -0
  52. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-client.js.map +1 -0
  53. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-namespaces.d.ts +17 -0
  54. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-namespaces.js +52 -0
  55. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-namespaces.js.map +1 -0
  56. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-server.d.ts +11 -0
  57. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-server.js +39 -0
  58. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-server.js.map +1 -0
  59. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-socket.d.ts +13 -0
  60. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-socket.js +46 -0
  61. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-socket.js.map +1 -0
  62. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock.models.d.ts +11 -0
  63. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock.models.js +3 -0
  64. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock.models.js.map +1 -0
  65. package/lib/storage.d.ts +1 -1
  66. package/lib/storage.js +5 -1
  67. package/lib/storage.js.map +1 -1
  68. package/lib/ui/directives/firedev-inject-html.directive.d.ts +6 -0
  69. package/lib/ui/directives/firedev-long-press.directive.d.ts +22 -0
  70. package/lib/ui/directives/index.d.ts +3 -0
  71. package/lib/ui/directives/index.js +5 -0
  72. package/lib/ui/directives/index.js.map +1 -0
  73. package/lib/ui/directives/safe.pipe.d.ts +7 -0
  74. package/lib/ui/directives/taon-inject-html.directive.d.ts +6 -0
  75. package/lib/ui/directives/taon-long-press.directive.d.ts +22 -0
  76. package/lib/ui/directives/view-mode.d.ts +5 -0
  77. package/lib/ui/directives/view-mode.js +10 -0
  78. package/lib/ui/directives/view-mode.js.map +1 -0
  79. package/lib/ui/index.js +2 -2
  80. package/lib/ui/taon-admin-mode-configuration/components/taon-admin-edit-mode/index.d.ts +2 -0
  81. package/lib/ui/taon-admin-mode-configuration/components/taon-admin-edit-mode/index.js +5 -0
  82. package/lib/ui/taon-admin-mode-configuration/components/taon-admin-edit-mode/index.js.map +1 -0
  83. package/lib/ui/taon-admin-mode-configuration/components/taon-admin-edit-mode/taon-admin-edit-mode.component.d.ts +29 -0
  84. package/lib/ui/taon-admin-mode-configuration/components/taon-admin-edit-mode/taon-admin-edit-mode.module.d.ts +2 -0
  85. package/lib/ui/taon-admin-mode-configuration/components/taon-db-admin/index.d.ts +1 -0
  86. package/lib/ui/taon-admin-mode-configuration/components/taon-db-admin/index.js +5 -0
  87. package/lib/ui/taon-admin-mode-configuration/components/taon-db-admin/index.js.map +1 -0
  88. package/lib/ui/taon-admin-mode-configuration/components/taon-db-admin/taon-db-admin.component.d.ts +8 -0
  89. package/lib/ui/taon-admin-mode-configuration/components/taon-file-general-opt/index.d.ts +2 -0
  90. package/lib/ui/taon-admin-mode-configuration/components/taon-file-general-opt/index.js +5 -0
  91. package/lib/ui/taon-admin-mode-configuration/components/taon-file-general-opt/index.js.map +1 -0
  92. package/lib/ui/taon-admin-mode-configuration/components/taon-file-general-opt/taon-file-general-opt.component.d.ts +13 -0
  93. package/lib/ui/taon-admin-mode-configuration/components/taon-file-general-opt/taon-file-general-opt.module.d.ts +2 -0
  94. package/lib/ui/taon-admin-mode-configuration/index.js +2 -2
  95. package/lib/ui/taon-admin-mode-configuration/models/taon-admin-mode-tabs.d.ts +5 -0
  96. package/lib/ui/taon-admin-mode-configuration/models/taon-admin-mode-tabs.js +3 -0
  97. package/lib/ui/taon-admin-mode-configuration/models/taon-admin-mode-tabs.js.map +1 -0
  98. package/lib/ui/taon-admin-mode-configuration/taon-admin-control.service.d.ts +14 -0
  99. package/lib/ui/taon-admin-mode-configuration/taon-admin-mode-configuration.component.d.ts +43 -0
  100. package/lib/ui/taon-admin-mode-configuration/taon-admin-mode-configuration.module.d.ts +2 -0
  101. package/lib/ui/taon-admin-mode-configuration/taon-admin.models.d.ts +5 -0
  102. package/lib/ui/taon-admin-mode-configuration/taon-admin.models.js +3 -0
  103. package/lib/ui/taon-admin-mode-configuration/taon-admin.models.js.map +1 -0
  104. package/lib/ui/taon-full-material.module.d.ts +5 -0
  105. package/lib/ui/taon-github-fork-me-corner/index.d.ts +2 -0
  106. package/lib/ui/taon-github-fork-me-corner/index.js +5 -0
  107. package/lib/ui/taon-github-fork-me-corner/index.js.map +1 -0
  108. package/lib/ui/taon-github-fork-me-corner/taon-github-fork-me-corner.component.d.ts +3 -0
  109. package/lib/ui/taon-github-fork-me-corner/taon-github-fork-me-corner.module.d.ts +2 -0
  110. package/lib/ui/taon-github-fork-me-ribbon/index.d.ts +2 -0
  111. package/lib/ui/taon-github-fork-me-ribbon/index.js +5 -0
  112. package/lib/ui/taon-github-fork-me-ribbon/index.js.map +1 -0
  113. package/lib/ui/taon-github-fork-me-ribbon/taon-github-fork-me-ribbon.component.d.ts +3 -0
  114. package/lib/ui/taon-github-fork-me-ribbon/taon-github-fork-me-ribbon.module.d.ts +2 -0
  115. package/lib/ui/taon-notifications/index.d.ts +4 -0
  116. package/lib/ui/taon-notifications/index.js +24 -0
  117. package/lib/ui/taon-notifications/index.js.map +1 -0
  118. package/lib/ui/taon-notifications/taon-notifications.component.d.ts +9 -0
  119. package/lib/ui/taon-notifications/taon-notifications.models.d.ts +6 -0
  120. package/lib/ui/taon-notifications/taon-notifications.models.js +5 -0
  121. package/lib/ui/taon-notifications/taon-notifications.models.js.map +1 -0
  122. package/lib/ui/taon-notifications/taon-notifications.module.d.ts +2 -0
  123. package/lib/ui/taon-notifications/taon-notifications.service.d.ts +11 -0
  124. package/lib/ui/taon-progress-bar/index.d.ts +2 -0
  125. package/lib/ui/taon-progress-bar/index.js +5 -0
  126. package/lib/ui/taon-progress-bar/index.js.map +1 -0
  127. package/lib/ui/taon-progress-bar/taon-progress-bar.component.d.ts +13 -0
  128. package/lib/ui/taon-progress-bar/taon-progress-bar.module.d.ts +2 -0
  129. package/lib/ui/taon-session-passcode/index.d.ts +1 -0
  130. package/lib/ui/taon-session-passcode/index.js +5 -0
  131. package/lib/ui/taon-session-passcode/index.js.map +1 -0
  132. package/lib/ui/taon-session-passcode/taon-session-passcode.component.d.ts +35 -0
  133. package/lib/ui/taon-table/index.d.ts +2 -0
  134. package/lib/ui/taon-table/index.js +5 -0
  135. package/lib/ui/taon-table/index.js.map +1 -0
  136. package/lib/ui/taon-table/taon-table.component.d.ts +34 -0
  137. package/lib/ui/taon-table/taon-table.module.d.ts +2 -0
  138. package/lib/ui/taon.models.d.ts +11 -0
  139. package/lib/ui/taon.models.js +3 -0
  140. package/lib/ui/taon.models.js.map +1 -0
  141. package/lib/ui/toan-full-material.module.d.ts +2 -0
  142. package/package.json +1 -1
  143. package/tmp-environment.json +43 -0
  144. package/websql/fesm2022/taon.mjs +63 -9
  145. package/websql/fesm2022/taon.mjs.map +1 -1
  146. package/websql/lib/endpoint-context.d.ts +6 -0
  147. package/websql/lib/models.d.ts +19 -0
  148. package/websql/package.json +1 -1
@@ -1511,6 +1511,15 @@ class RealtimeClient {
1511
1511
  realtime: this.core.pathFor(Symbols.REALTIME.NAMESPACE(this.core.ctx.contextName)),
1512
1512
  };
1513
1513
  // console.log('[browser] nspPath', nspPath);
1514
+ if (this.core.ctx.config.frontendHost &&
1515
+ this.core.ctx.config.frontendHost !== '') {
1516
+ console.log(`[${this.core.ctx.contextName}] USING FRONTEND HOST ${this.core.ctx.config.frontendHost}`);
1517
+ nspPath.global = new URL(`${this.core.ctx.frontendHostUri.origin}${nspPath.global.pathname}`);
1518
+ nspPath.realtime = new URL(`${this.core.ctx.frontendHostUri.origin}${nspPath.realtime.pathname}`);
1519
+ }
1520
+ else {
1521
+ console.log(`[${this.core.ctx.contextName}] NOT USING FRONTEND HOST`);
1522
+ }
1514
1523
  this.core.ctx.logRealtime &&
1515
1524
  console.info('[CLIENT] NAMESPACE GLOBAL ', nspPath.global.href + ` host: ${this.core.ctx.host}`);
1516
1525
  this.core.ctx.logRealtime &&
@@ -1837,10 +1846,6 @@ class RealtimeServer {
1837
1846
  /* */
1838
1847
  /* */
1839
1848
  /* */
1840
- /* */
1841
- /* */
1842
- /* */
1843
- /* */
1844
1849
  }
1845
1850
  //#endregion
1846
1851
  //#region methods & getters / trigger changes
@@ -2697,9 +2702,6 @@ class EndpointContext {
2697
2702
  }
2698
2703
  return this.config?.logs === true;
2699
2704
  }
2700
- //#endregion
2701
- //#endregion
2702
- //#region constructor
2703
2705
  constructor(originalConfig, configFn) {
2704
2706
  this.originalConfig = originalConfig;
2705
2707
  this.configFn = configFn;
@@ -2773,6 +2775,13 @@ class EndpointContext {
2773
2775
  //#region fields / entities triggers
2774
2776
  this.entitiesTriggers = {};
2775
2777
  //#endregion
2778
+ //#endregion
2779
+ //#region constructor
2780
+ /**
2781
+ * Inside docker there is not need for https secure server
2782
+ */
2783
+ this.isRunningInsideDocker = false;
2784
+ //#endregion
2776
2785
  //#region methods & getters / clone class
2777
2786
  this.cloneClassWithNewMetadata = ({ BaseClass, className, config, ctx, classType, }) => {
2778
2787
  // Return a new class that extends the base class
@@ -2868,6 +2877,7 @@ class EndpointContext {
2868
2877
  }
2869
2878
  return classes;
2870
2879
  };
2880
+ this.isRunningInsideDocker = UtilsOs.isRunningInDocker();
2871
2881
  }
2872
2882
  //#endregion
2873
2883
  //#region methods & getters / init
@@ -3089,6 +3099,14 @@ class EndpointContext {
3089
3099
  /* */
3090
3100
  /* */
3091
3101
  /* */
3102
+ /* */
3103
+ /* */
3104
+ /* */
3105
+ /* */
3106
+ /* */
3107
+ /* */
3108
+ /* */
3109
+ /* */
3092
3110
  }
3093
3111
  //#endregion
3094
3112
  //#region prepare realtime
@@ -3132,7 +3150,7 @@ class EndpointContext {
3132
3150
  console.log(`
3133
3151
 
3134
3152
 
3135
- IS RUNNING IN DOCKER: ${UtilsOs.isRunningInDocker()}
3153
+ IS RUNNING IN DOCKER: ${this.isRunningInsideDocker}
3136
3154
 
3137
3155
  `);
3138
3156
  /* */
@@ -3619,6 +3637,13 @@ class EndpointContext {
3619
3637
  }
3620
3638
  //#endregion
3621
3639
  //#region methods & getters / uri
3640
+ get frontendHostUri() {
3641
+ const url = this.config?.frontendHost?.startsWith('http')
3642
+ ? this.config.frontendHost
3643
+ : `${globalThis?.location?.protocol || 'http:'}//${this.config?.frontendHost}`;
3644
+ const uri = new URL(url.replace(/\/$/, ''));
3645
+ return uri;
3646
+ }
3622
3647
  get uri() {
3623
3648
  const url = this.host
3624
3649
  ? new URL(this.host)
@@ -3629,6 +3654,9 @@ class EndpointContext {
3629
3654
  }
3630
3655
  //#endregion
3631
3656
  get uriPort() {
3657
+ if (!this.uri?.origin?.includes('localhost')) {
3658
+ return this.config?.hostPortNumber?.toString();
3659
+ }
3632
3660
  return this.uri?.port;
3633
3661
  }
3634
3662
  get uriProtocol() {
@@ -3685,6 +3713,9 @@ class EndpointContext {
3685
3713
  return this.config.contextName;
3686
3714
  }
3687
3715
  //#endregion
3716
+ get activeContext() {
3717
+ return this.config.activeContext || null;
3718
+ }
3688
3719
  get appId() {
3689
3720
  return this.config.appId;
3690
3721
  }
@@ -3964,8 +3995,13 @@ class EndpointContext {
3964
3995
  const methodConfig = classConfig.methods[methodName];
3965
3996
  // debugger
3966
3997
  const type = methodConfig.type;
3998
+ // this is quick fix - in docker global path should not be used
3999
+ const globalPathPart = this.isRunningInsideDocker ||
4000
+ !this.frontendHostUri?.origin?.includes('localhost') // fe with domain -> is in docker
4001
+ ? `${this.uriPathnameOrNothingIfRoot.replace(/\/$/, '')}/${apiPrefix}/${this.contextName}`.replace(/\/\//, '/')
4002
+ : '';
3967
4003
  const expressPath = methodConfig.global
3968
- ? `/${methodConfig.path?.replace(/\//, '')}`
4004
+ ? `${globalPathPart}/${methodConfig.path?.replace(/\/$/, '')}`.replace(/\/\//, '/')
3969
4005
  : TaonHelpers.getExpressPath(classConfig, methodConfig);
3970
4006
  // console.log({ expressPath });
3971
4007
  if (Helpers.isNode || Helpers.isWebSQL) {
@@ -4866,6 +4902,11 @@ const createContextTemplate = (configFn) => {
4866
4902
  */
4867
4903
  const createContext = (configFn) => {
4868
4904
  let config = configFn({});
4905
+ // console.log(
4906
+ // `
4907
+ // [Taon] Creating context ${config.contextName}...`,
4908
+ // {config},
4909
+ // );
4869
4910
  const endpointContextRef = new EndpointContext(config, configFn);
4870
4911
  const res = {
4871
4912
  //#region types
@@ -4966,6 +5007,16 @@ const createContext = (configFn) => {
4966
5007
  return await new Promise(async (resolve, reject) => {
4967
5008
  //#region init in set timeout
4968
5009
  setTimeout(async () => {
5010
+ if (UtilsOs.isRunningInDocker()) {
5011
+ const activeContext = config?.activeContext || null;
5012
+ if (_.isString(activeContext) &&
5013
+ activeContext !== '' &&
5014
+ activeContext !== config?.contextName) {
5015
+ console.warn(`[taon] Context ${endpointContextRef.contextName} is not active context, skipping initialization.`);
5016
+ resolve(endpointContextRef);
5017
+ return;
5018
+ }
5019
+ }
4969
5020
  await endpointContextRef.init({
4970
5021
  ...overrideOptions,
4971
5022
  });