cyberia 3.2.5 → 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/.github/workflows/engine-cyberia.cd.yml +2 -2
- package/.github/workflows/release.cd.yml +1 -2
- package/CHANGELOG.md +351 -1
- package/CLI-HELP.md +40 -13
- package/Dockerfile +0 -4
- package/README.md +242 -497
- package/bin/build.js +19 -5
- package/bin/cyberia.js +1149 -240
- package/bin/deploy.js +570 -1
- package/bin/file.js +6 -0
- package/bin/index.js +1149 -240
- package/bin/vs.js +1 -1
- package/conf.js +67 -89
- package/deployment.yaml +4 -222
- package/hardhat/package-lock.json +32 -32
- package/hardhat/package.json +3 -3
- package/jsconfig.json +1 -1
- package/manifests/cronjobs/dd-cron/dd-cron-backup.yaml +2 -2
- package/manifests/cronjobs/dd-cron/dd-cron-dns.yaml +2 -2
- package/manifests/deployment/dd-cyberia-development/deployment.yaml +4 -222
- package/manifests/deployment/dd-cyberia-development/proxy.yaml +10 -118
- package/manifests/deployment/dd-default-development/deployment.yaml +2 -6
- package/manifests/deployment/dd-test-development/deployment.yaml +136 -66
- package/manifests/deployment/dd-test-development/proxy.yaml +41 -5
- package/package.json +23 -14
- package/proxy.yaml +10 -118
- package/scripts/k3s-node-setup.sh +2 -2
- package/scripts/nat-iptables.sh +103 -18
- package/src/api/atlas-sprite-sheet/atlas-sprite-sheet.controller.js +18 -18
- package/src/api/atlas-sprite-sheet/atlas-sprite-sheet.model.js +7 -14
- package/src/api/atlas-sprite-sheet/atlas-sprite-sheet.service.js +76 -21
- 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 +13 -13
- package/src/api/cyberia-dialogue/cyberia-dialogue.model.js +11 -11
- package/src/api/cyberia-dialogue/cyberia-dialogue.router.js +2 -2
- package/src/api/cyberia-dialogue/cyberia-dialogue.service.js +16 -16
- package/src/api/cyberia-entity/cyberia-entity.controller.js +10 -10
- package/src/api/cyberia-entity/cyberia-entity.service.js +10 -10
- package/src/api/cyberia-instance/cyberia-fallback-world.js +19 -209
- package/src/api/cyberia-instance/cyberia-instance.controller.js +14 -14
- package/src/api/cyberia-instance/cyberia-instance.model.js +3 -0
- package/src/api/cyberia-instance/cyberia-instance.service.js +22 -57
- package/src/api/cyberia-instance/cyberia-portal-connector.js +20 -246
- package/src/api/cyberia-instance/cyberia-world-generator.js +505 -0
- package/src/api/cyberia-instance-conf/cyberia-instance-conf.controller.js +10 -10
- package/src/api/cyberia-instance-conf/cyberia-instance-conf.defaults.js +216 -55
- package/src/api/cyberia-instance-conf/cyberia-instance-conf.model.js +4 -1
- package/src/api/cyberia-instance-conf/cyberia-instance-conf.service.js +18 -14
- package/src/api/cyberia-map/cyberia-map.controller.js +10 -10
- package/src/api/cyberia-map/cyberia-map.service.js +10 -10
- 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.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 +12 -12
- package/src/api/ipfs/ipfs.model.js +4 -13
- package/src/api/ipfs/ipfs.service.js +14 -28
- 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.service.js +12 -12
- 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 +3 -20
- package/src/cli/cluster.js +61 -14
- package/src/cli/db.js +47 -2
- package/src/cli/deploy.js +67 -35
- package/src/cli/fs.js +79 -8
- package/src/cli/image.js +43 -1
- package/src/cli/index.js +26 -1
- package/src/cli/release.js +57 -1
- package/src/cli/repository.js +69 -31
- package/src/cli/run.js +415 -36
- package/src/cli/ssh.js +1 -1
- package/src/cli/static.js +43 -115
- package/src/client/Cryptokoyn.index.js +18 -21
- package/src/client/CyberiaPortal.index.js +19 -23
- package/src/client/Default.index.js +21 -33
- package/src/client/Itemledger.index.js +20 -26
- package/src/client/Underpost.index.js +19 -23
- 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 +1 -1
- 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 +42 -63
- 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 +69 -91
- 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 +25 -18
- 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 +41 -41
- package/src/client/components/core/LogOut.js +23 -14
- package/src/client/components/core/Modal.js +462 -178
- package/src/client/components/core/NotificationManager.js +14 -18
- package/src/client/components/core/Panel.js +54 -50
- package/src/client/components/core/PanelForm.js +25 -125
- 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 +31 -2
- package/src/client/components/core/SocketIoHandler.js +6 -6
- 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/Worker.js +163 -27
- package/src/client/components/core/windowGetDimensions.js +7 -7
- package/src/client/components/cryptokoyn/{MenuCryptokoyn.js → AppShellCryptokoyn.js} +57 -57
- package/src/client/components/cryptokoyn/CssCryptokoyn.js +15 -15
- package/src/client/components/cryptokoyn/LogInCryptokoyn.js +6 -4
- package/src/client/components/cryptokoyn/LogOutCryptokoyn.js +6 -4
- 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/cyberia/InstanceEngineCyberia.js +141 -60
- package/src/client/components/cyberia/MapEngineCyberia.js +691 -214
- package/src/client/components/cyberia/ObjectLayerEngine.js +19 -0
- package/src/client/components/cyberia/ObjectLayerEngineModal.js +1204 -94
- package/src/client/components/cyberia/ObjectLayerEngineViewer.js +196 -298
- package/src/client/components/cyberia-portal/{MenuCyberiaPortal.js → AppShellCyberiaPortal.js} +102 -102
- package/src/client/components/cyberia-portal/CommonCyberiaPortal.js +305 -61
- package/src/client/components/cyberia-portal/CssCyberiaPortal.js +15 -15
- package/src/client/components/cyberia-portal/LogInCyberiaPortal.js +6 -4
- package/src/client/components/cyberia-portal/LogOutCyberiaPortal.js +6 -4
- 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/TranslateCyberiaPortal.js +4 -4
- package/src/client/components/default/{MenuDefault.js → AppShellDefault.js} +87 -87
- package/src/client/components/default/CssDefault.js +12 -12
- package/src/client/components/default/LogInDefault.js +6 -4
- package/src/client/components/default/LogOutDefault.js +6 -4
- 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/TranslateDefault.js +3 -3
- package/src/client/components/itemledger/{MenuItemledger.js → AppShellItemledger.js} +57 -57
- package/src/client/components/itemledger/CssItemledger.js +15 -15
- package/src/client/components/itemledger/LogInItemledger.js +6 -4
- package/src/client/components/itemledger/LogOutItemledger.js +6 -4
- 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/TranslateItemledger.js +3 -3
- package/src/client/components/underpost/{MenuUnderpost.js → AppShellUnderpost.js} +88 -88
- 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 +6 -4
- package/src/client/components/underpost/LogOutUnderpost.js +6 -4
- 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/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 +17 -49
- 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 +10 -16
- package/src/client/services/cyberia-entity/cyberia-entity.management.js +5 -5
- package/src/client/services/cyberia-entity/cyberia-entity.service.js +10 -16
- package/src/client/services/cyberia-instance/cyberia-instance.management.js +6 -6
- package/src/client/services/cyberia-instance/cyberia-instance.service.js +12 -18
- package/src/client/services/cyberia-instance-conf/cyberia-instance-conf.service.js +10 -16
- package/src/client/services/cyberia-map/cyberia-map.management.js +6 -6
- package/src/client/services/cyberia-map/cyberia-map.service.js +12 -18
- 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 +5 -5
- package/src/client/services/instance/instance.service.js +10 -15
- package/src/client/services/ipfs/ipfs.service.js +12 -18
- package/src/client/services/object-layer/object-layer.management.js +12 -12
- package/src/client/services/object-layer/object-layer.service.js +20 -26
- 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 +5 -5
- 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/Test.js +2 -2
- package/src/client/sw/core.sw.js +212 -0
- package/src/grpc/cyberia/grpc-server.js +179 -67
- package/src/index.js +1 -1
- package/src/runtime/cyberia-client/Dockerfile +80 -0
- package/src/runtime/cyberia-server/Dockerfile +37 -0
- package/src/runtime/express/Dockerfile +4 -4
- package/src/runtime/lampp/Dockerfile +8 -7
- package/src/runtime/wp/Dockerfile +11 -17
- package/src/server/atlas-sprite-sheet-generator.js +4 -2
- package/src/server/client-build-docs.js +45 -46
- package/src/server/client-build.js +334 -60
- package/src/server/client-formatted.js +47 -16
- package/src/server/conf.js +5 -4
- package/src/server/data-query.js +32 -20
- package/src/server/dns.js +22 -0
- package/src/server/ipfs-client.js +232 -91
- package/src/server/object-layer.js +1 -6
- package/src/server/process.js +13 -27
- package/src/server/semantic-layer-generator-floor.js +11 -51
- package/src/server/semantic-layer-generator-resource.js +259 -0
- package/src/server/semantic-layer-generator-skin.js +41 -171
- package/src/server/semantic-layer-generator.js +122 -14
- package/src/server/shape-generator.js +108 -0
- package/src/server/start.js +17 -3
- package/src/server/valkey.js +141 -235
- 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 -68
- package/jsdoc.json +0 -68
- package/src/api/object-layer/README.md +0 -672
- package/src/client/components/core/ColorPalette.js +0 -5267
- package/src/client/components/core/JoyStick.js +0 -80
- package/src/client/components/cryptokoyn/RoutesCryptokoyn.js +0 -39
- package/src/client/components/cyberia-portal/RoutesCyberiaPortal.js +0 -62
- package/src/client/components/cyberia-portal/ServerCyberiaPortal.js +0 -136
- package/src/client/components/default/RoutesDefault.js +0 -49
- package/src/client/components/itemledger/RoutesItemledger.js +0 -40
- 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/grpc/cyberia/OFF_CHAIN_ECONOMY.md +0 -305
- package/src/grpc/cyberia/README.md +0 -326
|
@@ -2,13 +2,15 @@ import { Auth } from '../core/Auth.js';
|
|
|
2
2
|
import { LogIn } from '../core/LogIn.js';
|
|
3
3
|
import { AppStoreCryptokoyn } from './AppStoreCryptokoyn.js';
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
class LogInCryptokoyn {
|
|
6
|
+
static async instance() {
|
|
7
|
+
LogIn.onLogin(async (options) => {
|
|
7
8
|
const { token, user } = options;
|
|
8
9
|
AppStoreCryptokoyn.Data.user.main.model.user = user;
|
|
9
|
-
};
|
|
10
|
+
}, { key: 'LogInCryptokoyn' });
|
|
10
11
|
const { user } = await Auth.sessionIn();
|
|
11
12
|
AppStoreCryptokoyn.Data.user.main.model.user = user;
|
|
12
|
-
}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
13
15
|
|
|
14
16
|
export { LogInCryptokoyn };
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { LogOut } from '../core/LogOut.js';
|
|
2
2
|
import { AppStoreCryptokoyn } from './AppStoreCryptokoyn.js';
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
class LogOutCryptokoyn {
|
|
5
|
+
static async instance() {
|
|
6
|
+
LogOut.onLogout(async (result = { user: { _id: '' } }) => {
|
|
6
7
|
AppStoreCryptokoyn.Data.user.main.model.user = result.user;
|
|
7
|
-
};
|
|
8
|
-
}
|
|
8
|
+
}, { key: 'LogOutCryptokoyn' });
|
|
9
|
+
}
|
|
10
|
+
}
|
|
9
11
|
|
|
10
12
|
export { LogOutCryptokoyn };
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { loggerFactory } from '../core/Logger.js';
|
|
2
|
+
import { Modal } from '../core/Modal.js';
|
|
3
|
+
import { s } from '../core/VanillaJs.js';
|
|
4
|
+
|
|
5
|
+
const logger = loggerFactory(import.meta);
|
|
6
|
+
|
|
7
|
+
const BannerAppTemplate = html`Cryptokoyn`;
|
|
8
|
+
|
|
9
|
+
class RouterCryptokoyn {
|
|
10
|
+
static routes() {
|
|
11
|
+
return {
|
|
12
|
+
'/': {
|
|
13
|
+
title: 'Home',
|
|
14
|
+
render: () => Modal.onHomeRouterEvent(),
|
|
15
|
+
},
|
|
16
|
+
'/log-in': { title: 'log-in', render: () => s(`.main-btn-log-in`).click() },
|
|
17
|
+
'/sign-up': { title: 'sign-up', render: () => s(`.main-btn-sign-up`).click() },
|
|
18
|
+
'/log-out': {
|
|
19
|
+
title: 'log-out',
|
|
20
|
+
render: () => s(`.main-btn-log-out`).click(),
|
|
21
|
+
},
|
|
22
|
+
'/account': {
|
|
23
|
+
title: 'account',
|
|
24
|
+
render: () => s(`.main-btn-account`).click(),
|
|
25
|
+
},
|
|
26
|
+
'/wallet': { title: 'wallet', render: () => s(`.main-btn-wallet`).click() },
|
|
27
|
+
'/settings': { title: 'settings', render: () => s(`.main-btn-settings`).click() },
|
|
28
|
+
'/recover': { title: 'recover', render: () => s(`.main-btn-recover`).click() },
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
static instance() {
|
|
33
|
+
return { Routes: RouterCryptokoyn.routes };
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export { RouterCryptokoyn, BannerAppTemplate };
|
|
@@ -3,14 +3,14 @@ import { FullScreen } from '../core/FullScreen.js';
|
|
|
3
3
|
import { Translate } from '../core/Translate.js';
|
|
4
4
|
import { Worker } from '../core/Worker.js';
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
class SettingsCryptokoyn {
|
|
7
|
+
static async instance() {
|
|
8
8
|
let render = await FullScreen.RenderSetting();
|
|
9
9
|
render += await Css.RenderSetting();
|
|
10
10
|
render += await Translate.RenderSetting();
|
|
11
11
|
render += await Worker.RenderSetting();
|
|
12
12
|
return render;
|
|
13
|
-
}
|
|
14
|
-
}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
15
|
|
|
16
16
|
export { SettingsCryptokoyn };
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { SignUp } from '../core/SignUp.js';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
class SignUpCryptokoyn {
|
|
4
|
+
static instance() {
|
|
5
|
+
SignUp.onSignup(async (options) => {
|
|
5
6
|
const { user } = options;
|
|
6
|
-
};
|
|
7
|
-
}
|
|
7
|
+
}, { key: 'SignUpCryptokoyn' });
|
|
8
|
+
}
|
|
9
|
+
}
|
|
8
10
|
|
|
9
11
|
export { SignUpCryptokoyn };
|
|
@@ -11,12 +11,63 @@ import { CyberiaMapService } from '../../services/cyberia-map/cyberia-map.servic
|
|
|
11
11
|
import { FileService } from '../../services/file/file.service.js';
|
|
12
12
|
import { DefaultManagement } from '../../services/default/default.management.js';
|
|
13
13
|
import { getApiBaseUrl } from '../../services/core/core.service.js';
|
|
14
|
+
import { ObjectLayerService } from '../../services/object-layer/object-layer.service.js';
|
|
15
|
+
|
|
16
|
+
const dropdownValueKey = (value = '') => String(value).trim().replaceAll(' ', '-');
|
|
17
|
+
const createDropdownOption = (value, onClick = () => {}, display = value, data = value) => ({
|
|
18
|
+
value,
|
|
19
|
+
display,
|
|
20
|
+
data,
|
|
21
|
+
onClick,
|
|
22
|
+
});
|
|
14
23
|
|
|
15
24
|
class InstanceEngineCyberia {
|
|
16
25
|
static currentInstanceId = null;
|
|
17
26
|
static currentThumbnailId = null;
|
|
18
27
|
static thumbnailDirty = false;
|
|
19
28
|
static portals = [];
|
|
29
|
+
static itemIdsDropdownId = 'instance-engine-item-ids-dropdown';
|
|
30
|
+
|
|
31
|
+
static syncItemIdsDropdownSelection(itemIds = []) {
|
|
32
|
+
const dropdownId = InstanceEngineCyberia.itemIdsDropdownId;
|
|
33
|
+
if (!DropDown.Tokens[dropdownId]) return;
|
|
34
|
+
|
|
35
|
+
DropDown.Tokens[dropdownId].value = [];
|
|
36
|
+
if (s(`.${dropdownId}`)) s(`.${dropdownId}`).value = [];
|
|
37
|
+
DropDown.Tokens[dropdownId].oncheckvalues = {};
|
|
38
|
+
htmls(`.dropdown-current-${dropdownId}`, '');
|
|
39
|
+
htmls(`.${dropdownId}-render-container`, '');
|
|
40
|
+
|
|
41
|
+
for (const itemId of itemIds) {
|
|
42
|
+
const key = dropdownValueKey(itemId);
|
|
43
|
+
DropDown.Tokens[dropdownId].oncheckvalues[key] = {
|
|
44
|
+
data: itemId,
|
|
45
|
+
display: itemId,
|
|
46
|
+
value: itemId,
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
DropDown.Tokens[dropdownId].value = [...itemIds];
|
|
50
|
+
if (s(`.${dropdownId}`)) s(`.${dropdownId}`).value = [...itemIds];
|
|
51
|
+
DropDown.Tokens[dropdownId]._renderSelectedBadges?.();
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
static async buildItemIdsDropdown() {
|
|
55
|
+
return await DropDown.instance({
|
|
56
|
+
id: InstanceEngineCyberia.itemIdsDropdownId,
|
|
57
|
+
label: html`Object Layer Item IDs`,
|
|
58
|
+
data: [],
|
|
59
|
+
type: 'checkbox',
|
|
60
|
+
containerClass: 'inl',
|
|
61
|
+
excludeSelected: true,
|
|
62
|
+
serviceProvider: async (q) => {
|
|
63
|
+
const result = await ObjectLayerService.searchItemIds({ q });
|
|
64
|
+
if (result.status === 'success' && result.data?.itemIds) {
|
|
65
|
+
return result.data.itemIds.map((itemId) => createDropdownOption(itemId));
|
|
66
|
+
}
|
|
67
|
+
return [];
|
|
68
|
+
},
|
|
69
|
+
});
|
|
70
|
+
}
|
|
20
71
|
|
|
21
72
|
static renderPortalList(containerId) {
|
|
22
73
|
const container = s(`.${containerId}`);
|
|
@@ -40,7 +91,12 @@ class InstanceEngineCyberia {
|
|
|
40
91
|
(${portal.sourceCellX}, ${portal.sourceCellY})
|
|
41
92
|
<span style="margin:0 4px;">→</span>
|
|
42
93
|
<span style="color:${darkTheme ? '#fc8' : '#842'};">${portal.targetMapCode}</span>
|
|
43
|
-
|
|
94
|
+
${portal.targetCellX < 0 || portal.targetCellY < 0
|
|
95
|
+
? '<span style="color:#aaa;">(random)</span>'
|
|
96
|
+
: `(${portal.targetCellX}, ${portal.targetCellY})`}
|
|
97
|
+
<span style="color:${darkTheme ? '#9e9' : '#383'};margin-left:4px;font-size:11px;"
|
|
98
|
+
>[${portal.portalMode || 'inter-portal'}]</span
|
|
99
|
+
>
|
|
44
100
|
</div>
|
|
45
101
|
<div class="in fll" style="display:flex;gap:3px;">
|
|
46
102
|
<button
|
|
@@ -102,6 +158,7 @@ class InstanceEngineCyberia {
|
|
|
102
158
|
const idStatus = 'instance-engine-input-status';
|
|
103
159
|
const idThumbnail = 'instance-engine-input-thumbnail';
|
|
104
160
|
const idMapCodesDropdown = 'instance-engine-map-codes-dropdown';
|
|
161
|
+
const idItemIdsDropdown = InstanceEngineCyberia.itemIdsDropdownId;
|
|
105
162
|
const managementId = 'modal-cyberia-instance-engine';
|
|
106
163
|
const portalListId = 'instance-engine-portal-list';
|
|
107
164
|
const idSourceMapCode = 'instance-engine-source-map-code';
|
|
@@ -127,6 +184,7 @@ class InstanceEngineCyberia {
|
|
|
127
184
|
const cyberiaMapCodes = DropDown.Tokens[idMapCodesDropdown]?.value
|
|
128
185
|
? [...DropDown.Tokens[idMapCodesDropdown].value]
|
|
129
186
|
: [];
|
|
187
|
+
const itemIds = DropDown.Tokens[idItemIdsDropdown]?.value ? [...DropDown.Tokens[idItemIdsDropdown].value] : [];
|
|
130
188
|
const payload = {
|
|
131
189
|
code: s(`.${idCode}`)?.value || '',
|
|
132
190
|
name: s(`.${idName}`)?.value || '',
|
|
@@ -134,13 +192,14 @@ class InstanceEngineCyberia {
|
|
|
134
192
|
tags,
|
|
135
193
|
status: DropDown.Tokens[idStatus]?.value || 'unlisted',
|
|
136
194
|
cyberiaMapCodes,
|
|
195
|
+
itemIds,
|
|
137
196
|
portals: InstanceEngineCyberia.portals,
|
|
138
197
|
};
|
|
139
198
|
if (InstanceEngineCyberia.currentThumbnailId) payload.thumbnail = InstanceEngineCyberia.currentThumbnailId;
|
|
140
199
|
return payload;
|
|
141
200
|
};
|
|
142
201
|
|
|
143
|
-
const
|
|
202
|
+
const persistInstance = async ({ notify = true } = {}) => {
|
|
144
203
|
// Upload thumbnail file only if user selected a new one
|
|
145
204
|
const thumbnailInput = s(`.${idThumbnail}`);
|
|
146
205
|
if (
|
|
@@ -155,34 +214,44 @@ class InstanceEngineCyberia {
|
|
|
155
214
|
if (uploadResult.status === 'success' && uploadResult.data && uploadResult.data.length > 0) {
|
|
156
215
|
InstanceEngineCyberia.currentThumbnailId = uploadResult.data[0]._id;
|
|
157
216
|
} else {
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
217
|
+
if (notify) {
|
|
218
|
+
NotificationManager.Push({
|
|
219
|
+
html: uploadResult.message || 'Failed to upload thumbnail',
|
|
220
|
+
status: 'error',
|
|
221
|
+
});
|
|
222
|
+
}
|
|
223
|
+
return uploadResult;
|
|
163
224
|
}
|
|
164
225
|
}
|
|
165
226
|
|
|
166
227
|
const body = getInstancePayload();
|
|
228
|
+
const isUpdate = !!InstanceEngineCyberia.currentInstanceId;
|
|
167
229
|
let result;
|
|
168
|
-
if (
|
|
230
|
+
if (isUpdate) {
|
|
169
231
|
result = await CyberiaInstanceService.put({ id: InstanceEngineCyberia.currentInstanceId, body });
|
|
170
232
|
} else {
|
|
171
233
|
result = await CyberiaInstanceService.post({ body });
|
|
172
234
|
}
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
235
|
+
if (notify) {
|
|
236
|
+
NotificationManager.Push({
|
|
237
|
+
html:
|
|
238
|
+
result.status === 'error'
|
|
239
|
+
? result.message
|
|
240
|
+
: isUpdate
|
|
241
|
+
? Translate.instance('success-update-item')
|
|
242
|
+
: Translate.instance('success-create-item'),
|
|
243
|
+
status: result.status,
|
|
244
|
+
});
|
|
245
|
+
}
|
|
182
246
|
if (result.status === 'success') {
|
|
183
247
|
if (result.data?._id) InstanceEngineCyberia.currentInstanceId = result.data._id;
|
|
184
248
|
await DefaultManagement.loadTable(managementId, { force: true, reload: true });
|
|
185
249
|
}
|
|
250
|
+
return result;
|
|
251
|
+
};
|
|
252
|
+
|
|
253
|
+
const saveInstance = async () => {
|
|
254
|
+
await persistInstance({ notify: true });
|
|
186
255
|
};
|
|
187
256
|
|
|
188
257
|
const loadInstance = async (instanceData) => {
|
|
@@ -265,6 +334,8 @@ class InstanceEngineCyberia {
|
|
|
265
334
|
}
|
|
266
335
|
}
|
|
267
336
|
|
|
337
|
+
InstanceEngineCyberia.syncItemIdsDropdownSelection(instanceData.itemIds || instanceData.itemsId || []);
|
|
338
|
+
|
|
268
339
|
// Load portals
|
|
269
340
|
InstanceEngineCyberia.portals = (instanceData.portals || []).map((p) => ({
|
|
270
341
|
sourceMapCode: p.sourceMapCode || '',
|
|
@@ -273,6 +344,7 @@ class InstanceEngineCyberia {
|
|
|
273
344
|
targetMapCode: p.targetMapCode || '',
|
|
274
345
|
targetCellX: p.targetCellX || 0,
|
|
275
346
|
targetCellY: p.targetCellY || 0,
|
|
347
|
+
portalMode: p.portalMode || 'inter-portal',
|
|
276
348
|
}));
|
|
277
349
|
InstanceEngineCyberia.renderPortalList(portalListId);
|
|
278
350
|
};
|
|
@@ -303,6 +375,12 @@ class InstanceEngineCyberia {
|
|
|
303
375
|
htmls(`.dropdown-current-${idMapCodesDropdown}`, '');
|
|
304
376
|
htmls(`.${idMapCodesDropdown}-render-container`, '');
|
|
305
377
|
}
|
|
378
|
+
if (DropDown.Tokens[idItemIdsDropdown]) {
|
|
379
|
+
DropDown.Tokens[idItemIdsDropdown].oncheckvalues = {};
|
|
380
|
+
DropDown.Tokens[idItemIdsDropdown].value = [];
|
|
381
|
+
htmls(`.dropdown-current-${idItemIdsDropdown}`, '');
|
|
382
|
+
htmls(`.${idItemIdsDropdown}-render-container`, '');
|
|
383
|
+
}
|
|
306
384
|
InstanceEngineCyberia.portals = [];
|
|
307
385
|
InstanceEngineCyberia.renderPortalList(portalListId);
|
|
308
386
|
};
|
|
@@ -325,16 +403,17 @@ class InstanceEngineCyberia {
|
|
|
325
403
|
// Portal management
|
|
326
404
|
if (s(`.btn-instance-engine-portal-connect`))
|
|
327
405
|
s(`.btn-instance-engine-portal-connect`).onclick = async () => {
|
|
328
|
-
if (!InstanceEngineCyberia.currentInstanceId) {
|
|
329
|
-
NotificationManager.Push({
|
|
330
|
-
html: Translate.Render('save-instance-first') || 'Save the instance first.',
|
|
331
|
-
status: 'warning',
|
|
332
|
-
});
|
|
333
|
-
return;
|
|
334
|
-
}
|
|
335
406
|
const btn = s(`.btn-instance-engine-portal-connect`);
|
|
336
407
|
if (btn) btn.disabled = true;
|
|
337
408
|
try {
|
|
409
|
+
const persistResult = await persistInstance({ notify: false });
|
|
410
|
+
if (!persistResult || persistResult.status !== 'success' || !InstanceEngineCyberia.currentInstanceId) {
|
|
411
|
+
NotificationManager.Push({
|
|
412
|
+
html: persistResult?.message || Translate.instance('save-instance-first') || 'Save the instance first.',
|
|
413
|
+
status: persistResult?.status === 'error' ? 'error' : 'warning',
|
|
414
|
+
});
|
|
415
|
+
return;
|
|
416
|
+
}
|
|
338
417
|
const result = await CyberiaInstanceService.portalConnect({ id: InstanceEngineCyberia.currentInstanceId });
|
|
339
418
|
if (result.status === 'error') {
|
|
340
419
|
NotificationManager.Push({ html: result.message, status: 'error' });
|
|
@@ -348,21 +427,21 @@ class InstanceEngineCyberia {
|
|
|
348
427
|
});
|
|
349
428
|
return;
|
|
350
429
|
}
|
|
351
|
-
//
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
}
|
|
430
|
+
// Replace all portals with the centralized topology output
|
|
431
|
+
// (ring + random behavior for remaining unassigned portals)
|
|
432
|
+
InstanceEngineCyberia.portals = generated.map((p) => ({
|
|
433
|
+
sourceMapCode: p.sourceMapCode || '',
|
|
434
|
+
sourceCellX: p.sourceCellX || 0,
|
|
435
|
+
sourceCellY: p.sourceCellY || 0,
|
|
436
|
+
targetMapCode: p.targetMapCode || '',
|
|
437
|
+
targetCellX: p.targetCellX || 0,
|
|
438
|
+
targetCellY: p.targetCellY || 0,
|
|
439
|
+
portalMode: p.portalMode || 'inter-portal',
|
|
440
|
+
}));
|
|
362
441
|
InstanceEngineCyberia.renderPortalList(portalListId);
|
|
363
442
|
NotificationManager.Push({
|
|
364
|
-
html: `${topology}
|
|
365
|
-
status:
|
|
443
|
+
html: `${topology} — ${generated.length} portal(s) generated.`,
|
|
444
|
+
status: 'success',
|
|
366
445
|
});
|
|
367
446
|
} catch (e) {
|
|
368
447
|
NotificationManager.Push({ html: e.message, status: 'error' });
|
|
@@ -380,6 +459,7 @@ class InstanceEngineCyberia {
|
|
|
380
459
|
targetMapCode: s(`.${idTargetMapCode}`)?.value || '',
|
|
381
460
|
targetCellX: parseInt(s(`.${idTargetCellX}`)?.value) || 0,
|
|
382
461
|
targetCellY: parseInt(s(`.${idTargetCellY}`)?.value) || 0,
|
|
462
|
+
portalMode: 'inter-portal',
|
|
383
463
|
};
|
|
384
464
|
InstanceEngineCyberia.portals.push(portal);
|
|
385
465
|
InstanceEngineCyberia.renderPortalList(portalListId);
|
|
@@ -427,7 +507,7 @@ class InstanceEngineCyberia {
|
|
|
427
507
|
{ value: 'archived', display: 'archived', data: 'archived', onClick: () => {} },
|
|
428
508
|
];
|
|
429
509
|
|
|
430
|
-
const managementTableHtml = await CyberiaInstanceManagement.
|
|
510
|
+
const managementTableHtml = await CyberiaInstanceManagement.instance({
|
|
431
511
|
idModal: managementId,
|
|
432
512
|
loadInstanceCallback: loadInstance,
|
|
433
513
|
appStore,
|
|
@@ -452,7 +532,7 @@ class InstanceEngineCyberia {
|
|
|
452
532
|
${dynamicCol({ containerSelector: 'instance-engine-container', id: dcFields, type: 'search-inputs' })}
|
|
453
533
|
<div class="fl">
|
|
454
534
|
<div class="in fll ${dcFields}-col-a">
|
|
455
|
-
${await Input.
|
|
535
|
+
${await Input.instance({
|
|
456
536
|
id: idCode,
|
|
457
537
|
label: html`Code`,
|
|
458
538
|
containerClass: 'inl',
|
|
@@ -460,7 +540,7 @@ class InstanceEngineCyberia {
|
|
|
460
540
|
})}
|
|
461
541
|
</div>
|
|
462
542
|
<div class="in fll ${dcFields}-col-b">
|
|
463
|
-
${await Input.
|
|
543
|
+
${await Input.instance({
|
|
464
544
|
id: idName,
|
|
465
545
|
label: html`Name`,
|
|
466
546
|
containerClass: 'inl',
|
|
@@ -468,7 +548,7 @@ class InstanceEngineCyberia {
|
|
|
468
548
|
})}
|
|
469
549
|
</div>
|
|
470
550
|
<div class="in fll ${dcFields}-col-c">
|
|
471
|
-
${await Input.
|
|
551
|
+
${await Input.instance({
|
|
472
552
|
id: idDescription,
|
|
473
553
|
label: html`Description`,
|
|
474
554
|
containerClass: 'inl',
|
|
@@ -479,7 +559,7 @@ class InstanceEngineCyberia {
|
|
|
479
559
|
${dynamicCol({ containerSelector: 'instance-engine-container', id: dcMetaFields, type: 'search-inputs' })}
|
|
480
560
|
<div class="fl">
|
|
481
561
|
<div class="in fll ${dcMetaFields}-col-a">
|
|
482
|
-
${await Input.
|
|
562
|
+
${await Input.instance({
|
|
483
563
|
id: idTags,
|
|
484
564
|
label: html`Tags (comma separated)`,
|
|
485
565
|
containerClass: 'inl',
|
|
@@ -487,7 +567,7 @@ class InstanceEngineCyberia {
|
|
|
487
567
|
})}
|
|
488
568
|
</div>
|
|
489
569
|
<div class="in fll ${dcMetaFields}-col-b">
|
|
490
|
-
${await DropDown.
|
|
570
|
+
${await DropDown.instance({
|
|
491
571
|
id: idStatus,
|
|
492
572
|
label: html`Status`,
|
|
493
573
|
data: statusOptions.map((opt) => ({ ...opt })),
|
|
@@ -506,12 +586,12 @@ class InstanceEngineCyberia {
|
|
|
506
586
|
</div>
|
|
507
587
|
<div class="in section-mp" style="margin-top: 5px;">
|
|
508
588
|
<div class="in instance-engine-thumbnail-preview" style="margin-bottom: 5px;"></div>
|
|
509
|
-
${await BtnIcon.
|
|
589
|
+
${await BtnIcon.instance({
|
|
510
590
|
class: 'wfa btn-instance-engine-toggle-thumbnail',
|
|
511
591
|
label: html`<i class="fa-solid fa-caret-right instance-engine-thumbnail-caret"></i> Thumbnail`,
|
|
512
592
|
})}
|
|
513
593
|
<div class="in instance-engine-thumbnail-body hide">
|
|
514
|
-
${await InputFile.
|
|
594
|
+
${await InputFile.instance(
|
|
515
595
|
{
|
|
516
596
|
id: idThumbnail,
|
|
517
597
|
multiple: false,
|
|
@@ -543,7 +623,7 @@ class InstanceEngineCyberia {
|
|
|
543
623
|
</div>
|
|
544
624
|
</div>
|
|
545
625
|
<div class="in section-mp" style="margin-top: 10px;">
|
|
546
|
-
${await DropDown.
|
|
626
|
+
${await DropDown.instance({
|
|
547
627
|
id: idMapCodesDropdown,
|
|
548
628
|
label: html`Cyberia Map Codes`,
|
|
549
629
|
data: [],
|
|
@@ -564,12 +644,13 @@ class InstanceEngineCyberia {
|
|
|
564
644
|
},
|
|
565
645
|
})}
|
|
566
646
|
</div>
|
|
647
|
+
<div class="in section-mp" style="margin-top: 10px;">${await InstanceEngineCyberia.buildItemIdsDropdown()}</div>
|
|
567
648
|
<div class="in section-mp" style="margin-top: 10px;">
|
|
568
649
|
<div class="in input-label" style="font-size:14px;margin-bottom:5px;">Portals</div>
|
|
569
650
|
${dynamicCol({ containerSelector: 'instance-engine-container', id: dcPortalSource, type: 'search-inputs' })}
|
|
570
651
|
<div class="fl">
|
|
571
652
|
<div class="in fll ${dcPortalSource}-col-a">
|
|
572
|
-
${await Input.
|
|
653
|
+
${await Input.instance({
|
|
573
654
|
id: idSourceMapCode,
|
|
574
655
|
label: html`Source Map Code`,
|
|
575
656
|
containerClass: 'inl',
|
|
@@ -577,7 +658,7 @@ class InstanceEngineCyberia {
|
|
|
577
658
|
})}
|
|
578
659
|
</div>
|
|
579
660
|
<div class="in fll ${dcPortalSource}-col-b">
|
|
580
|
-
${await Input.
|
|
661
|
+
${await Input.instance({
|
|
581
662
|
id: idSourceCellX,
|
|
582
663
|
label: html`Source Cell X`,
|
|
583
664
|
containerClass: 'inl',
|
|
@@ -587,7 +668,7 @@ class InstanceEngineCyberia {
|
|
|
587
668
|
})}
|
|
588
669
|
</div>
|
|
589
670
|
<div class="in fll ${dcPortalSource}-col-c">
|
|
590
|
-
${await Input.
|
|
671
|
+
${await Input.instance({
|
|
591
672
|
id: idSourceCellY,
|
|
592
673
|
label: html`Source Cell Y`,
|
|
593
674
|
containerClass: 'inl',
|
|
@@ -600,7 +681,7 @@ class InstanceEngineCyberia {
|
|
|
600
681
|
${dynamicCol({ containerSelector: 'instance-engine-container', id: dcPortalTarget, type: 'search-inputs' })}
|
|
601
682
|
<div class="fl">
|
|
602
683
|
<div class="in fll ${dcPortalTarget}-col-a">
|
|
603
|
-
${await Input.
|
|
684
|
+
${await Input.instance({
|
|
604
685
|
id: idTargetMapCode,
|
|
605
686
|
label: html`Target Map Code`,
|
|
606
687
|
containerClass: 'inl',
|
|
@@ -608,7 +689,7 @@ class InstanceEngineCyberia {
|
|
|
608
689
|
})}
|
|
609
690
|
</div>
|
|
610
691
|
<div class="in fll ${dcPortalTarget}-col-b">
|
|
611
|
-
${await Input.
|
|
692
|
+
${await Input.instance({
|
|
612
693
|
id: idTargetCellX,
|
|
613
694
|
label: html`Target Cell X`,
|
|
614
695
|
containerClass: 'inl',
|
|
@@ -618,7 +699,7 @@ class InstanceEngineCyberia {
|
|
|
618
699
|
})}
|
|
619
700
|
</div>
|
|
620
701
|
<div class="in fll ${dcPortalTarget}-col-c">
|
|
621
|
-
${await Input.
|
|
702
|
+
${await Input.instance({
|
|
622
703
|
id: idTargetCellY,
|
|
623
704
|
label: html`Target Cell Y`,
|
|
624
705
|
containerClass: 'inl',
|
|
@@ -629,17 +710,17 @@ class InstanceEngineCyberia {
|
|
|
629
710
|
</div>
|
|
630
711
|
</div>
|
|
631
712
|
<div class="in" style="display:flex;gap:5px;flex-wrap:wrap;">
|
|
632
|
-
${await BtnIcon.
|
|
713
|
+
${await BtnIcon.instance({
|
|
633
714
|
class: 'wfa btn-instance-engine-add-portal',
|
|
634
715
|
label: html`<i class="fa-solid fa-plus"></i> Add Portal`,
|
|
635
716
|
})}
|
|
636
|
-
${await BtnIcon.
|
|
717
|
+
${await BtnIcon.instance({
|
|
637
718
|
class: 'wfa btn-instance-engine-portal-connect',
|
|
638
719
|
label: html`<i class="fa-solid fa-circle-nodes"></i> Portal Connector`,
|
|
639
720
|
})}
|
|
640
721
|
</div>
|
|
641
722
|
<div class="in" style="margin-top: 10px;">
|
|
642
|
-
${await BtnIcon.
|
|
723
|
+
${await BtnIcon.instance({
|
|
643
724
|
class: 'wfa btn-instance-engine-toggle-portal-filter',
|
|
644
725
|
label: html`<i class="fa-solid fa-caret-right instance-engine-portal-filter-caret"></i> Filters`,
|
|
645
726
|
})}
|
|
@@ -647,7 +728,7 @@ class InstanceEngineCyberia {
|
|
|
647
728
|
${dynamicCol({ containerSelector: 'instance-engine-container', id: dcPortalFilter, type: 'a-50-b-50' })}
|
|
648
729
|
<div class="fl">
|
|
649
730
|
<div class="in fll ${dcPortalFilter}-col-a">
|
|
650
|
-
${await Input.
|
|
731
|
+
${await Input.instance({
|
|
651
732
|
id: idFilterSource,
|
|
652
733
|
label: html`Source Map Code`,
|
|
653
734
|
containerClass: 'inl',
|
|
@@ -656,7 +737,7 @@ class InstanceEngineCyberia {
|
|
|
656
737
|
})}
|
|
657
738
|
</div>
|
|
658
739
|
<div class="in fll ${dcPortalFilter}-col-b">
|
|
659
|
-
${await Input.
|
|
740
|
+
${await Input.instance({
|
|
660
741
|
id: idFilterTarget,
|
|
661
742
|
label: html`Target Map Code`,
|
|
662
743
|
containerClass: 'inl',
|
|
@@ -666,7 +747,7 @@ class InstanceEngineCyberia {
|
|
|
666
747
|
</div>
|
|
667
748
|
</div>
|
|
668
749
|
<div class="in" style="margin-top:5px;">
|
|
669
|
-
${await BtnIcon.
|
|
750
|
+
${await BtnIcon.instance({
|
|
670
751
|
class: 'wfa btn-instance-engine-clear-portal-filter',
|
|
671
752
|
label: html`<i class="fa-solid fa-broom"></i> Clear Filters`,
|
|
672
753
|
})}
|
|
@@ -679,13 +760,13 @@ class InstanceEngineCyberia {
|
|
|
679
760
|
${dynamicCol({ containerSelector: 'instance-engine-container', id: dcSaveNew, type: 'a-50-b-50' })}
|
|
680
761
|
<div class="fl">
|
|
681
762
|
<div class="in fll ${dcSaveNew}-col-a" style="padding: 5px;">
|
|
682
|
-
${await BtnIcon.
|
|
763
|
+
${await BtnIcon.instance({
|
|
683
764
|
class: 'wfa btn-instance-engine-save',
|
|
684
765
|
label: html`<i class="fa-solid fa-floppy-disk"></i> Save Instance`,
|
|
685
766
|
})}
|
|
686
767
|
</div>
|
|
687
768
|
<div class="in fll ${dcSaveNew}-col-b" style="padding: 5px;">
|
|
688
|
-
${await BtnIcon.
|
|
769
|
+
${await BtnIcon.instance({
|
|
689
770
|
class: 'wfa btn-instance-engine-new',
|
|
690
771
|
label: html`<i class="fa-solid fa-file"></i> New Instance`,
|
|
691
772
|
})}
|