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
@@ -0,0 +1,87 @@
1
+ import { EventBus } from './EventBus.js';
2
+
3
+ const AuthEventType = {
4
+ login: 'auth:login',
5
+ logout: 'auth:logout',
6
+ signup: 'auth:signup',
7
+ };
8
+
9
+ const SessionEventType = {
10
+ updated: 'session:updated',
11
+ cleared: 'session:cleared',
12
+ };
13
+
14
+ const SocketEventType = {
15
+ connect: 'socket:connect',
16
+ connectError: 'socket:connect-error',
17
+ disconnect: 'socket:disconnect',
18
+ channel: (channel) => `socket:channel:${channel}`,
19
+ };
20
+
21
+ const TranslateEventType = {
22
+ changed: 'translate:changed',
23
+ };
24
+
25
+ const ResponsiveEventType = {
26
+ changed: 'responsive:changed',
27
+ settled: 'responsive:settled',
28
+ orientationChanged: 'responsive:orientation:changed',
29
+ orientationSettled: 'responsive:orientation:settled',
30
+ };
31
+
32
+ const RecoverEventType = {
33
+ triggered: 'recover:triggered',
34
+ };
35
+
36
+ const KeyboardEventType = {
37
+ pressed: 'keyboard:pressed',
38
+ };
39
+
40
+ const AccountEventType = {
41
+ updated: 'account:updated',
42
+ };
43
+
44
+ const AppointmentEventType = {
45
+ submitted: 'appointment:submitted',
46
+ };
47
+
48
+ const authLoginEvents = new EventBus();
49
+ const authLogoutEvents = new EventBus();
50
+ const authSignupEvents = new EventBus();
51
+ const sessionEvents = new EventBus();
52
+ const socketEvents = new EventBus();
53
+ const translateEvents = new EventBus();
54
+ const responsiveChangeEvents = new EventBus();
55
+ const responsiveSettledEvents = new EventBus();
56
+ const responsiveOrientationEvents = new EventBus();
57
+ const responsiveOrientationSettledEvents = new EventBus();
58
+ const recoverEvents = new EventBus();
59
+ const keyboardEvents = new EventBus();
60
+ const accountEvents = new EventBus();
61
+ const appointmentEvents = new EventBus();
62
+
63
+ export {
64
+ AuthEventType,
65
+ SessionEventType,
66
+ SocketEventType,
67
+ TranslateEventType,
68
+ ResponsiveEventType,
69
+ RecoverEventType,
70
+ KeyboardEventType,
71
+ AccountEventType,
72
+ AppointmentEventType,
73
+ authLoginEvents,
74
+ authLogoutEvents,
75
+ authSignupEvents,
76
+ sessionEvents,
77
+ socketEvents,
78
+ translateEvents,
79
+ responsiveChangeEvents,
80
+ responsiveSettledEvents,
81
+ responsiveOrientationEvents,
82
+ responsiveOrientationSettledEvents,
83
+ recoverEvents,
84
+ keyboardEvents,
85
+ accountEvents,
86
+ appointmentEvents,
87
+ };
@@ -0,0 +1,309 @@
1
+ const PALETTE_COLUMNS = [
2
+ { name: 'Red', hue: 0 },
3
+ { name: 'Orange', hue: 28 },
4
+ { name: 'Yellow', hue: 52 },
5
+ { name: 'Green', hue: 132 },
6
+ { name: 'Cyan', hue: 182 },
7
+ { name: 'Blue', hue: 224 },
8
+ { name: 'Violet', hue: 278 },
9
+ ];
10
+
11
+ const PALETTE_LIGHTNESS = [92, 82, 72, 60, 48, 36, 24];
12
+ const PALETTE_GRAYSCALE_LIGHTNESS = [100, 84, 68, 52, 36, 18, 0];
13
+ const PALETTE_SATURATION = 82;
14
+
15
+ function clampChannel(value) {
16
+ return Math.max(0, Math.min(255, Math.round(value)));
17
+ }
18
+
19
+ function hslToHex(hue, saturation, lightness) {
20
+ const s = saturation / 100;
21
+ const l = lightness / 100;
22
+ const chroma = (1 - Math.abs(2 * l - 1)) * s;
23
+ const segment = hue / 60;
24
+ const second = chroma * (1 - Math.abs((segment % 2) - 1));
25
+ const match = l - chroma / 2;
26
+
27
+ let red = 0;
28
+ let green = 0;
29
+ let blue = 0;
30
+
31
+ if (segment >= 0 && segment < 1) {
32
+ red = chroma;
33
+ green = second;
34
+ } else if (segment < 2) {
35
+ red = second;
36
+ green = chroma;
37
+ } else if (segment < 3) {
38
+ green = chroma;
39
+ blue = second;
40
+ } else if (segment < 4) {
41
+ green = second;
42
+ blue = chroma;
43
+ } else if (segment < 5) {
44
+ red = second;
45
+ blue = chroma;
46
+ } else {
47
+ red = chroma;
48
+ blue = second;
49
+ }
50
+
51
+ const r = clampChannel((red + match) * 255)
52
+ .toString(16)
53
+ .padStart(2, '0');
54
+ const g = clampChannel((green + match) * 255)
55
+ .toString(16)
56
+ .padStart(2, '0');
57
+ const b = clampChannel((blue + match) * 255)
58
+ .toString(16)
59
+ .padStart(2, '0');
60
+ return `#${r}${g}${b}`.toUpperCase();
61
+ }
62
+
63
+ function normalizeHex(value) {
64
+ const raw = String(value || '')
65
+ .trim()
66
+ .replace('#', '');
67
+ if (/^[\da-fA-F]{3}$/.test(raw)) {
68
+ return `#${raw
69
+ .split('')
70
+ .map((char) => char + char)
71
+ .join('')}`.toUpperCase();
72
+ }
73
+ if (/^[\da-fA-F]{6}$/.test(raw)) {
74
+ return `#${raw}`.toUpperCase();
75
+ }
76
+ return null;
77
+ }
78
+
79
+ function buildPaletteRows() {
80
+ return PALETTE_LIGHTNESS.map((lightness, rowIndex) => {
81
+ const colorSwatches = PALETTE_COLUMNS.map((column) => ({
82
+ name: `${column.name} ${rowIndex + 1}`,
83
+ value: hslToHex(column.hue, PALETTE_SATURATION, lightness),
84
+ }));
85
+ const grayscaleLightness = PALETTE_GRAYSCALE_LIGHTNESS[rowIndex] ?? 0;
86
+ const grayscaleName =
87
+ rowIndex === 0 ? 'White' : rowIndex === PALETTE_LIGHTNESS.length - 1 ? 'Black' : `Gray ${rowIndex}`;
88
+ return [
89
+ ...colorSwatches,
90
+ {
91
+ name: grayscaleName,
92
+ value: hslToHex(0, 0, grayscaleLightness),
93
+ },
94
+ ];
95
+ });
96
+ }
97
+
98
+ const PALETTE_ROWS = buildPaletteRows();
99
+
100
+ class ColorPaletteElement extends HTMLElement {
101
+ constructor() {
102
+ super();
103
+ this.attachShadow({ mode: 'open' });
104
+ this._value = '#FF0000';
105
+ this._disabled = false;
106
+ this._handleClick = this._handleClick.bind(this);
107
+ }
108
+
109
+ static get observedAttributes() {
110
+ return ['value', 'disabled'];
111
+ }
112
+
113
+ attributeChangedCallback(name, _oldValue, newValue) {
114
+ if (name === 'value') {
115
+ this._setValue(newValue, { reflect: false, emit: false });
116
+ return;
117
+ }
118
+ if (name === 'disabled') {
119
+ this._disabled = newValue !== null;
120
+ this._updateSelection();
121
+ }
122
+ }
123
+
124
+ connectedCallback() {
125
+ this.render();
126
+ this.shadowRoot.addEventListener('click', this._handleClick);
127
+ this._setValue(this.getAttribute('value') || this._value, { reflect: false, emit: false });
128
+ }
129
+
130
+ disconnectedCallback() {
131
+ this.shadowRoot.removeEventListener('click', this._handleClick);
132
+ }
133
+
134
+ get value() {
135
+ return this._value;
136
+ }
137
+
138
+ set value(value) {
139
+ this._setValue(value, { reflect: true, emit: false });
140
+ }
141
+
142
+ _setValue(value, { reflect, emit } = { reflect: true, emit: false }) {
143
+ const normalized = normalizeHex(value);
144
+ if (!normalized) {
145
+ return;
146
+ }
147
+ const changed = normalized !== this._value;
148
+ this._value = normalized;
149
+ if (reflect && this.getAttribute('value') !== normalized) {
150
+ this.setAttribute('value', normalized);
151
+ }
152
+ this._updateSelection();
153
+ if (emit && changed) {
154
+ const detail = { value: normalized, hex: normalized };
155
+ this.dispatchEvent(new CustomEvent('colorchange', { detail }));
156
+ this.dispatchEvent(new CustomEvent('change', { detail }));
157
+ }
158
+ }
159
+
160
+ _handleClick(event) {
161
+ const swatch = event.target.closest('button[data-color]');
162
+ if (!swatch || this._disabled) {
163
+ return;
164
+ }
165
+ this._setValue(swatch.dataset.color, { reflect: true, emit: true });
166
+ }
167
+
168
+ _updateSelection() {
169
+ if (!this.shadowRoot) {
170
+ return;
171
+ }
172
+ const swatches = this.shadowRoot.querySelectorAll('button[data-color]');
173
+ swatches.forEach((swatch) => {
174
+ const selected = swatch.dataset.color === this._value;
175
+ swatch.toggleAttribute('data-selected', selected);
176
+ swatch.setAttribute('aria-pressed', selected ? 'true' : 'false');
177
+ swatch.disabled = this._disabled;
178
+ });
179
+
180
+ const currentValue = this.shadowRoot.querySelector('.current-value');
181
+ if (currentValue) {
182
+ currentValue.textContent = this._value;
183
+ }
184
+ const currentSwatch = this.shadowRoot.querySelector('.current-swatch');
185
+ if (currentSwatch) {
186
+ currentSwatch.style.background = this._value;
187
+ }
188
+ }
189
+
190
+ render() {
191
+ const gridMarkup = PALETTE_ROWS.map(
192
+ (row) => `
193
+ <div class="swatch-row">
194
+ ${row
195
+ .map(
196
+ (swatch) => `
197
+ <button
198
+ type="button"
199
+ class="swatch"
200
+ data-color="${swatch.value}"
201
+ title="${swatch.name} ${swatch.value}"
202
+ aria-label="${swatch.name} ${swatch.value}"
203
+ style="background:${swatch.value};"
204
+ ></button>
205
+ `,
206
+ )
207
+ .join('')}
208
+ </div>
209
+ `,
210
+ ).join('');
211
+
212
+ this.shadowRoot.innerHTML = `
213
+ <style>
214
+ :host {
215
+ display: block;
216
+ width: 100%;
217
+ }
218
+
219
+ .palette {
220
+ display: grid;
221
+ gap: 10px;
222
+ font-family: monospace;
223
+ color: #d7d7d7;
224
+ }
225
+
226
+ .grid {
227
+ display: grid;
228
+ gap: 6px;
229
+ }
230
+
231
+ .swatch-row {
232
+ display: grid;
233
+ grid-template-columns: repeat(8, minmax(0, 1fr));
234
+ gap: 6px;
235
+ }
236
+
237
+ .swatch {
238
+ appearance: none;
239
+ border: 2px solid rgba(255, 255, 255, 0.16);
240
+ border-radius: 8px;
241
+ cursor: pointer;
242
+ display: block;
243
+ min-height: 24px;
244
+ padding: 0;
245
+ position: relative;
246
+ transition: transform 120ms ease, border-color 120ms ease, box-shadow 120ms ease;
247
+ width: 100%;
248
+ }
249
+
250
+ .swatch:hover {
251
+ transform: translateY(-1px);
252
+ border-color: rgba(255, 255, 255, 0.5);
253
+ }
254
+
255
+ .swatch[data-selected] {
256
+ border-color: #ffffff;
257
+ box-shadow: 0 0 0 2px rgba(28, 28, 28, 0.7), 0 0 0 4px rgba(255, 255, 255, 0.45);
258
+ }
259
+
260
+ .swatch[data-selected]::after {
261
+ content: '';
262
+ position: absolute;
263
+ inset: 6px;
264
+ border: 1px solid rgba(0, 0, 0, 0.45);
265
+ border-radius: 5px;
266
+ }
267
+
268
+ .current {
269
+ align-items: center;
270
+ display: flex;
271
+ gap: 8px;
272
+ font-size: 12px;
273
+ }
274
+
275
+ .current-swatch {
276
+ border: 1px solid rgba(255, 255, 255, 0.24);
277
+ border-radius: 6px;
278
+ height: 18px;
279
+ width: 18px;
280
+ }
281
+
282
+ .current-label {
283
+ color: #9f9f9f;
284
+ text-transform: uppercase;
285
+ }
286
+
287
+ .swatch:disabled {
288
+ cursor: default;
289
+ opacity: 0.55;
290
+ transform: none;
291
+ }
292
+ </style>
293
+ <div class="palette">
294
+ <div class="grid">${gridMarkup}</div>
295
+ <div class="current">
296
+ <div class="current-swatch"></div>
297
+ <div><span class="current-label">Selected</span> <span class="current-value"></span></div>
298
+ </div>
299
+ </div>
300
+ `;
301
+ this._updateSelection();
302
+ }
303
+ }
304
+
305
+ if (!customElements.get('color-palette')) {
306
+ customElements.define('color-palette', ColorPaletteElement);
307
+ }
308
+
309
+ export { ColorPaletteElement };
@@ -32,7 +32,7 @@ const attachMarkdownLinkHandlers = (containerSelector) => {
32
32
  id: `external-link-${s4()}`,
33
33
  html: async () => html`
34
34
  <div class="in section-mp" style="text-align: center; padding: 20px;">
35
- <p>${Translate.Render('external-link-warning')}</p>
35
+ <p>${Translate.instance('external-link-warning')}</p>
36
36
  <p style="word-break: break-all; margin-top: 10px;"><strong>${href}</strong></p>
37
37
  </div>
38
38
  `,
@@ -55,8 +55,8 @@ const attachMarkdownLinkHandlers = (containerSelector) => {
55
55
  });
