diff --git a/assets/fonts/DigitalNumbers-Regular.woff b/assets/fonts/DigitalNumbers-Regular.woff
new file mode 100644
index 00000000..7111cec8
Binary files /dev/null and b/assets/fonts/DigitalNumbers-Regular.woff differ
diff --git a/assets/fonts/DigitalNumbers-Regular.woff2 b/assets/fonts/DigitalNumbers-Regular.woff2
deleted file mode 100644
index 1a66c767..00000000
Binary files a/assets/fonts/DigitalNumbers-Regular.woff2 and /dev/null differ
diff --git a/assets/scss/_variables.scss b/assets/scss/_variables.scss
deleted file mode 100644
index 59d3da97..00000000
--- a/assets/scss/_variables.scss
+++ /dev/null
@@ -1,48 +0,0 @@
-$gray-800: #3a3f44 !default;
-$gray-900: #262a2c !default;
-
-$primary: $gray-800 !default;
-$secondary: $gray-900 !default;
-
-$accent: #ff9c36;
-$bg-primary: #212529;
-$bg-secondary: #1d2024;
-$link-color: #c4c4c4;
-$link-color-hover: #e7e7e7;
-$item-hover: rgba(31, 31, 31, 0.8);
-$border-color: black;
-$overlay-bg: rgba(61, 61, 61, 0.534);
-
-$success: #438d3c;
-$danger: #972929;
-$warning: #a78c14;
-$alert-color: #ffffff;
-
-$control-button-play: #43c32e;
-$control-button-play-hover: #339924;
-$control-button-stop: #d01111;
-$control-button-stop-hover: #a70e0e;
-$control-button-restart: #d1c410;
-$control-button-restart-hover: #b4a90e;
-$control-button-control: #06aad3;
-$control-button-control-hover: #068bac;
-
-$log-time: #666864;
-$log-number: #e2c317;
-$log-addr: #ad7fa8;
-$log-cmd: #6c95c2;
-$log-content: #ececec;
-$log-info: #8ae234;
-$log-warning: #ff8700;
-$log-error: #d32828;
-$log-debug: #6e99c7;
-$log-decoder: #56efff;
-$log-encoder: #45ccee;
-$log-server: #23cbdd;
-
-$theme-colors: (
- 'primary': $primary,
- 'secondary': $secondary,
-);
-
-$b-radius: 3px;
diff --git a/assets/scss/main.scss b/assets/scss/main.scss
index 8f2783d3..057abcc6 100644
--- a/assets/scss/main.scss
+++ b/assets/scss/main.scss
@@ -1,4 +1,3 @@
-@import '_variables.scss';
@import 'bootstrap-icons/font/bootstrap-icons.css';
#__nuxt,
@@ -10,101 +9,12 @@ main > div {
}
@font-face {
- font-family: 'DigitalNumbers-Regular';
- src: url('@/assets/fonts/DigitalNumbers-Regular.woff2') format('woff2');
+ font-family: 'DigitalNumbers';
+ src: url('@/assets/fonts/DigitalNumbers-Regular.woff') format('woff');
font-weight: normal;
font-style: normal;
}
-.media-alert {
- position: absolute;
- top: 80px;
- right: 12px;
- max-width: 400px;
- max-height: 60px;
- z-index: 11;
-}
-
-.bg-warning {
- background-color: $warning;
-}
-
-.date-div {
- width: 250px;
- height: 37px;
- float: right;
- margin-right: 12px;
-}
-
-.browser-item {
- background: none;
- border: none;
- margin: 0;
- padding: 0 0 0 .5em;
- min-height: 26px;
- min-height: 26px;
- overflow: hidden;
- white-space: nowrap;
- text-overflow: ellipsis;
-}
-
-.browser-div {
- background-color: $gray-900;
- border: 1px solid $border-color;
- border-radius: 3px;
-}
-
-.media-browser-scroll {
- height: calc(100% - 3px);
- overflow: auto;
- scrollbar-width: medium;
-}
-
-.browser-container .player-browser-scroll {
- position: relative;
- height: calc(100% - 50px);
- min-height: 400px;
-}
-
-.browser-icons {
- margin-right: 0.5em;
-}
-
-.browser-icons-col {
- max-width: 10px;
-}
-
-.browser-play-col {
- max-width: 30px;
- text-align: center;
- margin: 0;
- padding: 0;
-}
-
-.browser-dur-col {
- min-width: 95px;
- margin: 0;
- padding: 0 10px 0 0;
-}
-
-.browser-item-text {
- display: inline-block;
- max-width: 95%;
- overflow: hidden;
- white-space: nowrap;
- text-overflow: ellipsis;
-}
-
-.media-button {
- float: right;
- margin: 1em 0.8em 0 0;
-}
-
-.splitpanes__pane {
- background-color: rgba(34, 34, 34, 0.233);
- position: relative;
-}
-
.splitpanes--horizontal > .splitpanes__splitter {
position: relative;
border-top: 1px solid var(--my-gray);
@@ -144,27 +54,3 @@ main > div {
transition: background-color 0.3s;
margin-left: -1px;
}
-
-.list-row .grabbing {
- cursor: -webkit-grabbing;
- cursor: grabbing;
-}
-
-.loading-overlay {
- background-color: $overlay-bg;
- z-index: 11;
- position: absolute;
- width: calc(100% - 25px);
- height: calc(100% - 36px);
-
- .spinner-border {
- position: absolute;
- margin: auto;
- top: 0;
- bottom: 0;
- left: 0;
- right: 0;
- width: 3rem;
- height: 3rem;
- }
-}
diff --git a/components/Alert.vue b/components/Alert.vue
index 6e2c6762..8b5d1697 100644
--- a/components/Alert.vue
+++ b/components/Alert.vue
@@ -1,15 +1,94 @@
-
- {{ indexStore.alertMsg }}
-
-
+
+
+ {{ indexStore.alertMsg }}
+
+
+
+
+
+
+
diff --git a/components/ConfigGui.vue b/components/ConfigGui.vue
index 39690609..e169bb76 100644
--- a/components/ConfigGui.vue
+++ b/components/ConfigGui.vue
@@ -114,9 +114,9 @@ async function onSubmitGui() {
const update = await configStore.setGuiConfig(configStore.configGui[configStore.configID])
if (update.status) {
- indexStore.msgAlert('alert-success', 'Update GUI config success!', 2)
+ indexStore.msgAlert('success', 'Update GUI config success!', 2)
} else {
- indexStore.msgAlert('alert-error', 'Update GUI config failed!', 2)
+ indexStore.msgAlert('error', 'Update GUI config failed!', 2)
}
}
@@ -125,7 +125,7 @@ async function deleteChannel() {
const id = config[configStore.configID].id
if (id === 1) {
- indexStore.msgAlert('alert-warning', 'First channel can not be deleted!', 2)
+ indexStore.msgAlert('warning', 'First channel can not be deleted!', 2)
return
}
@@ -140,9 +140,9 @@ async function deleteChannel() {
await configStore.getPlayoutConfig()
if (response.status === 200) {
- indexStore.msgAlert('alert-success', 'Delete GUI config success!', 2)
+ indexStore.msgAlert('success', 'Delete GUI config success!', 2)
} else {
- indexStore.msgAlert('alert-error', 'Delete GUI config failed!', 2)
+ indexStore.msgAlert('error', 'Delete GUI config failed!', 2)
}
}
diff --git a/components/ConfigPlayout.vue b/components/ConfigPlayout.vue
index 179de8d7..4ddc2181 100644
--- a/components/ConfigPlayout.vue
+++ b/components/ConfigPlayout.vue
@@ -99,7 +99,7 @@ async function onSubmitPlayout() {
const update = await configStore.setPlayoutConfig(configStore.configPlayout)
if (update.status === 200) {
- indexStore.msgAlert('alert-success', 'Update playout config success!', 2)
+ indexStore.msgAlert('success', 'Update playout config success!', 2)
const channel = configStore.configGui[configStore.configID].id
@@ -113,7 +113,7 @@ async function onSubmitPlayout() {
}
})
} else {
- indexStore.msgAlert('alert-error', 'Update playout config failed!', 2)
+ indexStore.msgAlert('error', 'Update playout config failed!', 2)
}
}
diff --git a/components/ConfigUser.vue b/components/ConfigUser.vue
index aac813ed..2ee869f7 100644
--- a/components/ConfigUser.vue
+++ b/components/ConfigUser.vue
@@ -183,20 +183,20 @@ async function getUserConfig() {
async function deleteUser() {
if (configStore.configUser.username === configStore.currentUser) {
- indexStore.msgAlert('alert-error', 'Delete current user not possible!', 2)
+ indexStore.msgAlert('error', 'Delete current user not possible!', 2)
} else {
await fetch(`/api/user/${configStore.configUser.username}`, {
method: 'DELETE',
headers: authStore.authHeader,
})
.then(async () => {
- indexStore.msgAlert('alert-success', 'Delete user done!', 2)
+ indexStore.msgAlert('success', 'Delete user done!', 2)
await configStore.getUserConfig()
await getUsers()
})
.catch((e) => {
- indexStore.msgAlert('alert-error', `Delete user error: ${e}`, 2)
+ indexStore.msgAlert('error', `Delete user error: ${e}`, 2)
})
}
}
@@ -226,17 +226,17 @@ async function addUser(add: boolean) {
showUserModal.value = false
if (update.status === 200) {
- indexStore.msgAlert('alert-success', 'Add user success!', 2)
+ indexStore.msgAlert('success', 'Add user success!', 2)
await getUsers()
await getUserConfig()
} else {
- indexStore.msgAlert('alert-error', 'Add user failed!', 2)
+ indexStore.msgAlert('error', 'Add user failed!', 2)
}
clearUser()
} else {
- indexStore.msgAlert('alert-error', 'Password mismatch!', 2)
+ indexStore.msgAlert('error', 'Password mismatch!', 2)
}
} else {
showUserModal.value = false
@@ -253,9 +253,9 @@ async function onSubmitUser() {
const update = await configStore.setUserConfig(configStore.configUser)
if (update.status === 200) {
- indexStore.msgAlert('alert-success', 'Update user profile success!', 2)
+ indexStore.msgAlert('success', 'Update user profile success!', 2)
} else {
- indexStore.msgAlert('alert-error', 'Update user profile failed!', 2)
+ indexStore.msgAlert('error', 'Update user profile failed!', 2)
}
newPass.value = ''
diff --git a/components/Control.vue b/components/Control.vue
index 07a56001..8ac14407 100644
--- a/components/Control.vue
+++ b/components/Control.vue
@@ -2,7 +2,7 @@
-
+
{{ timeStr }}
@@ -41,14 +41,14 @@
{{ secToHMS(playlistStore.remainingSec >= 0 ? playlistStore.remainingSec : 0) }}
-
+
Live Ingest
@@ -78,7 +78,7 @@
-
+
@@ -116,7 +116,7 @@