cyberia 3.0.3 → 3.2.5

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 (296) hide show
  1. package/{.env.production → .env.example} +20 -4
  2. package/.github/workflows/engine-cyberia.cd.yml +43 -10
  3. package/.github/workflows/engine-cyberia.ci.yml +48 -26
  4. package/.github/workflows/ghpkg.ci.yml +5 -5
  5. package/.github/workflows/gitlab.ci.yml +1 -1
  6. package/.github/workflows/hardhat.ci.yml +82 -0
  7. package/.github/workflows/npmpkg.ci.yml +60 -14
  8. package/.github/workflows/publish.ci.yml +26 -7
  9. package/.github/workflows/publish.cyberia.ci.yml +5 -5
  10. package/.github/workflows/pwa-microservices-template-page.cd.yml +6 -7
  11. package/.github/workflows/pwa-microservices-template-test.ci.yml +4 -4
  12. package/.github/workflows/release.cd.yml +14 -8
  13. package/.vscode/extensions.json +9 -8
  14. package/.vscode/settings.json +3 -2
  15. package/CHANGELOG.md +643 -1
  16. package/CLI-HELP.md +132 -57
  17. package/Dockerfile +4 -2
  18. package/README.md +347 -22
  19. package/WHITE-PAPER.md +1540 -0
  20. package/bin/build.js +21 -12
  21. package/bin/cyberia.js +2640 -106
  22. package/bin/deploy.js +258 -372
  23. package/bin/file.js +5 -1
  24. package/bin/index.js +2640 -106
  25. package/bin/vs.js +3 -3
  26. package/conf.js +169 -105
  27. package/deployment.yaml +236 -20
  28. package/hardhat/.env.example +31 -0
  29. package/hardhat/README.md +531 -0
  30. package/hardhat/WHITE-PAPER.md +1540 -0
  31. package/hardhat/contracts/ObjectLayerToken.sol +391 -0
  32. package/hardhat/deployments/.gitkeep +0 -0
  33. package/hardhat/deployments/hardhat-ObjectLayerToken.json +11 -0
  34. package/hardhat/hardhat.config.js +136 -0
  35. package/hardhat/ignition/modules/ObjectLayerToken.js +21 -0
  36. package/hardhat/networks/besu-object-layer.network.json +138 -0
  37. package/hardhat/package-lock.json +4323 -0
  38. package/hardhat/package.json +36 -0
  39. package/hardhat/scripts/deployObjectLayerToken.js +98 -0
  40. package/hardhat/test/ObjectLayerToken.js +592 -0
  41. package/hardhat/types/ethers-contracts/ObjectLayerToken.ts +690 -0
  42. package/hardhat/types/ethers-contracts/common.ts +92 -0
  43. package/hardhat/types/ethers-contracts/factories/ObjectLayerToken__factory.ts +1055 -0
  44. package/hardhat/types/ethers-contracts/factories/index.ts +4 -0
  45. package/hardhat/types/ethers-contracts/hardhat.d.ts +47 -0
  46. package/hardhat/types/ethers-contracts/index.ts +6 -0
  47. package/jsdoc.dd-cyberia.json +68 -0
  48. package/jsdoc.json +65 -49
  49. package/manifests/cronjobs/dd-cron/dd-cron-backup.yaml +5 -4
  50. package/manifests/cronjobs/dd-cron/dd-cron-dns.yaml +5 -4
  51. package/manifests/deployment/dd-cyberia-development/deployment.yaml +562 -0
  52. package/manifests/deployment/dd-cyberia-development/proxy.yaml +297 -0
  53. package/manifests/deployment/dd-cyberia-development/pv-pvc.yaml +132 -0
  54. package/manifests/deployment/dd-default-development/deployment.yaml +2 -2
  55. package/manifests/deployment/dd-test-development/deployment.yaml +88 -74
  56. package/manifests/deployment/dd-test-development/proxy.yaml +13 -4
  57. package/manifests/deployment/playwright/deployment.yaml +1 -1
  58. package/manifests/pv-pvc-dd.yaml +1 -1
  59. package/nodemon.json +1 -1
  60. package/package.json +60 -48
  61. package/proxy.yaml +118 -10
  62. package/pv-pvc.yaml +132 -0
  63. package/scripts/k3s-node-setup.sh +1 -1
  64. package/scripts/ports-ls.sh +2 -0
  65. package/scripts/rhel-grpc-setup.sh +56 -0
  66. package/src/api/atlas-sprite-sheet/atlas-sprite-sheet.controller.js +47 -1
  67. package/src/api/atlas-sprite-sheet/atlas-sprite-sheet.model.js +17 -2
  68. package/src/api/atlas-sprite-sheet/atlas-sprite-sheet.router.js +5 -0
  69. package/src/api/atlas-sprite-sheet/atlas-sprite-sheet.service.js +80 -7
  70. package/src/api/cyberia-dialogue/cyberia-dialogue.controller.js +93 -0
  71. package/src/api/cyberia-dialogue/cyberia-dialogue.model.js +36 -0
  72. package/src/api/cyberia-dialogue/cyberia-dialogue.router.js +29 -0
  73. package/src/api/cyberia-dialogue/cyberia-dialogue.service.js +51 -0
  74. package/src/api/cyberia-entity/cyberia-entity.controller.js +74 -0
  75. package/src/api/cyberia-entity/cyberia-entity.model.js +24 -0
  76. package/src/api/cyberia-entity/cyberia-entity.router.js +27 -0
  77. package/src/api/cyberia-entity/cyberia-entity.service.js +42 -0
  78. package/src/api/cyberia-instance/cyberia-fallback-world.js +368 -0
  79. package/src/api/cyberia-instance/cyberia-instance.controller.js +92 -0
  80. package/src/api/cyberia-instance/cyberia-instance.model.js +84 -0
  81. package/src/api/cyberia-instance/cyberia-instance.router.js +63 -0
  82. package/src/api/cyberia-instance/cyberia-instance.service.js +191 -0
  83. package/src/api/cyberia-instance/cyberia-portal-connector.js +486 -0
  84. package/src/api/cyberia-instance-conf/cyberia-instance-conf.controller.js +74 -0
  85. package/src/api/cyberia-instance-conf/cyberia-instance-conf.defaults.js +413 -0
  86. package/src/api/cyberia-instance-conf/cyberia-instance-conf.model.js +228 -0
  87. package/src/api/cyberia-instance-conf/cyberia-instance-conf.router.js +27 -0
  88. package/src/api/cyberia-instance-conf/cyberia-instance-conf.service.js +42 -0
  89. package/src/api/cyberia-map/cyberia-map.controller.js +79 -0
  90. package/src/api/cyberia-map/cyberia-map.model.js +30 -0
  91. package/src/api/cyberia-map/cyberia-map.router.js +40 -0
  92. package/src/api/cyberia-map/cyberia-map.service.js +74 -0
  93. package/src/api/document/document.service.js +1 -1
  94. package/src/api/file/file.controller.js +3 -1
  95. package/src/api/file/file.ref.json +18 -0
  96. package/src/api/file/file.service.js +28 -5
  97. package/src/api/ipfs/ipfs.controller.js +4 -25
  98. package/src/api/ipfs/ipfs.model.js +43 -34
  99. package/src/api/ipfs/ipfs.router.js +8 -13
  100. package/src/api/ipfs/ipfs.service.js +56 -104
  101. package/src/api/object-layer/README.md +347 -22
  102. package/src/api/object-layer/object-layer.controller.js +6 -2
  103. package/src/api/object-layer/object-layer.model.js +12 -8
  104. package/src/api/object-layer/object-layer.router.js +698 -42
  105. package/src/api/object-layer/object-layer.service.js +119 -37
  106. package/src/api/object-layer-render-frames/object-layer-render-frames.model.js +1 -2
  107. package/src/api/user/user.router.js +10 -5
  108. package/src/api/user/user.service.js +15 -14
  109. package/src/cli/baremetal.js +6 -10
  110. package/src/cli/cloud-init.js +0 -3
  111. package/src/cli/cluster.js +7 -7
  112. package/src/cli/db.js +723 -857
  113. package/src/cli/deploy.js +215 -105
  114. package/src/cli/env.js +34 -5
  115. package/src/cli/fs.js +5 -4
  116. package/src/cli/image.js +0 -3
  117. package/src/cli/index.js +83 -15
  118. package/src/cli/kubectl.js +211 -0
  119. package/src/cli/monitor.js +5 -6
  120. package/src/cli/release.js +284 -0
  121. package/src/cli/repository.js +708 -62
  122. package/src/cli/run.js +371 -151
  123. package/src/cli/secrets.js +73 -2
  124. package/src/cli/ssh.js +1 -1
  125. package/src/cli/test.js +3 -3
  126. package/src/client/Cryptokoyn.index.js +3 -4
  127. package/src/client/CyberiaPortal.index.js +3 -4
  128. package/src/client/Default.index.js +3 -4
  129. package/src/client/Itemledger.index.js +4 -963
  130. package/src/client/Underpost.index.js +3 -4
  131. package/src/client/components/core/AgGrid.js +20 -5
  132. package/src/client/components/core/Alert.js +2 -2
  133. package/src/client/components/core/AppStore.js +69 -0
  134. package/src/client/components/core/CalendarCore.js +2 -2
  135. package/src/client/components/core/Content.js +22 -3
  136. package/src/client/components/core/Docs.js +30 -6
  137. package/src/client/components/core/DropDown.js +137 -17
  138. package/src/client/components/core/FileExplorer.js +71 -4
  139. package/src/client/components/core/Input.js +1 -1
  140. package/src/client/components/core/Keyboard.js +2 -2
  141. package/src/client/components/core/LogIn.js +2 -2
  142. package/src/client/components/core/LogOut.js +2 -2
  143. package/src/client/components/core/Modal.js +20 -7
  144. package/src/client/components/core/Panel.js +0 -1
  145. package/src/client/components/core/PanelForm.js +19 -19
  146. package/src/client/components/core/RichText.js +1 -2
  147. package/src/client/components/core/SocketIo.js +82 -29
  148. package/src/client/components/core/SocketIoHandler.js +75 -0
  149. package/src/client/components/core/Stream.js +143 -95
  150. package/src/client/components/core/Webhook.js +40 -7
  151. package/src/client/components/cryptokoyn/AppStoreCryptokoyn.js +5 -0
  152. package/src/client/components/cryptokoyn/LogInCryptokoyn.js +3 -3
  153. package/src/client/components/cryptokoyn/LogOutCryptokoyn.js +2 -2
  154. package/src/client/components/cryptokoyn/MenuCryptokoyn.js +3 -3
  155. package/src/client/components/cryptokoyn/SocketIoCryptokoyn.js +3 -51
  156. package/src/client/components/cyberia/InstanceEngineCyberia.js +700 -0
  157. package/src/client/components/cyberia/MapEngineCyberia.js +1359 -2
  158. package/src/client/components/cyberia/ObjectLayerEngineModal.js +17 -6
  159. package/src/client/components/cyberia/ObjectLayerEngineViewer.js +92 -54
  160. package/src/client/components/cyberia-portal/AppStoreCyberiaPortal.js +5 -0
  161. package/src/client/components/cyberia-portal/CommonCyberiaPortal.js +217 -30
  162. package/src/client/components/cyberia-portal/CssCyberiaPortal.js +44 -2
  163. package/src/client/components/cyberia-portal/LogInCyberiaPortal.js +3 -4
  164. package/src/client/components/cyberia-portal/LogOutCyberiaPortal.js +2 -2
  165. package/src/client/components/cyberia-portal/MenuCyberiaPortal.js +104 -9
  166. package/src/client/components/cyberia-portal/RoutesCyberiaPortal.js +5 -0
  167. package/src/client/components/cyberia-portal/SocketIoCyberiaPortal.js +3 -49
  168. package/src/client/components/cyberia-portal/TranslateCyberiaPortal.js +4 -0
  169. package/src/client/components/default/AppStoreDefault.js +5 -0
  170. package/src/client/components/default/LogInDefault.js +3 -3
  171. package/src/client/components/default/LogOutDefault.js +2 -2
  172. package/src/client/components/default/MenuDefault.js +5 -5
  173. package/src/client/components/default/SocketIoDefault.js +3 -51
  174. package/src/client/components/itemledger/AppStoreItemledger.js +5 -0
  175. package/src/client/components/itemledger/LogInItemledger.js +3 -3
  176. package/src/client/components/itemledger/LogOutItemledger.js +2 -2
  177. package/src/client/components/itemledger/MenuItemledger.js +3 -3
  178. package/src/client/components/itemledger/SocketIoItemledger.js +3 -51
  179. package/src/client/components/underpost/AppStoreUnderpost.js +5 -0
  180. package/src/client/components/underpost/CssUnderpost.js +59 -0
  181. package/src/client/components/underpost/LogInUnderpost.js +6 -3
  182. package/src/client/components/underpost/LogOutUnderpost.js +4 -2
  183. package/src/client/components/underpost/MenuUnderpost.js +104 -18
  184. package/src/client/components/underpost/RoutesUnderpost.js +2 -0
  185. package/src/client/components/underpost/SocketIoUnderpost.js +3 -51
  186. package/src/client/public/cryptokoyn/assets/logo/base-icon.png +0 -0
  187. package/src/client/public/cryptokoyn/browserconfig.xml +12 -0
  188. package/src/client/public/cryptokoyn/microdata.json +85 -0
  189. package/src/client/public/cryptokoyn/site.webmanifest +57 -0
  190. package/src/client/public/cryptokoyn/sitemap +3 -3
  191. package/src/client/public/default/sitemap +3 -3
  192. package/src/client/public/itemledger/browserconfig.xml +2 -2
  193. package/src/client/public/itemledger/manifest.webmanifest +4 -4
  194. package/src/client/public/itemledger/microdata.json +71 -0
  195. package/src/client/public/itemledger/sitemap +3 -3
  196. package/src/client/public/itemledger/yandex-browser-manifest.json +2 -2
  197. package/src/client/public/test/sitemap +3 -3
  198. package/src/client/services/core/core.service.js +20 -8
  199. package/src/client/services/cyberia-dialogue/cyberia-dialogue.service.js +105 -0
  200. package/src/client/services/cyberia-entity/cyberia-entity.management.js +57 -0
  201. package/src/client/services/cyberia-entity/cyberia-entity.service.js +105 -0
  202. package/src/client/services/cyberia-instance/cyberia-instance.management.js +194 -0
  203. package/src/client/services/cyberia-instance/cyberia-instance.service.js +122 -0
  204. package/src/client/services/cyberia-instance-conf/cyberia-instance-conf.service.js +105 -0
  205. package/src/client/services/cyberia-map/cyberia-map.management.js +193 -0
  206. package/src/client/services/cyberia-map/cyberia-map.service.js +126 -0
  207. package/src/client/services/instance/instance.management.js +2 -2
  208. package/src/client/services/ipfs/ipfs.service.js +3 -23
  209. package/src/client/services/object-layer/object-layer.management.js +3 -3
  210. package/src/client/services/object-layer/object-layer.service.js +21 -0
  211. package/src/client/services/user/user.management.js +2 -2
  212. package/src/client/ssr/body/404.js +15 -11
  213. package/src/client/ssr/body/500.js +15 -11
  214. package/src/client/ssr/body/SwaggerDarkMode.js +285 -0
  215. package/src/client/ssr/head/PwaItemledger.js +60 -0
  216. package/src/client/ssr/offline/NoNetworkConnection.js +11 -10
  217. package/src/client/ssr/pages/CyberiaServerMetrics.js +1 -1
  218. package/src/client/ssr/pages/Test.js +11 -10
  219. package/src/client.build.js +0 -3
  220. package/src/client.dev.js +0 -3
  221. package/src/db/DataBaseProvider.js +17 -2
  222. package/src/db/mariadb/MariaDB.js +14 -9
  223. package/src/db/mongo/MongooseDB.js +17 -1
  224. package/src/grpc/cyberia/OFF_CHAIN_ECONOMY.md +305 -0
  225. package/src/grpc/cyberia/README.md +326 -0
  226. package/src/grpc/cyberia/grpc-server.js +530 -0
  227. package/src/index.js +24 -1
  228. package/src/proxy.js +0 -3
  229. package/src/runtime/express/Dockerfile +4 -0
  230. package/src/runtime/express/Express.js +33 -10
  231. package/src/runtime/lampp/Dockerfile +13 -2
  232. package/src/runtime/lampp/Lampp.js +33 -17
  233. package/src/runtime/wp/Dockerfile +68 -0
  234. package/src/runtime/wp/Wp.js +639 -0
  235. package/src/server/auth.js +36 -15
  236. package/src/server/backup.js +39 -12
  237. package/src/server/besu-genesis-generator.js +1630 -0
  238. package/src/server/client-build-docs.js +133 -17
  239. package/src/server/client-build-live.js +9 -18
  240. package/src/server/client-build.js +229 -101
  241. package/src/server/client-dev-server.js +14 -13
  242. package/src/server/client-formatted.js +109 -57
  243. package/src/server/conf.js +391 -164
  244. package/src/server/cron.js +27 -24
  245. package/src/server/dns.js +29 -12
  246. package/src/server/downloader.js +0 -2
  247. package/src/server/ipfs-client.js +24 -1
  248. package/src/server/logger.js +27 -9
  249. package/src/server/object-layer.js +217 -103
  250. package/src/server/peer.js +8 -2
  251. package/src/server/process.js +1 -50
  252. package/src/server/proxy.js +4 -8
  253. package/src/server/runtime.js +30 -9
  254. package/src/server/semantic-layer-generator-floor.js +359 -0
  255. package/src/server/semantic-layer-generator-skin.js +1294 -0
  256. package/src/server/semantic-layer-generator.js +116 -555
  257. package/src/server/ssr.js +0 -3
  258. package/src/server/start.js +19 -12
  259. package/src/server/tls.js +0 -2
  260. package/src/server.js +0 -4
  261. package/src/ws/IoInterface.js +1 -10
  262. package/src/ws/IoServer.js +14 -33
  263. package/src/ws/core/channels/core.ws.chat.js +65 -20
  264. package/src/ws/core/channels/core.ws.mailer.js +113 -32
  265. package/src/ws/core/channels/core.ws.stream.js +90 -31
  266. package/src/ws/core/core.ws.connection.js +12 -33
  267. package/src/ws/core/core.ws.emit.js +10 -26
  268. package/src/ws/core/core.ws.server.js +25 -58
  269. package/src/ws/default/channels/default.ws.main.js +53 -12
  270. package/src/ws/default/default.ws.connection.js +26 -13
  271. package/src/ws/default/default.ws.server.js +30 -12
  272. package/.env.development +0 -43
  273. package/.env.test +0 -43
  274. package/hardhat/contracts/CryptoKoyn.sol +0 -59
  275. package/hardhat/contracts/ItemLedger.sol +0 -73
  276. package/hardhat/contracts/Lock.sol +0 -34
  277. package/hardhat/hardhat.config.cjs +0 -45
  278. package/hardhat/ignition/modules/Lock.js +0 -18
  279. package/hardhat/networks/cryptokoyn-itemledger.network.json +0 -29
  280. package/hardhat/scripts/deployCryptokoyn.cjs +0 -25
  281. package/hardhat/scripts/deployItemledger.cjs +0 -25
  282. package/hardhat/test/Lock.js +0 -126
  283. package/hardhat/white-paper.md +0 -581
  284. package/src/client/components/cryptokoyn/CommonCryptokoyn.js +0 -29
  285. package/src/client/components/cryptokoyn/ElementsCryptokoyn.js +0 -38
  286. package/src/client/components/cyberia-portal/ElementsCyberiaPortal.js +0 -38
  287. package/src/client/components/default/ElementsDefault.js +0 -38
  288. package/src/client/components/itemledger/CommonItemledger.js +0 -29
  289. package/src/client/components/itemledger/ElementsItemledger.js +0 -38
  290. package/src/client/components/underpost/CommonUnderpost.js +0 -29
  291. package/src/client/components/underpost/ElementsUnderpost.js +0 -38
  292. package/src/ws/core/management/core.ws.chat.js +0 -8
  293. package/src/ws/core/management/core.ws.mailer.js +0 -16
  294. package/src/ws/core/management/core.ws.stream.js +0 -8
  295. package/src/ws/default/management/default.ws.main.js +0 -8
  296. package/white-paper.md +0 -581