56
56
  };
57
57
 
58
- const Content = {
59
- Render: async function (options = { idModal: '', titleIcon: '' }) {
58
+ class Content {
59
+ static async instance(options = { idModal: '', titleIcon: '' }) {
60
60
  const { idModal } = options;
61
61
  setTimeout(async () => {
62
62
  try {
@@ -140,12 +140,15 @@ const Content = {
140
140
  htmls(`.content-render-${idModal}`, ``);
141
141
 
142
142
  // Pass file IDs to RenderFile - it will fetch blobs as needed
143
- if (md) await this.RenderFile({ idModal, file: md, id: md._id });
144
- if (file) await this.RenderFile({ idModal, file, id: file._id });
143
+ if (md) await Content.RenderFile({ idModal, file: md, id: md._id });
144
+ if (file) await Content.RenderFile({ idModal, file, id: file._id });
145
145
  Modal.Data[idModal].onObserverListener[`main-content-observer`]();
146
146
  } catch (error) {
147
147
  htmls(`.content-render-${idModal}`, '');
148
- htmls(`.error-${idModal}`, html`<i class="fas fa-exclamation-circle"></i> ${Translate.Render(error.message)}`);
148
+ htmls(
149
+ `.error-${idModal}`,
150
+ html`<i class="fas fa-exclamation-circle"></i> ${Translate.instance(error.message)}`,
151
+ );
149
152
  s(`.error-${idModal}`).classList.remove('hide');
150
153
  }
151
154
  s(`.ssr-shimmer-content-${idModal}`).classList.add('hide');
@@ -164,14 +167,14 @@ const Content = {
164
167
  ${imageShimmer()}
165
168
  </div>
166
169
  <div class="abs center error-${idModal} hide"></div>`;
167
- },
170
+ }
168
171
 
169
172
  /**
170
173
  * Helper function to get file content
171
174
  * Supports both legacy format (with buffer data) and new format (metadata only)
172
175
  * For new format, fetches content from blob endpoint
173
176
  */
174
- getFileContent: async function (file, options = {}) {
177
+ static async getFileContent(file, options = {}) {
175
178
  // If custom URL provided, use it
176
179
  if (options.url) {
177
180
  return await CoreService.getRaw({ url: options.url });
@@ -197,9 +200,9 @@ const Content = {
197
200
  }
198
201
 
199
202
  throw new Error('No file content available');
200
- },
203
+ }
201
204
 
202
- RenderFile: async function (
205
+ static async RenderFile(
203
206
  options = {
204
207
  file: {
205
208
  _id: '',
@@ -308,13 +311,13 @@ ${JSON.stringify(JSON.parse(content), null, 4)}</pre
308
311
  if (ext === 'md') {
309
312
  attachMarkdownLinkHandlers(container);
310
313
  }
311
- },
314
+ }
312
315
 
313
316
  /**
314
317
  * Generate appropriate URL for file display
315
318
  * Prefers blob endpoint for new metadata-only format
316
319
  */
317
- urlFactory: async function (options) {
320
+ static async urlFactory(options) {
318
321
  // If custom URL provided, use it
319
322
  if (options.url) {
320
323
  return options.url;
@@ -340,7 +343,7 @@ ${JSON.stringify(JSON.parse(content), null, 4)}</pre
340
343
  }
341
344
 
342
345
  return null;
343
- },
344
- };
346
+ }
347
+ }
345
348
 
346
349
  export { Content, attachMarkdownLinkHandlers };