taon 21.0.3 → 21.0.6

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 (200) hide show
  1. package/browser/fesm2022/taon.mjs +1953 -1238
  2. package/browser/fesm2022/taon.mjs.map +1 -1
  3. package/browser/package.json +1 -1
  4. package/browser/types/taon.d.ts +2152 -0
  5. package/lib/base-classes/base-abstract-entity.d.ts +1 -1
  6. package/lib/base-classes/base-abstract-entity.js +12 -12
  7. package/lib/base-classes/base-abstract-entity.js.map +1 -1
  8. package/lib/base-classes/base-angular-service.d.ts +1 -1
  9. package/lib/base-classes/base-angular-service.js +6 -3
  10. package/lib/base-classes/base-angular-service.js.map +1 -1
  11. package/lib/base-classes/base-context.d.ts +2 -2
  12. package/lib/base-classes/base-controller.js +7 -1
  13. package/lib/base-classes/base-controller.js.map +1 -1
  14. package/lib/base-classes/base-crud-controller.js +52 -12
  15. package/lib/base-classes/base-crud-controller.js.map +1 -1
  16. package/lib/base-classes/base-entity.js +2 -6
  17. package/lib/base-classes/base-entity.js.map +1 -1
  18. package/lib/base-classes/base-repository.d.ts +3 -3
  19. package/lib/base-classes/base-repository.js +15 -10
  20. package/lib/base-classes/base-repository.js.map +1 -1
  21. package/lib/base-classes/base.d.ts +1 -46
  22. package/lib/base-classes/base.js +17 -30
  23. package/lib/base-classes/base.js.map +1 -1
  24. package/lib/build-info._auto-generated_.d.ts +1 -1
  25. package/lib/build-info._auto-generated_.js +1 -1
  26. package/lib/context-db-migrations.d.ts +2 -1
  27. package/lib/create-context.d.ts +4 -4
  28. package/lib/decorators/classes/entity-decorator.js +1 -1
  29. package/lib/decorators/classes/entity-decorator.js.map +1 -1
  30. package/lib/decorators/http/http-decorators.d.ts +1 -19
  31. package/lib/decorators/http/http-decorators.js +20 -22
  32. package/lib/decorators/http/http-decorators.js.map +1 -1
  33. package/lib/endpoint-context.d.ts +3 -2
  34. package/lib/formly/{formly-group-wrapper-component.d.ts → formly-group-wrapper.component.d.ts} +1 -1
  35. package/lib/formly/{formly-repeat-component.d.ts → formly-repeat.component.d.ts} +1 -1
  36. package/lib/formly/fromly.js +24 -24
  37. package/lib/formly/fromly.js.map +1 -1
  38. package/lib/index.d.ts +146 -45
  39. package/lib/index.js +166 -55
  40. package/lib/index.js.map +1 -1
  41. package/lib/orm/columns.d.ts +28 -0
  42. package/lib/orm/columns.js +102 -0
  43. package/lib/orm/columns.js.map +1 -0
  44. package/lib/orm/index.d.ts +1 -0
  45. package/lib/orm/index.js +73 -0
  46. package/lib/orm/index.js.map +1 -0
  47. package/lib/realtime/realtime-core.d.ts +1 -1
  48. package/lib/realtime/realtime-strategy/realtime-strategy-socket-io.d.ts +1 -2
  49. package/lib/realtime/realtime-strategy/realtime-strategy-socket-io.js.map +1 -1
  50. package/lib/realtime/realtime-strategy/realtime-strategy.d.ts +1 -1
  51. package/lib/realtime/realtime-subs-manager.d.ts +1 -1
  52. package/lib/symbols.d.ts +31 -31
  53. package/lib/symbols.js +59 -59
  54. package/lib/symbols.js.map +1 -1
  55. package/lib/ui/index.js +2 -2
  56. package/lib/ui/taon-admin-mode-configuration/index.js +2 -2
  57. package/package.json +1 -1
  58. package/websql/fesm2022/taon.mjs +1316 -648
  59. package/websql/fesm2022/taon.mjs.map +1 -1
  60. package/websql/package.json +1 -1
  61. package/websql/types/taon.d.ts +2161 -0
  62. package/browser/index.d.ts +0 -6
  63. package/browser/lib/base-classes/base-abstract-entity.d.ts +0 -8
  64. package/browser/lib/base-classes/base-angular-service.d.ts +0 -34
  65. package/browser/lib/base-classes/base-class.d.ts +0 -16
  66. package/browser/lib/base-classes/base-context.d.ts +0 -21
  67. package/browser/lib/base-classes/base-controller.d.ts +0 -83
  68. package/browser/lib/base-classes/base-crud-controller.d.ts +0 -29
  69. package/browser/lib/base-classes/base-custom-repository.d.ts +0 -4
  70. package/browser/lib/base-classes/base-entity.d.ts +0 -17
  71. package/browser/lib/base-classes/base-file-upload.middleware.d.ts +0 -15
  72. package/browser/lib/base-classes/base-injector.d.ts +0 -68
  73. package/browser/lib/base-classes/base-middleware.d.ts +0 -39
  74. package/browser/lib/base-classes/base-migration.d.ts +0 -12
  75. package/browser/lib/base-classes/base-provider.d.ts +0 -9
  76. package/browser/lib/base-classes/base-repository.d.ts +0 -267
  77. package/browser/lib/base-classes/base-subscriber-for-entity.d.ts +0 -82
  78. package/browser/lib/base-classes/base.d.ts +0 -47
  79. package/browser/lib/config/controller-config.d.ts +0 -22
  80. package/browser/lib/config/controller-options.d.ts +0 -17
  81. package/browser/lib/config/method-config.d.ts +0 -40
  82. package/browser/lib/config/param-config.d.ts +0 -9
  83. package/browser/lib/constants.d.ts +0 -10
  84. package/browser/lib/context-db-migrations.d.ts +0 -18
  85. package/browser/lib/create-context.d.ts +0 -79
  86. package/browser/lib/decorators/classes/controller-decorator.d.ts +0 -6
  87. package/browser/lib/decorators/classes/entity-decorator.d.ts +0 -20
  88. package/browser/lib/decorators/classes/middleware-decorator.d.ts +0 -8
  89. package/browser/lib/decorators/classes/migration-decorator.d.ts +0 -8
  90. package/browser/lib/decorators/classes/provider-decorator.d.ts +0 -8
  91. package/browser/lib/decorators/classes/repository-decorator.d.ts +0 -8
  92. package/browser/lib/decorators/classes/subscriber-decorator.d.ts +0 -9
  93. package/browser/lib/decorators/decorator-abstract-opt.d.ts +0 -4
  94. package/browser/lib/decorators/http/http-decorators.d.ts +0 -21
  95. package/browser/lib/decorators/http/http-methods-decorators.d.ts +0 -71
  96. package/browser/lib/decorators/http/http-params-decorators.d.ts +0 -9
  97. package/browser/lib/dependency-injection/di-container.d.ts +0 -6
  98. package/browser/lib/endpoint-context-storage.d.ts +0 -12
  99. package/browser/lib/endpoint-context.d.ts +0 -198
  100. package/browser/lib/entity-process.d.ts +0 -40
  101. package/browser/lib/get-response-value.d.ts +0 -7
  102. package/browser/lib/helpers/class-helpers.d.ts +0 -25
  103. package/browser/lib/helpers/clone-obj.d.ts +0 -2
  104. package/browser/lib/helpers/taon-helpers.d.ts +0 -19
  105. package/browser/lib/index.d.ts +0 -129
  106. package/browser/lib/inject.d.ts +0 -5
  107. package/browser/lib/models.d.ts +0 -257
  108. package/browser/lib/orm.d.ts +0 -3
  109. package/browser/lib/realtime/realtime-client.d.ts +0 -42
  110. package/browser/lib/realtime/realtime-core.d.ts +0 -41
  111. package/browser/lib/realtime/realtime-server.d.ts +0 -44
  112. package/browser/lib/realtime/realtime-strategy/index.d.ts +0 -5
  113. package/browser/lib/realtime/realtime-strategy/realtime-strategy-ipc.d.ts +0 -82
  114. package/browser/lib/realtime/realtime-strategy/realtime-strategy-mock.d.ts +0 -15
  115. package/browser/lib/realtime/realtime-strategy/realtime-strategy-socket-io.d.ts +0 -16
  116. package/browser/lib/realtime/realtime-strategy/realtime-strategy.d.ts +0 -12
  117. package/browser/lib/realtime/realtime-subs-manager.d.ts +0 -15
  118. package/browser/lib/realtime/realtime.models.d.ts +0 -28
  119. package/browser/lib/symbols.d.ts +0 -66
  120. package/browser/lib/ui/index.d.ts +0 -2
  121. package/browser/lib/ui/taon-admin-mode-configuration/index.d.ts +0 -2
  122. package/browser/lib/ui/taon-admin-mode-configuration/taon-admin.service.d.ts +0 -22
  123. package/browser/lib/validators.d.ts +0 -8
  124. package/browser/public-api.d.ts +0 -2
  125. package/lib/decorators/classes/controller-config.d.ts +0 -20
  126. package/lib/decorators/classes/controller-config.js +0 -21
  127. package/lib/decorators/classes/controller-config.js.map +0 -1
  128. package/lib/decorators/classes/controller-options.d.ts +0 -16
  129. package/lib/decorators/classes/controller-options.js +0 -20
  130. package/lib/decorators/classes/controller-options.js.map +0 -1
  131. package/lib/formly/formly-group-wrapper-component.js +0 -51
  132. package/lib/formly/formly-group-wrapper-component.js.map +0 -1
  133. package/lib/formly/formly-repeat-component.js +0 -95
  134. package/lib/formly/formly-repeat-component.js.map +0 -1
  135. package/lib/orm.d.ts +0 -68
  136. package/lib/orm.js +0 -112
  137. package/lib/orm.js.map +0 -1
  138. package/websql/index.d.ts +0 -6
  139. package/websql/lib/base-classes/base-abstract-entity.d.ts +0 -8
  140. package/websql/lib/base-classes/base-angular-service.d.ts +0 -34
  141. package/websql/lib/base-classes/base-class.d.ts +0 -16
  142. package/websql/lib/base-classes/base-context.d.ts +0 -21
  143. package/websql/lib/base-classes/base-controller.d.ts +0 -83
  144. package/websql/lib/base-classes/base-crud-controller.d.ts +0 -29
  145. package/websql/lib/base-classes/base-custom-repository.d.ts +0 -4
  146. package/websql/lib/base-classes/base-entity.d.ts +0 -17
  147. package/websql/lib/base-classes/base-file-upload.middleware.d.ts +0 -15
  148. package/websql/lib/base-classes/base-injector.d.ts +0 -68
  149. package/websql/lib/base-classes/base-middleware.d.ts +0 -39
  150. package/websql/lib/base-classes/base-migration.d.ts +0 -12
  151. package/websql/lib/base-classes/base-provider.d.ts +0 -9
  152. package/websql/lib/base-classes/base-repository.d.ts +0 -272
  153. package/websql/lib/base-classes/base-subscriber-for-entity.d.ts +0 -82
  154. package/websql/lib/base-classes/base.d.ts +0 -47
  155. package/websql/lib/config/controller-config.d.ts +0 -22
  156. package/websql/lib/config/controller-options.d.ts +0 -17
  157. package/websql/lib/config/method-config.d.ts +0 -40
  158. package/websql/lib/config/param-config.d.ts +0 -9
  159. package/websql/lib/constants.d.ts +0 -10
  160. package/websql/lib/context-db-migrations.d.ts +0 -18
  161. package/websql/lib/create-context.d.ts +0 -79
  162. package/websql/lib/decorators/classes/controller-decorator.d.ts +0 -6
  163. package/websql/lib/decorators/classes/entity-decorator.d.ts +0 -20
  164. package/websql/lib/decorators/classes/middleware-decorator.d.ts +0 -8
  165. package/websql/lib/decorators/classes/migration-decorator.d.ts +0 -8
  166. package/websql/lib/decorators/classes/provider-decorator.d.ts +0 -8
  167. package/websql/lib/decorators/classes/repository-decorator.d.ts +0 -8
  168. package/websql/lib/decorators/classes/subscriber-decorator.d.ts +0 -9
  169. package/websql/lib/decorators/decorator-abstract-opt.d.ts +0 -4
  170. package/websql/lib/decorators/http/http-decorators.d.ts +0 -21
  171. package/websql/lib/decorators/http/http-methods-decorators.d.ts +0 -71
  172. package/websql/lib/decorators/http/http-params-decorators.d.ts +0 -9
  173. package/websql/lib/dependency-injection/di-container.d.ts +0 -6
  174. package/websql/lib/endpoint-context-storage.d.ts +0 -12
  175. package/websql/lib/endpoint-context.d.ts +0 -200
  176. package/websql/lib/entity-process.d.ts +0 -40
  177. package/websql/lib/get-response-value.d.ts +0 -7
  178. package/websql/lib/helpers/class-helpers.d.ts +0 -25
  179. package/websql/lib/helpers/clone-obj.d.ts +0 -2
  180. package/websql/lib/helpers/taon-helpers.d.ts +0 -19
  181. package/websql/lib/index.d.ts +0 -129
  182. package/websql/lib/inject.d.ts +0 -5
  183. package/websql/lib/models.d.ts +0 -261
  184. package/websql/lib/orm.d.ts +0 -69
  185. package/websql/lib/realtime/realtime-client.d.ts +0 -42
  186. package/websql/lib/realtime/realtime-core.d.ts +0 -41
  187. package/websql/lib/realtime/realtime-server.d.ts +0 -44
  188. package/websql/lib/realtime/realtime-strategy/index.d.ts +0 -5
  189. package/websql/lib/realtime/realtime-strategy/realtime-strategy-ipc.d.ts +0 -82
  190. package/websql/lib/realtime/realtime-strategy/realtime-strategy-mock.d.ts +0 -15
  191. package/websql/lib/realtime/realtime-strategy/realtime-strategy-socket-io.d.ts +0 -16
  192. package/websql/lib/realtime/realtime-strategy/realtime-strategy.d.ts +0 -12
  193. package/websql/lib/realtime/realtime-subs-manager.d.ts +0 -15
  194. package/websql/lib/realtime/realtime.models.d.ts +0 -28
  195. package/websql/lib/symbols.d.ts +0 -66
  196. package/websql/lib/ui/index.d.ts +0 -2
  197. package/websql/lib/ui/taon-admin-mode-configuration/index.d.ts +0 -2
  198. package/websql/lib/ui/taon-admin-mode-configuration/taon-admin.service.d.ts +0 -22
  199. package/websql/lib/validators.d.ts +0 -8
  200. package/websql/public-api.d.ts +0 -2