@@ -63,20 +63,62 @@ const CssCommonCyberia = async () => {
63
63
  text-align: center;
64
64
  }
65
65
 
66
- .landing-title,
67
66
  h1,
68
67
  h2,
69
68
  h3 {
70
69
  font-family: var(--cy-font-retro-cta);
70
+ }
71
+
72
+ p {
73
+ font-family: var(--cy-font-retro);
74
+ }
75
+
76
+ .landing-title,
77
+ .html-main-body h1,
78
+ .html-main-body h2,
79
+ .html-main-body h3 {
71
80
  font-size: 5rem;
72
81
  color: #ffcc00;
73
82
  text-shadow: 2px 2px 0px #9e7b00;
74
83
  margin-bottom: 2rem;
75
84
  }
76
85
 
77
- p {
86
+ /* Docs section retro styling */
87
+ .docs-header h1 {
88
+ font-family: var(--cy-font-retro-cta);
89
+ color: #ffcc00;
90
+ text-shadow: 2px 2px 0px #9e7b00;
91
+ }
92
+ .docs-card {
93
+ border: 2px solid #ffcc00;
94
+ transition: all 0.3s ease-in-out;
95
+ }
96
+ .docs-card:hover {
97
+ background: rgba(255, 204, 0, 0.08);
98
+ box-shadow:
99
+ 0 0 10px rgba(255, 204, 0, 0.3),
100
+ 0 0 20px rgba(255, 204, 0, 0.15);
101
+ transform: translateY(-3px);
102
+ }
103
+ .card-icon {
104
+ color: #ffcc00;
105
+ }
106
+ .card-content h3 {
107
+ font-family: var(--cy-font-retro-cta);
108
+ font-size: 1.25rem;
109
+ }
110
+ .card-content p {
111
+ font-family: var(--cy-font-retro);
112
+ }
113
+ .submenu-btn {
78
114
  font-family: var(--cy-font-retro);
79
115
  }
116
+ .submenu-btn:hover {
117
+ background: rgba(255, 204, 0, 0.1);
118
+ }
119
+ .down-arrow-submenu {
120
+ left: 102px;
121
+ }
80
122
 
81
123
  .object-layer-viewer-container {
82
124
  width: 100% !important;
@@ -1,20 +1,19 @@
1
1
  import { Auth } from '../core/Auth.js';
2
2
  import { LogIn } from '../core/LogIn.js';
3
3
  import { s } from '../core/VanillaJs.js';
4
- import { ElementsCyberiaPortal } from './ElementsCyberiaPortal.js';
4
+ import { AppStoreCyberiaPortal } from './AppStoreCyberiaPortal.js';
5
5
  import { ObjectLayerManagement } from '../../services/object-layer/object-layer.management.js';
6
6
 
7
7
  const LogInCyberiaPortal = async function () {
8
8
  LogIn.Event['LogInCyberiaPortal'] = async (options) => {
9
9
  const { token, user } = options;
10
10
 
11
- ElementsCyberiaPortal.Data.user.main.model.user = user;
11
+ AppStoreCyberiaPortal.Data.user.main.model.user = user;
12
12
 
13
- // if (user.role === 'admin' || user.role === 'moderator') s(`.main-btn-admin`).classList.remove('hide');
14
13
  await ObjectLayerManagement.Reload('viewer');
15
14
  };
16
15
  const { user } = await Auth.sessionIn();
17
- ElementsCyberiaPortal.Data.user.main.model.user = user;
16
+ AppStoreCyberiaPortal.Data.user.main.model.user = user;
18
17
  };
19
18
 
20
19
  export { LogInCyberiaPortal };
@@ -1,11 +1,11 @@
1
1
  import { LogOut } from '../core/LogOut.js';
2
2
  import { s } from '../core/VanillaJs.js';
3
- import { ElementsCyberiaPortal } from './ElementsCyberiaPortal.js';
3
+ import { AppStoreCyberiaPortal } from './AppStoreCyberiaPortal.js';
4
4
  import { ObjectLayerManagement } from '../../services/object-layer/object-layer.management.js';
5
5
 
6
6
  const LogOutCyberiaPortal = async function () {
7
7
  LogOut.Event['LogOutCyberiaPortal'] = async (result = { user: { _id: '' } }) => {
8
- ElementsCyberiaPortal.Data.user.main.model.user = result.user;
8
+ AppStoreCyberiaPortal.Data.user.main.model.user = result.user;
9
9
  s(`.main-btn-admin`).classList.add('hide');
10
10
  await ObjectLayerManagement.Reload('viewer');
11
11
  };
@@ -2,15 +2,23 @@ import { Account } from '../core/Account.js';
2
2
  import { BtnIcon } from '../core/BtnIcon.js';
3
3
  import { getId, newInstance, random } from '../core/CommonJs.js';
4
4
  import { Css, ThemeEvents, Themes, darkTheme } from '../core/Css.js';
5
+ import { Docs } from '../core/Docs.js';
5
6
  import { EventsUI } from '../core/EventsUI.js';
6
7
  import { LogIn } from '../core/LogIn.js';
7
8
  import { LogOut } from '../core/LogOut.js';
8
- import { buildBadgeToolTipMenuOption, Modal, renderMenuLabel, renderViewTitle } from '../core/Modal.js';
9
+ import {
10
+ buildBadgeToolTipMenuOption,
11
+ isSubMenuOpen,
12
+ Modal,
13
+ renderMenuLabel,
14
+ renderViewTitle,
15
+ subMenuRender,
16
+ } from '../core/Modal.js';
9
17
  import { SignUp } from '../core/SignUp.js';
10
18
  import { Translate } from '../core/Translate.js';
11
19
  import { htmls, s } from '../core/VanillaJs.js';
12
- import { getProxyPath } from '../core/Router.js';
13
- import { ElementsCyberiaPortal } from './ElementsCyberiaPortal.js';
20
+ import { getProxyPath, setQueryParams } from '../core/Router.js';
21
+ import { AppStoreCyberiaPortal } from './AppStoreCyberiaPortal.js';
14
22
  import Sortable from 'sortablejs';
15
23
  import { RouterCyberiaPortal, BannerAppTemplate } from './RoutesCyberiaPortal.js';
16
24
  import { SettingsCyberiaPortal } from './SettingsCyberiaPortal.js';
@@ -22,6 +30,7 @@ import { ObjectLayerEngineViewer } from '../cyberia/ObjectLayerEngineViewer.js';
22
30
  import { ObjectLayerManagement } from '../../services/object-layer/object-layer.management.js';
23
31
  import { MainBodyCyberiaPortal } from './MainBodyCyberiaPortal.js';
24
32
  import { MapEngineCyberia } from '../cyberia/MapEngineCyberia.js';
33
+ import { InstanceEngineCyberia } from '../cyberia/InstanceEngineCyberia.js';
25
34
 
26
35
  const MenuCyberiaPortal = {
27
36
  Data: {},
@@ -135,6 +144,27 @@ const MenuCyberiaPortal = {
135
144
  handleContainerClass: 'handle-btn-container',
136
145
  tooltipHtml: await Badge.Render(buildBadgeToolTipMenuOption('chat')),
137
146
  })}
147
+ ${await BtnIcon.Render({
148
+ class: 'in wfa main-btn-menu main-btn-docs',
149
+ useMenuBtn: true,
150
+ label: html`<div class="in">
151
+ ${renderMenuLabel({
152
+ icon: html`<img class="inl cyberia-menu-icon" src="${getProxyPath()}assets/ui-icons/wiki.png" />`,
153
+ text: html`<span class="menu-label-text"
154
+ >${Translate.Render('docs')}
155
+ <i
156
+ class="fas fa-caret-down inl down-arrow-submenu down-arrow-submenu-docs"
157
+ style="rotate: 0deg; transition: 0.4s;"
158
+ ></i
159
+ ></span>`,
160
+ })}
161
+ </div> `,
162
+ attrs: `data-id="docs"`,
163
+ tabHref: `${getProxyPath()}docs`,
164
+ handleContainerClass: 'handle-btn-container',
165
+ tooltipHtml: await Badge.Render(buildBadgeToolTipMenuOption('docs')),
166
+ })}
167
+ <div class="abs menu-btn-container-children-docs"></div>
138
168
  ${await BtnIcon.Render({
139
169
  class: 'in wfa main-btn-menu main-btn-admin hide',
140
170
  useMenuBtn: true,
@@ -207,6 +237,18 @@ const MenuCyberiaPortal = {
207
237
  handleContainerClass: 'handle-btn-container',
208
238
  tooltipHtml: await Badge.Render(buildBadgeToolTipMenuOption('cyberia-map-engine')),
209
239
  })}
240
+ ${await BtnIcon.Render({
241
+ class: 'in wfa main-btn-menu main-btn-cyberia-instance-engine',
242
+ useMenuBtn: true,
243
+ label: renderMenuLabel({
244
+ icon: html`<img class="inl cyberia-menu-icon" src="${getProxyPath()}assets/ui-icons/engine.png" />`,
245
+ text: html`<span class="menu-label-text">${Translate.Render('cyberia-instance-engine')}</span>`,
246
+ }),
247
+ attrs: `data-id="cyberia-instance-engine"`,
248
+ tabHref: `${getProxyPath()}cyberia-instance-engine`,
249
+ handleContainerClass: 'handle-btn-container',
250
+ tooltipHtml: await Badge.Render(buildBadgeToolTipMenuOption('cyberia-instance-engine')),
251
+ })}
210
252
  </div>
211
253
  `,
212
254
  // htmlMainBody: async () => {
@@ -382,7 +424,7 @@ const MenuCyberiaPortal = {
382
424
  html: async () =>
383
425
  await Account.Render({
384
426
  idModal: 'modal-account',
385
- user: ElementsCyberiaPortal.Data.user.main.model.user,
427
+ user: AppStoreCyberiaPortal.Data.user.main.model.user,
386
428
  disabled: [],
387
429
  }),
388
430
  handleType: 'bar',
@@ -432,6 +474,39 @@ const MenuCyberiaPortal = {
432
474
  });
433
475
  });
434
476
 
477
+ EventsUI.onClick(`.main-btn-docs`, async (e) => {
478
+ if (!isSubMenuOpen('docs') || e.isTrusted) {
479
+ if (e.isTrusted) setQueryParams({ cid: '' });
480
+ await subMenuRender('docs');
481
+ }
482
+
483
+ const { barConfig } = await Themes[Css.currentTheme]();
484
+ await Modal.Render({
485
+ id: 'modal-docs',
486
+ route: 'docs',
487
+ barConfig,
488
+ title: renderViewTitle({
489
+ icon: html`<img class="inl cyberia-menu-icon-modal" src="${getProxyPath()}assets/ui-icons/wiki.png" />`,
490
+ text: `<span class='inl cyberia-text-title-modal'>${Translate.Render('docs')}</span>`,
491
+ }),
492
+ html: async () =>
493
+ await Docs.Init({
494
+ idModal: 'modal-docs',
495
+ subMenuIcon: (type) =>
496
+ html`<img class="inl cyberia-menu-icon" src="${getProxyPath()}assets/ui-icons/arrow-right.png" />`,
497
+ coverageUrl: () => `${getProxyPath()}docs/hardhat-coverage`,
498
+ demoUrl: () => `https://client.cyberiaonline.com/`,
499
+ lastReleaseUrl: () => `https://github.com/underpostnet/engine-cyberia.git`,
500
+ }),
501
+ handleType: 'bar',
502
+ observer: true,
503
+ maximize: true,
504
+ mode: 'view',
505
+ slideMenu: 'modal-menu',
506
+ RouterInstance,
507
+ });
508
+ });
509
+
435
510
  EventsUI.onClick(`.main-btn-server`, async () => {
436
511
  const { barConfig } = await Themes[Css.currentTheme]();
437
512
  await Modal.Render({
@@ -471,7 +546,7 @@ const MenuCyberiaPortal = {
471
546
  text: `<span class='inl cyberia-text-title-modal'>${Translate.Render('recover')}</span>`,
472
547
  }),
473
548
  html: async () =>
474
- await Recover.Render({ idModal: 'modal-recover', user: ElementsCyberiaPortal.Data.user.main.model.user }),
549
+ await Recover.Render({ idModal: 'modal-recover', user: AppStoreCyberiaPortal.Data.user.main.model.user }),
475
550
  handleType: 'bar',
476
551
  maximize: true,
477
552
  mode: 'view',
@@ -493,7 +568,7 @@ const MenuCyberiaPortal = {
493
568
  html: async () =>
494
569
  await ObjectLayerEngineModal.Render({
495
570
  idModal: 'modal-object-layer-engine',
496
- Elements: ElementsCyberiaPortal,
571
+ appStore: AppStoreCyberiaPortal,
497
572
  }),
498
573
  handleType: 'bar',
499
574
  maximize: true,
@@ -515,7 +590,7 @@ const MenuCyberiaPortal = {
515
590
  }),
516
591
  html: async () =>
517
592
  ObjectLayerManagement.RenderTable({
518
- Elements: ElementsCyberiaPortal,
593
+ appStore: AppStoreCyberiaPortal,
519
594
  }),
520
595
  handleType: 'bar',
521
596
  maximize: true,
@@ -538,7 +613,7 @@ const MenuCyberiaPortal = {
538
613
  }),
539
614
  html: async () =>
540
615
  ObjectLayerEngineViewer.Render({
541
- Elements: ElementsCyberiaPortal,
616
+ appStore: AppStoreCyberiaPortal,
542
617
  }),
543
618
  handleType: 'bar',
544
619
  maximize: true,
@@ -559,7 +634,27 @@ const MenuCyberiaPortal = {
559
634
  icon: html`<img class="inl cyberia-menu-icon-modal" src="${getProxyPath()}assets/ui-icons/engine.png" />`,
560
635
  text: `<span class='inl cyberia-text-title-modal'>${Translate.Render('cyberia-map-engine')}</span>`,
561
636
  }),
562
- html: async () => await MapEngineCyberia.render(),
637
+ html: async () => await MapEngineCyberia.render({ appStore: AppStoreCyberiaPortal }),
638
+ handleType: 'bar',
639
+ maximize: true,
640
+ mode: 'view',
641
+ slideMenu: 'modal-menu',
642
+ RouterInstance,
643
+ observer: true,
644
+ });
645
+ });
646
+
647
+ EventsUI.onClick(`.main-btn-cyberia-instance-engine`, async () => {
648
+ const { barConfig } = await Themes[Css.currentTheme]();
649
+ await Modal.Render({
650
+ id: 'modal-cyberia-instance-engine',
651
+ route: 'cyberia-instance-engine',
652
+ barConfig,
653
+ title: renderViewTitle({
654
+ icon: html`<img class="inl cyberia-menu-icon-modal" src="${getProxyPath()}assets/ui-icons/engine.png" />`,
655
+ text: `<span class='inl cyberia-text-title-modal'>${Translate.Render('cyberia-instance-engine')}</span>`,
656
+ }),
657
+ html: async () => await InstanceEngineCyberia.render({ appStore: AppStoreCyberiaPortal }),
563
658
  handleType: 'bar',
564
659
  maximize: true,
565
660
  mode: 'view',
@@ -45,6 +45,11 @@ const RoutesCyberiaPortal = () => {
45
45
  title: 'cyberia-map-engine',
46
46
  render: () => s(`.main-btn-cyberia-map-engine`).click(),
47
47
  },
48
+ '/cyberia-instance-engine': {
49
+ title: 'cyberia-instance-engine',
50
+ render: () => s(`.main-btn-cyberia-instance-engine`).click(),
51
+ },
52
+ '/docs': { title: 'docs', render: () => s(`.main-btn-docs`).click() },
48
53
  };
49
54
  };
50
55
 
@@ -1,52 +1,6 @@
1
- import { Account } from '../core/Account.js';
2
- import { Chat } from '../core/Chat.js';
3
- import { s4 } from '../core/CommonJs.js';
4
- import { loggerFactory } from '../core/Logger.js';
5
- import { SocketIo } from '../core/SocketIo.js';
6
- import { s } from '../core/VanillaJs.js';
7
- import { ElementsCyberiaPortal } from './ElementsCyberiaPortal.js';
1
+ import { SocketIoHandlerProvider } from '../core/SocketIoHandler.js';
2
+ import { AppStoreCyberiaPortal } from './AppStoreCyberiaPortal.js';
8
3
 
9
- const logger = loggerFactory(import.meta);
10
-
11
- const SocketIoCyberiaPortal = {
12
- Init: function () {
13
- return new Promise((resolve) => {
14
- for (const type of Object.keys(ElementsCyberiaPortal.Data)) {
15
- SocketIo.Event[type][s4()] = async (args) => {
16
- args = JSON.parse(args[0]);
17
- switch (type) {
18
- case 'chat':
19
- {
20
- const idModal = 'modal-chat';
21
- if (s(`.${idModal}-chat-box`)) Chat.appendChatBox({ idModal, ...args });
22
- }
23
- break;
24
-
25
- default:
26
- break;
27
- }
28
- // logger.info('ws on event', args);
29
- const { id, element, status } = args;
30
- switch (status) {
31
- case 'email-confirmed':
32
- const newUser = { ...ElementsCyberiaPortal.Data.user.main.model.user, emailConfirmed: true };
33
- Account.renderVerifyEmailStatus(newUser);
34
- Account.triggerUpdateEvent({ user: newUser });
35
- break;
36
- default:
37
- break;
38
- }
39
- };
40
- }
41
- SocketIo.Event.connect[s4()] = async (reason) => {
42
- // ElementsCyberiaPortal.Init({ type, id, element });
43
- };
44
- SocketIo.Event.disconnect[s4()] = async (reason) => {
45
- // ElementsCyberiaPortal.removeAll();
46
- };
47
- return resolve();
48
- });
49
- },
50
- };
4
+ const SocketIoCyberiaPortal = SocketIoHandlerProvider.create(AppStoreCyberiaPortal);
51
5
 
52
6
  export { SocketIoCyberiaPortal };
@@ -18,6 +18,10 @@ const TranslateCyberiaPortal = {
18
18
  en: 'Cyberia Map Engine',
19
19
  es: 'Cyberia Map Engine',
20
20
  };
21
+ Translate.Data['cyberia-instance-engine'] = {
22
+ en: 'Cyberia Instance Engine',
23
+ es: 'Cyberia Instance Engine',
24
+ };
21
25
  },
22
26
  };
