cyberia 3.1.3 → 3.2.9

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 (377) hide show
  1. package/.env.example +0 -2
  2. package/.github/workflows/engine-cyberia.cd.yml +10 -8
  3. package/.github/workflows/engine-cyberia.ci.yml +12 -29
  4. package/.github/workflows/ghpkg.ci.yml +4 -4
  5. package/.github/workflows/npmpkg.ci.yml +28 -11
  6. package/.github/workflows/publish.ci.yml +21 -2
  7. package/.github/workflows/pwa-microservices-template-page.cd.yml +4 -5
  8. package/.github/workflows/pwa-microservices-template-test.ci.yml +3 -3
  9. package/.github/workflows/release.cd.yml +14 -10
  10. package/CHANGELOG.md +783 -1
  11. package/CLI-HELP.md +95 -18
  12. package/Dockerfile +0 -2
  13. package/README.md +290 -220
  14. package/bin/build.js +24 -7
  15. package/bin/cyberia.js +2838 -252
  16. package/bin/deploy.js +747 -125
  17. package/bin/file.js +9 -0
  18. package/bin/index.js +2838 -252
  19. package/bin/vs.js +1 -1
  20. package/conf.js +99 -65
  21. package/deployment.yaml +18 -164
  22. package/hardhat/hardhat.config.js +13 -13
  23. package/hardhat/ignition/modules/ObjectLayerToken.js +1 -1
  24. package/hardhat/package-lock.json +2559 -5864
  25. package/hardhat/package.json +14 -23
  26. package/hardhat/scripts/deployObjectLayerToken.js +1 -1
  27. package/hardhat/test/ObjectLayerToken.js +4 -2
  28. package/hardhat/types/ethers-contracts/ObjectLayerToken.ts +690 -0
  29. package/hardhat/types/ethers-contracts/common.ts +92 -0
  30. package/hardhat/types/ethers-contracts/factories/ObjectLayerToken__factory.ts +1055 -0
  31. package/hardhat/types/ethers-contracts/factories/index.ts +4 -0
  32. package/hardhat/types/ethers-contracts/hardhat.d.ts +47 -0
  33. package/hardhat/types/ethers-contracts/index.ts +6 -0
  34. package/jsconfig.json +1 -1
  35. package/manifests/cronjobs/dd-cron/dd-cron-backup.yaml +6 -5
  36. package/manifests/cronjobs/dd-cron/dd-cron-dns.yaml +6 -5
  37. package/manifests/deployment/dd-cyberia-development/deployment.yaml +18 -164
  38. package/manifests/deployment/dd-cyberia-development/proxy.yaml +7 -79
  39. package/manifests/deployment/dd-default-development/deployment.yaml +2 -6
  40. package/manifests/deployment/dd-test-development/deployment.yaml +112 -28
  41. package/manifests/deployment/dd-test-development/proxy.yaml +46 -1
  42. package/manifests/deployment/playwright/deployment.yaml +1 -1
  43. package/nodemon.json +1 -1
  44. package/package.json +39 -24
  45. package/proxy.yaml +7 -79
  46. package/scripts/k3s-node-setup.sh +2 -2
  47. package/scripts/nat-iptables.sh +103 -18
  48. package/scripts/rhel-grpc-setup.sh +56 -0
  49. package/src/api/atlas-sprite-sheet/atlas-sprite-sheet.controller.js +58 -14
  50. package/src/api/atlas-sprite-sheet/atlas-sprite-sheet.model.js +23 -14
  51. package/src/api/atlas-sprite-sheet/atlas-sprite-sheet.router.js +5 -0
  52. package/src/api/atlas-sprite-sheet/atlas-sprite-sheet.service.js +148 -20
  53. package/src/api/core/core.controller.js +10 -10
  54. package/src/api/core/core.service.js +10 -10
  55. package/src/api/crypto/crypto.controller.js +8 -8
  56. package/src/api/crypto/crypto.service.js +8 -8
  57. package/src/api/cyberia-action/cyberia-action.controller.js +74 -0
  58. package/src/api/cyberia-action/cyberia-action.model.js +87 -0
  59. package/src/api/cyberia-action/cyberia-action.router.js +27 -0
  60. package/src/api/cyberia-action/cyberia-action.service.js +42 -0
  61. package/src/api/cyberia-dialogue/cyberia-dialogue.controller.js +93 -0
  62. package/src/api/cyberia-dialogue/cyberia-dialogue.model.js +36 -0
  63. package/src/api/cyberia-dialogue/cyberia-dialogue.router.js +29 -0
  64. package/src/api/cyberia-dialogue/cyberia-dialogue.service.js +51 -0
  65. package/src/api/cyberia-entity/cyberia-entity.controller.js +74 -0
  66. package/src/api/cyberia-entity/cyberia-entity.model.js +24 -0
  67. package/src/api/cyberia-entity/cyberia-entity.router.js +27 -0
  68. package/src/api/cyberia-entity/cyberia-entity.service.js +42 -0
  69. package/src/api/cyberia-instance/cyberia-fallback-world.js +178 -0
  70. package/src/api/cyberia-instance/cyberia-instance.controller.js +92 -0
  71. package/src/api/cyberia-instance/cyberia-instance.model.js +87 -0
  72. package/src/api/cyberia-instance/cyberia-instance.router.js +63 -0
  73. package/src/api/cyberia-instance/cyberia-instance.service.js +156 -0
  74. package/src/api/cyberia-instance/cyberia-portal-connector.js +260 -0
  75. package/src/api/cyberia-instance/cyberia-world-generator.js +505 -0
  76. package/src/api/cyberia-instance-conf/cyberia-instance-conf.controller.js +74 -0
  77. package/src/api/cyberia-instance-conf/cyberia-instance-conf.defaults.js +574 -0
  78. package/src/api/cyberia-instance-conf/cyberia-instance-conf.model.js +231 -0
  79. package/src/api/cyberia-instance-conf/cyberia-instance-conf.router.js +27 -0
  80. package/src/api/cyberia-instance-conf/cyberia-instance-conf.service.js +46 -0
  81. package/src/api/cyberia-map/cyberia-map.controller.js +79 -0
  82. package/src/api/cyberia-map/cyberia-map.model.js +30 -0
  83. package/src/api/cyberia-map/cyberia-map.router.js +40 -0
  84. package/src/api/cyberia-map/cyberia-map.service.js +74 -0
  85. package/src/api/cyberia-quest/cyberia-quest.controller.js +74 -0
  86. package/src/api/cyberia-quest/cyberia-quest.model.js +67 -0
  87. package/src/api/cyberia-quest/cyberia-quest.router.js +27 -0
  88. package/src/api/cyberia-quest/cyberia-quest.service.js +42 -0
  89. package/src/api/cyberia-quest-progress/cyberia-quest-progress.controller.js +74 -0
  90. package/src/api/cyberia-quest-progress/cyberia-quest-progress.model.js +49 -0
  91. package/src/api/cyberia-quest-progress/cyberia-quest-progress.router.js +27 -0
  92. package/src/api/cyberia-quest-progress/cyberia-quest-progress.service.js +42 -0
  93. package/src/api/default/default.controller.js +10 -10
  94. package/src/api/default/default.service.js +10 -10
  95. package/src/api/document/document.controller.js +12 -12
  96. package/src/api/document/document.model.js +10 -16
  97. package/src/api/file/file.controller.js +8 -8
  98. package/src/api/file/file.model.js +10 -10
  99. package/src/api/file/file.ref.json +18 -0
  100. package/src/api/file/file.service.js +36 -36
  101. package/src/api/instance/instance.controller.js +10 -10
  102. package/src/api/instance/instance.model.js +4 -10
  103. package/src/api/instance/instance.service.js +10 -10
  104. package/src/api/ipfs/ipfs.controller.js +15 -36
  105. package/src/api/ipfs/ipfs.model.js +47 -47
  106. package/src/api/ipfs/ipfs.router.js +8 -13
  107. package/src/api/ipfs/ipfs.service.js +67 -129
  108. package/src/api/object-layer/object-layer.controller.js +12 -12
  109. package/src/api/object-layer/object-layer.model.js +4 -17
  110. package/src/api/object-layer/object-layer.router.js +30 -0
  111. package/src/api/object-layer/object-layer.service.js +126 -43
  112. package/src/api/object-layer-render-frames/object-layer-render-frames.controller.js +10 -10
  113. package/src/api/object-layer-render-frames/object-layer-render-frames.model.js +6 -16
  114. package/src/api/object-layer-render-frames/object-layer-render-frames.service.js +18 -14
  115. package/src/api/test/test.controller.js +8 -8
  116. package/src/api/test/test.service.js +8 -8
  117. package/src/api/user/guest.service.js +99 -0
  118. package/src/api/user/user.controller.js +6 -6
  119. package/src/api/user/user.model.js +8 -13
  120. package/src/api/user/user.service.js +11 -27
  121. package/src/cli/cluster.js +68 -21
  122. package/src/cli/db.js +753 -825
  123. package/src/cli/deploy.js +215 -125
  124. package/src/cli/env.js +29 -0
  125. package/src/cli/fs.js +82 -8
  126. package/src/cli/image.js +43 -1
  127. package/src/cli/index.js +74 -3
  128. package/src/cli/kubectl.js +211 -0
  129. package/src/cli/release.js +340 -0
  130. package/src/cli/repository.js +475 -74
  131. package/src/cli/run.js +582 -43
  132. package/src/cli/secrets.js +73 -0
  133. package/src/cli/ssh.js +1 -1
  134. package/src/cli/static.js +43 -115
  135. package/src/cli/test.js +3 -3
  136. package/src/client/Cryptokoyn.index.js +18 -22
  137. package/src/client/CyberiaPortal.index.js +19 -24
  138. package/src/client/Default.index.js +21 -34
  139. package/src/client/Itemledger.index.js +20 -27
  140. package/src/client/Underpost.index.js +19 -24
  141. package/src/client/components/core/404.js +4 -4
  142. package/src/client/components/core/500.js +4 -4
  143. package/src/client/components/core/Account.js +73 -60
  144. package/src/client/components/core/AgGrid.js +23 -33
  145. package/src/client/components/core/Alert.js +12 -13
  146. package/src/client/components/core/AppStore.js +69 -0
  147. package/src/client/components/core/Auth.js +35 -37
  148. package/src/client/components/core/Badge.js +7 -13
  149. package/src/client/components/core/BtnIcon.js +15 -17
  150. package/src/client/components/core/CalendarCore.js +43 -64
  151. package/src/client/components/core/Chat.js +13 -15
  152. package/src/client/components/core/ClientEvents.js +87 -0
  153. package/src/client/components/core/ColorPaletteElement.js +309 -0
  154. package/src/client/components/core/Content.js +17 -14
  155. package/src/client/components/core/Css.js +15 -71
  156. package/src/client/components/core/CssCore.js +12 -16
  157. package/src/client/components/core/D3Chart.js +4 -4
  158. package/src/client/components/core/Docs.js +64 -91
  159. package/src/client/components/core/DropDown.js +194 -96
  160. package/src/client/components/core/EventBus.js +92 -0
  161. package/src/client/components/core/EventsUI.js +14 -17
  162. package/src/client/components/core/FileExplorer.js +96 -228
  163. package/src/client/components/core/FullScreen.js +47 -75
  164. package/src/client/components/core/Input.js +24 -69
  165. package/src/client/components/core/Keyboard.js +26 -19
  166. package/src/client/components/core/KeyboardAvoidance.js +145 -0
  167. package/src/client/components/core/LoadingAnimation.js +25 -31
  168. package/src/client/components/core/LogIn.js +43 -43
  169. package/src/client/components/core/LogOut.js +25 -16
  170. package/src/client/components/core/Modal.js +462 -179
  171. package/src/client/components/core/NotificationManager.js +14 -18
  172. package/src/client/components/core/Panel.js +54 -51
  173. package/src/client/components/core/PanelForm.js +44 -144
  174. package/src/client/components/core/Polyhedron.js +110 -214
  175. package/src/client/components/core/PublicProfile.js +39 -32
  176. package/src/client/components/core/Recover.js +48 -44
  177. package/src/client/components/core/Responsive.js +88 -32
  178. package/src/client/components/core/RichText.js +9 -18
  179. package/src/client/components/core/Router.js +24 -3
  180. package/src/client/components/core/SearchBox.js +37 -37
  181. package/src/client/components/core/SignUp.js +39 -30
  182. package/src/client/components/core/SocketIo.js +112 -30
  183. package/src/client/components/core/SocketIoHandler.js +75 -0
  184. package/src/client/components/core/Stream.js +143 -95
  185. package/src/client/components/core/ToggleSwitch.js +8 -20
  186. package/src/client/components/core/ToolTip.js +5 -17
  187. package/src/client/components/core/Translate.js +56 -59
  188. package/src/client/components/core/Validator.js +26 -16
  189. package/src/client/components/core/Wallet.js +15 -26
  190. package/src/client/components/core/Webhook.js +40 -7
  191. package/src/client/components/core/Worker.js +163 -27
  192. package/src/client/components/core/windowGetDimensions.js +7 -7
  193. package/src/client/components/cryptokoyn/{MenuCryptokoyn.js → AppShellCryptokoyn.js} +59 -59
  194. package/src/client/components/cryptokoyn/AppStoreCryptokoyn.js +5 -0
  195. package/src/client/components/cryptokoyn/CssCryptokoyn.js +15 -15
  196. package/src/client/components/cryptokoyn/LogInCryptokoyn.js +9 -7
  197. package/src/client/components/cryptokoyn/LogOutCryptokoyn.js +8 -6
  198. package/src/client/components/cryptokoyn/RouterCryptokoyn.js +37 -0
  199. package/src/client/components/cryptokoyn/SettingsCryptokoyn.js +4 -4
  200. package/src/client/components/cryptokoyn/SignUpCryptokoyn.js +6 -4
  201. package/src/client/components/cryptokoyn/SocketIoCryptokoyn.js +3 -51
  202. package/src/client/components/cyberia/InstanceEngineCyberia.js +781 -0
  203. package/src/client/components/cyberia/MapEngineCyberia.js +1836 -2
  204. package/src/client/components/cyberia/ObjectLayerEngine.js +19 -0
  205. package/src/client/components/cyberia/ObjectLayerEngineModal.js +1220 -99
  206. package/src/client/components/cyberia/ObjectLayerEngineViewer.js +252 -316
  207. package/src/client/components/cyberia-portal/{MenuCyberiaPortal.js → AppShellCyberiaPortal.js} +136 -103
  208. package/src/client/components/cyberia-portal/AppStoreCyberiaPortal.js +5 -0
  209. package/src/client/components/cyberia-portal/CommonCyberiaPortal.js +462 -32
  210. package/src/client/components/cyberia-portal/CssCyberiaPortal.js +15 -15
  211. package/src/client/components/cyberia-portal/LogInCyberiaPortal.js +9 -7
  212. package/src/client/components/cyberia-portal/LogOutCyberiaPortal.js +8 -6
  213. package/src/client/components/cyberia-portal/MainBodyCyberiaPortal.js +4 -4
  214. package/src/client/components/cyberia-portal/RouterCyberiaPortal.js +60 -0
  215. package/src/client/components/cyberia-portal/SettingsCyberiaPortal.js +4 -4
  216. package/src/client/components/cyberia-portal/SignUpCyberiaPortal.js +6 -4
  217. package/src/client/components/cyberia-portal/SocketIoCyberiaPortal.js +3 -49
  218. package/src/client/components/cyberia-portal/TranslateCyberiaPortal.js +8 -4
  219. package/src/client/components/default/{MenuDefault.js → AppShellDefault.js} +91 -91
  220. package/src/client/components/default/AppStoreDefault.js +5 -0
  221. package/src/client/components/default/CssDefault.js +12 -12
  222. package/src/client/components/default/LogInDefault.js +9 -7
  223. package/src/client/components/default/LogOutDefault.js +8 -6
  224. package/src/client/components/default/RouterDefault.js +47 -0
  225. package/src/client/components/default/SettingsDefault.js +4 -4
  226. package/src/client/components/default/SignUpDefault.js +6 -4
  227. package/src/client/components/default/SocketIoDefault.js +3 -51
  228. package/src/client/components/default/TranslateDefault.js +3 -3
  229. package/src/client/components/itemledger/{MenuItemledger.js → AppShellItemledger.js} +59 -59
  230. package/src/client/components/itemledger/AppStoreItemledger.js +5 -0
  231. package/src/client/components/itemledger/CssItemledger.js +15 -15
  232. package/src/client/components/itemledger/LogInItemledger.js +9 -7
  233. package/src/client/components/itemledger/LogOutItemledger.js +8 -6
  234. package/src/client/components/itemledger/RouterItemledger.js +38 -0
  235. package/src/client/components/itemledger/SettingsItemledger.js +4 -4
  236. package/src/client/components/itemledger/SignUpItemledger.js +6 -4
  237. package/src/client/components/itemledger/SocketIoItemledger.js +3 -51
  238. package/src/client/components/itemledger/TranslateItemledger.js +3 -3
  239. package/src/client/components/underpost/{MenuUnderpost.js → AppShellUnderpost.js} +92 -92
  240. package/src/client/components/underpost/AppStoreUnderpost.js +5 -0
  241. package/src/client/components/underpost/CssUnderpost.js +14 -14
  242. package/src/client/components/underpost/CyberpunkBloggerUnderpost.js +4 -4
  243. package/src/client/components/underpost/DocumentSearchProvider.js +1 -1
  244. package/src/client/components/underpost/LabGalleryUnderpost.js +12 -15
  245. package/src/client/components/underpost/LogInUnderpost.js +9 -7
  246. package/src/client/components/underpost/LogOutUnderpost.js +8 -6
  247. package/src/client/components/underpost/RouterUnderpost.js +45 -0
  248. package/src/client/components/underpost/SettingsUnderpost.js +4 -4
  249. package/src/client/components/underpost/SignUpUnderpost.js +6 -4
  250. package/src/client/components/underpost/SocketIoUnderpost.js +3 -51
  251. package/src/client/components/underpost/TranslateUnderpost.js +4 -4
  252. package/src/client/public/cyberia-docs/ACTION-SYSTEM.md +235 -0
  253. package/src/client/public/cyberia-docs/ARCHITECTURE.md +443 -0
  254. package/src/client/public/cyberia-docs/CYBERIA-CLI.md +417 -0
  255. package/src/client/public/cyberia-docs/CYBERIA-CLIENT.md +313 -0
  256. package/src/client/public/cyberia-docs/CYBERIA-SERVER.md +260 -0
  257. package/src/client/public/cyberia-docs/ENTITY-PROFILE.md +241 -0
  258. package/src/client/public/cyberia-docs/HARDHAT-MODULE.md +300 -0
  259. package/src/client/public/cyberia-docs/OFF-CHAIN-ECONOMY.md +279 -0
  260. package/src/client/public/cyberia-docs/QUEST-SYSTEM.md +206 -0
  261. package/src/client/public/cyberia-docs/ROADMAP.md +240 -0
  262. package/src/client/public/cyberia-docs/WHITE-PAPER.md +732 -0
  263. package/src/client/services/atlas-sprite-sheet/atlas-sprite-sheet.service.js +14 -20
  264. package/src/client/services/core/core.service.js +35 -55
  265. package/src/client/services/crypto/crypto.service.js +8 -13
  266. package/src/client/services/cyberia-action/cyberia-action.service.js +99 -0
  267. package/src/client/services/cyberia-dialogue/cyberia-dialogue.service.js +99 -0
  268. package/src/client/services/cyberia-entity/cyberia-entity.management.js +57 -0
  269. package/src/client/services/cyberia-entity/cyberia-entity.service.js +99 -0
  270. package/src/client/services/cyberia-instance/cyberia-instance.management.js +194 -0
  271. package/src/client/services/cyberia-instance/cyberia-instance.service.js +116 -0
  272. package/src/client/services/cyberia-instance-conf/cyberia-instance-conf.service.js +99 -0
  273. package/src/client/services/cyberia-map/cyberia-map.management.js +193 -0
  274. package/src/client/services/cyberia-map/cyberia-map.service.js +120 -0
  275. package/src/client/services/cyberia-quest/cyberia-quest.service.js +99 -0
  276. package/src/client/services/cyberia-quest-progress/cyberia-quest-progress.service.js +99 -0
  277. package/src/client/services/default/default.management.js +159 -267
  278. package/src/client/services/default/default.service.js +10 -16
  279. package/src/client/services/document/document.service.js +14 -19
  280. package/src/client/services/file/file.service.js +8 -13
  281. package/src/client/services/instance/instance.management.js +6 -6
  282. package/src/client/services/instance/instance.service.js +10 -15
  283. package/src/client/services/ipfs/ipfs.service.js +14 -40
  284. package/src/client/services/object-layer/object-layer.management.js +14 -14
  285. package/src/client/services/object-layer/object-layer.service.js +39 -24
  286. package/src/client/services/object-layer-render-frames/object-layer-render-frames.service.js +10 -16
  287. package/src/client/services/test/test.service.js +8 -13
  288. package/src/client/services/user/guest.service.js +86 -0
  289. package/src/client/services/user/user.management.js +6 -6
  290. package/src/client/services/user/user.service.js +14 -20
  291. package/src/client/ssr/body/404.js +3 -3
  292. package/src/client/ssr/body/500.js +3 -3
  293. package/src/client/ssr/body/CacheControl.js +5 -2
  294. package/src/client/ssr/body/DefaultSplashScreen.js +19 -12
  295. package/src/client/ssr/body/UnderpostDefaultSplashScreen.js +13 -6
  296. package/src/client/ssr/head/PwaItemledger.js +197 -60
  297. package/src/client/ssr/mailer/DefaultRecoverEmail.js +19 -20
  298. package/src/client/ssr/mailer/DefaultVerifyEmail.js +15 -16
  299. package/src/client/ssr/offline/Maintenance.js +12 -11
  300. package/src/client/ssr/offline/NoNetworkConnection.js +3 -3
  301. package/src/client/ssr/pages/CyberiaServerMetrics.js +1 -1
  302. package/src/client/ssr/pages/Test.js +2 -2
  303. package/src/client/sw/core.sw.js +212 -0
  304. package/src/grpc/cyberia/grpc-server.js +642 -0
  305. package/src/index.js +24 -1
  306. package/src/runtime/cyberia-client/Dockerfile +80 -0
  307. package/src/runtime/cyberia-server/Dockerfile +37 -0
  308. package/src/runtime/express/Dockerfile +5 -1
  309. package/src/runtime/express/Express.js +18 -1
  310. package/src/runtime/lampp/Dockerfile +17 -5
  311. package/src/runtime/lampp/Lampp.js +27 -4
  312. package/src/runtime/wp/Dockerfile +62 -0
  313. package/src/runtime/wp/Wp.js +639 -0
  314. package/src/server/atlas-sprite-sheet-generator.js +4 -2
  315. package/src/server/auth.js +24 -1
  316. package/src/server/backup.js +37 -9
  317. package/src/server/client-build-docs.js +52 -46
  318. package/src/server/client-build.js +356 -82
  319. package/src/server/client-formatted.js +140 -57
  320. package/src/server/conf.js +29 -13
  321. package/src/server/cron.js +25 -23
  322. package/src/server/data-query.js +32 -20
  323. package/src/server/dns.js +24 -1
  324. package/src/server/ipfs-client.js +253 -89
  325. package/src/server/object-layer.js +150 -114
  326. package/src/server/peer.js +8 -0
  327. package/src/server/process.js +13 -27
  328. package/src/server/runtime.js +25 -1
  329. package/src/server/semantic-layer-generator-floor.js +319 -0
  330. package/src/server/semantic-layer-generator-resource.js +259 -0
  331. package/src/server/semantic-layer-generator-skin.js +1164 -0
  332. package/src/server/semantic-layer-generator.js +211 -542
  333. package/src/server/shape-generator.js +108 -0
  334. package/src/server/start.js +19 -5
  335. package/src/server/valkey.js +141 -235
  336. package/src/ws/IoInterface.js +1 -10
  337. package/src/ws/IoServer.js +14 -33
  338. package/src/ws/core/channels/core.ws.chat.js +65 -20
  339. package/src/ws/core/channels/core.ws.mailer.js +113 -32
  340. package/src/ws/core/channels/core.ws.stream.js +90 -31
  341. package/src/ws/core/core.ws.connection.js +12 -33
  342. package/src/ws/core/core.ws.emit.js +10 -26
  343. package/src/ws/core/core.ws.server.js +25 -58
  344. package/src/ws/default/channels/default.ws.main.js +53 -12
  345. package/src/ws/default/default.ws.connection.js +26 -13
  346. package/src/ws/default/default.ws.server.js +30 -12
  347. package/tsconfig.docs.json +15 -0
  348. package/typedoc.dd-cyberia.json +29 -0
  349. package/typedoc.json +29 -0
  350. package/WHITE-PAPER.md +0 -1540
  351. package/hardhat/README.md +0 -531
  352. package/hardhat/WHITE-PAPER.md +0 -1540
  353. package/jsdoc.dd-cyberia.json +0 -59
  354. package/jsdoc.json +0 -59
  355. package/src/api/object-layer/README.md +0 -347
  356. package/src/client/components/core/ColorPalette.js +0 -5267
  357. package/src/client/components/core/JoyStick.js +0 -80
  358. package/src/client/components/cryptokoyn/CommonCryptokoyn.js +0 -29
  359. package/src/client/components/cryptokoyn/ElementsCryptokoyn.js +0 -38
  360. package/src/client/components/cryptokoyn/RoutesCryptokoyn.js +0 -39
  361. package/src/client/components/cyberia-portal/ElementsCyberiaPortal.js +0 -38
  362. package/src/client/components/cyberia-portal/RoutesCyberiaPortal.js +0 -58
  363. package/src/client/components/cyberia-portal/ServerCyberiaPortal.js +0 -136
  364. package/src/client/components/default/ElementsDefault.js +0 -38
  365. package/src/client/components/default/RoutesDefault.js +0 -49
  366. package/src/client/components/itemledger/CommonItemledger.js +0 -29
  367. package/src/client/components/itemledger/ElementsItemledger.js +0 -38
  368. package/src/client/components/itemledger/RoutesItemledger.js +0 -40
  369. package/src/client/components/underpost/CommonUnderpost.js +0 -29
  370. package/src/client/components/underpost/ElementsUnderpost.js +0 -38
  371. package/src/client/components/underpost/RoutesUnderpost.js +0 -47
  372. package/src/client/sw/default.sw.js +0 -127
  373. package/src/client/sw/template.sw.js +0 -84
  374. package/src/ws/core/management/core.ws.chat.js +0 -8
  375. package/src/ws/core/management/core.ws.mailer.js +0 -16
  376. package/src/ws/core/management/core.ws.stream.js +0 -8
  377. package/src/ws/default/management/default.ws.main.js +0 -8
