From 7a684be96b93d13f7a1bb404d2ef316bc8ee92a1 Mon Sep 17 00:00:00 2001 From: MohamedElmdary Date: Thu, 26 Oct 2023 14:28:26 +0300 Subject: [PATCH] Add intro.js and it's initial configs --- packages/playground/package.json | 3 +- .../src/assets/styles/introjs-vuetify.scss | 89 +++++++++++++++++++ .../playground/src/components/networks.vue | 7 +- .../playground/src/components/select_node.vue | 3 +- .../src/components/select_solution_flavor.vue | 1 + .../src/components/select_vm_image.vue | 1 + packages/playground/src/main.ts | 3 + packages/playground/src/weblets/full_vm.vue | 64 +++++++++++-- yarn.lock | 5 ++ 9 files changed, 167 insertions(+), 9 deletions(-) create mode 100644 packages/playground/src/assets/styles/introjs-vuetify.scss diff --git a/packages/playground/package.json b/packages/playground/package.json index 98647628ec..8584da2b36 100644 --- a/packages/playground/package.json +++ b/packages/playground/package.json @@ -30,7 +30,8 @@ "vue": "^3.2.47", "vue-router": "^4.1.6", "vuetify": "^3.1.15", - "web-ssh-keygen": "^0.1.2" + "web-ssh-keygen": "^0.1.2", + "intro.js": "^7.2.0" }, "devDependencies": { "@types/jsdom": "^21.1.0", diff --git a/packages/playground/src/assets/styles/introjs-vuetify.scss b/packages/playground/src/assets/styles/introjs-vuetify.scss new file mode 100644 index 0000000000..9fa060db8b --- /dev/null +++ b/packages/playground/src/assets/styles/introjs-vuetify.scss @@ -0,0 +1,89 @@ +.introjs-tooltip { + background-color: rgb(var(--v-theme-on-surface-variant)); + color: rgb(var(--v-theme-on-surface)); +} + +.introjs-button, +.introjs-button:hover, +.introjs-button:focus, +.introjs-button:active, +.introjs-disabled, +.introjs-disabled:focus, +.introjs-disabled:hover { + outline: none; + background-image: none; + background-color: transparent; + color: rgb(var(--v-theme-on-surface)); + border: 1px solid transparent; + border-radius: 50px; + box-shadow: none; + outline: none; + text-shadow: none; +} + +.introjs-button:hover, +.introjs-button:focus, +.introjs-button:active { + border: 1px solid rgb(var(--v-theme-on-surface)); +} + +.introjs-button { + color: rgb(var(--v-theme-primary)) !important; +} + +.introjs-disabled, +.introjs-disabled:focus, +.introjs-disabled:hover { + color: rgb(var(--v-theme-on-surface)) !important; + opacity: var(--v-medium-emphasis-opacity); + border: 1px solid transparent; +} + +.introjs-arrow { + border: 10px solid rgb(var(--v-theme-on-surface)); +} +.introjs-arrow.top, +.introjs-arrow.top-middle, +.introjs-arrow.top-right { + border-color: transparent transparent rgb(var(--v-theme-on-surface-variant)); + top: -20px; + left: 20px; +} + +.introjs-arrow.bottom, +.introjs-arrow.bottom-middle, +.introjs-arrow.bottom-right { + border-color: rgb(var(--v-theme-on-surface-variant)) transparent transparent; + bottom: -20px; + left: 20px; +} + +.introjs-arrow.left, +.introjs-arrow.right { + top: 20px; +} + +.introjs-arrow.left-bottom, +.introjs-arrow.right-bottom { + bottom: 20px; +} + +.introjs-arrow.left, +.introjs-arrow.left-bottom { + left: -20px; + border-color: transparent rgb(var(--v-theme-on-surface-variant)) transparent transparent; +} + +.introjs-arrow.right, +.introjs-arrow.right-bottom { + right: -20px; + border-color: transparent transparent transparent rgb(var(--v-theme-on-surface-variant)); +} + +.introjs-skipbutton { + color: rgb(var(--v-theme-error)) !important; +} + +.introjs-tooltipbuttons { + border-color: rgba(var(--v-theme-on-surface), var(--v-border-opacity)) !important; +} diff --git a/packages/playground/src/components/networks.vue b/packages/playground/src/components/networks.vue index 03a0d758c9..66d831bcfb 100644 --- a/packages/playground/src/components/networks.vue +++ b/packages/playground/src/components/networks.vue @@ -1,7 +1,12 @@