23
27
 
@@ -0,0 +1,5 @@
1
+ import { AppStore } from '../core/AppStore.js';
2
+
3
+ const AppStoreDefault = AppStore.create();
4
+
5
+ export { AppStoreDefault };
@@ -1,14 +1,14 @@
1
1
  import { Auth } from '../core/Auth.js';
2
2
  import { LogIn } from '../core/LogIn.js';
3
- import { ElementsDefault } from './ElementsDefault.js';
3
+ import { AppStoreDefault } from './AppStoreDefault.js';
4
4
 
5
5
  const LogInDefault = async function () {
6
6
  LogIn.Event['LogInDefault'] = async (options) => {
7
7
  const { token, user } = options;
8
- ElementsDefault.Data.user.main.model.user = user;
8
+ AppStoreDefault.Data.user.main.model.user = user;
9
9
  };
10
10
  const { user } = await Auth.sessionIn();
11
- ElementsDefault.Data.user.main.model.user = user;
11
+ AppStoreDefault.Data.user.main.model.user = user;
12
12
  };
13
13
 
14
14
  export { LogInDefault };
@@ -1,9 +1,9 @@
1
1
  import { LogOut } from '../core/LogOut.js';
2
- import { ElementsDefault } from './ElementsDefault.js';
2
+ import { AppStoreDefault } from './AppStoreDefault.js';
3
3
 