@@ -2,11 +2,10 @@ import { getId, getIsoDate } from './CommonJs.js';
2
2
  import { Css, Themes } from './Css.js';
3
3
  import { Modal } from './Modal.js';
4
4
  import { append, prepend, s } from './VanillaJs.js';
5
-
6
- const NotificationManager = {
7
- Types: ['success', 'error', 'warning', 'info'],
8
- RenderBoard: async function (options) {
9
- this.options = options;
5
+ class NotificationManager {
6
+ static Types = ['success', 'error', 'warning', 'info'];
7
+ static async RenderBoard(options) {
8
+ NotificationManager.options = options;
10
9
  append(
11
10
  'body',
12
11
  html`
@@ -28,17 +27,17 @@ const NotificationManager = {
28
27
  <div class="fix notification-board-container"></div>
29
28
  `,
30
29
  );
31
- },
32
- Tokens: {},
33
- Push: async function (options = { status: '', html: '' }) {
30
+ }
31
+ static Tokens = {};
32
+ static async Push(options = { status: '', html: '' }) {
34
33
  const { barConfig } = await Themes[Css.currentTheme](); // newInstance
35
34
  barConfig.buttons.maximize.disabled = true;
36
35
  barConfig.buttons.minimize.disabled = true;
37
36
  barConfig.buttons.restore.disabled = true;
38
37
  barConfig.buttons.menu.disabled = true;
39
- const idNotification = getId(this.Tokens, 'board-notification-');
40
- this.Tokens[idNotification] = {};
41
- await Modal.Render({
38
+ const idNotification = getId(NotificationManager.Tokens, 'board-notification-');
39
+ NotificationManager.Tokens[idNotification] = {};
40
+ await Modal.instance({
42
41
  title: html`<div class="in notification-manager-date">${getIsoDate(new Date())}</div>
43
42
  ${options.html}`,
44
43
  html: '',
@@ -57,8 +56,8 @@ const NotificationManager = {
57
56
  setTimeout(() => {
58
57
  if (s(`.btn-close-${idNotification}`)) s(`.btn-close-${idNotification}`).click();
59
58
  }, 2000);
60
- },
61
- NotificationScheme: {
59
+ }
60
+ static NotificationScheme = {
62
61
  // Visual Options
63
62
  body: '<String>',
64
63
  icon: '<URL String>',
@@ -66,11 +65,9 @@ const NotificationManager = {
66
65
  badge: '<URL String>',
67
66
  dir: "<String of 'auto' | 'ltr' | 'rtl'>",
68
67
  timestamp: '<Long>',
69
-
70
68
  // Both visual & behavioral options
71
69
  actions: '<Array of Strings>',
72
70
  data: '<Anything>',
73
-
74
71
  // Behavioral Options
75
72
  tag: '<String>',
76
73
  requireInteraction: '<boolean>',
@@ -78,7 +75,6 @@ const NotificationManager = {
78
75
  vibrate: '<Array of Integers>',
79
76
  sound: '<URL String>',
80
77
  silent: '<Boolean>',
81
- },
82
- };
83
-
78
+ };
79
+ }
84
80
  export { NotificationManager };
@@ -22,9 +22,10 @@ import { PublicProfile } from './PublicProfile.js';
22
22
 
23
23
  const logger = loggerFactory(import.meta);
24
24
 
25
- const Panel = {
26
- Tokens: {},
27
- Render: async function (
25
+ class Panel {
26
+ static Tokens = {};
27
+
28
+ static async instance(
28
29
  options = {
29
30
  idPanel: '',
30
31
  parentIdModal: '',
@@ -106,7 +107,7 @@ const Panel = {
106
107
  await copyData(shareUrl);
107
108
  await NotificationManager.Push({
108
109
  status: 'success',
109
- html: html`<div>${Translate.Render('link-copied')}</div>`,
110
+ html: html`<div>${Translate.instance('link-copied')}</div>`,
110
111
  });
111
112
  // Track the copy share link event
112
113
  await DocumentService.patch({ id: obj._id, action: 'copy-share-link' });
@@ -132,7 +133,7 @@ const Panel = {
132
133
  logger.error('Error copying share link:', error);
133
134
  await NotificationManager.Push({
134
135
  status: 'error',
135
- html: html`<div>${Translate.Render('error-copying-link')}</div>`,
136
+ html: html`<div>${Translate.instance('error-copying-link')}</div>`,
136
137
  });
137
138
  }
138
139
  },
@@ -165,7 +166,7 @@ const Panel = {
165
166
  await copyData(foundFiles.mdFileId.mdPlain);
166
167
  await NotificationManager.Push({
167
168
  status: 'success',
168
- html: html`<div>${Translate.Render('markdown-source-copied')}</div>`,
169
+ html: html`<div>${Translate.instance('markdown-source-copied')}</div>`,
169
170
  });
170
171
  } else {
171
172
  await NotificationManager.Push({
@@ -177,7 +178,7 @@ const Panel = {
177
178
  logger.error('Error copying markdown source:', error);
178
179
  await NotificationManager.Push({
179
180
  status: 'error',
180
- html: html`<div>${Translate.Render('error-copying-markdown')}</div>`,
181
+ html: html`<div>${Translate.instance('error-copying-markdown')}</div>`,
181
182
  });
182
183
  }
183
184
  },
@@ -327,24 +328,24 @@ const Panel = {
327
328
 
328
329
  return html` <div class="in box-shadow ${idPanel} ${idPanel}-${id}" style="position: relative;">
329
330
  <div class="fl ${idPanel}-tools session-fl-log-in ${obj.tools ? '' : 'hide'}">
330
- ${await BtnIcon.Render({
331
+ ${await BtnIcon.instance({
331
332
  class: `in flr main-btn-menu action-bar-box ${idPanel}-btn-tool ${idPanel}-btn-delete-${id}`,
332
333
  label: html`<div class="abs center"><i class="fas fa-trash"></i></div>`,
333
334
  useVisibilityHover: true,
334
- tooltipHtml: await Badge.Render({
335
+ tooltipHtml: await Badge.instance({
335
336
  id: `tooltip-${idPanel}-${id}`,
336
- text: `${Translate.Render(`delete`)}`,
337
+ text: `${Translate.instance(`delete`)}`,
337
338
  classList: '',
338
339
  style: { top: `-22px`, left: '-13px' },
339
340
  }),
340
341
  })}
341
- ${await BtnIcon.Render({
342
+ ${await BtnIcon.instance({
342
343
  class: `in flr main-btn-menu action-bar-box ${idPanel}-btn-tool ${idPanel}-btn-edit-${id}`,
343
344
  label: html`<div class="abs center"><i class="fas fa-edit"></i></div>`,
344
345
  useVisibilityHover: true,
345
- tooltipHtml: await Badge.Render({
346
+ tooltipHtml: await Badge.instance({
346
347
  id: `tooltip-${idPanel}-${id}`,
347
- text: `${Translate.Render(`edit`)}`,
348
+ text: `${Translate.instance(`edit`)}`,
348
349
  classList: '',
349
350
  style: { top: `-22px`, left: '-5px' },
350
351
  }),
@@ -451,9 +452,8 @@ const Panel = {
451
452
  tagColor = hasThemeColor ? darkenHex(themeColor, 0.5) : '#ffffff';
452
453
  }
453
454
 
454
- tagRender += await Badge.Render({
455
+ tagRender += await Badge.instance({
455
456
  text: tag,
456
- style: { color: tagColor },
457
457
  classList: 'inl panel-tag-clickable',
458
458
  style: {
459
459
  margin: '3px',
@@ -514,10 +514,10 @@ const Panel = {
514
514
  if (obj[infoKey] && obj[infoKey].length > 0 && formDataObj)
515
515
  return html`<div class="in ${idPanel}-row">
516
516
  <span class="${idPanel}-row-key capitalize ${formObjData.label?.disabled ? 'hide' : ''}">
517
- ${keyIcon} ${Translate.Render(infoKey)}:</span
517
+ ${keyIcon} ${Translate.instance(infoKey)}:</span
518
518
  >
519
519
  <span class="${idPanel}-row-value"
520
- >${valueIcon} ${obj[infoKey].map((k) => Translate.Render(k)).join(', ')}</span
520
+ >${valueIcon} ${obj[infoKey].map((k) => Translate.instance(k)).join(', ')}</span
521
521
  >
522
522
  </div> `;
523
523
  }
@@ -531,8 +531,8 @@ const Panel = {
531
531
  <span class="${idPanel}-row-pin-key capitalize ${formObjData.label?.disabled ? 'hide' : ''}">
532
532
  ${keyIcon}
533
533
  ${formDataObj.translateCode
534
- ? Translate.Render(formDataObj.translateCode)
535
- : Translate.Render(infoKey)}:</span
534
+ ? Translate.instance(formDataObj.translateCode)
535
+ : Translate.instance(infoKey)}:</span
536
536
  >
537
537
  <span class="${idPanel}-row-pin-value">${valueIcon} ${obj[infoKey]}</span>
538
538
  </div> `;
@@ -547,8 +547,8 @@ const Panel = {
547
547
  <span class="${idPanel}-row-key capitalize ${formObjData.label?.disabled ? 'hide' : ''}">
548
548
  ${keyIcon}
549
549
  ${formDataObj.translateCode
550
- ? Translate.Render(formDataObj.translateCode)
551
- : Translate.Render(infoKey)}:</span
550
+ ? Translate.instance(formDataObj.translateCode)
551
+ : Translate.instance(infoKey)}:</span
552
552
  >
553
553
  <span class="${idPanel}-row-value"> ${valueIcon} ${obj[infoKey]}</span>
554
554
  </div> `;
@@ -584,7 +584,7 @@ const Panel = {
584
584
  class="${idPanel}-share-tooltip-${id}"
585
585
  style="position: absolute; bottom: 50px; right: 0; background: rgba(0,0,0,0.8); color: white; padding: 6px 10px; border-radius: 4px; font-size: 12px; white-space: nowrap; opacity: 0; pointer-events: none; transition: opacity 0.3s ease;"
586
586
  >
587
- ${Translate.Render('copy-share-link')}
587
+ ${Translate.instance('copy-share-link')}
588
588
  </div>
589
589
  </div>`
590
590
  : ''}
@@ -611,9 +611,9 @@ const Panel = {
611
611
 
612
612
  let render = '';
613
613
  let renderForm = html` <div class="in modal" style="top: 0px; z-index: 1; padding-bottom: 5px">
614
- ${await BtnIcon.Render({
614
+ ${await BtnIcon.instance({
615
615
  class: `inl section-mp btn-custom btn-${idPanel}-close`,
616
- label: html`<i class="fa-solid fa-xmark"></i> ${Translate.Render('close')}`,
616
+ label: html`<i class="fa-solid fa-xmark"></i> ${Translate.instance('close')}`,
617
617
  type: 'button',
618
618
  })}
619
619
  </div>
@@ -624,9 +624,9 @@ const Panel = {
624
624
  switch (modelData.inputType) {
625
625
  case 'dropdown-checkbox': {
626
626
  renderForm += html`<div class="in section-mp">
627
- ${await DropDown.Render({
627
+ ${await DropDown.instance({
628
628
  id: `${modelData.id}`,
629
- label: html`${Translate.Render(modelData.model)}`,
629
+ label: html`${Translate.instance(modelData.model)}`,
630
630
  type: 'checkbox',
631
631
  value: modelData.dropdown.options[0],
632
632
  resetOption: true,
@@ -636,7 +636,7 @@ const Panel = {
636
636
  value: dKey,
637
637
  data: dKey,
638
638
  checked: false,
639
- display: html`${Translate.Render(dKey)}`,
639
+ display: html`${Translate.instance(dKey)}`,
640
640
  onClick: function () {
641
641
  logger.info('DropDown onClick', this.checked);
642
642
  },
@@ -648,9 +648,9 @@ const Panel = {
648
648
  }
649
649
  case 'dropdown':
650
650
  renderForm += html` <div class="in section-mp">
651
- ${await DropDown.Render({
651
+ ${await DropDown.instance({
652
652
  id: `${modelData.id}`,
653
- label: html`${Translate.Render(modelData.model)}`,
653
+ label: html`${Translate.instance(modelData.model)}`,
654
654
  containerClass: `${idPanel}-dropdown`,
655
655
  // type: 'checkbox',
656
656
  value: modelData.dropdown.options[0].replaceAll(' ', '-').toLowerCase(),
@@ -660,7 +660,7 @@ const Panel = {
660
660
  value: key,
661
661
  data: dKey,
662
662
  // checked: true,
663
- display: html`${Translate.Render(dKey)}`,
663
+ display: html`${Translate.instance(dKey)}`,
664
664
  onClick: function () {},
665
665
  };
666
666
  }),
@@ -669,7 +669,7 @@ const Panel = {
669
669
  break;
670
670
  case 'md': {
671
671
  renderForm += html`<div class="in section-mp">
672
- ${await RichText.Render({ id: modelData.id, parentIdModal: options.parentIdModal })}
672
+ ${await RichText.instance({ id: modelData.id, parentIdModal: options.parentIdModal })}
673
673
  </div>`;
674
674
  break;
675
675
  }
@@ -689,11 +689,11 @@ const Panel = {
689
689
  <div class="in fll" style="width: 70%">
690
690
  <div class="in">
691
691
  ${modelData.panel && modelData.panel.icon ? modelData.panel.icon : ''}
692
- ${Translate.Render(modelData.model)}
692
+ ${Translate.instance(modelData.model)}
693
693
  </div>
694
694
  </div>
695
695
  <div class="in fll" style="width: 30%">
696
- ${await ToggleSwitch.Render({
696
+ ${await ToggleSwitch.instance({
697
697
  id: `${modelData.id}`,
698
698
  containerClass: 'inl',
699
699
  disabledOnClick: true,
@@ -735,14 +735,14 @@ const Panel = {
735
735
  htmls(`.file-name-render-${modelData.id}`, htmlFileRender);
736
736
  };
737
737
  });
738
- renderForm += `${await Input.Render({
738
+ renderForm += `${await Input.instance({
739
739
  inputClass: 'hide',
740
740
  id: `${modelData.id}`,
741
741
  type: modelData.inputType,
742
742
  multiple: true,
743
743
  // autocomplete: 'new-password',
744
- label: html`<i class="fa-solid fa-file-arrow-up"></i> ${Translate.Render('select')}
745
- ${Translate.Render('file')}`,
744
+ label: html`<i class="fa-solid fa-file-arrow-up"></i> ${Translate.instance('select')}
745
+ ${Translate.instance('file')}`,
746
746
  containerClass: 'in section-mp width-mini-box input-container',
747
747
  placeholder: true,
748
748
  extension: () =>
@@ -752,18 +752,18 @@ const Panel = {
752
752
  // disabled: true,
753
753
  // disabledEye: true,
754
754
  })}
755
- ${await BtnIcon.Render({
755
+ ${await BtnIcon.instance({
756
756
  class: `inl section-mp btn-custom btn-${idPanel}-clean-file`,
757
- label: html`<i class="fa-solid fa-file-circle-xmark"></i> ${Translate.Render('clear-file')}`,
757
+ label: html`<i class="fa-solid fa-file-circle-xmark"></i> ${Translate.instance('clear-file')}`,
758
758
  type: 'button',
759
759
  })}`;
760
760
  break;
761
761
  default:
762
- renderForm += `${await Input.Render({
762
+ renderForm += `${await Input.instance({
763
763
  id: `${modelData.id}`,
764
764
  type: modelData.inputType,
765
765
  // autocomplete: 'new-password',
766
- label: html`<i class="fa-solid fa-pen-to-square"></i> ${Translate.Render(modelData.model)}`,
766
+ label: html`<i class="fa-solid fa-pen-to-square"></i> ${Translate.instance(modelData.model)}`,
767
767
  containerClass: 'in section-mp width-mini-box input-container',
768
768
  placeholder: true,
769
769
  // disabled: true,
@@ -773,15 +773,18 @@ const Panel = {
773
773
  }
774
774
  }
775
775
  let renderFormBtn = html`
776
- ${await BtnIcon.Render({
776
+ ${await BtnIcon.instance({
777
777
  class: `inl section-mp btn-custom btn-${idPanel}-submit`,
778
- label: html`<span class="btn-${idPanel}-label-add"><i class="fas fa-plus"></i> ${Translate.Render('add')}</span
779
- ><span class="btn-${idPanel}-label-edit hide"><i class="fas fa-edit"></i> ${Translate.Render('edit')}</span>`,
778
+ label: html`<span class="btn-${idPanel}-label-add"
779
+ ><i class="fas fa-plus"></i> ${Translate.instance('add')}</span
780
+ ><span class="btn-${idPanel}-label-edit hide"
781
+ ><i class="fas fa-edit"></i> ${Translate.instance('edit')}</span
782
+ >`,
780
783
  type: 'submit',
781
784
  })}
782
- ${await BtnIcon.Render({
785
+ ${await BtnIcon.instance({
783
786
  class: `inl section-mp btn-custom btn-${idPanel}-clean`,
784
- label: html`<i class="fa-solid fa-broom"></i> ${Translate.Render('clear')}`,
787
+ label: html`<i class="fa-solid fa-broom"></i> ${Translate.instance('clear')}`,
785
788
  type: 'button',
786
789
  })}
787
790
  `;
@@ -884,7 +887,7 @@ const Panel = {
884
887
  if (data.length > 0) for (const obj of data) render += await renderPanel(obj);
885
888
  else {
886
889
  render += html`<div class="in" style="min-height: 200px">
887
- <div class="abs center"><i class="fas fa-exclamation-circle"></i> ${Translate.Render(`no-result-found`)}</div>
890
+ <div class="abs center"><i class="fas fa-exclamation-circle"></i> ${Translate.instance(`no-result-found`)}</div>
888
891
  </div>`;
889
892
 
890
893
  if (options.on.noResultFound) setTimeout(options.on.noResultFound);
@@ -903,7 +906,7 @@ const Panel = {
903
906
  setTimeout(() => {
904
907
  s(`.${btnSelector}`).onclick = () => dataBtn.onClick();
905
908
  });
906
- customButtonsRender += ` ${await BtnIcon.Render({
909
+ customButtonsRender += ` ${await BtnIcon.instance({
907
910
  class: `inl section-mp btn-custom ${btnSelector}`,
908
911
  label: dataBtn.label,
909
912
  type: 'button',
@@ -1090,11 +1093,11 @@ const Panel = {
1090
1093
  <div class="${idPanel}-container">
1091
1094
  <div class="in modal ${idPanel}-form-container ${options.formContainerClass ? options.formContainerClass : ''}">
1092
1095
  <div class="in ${idPanel}-form-header">
1093
- ${await BtnIcon.Render({
1096
+ ${await BtnIcon.instance({
1094
1097
  class: `inl section-mp btn-custom btn-${idPanel}-add ${
1095
1098
  options?.role?.add ? (!options.role.add() ? 'hide' : '') : ''
1096
1099
  }`,
1097
- label: html`<i class="fas fa-plus"></i> ${Translate.Render('add')}`,
1100
+ label: html`<i class="fas fa-plus"></i> ${Translate.instance('add')}`,
1098
1101
  type: 'button',
1099
1102
  })}
1100
1103
  <!-- pagination component -->
@@ -1117,8 +1120,8 @@ const Panel = {
1117
1120
  <div class="in ${idPanel}-render">${render}</div>
1118
1121
  </div>
1119
1122
  `;
1120
- },
1121
- };
1123
+ }
1124
+ }
1122
1125
 
1123
1126
  // Function to generate base styles
1124
1127
  function getBaseStyles(idPanel, scrollClassContainer) {