@vived/host 5.1.0 → 5.2.1

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 (153) hide show
  1. package/dist/cjs/AppSandbox/Factories/AppSandboxFeatureFactory.js +86 -0
  2. package/dist/cjs/AppSandbox/Factories/AppSandboxFeatureFactory.js.map +1 -0
  3. package/dist/cjs/AppSandbox/Factories/index.js +1 -0
  4. package/dist/cjs/AppSandbox/Factories/index.js.map +1 -1
  5. package/dist/cjs/Apps/Factories/AppsFeatureFactory.js +5 -0
  6. package/dist/cjs/Apps/Factories/AppsFeatureFactory.js.map +1 -1
  7. package/dist/cjs/AssetPlugin/Entities/AssetPluginEntity.js +8 -1
  8. package/dist/cjs/AssetPlugin/Entities/AssetPluginEntity.js.map +1 -1
  9. package/dist/cjs/AssetPlugin/Factories/AssetPluginFeatureFactory.js +80 -0
  10. package/dist/cjs/AssetPlugin/Factories/AssetPluginFeatureFactory.js.map +1 -0
  11. package/dist/cjs/AssetPlugin/Factories/index.js +1 -0
  12. package/dist/cjs/AssetPlugin/Factories/index.js.map +1 -1
  13. package/dist/cjs/Assets/Adapters/assetFileAdapter.js.map +1 -1
  14. package/dist/cjs/Assets/Factories/SandboxAssetsFactory.js +87 -0
  15. package/dist/cjs/Assets/Factories/SandboxAssetsFactory.js.map +1 -0
  16. package/dist/cjs/Assets/Factories/index.js +1 -0
  17. package/dist/cjs/Assets/Factories/index.js.map +1 -1
  18. package/dist/cjs/Cache/Factories/CacheFeatureFactory.js +5 -0
  19. package/dist/cjs/Cache/Factories/CacheFeatureFactory.js.map +1 -1
  20. package/dist/cjs/ChallengeResults/Factories/ChallengeResultsFactory.js +53 -0
  21. package/dist/cjs/ChallengeResults/Factories/ChallengeResultsFactory.js.map +1 -0
  22. package/dist/cjs/ChallengeResults/Factories/index.js +1 -0
  23. package/dist/cjs/ChallengeResults/Factories/index.js.map +1 -1
  24. package/dist/cjs/Dialog/Factories/SandboxDialogFactory.js +63 -0
  25. package/dist/cjs/Dialog/Factories/SandboxDialogFactory.js.map +1 -0
  26. package/dist/cjs/Dialog/Factories/index.js +1 -0
  27. package/dist/cjs/Dialog/Factories/index.js.map +1 -1
  28. package/dist/cjs/Logger/Factories/SandboxLoggerFactory.js +54 -0
  29. package/dist/cjs/Logger/Factories/SandboxLoggerFactory.js.map +1 -0
  30. package/dist/cjs/Logger/Factories/index.js +1 -0
  31. package/dist/cjs/Logger/Factories/index.js.map +1 -1
  32. package/dist/cjs/StateMachine/Controllers/index.js.map +1 -1
  33. package/dist/cjs/StateMachine/Factories/SandboxStateMachineFactory.js +72 -0
  34. package/dist/cjs/StateMachine/Factories/SandboxStateMachineFactory.js.map +1 -0
  35. package/dist/cjs/StateMachine/Factories/index.js +1 -0
  36. package/dist/cjs/StateMachine/Factories/index.js.map +1 -1
  37. package/dist/cjs/StateMachine/PMs/HostStatePM.js +17 -23
  38. package/dist/cjs/StateMachine/PMs/HostStatePM.js.map +1 -1
  39. package/dist/cjs/ThemeColors/Controllers/index.js.map +1 -1
  40. package/dist/cjs/ThemeColors/Factories/ThemeFactory.js +63 -0
  41. package/dist/cjs/ThemeColors/Factories/ThemeFactory.js.map +1 -0
  42. package/dist/cjs/ThemeColors/Factories/index.js +1 -0
  43. package/dist/cjs/ThemeColors/Factories/index.js.map +1 -1
  44. package/dist/cjs/ThemeColors/Mocks/MockSetThemeUC.js.map +1 -1
  45. package/dist/cjs/ThemeColors/Mocks/index.js.map +1 -1
  46. package/dist/cjs/VivedAPI/Factories/SandboxVivedAPIFactory.js +63 -0
  47. package/dist/cjs/VivedAPI/Factories/SandboxVivedAPIFactory.js.map +1 -0
  48. package/dist/cjs/VivedAPI/Factories/index.js +1 -0
  49. package/dist/cjs/VivedAPI/Factories/index.js.map +1 -1
  50. package/dist/cjs/ZSpaceHost/Controllers/index.js.map +1 -1
  51. package/dist/cjs/ZSpaceHost/Factories/SandboxZSpaceFactory.js +55 -0
  52. package/dist/cjs/ZSpaceHost/Factories/SandboxZSpaceFactory.js.map +1 -0
  53. package/dist/cjs/ZSpaceHost/Factories/index.js +1 -0
  54. package/dist/cjs/ZSpaceHost/Factories/index.js.map +1 -1
  55. package/dist/esm/AppSandbox/Factories/AppSandboxFeatureFactory.js +81 -0
  56. package/dist/esm/AppSandbox/Factories/AppSandboxFeatureFactory.js.map +1 -0
  57. package/dist/esm/AppSandbox/Factories/index.js +1 -0
  58. package/dist/esm/AppSandbox/Factories/index.js.map +1 -1
  59. package/dist/esm/Apps/Factories/AppsFeatureFactory.js +4 -0
  60. package/dist/esm/Apps/Factories/AppsFeatureFactory.js.map +1 -1
  61. package/dist/esm/AssetPlugin/Entities/AssetPluginEntity.js +8 -1
  62. package/dist/esm/AssetPlugin/Entities/AssetPluginEntity.js.map +1 -1
  63. package/dist/esm/AssetPlugin/Factories/AssetPluginFeatureFactory.js +75 -0
  64. package/dist/esm/AssetPlugin/Factories/AssetPluginFeatureFactory.js.map +1 -0
  65. package/dist/esm/AssetPlugin/Factories/index.js +1 -0
  66. package/dist/esm/AssetPlugin/Factories/index.js.map +1 -1
  67. package/dist/esm/Assets/Adapters/assetFileAdapter.js.map +1 -1
  68. package/dist/esm/Assets/Factories/SandboxAssetsFactory.js +82 -0
  69. package/dist/esm/Assets/Factories/SandboxAssetsFactory.js.map +1 -0
  70. package/dist/esm/Assets/Factories/index.js +1 -0
  71. package/dist/esm/Assets/Factories/index.js.map +1 -1
  72. package/dist/esm/Cache/Factories/CacheFeatureFactory.js +4 -0
  73. package/dist/esm/Cache/Factories/CacheFeatureFactory.js.map +1 -1
  74. package/dist/esm/ChallengeResults/Factories/ChallengeResultsFactory.js +48 -0
  75. package/dist/esm/ChallengeResults/Factories/ChallengeResultsFactory.js.map +1 -0
  76. package/dist/esm/ChallengeResults/Factories/index.js +1 -0
  77. package/dist/esm/ChallengeResults/Factories/index.js.map +1 -1
  78. package/dist/esm/Dialog/Factories/SandboxDialogFactory.js +58 -0
  79. package/dist/esm/Dialog/Factories/SandboxDialogFactory.js.map +1 -0
  80. package/dist/esm/Dialog/Factories/index.js +1 -0
  81. package/dist/esm/Dialog/Factories/index.js.map +1 -1
  82. package/dist/esm/Logger/Factories/SandboxLoggerFactory.js +49 -0
  83. package/dist/esm/Logger/Factories/SandboxLoggerFactory.js.map +1 -0
  84. package/dist/esm/Logger/Factories/index.js +1 -0
  85. package/dist/esm/Logger/Factories/index.js.map +1 -1
  86. package/dist/esm/StateMachine/Controllers/index.js.map +1 -1
  87. package/dist/esm/StateMachine/Factories/SandboxStateMachineFactory.js +67 -0
  88. package/dist/esm/StateMachine/Factories/SandboxStateMachineFactory.js.map +1 -0
  89. package/dist/esm/StateMachine/Factories/index.js +1 -0
  90. package/dist/esm/StateMachine/Factories/index.js.map +1 -1
  91. package/dist/esm/StateMachine/PMs/HostStatePM.js +17 -23
  92. package/dist/esm/StateMachine/PMs/HostStatePM.js.map +1 -1
  93. package/dist/esm/ThemeColors/Controllers/index.js.map +1 -1
  94. package/dist/esm/ThemeColors/Factories/ThemeFactory.js +58 -0
  95. package/dist/esm/ThemeColors/Factories/ThemeFactory.js.map +1 -0
  96. package/dist/esm/ThemeColors/Factories/index.js +1 -0
  97. package/dist/esm/ThemeColors/Factories/index.js.map +1 -1
  98. package/dist/esm/ThemeColors/Mocks/MockSetThemeUC.js.map +1 -1
  99. package/dist/esm/ThemeColors/Mocks/index.js.map +1 -1
  100. package/dist/esm/VivedAPI/Factories/SandboxVivedAPIFactory.js +58 -0
  101. package/dist/esm/VivedAPI/Factories/SandboxVivedAPIFactory.js.map +1 -0
  102. package/dist/esm/VivedAPI/Factories/index.js +1 -0
  103. package/dist/esm/VivedAPI/Factories/index.js.map +1 -1
  104. package/dist/esm/ZSpaceHost/Controllers/index.js.map +1 -1
  105. package/dist/esm/ZSpaceHost/Factories/SandboxZSpaceFactory.js +50 -0
  106. package/dist/esm/ZSpaceHost/Factories/SandboxZSpaceFactory.js.map +1 -0
  107. package/dist/esm/ZSpaceHost/Factories/index.js +1 -0
  108. package/dist/esm/ZSpaceHost/Factories/index.js.map +1 -1
  109. package/dist/types/AppSandbox/Factories/AppSandboxFeatureFactory.d.ts +29 -0
  110. package/dist/types/AppSandbox/Factories/AppSandboxFeatureFactory.d.ts.map +1 -0
  111. package/dist/types/AppSandbox/Factories/index.d.ts +1 -0
  112. package/dist/types/AppSandbox/Factories/index.d.ts.map +1 -1
  113. package/dist/types/Apps/Factories/AppsFeatureFactory.d.ts +2 -1
  114. package/dist/types/Apps/Factories/AppsFeatureFactory.d.ts.map +1 -1
  115. package/dist/types/AssetPlugin/Factories/AssetPluginFeatureFactory.d.ts +29 -0
  116. package/dist/types/AssetPlugin/Factories/AssetPluginFeatureFactory.d.ts.map +1 -0
  117. package/dist/types/AssetPlugin/Factories/index.d.ts +1 -0
  118. package/dist/types/AssetPlugin/Factories/index.d.ts.map +1 -1
  119. package/dist/types/Assets/Factories/SandboxAssetsFactory.d.ts +34 -0
  120. package/dist/types/Assets/Factories/SandboxAssetsFactory.d.ts.map +1 -0
  121. package/dist/types/Assets/Factories/index.d.ts +1 -0
  122. package/dist/types/Assets/Factories/index.d.ts.map +1 -1
  123. package/dist/types/Cache/Factories/CacheFeatureFactory.d.ts +2 -1
  124. package/dist/types/Cache/Factories/CacheFeatureFactory.d.ts.map +1 -1
  125. package/dist/types/ChallengeResults/Factories/ChallengeResultsFactory.d.ts +28 -0
  126. package/dist/types/ChallengeResults/Factories/ChallengeResultsFactory.d.ts.map +1 -0
  127. package/dist/types/ChallengeResults/Factories/index.d.ts +1 -0
  128. package/dist/types/ChallengeResults/Factories/index.d.ts.map +1 -1
  129. package/dist/types/Dialog/Factories/SandboxDialogFactory.d.ts +28 -0
  130. package/dist/types/Dialog/Factories/SandboxDialogFactory.d.ts.map +1 -0
  131. package/dist/types/Dialog/Factories/index.d.ts +1 -0
  132. package/dist/types/Dialog/Factories/index.d.ts.map +1 -1
  133. package/dist/types/Logger/Factories/SandboxLoggerFactory.d.ts +28 -0
  134. package/dist/types/Logger/Factories/SandboxLoggerFactory.d.ts.map +1 -0
  135. package/dist/types/Logger/Factories/index.d.ts +1 -0
  136. package/dist/types/Logger/Factories/index.d.ts.map +1 -1
  137. package/dist/types/StateMachine/Factories/SandboxStateMachineFactory.d.ts +30 -0
  138. package/dist/types/StateMachine/Factories/SandboxStateMachineFactory.d.ts.map +1 -0
  139. package/dist/types/StateMachine/Factories/index.d.ts +1 -0
  140. package/dist/types/StateMachine/Factories/index.d.ts.map +1 -1
  141. package/dist/types/ThemeColors/Factories/ThemeFactory.d.ts +30 -0
  142. package/dist/types/ThemeColors/Factories/ThemeFactory.d.ts.map +1 -0
  143. package/dist/types/ThemeColors/Factories/index.d.ts +1 -0
  144. package/dist/types/ThemeColors/Factories/index.d.ts.map +1 -1
  145. package/dist/types/VivedAPI/Factories/SandboxVivedAPIFactory.d.ts +28 -0
  146. package/dist/types/VivedAPI/Factories/SandboxVivedAPIFactory.d.ts.map +1 -0
  147. package/dist/types/VivedAPI/Factories/index.d.ts +1 -0
  148. package/dist/types/VivedAPI/Factories/index.d.ts.map +1 -1
  149. package/dist/types/ZSpaceHost/Factories/SandboxZSpaceFactory.d.ts +28 -0
  150. package/dist/types/ZSpaceHost/Factories/SandboxZSpaceFactory.d.ts.map +1 -0
  151. package/dist/types/ZSpaceHost/Factories/index.d.ts +1 -0
  152. package/dist/types/ZSpaceHost/Factories/index.d.ts.map +1 -1
  153. package/package.json +1 -1
