cleanup some forms; break out major config styles into their own files
This commit is contained in:
25
web/styles/config-socialhandles.scss
Normal file
25
web/styles/config-socialhandles.scss
Normal file
@@ -0,0 +1,25 @@
|
||||
// styles for social handles editing section
|
||||
|
||||
.social-option,
|
||||
.social-dropdown {
|
||||
.ant-select-item-option-content,
|
||||
.ant-select-selection-item {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: flex-start;
|
||||
align-items: center;
|
||||
padding: .25em;
|
||||
line-height: normal;
|
||||
|
||||
.option-icon {
|
||||
height: 1.5em;
|
||||
width: 1.5em;
|
||||
line-height: normal;
|
||||
}
|
||||
.option-label {
|
||||
display: inline-block;
|
||||
margin-left: 1em;
|
||||
line-height: normal;
|
||||
}
|
||||
}
|
||||
}
|
||||
49
web/styles/config-storage.scss
Normal file
49
web/styles/config-storage.scss
Normal file
@@ -0,0 +1,49 @@
|
||||
// styles for Storage config section
|
||||
|
||||
|
||||
.edit-storage-container {
|
||||
.form-fields {
|
||||
display: none;
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
&.enabled {
|
||||
.form-fields {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
|
||||
.button-container {
|
||||
margin: 1em 0;
|
||||
}
|
||||
.advanced-section {
|
||||
margin: 1em 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Do something special for the stream key field
|
||||
.field-streamkey-container {
|
||||
margin-bottom: 1.5em;
|
||||
.field-tip {
|
||||
color: var(--ant-warning);
|
||||
}
|
||||
.left-side {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: flex-start;
|
||||
}
|
||||
|
||||
.textfield-with-submit-container {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
.streamkey-actions {
|
||||
white-space: nowrap;
|
||||
button {
|
||||
margin: .25em;
|
||||
}
|
||||
@media (max-width: 800px) {
|
||||
margin-top: 2em;
|
||||
}
|
||||
}
|
||||
}
|
||||
37
web/styles/config-tags.scss
Normal file
37
web/styles/config-tags.scss
Normal file
@@ -0,0 +1,37 @@
|
||||
// config tags block
|
||||
|
||||
.tag-current-tags {
|
||||
.ant-tag {
|
||||
margin: .1rem;
|
||||
font-size: .85rem;
|
||||
border-radius: 10em;
|
||||
padding: .25em 1em;
|
||||
background-color: rgba(255,255,255,.5);
|
||||
|
||||
.ant-tag-close-icon {
|
||||
transform: translateY(-1px);
|
||||
margin-left: .3rem;
|
||||
padding: 2px;
|
||||
border-radius: 5rem;
|
||||
border: 1px solid #eee;
|
||||
&:hover {
|
||||
border-color: #e03;
|
||||
svg {
|
||||
fill: black;
|
||||
transition: fill .3s;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.add-new-tag-section {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: flex-start;
|
||||
align-items: center;
|
||||
|
||||
.new-tag-input {
|
||||
width: 16em;
|
||||
}
|
||||
}
|
||||
85
web/styles/config-video-variants.scss
Normal file
85
web/styles/config-video-variants.scss
Normal file
@@ -0,0 +1,85 @@
|
||||
// styles for Video variant editor (table + modal)
|
||||
|
||||
|
||||
.config-variant-form {
|
||||
.blurb {
|
||||
margin: 1em;
|
||||
opacity: .75;
|
||||
}
|
||||
.note {
|
||||
display: inline-block;
|
||||
margin-left: 1em;
|
||||
font-size: .75em;
|
||||
opacity: .5;
|
||||
font-style: italic;
|
||||
}
|
||||
.section-intro {
|
||||
margin-bottom: 2em;
|
||||
}
|
||||
.field {
|
||||
margin-bottom: 2em;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: center;
|
||||
align-items: flex-start;
|
||||
transform: opacity .15s;
|
||||
&.disabled {
|
||||
opacity: .25;
|
||||
}
|
||||
|
||||
.label {
|
||||
width: 40%;
|
||||
text-align: right;
|
||||
padding-right: 2em;
|
||||
font-weight: bold;
|
||||
color: var(--owncast-purple);
|
||||
}
|
||||
.info-tip {
|
||||
margin-right: 1em;
|
||||
}
|
||||
.form-component {
|
||||
width: 60%;
|
||||
|
||||
.selected-value-note {
|
||||
font-size: .85em;
|
||||
display: inline-block;
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
}
|
||||
.ant-collapse {
|
||||
border: none;
|
||||
border-radius: 6px;
|
||||
}
|
||||
.ant-collapse > .ant-collapse-item:last-child,
|
||||
.ant-collapse > .ant-collapse-item:last-child > .ant-collapse-header {
|
||||
border: none;
|
||||
background-color: rgba(0,0,0,.25);
|
||||
border-radius: 6px;
|
||||
}
|
||||
.ant-collapse-content {
|
||||
background-color: rgba(0,0,0,.1);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
.config-video-segements-conatiner {
|
||||
|
||||
.status-message {
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.variants-table {
|
||||
.actions {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
.delete-button {
|
||||
margin-left: .5em;
|
||||
opacity: .8;
|
||||
}
|
||||
}
|
||||
@@ -1,164 +1,7 @@
|
||||
// .config-public-details-container {
|
||||
// display: flex;
|
||||
// flex-direction: row;
|
||||
// align-items: flex-start;
|
||||
// flex-wrap: wrap;
|
||||
|
||||
// .text-fields {
|
||||
// margin-right: 2rem;
|
||||
// }
|
||||
// .misc-fields {
|
||||
// width: 25em;
|
||||
// }
|
||||
// .tag-editor-container,
|
||||
// .config-directory-details-form {
|
||||
// border-radius: 1em;
|
||||
// background-color: rgba(128,99,255,.1);
|
||||
// padding: 1.5em;
|
||||
// margin-bottom: 1em;
|
||||
// }
|
||||
// }
|
||||
|
||||
.module-container {
|
||||
border-radius: 1em;
|
||||
background-color: rgba(128,99,255,.1);
|
||||
padding: 1.5em;
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
// form-textfield
|
||||
// form-textfield
|
||||
// .textfield-container {
|
||||
// display: flex;
|
||||
// flex-direction: column;
|
||||
// align-items: flex-start;
|
||||
// justify-content: flex-end;
|
||||
// position: relative;
|
||||
// width: 314px;
|
||||
|
||||
// // &.type-numeric {
|
||||
// // .ant-form-item-control {
|
||||
// // flex-direction: row;
|
||||
// // .ant-form-item-control-input {
|
||||
// // margin-right: .75rem;
|
||||
// // }
|
||||
// // }
|
||||
// // }
|
||||
// }
|
||||
// .textfield {
|
||||
// display: flex;
|
||||
// flex-direction: row;
|
||||
// align-items: flex-start;
|
||||
|
||||
// .field {
|
||||
// width: 18rem;
|
||||
|
||||
// &.ant-input-number {
|
||||
// width: 8em;
|
||||
// }
|
||||
|
||||
// }
|
||||
// .info-tip {
|
||||
// margin-right: .75rem;
|
||||
// }
|
||||
// .ant-form-item {
|
||||
// margin-bottom: 16px;
|
||||
// &.ant-form-item-with-help {
|
||||
// margin-bottom: 16px;
|
||||
// }
|
||||
// }
|
||||
// .ant-form-item-label label {
|
||||
// font-weight: bold;
|
||||
// color: var(--owncast-purple);
|
||||
// }
|
||||
// .ant-form-item-explain {
|
||||
// width: 70%;
|
||||
// }
|
||||
// }
|
||||
// .submit-button {
|
||||
// position: absolute;
|
||||
// right: 0;
|
||||
// bottom: .5em;
|
||||
// }
|
||||
// .ant-form-horizontal {
|
||||
// .textfield-container.type-numeric {
|
||||
// width: auto;
|
||||
|
||||
// .submit-button {
|
||||
// bottom: unset;
|
||||
// top: 0;
|
||||
// right: unset;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
|
||||
// form-toggleswitch
|
||||
// form-toggleswitch
|
||||
// .toggleswitch-container {
|
||||
// .status-message {
|
||||
// margin-top: .25rem;
|
||||
// }
|
||||
// }
|
||||
// .toggleswitch {
|
||||
// display: flex;
|
||||
// flex-direction: row;
|
||||
// align-items: center;
|
||||
// justify-content: flex-start;
|
||||
// .label {
|
||||
// font-weight: bold;
|
||||
// color: var(--owncast-purple);
|
||||
// }
|
||||
// .info-tip {
|
||||
// margin-left: .5rem;
|
||||
// svg {
|
||||
// fill: white;
|
||||
// }
|
||||
// }
|
||||
// .ant-form-item {
|
||||
// margin: 0 .75rem 0 0;
|
||||
// }
|
||||
// }
|
||||
|
||||
// TAGS STUFF
|
||||
// TAGS STUFF
|
||||
.tag-current-tags {
|
||||
.ant-tag {
|
||||
margin: .1rem;
|
||||
font-size: .85rem;
|
||||
border-radius: 10em;
|
||||
padding: .25em 1em;
|
||||
background-color: rgba(255,255,255,.5);
|
||||
|
||||
.ant-tag-close-icon {
|
||||
transform: translateY(-1px);
|
||||
margin-left: .3rem;
|
||||
padding: 2px;
|
||||
border-radius: 5rem;
|
||||
border: 1px solid #eee;
|
||||
&:hover {
|
||||
border-color: #e03;
|
||||
svg {
|
||||
fill: black;
|
||||
transition: fill .3s;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
.add-new-tag-section {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: flex-start;
|
||||
align-items: center;
|
||||
|
||||
.new-tag-input {
|
||||
width: 16em;
|
||||
}
|
||||
}
|
||||
|
||||
.config-page-content-form {
|
||||
.page-content-actions {
|
||||
@@ -174,101 +17,9 @@
|
||||
}
|
||||
}
|
||||
|
||||
.config-video-variants {
|
||||
.config-video-misc {
|
||||
margin: 2rem 0;
|
||||
// .ant-form {
|
||||
// display: flex;
|
||||
// flex-direction: row;
|
||||
// align-items: flex-start;
|
||||
// }
|
||||
}
|
||||
|
||||
}
|
||||
.variant-form {
|
||||
.blurb {
|
||||
margin: 1em;
|
||||
opacity: .75;
|
||||
}
|
||||
.note {
|
||||
display: inline-block;
|
||||
margin-left: 1em;
|
||||
font-size: .75em;
|
||||
opacity: .5;
|
||||
font-style: italic;
|
||||
}
|
||||
.section-intro {
|
||||
margin-bottom: 2em;
|
||||
}
|
||||
.field {
|
||||
margin-bottom: 2em;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: center;
|
||||
align-items: flex-start;
|
||||
transform: opacity .15s;
|
||||
&.disabled {
|
||||
opacity: .25;
|
||||
}
|
||||
|
||||
.label {
|
||||
width: 40%;
|
||||
text-align: right;
|
||||
padding-right: 2em;
|
||||
font-weight: bold;
|
||||
color: var(--owncast-purple);
|
||||
}
|
||||
.info-tip {
|
||||
margin-right: 1em;
|
||||
}
|
||||
.form-component {
|
||||
width: 60%;
|
||||
|
||||
.selected-value-note {
|
||||
font-size: .85em;
|
||||
display: inline-block;
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
}
|
||||
.ant-collapse {
|
||||
border: none;
|
||||
border-radius: 6px;
|
||||
}
|
||||
.ant-collapse > .ant-collapse-item:last-child,
|
||||
.ant-collapse > .ant-collapse-item:last-child > .ant-collapse-header {
|
||||
border: none;
|
||||
background-color: rgba(0,0,0,.25);
|
||||
border-radius: 6px;
|
||||
}
|
||||
.ant-collapse-content {
|
||||
background-color: rgba(0,0,0,.1);
|
||||
}
|
||||
}
|
||||
|
||||
.config-video-segements-conatiner {
|
||||
.segment-slider {
|
||||
width: 90%;
|
||||
margin: auto;
|
||||
padding: 1em 2em .75em;
|
||||
background-color: black;
|
||||
border-radius: 1em;
|
||||
}
|
||||
.status-message {
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
.variants-table {
|
||||
.actions {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
.delete-button {
|
||||
margin-left: .5em;
|
||||
opacity: .8;
|
||||
}
|
||||
}
|
||||
.segment-tip {
|
||||
width: 10em;
|
||||
text-align: center;
|
||||
@@ -276,33 +27,6 @@
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.social-option,
|
||||
.social-dropdown {
|
||||
// .ant-select-selector,
|
||||
// .ant-select-selection-search-input {
|
||||
// height: 40px !important;
|
||||
// }
|
||||
.ant-select-item-option-content,
|
||||
.ant-select-selection-item {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: flex-start;
|
||||
align-items: center;
|
||||
padding: .25em;
|
||||
line-height: normal;
|
||||
|
||||
.option-icon {
|
||||
height: 1.5em;
|
||||
width: 1.5em;
|
||||
line-height: normal;
|
||||
}
|
||||
.option-label {
|
||||
display: inline-block;
|
||||
margin-left: 1em;
|
||||
line-height: normal;
|
||||
}
|
||||
}
|
||||
}
|
||||
// .social-option {
|
||||
// .ant-select-item-option-content {
|
||||
// display: flex;
|
||||
@@ -324,57 +48,3 @@
|
||||
|
||||
|
||||
|
||||
|
||||
// EDIT STORAGE
|
||||
.edit-storage-container {
|
||||
.form-fields {
|
||||
display: none;
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
&.enabled {
|
||||
.form-fields {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
|
||||
.button-container {
|
||||
margin: 1em 0;
|
||||
}
|
||||
.advanced-section {
|
||||
margin: 1em 0;
|
||||
}
|
||||
}
|
||||
|
||||
.field-container {
|
||||
padding: .85em 0 .5em;
|
||||
&:nth-child(even) {
|
||||
background-color: rgba(0,0,0,.25);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
.field-streamkey-container {
|
||||
margin-bottom: 1.5em;
|
||||
.field-tip {
|
||||
color: var(--ant-warning);
|
||||
}
|
||||
.left-side {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: flex-start;
|
||||
}
|
||||
.textfield-with-submit-container {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
.streamkey-actions {
|
||||
white-space: nowrap;
|
||||
button {
|
||||
margin: .25em;
|
||||
}
|
||||
@media (max-width: 800px) {
|
||||
margin-top: 2em;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
64
web/styles/form-misc-elements.scss
Normal file
64
web/styles/form-misc-elements.scss
Normal file
@@ -0,0 +1,64 @@
|
||||
/* Base styles for misc helper components around forms */
|
||||
|
||||
/* STATUS-CONTAINER BASE */
|
||||
.status-container {
|
||||
&.status-success {
|
||||
color: var(--ant-success);
|
||||
}
|
||||
&.status-error {
|
||||
color: var(--ant-error);
|
||||
}
|
||||
&.status-warning {
|
||||
color: var(--ant-warning);
|
||||
}
|
||||
|
||||
&.empty {
|
||||
display: none;
|
||||
}
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: flex-start;
|
||||
align-items: center;
|
||||
font-size: .75rem;
|
||||
.status-icon {
|
||||
display: inline-block;
|
||||
margin-right: .5em;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* TIP CONTAINER BASE */
|
||||
.field-tip {
|
||||
font-size: .7em;
|
||||
color: rgba(255,255,255,.5)
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
Ideal for wrapping each Textfield on a page with many text fields in a row. This div will alternate colors and look like a table.
|
||||
*/
|
||||
.field-container {
|
||||
padding: .85em 0 .5em;
|
||||
&:nth-child(even) {
|
||||
background-color: rgba(0,0,0,.25);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* SEGMENT SLIDER */
|
||||
.segment-slider-container {
|
||||
width: 90%;
|
||||
margin: auto;
|
||||
padding: 1em 2em .75em;
|
||||
background-color: black;
|
||||
border-radius: 1em;
|
||||
}
|
||||
|
||||
|
||||
.segment-tip {
|
||||
width: 10em;
|
||||
text-align: center;
|
||||
margin: auto;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
@@ -1,37 +1,4 @@
|
||||
// Base styles for form-textfield, form-textfield-with-submit, and helper components.
|
||||
|
||||
/* STATUS-CONTAINER BASE */
|
||||
.status-container {
|
||||
&.status-success {
|
||||
color: var(--ant-success);
|
||||
}
|
||||
&.status-error {
|
||||
color: var(--ant-error);
|
||||
}
|
||||
&.status-warning {
|
||||
color: var(--ant-warning);
|
||||
}
|
||||
|
||||
&.empty {
|
||||
display: none;
|
||||
}
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: flex-start;
|
||||
align-items: center;
|
||||
font-size: .75rem;
|
||||
.status-icon {
|
||||
display: inline-block;
|
||||
margin-right: .5em;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* TIP CONTAINER BASE */
|
||||
.field-tip {
|
||||
font-size: .7em;
|
||||
color: rgba(255,255,255,.5)
|
||||
}
|
||||
// Base styles for form-textfield, form-textfield-with-submit
|
||||
|
||||
|
||||
/* TEXTFIELD-CONTAINER BASE */
|
||||
@@ -103,6 +70,8 @@
|
||||
}
|
||||
}
|
||||
|
||||
/* TEXTFIELD-WITH-SUBMIT-CONTAINER BASE */
|
||||
/* TEXTFIELD-WITH-SUBMIT-CONTAINER BASE */
|
||||
/* TEXTFIELD-WITH-SUBMIT-CONTAINER BASE */
|
||||
.textfield-with-submit-container {
|
||||
display: flex;
|
||||
@@ -169,30 +138,3 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* TOGGLE SWITCH-WITH-SUBMIT-CONTAINER BASE */
|
||||
.toggleswitch-container {
|
||||
.status-container {
|
||||
margin-top: .25rem;
|
||||
}
|
||||
|
||||
.toggleswitch {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
justify-content: flex-start;
|
||||
.label {
|
||||
font-weight: bold;
|
||||
color: var(--owncast-purple);
|
||||
}
|
||||
.info-tip {
|
||||
margin-left: .5rem;
|
||||
svg {
|
||||
fill: white;
|
||||
}
|
||||
}
|
||||
.ant-form-item {
|
||||
margin: 0 .75rem 0 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
29
web/styles/form-toggleswitch.scss
Normal file
29
web/styles/form-toggleswitch.scss
Normal file
@@ -0,0 +1,29 @@
|
||||
/* TOGGLE SWITCH-WITH-SUBMIT-CONTAINER BASE */
|
||||
|
||||
|
||||
.toggleswitch-container {
|
||||
|
||||
.status-container {
|
||||
margin-top: .25rem;
|
||||
}
|
||||
|
||||
.toggleswitch {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
justify-content: flex-start;
|
||||
.label {
|
||||
font-weight: bold;
|
||||
color: var(--owncast-purple);
|
||||
}
|
||||
.info-tip {
|
||||
margin-left: .5rem;
|
||||
svg {
|
||||
fill: white;
|
||||
}
|
||||
}
|
||||
.ant-form-item {
|
||||
margin: 0 .75rem 0 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user