@microzord/core 1.0.0 → 2.2.0

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 (138) hide show
  1. package/LICENSE +190 -0
  2. package/README.md +19 -9
  3. package/esm2022/index.mjs +16 -0
  4. package/esm2022/lib/helpers/bootstrap-app.mjs +6 -0
  5. package/esm2022/lib/helpers/construct-and-bootstrap-app.mjs +7 -0
  6. package/esm2022/lib/helpers/construct-app.mjs +7 -0
  7. package/esm2022/lib/helpers/get-app.mjs +5 -0
  8. package/esm2022/lib/helpers/get-entity.mjs +6 -0
  9. package/esm2022/lib/helpers/load-app.mjs +11 -0
  10. package/esm2022/lib/helpers/load-entity.mjs +24 -0
  11. package/esm2022/lib/helpers/register-app.mjs +5 -0
  12. package/esm2022/lib/helpers/register-entity.mjs +5 -0
  13. package/esm2022/lib/helpers/replace-apps.mjs +9 -0
  14. package/esm2022/lib/models/application.mjs +59 -0
  15. package/esm2022/lib/models/default-props-type.mjs +2 -0
  16. package/esm2022/lib/models/entity.mjs +2 -0
  17. package/esm2022/lib/models/events.mjs +23 -0
  18. package/esm2022/lib/models/lifecycle.mjs +26 -0
  19. package/esm2022/lib/models/registration-options.mjs +2 -0
  20. package/esm2022/lib/registry.mjs +17 -0
  21. package/esm2022/microzord-core.mjs +5 -0
  22. package/{fesm2015/microzord-core.js → fesm2022/microzord-core.mjs} +21 -31
  23. package/fesm2022/microzord-core.mjs.map +1 -0
  24. package/index.d.ts +2 -1
  25. package/index.d.ts.map +1 -0
  26. package/lib/helpers/bootstrap-app.d.ts +4 -3
  27. package/lib/helpers/bootstrap-app.d.ts.map +1 -0
  28. package/lib/helpers/construct-and-bootstrap-app.d.ts +4 -3
  29. package/lib/helpers/construct-and-bootstrap-app.d.ts.map +1 -0
  30. package/lib/helpers/construct-app.d.ts +3 -2
  31. package/lib/helpers/construct-app.d.ts.map +1 -0
  32. package/lib/helpers/get-app.d.ts +5 -3
  33. package/lib/helpers/get-app.d.ts.map +1 -0
  34. package/lib/helpers/get-entity.d.ts +3 -2
  35. package/lib/helpers/get-entity.d.ts.map +1 -0
  36. package/lib/helpers/load-app.d.ts +5 -3
  37. package/lib/helpers/load-app.d.ts.map +1 -0
  38. package/lib/helpers/load-entity.d.ts +3 -2
  39. package/lib/helpers/load-entity.d.ts.map +1 -0
  40. package/lib/helpers/register-app.d.ts +4 -2
  41. package/lib/helpers/register-app.d.ts.map +1 -0
  42. package/lib/helpers/register-entity.d.ts +2 -1
  43. package/lib/helpers/register-entity.d.ts.map +1 -0
  44. package/lib/helpers/replace-apps.d.ts +5 -3
  45. package/lib/helpers/replace-apps.d.ts.map +1 -0
  46. package/lib/models/application.d.ts +9 -7
  47. package/lib/models/application.d.ts.map +1 -0
  48. package/lib/models/default-props-type.d.ts +2 -0
  49. package/lib/models/default-props-type.d.ts.map +1 -0
  50. package/lib/models/entity.d.ts +1 -0
  51. package/lib/models/entity.d.ts.map +1 -0
  52. package/lib/models/events.d.ts +3 -2
  53. package/lib/models/events.d.ts.map +1 -0
  54. package/lib/models/lifecycle.d.ts +1 -0
  55. package/lib/models/lifecycle.d.ts.map +1 -0
  56. package/lib/models/registration-options.d.ts +5 -3
  57. package/lib/models/registration-options.d.ts.map +1 -0
  58. package/lib/registry.d.ts +4 -4
  59. package/lib/registry.d.ts.map +1 -0
  60. package/microzord-core.d.ts.map +1 -0
  61. package/package.json +32 -25
  62. package/bundles/microzord-core-testing.umd.js +0 -494
  63. package/bundles/microzord-core-testing.umd.js.map +0 -1
  64. package/bundles/microzord-core.umd.js +0 -713
  65. package/bundles/microzord-core.umd.js.map +0 -1
  66. package/esm2015/index.js +0 -16
  67. package/esm2015/index.js.map +0 -1
  68. package/esm2015/index.metadata.json +0 -1
  69. package/esm2015/lib/helpers/bootstrap-app.js +0 -6
  70. package/esm2015/lib/helpers/bootstrap-app.js.map +0 -1
  71. package/esm2015/lib/helpers/bootstrap-app.metadata.json +0 -1
  72. package/esm2015/lib/helpers/construct-and-bootstrap-app.js +0 -7
  73. package/esm2015/lib/helpers/construct-and-bootstrap-app.js.map +0 -1
  74. package/esm2015/lib/helpers/construct-and-bootstrap-app.metadata.json +0 -1
  75. package/esm2015/lib/helpers/construct-app.js +0 -10
  76. package/esm2015/lib/helpers/construct-app.js.map +0 -1
  77. package/esm2015/lib/helpers/construct-app.metadata.json +0 -1
  78. package/esm2015/lib/helpers/get-app.js +0 -5
  79. package/esm2015/lib/helpers/get-app.js.map +0 -1
  80. package/esm2015/lib/helpers/get-app.metadata.json +0 -1
  81. package/esm2015/lib/helpers/get-entity.js +0 -6
  82. package/esm2015/lib/helpers/get-entity.js.map +0 -1
  83. package/esm2015/lib/helpers/get-entity.metadata.json +0 -1
  84. package/esm2015/lib/helpers/load-app.js +0 -11
  85. package/esm2015/lib/helpers/load-app.js.map +0 -1
  86. package/esm2015/lib/helpers/load-app.metadata.json +0 -1
  87. package/esm2015/lib/helpers/load-entity.js +0 -24
  88. package/esm2015/lib/helpers/load-entity.js.map +0 -1
  89. package/esm2015/lib/helpers/load-entity.metadata.json +0 -1
  90. package/esm2015/lib/helpers/register-app.js +0 -5
  91. package/esm2015/lib/helpers/register-app.js.map +0 -1
  92. package/esm2015/lib/helpers/register-app.metadata.json +0 -1
  93. package/esm2015/lib/helpers/register-entity.js +0 -5
  94. package/esm2015/lib/helpers/register-entity.js.map +0 -1
  95. package/esm2015/lib/helpers/register-entity.metadata.json +0 -1
  96. package/esm2015/lib/helpers/replace-apps.js +0 -9
  97. package/esm2015/lib/helpers/replace-apps.js.map +0 -1
  98. package/esm2015/lib/helpers/replace-apps.metadata.json +0 -1
  99. package/esm2015/lib/models/application.js +0 -63
  100. package/esm2015/lib/models/application.js.map +0 -1
  101. package/esm2015/lib/models/application.metadata.json +0 -1
  102. package/esm2015/lib/models/entity.js +0 -2
  103. package/esm2015/lib/models/entity.js.map +0 -1
  104. package/esm2015/lib/models/entity.metadata.json +0 -1
  105. package/esm2015/lib/models/events.js +0 -21
  106. package/esm2015/lib/models/events.js.map +0 -1
  107. package/esm2015/lib/models/events.metadata.json +0 -1
  108. package/esm2015/lib/models/lifecycle.js +0 -26
  109. package/esm2015/lib/models/lifecycle.js.map +0 -1
  110. package/esm2015/lib/models/lifecycle.metadata.json +0 -1
  111. package/esm2015/lib/models/registration-options.js +0 -2
  112. package/esm2015/lib/models/registration-options.js.map +0 -1
  113. package/esm2015/lib/models/registration-options.metadata.json +0 -1
  114. package/esm2015/lib/registry.js +0 -22
  115. package/esm2015/lib/registry.js.map +0 -1
  116. package/esm2015/lib/registry.metadata.json +0 -1
  117. package/esm2015/microzord-core.js +0 -6
  118. package/esm2015/microzord-core.js.map +0 -1
  119. package/esm2015/microzord-core.metadata.json +0 -1
  120. package/esm2015/testing/application.mock.js +0 -10
  121. package/esm2015/testing/application.mock.js.map +0 -1
  122. package/esm2015/testing/application.mock.metadata.json +0 -1
  123. package/esm2015/testing/microzord-core-testing.js +0 -5
  124. package/esm2015/testing/microzord-core-testing.js.map +0 -1
  125. package/esm2015/testing/microzord-core-testing.metadata.json +0 -1
  126. package/esm2015/testing/public_api.js +0 -2
  127. package/esm2015/testing/public_api.js.map +0 -1
  128. package/esm2015/testing/public_api.metadata.json +0 -1
  129. package/fesm2015/microzord-core-testing.js +0 -17
  130. package/fesm2015/microzord-core-testing.js.map +0 -1
  131. package/fesm2015/microzord-core.js.map +0 -1
  132. package/microzord-core.d.ts +0 -5
  133. package/microzord-core.metadata.json +0 -1
  134. package/testing/application.mock.d.ts +0 -5
  135. package/testing/microzord-core-testing.d.ts +0 -4
  136. package/testing/microzord-core-testing.metadata.json +0 -1
  137. package/testing/package.json +0 -11
  138. package/testing/public_api.d.ts +0 -1