@@ -0,0 +1,81 @@
1
+ import { DomainFactory } from "@vived/core";
2
+ import { makeSandboxMounter, makeStartAppUC, makeStopAppUC } from "../../Apps/UCs";
3
+ import { makeHostDispatchEntity } from "../../Dispatcher/Entities";
4
+ import { setupStandardHostDispatchers } from "../../Dispatcher/setupStandardHostDispatchers";
5
+ import { makeHostHandlerEntity } from "../../Handler/Entities";
6
+ import { setupStandardHostHandlers } from "../../Handler/setupStandardHostHandlers";
7
+ import { SubmitActivityAssetHandler } from "../../Handler";
8
+ import { makeAppSandboxEntity } from "../Entities";
9
+ import { makeDevFeaturesEnabledPM, makeSandboxStatePM, makeShowInspectorPM, makeStartInZSpacePM } from "../PMs";
10
+ import { makeShowBabylonInspectorUC } from "../UCs";
11
+ import { makeSubmitActivityAssetHandlerSandbox } from "../UCs/submitActivityAssetHandlerSandbox";
12
+ import { AppRepoEntity } from "../../Apps/Entities";
13
+ /**
14
+ * Factory responsible for setting up the AppSandbox domain components.
15
+ * This factory initializes all entities, use cases, and presentation models
16
+ * required for the AppSandbox functionality.
17
+ */
18
+ export class AppSandboxFeatureFactory extends DomainFactory {
19
+ constructor(appObject) {
20
+ super(appObject);
21
+ // Unique name for this factory
22
+ this.factoryName = "AppSandboxFeatureFactory";
23
+ }
24
+ /**
25
+ * Sets up all entities required for the AppSandbox system
26
+ */
27
+ setupEntities() {
28
+ // Initialize entities
29
+ this.sandbox = makeAppSandboxEntity(this.appObject);
30
+ makeHostDispatchEntity(this.appObject);
31
+ makeHostHandlerEntity(this.appObject);
32
+ }
33
+ /**
34
+ * Sets up all use cases for the AppSandbox system
35
+ */
36
+ setupUCs() {
37
+ // Setup standard dispatchers and handlers
38
+ setupStandardHostDispatchers(this.appObject);
39
+ setupStandardHostHandlers(this.appObject);
40
+ // Initialize use cases
41
+ makeStartAppUC(this.appObject);
42
+ makeStopAppUC(this.appObject);
43
+ makeShowBabylonInspectorUC(this.appObject);
44
+ makeSandboxMounter(this.appObject);
45
+ }
46
+ /**
47
+ * Sets up all presentation managers for the AppSandbox system
48
+ */
49
+ setupPMs() {
50
+ // Initialize presentation managers
51
+ makeDevFeaturesEnabledPM(this.appObject);
52
+ makeSandboxStatePM(this.appObject);
53
+ makeShowInspectorPM(this.appObject);
54
+ makeStartInZSpacePM(this.appObject);
55
+ }
56
+ /**
57
+ * Performs any final setup operations after all components are initialized
58
+ */
59
+ finalSetup() {
60
+ // Setup custom handler for activity asset submission
61
+ const submitActivityAssetUC = this.appObjects.getSingleton(SubmitActivityAssetHandler.type);
62
+ if (submitActivityAssetUC) {
63
+ submitActivityAssetUC.action = makeSubmitActivityAssetHandlerSandbox(this.appObjects);
64
+ }
65
+ if (!this.sandbox) {
66
+ this.error("AppSandboxEntity not found during final setup.");
67
+ return;
68
+ }
69
+ const apps = AppRepoEntity.get(this.appObjects);
70
+ if (!apps) {
71
+ this.error("AppRepoEntity not found in AppObjects.");
72
+ return;
73
+ }
74
+ apps.add(this.sandbox.app);
75
+ }
76
+ }
77
+ export function makeAppSandboxFeatureFactory(appID, appObjects) {
78
+ const ao = appObjects.getOrCreate(appID);
79
+ return new AppSandboxFeatureFactory(ao);
80
+ }
81
+ //# sourceMappingURL=AppSandboxFeatureFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AppSandboxFeatureFactory.js","sourceRoot":"","sources":["../../../../src/AppSandbox/Factories/AppSandboxFeatureFactory.ts"],"names":[],"mappings":"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","sourcesContent":["import { AppObject, AppObjectRepo, DomainFactory } from \"@vived/core\";\r\nimport {\r\n makeSandboxMounter,\r\n makeStartAppUC,\r\n makeStopAppUC\r\n} from \"../../Apps/UCs\";\r\nimport { makeHostDispatchEntity } from \"../../Dispatcher/Entities\";\r\nimport { setupStandardHostDispatchers } from \"../../Dispatcher/setupStandardHostDispatchers\";\r\nimport { makeHostHandlerEntity } from \"../../Handler/Entities\";\r\nimport { setupStandardHostHandlers } from \"../../Handler/setupStandardHostHandlers\";\r\nimport { SubmitActivityAssetHandler } from \"../../Handler\";\r\nimport { AppSandboxEntity, makeAppSandboxEntity } from \"../Entities\";\r\nimport {\r\n makeDevFeaturesEnabledPM,\r\n makeSandboxStatePM,\r\n makeShowInspectorPM,\r\n makeStartInZSpacePM\r\n} from \"../PMs\";\r\nimport { makeShowBabylonInspectorUC } from \"../UCs\";\r\nimport { makeSubmitActivityAssetHandlerSandbox } from \"../UCs/submitActivityAssetHandlerSandbox\";\r\nimport { AppRepoEntity } from \"../../Apps/Entities\";\r\n\r\n/**\r\n * Factory responsible for setting up the AppSandbox domain components.\r\n * This factory initializes all entities, use cases, and presentation models\r\n * required for the AppSandbox functionality.\r\n */\r\nexport class AppSandboxFeatureFactory extends DomainFactory {\r\n // Unique name for this factory\r\n readonly factoryName = \"AppSandboxFeatureFactory\";\r\n\r\n private sandbox?: AppSandboxEntity;\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject);\r\n }\r\n\r\n /**\r\n * Sets up all entities required for the AppSandbox system\r\n */\r\n setupEntities(): void {\r\n // Initialize entities\r\n this.sandbox = makeAppSandboxEntity(this.appObject);\r\n makeHostDispatchEntity(this.appObject);\r\n makeHostHandlerEntity(this.appObject);\r\n }\r\n\r\n /**\r\n * Sets up all use cases for the AppSandbox system\r\n */\r\n setupUCs(): void {\r\n // Setup standard dispatchers and handlers\r\n setupStandardHostDispatchers(this.appObject);\r\n setupStandardHostHandlers(this.appObject);\r\n\r\n // Initialize use cases\r\n makeStartAppUC(this.appObject);\r\n makeStopAppUC(this.appObject);\r\n makeShowBabylonInspectorUC(this.appObject);\r\n makeSandboxMounter(this.appObject);\r\n }\r\n\r\n /**\r\n * Sets up all presentation managers for the AppSandbox system\r\n */\r\n setupPMs(): void {\r\n // Initialize presentation managers\r\n makeDevFeaturesEnabledPM(this.appObject);\r\n makeSandboxStatePM(this.appObject);\r\n makeShowInspectorPM(this.appObject);\r\n makeStartInZSpacePM(this.appObject);\r\n }\r\n\r\n /**\r\n * Performs any final setup operations after all components are initialized\r\n */\r\n finalSetup(): void {\r\n // Setup custom handler for activity asset submission\r\n const submitActivityAssetUC =\r\n this.appObjects.getSingleton<SubmitActivityAssetHandler>(\r\n SubmitActivityAssetHandler.type\r\n );\r\n if (submitActivityAssetUC) {\r\n submitActivityAssetUC.action = makeSubmitActivityAssetHandlerSandbox(\r\n this.appObjects\r\n );\r\n }\r\n\r\n if (!this.sandbox) {\r\n this.error(\"AppSandboxEntity not found during final setup.\");\r\n return;\r\n }\r\n\r\n const apps = AppRepoEntity.get(this.appObjects);\r\n\r\n if (!apps) {\r\n this.error(\"AppRepoEntity not found in AppObjects.\");\r\n return;\r\n }\r\n\r\n apps.add(this.sandbox.app);\r\n }\r\n}\r\n\r\nexport function makeAppSandboxFeatureFactory(\r\n appID: string,\r\n appObjects: AppObjectRepo\r\n): AppSandboxFeatureFactory {\r\n const ao = appObjects.getOrCreate(appID);\r\n return new AppSandboxFeatureFactory(ao);\r\n}\r\n"]}
@@ -1,2 +1,3 @@
1
+ export * from "./AppSandboxFeatureFactory";
1
2
  export * from "./setupAppSandbox";
