Add text import export for toolbox modules

This commit is contained in:
Shinuwa 2026-08-09 15:26:10 +02:00
parent a9b5ca423a
commit 117b7b79e1
27 changed files with 1430 additions and 181 deletions

View file

@ -641,6 +641,10 @@ span {
rgba(5, 7, 17, 0.3);
}
.library-tool-advanced-list {
border-color: rgba(34, 211, 238, 0.16);
}
.library-tool-feature-list summary {
display: flex;
align-items: center;
@ -719,11 +723,8 @@ span {
.library-tool-import-format {
display: grid;
gap: var(--space-2);
padding-top: var(--space-3);
border-top: 1px solid rgba(246, 196, 83, 0.16);
}
.library-tool-import-format h3,
.library-tool-import-format p {
margin: 0;
}
@ -741,6 +742,26 @@ span {
white-space: pre-wrap;
}
.library-tool-import-example {
display: grid;
gap: var(--space-2);
}
.library-tool-import-example button {
display: inline-flex;
align-items: center;
justify-self: end;
gap: 8px;
width: fit-content;
min-height: 38px;
padding-inline: var(--space-3);
}
.library-tool-import-example .ui-icon {
width: 16px;
height: 16px;
}
.library-tool-badge {
display: inline-flex;
width: fit-content;

View file

@ -37,6 +37,11 @@
-webkit-mask-image: url("/static/icons/save.svg");
}
.ui-icon-info {
mask-image: url("/static/icons/info.svg");
-webkit-mask-image: url("/static/icons/info.svg");
}
.ui-icon-export {
mask-image: url("/static/icons/export.svg");
-webkit-mask-image: url("/static/icons/export.svg");

View file

@ -1366,7 +1366,9 @@
.text-import-actions {
display: flex;
flex-wrap: wrap;
justify-content: flex-end;
gap: var(--space-2);
}
.text-import-actions button {
@ -1403,7 +1405,38 @@
.text-import-modal-form {
display: grid;
gap: var(--space-4);
gap: var(--space-3);
}
.text-import-modal-form textarea.has-error {
border-color: rgba(248, 113, 113, 0.75);
box-shadow: 0 0 0 1px rgba(248, 113, 113, 0.24), var(--shadow-sm);
}
.text-import-error {
display: inline-flex;
align-items: center;
gap: 8px;
margin: 0;
color: #fecaca;
font-size: var(--font-size-sm);
font-weight: 700;
}
.text-import-info {
display: inline-flex;
align-items: center;
gap: 8px;
margin: 0;
color: var(--color-text-secondary);
font-size: var(--font-size-sm);
font-weight: 700;
}
.text-import-info .ui-icon,
.text-import-error .ui-icon {
width: 16px;
height: 16px;
}
.text-import-modal-form textarea {
@ -1878,6 +1911,15 @@ textarea:focus {
padding: 0;
}
.task-planner-add-stack {
display: grid;
gap: var(--space-3);
}
.task-planner-add-stack .text-import-actions {
padding-top: var(--space-2);
}
.task-planner-global-controls {
display: flex;
flex-wrap: wrap;
@ -4582,6 +4624,13 @@ button.combo-input-token.combo-value-grab .ui-icon {
padding: var(--space-4);
}
.calculator-exchange-panel,
.timer-exchange-panel,
.table-exchange-panel {
grid-column: 1 / -1;
padding: 0;
}
.calculator-form {
display: grid;
grid-template-columns: 1fr;
@ -5218,6 +5267,19 @@ button.combo-input-token.combo-value-grab .ui-icon {
border-right: 0;
}
.table-copy-button.notepad-toolbar-button {
display: inline-flex;
width: auto;
min-width: 0;
align-items: center;
gap: 8px;
padding-inline: 10px;
}
.table-copy-button span {
white-space: nowrap;
}
.table-grid-wrap {
width: 100%;
min-width: 0;
@ -5955,8 +6017,9 @@ button.combo-input-token.combo-value-grab .ui-icon {
.annotation-media {
position: relative;
display: block;
width: 100%;
width: fit-content;
max-width: 100%;
justify-self: center;
line-height: 0;
}
@ -5993,7 +6056,9 @@ button.combo-input-token.combo-value-grab .ui-icon {
.annotation-stage img,
.annotation-media img {
display: block;
width: 100%;
width: auto;
height: auto;
max-width: 100%;
max-height: min(62vh, 620px);
object-fit: contain;
user-select: none;