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.
- package/.env.example +0 -2
- package/.github/workflows/engine-cyberia.cd.yml +10 -8
- package/.github/workflows/engine-cyberia.ci.yml +12 -29
- package/.github/workflows/ghpkg.ci.yml +4 -4
- package/.github/workflows/npmpkg.ci.yml +28 -11
- package/.github/workflows/publish.ci.yml +21 -2
- package/.github/workflows/pwa-microservices-template-page.cd.yml +4 -5
- package/.github/workflows/pwa-microservices-template-test.ci.yml +3 -3
- package/.github/workflows/release.cd.yml +14 -10
- package/CHANGELOG.md +783 -1
- package/CLI-HELP.md +95 -18
- package/Dockerfile +0 -2
- package/README.md +290 -220
- package/bin/build.js +24 -7
- package/bin/cyberia.js +2838 -252
- package/bin/deploy.js +747 -125
- package/bin/file.js +9 -0
- package/bin/index.js +2838 -252
- package/bin/vs.js +1 -1
- package/conf.js +99 -65
- package/deployment.yaml +18 -164
- package/hardhat/hardhat.config.js +13 -13
- package/hardhat/ignition/modules/ObjectLayerToken.js +1 -1
- package/hardhat/package-lock.json +2559 -5864
- package/hardhat/package.json +14 -23
- package/hardhat/scripts/deployObjectLayerToken.js +1 -1
- package/hardhat/test/ObjectLayerToken.js +4 -2
- package/hardhat/types/ethers-contracts/ObjectLayerToken.ts +690 -0
- package/hardhat/types/ethers-contracts/common.ts +92 -0
- package/hardhat/types/ethers-contracts/factories/ObjectLayerToken__factory.ts +1055 -0
- package/hardhat/types/ethers-contracts/factories/index.ts +4 -0
- package/hardhat/types/ethers-contracts/hardhat.d.ts +47 -0
- package/hardhat/types/ethers-contracts/index.ts +6 -0
- package/jsconfig.json +1 -1
- package/manifests/cronjobs/dd-cron/dd-cron-backup.yaml +6 -5
- package/manifests/cronjobs/dd-cron/dd-cron-dns.yaml +6 -5
- package/manifests/deployment/dd-cyberia-development/deployment.yaml +18 -164
- package/manifests/deployment/dd-cyberia-development/proxy.yaml +7 -79
- package/manifests/deployment/dd-default-development/deployment.yaml +2 -6
- package/manifests/deployment/dd-test-development/deployment.yaml +112 -28
- package/manifests/deployment/dd-test-development/proxy.yaml +46 -1
- package/manifests/deployment/playwright/deployment.yaml +1 -1
- package/nodemon.json +1 -1
- package/package.json +39 -24
- package/proxy.yaml +7 -79
- package/scripts/k3s-node-setup.sh +2 -2
- package/scripts/nat-iptables.sh +103 -18
- package/scripts/rhel-grpc-setup.sh +56 -0
- package/src/api/atlas-sprite-sheet/atlas-sprite-sheet.controller.js +58 -14
- package/src/api/atlas-sprite-sheet/atlas-sprite-sheet.model.js +23 -14
- package/src/api/atlas-sprite-sheet/atlas-sprite-sheet.router.js +5 -0
- package/src/api/atlas-sprite-sheet/atlas-sprite-sheet.service.js +148 -20
- package/src/api/core/core.controller.js +10 -10
- package/src/api/core/core.service.js +10 -10
- package/src/api/crypto/crypto.controller.js +8 -8
- package/src/api/crypto/crypto.service.js +8 -8
- package/src/api/cyberia-action/cyberia-action.controller.js +74 -0
- package/src/api/cyberia-action/cyberia-action.model.js +87 -0
- package/src/api/cyberia-action/cyberia-action.router.js +27 -0
- package/src/api/cyberia-action/cyberia-action.service.js +42 -0
- package/src/api/cyberia-dialogue/cyberia-dialogue.controller.js +93 -0
- package/src/api/cyberia-dialogue/cyberia-dialogue.model.js +36 -0
- package/src/api/cyberia-dialogue/cyberia-dialogue.router.js +29 -0
- package/src/api/cyberia-dialogue/cyberia-dialogue.service.js +51 -0
- package/src/api/cyberia-entity/cyberia-entity.controller.js +74 -0
- package/src/api/cyberia-entity/cyberia-entity.model.js +24 -0
- package/src/api/cyberia-entity/cyberia-entity.router.js +27 -0
- package/src/api/cyberia-entity/cyberia-entity.service.js +42 -0
- package/src/api/cyberia-instance/cyberia-fallback-world.js +178 -0
- package/src/api/cyberia-instance/cyberia-instance.controller.js +92 -0
- package/src/api/cyberia-instance/cyberia-instance.model.js +87 -0
- package/src/api/cyberia-instance/cyberia-instance.router.js +63 -0
- package/src/api/cyberia-instance/cyberia-instance.service.js +156 -0
- package/src/api/cyberia-instance/cyberia-portal-connector.js +260 -0
- package/src/api/cyberia-instance/cyberia-world-generator.js +505 -0
- package/src/api/cyberia-instance-conf/cyberia-instance-conf.controller.js +74 -0
- package/src/api/cyberia-instance-conf/cyberia-instance-conf.defaults.js +574 -0
- package/src/api/cyberia-instance-conf/cyberia-instance-conf.model.js +231 -0
- package/src/api/cyberia-instance-conf/cyberia-instance-conf.router.js +27 -0
- package/src/api/cyberia-instance-conf/cyberia-instance-conf.service.js +46 -0
- package/src/api/cyberia-map/cyberia-map.controller.js +79 -0
- package/src/api/cyberia-map/cyberia-map.model.js +30 -0
- package/src/api/cyberia-map/cyberia-map.router.js +40 -0
- package/src/api/cyberia-map/cyberia-map.service.js +74 -0
- package/src/api/cyberia-quest/cyberia-quest.controller.js +74 -0
- package/src/api/cyberia-quest/cyberia-quest.model.js +67 -0
- package/src/api/cyberia-quest/cyberia-quest.router.js +27 -0
- package/src/api/cyberia-quest/cyberia-quest.service.js +42 -0
- package/src/api/cyberia-quest-progress/cyberia-quest-progress.controller.js +74 -0
- package/src/api/cyberia-quest-progress/cyberia-quest-progress.model.js +49 -0
- package/src/api/cyberia-quest-progress/cyberia-quest-progress.router.js +27 -0
- package/src/api/cyberia-quest-progress/cyberia-quest-progress.service.js +42 -0
- package/src/api/default/default.controller.js +10 -10
- package/src/api/default/default.service.js +10 -10
- package/src/api/document/document.controller.js +12 -12
- package/src/api/document/document.model.js +10 -16
- package/src/api/file/file.controller.js +8 -8
- package/src/api/file/file.model.js +10 -10
- package/src/api/file/file.ref.json +18 -0
- package/src/api/file/file.service.js +36 -36
- package/src/api/instance/instance.controller.js +10 -10
- package/src/api/instance/instance.model.js +4 -10
- package/src/api/instance/instance.service.js +10 -10
- package/src/api/ipfs/ipfs.controller.js +15 -36
- package/src/api/ipfs/ipfs.model.js +47 -47
- package/src/api/ipfs/ipfs.router.js +8 -13
- package/src/api/ipfs/ipfs.service.js +67 -129
- package/src/api/object-layer/object-layer.controller.js +12 -12
- package/src/api/object-layer/object-layer.model.js +4 -17
- package/src/api/object-layer/object-layer.router.js +30 -0
- package/src/api/object-layer/object-layer.service.js +126 -43
- package/src/api/object-layer-render-frames/object-layer-render-frames.controller.js +10 -10
- package/src/api/object-layer-render-frames/object-layer-render-frames.model.js +6 -16
- package/src/api/object-layer-render-frames/object-layer-render-frames.service.js +18 -14
- package/src/api/test/test.controller.js +8 -8
- package/src/api/test/test.service.js +8 -8
- package/src/api/user/guest.service.js +99 -0
- package/src/api/user/user.controller.js +6 -6
- package/src/api/user/user.model.js +8 -13
- package/src/api/user/user.service.js +11 -27
- package/src/cli/cluster.js +68 -21
- package/src/cli/db.js +753 -825
- package/src/cli/deploy.js +215 -125
- package/src/cli/env.js +29 -0
- package/src/cli/fs.js +82 -8
- package/src/cli/image.js +43 -1
- package/src/cli/index.js +74 -3
- package/src/cli/kubectl.js +211 -0
- package/src/cli/release.js +340 -0
- package/src/cli/repository.js +475 -74
- package/src/cli/run.js +582 -43
- package/src/cli/secrets.js +73 -0
- package/src/cli/ssh.js +1 -1
- package/src/cli/static.js +43 -115
- package/src/cli/test.js +3 -3
- package/src/client/Cryptokoyn.index.js +18 -22
- package/src/client/CyberiaPortal.index.js +19 -24
- package/src/client/Default.index.js +21 -34
- package/src/client/Itemledger.index.js +20 -27
- package/src/client/Underpost.index.js +19 -24
- package/src/client/components/core/404.js +4 -4
- package/src/client/components/core/500.js +4 -4
- package/src/client/components/core/Account.js +73 -60
- package/src/client/components/core/AgGrid.js +23 -33
- package/src/client/components/core/Alert.js +12 -13
- package/src/client/components/core/AppStore.js +69 -0
- package/src/client/components/core/Auth.js +35 -37
- package/src/client/components/core/Badge.js +7 -13
- package/src/client/components/core/BtnIcon.js +15 -17
- package/src/client/components/core/CalendarCore.js +43 -64
- package/src/client/components/core/Chat.js +13 -15
- package/src/client/components/core/ClientEvents.js +87 -0
- package/src/client/components/core/ColorPaletteElement.js +309 -0
- package/src/client/components/core/Content.js +17 -14
- package/src/client/components/core/Css.js +15 -71
- package/src/client/components/core/CssCore.js +12 -16
- package/src/client/components/core/D3Chart.js +4 -4
- package/src/client/components/core/Docs.js +64 -91
- package/src/client/components/core/DropDown.js +194 -96
- package/src/client/components/core/EventBus.js +92 -0
- package/src/client/components/core/EventsUI.js +14 -17
- package/src/client/components/core/FileExplorer.js +96 -228
- package/src/client/components/core/FullScreen.js +47 -75
- package/src/client/components/core/Input.js +24 -69
- package/src/client/components/core/Keyboard.js +26 -19
- package/src/client/components/core/KeyboardAvoidance.js +145 -0
- package/src/client/components/core/LoadingAnimation.js +25 -31
- package/src/client/components/core/LogIn.js +43 -43
- package/src/client/components/core/LogOut.js +25 -16
- package/src/client/components/core/Modal.js +462 -179
- package/src/client/components/core/NotificationManager.js +14 -18
- package/src/client/components/core/Panel.js +54 -51
- package/src/client/components/core/PanelForm.js +44 -144
- package/src/client/components/core/Polyhedron.js +110 -214
- package/src/client/components/core/PublicProfile.js +39 -32
- package/src/client/components/core/Recover.js +48 -44
- package/src/client/components/core/Responsive.js +88 -32
- package/src/client/components/core/RichText.js +9 -18
- package/src/client/components/core/Router.js +24 -3
- package/src/client/components/core/SearchBox.js +37 -37
- package/src/client/components/core/SignUp.js +39 -30
- package/src/client/components/core/SocketIo.js +112 -30
- package/src/client/components/core/SocketIoHandler.js +75 -0
- package/src/client/components/core/Stream.js +143 -95
- package/src/client/components/core/ToggleSwitch.js +8 -20
- package/src/client/components/core/ToolTip.js +5 -17
- package/src/client/components/core/Translate.js +56 -59
- package/src/client/components/core/Validator.js +26 -16
- package/src/client/components/core/Wallet.js +15 -26
- package/src/client/components/core/Webhook.js +40 -7
- package/src/client/components/core/Worker.js +163 -27
- package/src/client/components/core/windowGetDimensions.js +7 -7
- package/src/client/components/cryptokoyn/{MenuCryptokoyn.js → AppShellCryptokoyn.js} +59 -59
- package/src/client/components/cryptokoyn/AppStoreCryptokoyn.js +5 -0
- package/src/client/components/cryptokoyn/CssCryptokoyn.js +15 -15
- package/src/client/components/cryptokoyn/LogInCryptokoyn.js +9 -7
- package/src/client/components/cryptokoyn/LogOutCryptokoyn.js +8 -6
- package/src/client/components/cryptokoyn/RouterCryptokoyn.js +37 -0
- package/src/client/components/cryptokoyn/SettingsCryptokoyn.js +4 -4
- package/src/client/components/cryptokoyn/SignUpCryptokoyn.js +6 -4
- package/src/client/components/cryptokoyn/SocketIoCryptokoyn.js +3 -51
- package/src/client/components/cyberia/InstanceEngineCyberia.js +781 -0
- package/src/client/components/cyberia/MapEngineCyberia.js +1836 -2
- package/src/client/components/cyberia/ObjectLayerEngine.js +19 -0
- package/src/client/components/cyberia/ObjectLayerEngineModal.js +1220 -99
- package/src/client/components/cyberia/ObjectLayerEngineViewer.js +252 -316
- package/src/client/components/cyberia-portal/{MenuCyberiaPortal.js → AppShellCyberiaPortal.js} +136 -103
- package/src/client/components/cyberia-portal/AppStoreCyberiaPortal.js +5 -0
- package/src/client/components/cyberia-portal/CommonCyberiaPortal.js +462 -32
- package/src/client/components/cyberia-portal/CssCyberiaPortal.js +15 -15
- package/src/client/components/cyberia-portal/LogInCyberiaPortal.js +9 -7
- package/src/client/components/cyberia-portal/LogOutCyberiaPortal.js +8 -6
- package/src/client/components/cyberia-portal/MainBodyCyberiaPortal.js +4 -4
- package/src/client/components/cyberia-portal/RouterCyberiaPortal.js +60 -0
- package/src/client/components/cyberia-portal/SettingsCyberiaPortal.js +4 -4
- package/src/client/components/cyberia-portal/SignUpCyberiaPortal.js +6 -4
- package/src/client/components/cyberia-portal/SocketIoCyberiaPortal.js +3 -49
- package/src/client/components/cyberia-portal/TranslateCyberiaPortal.js +8 -4
- package/src/client/components/default/{MenuDefault.js → AppShellDefault.js} +91 -91
- package/src/client/components/default/AppStoreDefault.js +5 -0
- package/src/client/components/default/CssDefault.js +12 -12
- package/src/client/components/default/LogInDefault.js +9 -7
- package/src/client/components/default/LogOutDefault.js +8 -6
- package/src/client/components/default/RouterDefault.js +47 -0
- package/src/client/components/default/SettingsDefault.js +4 -4
- package/src/client/components/default/SignUpDefault.js +6 -4
- package/src/client/components/default/SocketIoDefault.js +3 -51
- package/src/client/components/default/TranslateDefault.js +3 -3
- package/src/client/components/itemledger/{MenuItemledger.js → AppShellItemledger.js} +59 -59
- package/src/client/components/itemledger/AppStoreItemledger.js +5 -0
- package/src/client/components/itemledger/CssItemledger.js +15 -15
- package/src/client/components/itemledger/LogInItemledger.js +9 -7
- package/src/client/components/itemledger/LogOutItemledger.js +8 -6
- package/src/client/components/itemledger/RouterItemledger.js +38 -0
- package/src/client/components/itemledger/SettingsItemledger.js +4 -4
- package/src/client/components/itemledger/SignUpItemledger.js +6 -4
- package/src/client/components/itemledger/SocketIoItemledger.js +3 -51
- package/src/client/components/itemledger/TranslateItemledger.js +3 -3
- package/src/client/components/underpost/{MenuUnderpost.js → AppShellUnderpost.js} +92 -92
- package/src/client/components/underpost/AppStoreUnderpost.js +5 -0
- package/src/client/components/underpost/CssUnderpost.js +14 -14
- package/src/client/components/underpost/CyberpunkBloggerUnderpost.js +4 -4
- package/src/client/components/underpost/DocumentSearchProvider.js +1 -1
- package/src/client/components/underpost/LabGalleryUnderpost.js +12 -15
- package/src/client/components/underpost/LogInUnderpost.js +9 -7
- package/src/client/components/underpost/LogOutUnderpost.js +8 -6
- package/src/client/components/underpost/RouterUnderpost.js +45 -0
- package/src/client/components/underpost/SettingsUnderpost.js +4 -4
- package/src/client/components/underpost/SignUpUnderpost.js +6 -4
- package/src/client/components/underpost/SocketIoUnderpost.js +3 -51
- package/src/client/components/underpost/TranslateUnderpost.js +4 -4
- package/src/client/public/cyberia-docs/ACTION-SYSTEM.md +235 -0
- package/src/client/public/cyberia-docs/ARCHITECTURE.md +443 -0
- package/src/client/public/cyberia-docs/CYBERIA-CLI.md +417 -0
- package/src/client/public/cyberia-docs/CYBERIA-CLIENT.md +313 -0
- package/src/client/public/cyberia-docs/CYBERIA-SERVER.md +260 -0
- package/src/client/public/cyberia-docs/ENTITY-PROFILE.md +241 -0
- package/src/client/public/cyberia-docs/HARDHAT-MODULE.md +300 -0
- package/src/client/public/cyberia-docs/OFF-CHAIN-ECONOMY.md +279 -0
- package/src/client/public/cyberia-docs/QUEST-SYSTEM.md +206 -0
- package/src/client/public/cyberia-docs/ROADMAP.md +240 -0
- package/src/client/public/cyberia-docs/WHITE-PAPER.md +732 -0
- package/src/client/services/atlas-sprite-sheet/atlas-sprite-sheet.service.js +14 -20
- package/src/client/services/core/core.service.js +35 -55
- package/src/client/services/crypto/crypto.service.js +8 -13
- package/src/client/services/cyberia-action/cyberia-action.service.js +99 -0
- package/src/client/services/cyberia-dialogue/cyberia-dialogue.service.js +99 -0
- package/src/client/services/cyberia-entity/cyberia-entity.management.js +57 -0
- package/src/client/services/cyberia-entity/cyberia-entity.service.js +99 -0
- package/src/client/services/cyberia-instance/cyberia-instance.management.js +194 -0
- package/src/client/services/cyberia-instance/cyberia-instance.service.js +116 -0
- package/src/client/services/cyberia-instance-conf/cyberia-instance-conf.service.js +99 -0
- package/src/client/services/cyberia-map/cyberia-map.management.js +193 -0
- package/src/client/services/cyberia-map/cyberia-map.service.js +120 -0
- package/src/client/services/cyberia-quest/cyberia-quest.service.js +99 -0
- package/src/client/services/cyberia-quest-progress/cyberia-quest-progress.service.js +99 -0
- package/src/client/services/default/default.management.js +159 -267
- package/src/client/services/default/default.service.js +10 -16
- package/src/client/services/document/document.service.js +14 -19
- package/src/client/services/file/file.service.js +8 -13
- package/src/client/services/instance/instance.management.js +6 -6
- package/src/client/services/instance/instance.service.js +10 -15
- package/src/client/services/ipfs/ipfs.service.js +14 -40
- package/src/client/services/object-layer/object-layer.management.js +14 -14
- package/src/client/services/object-layer/object-layer.service.js +39 -24
- package/src/client/services/object-layer-render-frames/object-layer-render-frames.service.js +10 -16
- package/src/client/services/test/test.service.js +8 -13
- package/src/client/services/user/guest.service.js +86 -0
- package/src/client/services/user/user.management.js +6 -6
- package/src/client/services/user/user.service.js +14 -20
- package/src/client/ssr/body/404.js +3 -3
- package/src/client/ssr/body/500.js +3 -3
- package/src/client/ssr/body/CacheControl.js +5 -2
- package/src/client/ssr/body/DefaultSplashScreen.js +19 -12
- package/src/client/ssr/body/UnderpostDefaultSplashScreen.js +13 -6
- package/src/client/ssr/head/PwaItemledger.js +197 -60
- package/src/client/ssr/mailer/DefaultRecoverEmail.js +19 -20
- package/src/client/ssr/mailer/DefaultVerifyEmail.js +15 -16
- package/src/client/ssr/offline/Maintenance.js +12 -11
- package/src/client/ssr/offline/NoNetworkConnection.js +3 -3
- package/src/client/ssr/pages/CyberiaServerMetrics.js +1 -1
- package/src/client/ssr/pages/Test.js +2 -2
- package/src/client/sw/core.sw.js +212 -0
- package/src/grpc/cyberia/grpc-server.js +642 -0
- package/src/index.js +24 -1
- package/src/runtime/cyberia-client/Dockerfile +80 -0
- package/src/runtime/cyberia-server/Dockerfile +37 -0
- package/src/runtime/express/Dockerfile +5 -1
- package/src/runtime/express/Express.js +18 -1
- package/src/runtime/lampp/Dockerfile +17 -5
- package/src/runtime/lampp/Lampp.js +27 -4
- package/src/runtime/wp/Dockerfile +62 -0
- package/src/runtime/wp/Wp.js +639 -0
- package/src/server/atlas-sprite-sheet-generator.js +4 -2
- package/src/server/auth.js +24 -1
- package/src/server/backup.js +37 -9
- package/src/server/client-build-docs.js +52 -46
- package/src/server/client-build.js +356 -82
- package/src/server/client-formatted.js +140 -57
- package/src/server/conf.js +29 -13
- package/src/server/cron.js +25 -23
- package/src/server/data-query.js +32 -20
- package/src/server/dns.js +24 -1
- package/src/server/ipfs-client.js +253 -89
- package/src/server/object-layer.js +150 -114
- package/src/server/peer.js +8 -0
- package/src/server/process.js +13 -27
- package/src/server/runtime.js +25 -1
- package/src/server/semantic-layer-generator-floor.js +319 -0
- package/src/server/semantic-layer-generator-resource.js +259 -0
- package/src/server/semantic-layer-generator-skin.js +1164 -0
- package/src/server/semantic-layer-generator.js +211 -542
- package/src/server/shape-generator.js +108 -0
- package/src/server/start.js +19 -5
- package/src/server/valkey.js +141 -235
- package/src/ws/IoInterface.js +1 -10
- package/src/ws/IoServer.js +14 -33
- package/src/ws/core/channels/core.ws.chat.js +65 -20
- package/src/ws/core/channels/core.ws.mailer.js +113 -32
- package/src/ws/core/channels/core.ws.stream.js +90 -31
- package/src/ws/core/core.ws.connection.js +12 -33
- package/src/ws/core/core.ws.emit.js +10 -26
- package/src/ws/core/core.ws.server.js +25 -58
- package/src/ws/default/channels/default.ws.main.js +53 -12
- package/src/ws/default/default.ws.connection.js +26 -13
- package/src/ws/default/default.ws.server.js +30 -12
- package/tsconfig.docs.json +15 -0
- package/typedoc.dd-cyberia.json +29 -0
- package/typedoc.json +29 -0
- package/WHITE-PAPER.md +0 -1540
- package/hardhat/README.md +0 -531
- package/hardhat/WHITE-PAPER.md +0 -1540
- package/jsdoc.dd-cyberia.json +0 -59
- package/jsdoc.json +0 -59
- package/src/api/object-layer/README.md +0 -347
- package/src/client/components/core/ColorPalette.js +0 -5267
- package/src/client/components/core/JoyStick.js +0 -80
- package/src/client/components/cryptokoyn/CommonCryptokoyn.js +0 -29
- package/src/client/components/cryptokoyn/ElementsCryptokoyn.js +0 -38
- package/src/client/components/cryptokoyn/RoutesCryptokoyn.js +0 -39
- package/src/client/components/cyberia-portal/ElementsCyberiaPortal.js +0 -38
- package/src/client/components/cyberia-portal/RoutesCyberiaPortal.js +0 -58
- package/src/client/components/cyberia-portal/ServerCyberiaPortal.js +0 -136
- package/src/client/components/default/ElementsDefault.js +0 -38
- package/src/client/components/default/RoutesDefault.js +0 -49
- package/src/client/components/itemledger/CommonItemledger.js +0 -29
- package/src/client/components/itemledger/ElementsItemledger.js +0 -38
- package/src/client/components/itemledger/RoutesItemledger.js +0 -40
- package/src/client/components/underpost/CommonUnderpost.js +0 -29
- package/src/client/components/underpost/ElementsUnderpost.js +0 -38
- package/src/client/components/underpost/RoutesUnderpost.js +0 -47
- package/src/client/sw/default.sw.js +0 -127
- package/src/client/sw/template.sw.js +0 -84
- package/src/ws/core/management/core.ws.chat.js +0 -8
- package/src/ws/core/management/core.ws.mailer.js +0 -16
- package/src/ws/core/management/core.ws.stream.js +0 -8
- 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
|
-
|
|
7
|
-
|
|
8
|
-
|
|
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
|
-
|
|
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(
|
|
40
|
-
|
|
41
|
-
await Modal.
|
|
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
|
-
|
|
26
|
-
Tokens
|
|
27
|
-
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
335
|
+
tooltipHtml: await Badge.instance({
|
|
335
336
|
id: `tooltip-${idPanel}-${id}`,
|
|
336
|
-
text: `${Translate.
|
|
337
|
+
text: `${Translate.instance(`delete`)}`,
|
|
337
338
|
classList: '',
|
|
338
339
|
style: { top: `-22px`, left: '-13px' },
|
|
339
340
|
}),
|
|
340
341
|
})}
|
|
341
|
-
${await BtnIcon.
|
|
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.
|
|
346
|
+
tooltipHtml: await Badge.instance({
|
|
346
347
|
id: `tooltip-${idPanel}-${id}`,
|
|
347
|
-
text: `${Translate.
|
|
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.
|
|
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.
|
|
517
|
+
${keyIcon} ${Translate.instance(infoKey)}:</span
|
|
518
518
|
>
|
|
519
519
|
<span class="${idPanel}-row-value"
|
|
520
|
-
>${valueIcon} ${obj[infoKey].map((k) => Translate.
|
|
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.
|
|
535
|
-
: Translate.
|
|
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.
|
|
551
|
-
: Translate.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
627
|
+
${await DropDown.instance({
|
|
628
628
|
id: `${modelData.id}`,
|
|
629
|
-
label: html`${Translate.
|
|
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.
|
|
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.
|
|
651
|
+
${await DropDown.instance({
|
|
652
652
|
id: `${modelData.id}`,
|
|
653
|
-
label: html`${Translate.
|
|
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.
|
|
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.
|
|
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.
|
|
692
|
+
${Translate.instance(modelData.model)}
|
|
693
693
|
</div>
|
|
694
694
|
</div>
|
|
695
695
|
<div class="in fll" style="width: 30%">
|
|
696
|
-
${await ToggleSwitch.
|
|
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.
|
|
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.
|
|
745
|
-
${Translate.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
776
|
+
${await BtnIcon.instance({
|
|
777
777
|
class: `inl section-mp btn-custom btn-${idPanel}-submit`,
|
|
778
|
-
label: html`<span class="btn-${idPanel}-label-add"
|
|
779
|
-
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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) {
|