2
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/AppSandbox/Factories/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC","sourcesContent":["export * from \"./setupAppSandbox\";\r\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/AppSandbox/Factories/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,mBAAmB,CAAC","sourcesContent":["export * from \"./AppSandboxFeatureFactory\";\r\nexport * from \"./setupAppSandbox\";\r\n"]}
@@ -40,4 +40,8 @@ export class AppsFeatureFactory extends DomainFactory {
40
40
  // No additional setup required for apps
41
41
  }
42
42
  }
43
+ export function makeAppsFeatureFactory(appObjects) {
44
+ const ao = appObjects.getOrCreate("Apps");
45
+ return new AppsFeatureFactory(ao);
46
+ }
43
47
  //# sourceMappingURL=AppsFeatureFactory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AppsFeatureFactory.js","sourceRoot":"","sources":["../../../../src/Apps/Factories/AppsFeatureFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,aAAa,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAiB,WAAW,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAa,cAAc,EAAE,MAAM,QAAQ,CAAC;AAEnD;;;;GAIG;AACH,MAAM,OAAO,kBAAmB,SAAQ,aAAa;IAInD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,CAAC,CAAC;QAJnB,+BAA+B;QACtB,gBAAW,GAAG,oBAAoB,CAAC;IAI5C,CAAC;IAED;;OAEG;IACH,aAAa;QACX,sBAAsB;QACtB,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,+DAA+D;QAC/D,0EAA0E;IAC5E,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,qBAAqB;QACrB,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,UAAU;QACR,wCAAwC;IAC1C,CAAC;CACF","sourcesContent":["import { AppObject, DomainFactory } from \"@vived/core\";\r\nimport { makeAppEntity, makeAppRepo } from \"../Entities\";\r\nimport { makeAppPM, makeAppsListPM } from \"../PMs\";\r\n\r\n/**\r\n * Factory responsible for setting up the Apps domain components.\r\n * This factory initializes all entities, use cases, and presentation models\r\n * required for the Apps functionality.\r\n */\r\nexport class AppsFeatureFactory extends DomainFactory {\r\n // Unique name for this factory\r\n readonly factoryName = \"AppsFeatureFactory\";\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject);\r\n }\r\n\r\n /**\r\n * Sets up all entities required for the Apps system\r\n */\r\n setupEntities(): void {\r\n // Initialize entities\r\n makeAppRepo(this.appObject);\r\n }\r\n\r\n /**\r\n * Sets up all use cases for the Apps system\r\n */\r\n setupUCs(): void {\r\n // Note: App UCs have complex dependencies and should be set up\r\n // separately to avoid circular dependencies during factory initialization\r\n }\r\n\r\n /**\r\n * Sets up all presentation managers for the Apps system\r\n */\r\n setupPMs(): void {\r\n // App Repository PMs\r\n makeAppsListPM(this.appObject);\r\n }\r\n\r\n /**\r\n * Performs any final setup operations after all components are initialized\r\n */\r\n finalSetup(): void {\r\n // No additional setup required for apps\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"AppsFeatureFactory.js","sourceRoot":"","sources":["../../../../src/Apps/Factories/AppsFeatureFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,aAAa,EAAE,MAAM,aAAa,CAAC;AACtE,OAAO,EAAiB,WAAW,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAa,cAAc,EAAE,MAAM,QAAQ,CAAC;AAEnD;;;;GAIG;AACH,MAAM,OAAO,kBAAmB,SAAQ,aAAa;IAInD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,CAAC,CAAC;QAJnB,+BAA+B;QACtB,gBAAW,GAAG,oBAAoB,CAAC;IAI5C,CAAC;IAED;;OAEG;IACH,aAAa;QACX,sBAAsB;QACtB,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,+DAA+D;QAC/D,0EAA0E;IAC5E,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,qBAAqB;QACrB,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,UAAU;QACR,wCAAwC;IAC1C,CAAC;CACF;AAED,MAAM,UAAU,sBAAsB,CAAC,UAAwB;IAC7D,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAC1C,OAAO,IAAI,kBAAkB,CAAC,EAAE,CAAC,CAAC;AACpC,CAAC","sourcesContent":["import { AppObject, AppObjectRepo, DomainFactory } from \"@vived/core\";\r\nimport { makeAppEntity, makeAppRepo } from \"../Entities\";\r\nimport { makeAppPM, makeAppsListPM } from \"../PMs\";\r\n\r\n/**\r\n * Factory responsible for setting up the Apps domain components.\r\n * This factory initializes all entities, use cases, and presentation models\r\n * required for the Apps functionality.\r\n */\r\nexport class AppsFeatureFactory extends DomainFactory {\r\n // Unique name for this factory\r\n readonly factoryName = \"AppsFeatureFactory\";\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject);\r\n }\r\n\r\n /**\r\n * Sets up all entities required for the Apps system\r\n */\r\n setupEntities(): void {\r\n // Initialize entities\r\n makeAppRepo(this.appObject);\r\n }\r\n\r\n /**\r\n * Sets up all use cases for the Apps system\r\n */\r\n setupUCs(): void {\r\n // Note: App UCs have complex dependencies and should be set up\r\n // separately to avoid circular dependencies during factory initialization\r\n }\r\n\r\n /**\r\n * Sets up all presentation managers for the Apps system\r\n */\r\n setupPMs(): void {\r\n // App Repository PMs\r\n makeAppsListPM(this.appObject);\r\n }\r\n\r\n /**\r\n * Performs any final setup operations after all components are initialized\r\n */\r\n finalSetup(): void {\r\n // No additional setup required for apps\r\n }\r\n}\r\n\r\nexport function makeAppsFeatureFactory(appObjects:AppObjectRepo):AppsFeatureFactory {\r\n const ao = appObjects.getOrCreate(\"Apps\");\r\n return new AppsFeatureFactory(ao);\r\n}"]}
@@ -10,6 +10,13 @@ export function makeAssetPluginEntity(appObject) {
10
10
  return new AssetPluginEntityImp(appObject);
11
11
  }