4
4
  const LogOutDefault = async function () {
5
5
  LogOut.Event['LogOutDefault'] = async (result = { user: { _id: '' } }) => {
6
- ElementsDefault.Data.user.main.model.user = result.user;
6
+ AppStoreDefault.Data.user.main.model.user = result.user;
7
7
  };
8
8
  };
9
9
 
@@ -10,7 +10,7 @@ import { SignUp } from '../core/SignUp.js';
10
10
  import { Translate } from '../core/Translate.js';
11
11
  import { htmls, s } from '../core/VanillaJs.js';
12
12
  import { extractUsernameFromPath, getProxyPath, getQueryParams } from '../core/Router.js';
13
- import { ElementsDefault } from './ElementsDefault.js';
13
+ import { AppStoreDefault } from './AppStoreDefault.js';
14
14
  import Sortable from 'sortablejs';
15
15
  import { RouterDefault, BannerAppTemplate } from './RoutesDefault.js';
16
16
  import { SettingsDefault } from './SettingsDefault.js';
@@ -551,7 +551,7 @@ const MenuDefault = {
551
551
  html: async () =>
552
552
  await Account.Render({
553
553
  idModal: 'modal-account',
554
- user: ElementsDefault.Data.user.main.model.user,
554
+ user: AppStoreDefault.Data.user.main.model.user,
555
555
  disabled: [],
556
556
  }),
557
557
  handleType: 'bar',
@@ -565,7 +565,7 @@ const MenuDefault = {
565
565
  EventsUI.onClick(`.main-btn-public-profile`, async () => {
566
566
  const { barConfig } = await Themes[Css.currentTheme]();
567
567
  const idModal = 'modal-public-profile';
568
- const user = ElementsDefault.Data.user.main.model.user;
568
+ const user = AppStoreDefault.Data.user.main.model.user;
569
569
 
570
570
  // Check if modal already exists
571
571
  const existingModal = s(`.${idModal}`);
@@ -635,7 +635,7 @@ const MenuDefault = {
635
635
  text: Translate.Render('recover'),
636
636
  }),
637
637
  html: async () =>
638
- await Recover.Render({ idModal: 'modal-recover', user: ElementsDefault.Data.user.main.model.user }),
638
+ await Recover.Render({ idModal: 'modal-recover', user: AppStoreDefault.Data.user.main.model.user }),
639
639
  handleType: 'bar',
640
640
  maximize: true,
641
641
  mode: 'view',
@@ -723,7 +723,7 @@ const MenuDefault = {
723
723
  await PanelForm.instance({
724
724
  idPanel: 'default-blog',
725
725
  defaultUrlImage: `${getProxyPath()}android-chrome-96x96.png`,
726
- Elements: ElementsDefault,
726
+ appStore: AppStoreDefault,
727
727
  parentIdModal: idModal,
728
728
  scrollClassContainer: `html-${idModal}`,
729
729
  route: routeModal,
@@ -1,54 +1,6 @@
1
- import { Account } from '../core/Account.js';
2
- import { Chat } from '../core/Chat.js';
3
- import { s4 } from '../core/CommonJs.js';
4
- import { loggerFactory } from '../core/Logger.js';
5
- import { SocketIo } from '../core/SocketIo.js';
6
- import { s } from '../core/VanillaJs.js';
7
- import { ElementsDefault } from './ElementsDefault.js';
1
+ import { SocketIoHandlerProvider } from '../core/SocketIoHandler.js';
2
+ import { AppStoreDefault } from './AppStoreDefault.js';
8
3
 
9
- const logger = loggerFactory(import.meta);
10
-
11
- const SocketIoDefault = {
12
- Init: function () {
13
- return new Promise((resolve) => {
14
- for (const type of Object.keys(ElementsDefault.Data)) {
15
- SocketIo.Event[type][s4()] = async (args) => {
16
- args = JSON.parse(args[0]);
17
- switch (type) {
18
- case 'chat':
19
- {
20
- const idModal = 'modal-chat';
21
- if (s(`.${idModal}-chat-box`)) Chat.appendChatBox({ idModal, ...args });
22
- }
23
- break;
24
-
25
- default:
26
- break;
27
- }
28
- const { status } = args;
29
-
30
- switch (status) {
31
- case 'email-confirmed': {
32
- const newUser = { ...ElementsDefault.Data.user.main.model.user, emailConfirmed: true };
33
- Account.renderVerifyEmailStatus(newUser);
34
- Account.triggerUpdateEvent({ user: newUser });
35
- break;
36
- }
37
-
38
- default:
39
- break;
40
- }
41
- };
42
- }
43
- SocketIo.Event.connect[s4()] = async (reason) => {
44
- // ElementsDefault.Init({ type, id, element });
45
- };
46
- SocketIo.Event.disconnect[s4()] = async (reason) => {
47
- // ElementsDefault.removeAll();
48
- };
49
- return resolve();
50
- });
51
- },
52
- };
4
+ const SocketIoDefault = SocketIoHandlerProvider.create(AppStoreDefault);
53
5
 
54
6
  export { SocketIoDefault };
@@ -0,0 +1,5 @@
1
+ import { AppStore } from '../core/AppStore.js';
2
+
3
+ const AppStoreItemledger = AppStore.create();
4
+
5
+ export { AppStoreItemledger };
@@ -1,15 +1,15 @@
1
1
  import { Auth } from '../core/Auth.js';
2
2
  import { LogIn } from '../core/LogIn.js';
3
- import { ElementsItemledger } from './ElementsItemledger.js';
3
+ import { AppStoreItemledger } from './AppStoreItemledger.js';
4
4
 
5
5
  const LogInItemledger = async function () {
6
6
  LogIn.Event['LogInItemledger'] = async (options) => {
7
7
  const { token, user } = options;
8
8
 
9
- ElementsItemledger.Data.user.main.model.user = user;
9
+ AppStoreItemledger.Data.user.main.model.user = user;
10
10
  };
11
11
  const { user } = await Auth.sessionIn();
12
- ElementsItemledger.Data.user.main.model.user = user;
12
+ AppStoreItemledger.Data.user.main.model.user = user;
13
13
  };
14
14
 
15
15
  export { LogInItemledger };
@@ -1,9 +1,9 @@
1
1
  import { LogOut } from '../core/LogOut.js';
2
- import { ElementsItemledger } from './ElementsItemledger.js';
2
+ import { AppStoreItemledger } from './AppStoreItemledger.js';
3
3
 
4
4
  const LogOutItemledger = async function () {
5
5
  LogOut.Event['LogOutItemledger'] = async (result = { user: { _id: '' } }) => {
6
- ElementsItemledger.Data.user.main.model.user = result.user;
6
+ AppStoreItemledger.Data.user.main.model.user = result.user;
7
7
  };
8
8
  };
9
9
 
@@ -10,7 +10,7 @@ import { SignUp } from '../core/SignUp.js';
10
10
  import { Translate } from '../core/Translate.js';
11
11
  import { htmls, s } from '../core/VanillaJs.js';
12
12
  import { getProxyPath } from '../core/Router.js';
13
- import { ElementsItemledger } from './ElementsItemledger.js';
13
+ import { AppStoreItemledger } from './AppStoreItemledger.js';
14
14
  import Sortable from 'sortablejs';
15
15
  import { RouterItemledger, BannerAppTemplate } from './RoutesItemledger.js';
16
16
  import { SettingsItemledger } from './SettingsItemledger.js';
@@ -271,7 +271,7 @@ const MenuItemledger = {
271
271
  html: async () =>
272
272
  await Account.Render({
273
273
  idModal: 'modal-account',
274
- user: ElementsItemledger.Data.user.main.model.user,
274
+ user: AppStoreItemledger.Data.user.main.model.user,
275
275
  disabled: [],
276
276
  }),
277
277
  handleType: 'bar',
@@ -339,7 +339,7 @@ const MenuItemledger = {
339
339
  text: Translate.Render('recover'),
340
340
  }),
341
341
  html: async () =>
342
- await Recover.Render({ idModal: 'modal-recover', user: ElementsItemledger.Data.user.main.model.user }),
342
+ await Recover.Render({ idModal: 'modal-recover', user: AppStoreItemledger.Data.user.main.model.user }),
343
343
  handleType: 'bar',
344
344
  maximize: true,
345
345
  mode: 'view',
@@ -1,54 +1,6 @@
1
- import { Account } from '../core/Account.js';
2
- import { Chat } from '../core/Chat.js';
3
- import { s4 } from '../core/CommonJs.js';
4
- import { loggerFactory } from '../core/Logger.js';
5
- import { SocketIo } from '../core/SocketIo.js';
6
- import { s } from '../core/VanillaJs.js';
7
- import { ElementsItemledger } from './ElementsItemledger.js';
1
+ import { SocketIoHandlerProvider } from '../core/SocketIoHandler.js';
2
+ import { AppStoreItemledger } from './AppStoreItemledger.js';
8
3
 
9
- const logger = loggerFactory(import.meta);
10
-
11
- const SocketIoItemledger = {
12
- Init: function () {
13
- return new Promise((resolve) => {
14
- for (const type of Object.keys(ElementsItemledger.Data)) {
15
- SocketIo.Event[type][s4()] = async (args) => {
16
- args = JSON.parse(args[0]);
17
- switch (type) {
18
- case 'chat':
19
- {
20
- const idModal = 'modal-chat';
21
- if (s(`.${idModal}-chat-box`)) Chat.appendChatBox({ idModal, ...args });
22
- }
23
- break;
24
-
25
- itemledger:
26
- break;
27
- }
28
- const { status } = args;
29
-
30
- switch (status) {
31
- case 'email-confirmed': {
32
- const newUser = { ...ElementsItemledger.Data.user.main.model.user, emailConfirmed: true };
33
- Account.renderVerifyEmailStatus(newUser);
34
- Account.triggerUpdateEvent({ user: newUser });
35
- break;
36
- }
37
-
38
- itemledger:
39
- break;
40
- }
41
- };
42
- }
43
- SocketIo.Event.connect[s4()] = async (reason) => {
44
- // ElementsItemledger.Init({ type, id, element });
45
- };
46
- SocketIo.Event.disconnect[s4()] = async (reason) => {
47
- // ElementsItemledger.removeAll();
48
- };
49
- return resolve();
50
- });
51
- },
52
- };
4
+ const SocketIoItemledger = SocketIoHandlerProvider.create(AppStoreItemledger);
53
5
 
54
6
  export { SocketIoItemledger };
@@ -0,0 +1,5 @@
1
+ import { AppStore } from '../core/AppStore.js';
2
+
3
+ const AppStoreUnderpost = AppStore.create();
4
+
5
+ export { AppStoreUnderpost };