@@ -1,22 +0,0 @@
1
- export class MicrozordRegistry {
2
- constructor() {
3
- this._map = new Map();
4
- }
5
- getMap() {
6
- return this._map;
7
- }
8
- clear() {
9
- this._map.clear();
10
- }
11
- get(key) {
12
- return this._map.get(key);
13
- }
14
- set(key, value) {
15
- this._map.set(key, value);
16
- }
17
- }
18
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
19
- export const entityOptionsRegistry = new MicrozordRegistry();
20
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
21
- export const loadedEntityRegistry = new MicrozordRegistry();
22
- //# sourceMappingURL=registry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../../libs/core/src/lib/registry.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,iBAAiB;IAA9B;QACU,SAAI,GAAG,IAAI,GAAG,EAAQ,CAAC;IAiBjC,CAAC;IAfC,MAAM;QACJ,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;IACpB,CAAC;IAED,GAAG,CAAkB,GAAM;QACzB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAM,CAAC;IACjC,CAAC;IAED,GAAG,CAAkB,GAAM,EAAE,KAAQ;QACnC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC5B,CAAC;CACF;AAED,8DAA8D;AAC9D,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,iBAAiB,EAGvD,CAAC;AAEJ,8DAA8D;AAC9D,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,iBAAiB,EAGtD,CAAC","sourcesContent":["import {EntityRegistrationOptions} from './models/registration-options';\nimport {EntityConstructor} from './models/entity';\n\nexport class MicrozordRegistry<K, V> {\n private _map = new Map<K, V>();\n\n getMap(): ReadonlyMap<K, V> {\n return this._map;\n }\n\n clear(): void {\n this._map.clear();\n }\n\n get<E extends V = V>(key: K): E | undefined {\n return this._map.get(key) as E;\n }\n\n set<E extends V = V>(key: K, value: E): void {\n this._map.set(key, value);\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport const entityOptionsRegistry = new MicrozordRegistry<\n string,\n EntityRegistrationOptions<any>\n>();\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport const loadedEntityRegistry = new MicrozordRegistry<\n string,\n EntityConstructor<any, any>\n>();\n"]}
@@ -1 +0,0 @@
1
- [{"__symbolic":"module","version":4,"metadata":{"MicrozordRegistry":{"__symbolic":"class","arity":2,"members":{"getMap":[{"__symbolic":"method"}],"clear":[{"__symbolic":"method"}],"get":[{"__symbolic":"method"}],"set":[{"__symbolic":"method"}]}},"entityOptionsRegistry":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"MicrozordRegistry"}},"loadedEntityRegistry":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"MicrozordRegistry"}}}}]
@@ -1,6 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './index';
5
- export { MicrozordRegistry as ɵa, loadedEntityRegistry as ɵb } from './lib/registry';
6
- //# sourceMappingURL=microzord-core.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"microzord-core.js","sourceRoot":"","sources":["../../../../libs/core/src/microzord-core.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,SAAS,CAAC;AAExB,OAAO,EAAC,iBAAiB,IAAI,EAAE,EAAC,oBAAoB,IAAI,EAAE,EAAC,MAAM,gBAAgB,CAAC","sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n\nexport {MicrozordRegistry as ɵa,loadedEntityRegistry as ɵb} from './lib/registry';"]}
@@ -1 +0,0 @@
1
- [{"__symbolic":"module","version":4,"metadata":{},"exports":[{"from":"./index"},{"from":"./lib/registry","export":[{"name":"MicrozordRegistry","as":"ɵa"},{"name":"loadedEntityRegistry","as":"ɵb"}]}]}]
@@ -1,10 +0,0 @@
1
- import { Application, } from '@microzord/core';
2
- export class ApplicationMock extends Application {
3
- navigate(_url, _props) {
4
- return Promise.resolve(undefined);
5
- }
6
- send(_msg) {
7
- return Promise.resolve(undefined);
8
- }
9
- }
10
- //# sourceMappingURL=application.mock.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"application.mock.js","sourceRoot":"","sources":["../../../../../libs/core/testing/src/application.mock.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,GAGZ,MAAM,iBAAiB,CAAC;AAEzB,MAAM,OAAO,eAAgB,SAAQ,WAAgB;IACnD,QAAQ,CAAC,IAAY,EAAE,MAAgB;QACrC,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;IAED,IAAI,CAAC,IAAoC;QACvC,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;CACF","sourcesContent":["import {\n Application,\n MicrozordLifecycleEvent,\n MicrozordMessageEvent,\n} from '@microzord/core';\n\nexport class ApplicationMock extends Application<any> {\n navigate(_url: string, _props?: unknown): Promise<void> {\n return Promise.resolve(undefined);\n }\n\n send(_msg: string | MicrozordMessageEvent): Promise<void> {\n return Promise.resolve(undefined);\n }\n}\n"]}
@@ -1 +0,0 @@
1
- [{"__symbolic":"module","version":4,"metadata":{"ApplicationMock":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"@microzord/core","name":"Application","line":6,"character":37},"members":{"navigate":[{"__symbolic":"method"}],"send":[{"__symbolic":"method"}]}}}}]
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public_api';
5
- //# sourceMappingURL=microzord-core-testing.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"microzord-core-testing.js","sourceRoot":"","sources":["../../../../../libs/core/testing/src/microzord-core-testing.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,cAAc,CAAC","sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"]}
@@ -1 +0,0 @@
1
- [{"__symbolic":"module","version":4,"metadata":{},"exports":[{"from":"./public_api"}]}]
@@ -1,2 +0,0 @@
1
- export * from './application.mock';
2
- //# sourceMappingURL=public_api.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"public_api.js","sourceRoot":"","sources":["../../../../../libs/core/testing/src/public_api.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC","sourcesContent":["export * from './application.mock';\n"]}
@@ -1 +0,0 @@
1
- [{"__symbolic":"module","version":4,"metadata":{},"exports":[{"from":"./application.mock"}]}]
@@ -1,17 +0,0 @@
1
- import { Application } from '@microzord/core';
2
-
3
- class ApplicationMock extends Application {
4
- navigate(_url, _props) {
5
- return Promise.resolve(undefined);
6
- }
7
- send(_msg) {
8
- return Promise.resolve(undefined);
9
- }
10
- }
11
-
12
- /**
13
- * Generated bundle index. Do not edit.
14
- */
15
-
16
- export { ApplicationMock };
17
- //# sourceMappingURL=microzord-core-testing.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"microzord-core-testing.js","sources":["../../../../libs/core/testing/src/application.mock.ts","../../../../libs/core/testing/src/microzord-core-testing.ts"],"sourcesContent":["import {\n Application,\n MicrozordLifecycleEvent,\n MicrozordMessageEvent,\n} from '@microzord/core';\n\nexport class ApplicationMock extends Application<any> {\n navigate(_url: string, _props?: unknown): Promise<void> {\n return Promise.resolve(undefined);\n }\n\n send(_msg: string | MicrozordMessageEvent): Promise<void> {\n return Promise.resolve(undefined);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;AAMM,MAAO,eAAgB,SAAQ,WAAgB,CAAA;IACnD,QAAQ,CAAC,IAAY,EAAE,MAAgB,EAAA;AACrC,QAAA,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;KACnC;AAED,IAAA,IAAI,CAAC,IAAoC,EAAA;AACvC,QAAA,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;KACnC;AACF;;ACdD;;AAEG;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"microzord-core.js","sources":["../../../../libs/core/src/lib/registry.ts","../../../../libs/core/src/lib/helpers/get-entity.ts","../../../../libs/core/src/lib/helpers/get-app.ts","../../../../libs/core/src/lib/helpers/load-entity.ts","../../../../libs/core/src/lib/helpers/load-app.ts","../../../../libs/core/src/lib/helpers/construct-app.ts","../../../../libs/core/src/lib/helpers/bootstrap-app.ts","../../../../libs/core/src/lib/helpers/construct-and-bootstrap-app.ts","../../../../libs/core/src/lib/helpers/register-entity.ts","../../../../libs/core/src/lib/helpers/register-app.ts","../../../../libs/core/src/lib/helpers/replace-apps.ts","../../../../libs/core/src/lib/models/events.ts","../../../../libs/core/src/lib/models/lifecycle.ts","../../../../libs/core/src/lib/models/application.ts","../../../../libs/core/src/microzord-core.ts"],"sourcesContent":["import {EntityRegistrationOptions} from './models/registration-options';\nimport {EntityConstructor} from './models/entity';\n\nexport class MicrozordRegistry<K, V> {\n private _map = new Map<K, V>();\n\n getMap(): ReadonlyMap<K, V> {\n return this._map;\n }\n\n clear(): void {\n this._map.clear();\n }\n\n get<E extends V = V>(key: K): E | undefined {\n return this._map.get(key) as E;\n }\n\n set<E extends V = V>(key: K, value: E): void {\n this._map.set(key, value);\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport const entityOptionsRegistry = new MicrozordRegistry<\n string,\n EntityRegistrationOptions<any>\n>();\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport const loadedEntityRegistry = new MicrozordRegistry<\n string,\n EntityConstructor<any, any>\n>();\n","import {Observable, of} from 'rxjs';\nimport {loadedEntityRegistry} from '../registry';\nimport {EntityConstructor} from '../models/entity';\n\nexport function getEntity<T, K>(\n entityName: string,\n): Observable<EntityConstructor<T, K> | null> {\n return of(loadedEntityRegistry.get(entityName) || null);\n}\n","import {Observable} from 'rxjs';\nimport {ApplicationConstructor} from '../models/application';\nimport {getEntity} from './get-entity';\n\nexport function getApp<T extends Record<string, any> = Record<string, any>>(\n appName: string,\n): Observable<ApplicationConstructor<T> | null> {\n return getEntity(appName);\n}\n","import {defer, isObservable, Observable, of} from 'rxjs';\nimport {switchMap, tap} from 'rxjs/operators';\nimport {entityOptionsRegistry, loadedEntityRegistry} from '../registry';\nimport {EntityConstructor} from '../models/entity';\nimport {EntityRegistrationOptions} from '../models/registration-options';\nimport {getEntity} from './get-entity';\n\nexport function loadEntity<T, K>(\n entityName: string,\n): Observable<EntityConstructor<T, K>> {\n return getEntity<T, K>(entityName).pipe(\n switchMap(entity =>\n entity\n ? of(entity)\n : defer<Observable<EntityConstructor<T, K>>>(() => {\n const options =\n entityOptionsRegistry.get<\n EntityRegistrationOptions<EntityConstructor<T, K>>\n >(entityName);\n\n if (!options) {\n throw `Microzord entity \"${entityName}\" has not been registered. Check the spelling or register an app.`;\n }\n\n if (!options.load) {\n throw `Microzord entity \"${entityName}\" is registered but it has no \"load\" function. Please, provide it`;\n }\n\n const result = options.load();\n\n return result &&\n (isObservable(result) ||\n ('then' in result && typeof result['then'] === 'function'))\n ? defer(() => result)\n : of(result as EntityConstructor<T, K>);\n }),\n ),\n tap(entity => loadedEntityRegistry.set(entityName, entity)),\n );\n}\n","import {Observable, of} from 'rxjs';\nimport {switchMap, tap} from 'rxjs/operators';\nimport {Application, ApplicationConstructor} from '../models/application';\nimport {loadedEntityRegistry} from '../registry';\nimport {getApp} from './get-app';\nimport {loadEntity} from './load-entity';\n\nexport function loadApp<T extends Record<string, any> = Record<string, any>>(\n appName: string,\n): Observable<ApplicationConstructor<T>> {\n return getApp<T>(appName).pipe(\n switchMap(appConstructor =>\n appConstructor\n ? of(appConstructor).pipe(\n tap(applicationConstructor =>\n loadedEntityRegistry.set(appName, applicationConstructor),\n ),\n )\n : loadEntity<T, Application<T>>(appName),\n ),\n );\n}\n","import {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\nimport {Application} from '../models/application';\nimport {entityOptionsRegistry} from '../registry';\nimport {loadApp} from './load-app';\nimport {AppRegistrationOptions} from '../models/registration-options';\n\nexport function constructApp<T extends Record<string, unknown>>(\n appName: string,\n): Observable<Application<T>> {\n return loadApp<T>(appName).pipe(\n map(\n AppConstructor =>\n new AppConstructor(\n appName,\n entityOptionsRegistry.get<AppRegistrationOptions<T>>(appName)?.props,\n ),\n ),\n );\n}\n","import {defer, Observable, of} from 'rxjs';\nimport {mapTo, switchMap} from 'rxjs/operators';\nimport {Application} from '../models/application';\n\nexport function bootstrapApp<T extends Record<string, unknown>>(\n app: Application<T>,\n selector: string | Element,\n props?: T,\n): Observable<Application<T>> {\n return of(app).pipe(\n switchMap(app => defer(() => app.bootstrap(selector, props)).pipe(mapTo(app))),\n );\n}\n","import {Observable} from 'rxjs';\nimport {switchMap} from 'rxjs/operators';\nimport {Application} from '../models/application';\nimport {constructApp} from './construct-app';\nimport {bootstrapApp} from './bootstrap-app';\n\nexport function constructAndBootstrapApp<\n T extends Record<string, unknown> = Record<string, unknown>,\n>(appName: string, selector: string | Element, props?: T): Observable<Application<T>> {\n return constructApp<T>(appName).pipe(\n switchMap(app => bootstrapApp(app, selector, props)),\n );\n}\n","import {entityOptionsRegistry} from '../registry';\nimport {EntityRegistrationOptions} from '../models/registration-options';\n\nexport function registerEntity<\n T,\n K extends EntityRegistrationOptions<T> = EntityRegistrationOptions<T>,\n>(options: K): void {\n entityOptionsRegistry.set(options.name, options);\n}\n","import {AppRegistrationOptions} from '../models/registration-options';\nimport {registerEntity} from './register-entity';\n\nexport function registerApp<T extends Record<string, any> = Record<string, any>>(\n options: AppRegistrationOptions<T>,\n) {\n registerEntity(options);\n}\n","import {defer, Observable} from 'rxjs';\nimport {Application} from '../models/application';\nimport {constructAndBootstrapApp} from './construct-and-bootstrap-app';\n\nexport function replaceApps<T extends Record<string, any> = Record<string, any>>(\n from: Application,\n to: string,\n props?: T,\n): Observable<Application<T>> {\n return defer(() => {\n from.destroy();\n\n return constructAndBootstrapApp(to, from.container, props);\n });\n}\n","import {Application} from './application';\n\nexport class MicrozordEvent {\n target: Application<any> | null = null;\n constructor(public readonly type: string) {}\n}\n\n// todo: подумать над сообщениями\nexport class MicrozordMessageEvent extends MicrozordEvent {\n static isMessageEvent(event: MicrozordEvent): event is MicrozordMessageEvent {\n return (\n event && event.constructor && event.constructor.name === MicrozordMessageEvent.name\n );\n }\n}\n\n// todo: подумать над ивентами роутинга\nexport class MicrozordNavigationEvent extends MicrozordEvent {\n static isNavigationEvent(event: MicrozordEvent): event is MicrozordNavigationEvent {\n return (\n event &&\n event.constructor &&\n event.constructor.name === MicrozordNavigationEvent.name\n );\n }\n}\n","import {MicrozordEvent} from './events';\n\nexport enum LifecycleEventTypes {\n bootstrapped = 'bootstrapped',\n destroyed = 'destroyed',\n}\n\nexport class MicrozordLifecycleEvent extends MicrozordEvent {\n static isLifecycleEvent(event: MicrozordEvent): event is MicrozordLifecycleEvent {\n return (\n event &&\n event.constructor &&\n event.constructor.name === MicrozordLifecycleEvent.name\n );\n }\n\n static bootstrapped(): MicrozordLifecycleEvent {\n return new MicrozordLifecycleEvent(LifecycleEventTypes.bootstrapped);\n }\n\n static isBootstrappedEvent(event: MicrozordLifecycleEvent): boolean {\n return event.type === LifecycleEventTypes.bootstrapped;\n }\n\n static destroyed(): MicrozordLifecycleEvent {\n return new MicrozordLifecycleEvent(LifecycleEventTypes.destroyed);\n }\n\n static isDestroyedEvent(event: MicrozordLifecycleEvent): boolean {\n return event.type === LifecycleEventTypes.destroyed;\n }\n}\n","import {MicrozordEvent, MicrozordMessageEvent, MicrozordNavigationEvent} from './events';\nimport {MicrozordLifecycleEvent} from './lifecycle';\nimport {EntityConstructor} from './entity';\n\nexport type Listener<T extends MicrozordEvent> = (event: T) => void;\n\nexport abstract class Application<\n T extends Record<string, unknown> = Record<string, unknown>,\n> {\n isBootstrapped = false;\n isDestroyed = true;\n container: Element | string = '';\n\n protected readonly hook = new Set<Listener<MicrozordLifecycleEvent>>();\n protected readonly message = new Set<Listener<MicrozordMessageEvent>>();\n protected readonly navigationEvent = new Set<Listener<MicrozordNavigationEvent>>();\n\n // todo: заспекать типы props\n constructor(public readonly name: string, public props?: T) {}\n\n onMessage(fn: Listener<MicrozordMessageEvent>): () => void {\n this.message.add(fn);\n\n return () => {\n this.message.delete(fn);\n };\n }\n\n emitMessage(event: MicrozordMessageEvent) {\n this.callListeners(this.message, event);\n }\n\n onRouteChange(fn: Listener<MicrozordNavigationEvent>): () => void {\n this.navigationEvent.add(fn);\n\n return () => {\n this.navigationEvent.delete(fn);\n };\n }\n\n emitRouteChange(event: MicrozordNavigationEvent) {\n this.callListeners(this.navigationEvent, event);\n }\n\n onHook(fn: Listener<MicrozordLifecycleEvent>): () => void {\n this.hook.add(fn);\n\n return () => {\n this.hook.delete(fn);\n };\n }\n\n emitHook(event: MicrozordLifecycleEvent) {\n this.callListeners(this.hook, event);\n }\n\n destroy() {\n this.emitHook(MicrozordLifecycleEvent.destroyed());\n\n this.hook.clear(); // todo: в этот поток перед комплитом нужен евент дестроя\n this.message.clear();\n this.navigationEvent.clear();\n\n this.isBootstrapped = false;\n this.isDestroyed = true;\n }\n\n async bootstrap(container: string | Element, _props?: T): Promise<void> {\n this.isBootstrapped = true;\n this.container = container;\n }\n\n abstract send(msg: string | MicrozordMessageEvent): Promise<void>;\n\n // todo: шо за пропс? Надо придумать\n abstract navigate(url: string, props?: unknown): Promise<void>;\n\n protected callListeners<K extends MicrozordEvent>(\n listeners: Set<Listener<K>>,\n event: K,\n ) {\n event.target = this;\n\n [...listeners].forEach(fn => {\n fn(event);\n });\n }\n}\n\nexport type ApplicationConstructor<\n T extends Record<string, unknown> = Record<string, unknown>,\n> = EntityConstructor<T, Application<T>>;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n\nexport {MicrozordRegistry as ɵa,loadedEntityRegistry as ɵb} from './lib/registry';"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './index';
5
- export { MicrozordRegistry as ɵa, loadedEntityRegistry as ɵb } from './lib/registry';
@@ -1 +0,0 @@
1
- {"__symbolic":"module","version":4,"metadata":{"constructAndBootstrapApp":{"__symbolic":"function","parameters":["appName","selector","props"],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"constructApp"},"arguments":[{"__symbolic":"reference","name":"appName"}]},"member":"pipe"},"arguments":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"rxjs/operators","name":"switchMap","line":10,"character":4},"arguments":[{"__symbolic":"error","message":"Lambda not supported","line":10,"character":14,"module":"./lib/helpers/construct-and-bootstrap-app"}]}]}},"bootstrapApp":{"__symbolic":"function","parameters":["app","selector","props"],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"call","expression":{"__symbolic":"reference","module":"rxjs","name":"of","line":9,"character":9},"arguments":[{"__symbolic":"reference","name":"app"}]},"member":"pipe"},"arguments":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"rxjs/operators","name":"switchMap","line":10,"character":4},"arguments":[{"__symbolic":"error","message":"Lambda not supported","line":10,"character":14,"module":"./lib/helpers/bootstrap-app"}]}]}},"constructApp":{"__symbolic":"function","parameters":["appName"],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"loadApp"},"arguments":[{"__symbolic":"reference","name":"appName"}]},"member":"pipe"},"arguments":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"rxjs/operators","name":"map","line":11,"character":4},"arguments":[{"__symbolic":"error","message":"Lambda not supported","line":12,"character":6,"module":"./lib/helpers/construct-app"}]}]}},"getApp":{"__symbolic":"function","parameters":["appName"],"value":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"getEntity"},"arguments":[{"__symbolic":"reference","name":"appName"}]}},"getEntity":{"__symbolic":"function","parameters":["entityName"],"value":{"__symbolic":"call","expression":{"__symbolic":"reference","module":"rxjs","name":"of","line":7,"character":9},"arguments":[{"__symbolic":"binop","operator":"||","left":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵb"},"member":"get"},"arguments":[{"__symbolic":"reference","name":"entityName"}]},"right":null}]}},"loadApp":{"__symbolic":"function","parameters":["appName"],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"getApp"},"arguments":[{"__symbolic":"reference","name":"appName"}]},"member":"pipe"},"arguments":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"rxjs/operators","name":"switchMap","line":11,"character":4},"arguments":[{"__symbolic":"error","message":"Lambda not supported","line":11,"character":14,"module":"./lib/helpers/load-app"}]}]}},"loadEntity":{"__symbolic":"function","parameters":["entityName"],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"getEntity"},"arguments":[{"__symbolic":"reference","name":"entityName"}]},"member":"pipe"},"arguments":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"rxjs/operators","name":"switchMap","line":11,"character":4},"arguments":[{"__symbolic":"error","message":"Lambda not supported","line":11,"character":14,"module":"./lib/helpers/load-entity"}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"rxjs/operators","name":"tap","line":37,"character":4},"arguments":[{"__symbolic":"error","message":"Lambda not supported","line":37,"character":8,"module":"./lib/helpers/load-entity"}]}]}},"registerApp":{"__symbolic":"function"},"registerEntity":{"__symbolic":"function"},"replaceApps":{"__symbolic":"function","parameters":["from","to","props"],"value":{"__symbolic":"call","expression":{"__symbolic":"reference","module":"rxjs","name":"defer","line":9,"character":9},"arguments":[{"__symbolic":"error","message":"Lambda not supported","line":9,"character":15,"module":"./lib/helpers/replace-apps"}]}},"Listener":{"__symbolic":"interface"},"Application":{"__symbolic":"class","arity":1,"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"error","message":"Could not resolve type","line":18,"character":59,"context":{"typeName":"T"},"module":"./lib/models/application"}]}],"onMessage":[{"__symbolic":"method"}],"emitMessage":[{"__symbolic":"method"}],"onRouteChange":[{"__symbolic":"method"}],"emitRouteChange":[{"__symbolic":"method"}],"onHook":[{"__symbolic":"method"}],"emitHook":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"bootstrap":[{"__symbolic":"method"}],"send":[{"__symbolic":"method"}],"navigate":[{"__symbolic":"method"}],"callListeners":[{"__symbolic":"method"}]}},"ApplicationConstructor":{"__symbolic":"interface"},"EntityConstructor":{"__symbolic":"interface"},"MicrozordEvent":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"}]}]}},"MicrozordMessageEvent":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"MicrozordEvent"},"members":{},"statics":{"isMessageEvent":{"__symbolic":"function","parameters":["event"],"value":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"reference","name":"event"},"right":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"event"},"member":"constructor"}},"right":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"select","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"event"},"member":"constructor"},"member":"name"},"right":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"MicrozordMessageEvent"},"member":"name"}}}}}},"MicrozordNavigationEvent":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"MicrozordEvent"},"members":{},"statics":{"isNavigationEvent":{"__symbolic":"function","parameters":["event"],"value":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"reference","name":"event"},"right":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"event"},"member":"constructor"}},"right":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"select","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"event"},"member":"constructor"},"member":"name"},"right":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"MicrozordNavigationEvent"},"member":"name"}}}}}},"LifecycleEventTypes":{"bootstrapped":"bootstrapped","destroyed":"destroyed"},"MicrozordLifecycleEvent":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"MicrozordEvent"},"members":{},"statics":{"isLifecycleEvent":{"__symbolic":"function","parameters":["event"],"value":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"reference","name":"event"},"right":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"event"},"member":"constructor"}},"right":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"select","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"event"},"member":"constructor"},"member":"name"},"right":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"MicrozordLifecycleEvent"},"member":"name"}}}},"bootstrapped":{"__symbolic":"function","parameters":[],"value":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"MicrozordLifecycleEvent"},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"LifecycleEventTypes"},"member":"bootstrapped"}]}},"isBootstrappedEvent":{"__symbolic":"function","parameters":["event"],"value":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"event"},"member":"type"},"right":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"LifecycleEventTypes"},"member":"bootstrapped"}}},"destroyed":{"__symbolic":"function","parameters":[],"value":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"MicrozordLifecycleEvent"},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"LifecycleEventTypes"},"member":"destroyed"}]}},"isDestroyedEvent":{"__symbolic":"function","parameters":["event"],"value":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"event"},"member":"type"},"right":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"LifecycleEventTypes"},"member":"destroyed"}}}}},"EntityRegistrationOptions":{"__symbolic":"interface"},"AppRegistrationOptions":{"__symbolic":"interface"},"ɵa":{"__symbolic":"class","arity":2,"members":{"getMap":[{"__symbolic":"method"}],"clear":[{"__symbolic":"method"}],"get":[{"__symbolic":"method"}],"set":[{"__symbolic":"method"}]}},"ɵb":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"ɵa"}}},"origins":{"constructAndBootstrapApp":"./lib/helpers/construct-and-bootstrap-app","bootstrapApp":"./lib/helpers/bootstrap-app","constructApp":"./lib/helpers/construct-app","getApp":"./lib/helpers/get-app","getEntity":"./lib/helpers/get-entity","loadApp":"./lib/helpers/load-app","loadEntity":"./lib/helpers/load-entity","registerApp":"./lib/helpers/register-app","registerEntity":"./lib/helpers/register-entity","replaceApps":"./lib/helpers/replace-apps","Listener":"./lib/models/application","Application":"./lib/models/application","ApplicationConstructor":"./lib/models/application","EntityConstructor":"./lib/models/entity","MicrozordEvent":"./lib/models/events","MicrozordMessageEvent":"./lib/models/events","MicrozordNavigationEvent":"./lib/models/events","LifecycleEventTypes":"./lib/models/lifecycle","MicrozordLifecycleEvent":"./lib/models/lifecycle","EntityRegistrationOptions":"./lib/models/registration-options","AppRegistrationOptions":"./lib/models/registration-options","ɵa":"./lib/registry","ɵb":"./lib/registry"},"importAs":"@microzord/core"}
@@ -1,5 +0,0 @@
1
- import { Application, MicrozordMessageEvent } from '@microzord/core';
2
- export declare class ApplicationMock extends Application<any> {
3
- navigate(_url: string, _props?: unknown): Promise<void>;
4
- send(_msg: string | MicrozordMessageEvent): Promise<void>;
5
- }
@@ -1,4 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public_api';
@@ -1 +0,0 @@
1
- {"__symbolic":"module","version":4,"metadata":{"ApplicationMock":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"@microzord/core","name":"Application","line":6,"character":37},"members":{"navigate":[{"__symbolic":"method"}],"send":[{"__symbolic":"method"}]}}},"origins":{"ApplicationMock":"./application.mock"},"importAs":"@microzord/core/testing"}
@@ -1,11 +0,0 @@
1
- {
2
- "main": "../bundles/microzord-core-testing.umd.js",
3
- "module": "../fesm2015/microzord-core-testing.js",
4
- "es2015": "../fesm2015/microzord-core-testing.js",
5
- "esm2015": "../esm2015/testing/microzord-core-testing.js",
6
- "fesm2015": "../fesm2015/microzord-core-testing.js",
7
- "typings": "microzord-core-testing.d.ts",
8
- "metadata": "microzord-core-testing.metadata.json",
9
- "sideEffects": false,
10
- "name": "@microzord/core/testing"
11
- }
@@ -1 +0,0 @@
1
- export * from './application.mock';