12
12
  class AssetPluginEntityImp extends AssetPluginEntity {
13
+ get version() {
14
+ return this._version;
15
+ }
16
+ set version(val) {
17
+ this._version = val;
18
+ this._app.versions.push(val);
19
+ }
13
20
  get app() {
14
21
  return this._app;
15
22
  }
@@ -21,7 +28,7 @@ class AssetPluginEntityImp extends AssetPluginEntity {
21
28
  }
22
29
  constructor(appObject) {
23
30
  super(appObject, AssetPluginEntity.type);
24
- this.version = new Version(0, 0, 0, VersionStage.RELEASED);
31
+ this._version = new Version(0, 0, 0, VersionStage.RELEASED);
25
32
  this.memoizedShowApp = new MemoizedBoolean(false, this.notifyOnChange);
26
33
  this.callback = (modelId, dataId) => {
27
34
  this.warn("Callback has not been injected");
@@ -1 +1 @@
1
- {"version":3,"file":"AssetPluginEntity.js","sourceRoot":"","sources":["../../../../src/AssetPlugin/Entities/AssetPluginEntity.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,eAAe,EAEf,qBAAqB,EACrB,eAAe,EACf,OAAO,EACP,YAAY,EACb,MAAM,aAAa,CAAC;AACrB,OAAO,EAAa,aAAa,EAAE,MAAM,YAAY,CAAC;AAEtD,MAAM,OAAgB,iBAAkB,SAAQ,eAAe;IAG7D,MAAM,CAAC,GAAG,CAAC,UAAyB;QAClC,OAAO,qBAAqB,CAC1B,iBAAiB,CAAC,IAAI,EACtB,UAAU,CACX,CAAC;IACJ,CAAC;;AAPM,sBAAI,GAAG,mBAAmB,CAAC;AAiBpC,MAAM,UAAU,qBAAqB,CAAC,SAAoB;IACxD,OAAO,IAAI,oBAAoB,CAAC,SAAS,CAAC,CAAC;AAC7C,CAAC;AAED,MAAM,oBAAqB,SAAQ,iBAAiB;IAKlD,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAGD,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC;IAClC,CAAC;IACD,IAAI,IAAI,CAAC,GAAY;QACnB,IAAI,CAAC,eAAe,CAAC,GAAG,GAAG,GAAG,CAAC;IACjC,CAAC;IAMD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC;QArB3C,YAAO,GAAY,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;QAQvD,oBAAe,GAAG,IAAI,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAQ1E,aAAQ,GAAG,CAAC,OAAe,EAAE,MAAc,EAAQ,EAAE;YACnD,IAAI,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;QAC9C,CAAC,CAAC;QAKA,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1C,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAEjD,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;CACF","sourcesContent":["import {\n AppObject,\n AppObjectEntity,\n AppObjectRepo,\n getSingletonComponent,\n MemoizedBoolean,\n Version,\n VersionStage\n} from \"@vived/core\";\nimport { AppEntity, makeAppEntity } from \"../../Apps\";\n\nexport abstract class AssetPluginEntity extends AppObjectEntity {\n static type = \"AssetPluginEntity\";\n\n static get(appObjects: AppObjectRepo) {\n return getSingletonComponent<AssetPluginEntity>(\n AssetPluginEntity.type,\n appObjects\n );\n }\n\n abstract container: HTMLElement | undefined;\n abstract get app(): AppEntity;\n abstract get show(): boolean;\n abstract set show(val: boolean);\n abstract version: Version;\n abstract callback: (modelId: string, dataId: string) => void;\n}\n\nexport function makeAssetPluginEntity(appObject: AppObject): AssetPluginEntity {\n return new AssetPluginEntityImp(appObject);\n}\n\nclass AssetPluginEntityImp extends AssetPluginEntity {\n version: Version = new Version(0, 0, 0, VersionStage.RELEASED);\n container: HTMLElement | undefined;\n\n private _app: AppEntity;\n get app(): AppEntity {\n return this._app;\n }\n\n private memoizedShowApp = new MemoizedBoolean(false, this.notifyOnChange);\n get show() {\n return this.memoizedShowApp.val;\n }\n set show(val: boolean) {\n this.memoizedShowApp.val = val;\n }\n\n callback = (modelId: string, dataId: string): void => {\n this.warn(\"Callback has not been injected\");\n };\n\n constructor(appObject: AppObject) {\n super(appObject, AssetPluginEntity.type);\n\n this._app = makeAppEntity(this.appObject);\n this._app.addChangeObserver(this.notifyOnChange);\n\n this.appObjects.registerSingleton(this);\n }\n}\n"]}
1
+ {"version":3,"file":"AssetPluginEntity.js","sourceRoot":"","sources":["../../../../src/AssetPlugin/Entities/AssetPluginEntity.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,eAAe,EAEf,qBAAqB,EACrB,eAAe,EACf,OAAO,EACP,YAAY,EACb,MAAM,aAAa,CAAC;AACrB,OAAO,EAAa,aAAa,EAAE,MAAM,YAAY,CAAC;AAEtD,MAAM,OAAgB,iBAAkB,SAAQ,eAAe;IAG7D,MAAM,CAAC,GAAG,CAAC,UAAyB;QAClC,OAAO,qBAAqB,CAC1B,iBAAiB,CAAC,IAAI,EACtB,UAAU,CACX,CAAC;IACJ,CAAC;;AAPM,sBAAI,GAAG,mBAAmB,CAAC;AAiBpC,MAAM,UAAU,qBAAqB,CAAC,SAAoB;IACxD,OAAO,IAAI,oBAAoB,CAAC,SAAS,CAAC,CAAC;AAC7C,CAAC;AAED,MAAM,oBAAqB,SAAQ,iBAAiB;IAElD,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IACD,IAAI,OAAO,CAAC,GAAY;QACtB,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC;QACpB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC/B,CAAC;IAKD,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAGD,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC;IAClC,CAAC;IACD,IAAI,IAAI,CAAC,GAAY;QACnB,IAAI,CAAC,eAAe,CAAC,GAAG,GAAG,GAAG,CAAC;IACjC,CAAC;IAMD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC;QA7BnC,aAAQ,GAAY,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;QAgBhE,oBAAe,GAAG,IAAI,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAQ1E,aAAQ,GAAG,CAAC,OAAe,EAAE,MAAc,EAAQ,EAAE;YACnD,IAAI,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;QAC9C,CAAC,CAAC;QAKA,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1C,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAEjD,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;CACF","sourcesContent":["import {\n AppObject,\n AppObjectEntity,\n AppObjectRepo,\n getSingletonComponent,\n MemoizedBoolean,\n Version,\n VersionStage\n} from \"@vived/core\";\nimport { AppEntity, makeAppEntity } from \"../../Apps\";\n\nexport abstract class AssetPluginEntity extends AppObjectEntity {\n static type = \"AssetPluginEntity\";\n\n static get(appObjects: AppObjectRepo) {\n return getSingletonComponent<AssetPluginEntity>(\n AssetPluginEntity.type,\n appObjects\n );\n }\n\n abstract container: HTMLElement | undefined;\n abstract get app(): AppEntity;\n abstract get show(): boolean;\n abstract set show(val: boolean);\n abstract version: Version;\n abstract callback: (modelId: string, dataId: string) => void;\n}\n\nexport function makeAssetPluginEntity(appObject: AppObject): AssetPluginEntity {\n return new AssetPluginEntityImp(appObject);\n}\n\nclass AssetPluginEntityImp extends AssetPluginEntity {\n private _version: Version = new Version(0, 0, 0, VersionStage.RELEASED);\n get version(): Version {\n return this._version;\n }\n set version(val: Version) {\n this._version = val;\n this._app.versions.push(val);\n }\n\n container: HTMLElement | undefined;\n\n private _app: AppEntity;\n get app(): AppEntity {\n return this._app;\n }\n\n private memoizedShowApp = new MemoizedBoolean(false, this.notifyOnChange);\n get show() {\n return this.memoizedShowApp.val;\n }\n set show(val: boolean) {\n this.memoizedShowApp.val = val;\n }\n\n callback = (modelId: string, dataId: string): void => {\n this.warn(\"Callback has not been injected\");\n };\n\n constructor(appObject: AppObject) {\n super(appObject, AssetPluginEntity.type);\n\n this._app = makeAppEntity(this.appObject);\n this._app.addChangeObserver(this.notifyOnChange);\n\n this.appObjects.registerSingleton(this);\n }\n}\n"]}
@@ -0,0 +1,75 @@
1
+ import { DomainFactory, Version } from "@vived/core";
2
+ import { AppRepoEntity, makeMounterUC } from "../../Apps";
3
+ import { makeDispatchDisposeAppUC, makeDispatchStartBrowseChannelsUC, makeDispatchStopAppUC, makeHostDispatchEntity } from "../../Dispatcher";
4
+ import { makeCloseAssetSystemPluginUC, makeGetAssetFolderURLHandler, makeHostHandlerEntity, makeRegisterExternalStyleSheetsHandler } from "../../Handler";
5
+ import { makeAssetPluginEntity } from "../Entities";
6
+ import { makeAssetPluginPM } from "../PM";
7
+ import { makeSandboxAssetPluginContainerUC } from "../UCs";
8
+ const assetPluginAppID = "app448f8f293fbb493a9e233f113ce8b56a";
9
+ const assetPluginVersion = "1.2.0";
10
+ /**
11
+ * Factory responsible for setting up the AssetPlugin domain components.
12
+ * This factory initializes all entities, use cases, and presentation models
13
+ * required for the AssetPlugin functionality.
14
+ */
15
+ export class AssetPluginFeatureFactory extends DomainFactory {
16
+ constructor(appObject) {
17
+ super(appObject);
18
+ // Unique name for this factory
19
+ this.factoryName = "AssetPluginFeatureFactory";
20
+ }
21
+ /**
22
+ * Sets up all entities required for the AssetPlugin system
23
+ */
24
+ setupEntities() {
25
+ // Initialize entities
26
+ this.assetPlugin = makeAssetPluginEntity(this.appObject);
27
+ makeHostHandlerEntity(this.appObject);
28
+ makeHostDispatchEntity(this.appObject);
29
+ }
30
+ /**
31
+ * Sets up all use cases for the AssetPlugin system
32
+ */
33
+ setupUCs() {
34
+ // Initialize use cases
35
+ makeMounterUC(this.appObject);
36
+ makeSandboxAssetPluginContainerUC(this.appObject);
37
+ // Setup dispatchers
38
+ makeDispatchStartBrowseChannelsUC(this.appObject);
39
+ makeDispatchStopAppUC(this.appObject);
40
+ makeDispatchDisposeAppUC(this.appObject);
41
+ // Setup handlers
42
+ makeGetAssetFolderURLHandler(this.appObject);
43
+ makeRegisterExternalStyleSheetsHandler(this.appObject);
44
+ makeCloseAssetSystemPluginUC(this.appObject);
45
+ }
46
+ /**
47
+ * Sets up all presentation managers for the AssetPlugin system
48
+ */
49
+ setupPMs() {
50
+ // Initialize presentation managers
51
+ makeAssetPluginPM(this.appObject);
52
+ }
53
+ /**
54
+ * Performs any final setup operations after all components are initialized
55
+ */
56
+ finalSetup() {
57
+ if (!this.assetPlugin) {
58
+ this.error("AssetPlugin entity not initialized");
59
+ return;
60
+ }
61
+ this.assetPlugin.version = Version.FromString(assetPluginVersion);
62
+ const repo = AppRepoEntity.get(this.appObjects);
63
+ if (repo) {
64
+ repo.add(this.assetPlugin.app);
65
+ }
66
+ else {
67
+ this.error("Unable to find app repo. Make sure it is setup before setting up the Asset Plugin");
68
+ }
69
+ }
70
+ }
71
+ export function makeAssetPluginFeatureFactory(appObjects) {
72
+ const ao = appObjects.getOrCreate(assetPluginAppID);
73
+ return new AssetPluginFeatureFactory(ao);
74
+ }
75
+ //# sourceMappingURL=AssetPluginFeatureFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AssetPluginFeatureFactory.js","sourceRoot":"","sources":["../../../../src/AssetPlugin/Factories/AssetPluginFeatureFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,aAAa,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC1D,OAAO,EACN,wBAAwB,EACxB,iCAAiC,EACjC,qBAAqB,EACrB,sBAAsB,EACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACN,4BAA4B,EAC5B,4BAA4B,EAC5B,qBAAqB,EACrB,sCAAsC,EACtC,MAAM,eAAe,CAAC;AACvB,OAAO,EAAqB,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAE,iCAAiC,EAAE,MAAM,QAAQ,CAAC;AAE3D,MAAM,gBAAgB,GAAG,qCAAqC,CAAC;AAC/D,MAAM,kBAAkB,GAAG,OAAO,CAAC;AAEnC;;;;GAIG;AACH,MAAM,OAAO,yBAA0B,SAAQ,aAAa;IAM1D,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,CAAC,CAAC;QANnB,+BAA+B;QACtB,gBAAW,GAAG,2BAA2B,CAAC;IAMnD,CAAC;IAED;;OAEG;IACH,aAAa;QACX,sBAAsB;QACtB,IAAI,CAAC,WAAW,GAAG,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACzD,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACtC,sBAAsB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,uBAAuB;QACvB,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC9B,iCAAiC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAElD,oBAAoB;QACpB,iCAAiC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAClD,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACtC,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAEzC,iBAAiB;QACjB,4BAA4B,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC7C,sCAAsC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACvD,4BAA4B,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC/C,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,mCAAmC;QACnC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,UAAU;QACR,IAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACxB,IAAI,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;YACjD,OAAO;QACR,CAAC;QAED,IAAI,CAAC,WAAW,CAAC,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC;QAElE,MAAM,IAAI,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAChD,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACjC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,KAAK,CACR,mFAAmF,CACpF,CAAC;QACJ,CAAC;IACD,CAAC;CACF;AAED,MAAM,UAAU,6BAA6B,CAC3C,UAAyB;IAEzB,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;IACpD,OAAO,IAAI,yBAAyB,CAAC,EAAE,CAAC,CAAC;AAC3C,CAAC","sourcesContent":["import { AppObject, AppObjectRepo, DomainFactory, Version } from \"@vived/core\";\r\nimport { AppRepoEntity, makeMounterUC } from \"../../Apps\";\r\nimport {\r\n\tmakeDispatchDisposeAppUC,\r\n\tmakeDispatchStartBrowseChannelsUC,\r\n\tmakeDispatchStopAppUC,\r\n\tmakeHostDispatchEntity\r\n} from \"../../Dispatcher\";\r\nimport {\r\n\tmakeCloseAssetSystemPluginUC,\r\n\tmakeGetAssetFolderURLHandler,\r\n\tmakeHostHandlerEntity,\r\n\tmakeRegisterExternalStyleSheetsHandler\r\n} from \"../../Handler\";\r\nimport { AssetPluginEntity, makeAssetPluginEntity } from \"../Entities\";\r\nimport { makeAssetPluginPM } from \"../PM\";\r\nimport { makeSandboxAssetPluginContainerUC } from \"../UCs\";\r\n\r\nconst assetPluginAppID = \"app448f8f293fbb493a9e233f113ce8b56a\";\r\nconst assetPluginVersion = \"1.2.0\";\r\n\r\n/**\r\n * Factory responsible for setting up the AssetPlugin domain components.\r\n * This factory initializes all entities, use cases, and presentation models\r\n * required for the AssetPlugin functionality.\r\n */\r\nexport class AssetPluginFeatureFactory extends DomainFactory {\r\n // Unique name for this factory\r\n readonly factoryName = \"AssetPluginFeatureFactory\";\r\n\r\n\tprivate assetPlugin?: AssetPluginEntity\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject);\r\n }\r\n\r\n /**\r\n * Sets up all entities required for the AssetPlugin system\r\n */\r\n setupEntities(): void {\r\n // Initialize entities\r\n this.assetPlugin = makeAssetPluginEntity(this.appObject);\r\n makeHostHandlerEntity(this.appObject);\r\n makeHostDispatchEntity(this.appObject);\r\n }\r\n\r\n /**\r\n * Sets up all use cases for the AssetPlugin system\r\n */\r\n setupUCs(): void {\r\n // Initialize use cases\r\n makeMounterUC(this.appObject);\r\n makeSandboxAssetPluginContainerUC(this.appObject);\r\n\r\n // Setup dispatchers\r\n makeDispatchStartBrowseChannelsUC(this.appObject);\r\n makeDispatchStopAppUC(this.appObject);\r\n makeDispatchDisposeAppUC(this.appObject);\r\n\r\n // Setup handlers\r\n makeGetAssetFolderURLHandler(this.appObject);\r\n makeRegisterExternalStyleSheetsHandler(this.appObject);\r\n makeCloseAssetSystemPluginUC(this.appObject);\r\n }\r\n\r\n /**\r\n * Sets up all presentation managers for the AssetPlugin system\r\n */\r\n setupPMs(): void {\r\n // Initialize presentation managers\r\n makeAssetPluginPM(this.appObject);\r\n }\r\n\r\n /**\r\n * Performs any final setup operations after all components are initialized\r\n */\r\n finalSetup(): void {\r\n if(!this.assetPlugin) {\r\n\t\t\tthis.error(\"AssetPlugin entity not initialized\");\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.assetPlugin.version = Version.FromString(assetPluginVersion);\r\n\r\n\t\tconst repo = AppRepoEntity.get(this.appObjects);\r\n if (repo) {\r\n repo.add(this.assetPlugin.app);\r\n } else {\r\n this.error(\r\n \"Unable to find app repo. Make sure it is setup before setting up the Asset Plugin\"\r\n );\r\n }\r\n }\r\n}\r\n\r\nexport function makeAssetPluginFeatureFactory(\r\n appObjects: AppObjectRepo\r\n): AssetPluginFeatureFactory {\r\n const ao = appObjects.getOrCreate(assetPluginAppID);\r\n return new AssetPluginFeatureFactory(ao);\r\n}\r\n"]}
@@ -1,2 +1,3 @@
1
+ export * from "./AssetPluginFeatureFactory";
1
2
  export * from "./setupAssetsPluginForSandbox";
2
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/AssetPlugin/Factories/index.ts"],"names":[],"mappings":"AAAA,cAAc,+BAA+B,CAAC","sourcesContent":["export * from \"./setupAssetsPluginForSandbox\";\r\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/AssetPlugin/Factories/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC;AAC5C,cAAc,+BAA+B,CAAC","sourcesContent":["export * from \"./AssetPluginFeatureFactory\";\r\nexport * from \"./setupAssetsPluginForSandbox\";\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"assetFileAdapter.js","sourceRoot":"","sources":["../../../../src/Assets/Adapters/assetFileAdapter.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,WAAW,EAEX,kBAAkB,EACnB,MAAM,oBAAoB,CAAC;AAE5B;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAA2B;IACtD;;OAEG;IACH,SAAS,EAAE,kBAAkB;IAE7B;;;;;;OAMG;IACH,SAAS,EAAE,CACT,EAAU,EACV,UAAyB,EACzB,KAAgC,EAChC,EAAE;QACF,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,OAAO;QACT,CAAC;QACD,MAAM,EAAE,GAAG,WAAW,CAAC,OAAO,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAC/C,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,UAAU,CAAC,WAAW,CAAC,kBAAkB,EAAE,4BAA4B,CAAC,CAAC;YACzE,OAAO;QACT,CAAC;QACD,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC;IAED;;;;;;OAMG;IACH,WAAW,EAAE,CACX,EAAU,EACV,UAAyB,EACzB,KAAgC,EAChC,EAAE;QACF,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,OAAO;QACT,CAAC;QACD,MAAM,EAAE,GAAG,WAAW,CAAC,OAAO,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAC/C,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,UAAU,CAAC,WAAW,CAAC,kBAAkB,EAAE,4BAA4B,CAAC,CAAC;YACzE,OAAO;QACT,CAAC;QACD,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;CACF,CAAC","sourcesContent":["// filepath: c:\\Users\\amosp\\Documents\\WebGL\\vivedlearning_host\\src\\Assets\\Adapters\\assetFileAdapter.ts\nimport { AppObjectRepo, PmAdapter } from \"@vived/core\";\nimport {\n AssetFilePM,\n AssetFileVM,\n defaultAssetFileVM\n} from \"../PMs/AssetFilePM\";\n\n/**\n * Adapter for connecting AssetFilePM to UI components\n * Provides the interface for React components to subscribe to AssetFileVM updates\n */\nexport const assetFileAdapter: PmAdapter<AssetFileVM> = {\n /**\n * Default view model used before subscription is established\n */\n defaultVM: defaultAssetFileVM,\n\n /**\n * Subscribe a view function to updates from the presentation manager\n *\n * @param id - ID of the asset to observe\n * @param appObjects - Repository of app objects\n * @param setVM - Callback function that will receive view model updates\n */\n subscribe: (\n id: string,\n appObjects: AppObjectRepo,\n setVM: (vm: AssetFileVM) => void\n ) => {\n if (!id) {\n return;\n }\n const pm = AssetFilePM.getByID(id, appObjects);\n if (!pm) {\n appObjects.submitError(\"assetFileAdapter\", \"Unable to find AssetFilePM\");\n return;\n }\n pm.addView(setVM);\n },\n\n /**\n * Unsubscribe a view function from updates\n *\n * @param id - ID of the asset to stop observing\n * @param appObjects - Repository of app objects\n * @param setVM - Callback function to remove from updates\n */\n unsubscribe: (\n id: string,\n appObjects: AppObjectRepo,\n setVM: (vm: AssetFileVM) => void\n ) => {\n if (!id) {\n return;\n }\n const pm = AssetFilePM.getByID(id, appObjects);\n if (!pm) {\n appObjects.submitError(\"assetFileAdapter\", \"Unable to find AssetFilePM\");\n return;\n }\n pm.removeView(setVM);\n }\n};\n"]}
1
+ {"version":3,"file":"assetFileAdapter.js","sourceRoot":"","sources":["../../../../src/Assets/Adapters/assetFileAdapter.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,WAAW,EAEX,kBAAkB,EACnB,MAAM,oBAAoB,CAAC;AAE5B;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAA2B;IACtD;;OAEG;IACH,SAAS,EAAE,kBAAkB;IAE7B;;;;;;OAMG;IACH,SAAS,EAAE,CACT,EAAU,EACV,UAAyB,EACzB,KAAgC,EAChC,EAAE;QACF,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,OAAO;QACT,CAAC;QACD,MAAM,EAAE,GAAG,WAAW,CAAC,OAAO,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAC/C,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,UAAU,CAAC,WAAW,CAAC,kBAAkB,EAAE,4BAA4B,CAAC,CAAC;YACzE,OAAO;QACT,CAAC;QACD,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC;IAED;;;;;;OAMG;IACH,WAAW,EAAE,CACX,EAAU,EACV,UAAyB,EACzB,KAAgC,EAChC,EAAE;QACF,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,OAAO;QACT,CAAC;QACD,MAAM,EAAE,GAAG,WAAW,CAAC,OAAO,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAC/C,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,UAAU,CAAC,WAAW,CAAC,kBAAkB,EAAE,4BAA4B,CAAC,CAAC;YACzE,OAAO;QACT,CAAC;QACD,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;CACF,CAAC","sourcesContent":["// filepath: c:\\Users\\amosp\\Documents\\WebGL\\vivedlearning_host\\src\\Assets\\Adapters\\assetFileAdapter.ts\r\nimport { AppObjectRepo, PmAdapter } from \"@vived/core\";\r\nimport {\r\n AssetFilePM,\r\n AssetFileVM,\r\n defaultAssetFileVM\r\n} from \"../PMs/AssetFilePM\";\r\n\r\n/**\r\n * Adapter for connecting AssetFilePM to UI components\r\n * Provides the interface for React components to subscribe to AssetFileVM updates\r\n */\r\nexport const assetFileAdapter: PmAdapter<AssetFileVM> = {\r\n /**\r\n * Default view model used before subscription is established\r\n */\r\n defaultVM: defaultAssetFileVM,\r\n\r\n /**\r\n * Subscribe a view function to updates from the presentation manager\r\n *\r\n * @param id - ID of the asset to observe\r\n * @param appObjects - Repository of app objects\r\n * @param setVM - Callback function that will receive view model updates\r\n */\r\n subscribe: (\r\n id: string,\r\n appObjects: AppObjectRepo,\r\n setVM: (vm: AssetFileVM) => void\r\n ) => {\r\n if (!id) {\r\n return;\r\n }\r\n const pm = AssetFilePM.getByID(id, appObjects);\r\n if (!pm) {\r\n appObjects.submitError(\"assetFileAdapter\", \"Unable to find AssetFilePM\");\r\n return;\r\n }\r\n pm.addView(setVM);\r\n },\r\n\r\n /**\r\n * Unsubscribe a view function from updates\r\n *\r\n * @param id - ID of the asset to stop observing\r\n * @param appObjects - Repository of app objects\r\n * @param setVM - Callback function to remove from updates\r\n */\r\n unsubscribe: (\r\n id: string,\r\n appObjects: AppObjectRepo,\r\n setVM: (vm: AssetFileVM) => void\r\n ) => {\r\n if (!id) {\r\n return;\r\n }\r\n const pm = AssetFilePM.getByID(id, appObjects);\r\n if (!pm) {\r\n appObjects.submitError(\"assetFileAdapter\", \"Unable to find AssetFilePM\");\r\n return;\r\n }\r\n pm.removeView(setVM);\r\n }\r\n};\r\n"]}
@@ -0,0 +1,82 @@
1
+ import { DomainFactory } from "@vived/core";
2
+ import { makeAppAssets, makeAssetEntity, makeAssetRepo } from "../Entities";
3
+ import { makeAppAssetListPM, makeAssetFilePM, makeAssetPM, makeEditingAppAssetPM, makeShowArchivedAppAssetPM } from "../PMs";
4
+ import { makeArchiveAssetUC, makeDeleteAssetUC, makeDownloadAssetFileUC, makeEditAppAsset, makeGetAppAssetUC, makeGetAssetBlobURLUC, makeGetAssetFileUC, makeGetAssetUC, makeNewAppAssetUC, makeNewAssetUC, makePrefetchAssets, makeUpdateAppAssetMetaUC, makeUpdateAssetFileUC } from "../UCs";
5
+ /**
6
+ * Factory responsible for setting up the Assets domain components for sandbox.
7
+ * This factory initializes all entities, use cases, and presentation models
8
+ * required for the Assets functionality.
9
+ */
10
+ export class SandboxAssetsFactory extends DomainFactory {
11
+ constructor(appObject, appObjects) {
12
+ super(appObject);
13
+ // Unique name for this factory
14
+ this.factoryName = "SandboxAssetsFactory";
15
+ this.assetRepoAO = appObjects.getOrCreate("Asset Repository");
16
+ this.appAssetsAO = appObjects.getOrCreate("App Assets");
17
+ }
18
+ /**
19
+ * Sets up all entities required for the Assets system
20
+ */
21
+ setupEntities() {
22
+ // Initialize entities
23
+ const assetRepo = makeAssetRepo(this.assetRepoAO);
24
+ assetRepo.assetFactory = this.makeAssetFactory();
25
+ makeAppAssets(this.appAssetsAO);
26
+ }
27
+ /**
28
+ * Sets up all use cases for the Assets system
29
+ */
30
+ setupUCs() {
31
+ // Asset Repository UCs
32
+ makeEditAppAsset(this.assetRepoAO);
33
+ makeGetAssetBlobURLUC(this.assetRepoAO);
34
+ makeGetAssetFileUC(this.assetRepoAO);
35
+ makeGetAssetUC(this.assetRepoAO);
36
+ makePrefetchAssets(this.assetRepoAO);
37
+ makeNewAssetUC(this.assetRepoAO);
38
+ // App Assets UCs
39
+ makeNewAppAssetUC(this.appAssetsAO);
40
+ makeGetAppAssetUC(this.appAssetsAO);
41
+ }
42
+ /**
43
+ * Sets up all presentation managers for the Assets system
44
+ */
45
+ setupPMs() {
46
+ // App Assets PMs
47
+ makeAppAssetListPM(this.appAssetsAO);
48
+ makeShowArchivedAppAssetPM(this.appAssetsAO);
49
+ makeEditingAppAssetPM(this.appAssetsAO);
50
+ }
51
+ /**
52
+ * Performs any final setup operations after all components are initialized
53
+ */
54
+ finalSetup() {
55
+ // No additional setup required for Assets
56
+ }
57
+ /**
58
+ * Creates the asset factory function for creating individual assets
59
+ */
60
+ makeAssetFactory() {
61
+ return (id) => {
62
+ const ao = this.appObjects.getOrCreate(id);
63
+ // Entities
64
+ const entity = makeAssetEntity(ao);
65
+ // UCs
66
+ makeArchiveAssetUC(ao);
67
+ makeDeleteAssetUC(ao);
68
+ makeDownloadAssetFileUC(ao);
69
+ makeUpdateAssetFileUC(ao);
70
+ makeUpdateAppAssetMetaUC(ao);
71
+ // PMs
72
+ makeAssetPM(ao);
73
+ makeAssetFilePM(ao);
74
+ return entity;
75
+ };
76
+ }
77
+ }
78
+ export function makeSandboxAssetsFactory(appObjects) {
79
+ const ao = appObjects.getOrCreate("SandboxAssets");
80
+ return new SandboxAssetsFactory(ao, appObjects);
81
+ }
82
+ //# sourceMappingURL=SandboxAssetsFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SandboxAssetsFactory.js","sourceRoot":"","sources":["../../../../src/Assets/Factories/SandboxAssetsFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,aAAa,EAAE,MAAM,aAAa,CAAC;AACtE,OAAO,EAGL,aAAa,EACb,eAAe,EACf,aAAa,EACd,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,WAAW,EACX,qBAAqB,EACrB,0BAA0B,EAC3B,MAAM,QAAQ,CAAC;AAChB,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,uBAAuB,EACvB,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,EAClB,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,wBAAwB,EACxB,qBAAqB,EACtB,MAAM,QAAQ,CAAC;AAEhB;;;;GAIG;AACH,MAAM,OAAO,oBAAqB,SAAQ,aAAa;IAOrD,YAAY,SAAoB,EAAE,UAAyB;QACzD,KAAK,CAAC,SAAS,CAAC,CAAC;QAPnB,+BAA+B;QACtB,gBAAW,GAAG,sBAAsB,CAAC;QAO5C,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;QAC9D,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IAC1D,CAAC;IAED;;OAEG;IACH,aAAa;QACX,sBAAsB;QACtB,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAClD,SAAS,CAAC,YAAY,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACjD,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,uBAAuB;QACvB,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACnC,qBAAqB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACxC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACrC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACjC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACrC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAEjC,iBAAiB;QACjB,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACpC,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,iBAAiB;QACjB,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACrC,0BAA0B,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC7C,qBAAqB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,UAAU;QACR,0CAA0C;IAC5C,CAAC;IAED;;OAEG;IACK,gBAAgB;QACtB,OAAO,CAAC,EAAU,EAAe,EAAE;YACjC,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YAE3C,WAAW;YACX,MAAM,MAAM,GAAG,eAAe,CAAC,EAAE,CAAC,CAAC;YAEnC,MAAM;YACN,kBAAkB,CAAC,EAAE,CAAC,CAAC;YACvB,iBAAiB,CAAC,EAAE,CAAC,CAAC;YACtB,uBAAuB,CAAC,EAAE,CAAC,CAAC;YAC5B,qBAAqB,CAAC,EAAE,CAAC,CAAC;YAC1B,wBAAwB,CAAC,EAAE,CAAC,CAAC;YAE7B,MAAM;YACN,WAAW,CAAC,EAAE,CAAC,CAAC;YAChB,eAAe,CAAC,EAAE,CAAC,CAAC;YAEpB,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC;IACJ,CAAC;CACF;AAED,MAAM,UAAU,wBAAwB,CACtC,UAAyB;IAEzB,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;IACnD,OAAO,IAAI,oBAAoB,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;AAClD,CAAC","sourcesContent":["import { AppObject, AppObjectRepo, DomainFactory } from \"@vived/core\";\r\nimport {\r\n AssetEntity,\r\n AssetRepo,\r\n makeAppAssets,\r\n makeAssetEntity,\r\n makeAssetRepo\r\n} from \"../Entities\";\r\nimport {\r\n makeAppAssetListPM,\r\n makeAssetFilePM,\r\n makeAssetPM,\r\n makeEditingAppAssetPM,\r\n makeShowArchivedAppAssetPM\r\n} from \"../PMs\";\r\nimport {\r\n makeArchiveAssetUC,\r\n makeDeleteAssetUC,\r\n makeDownloadAssetFileUC,\r\n makeEditAppAsset,\r\n makeGetAppAssetUC,\r\n makeGetAssetBlobURLUC,\r\n makeGetAssetFileUC,\r\n makeGetAssetUC,\r\n makeNewAppAssetUC,\r\n makeNewAssetUC,\r\n makePrefetchAssets,\r\n makeUpdateAppAssetMetaUC,\r\n makeUpdateAssetFileUC\r\n} from \"../UCs\";\r\n\r\n/**\r\n * Factory responsible for setting up the Assets domain components for sandbox.\r\n * This factory initializes all entities, use cases, and presentation models\r\n * required for the Assets functionality.\r\n */\r\nexport class SandboxAssetsFactory extends DomainFactory {\r\n // Unique name for this factory\r\n readonly factoryName = \"SandboxAssetsFactory\";\r\n\r\n private assetRepoAO: AppObject;\r\n private appAssetsAO: AppObject;\r\n\r\n constructor(appObject: AppObject, appObjects: AppObjectRepo) {\r\n super(appObject);\r\n this.assetRepoAO = appObjects.getOrCreate(\"Asset Repository\");\r\n this.appAssetsAO = appObjects.getOrCreate(\"App Assets\");\r\n }\r\n\r\n /**\r\n * Sets up all entities required for the Assets system\r\n */\r\n setupEntities(): void {\r\n // Initialize entities\r\n const assetRepo = makeAssetRepo(this.assetRepoAO);\r\n assetRepo.assetFactory = this.makeAssetFactory();\r\n makeAppAssets(this.appAssetsAO);\r\n }\r\n\r\n /**\r\n * Sets up all use cases for the Assets system\r\n */\r\n setupUCs(): void {\r\n // Asset Repository UCs\r\n makeEditAppAsset(this.assetRepoAO);\r\n makeGetAssetBlobURLUC(this.assetRepoAO);\r\n makeGetAssetFileUC(this.assetRepoAO);\r\n makeGetAssetUC(this.assetRepoAO);\r\n makePrefetchAssets(this.assetRepoAO);\r\n makeNewAssetUC(this.assetRepoAO);\r\n\r\n // App Assets UCs\r\n makeNewAppAssetUC(this.appAssetsAO);\r\n makeGetAppAssetUC(this.appAssetsAO);\r\n }\r\n\r\n /**\r\n * Sets up all presentation managers for the Assets system\r\n */\r\n setupPMs(): void {\r\n // App Assets PMs\r\n makeAppAssetListPM(this.appAssetsAO);\r\n makeShowArchivedAppAssetPM(this.appAssetsAO);\r\n makeEditingAppAssetPM(this.appAssetsAO);\r\n }\r\n\r\n /**\r\n * Performs any final setup operations after all components are initialized\r\n */\r\n finalSetup(): void {\r\n // No additional setup required for Assets\r\n }\r\n\r\n /**\r\n * Creates the asset factory function for creating individual assets\r\n */\r\n private makeAssetFactory() {\r\n return (id: string): AssetEntity => {\r\n const ao = this.appObjects.getOrCreate(id);\r\n\r\n // Entities\r\n const entity = makeAssetEntity(ao);\r\n\r\n // UCs\r\n makeArchiveAssetUC(ao);\r\n makeDeleteAssetUC(ao);\r\n makeDownloadAssetFileUC(ao);\r\n makeUpdateAssetFileUC(ao);\r\n makeUpdateAppAssetMetaUC(ao);\r\n\r\n // PMs\r\n makeAssetPM(ao);\r\n makeAssetFilePM(ao);\r\n\r\n return entity;\r\n };\r\n }\r\n}\r\n\r\nexport function makeSandboxAssetsFactory(\r\n appObjects: AppObjectRepo\r\n): SandboxAssetsFactory {\r\n const ao = appObjects.getOrCreate(\"SandboxAssets\");\r\n return new SandboxAssetsFactory(ao, appObjects);\r\n}\r\n"]}
@@ -1,3 +1,4 @@
1
+ export * from "./SandboxAssetsFactory";
1
2
  export * from "./setupAssetsForSandbox";
2
3
  export * from "./AssetsFactory";
3
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Assets/Factories/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC","sourcesContent":["export * from \"./setupAssetsForSandbox\";\r\nexport * from \"./AssetsFactory\";\r\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Assets/Factories/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC","sourcesContent":["export * from \"./SandboxAssetsFactory\";\r\nexport * from \"./setupAssetsForSandbox\";\r\nexport * from \"./AssetsFactory\";\r\n"]}
@@ -43,4 +43,8 @@ export class CacheFeatureFactory extends DomainFactory {
43
43
  // No additional setup required for cache
44
44
  }
45
45
  }
46
+ export function makeCacheFeatureFactory(appObjects) {
47
+ const ao = appObjects.getOrCreate("Cache");
48
+ return new CacheFeatureFactory(ao);
49
+ }
46
50
  //# sourceMappingURL=CacheFeatureFactory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CacheFeatureFactory.js","sourceRoot":"","sources":["../../../../src/Cache/Factories/CacheFeatureFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,aAAa,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAC1E,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,QAAQ,CAAC;AAEhB;;;;GAIG;AACH,MAAM,OAAO,mBAAoB,SAAQ,aAAa;IAIpD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,CAAC,CAAC;QAJnB,+BAA+B;QACtB,gBAAW,GAAG,qBAAqB,CAAC;IAI7C,CAAC;IAED;;OAEG;IACH,aAAa;QACX,sBAAsB;QACtB,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACtC,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,kBAAkB;QAClB,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACzC,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACzC,uBAAuB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxC,uBAAuB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,sDAAsD;IACxD,CAAC;IAED;;OAEG;IACH,UAAU;QACR,yCAAyC;IAC3C,CAAC;CACF","sourcesContent":["import { AppObject, DomainFactory } from \"@vived/core\";\r\nimport { makeAssetCacheEntity, makeScriptCacheEntity } from \"../Entities\";\r\nimport {\r\n makeGetAssetFromCacheUC,\r\n makeGetScriptFromCacheUC,\r\n makeStoreAssetInCacheUC,\r\n makeStoreScriptInCacheUC\r\n} from \"../UCs\";\r\n\r\n/**\r\n * Factory responsible for setting up the Cache domain components.\r\n * This factory initializes all entities, use cases, and presentation models\r\n * required for the Cache functionality.\r\n */\r\nexport class CacheFeatureFactory extends DomainFactory {\r\n // Unique name for this factory\r\n readonly factoryName = \"CacheFeatureFactory\";\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject);\r\n }\r\n\r\n /**\r\n * Sets up all entities required for the Cache system\r\n */\r\n setupEntities(): void {\r\n // Initialize entities\r\n makeScriptCacheEntity(this.appObject);\r\n makeAssetCacheEntity(this.appObject);\r\n }\r\n\r\n /**\r\n * Sets up all use cases for the Cache system\r\n */\r\n setupUCs(): void {\r\n // Cache use cases\r\n makeGetScriptFromCacheUC(this.appObject);\r\n makeStoreScriptInCacheUC(this.appObject);\r\n makeGetAssetFromCacheUC(this.appObject);\r\n makeStoreAssetInCacheUC(this.appObject);\r\n }\r\n\r\n /**\r\n * Sets up all presentation managers for the Cache system\r\n */\r\n setupPMs(): void {\r\n // No presentation managers exist for the Cache system\r\n }\r\n\r\n /**\r\n * Performs any final setup operations after all components are initialized\r\n */\r\n finalSetup(): void {\r\n // No additional setup required for cache\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"CacheFeatureFactory.js","sourceRoot":"","sources":["../../../../src/Cache/Factories/CacheFeatureFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,aAAa,EAAE,MAAM,aAAa,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAC1E,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,QAAQ,CAAC;AAEhB;;;;GAIG;AACH,MAAM,OAAO,mBAAoB,SAAQ,aAAa;IAIpD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,CAAC,CAAC;QAJnB,+BAA+B;QACtB,gBAAW,GAAG,qBAAqB,CAAC;IAI7C,CAAC;IAED;;OAEG;IACH,aAAa;QACX,sBAAsB;QACtB,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACtC,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,kBAAkB;QAClB,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACzC,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACzC,uBAAuB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxC,uBAAuB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,sDAAsD;IACxD,CAAC;IAED;;OAEG;IACH,UAAU;QACR,yCAAyC;IAC3C,CAAC;CACF;AAED,MAAM,UAAU,uBAAuB,CACrC,UAAyB;IAEzB,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAC3C,OAAO,IAAI,mBAAmB,CAAC,EAAE,CAAC,CAAC;AACrC,CAAC","sourcesContent":["import { AppObject, AppObjectRepo, DomainFactory } from \"@vived/core\";\r\nimport { makeAssetCacheEntity, makeScriptCacheEntity } from \"../Entities\";\r\nimport {\r\n makeGetAssetFromCacheUC,\r\n makeGetScriptFromCacheUC,\r\n makeStoreAssetInCacheUC,\r\n makeStoreScriptInCacheUC\r\n} from \"../UCs\";\r\n\r\n/**\r\n * Factory responsible for setting up the Cache domain components.\r\n * This factory initializes all entities, use cases, and presentation models\r\n * required for the Cache functionality.\r\n */\r\nexport class CacheFeatureFactory extends DomainFactory {\r\n // Unique name for this factory\r\n readonly factoryName = \"CacheFeatureFactory\";\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject);\r\n }\r\n\r\n /**\r\n * Sets up all entities required for the Cache system\r\n */\r\n setupEntities(): void {\r\n // Initialize entities\r\n makeScriptCacheEntity(this.appObject);\r\n makeAssetCacheEntity(this.appObject);\r\n }\r\n\r\n /**\r\n * Sets up all use cases for the Cache system\r\n */\r\n setupUCs(): void {\r\n // Cache use cases\r\n makeGetScriptFromCacheUC(this.appObject);\r\n makeStoreScriptInCacheUC(this.appObject);\r\n makeGetAssetFromCacheUC(this.appObject);\r\n makeStoreAssetInCacheUC(this.appObject);\r\n }\r\n\r\n /**\r\n * Sets up all presentation managers for the Cache system\r\n */\r\n setupPMs(): void {\r\n // No presentation managers exist for the Cache system\r\n }\r\n\r\n /**\r\n * Performs any final setup operations after all components are initialized\r\n */\r\n finalSetup(): void {\r\n // No additional setup required for cache\r\n }\r\n}\r\n\r\nexport function makeCacheFeatureFactory(\r\n appObjects: AppObjectRepo\r\n): CacheFeatureFactory {\r\n const ao = appObjects.getOrCreate(\"Cache\");\r\n return new CacheFeatureFactory(ao);\r\n}\r\n"]}
@@ -0,0 +1,48 @@
1
+ import { DomainFactory } from "@vived/core";
2
+ import { makeChallengeResults } from "../Entities";
3
+ import { makeChallengeResultsPM, makeChallengeScoreListPM, makeHasChallengeResultsPM } from "../PMs";
4
+ /**
5
+ * Factory responsible for setting up the ChallengeResults domain components.
6
+ * This factory initializes all entities, use cases, and presentation models
7
+ * required for the ChallengeResults functionality.
8
+ */
9
+ export class ChallengeResultsFactory extends DomainFactory {
10
+ constructor(appObject) {
11
+ super(appObject);
12
+ // Unique name for this factory
13
+ this.factoryName = "ChallengeResultsFactory";
14
+ }
15
+ /**
16
+ * Sets up all entities required for the ChallengeResults system
17
+ */
18
+ setupEntities() {
19
+ // Initialize entities
20
+ makeChallengeResults(this.appObject);
21
+ }
22
+ /**
23
+ * Sets up all use cases for the ChallengeResults system
24
+ */
25
+ setupUCs() {
26
+ // No use cases for ChallengeResults
27
+ }
28
+ /**
29
+ * Sets up all presentation managers for the ChallengeResults system
30
+ */
31
+ setupPMs() {
32
+ // Initialize presentation managers
33
+ makeChallengeResultsPM(this.appObject);
34
+ makeChallengeScoreListPM(this.appObject);
35
+ makeHasChallengeResultsPM(this.appObject);
36
+ }
37
+ /**
38
+ * Performs any final setup operations after all components are initialized
39
+ */
40
+ finalSetup() {
41
+ // No additional setup required for ChallengeResults
42
+ }
43
+ }
44
+ export function makeChallengeResultsFactory(appObjects) {
45
+ const ao = appObjects.getOrCreate("ChallengeResults");
46
+ return new ChallengeResultsFactory(ao);
47
+ }
48
+ //# sourceMappingURL=ChallengeResultsFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChallengeResultsFactory.js","sourceRoot":"","sources":["../../../../src/ChallengeResults/Factories/ChallengeResultsFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,aAAa,EAAE,MAAM,aAAa,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EACL,sBAAsB,EACtB,wBAAwB,EACxB,yBAAyB,EAC1B,MAAM,QAAQ,CAAC;AAEhB;;;;GAIG;AACH,MAAM,OAAO,uBAAwB,SAAQ,aAAa;IAIxD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,CAAC,CAAC;QAJnB,+BAA+B;QACtB,gBAAW,GAAG,yBAAyB,CAAC;IAIjD,CAAC;IAED;;OAEG;IACH,aAAa;QACX,sBAAsB;QACtB,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,oCAAoC;IACtC,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,mCAAmC;QACnC,sBAAsB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACvC,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACzC,yBAAyB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,UAAU;QACR,oDAAoD;IACtD,CAAC;CACF;AAED,MAAM,UAAU,2BAA2B,CACzC,UAAyB;IAEzB,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;IACtD,OAAO,IAAI,uBAAuB,CAAC,EAAE,CAAC,CAAC;AACzC,CAAC","sourcesContent":["import { AppObject, AppObjectRepo, DomainFactory } from \"@vived/core\";\r\nimport { makeChallengeResults } from \"../Entities\";\r\nimport {\r\n makeChallengeResultsPM,\r\n makeChallengeScoreListPM,\r\n makeHasChallengeResultsPM\r\n} from \"../PMs\";\r\n\r\n/**\r\n * Factory responsible for setting up the ChallengeResults domain components.\r\n * This factory initializes all entities, use cases, and presentation models\r\n * required for the ChallengeResults functionality.\r\n */\r\nexport class ChallengeResultsFactory extends DomainFactory {\r\n // Unique name for this factory\r\n readonly factoryName = \"ChallengeResultsFactory\";\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject);\r\n }\r\n\r\n /**\r\n * Sets up all entities required for the ChallengeResults system\r\n */\r\n setupEntities(): void {\r\n // Initialize entities\r\n makeChallengeResults(this.appObject);\r\n }\r\n\r\n /**\r\n * Sets up all use cases for the ChallengeResults system\r\n */\r\n setupUCs(): void {\r\n // No use cases for ChallengeResults\r\n }\r\n\r\n /**\r\n * Sets up all presentation managers for the ChallengeResults system\r\n */\r\n setupPMs(): void {\r\n // Initialize presentation managers\r\n makeChallengeResultsPM(this.appObject);\r\n makeChallengeScoreListPM(this.appObject);\r\n makeHasChallengeResultsPM(this.appObject);\r\n }\r\n\r\n /**\r\n * Performs any final setup operations after all components are initialized\r\n */\r\n finalSetup(): void {\r\n // No additional setup required for ChallengeResults\r\n }\r\n}\r\n\r\nexport function makeChallengeResultsFactory(\r\n appObjects: AppObjectRepo\r\n): ChallengeResultsFactory {\r\n const ao = appObjects.getOrCreate(\"ChallengeResults\");\r\n return new ChallengeResultsFactory(ao);\r\n}\r\n"]}
@@ -1,2 +1,3 @@
1
+ export * from "./ChallengeResultsFactory";
1
2
  export * from "./setupChallengeResults";
2
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ChallengeResults/Factories/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC","sourcesContent":["export * from \"./setupChallengeResults\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ChallengeResults/Factories/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC","sourcesContent":["export * from \"./ChallengeResultsFactory\";\nexport * from \"./setupChallengeResults\";\n"]}
@@ -0,0 +1,58 @@
1
+ import { DomainFactory } from "@vived/core";
2
+ import { makeDialogQueue } from "../Entities";
3
+ import { makeDialogQueuePM } from "../PMs";
4
+ import { makeMakeAlertDialogUC, makeMakeConfirmDialogUC, makeMakeMarkdownDialogUC, makeMakeSelectModelDialogUC, makeMakeSpinnerDialogUC } from "../UCs";
5
+ import { makeAlertFactory } from "./alertDialogFactory";
6
+ import { makeConfirmFactory } from "./confirmDialogFactory";
7
+ import { makeMarkdownEditorFactory } from "./markdownDialogEditorFactory";
8
+ import { makeSelectModelFactory } from "./selectDialogModelFactory";
9
+ import { makeSpinnerFactory } from "./spinnerDialogFactory";
10
+ /**
11
+ * Factory responsible for setting up the Dialog domain components for sandbox.
12
+ * This factory initializes all entities, use cases, and presentation models
13
+ * required for the Dialog functionality.
14
+ */
15
+ export class SandboxDialogFactory extends DomainFactory {
16
+ constructor(appObject) {
17
+ super(appObject);
18
+ // Unique name for this factory
19
+ this.factoryName = "SandboxDialogFactory";
20
+ }
21
+ /**
22
+ * Sets up all entities required for the Dialog system
23
+ */
24
+ setupEntities() {
25
+ // Initialize entities
26
+ makeDialogQueue(this.appObject);
27
+ }
28
+ /**
29
+ * Sets up all use cases for the Dialog system
30
+ */
31
+ setupUCs() {
32
+ }
33
+ /**
34
+ * Sets up all presentation managers for the Dialog system
35
+ */
36
+ setupPMs() {
37
+ // Initialize presentation managers
38
+ makeDialogQueuePM(this.appObject);
39
+ }
40
+ /**
41
+ * Performs any final setup operations after all components are initialized
42
+ */
43
+ finalSetup() {
44
+ // Assign factory functions to use cases
45
+ makeMakeAlertDialogUC(this.appObject).factory = makeAlertFactory(this.appObjects);
46
+ makeMakeConfirmDialogUC(this.appObject).factory = makeConfirmFactory(this.appObjects);
47
+ makeMakeMarkdownDialogUC(this.appObject).factory =
48
+ makeMarkdownEditorFactory(this.appObjects);
49
+ makeMakeSpinnerDialogUC(this.appObject).factory = makeSpinnerFactory(this.appObjects);
50
+ makeMakeSelectModelDialogUC(this.appObject).factory =
51
+ makeSelectModelFactory(this.appObjects);
52
+ }
53
+ }
54
+ export function makeSandboxDialogFactory(appObjects) {
55
+ const ao = appObjects.getOrCreate("Dialog");
56
+ return new SandboxDialogFactory(ao);
57
+ }
58
+ //# sourceMappingURL=SandboxDialogFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SandboxDialogFactory.js","sourceRoot":"","sources":["../../../../src/Dialog/Factories/SandboxDialogFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,aAAa,EAAE,MAAM,aAAa,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAC3C,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,wBAAwB,EACxB,2BAA2B,EAC3B,uBAAuB,EACxB,MAAM,QAAQ,CAAC;AAChB,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE5D;;;;GAIG;AACH,MAAM,OAAO,oBAAqB,SAAQ,aAAa;IAIrD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,CAAC,CAAC;QAJnB,+BAA+B;QACtB,gBAAW,GAAG,sBAAsB,CAAC;IAI9C,CAAC;IAED;;OAEG;IACH,aAAa;QACX,sBAAsB;QACtB,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,QAAQ;IACR,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,mCAAmC;QACnC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,UAAU;QACR,wCAAwC;QACxC,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,GAAG,gBAAgB,CAC9D,IAAI,CAAC,UAAU,CAChB,CAAC;QACF,uBAAuB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,GAAG,kBAAkB,CAClE,IAAI,CAAC,UAAU,CAChB,CAAC;QACF,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO;YAC9C,yBAAyB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC7C,uBAAuB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,GAAG,kBAAkB,CAClE,IAAI,CAAC,UAAU,CAChB,CAAC;QACF,2BAA2B,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO;YACjD,sBAAsB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC5C,CAAC;CACF;AAED,MAAM,UAAU,wBAAwB,CACtC,UAAyB;IAEzB,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC5C,OAAO,IAAI,oBAAoB,CAAC,EAAE,CAAC,CAAC;AACtC,CAAC","sourcesContent":["import { AppObject, AppObjectRepo, DomainFactory } from \"@vived/core\";\r\nimport { makeDialogQueue } from \"../Entities\";\r\nimport { makeDialogQueuePM } from \"../PMs\";\r\nimport {\r\n makeMakeAlertDialogUC,\r\n makeMakeConfirmDialogUC,\r\n makeMakeMarkdownDialogUC,\r\n makeMakeSelectModelDialogUC,\r\n makeMakeSpinnerDialogUC\r\n} from \"../UCs\";\r\nimport { makeAlertFactory } from \"./alertDialogFactory\";\r\nimport { makeConfirmFactory } from \"./confirmDialogFactory\";\r\nimport { makeMarkdownEditorFactory } from \"./markdownDialogEditorFactory\";\r\nimport { makeSelectModelFactory } from \"./selectDialogModelFactory\";\r\nimport { makeSpinnerFactory } from \"./spinnerDialogFactory\";\r\n\r\n/**\r\n * Factory responsible for setting up the Dialog domain components for sandbox.\r\n * This factory initializes all entities, use cases, and presentation models\r\n * required for the Dialog functionality.\r\n */\r\nexport class SandboxDialogFactory extends DomainFactory {\r\n // Unique name for this factory\r\n readonly factoryName = \"SandboxDialogFactory\";\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject);\r\n }\r\n\r\n /**\r\n * Sets up all entities required for the Dialog system\r\n */\r\n setupEntities(): void {\r\n // Initialize entities\r\n makeDialogQueue(this.appObject);\r\n }\r\n\r\n /**\r\n * Sets up all use cases for the Dialog system\r\n */\r\n setupUCs(): void {\r\n }\r\n\r\n /**\r\n * Sets up all presentation managers for the Dialog system\r\n */\r\n setupPMs(): void {\r\n // Initialize presentation managers\r\n makeDialogQueuePM(this.appObject);\r\n }\r\n\r\n /**\r\n * Performs any final setup operations after all components are initialized\r\n */\r\n finalSetup(): void {\r\n // Assign factory functions to use cases\r\n makeMakeAlertDialogUC(this.appObject).factory = makeAlertFactory(\r\n this.appObjects\r\n );\r\n makeMakeConfirmDialogUC(this.appObject).factory = makeConfirmFactory(\r\n this.appObjects\r\n );\r\n makeMakeMarkdownDialogUC(this.appObject).factory =\r\n makeMarkdownEditorFactory(this.appObjects);\r\n makeMakeSpinnerDialogUC(this.appObject).factory = makeSpinnerFactory(\r\n this.appObjects\r\n );\r\n makeMakeSelectModelDialogUC(this.appObject).factory =\r\n makeSelectModelFactory(this.appObjects);\r\n }\r\n}\r\n\r\nexport function makeSandboxDialogFactory(\r\n appObjects: AppObjectRepo\r\n): SandboxDialogFactory {\r\n const ao = appObjects.getOrCreate(\"Dialog\");\r\n return new SandboxDialogFactory(ao);\r\n}\r\n"]}
@@ -1,6 +1,7 @@
1
1
  export * from "./alertDialogFactory";
2
2
  export * from "./confirmDialogFactory";
3
3
  export * from "./markdownDialogEditorFactory";
4
+ export * from "./SandboxDialogFactory";
4
5
  export * from "./selectDialogModelFactory";
5
6
  export * from "./setupDialogForSandbox";
6
7
  export * from "./spinnerDialogFactory";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Dialog/Factories/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC","sourcesContent":["export * from \"./alertDialogFactory\";\nexport * from \"./confirmDialogFactory\";\nexport * from \"./markdownDialogEditorFactory\";\nexport * from \"./selectDialogModelFactory\";\nexport * from \"./setupDialogForSandbox\";\nexport * from \"./spinnerDialogFactory\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Dialog/Factories/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC","sourcesContent":["export * from \"./alertDialogFactory\";\nexport * from \"./confirmDialogFactory\";\nexport * from \"./markdownDialogEditorFactory\";\nexport * from \"./SandboxDialogFactory\";\nexport * from \"./selectDialogModelFactory\";\nexport * from \"./setupDialogForSandbox\";\nexport * from \"./spinnerDialogFactory\";\n"]}