@@ -1,257 +0,0 @@
1
- // @ts-nocheck
2
- import { Response as ExpressResponse, Request as ExpressRequest } from 'express';
3
- import { Models as ModelsNg2Rest, RestResponseWrapper } from 'ng2-rest/browser';
4
- import { CoreModels } from 'tnp-core/browser';
5
- import type { EndpointContext } from './endpoint-context';
6
- export declare class TaonRestResponseWrapper extends RestResponseWrapper {
7
- }
8
- export declare const BaseTaonClassesNames: readonly ["BaseCrudController", "BaseController", "BaseAbstractEntity", "BaseEntity", "BaseContext", "BaseCustomRepository", "BaseFileUploadMiddleware", "BaseMiddleware", "BaseClass", "BaseInjector", "BaseMigration", "BaseProvider", "BaseRepository", "BaseSubscriberForEntity", "BaseCliWorkerController", "PortsController", "PortsContext"];
9
- export declare const TaonTempDatabasesFolder = "databases";
10
- export declare const TaonTempRoutesFolder = "routes";
11
- export declare namespace Models {
12
- const DatabasesFolder = "databases";
13
- type FrameworkMode = 'backend-frontend(tcp+udp)' | 'remote-backend(tcp+udp)' | 'backend-frontend(ipc-electron)' | 'backend-frontend(websql-electron)' | 'backend-frontend(websql)';
14
- enum ClassType {
15
- ENTITY = "ENTITY",
16
- CONTROLLER = "CONTROLLER",
17
- REPOSITORY = "REPOSITORY",
18
- PROVIDER = "PROVIDER",
19
- SUBSCRIBER = "SUBSCRIBER",
20
- MIGRATION = "MIGRATION",
21
- MIDDLEWARE = "MIDDLEWARE"
22
- }
23
- const ClassTypeKey: { [key in ClassType]: keyof ContextOptions<any, any, any, any, any, any, any, any>; };
24
- type MiddlewareType = [Function, any[]];
25
- /**
26
- * DROP_DB+MIGRATIONS (default for development)
27
- * Drop all tables + recreate them + run migrations
28
- * synchronize: true , dropSchema: true
29
- * use migrations: true
30
- *
31
- * MIGRATIONS (default for production)
32
- * Do not drop tables, only run migrations
33
- * synchronize: false, dropSchema: false
34
- * use migrations: true
35
- */
36
- type DBRecreateMode = 'DROP_DB+MIGRATIONS' | 'PRESERVE_DATA+MIGRATIONS';
37
- class DatabaseConfigTypeOrm {
38
- /**
39
- * database name
40
- */
41
- database?: string;
42
- /**
43
- * only for file base db: sqlite, sqljs
44
- */
45
- location?: string;
46
- synchronize: boolean;
47
- dropSchema: boolean;
48
- type?: CoreModels.DatabaseType;
49
- /**
50
- * Persists db on disk/local-storage if serverless db
51
- */
52
- autoSave?: boolean;
53
- /**
54
- * for websql db mode
55
- * true by default
56
- */
57
- useLocalForage?: boolean;
58
- logging: boolean;
59
- databasePort?: number;
60
- databaseHost?: string;
61
- databaseUsername?: string;
62
- databasePassword?: string;
63
- }
64
- class DatabaseConfig extends DatabaseConfigTypeOrm {
65
- /**
66
- * Default value 'DROP_ALL'.
67
- *
68
- * Tell framework what is happening with db
69
- * when context is starting.
70
- */
71
- recreateMode?: DBRecreateMode;
72
- static from(databasePartialConfig: Partial<Omit<DatabaseConfig, 'synchronize' | 'dropSchema' | 'databaseConfigTypeORM'>>): DatabaseConfig;
73
- get databaseConfigTypeORM(): DatabaseConfigTypeOrm;
74
- }
75
- type ISession = {
76
- secret?: string;
77
- saveUninitialized?: boolean;
78
- /**
79
- * max age of session
80
- */
81
- cookieMaxAge?: number;
82
- secure?: boolean;
83
- resave?: boolean;
84
- };
85
- type ConnectionOptionsLogs = {
86
- http?: boolean;
87
- realtime?: boolean;
88
- framework?: boolean;
89
- db?: boolean;
90
- migrations?: boolean;
91
- routes?: boolean;
92
- };
93
- interface ContextOptions<CONTEXTS, CONTROLLERS, ENTITIES, REPOSITORIES, PROVIDERS, SUBSCRIBERS, MIGRATIONS, MIDDLEWARES> {
94
- appId?: string;
95
- contextName: string;
96
- /**
97
- * if defined and different from contextName
98
- * - context will NOT be initialized
99
- */
100
- activeContext?: string | null;
101
- /**
102
- * IMPORTANT! provide full url that starts with http:// or https://
103
- * host/port for initing backend server
104
- */
105
- host?: string;
106
- /**
107
- * Needs to be specified in docker environment only
108
- */
109
- hostPortNumber?: number;
110
- /**
111
- * IMPORTANT! provide full url that starts with http:// or https://
112
- * frontend host only needed when we are
113
- * using withCredentials for axios
114
- * and session cookie
115
- * or realtime communication
116
- */
117
- frontendHost?: string;
118
- /**
119
- * Needs to be specified in docker environment only
120
- */
121
- frontendHostPortNumber?: number;
122
- /**
123
- * User ipc for communication between BE/FE
124
- * when electron is used as a platform
125
- * Default: true
126
- */
127
- useIpcWhenElectron?: boolean;
128
- /**
129
- * taon contexts here
130
- * (module like structure)
131
- */
132
- contexts?: CONTEXTS;
133
- /**
134
- * taon controller here
135
- * (glue between frontend and backend)
136
- */
137
- controllers?: CONTROLLERS;
138
- /**
139
- * taon entities
140
- * (entities are used to create tables in db)
141
- */
142
- entities?: ENTITIES;
143
- /**
144
- * taon repositories
145
- * (repositories are used to access data from db)
146
- */
147
- repositories?: REPOSITORIES;
148
- /**
149
- * taon providers
150
- * (context singletons)
151
- */
152
- providers?: PROVIDERS;
153
- /**
154
- * taon subscribers
155
- * (subscribers are used to listen to db events)
156
- */
157
- subscribers?: SUBSCRIBERS;
158
- /**
159
- * taon migrations
160
- * (migrations are used to update db schema and achieve proper CI/CD)
161
- */
162
- migrations?: MIGRATIONS;
163
- /**
164
- * taon middlewares
165
- * middlewares are used to intercept requests
166
- * and responses in the context
167
- */
168
- middlewares?: MIDDLEWARES;
169
- /**
170
- * Config for express session
171
- */
172
- session?: ISession;
173
- /**
174
- * taon is not going to write .rest files to cwd()
175
- */
176
- skipWritingServerRoutes?: boolean;
177
- /**
178
- * TODO - this is still in progress
179
- * @deprecated
180
- */
181
- productionMode?: boolean;
182
- /**
183
- * If you want your context to never be started as separated server
184
- * use abstract: true
185
- * @default: false
186
- */
187
- abstract?: boolean;
188
- logs?: boolean | ConnectionOptionsLogs;
189
- database?: boolean | Partial<DatabaseConfig>;
190
- /**
191
- * disable default realtime communication through TCP upgrade sockets
192
- */
193
- disabledRealtime?: boolean;
194
- /**
195
- * Will be removed soon - cloud will handle certs and https
196
- * @deprecated
197
- */
198
- https?: {
199
- key: string;
200
- cert: string;
201
- };
202
- /**
203
- * TODO - will be removed soon
204
- * @deprecated
205
- */
206
- publicAssets?: {
207
- serverPath: string;
208
- locationOnDisk: string;
209
- }[];
210
- /**
211
- * by default cwd === process.cwd()
212
- */
213
- cwd?: string;
214
- }
215
- namespace Http {
216
- export import Rest = ModelsNg2Rest;
217
- type ContextENDPOINT = {
218
- target: Function;
219
- initFN: Function;
220
- };
221
- type FormlyFromType = 'material' | 'bootstrap';
222
- type ExpressContext<T> = (req: ExpressRequest, res: ExpressResponse) => T;
223
- type SyncResponse<T> = string | T;
224
- type ResponseFuncOpt<T> = {
225
- limitSize?: (enties: Function | Function[], include: string[], exclude: string[]) => void;
226
- };
227
- type SyncResponseFunc<T> = (options?: ResponseFuncOpt<T>) => SyncResponse<T>;
228
- type MixResponse<T> = SyncResponse<T> | ExpressContext<T>;
229
- interface ClientAction<T> {
230
- /**
231
- * @deprecated use request() mehods instead
232
- */
233
- readonly received?: Rest.PromiseObservableMix<Rest.HttpResponse<T>>;
234
- request?(axiosConfig?: ModelsNg2Rest.Ng2RestAxiosRequestConfig): Rest.PromiseObservableMix<Rest.HttpResponse<T>>;
235
- }
236
- interface AsyncResponse<T> {
237
- (req?: ExpressRequest, res?: ExpressResponse): Promise<SyncResponse<T> | SyncResponseFunc<T>>;
238
- }
239
- type Response<T = string> = AsyncResponse<T> & ClientAction<T>;
240
- }
241
- interface StartParams {
242
- port: number;
243
- args: string[];
244
- onlyMigrationRun?: boolean;
245
- onlyMigrationRevertToTimestamp?: number;
246
- }
247
- interface TaonInitializeParams {
248
- onlyMigrationRun?: boolean;
249
- onlyMigrationRevertToTimestamp?: number;
250
- }
251
- interface TaonCtxCloneParams {
252
- useAsRemoteContext?: boolean;
253
- overrideRemoteHost?: string;
254
- overrideHost?: string;
255
- sourceContext?: EndpointContext;
256
- }
257
- }
@@ -1,3 +0,0 @@
1
- // @ts-nocheck
2
- export declare namespace Orm {
3
- }
@@ -1,42 +0,0 @@
1
- // @ts-nocheck
2
- import { Observable } from 'rxjs';
3
- import { RealtimeCore } from './realtime-core';
4
- import { RealtimeModels } from './realtime.models';
5
- /**
6
- * Client for realtime communication
7
- * you can listen to:
8
- * - entity changes (any property in table changed)
9
- * - entity custom property changes (specific property changed)
10
- * - entity table changes (new instance added, instance removed)
11
- * - custom events
12
- */
13
- export declare class RealtimeClient {
14
- private core;
15
- private subsManagers;
16
- constructor(core: RealtimeCore);
17
- private init;
18
- /**
19
- * Usage:
20
- * myContext.realtimeClient.listenChangesEntity(myEntityInstance);
21
- *
22
- *
23
- * Changes trigger on backend needs to be done manually.. example code:
24
- *
25
- * myContext.realtimeServer.triggerEntityChanges(myEntityInstance);
26
- * ...
27
- */
28
- listenChangesEntity<RESULT = any>(entityClassFnOrObj: Function | object, options?: RealtimeModels.ChangeOption): Observable<RESULT>;
29
- /**
30
- * Listen changes entity table
31
- * Example: for pagination, lists update ...
32
- */
33
- listenChangesEntityTable<RESULT = any>(entityClassFn: Function): Observable<RESULT>;
34
- listenChangesCustomEvent<RESULT = any>(customEvent: string): Observable<RESULT>;
35
- /**
36
- * Trigger custom event on backend
37
- * @param customEvent global event name
38
- * @param dataToPush
39
- */
40
- triggerCustomEvent(customEvent: string, dataToPush?: any): void;
41
- private getUniqueIdentifierForConnection;
42
- }
@@ -1,41 +0,0 @@
1
- // @ts-nocheck
2
- import { Server } from 'socket.io';
3
- import { DefaultEventsMap } from 'socket.io/dist/typed-events';
4
- import { Socket as SocketClient } from 'socket.io-client';
5
- import type { EndpointContext } from '../endpoint-context';
6
- import { RealtimeClient } from './realtime-client';
7
- import { RealtimeServer } from './realtime-server';
8
- import type { RealtimeStrategy } from './realtime-strategy';
9
- /**
10
- * Realtime class
11
- * - mock (when browser-browser)
12
- * - sockets (from socket io when backend-browser)
13
- * - ipc (when electron is used or between processes)
14
- * - webworker (when webworker is used in browser or nodejs)
15
- */
16
- export declare class RealtimeCore {
17
- ctx: EndpointContext;
18
- readonly allHttpMethods: string[];
19
- readonly client: RealtimeClient;
20
- readonly server: RealtimeServer;
21
- readonly strategy: RealtimeStrategy;
22
- /**
23
- * global FE socket - only for established connection
24
- */
25
- conectSocketFE: SocketClient<DefaultEventsMap, DefaultEventsMap>;
26
- /**
27
- * socket for namespaces and rooms
28
- */
29
- socketFE: SocketClient<DefaultEventsMap, DefaultEventsMap>;
30
- /**
31
- * global BE socket - only for established connection
32
- */
33
- connectSocketBE: Server<DefaultEventsMap, DefaultEventsMap, DefaultEventsMap, any>;
34
- /**
35
- * socket for namespaces and rooms
36
- */
37
- socketBE: Server<DefaultEventsMap, DefaultEventsMap, DefaultEventsMap, any>;
38
- constructor(ctx: EndpointContext);
39
- private resolveStrategy;
40
- pathFor(namespace?: string): URL;
41
- }
@@ -1,44 +0,0 @@
1
- // @ts-nocheck
2
- import { Observable } from 'rxjs';
3
- import { RealtimeCore } from './realtime-core';
4
- /**
5
- * Server for realtime communication
6
- * you can trigger:
7
- * - entity changes (any property in table changed)
8
- * - entity custom property changes (specific property changed)
9
- * - entity table changes (new instance added, instance removed)
10
- * - custom events
11
- *
12
- * and also listen to:
13
- * - custom events from yourself
14
- */
15
- export declare class RealtimeServer {
16
- private core;
17
- constructor(core: RealtimeCore);
18
- private init;
19
- private triggerChanges;
20
- triggerEntityChanges(entityObjOrClass: Function | object,
21
- /**
22
- * value of unique key property of entity instance
23
- * (this value is not needed if entityObjOrClass is instance of entity)
24
- */
25
- idToTrigger?: number | string): void;
26
- triggerEntityPropertyChanges(entityObjOrClass: Function | object,
27
- /**
28
- * property name or array of property names that changed
29
- * for entity instance
30
- */
31
- property: string | string[],
32
- /**
33
- * value of unique key property of entity instance
34
- * (this value is not needed if entityObjOrClass is instance of entity)
35
- */
36
- idToTrigger?: number | string): void;
37
- triggerEntityTableChanges(entityClassOrInstance: Function | object): void;
38
- triggerCustomEvent(customEvent: string, dataToPush: any): void;
39
- /**
40
- * Listen to custom events from users
41
- * @param customEvent global event name
42
- */
43
- listenChangesCustomEvent(customEvent: string): Observable<any>;
44
- }
@@ -1,5 +0,0 @@
1
- // @ts-nocheck
2
- export * from './realtime-strategy';
3
- export * from './realtime-strategy-ipc';
4
- export * from './realtime-strategy-mock';
5
- export * from './realtime-strategy-socket-io';
@@ -1,82 +0,0 @@
1
- // @ts-nocheck
2
- import type { ipcRenderer } from 'electron';
3
- import { ServerOptions } from 'socket.io';
4
- import { EndpointContext } from '../../endpoint-context';
5
- import { RealtimeModels } from '../realtime.models';
6
- import { RealtimeStrategy } from './realtime-strategy';
7
- export declare class MockServerIpc {
8
- contextName: string;
9
- static serverByContextName: Map<string, MockServerIpc>;
10
- static from(contextName: string): MockServerIpc;
11
- namespacesByName: Map<string, MockNamespaceIpc>;
12
- constructor(contextName: string);
13
- of(namespace: string): MockNamespaceIpc;
14
- }
15
- export declare class MockNamespaceIpc {
16
- /**
17
- * Namespace name
18
- */
19
- name: string;
20
- server: MockServerIpc;
21
- electronClients: Set<Electron.WebContents>;
22
- roomsByRoomName: {
23
- [roomName: string]: Set<Electron.WebContents>;
24
- };
25
- private namespaceEventHandlers;
26
- constructor(
27
- /**
28
- * Namespace name
29
- */
30
- name: string, server: MockServerIpc);
31
- on(eventName: string, callback: RealtimeModels.EventHandler): any;
32
- off(event: string, callback?: RealtimeModels.EventHandler): any;
33
- emit(eventName: string, ...args: any[]): any;
34
- to(roomName: string): RoomEmitterIpc;
35
- in(roomName: string): RoomEmitterIpc;
36
- join(webContents: Electron.WebContents, roomName: string): void;
37
- leave(webContents: Electron.WebContents, roomName: string): void;
38
- path(): string;
39
- get nsp(): {
40
- readonly name: string;
41
- };
42
- }
43
- declare class RoomEmitterIpc {
44
- private electronClients;
45
- /**
46
- * namespace name
47
- */
48
- private name;
49
- private includeSender;
50
- private sender;
51
- constructor(electronClients: Set<Electron.WebContents>,
52
- /**
53
- * namespace name
54
- */
55
- name: string, includeSender?: boolean, sender?: MockSocketIpc);
56
- emit(eventName: string, ...args: any[]): void;
57
- }
58
- export declare class MockSocketIpc {
59
- namespaceName: string;
60
- ipcRenderer: typeof ipcRenderer;
61
- private socketEventHandlers;
62
- get name(): string;
63
- /**
64
- * @param namespaceName instead url for ipc
65
- */
66
- constructor(namespaceName: string);
67
- on(eventName: string, callback: (event: any, ...args: any[]) => void): void;
68
- off(event: string, callback?: (event: any, ...args: any[]) => void): void;
69
- emit(event: string, ...args: any[]): void;
70
- }
71
- /**
72
- * Purpose:
73
- * - backend-browser communication between 2 processes in electron mode
74
- */
75
- export declare class RealtimeStrategyIpc extends RealtimeStrategy {
76
- protected ctx: EndpointContext;
77
- toString(): string;
78
- constructor(ctx: EndpointContext);
79
- ioServer(__: string, opt: ServerOptions): any;
80
- get ioClient(): any;
81
- }
82
- export {};
@@ -1,15 +0,0 @@
1
- // @ts-nocheck
2
- import type { EndpointContext } from '../../endpoint-context';
3
- import { RealtimeStrategy } from './realtime-strategy';
4
- import { ServerOptions } from 'socket.io';
5
- /**
6
- * Purpose:
7
- * - browser-browser communication mock (in websql mode)
8
- */
9
- export declare class RealtimeStrategyMock extends RealtimeStrategy {
10
- protected ctx: EndpointContext;
11
- toString(): string;
12
- constructor(ctx: EndpointContext);
13
- ioServer(url: string, opt: ServerOptions): any;
14
- get ioClient(): any;
15
- }
@@ -1,16 +0,0 @@
1
- // @ts-nocheck
2
- import { EndpointContext } from '../../endpoint-context';
3
- import { RealtimeStrategy } from './realtime-strategy';
4
- import { io } from 'socket.io-client';
5
- /**
6
- * Purpose:
7
- * - backend-browser communication
8
- * - backend-backend communication
9
- */
10
- export declare class RealtimeStrategySocketIO extends RealtimeStrategy {
11
- protected ctx: EndpointContext;
12
- toString(): string;
13
- constructor(ctx: EndpointContext);
14
- ioServer(...args: any[]): any;
15
- get ioClient(): typeof io;
16
- }
@@ -1,12 +0,0 @@
1
- // @ts-nocheck
2
- import { EndpointContext } from '../../endpoint-context';
3
- import type { Server, ServerOptions } from 'socket.io';
4
- import type { io } from 'socket.io-client';
5
- import { DefaultEventsMap } from 'socket.io/dist/typed-events';
6
- export declare abstract class RealtimeStrategy {
7
- protected ctx: EndpointContext;
8
- constructor(ctx: EndpointContext);
9
- get ioClient(): typeof io;
10
- ioServer(url: string, opt: ServerOptions): Server<DefaultEventsMap, DefaultEventsMap, DefaultEventsMap, any>;
11
- abstract toString(): string;
12
- }
@@ -1,15 +0,0 @@
1
- // @ts-nocheck
2
- import { Subscriber } from 'rxjs';
3
- import { Socket as SocketClient } from 'socket.io-client';
4
- import { DefaultEventsMap } from 'socket.io/dist/typed-events';
5
- import { RealtimeModels } from './realtime.models';
6
- export declare class RealtimeSubsManager {
7
- private options;
8
- private isListening;
9
- private observers;
10
- constructor(options: RealtimeModels.SubsManagerOpt);
11
- startListenIfNotStarted(realtime: SocketClient<DefaultEventsMap, DefaultEventsMap>): void;
12
- add(observer: Subscriber<any>): void;
13
- remove(observer: Subscriber<any>): void;
14
- private update;
15
- }
@@ -1,28 +0,0 @@
1
- // @ts-nocheck
2
- import type { RealtimeCore } from './realtime-core';
3
- export declare namespace RealtimeModels {
4
- type SubsManagerOpt = {
5
- core: RealtimeCore;
6
- customEvent: string;
7
- roomName: string;
8
- property: string;
9
- };
10
- interface ChangeOption {
11
- /**
12
- * Specify property name to listen changes on that property only;
13
- */
14
- property?: string;
15
- /**
16
- * Override custom event name to listen
17
- */
18
- customEvent?: string;
19
- /**
20
- * Value from entity object.
21
- * Key for this value is usually id or unique key
22
- * property defined in entity decorator.
23
- * TODO @LAST IMPLEMENT unique key support
24
- */
25
- idOrUniqValue?: any;
26
- }
27
- type EventHandler = (...args: any[]) => void;
28
- }
@@ -1,66 +0,0 @@
1
- // @ts-nocheck
2
- export declare namespace Symbols {
3
- export const ctxInClassOrClassObj: unique symbol;
4
- export const classNameStaticProperty: string;
5
- export const fullClassNameStaticProperty: string;
6
- export const orignalClass: string;
7
- export const orignalClassClonesObj: string;
8
- export const classMethodsNames: string;
9
- /**
10
- * for backendSocket.in(ROOM_NAME).emit(EVENT)
11
- *
12
- * Room names are uniqe..
13
- * here I am limiting number of event for clients.
14
- */
15
- class Realtime {
16
- NAMESPACE(contextName: string): string;
17
- TABLE_CHANGE(contextName: string, tableName: string): string;
18
- readonly KEYroomSubscribe = "roomSubscribe";
19
- readonly KEYroomUnsubscribe = "roomUnsubscribe";
20
- ROOM_NAME_CUSTOM(contextName: string, customEvent: string): string;
21
- ROOM_SUBSCRIBE_CUSTOM(contextName: string): string;
22
- ROOM_UNSUBSCRIBE_CUSTOM(contextName: string): string;
23
- ROOM_NAME_UPDATE_ENTITY(contextName: string, className: string, entityId: number | string): string;
24
- ROOM_SUBSCRIBE_ENTITY_UPDATE_EVENTS(contextName: string): string;
25
- ROOM_UNSUBSCRIBE_ENTITY_UPDATE_EVENTS(contextName: string): string;
26
- ROOM_NAME_UPDATE_ENTITY_PROPERTY(contextName: string, className: string, property: string, entityId: number | string): string;
27
- ROOM_SUBSCRIBE_ENTITY_PROPERTY_UPDATE_EVENTS(contextName: string): string;
28
- ROOM_UNSUBSCRIBE_ENTITY_PROPERTY_UPDATE_EVENTS(contextName: string): string;
29
- }
30
- export const REALTIME: Realtime;
31
- export const metadata: {
32
- className: string;
33
- options: {
34
- controller: string;
35
- entity: string;
36
- repository: string;
37
- provider: string;
38
- subscriber: string;
39
- migration: string;
40
- };
41
- };
42
- export const old: {
43
- HAS_TABLE_IN_DB: symbol;
44
- MDC_KEY: string;
45
- WEBSQL_REST_PROGRESS_FUN: symbol;
46
- WEBSQL_REST_PROGRESS_FUN_START: symbol;
47
- WEBSQL_REST_PROGRESS_FUN_DONE: symbol;
48
- WEBSQL_REST_PROGRESS_TIMEOUT: symbol;
49
- X_TOTAL_COUNT: string;
50
- CIRCURAL_OBJECTS_MAP_BODY: string;
51
- CIRCURAL_OBJECTS_MAP_QUERY_PARAM: string;
52
- MAPPING_CONFIG_HEADER: string;
53
- MAPPING_CONFIG_HEADER_BODY_PARAMS: string;
54
- MAPPING_CONFIG_HEADER_QUERY_PARAMS: string;
55
- ENDPOINT_META_CONFIG: string;
56
- CLASS_DECORATOR_CONTEXT: string;
57
- SOCKET_MSG: string;
58
- ANGULAR: {
59
- INPUT_NAMES: symbol;
60
- };
61
- ERROR_MESSAGES: {
62
- CLASS_NAME_MATCH: string;
63
- };
64
- };
65
- export {};
66
- }
@@ -1,2 +0,0 @@
1
- // @ts-nocheck
2
- export * from './taon-admin-mode-configuration';
@@ -1,2 +0,0 @@
1
- // @ts-nocheck
2
- export * from './taon-admin.service';
@@ -1,22 +0,0 @@
1
- // @ts-nocheck
2
- export declare class TaonAdminService {
3
- private static _instance;
4
- static get Instance(): TaonAdminService;
5
- scrollableEnabled: boolean;
6
- private onEditMode;
7
- onEditMode$: import("rxjs").Observable<unknown>;
8
- adminPanelIsOpen: boolean;
9
- draggablePopupMode: boolean;
10
- draggablePopupModeFullScreen: boolean;
11
- /**
12
- * Property used in taon
13
- */
14
- keepWebsqlDbDataAfterReload: boolean;
15
- constructor();
16
- setEditMode(value: boolean): void;
17
- setKeepWebsqlDbDataAfterReload(value: boolean): void;
18
- enabledTabs: any[];
19
- hide(): void;
20
- show(): void;
21
- logout(): void;
22
- }
@@ -1,8 +0,0 @@
1
- // @ts-nocheck
2
- import { MethodConfig } from './config/method-config';
3
- export declare namespace Validators {
4
- const classNameVlidation: (className: any, target: Function) => any;
5
- const checkIfMethodsWithReponseTYpeAlowed: (methods: MethodConfig[], current: MethodConfig) => void;
6
- const validateClassFunctions: (controllers: any[], entities: any[], proviers: any[], repositories: any[]) => void;
7
- const preventUndefinedModel: (model: any, id: any) => void;
8
- }