diva.js 7.2.5 → 7.2.6

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.
@@ -1,388 +0,0 @@
1
- /* Modal and filter panel styles (Page View + Manifest Info). */
2
-
3
- .modal-overlay {
4
- display: flex;
5
- align-items: center;
6
- justify-content: center;
7
- position: fixed;
8
- inset: 0;
9
- background-color: var(--diva-overlay-bg);
10
- padding: 24px;
11
- z-index: 100;
12
- }
13
-
14
- .viewer-status-overlay {
15
- display: flex;
16
- align-items: center;
17
- justify-content: center;
18
- position: absolute;
19
- inset: 0;
20
- background-color: var(--diva-overlay-bg);
21
- padding: 24px;
22
- z-index: 40;
23
- }
24
-
25
- .modal-overlay.is-fullscreen {
26
- padding: 0;
27
- }
28
-
29
- .modal {
30
- background-color: var(--diva-page-bg);
31
- color: var(--diva-text-primary);
32
- border-radius: 10px;
33
- width: min(1440px, 96vw);
34
- max-height: 90vh;
35
- display: flex;
36
- flex-direction: column;
37
- box-shadow: 0 20px 40px var(--diva-shadow-modal);
38
- }
39
-
40
- .modal.is-narrow {
41
- width: min(960px, 94vw);
42
- }
43
-
44
- .modal.is-page-view {
45
- height: 80vh;
46
- max-height: 80vh;
47
- }
48
-
49
- .modal.is-fullscreen {
50
- border-radius: 0;
51
- width: 100vw;
52
- height: 100vh;
53
- max-height: 100vh;
54
- }
55
-
56
- .modal-header {
57
- display: flex;
58
- justify-content: space-between;
59
- align-items: center;
60
- padding: 16px 20px 0 20px;
61
- }
62
-
63
- .modal-actions {
64
- display: flex;
65
- gap: 8px;
66
- }
67
-
68
- .modal-close-action .canvas-toolbar-button {
69
- background-color: transparent;
70
- color: var(--diva-danger);
71
- border: none;
72
- box-shadow: none;
73
- backdrop-filter: none;
74
- -webkit-backdrop-filter: none;
75
- width: auto;
76
- height: auto;
77
- padding: 2px;
78
- }
79
-
80
- .modal-close-action .canvas-toolbar-button:hover {
81
- background-color: rgb(211 47 47 / 12%);
82
- border-color: transparent;
83
- }
84
-
85
- .modal-close-action .canvas-toolbar-item {
86
- width: 32px;
87
- gap: 2px;
88
- }
89
-
90
- .modal-close-action .canvas-toolbar-label {
91
- font-size: var(--diva-font-xs);
92
- min-height: auto;
93
- }
94
-
95
- .modal-title-stack {
96
- display: flex;
97
- flex-direction: column;
98
- gap: 4px;
99
- }
100
-
101
- .modal-title {
102
- font-size: var(--diva-font-lg);
103
- font-weight: 600;
104
- }
105
-
106
- .modal-subtitle {
107
- font-size: var(--diva-font-lg);
108
- color: var(--diva-text-primary);
109
- }
110
-
111
- .modal-subtitle.is-muted {
112
- font-size: var(--diva-font-md);
113
- }
114
-
115
- .modal-body {
116
- display: grid;
117
- grid-template-columns: minmax(0, 1fr) 240px;
118
- gap: 16px;
119
- padding: 16px 20px 20px 20px;
120
- flex: 1;
121
- min-height: 0;
122
- }
123
-
124
- .modal-body.is-no-gap {
125
- gap: 0;
126
- }
127
-
128
- .modal-body.is-two-column {
129
- grid-template-columns: minmax(0, 1fr) 200px;
130
- align-items: start;
131
- }
132
-
133
- .modal-body.is-no-sidebar {
134
- grid-template-columns: minmax(0, 1fr);
135
- }
136
-
137
- .modal-body.is-fullscreen {
138
- flex: 1;
139
- min-height: 0;
140
- }
141
-
142
- .modal-body.is-with-choices {
143
- grid-template-columns: 120px minmax(0, 1fr) 240px;
144
- }
145
-
146
- .modal-body.is-with-choices-no-sidebar {
147
- grid-template-columns: 120px minmax(0, 1fr);
148
- }
149
-
150
- .modal-viewer {
151
- background-color: var(--diva-dark-bg);
152
- overflow: hidden;
153
- border: 1px solid var(--diva-dark-border);
154
- height: 100%;
155
- }
156
-
157
- .modal-viewer.is-fullscreen {
158
- height: 100%;
159
- border-radius: 0;
160
- }
161
-
162
- .modal-viewer.is-outer-left {
163
- border-radius: 6px 0 0 6px;
164
- }
165
-
166
- .modal-canvas {
167
- display: block;
168
- width: 100%;
169
- height: 100%;
170
- }
171
-
172
- .modal-sidebar {
173
- background-color: var(--diva-white);
174
- border-top: 1px solid var(--diva-border);
175
- border-right: 1px solid var(--diva-border);
176
- border-bottom: 1px solid var(--diva-border);
177
- border-radius: 0 6px 6px 0;
178
- padding: 16px;
179
- overflow: auto;
180
- }
181
-
182
- .manifest-info-logo-wrap {
183
- display: flex;
184
- flex-direction: column;
185
- gap: 8px;
186
- align-items: center;
187
- text-align: center;
188
- }
189
-
190
- .manifest-info-logo {
191
- width: 100%;
192
- height: auto;
193
- max-width: 180px;
194
- }
195
-
196
- .page-view-choices {
197
- display: flex;
198
- flex-direction: column;
199
- gap: 8px;
200
- background-color: var(--diva-dark-bg);
201
- border-radius: 6px 0 0 6px;
202
- padding: 8px;
203
- overflow: auto;
204
- }
205
-
206
- .page-view-choice {
207
- border: 2px solid transparent;
208
- display: flex;
209
- flex-direction: column;
210
- gap: 4px;
211
- }
212
-
213
- .page-view-choice:focus-visible {
214
- outline: 2px solid var(--diva-accent);
215
- outline-offset: 2px;
216
- }
217
-
218
- .page-view-choice:hover {
219
- background-color: var(--diva-dark-bg);
220
- }
221
-
222
- .page-view-choice.is-active {
223
- border-color: var(--diva-accent-light);
224
- background-color: var(--diva-dark-bg);
225
- }
226
-
227
- .page-view-choice-thumb {
228
- display: block;
229
- width: 100%;
230
- height: auto;
231
- border-radius: 3px;
232
- }
233
-
234
- .page-view-choice-label {
235
- font-size: var(--diva-font-xs);
236
- line-height: 1.2;
237
- color: var(--diva-text-muted);
238
- overflow: hidden;
239
- text-overflow: ellipsis;
240
- white-space: nowrap;
241
- }
242
-
243
- .filter-group {
244
- margin-bottom: 12px;
245
- padding-bottom: 12px;
246
- border-bottom: 1px solid var(--diva-border);
247
- }
248
-
249
- .filter-title-button {
250
- background-color: transparent;
251
- border: none;
252
- padding: 0;
253
- text-align: left;
254
- cursor: pointer;
255
- width: 100%;
256
- display: flex;
257
- align-items: center;
258
- gap: 8px;
259
- font-size: var(--diva-font-sm);
260
- font-weight: 600;
261
- text-transform: uppercase;
262
- letter-spacing: 0.08em;
263
- color: var(--diva-text-muted);
264
- margin-bottom: 8px;
265
- }
266
-
267
- .filter-title-button.is-collapsed {
268
- margin-bottom: 0;
269
- }
270
-
271
- .filter-title-icon {
272
- display: inline-block;
273
- width: 0;
274
- height: 0;
275
- border-top: 4px solid transparent;
276
- border-bottom: 4px solid transparent;
277
- border-left: 6px solid var(--diva-text-muted);
278
- transition: transform 150ms ease;
279
- }
280
-
281
- .filter-title-icon.is-expanded {
282
- transform: rotate(90deg);
283
- }
284
-
285
- .filter-row {
286
- display: flex;
287
- flex-wrap: wrap;
288
- gap: 8px;
289
- align-items: center;
290
- margin-bottom: 8px;
291
- }
292
-
293
- .filter-toggle {
294
- display: flex;
295
- align-items: center;
296
- gap: 8px;
297
- font-size: var(--diva-font-md);
298
- margin-bottom: 8px;
299
- }
300
-
301
- .filter-toggle.is-inline {
302
- margin-bottom: 0;
303
- }
304
-
305
- .filter-range-group {
306
- display: flex;
307
- flex-direction: column;
308
- gap: 6px;
309
- margin-bottom: 10px;
310
- }
311
-
312
- .filter-range-header {
313
- display: flex;
314
- align-items: center;
315
- justify-content: space-between;
316
- gap: 8px;
317
- }
318
-
319
- .filter-range-header-right {
320
- display: flex;
321
- align-items: center;
322
- gap: 8px;
323
- }
324
-
325
- .filter-range-input {
326
- width: 100%;
327
- }
328
-
329
- .filter-value {
330
- font-size: var(--diva-font-sm);
331
- color: var(--diva-text-muted);
332
- width: 40px;
333
- text-align: right;
334
- }
335
-
336
- .filter-reset {
337
- font-size: var(--diva-font-xs);
338
- padding: 2px 6px;
339
- background-color: var(--diva-surface);
340
- border: 1px solid var(--diva-border);
341
- border-radius: 3px;
342
- cursor: pointer;
343
- color: var(--diva-text-muted);
344
- }
345
-
346
- .filter-reset:hover {
347
- background-color: var(--diva-border);
348
- }
349
-
350
- .filter-json {
351
- width: 100%;
352
- min-height: 120px;
353
- padding: 6px 8px;
354
- font-size: var(--diva-font-sm);
355
- border: 1px solid var(--diva-border);
356
- border-radius: 4px;
357
- background-color: var(--diva-white);
358
- resize: vertical;
359
- font-family: Menlo, Monaco, Consolas, "Liberation Mono", monospace;
360
- }
361
-
362
- .filter-json-error {
363
- font-size: var(--diva-font-sm);
364
- color: var(--diva-danger);
365
- margin-top: 4px;
366
- }
367
-
368
- .filter-label {
369
- font-size: var(--diva-font-sm);
370
- color: var(--diva-text-muted);
371
- }
372
-
373
- .filter-select {
374
- padding: 4px 6px;
375
- border-radius: 4px;
376
- border: 1px solid var(--diva-border);
377
- background-color: var(--diva-white);
378
- font-size: var(--diva-font-sm);
379
- }
380
-
381
- .filter-color-input {
382
- width: 42px;
383
- height: 28px;
384
- padding: 0;
385
- border-radius: 4px;
386
- border: 1px solid var(--diva-border);
387
- background-color: var(--diva-white);
388
- }
@@ -1,215 +0,0 @@
1
- /* Sidebar-only styles to replace elm-css for the sidebar components. */
2
-
3
- .sidebar-panel {
4
- width: 320px;
5
- height: 100%;
6
- display: flex;
7
- flex-direction: column;
8
- min-height: 0;
9
- border: 1px solid var(--diva-dark-border);
10
- border-radius: 0 6px 6px 0;
11
- background-color: var(--diva-page-bg);
12
- overflow: hidden;
13
- }
14
-
15
- .sidebar-panel.is-overlay {
16
- /* mobile-only overlay styles are applied in the media query below */
17
- }
18
-
19
- .sidebar-panel.is-mobile-hidden {
20
- /* mobile-only hidden styles are applied in the media query below */
21
- }
22
-
23
- .sidebar-tabs {
24
- display: flex;
25
- border: 1px solid var(--diva-surface);
26
- border-radius: 0 6px 0 0;
27
- background-color: var(--diva-surface);
28
- }
29
-
30
- .sidebar-tab-button {
31
- flex: 1;
32
- background-color: transparent;
33
- border: none;
34
- padding: 10px 12px;
35
- font-size: var(--diva-font-md);
36
- text-transform: uppercase;
37
- cursor: pointer;
38
- color: var(--diva-text-muted);
39
- }
40
-
41
- .sidebar-tab-button.is-active {
42
- background-color: var(--diva-white);
43
- font-weight: 600;
44
- }
45
-
46
- .sidebar-content {
47
- flex: 1;
48
- min-height: 0;
49
- background-color: var(--diva-page-bg);
50
- position: relative;
51
- overflow: hidden;
52
- display: flex;
53
- flex-direction: column;
54
- }
55
-
56
- .sidebar-pane {
57
- width: 100%;
58
- flex: 1;
59
- min-height: 0;
60
- }
61
-
62
- .sidebar-pane.is-hidden {
63
- display: none;
64
- }
65
-
66
- .thumbs {
67
- width: 100%;
68
- height: 100%;
69
- flex: 1;
70
- min-height: 0;
71
- overflow-y: auto;
72
- display: grid;
73
- grid-template-columns: repeat(3, minmax(0, 1fr));
74
- align-content: start;
75
- gap: 10px;
76
- scroll-behavior: smooth;
77
- background-color: var(--diva-dark-bg);
78
- padding: 12px;
79
- }
80
-
81
- .thumbs.is-fullscreen {
82
- height: 100%;
83
- }
84
-
85
- .thumbs-item {
86
- display: flex;
87
- flex-direction: column;
88
- justify-content: flex-start;
89
- align-items: stretch;
90
- border: 1px solid var(--diva-dark-border);
91
- text-align: left;
92
- max-width: none;
93
- }
94
-
95
- .thumbs-item:focus-visible {
96
- outline: 2px solid var(--diva-accent);
97
- outline-offset: 2px;
98
- }
99
-
100
- .thumbs-item.is-active {
101
- border-color: var(--diva-accent-light);
102
- box-shadow: 0 0 0 var(--diva-shadow-focus);
103
- background-color: var(--diva-dark-bg);
104
- outline: 2px solid var(--diva-accent-light);
105
- outline-offset: 2px;
106
- }
107
-
108
- .thumbs-image {
109
- display: block;
110
- width: 100%;
111
- height: auto;
112
- border-radius: 3px;
113
- }
114
-
115
- .thumbs-label {
116
- margin-top: 6px;
117
- font-size: var(--diva-font-sm);
118
- line-height: 1.3;
119
- color: var(--diva-text-muted-on-dark);
120
- }
121
-
122
- .thumbs-label.is-active {
123
- color: var(--diva-white);
124
- }
125
-
126
- .contents-panel {
127
- height: 100%;
128
- overflow: auto;
129
- padding: 12px;
130
- }
131
-
132
- .contents-title {
133
- font-size: var(--diva-font-lg);
134
- font-weight: 600;
135
- color: var(--diva-text-muted);
136
- margin-bottom: 10px;
137
- }
138
-
139
- .contents-view-tabs {
140
- display: flex;
141
- gap: 8px;
142
- margin-bottom: 12px;
143
- }
144
-
145
- .contents-view-button {
146
- background-color: var(--diva-surface);
147
- border: 1px solid var(--diva-border);
148
- border-radius: 6px;
149
- padding: 4px 10px;
150
- font-size: var(--diva-font-sm);
151
- color: var(--diva-text-muted);
152
- cursor: pointer;
153
- }
154
-
155
- .contents-view-button.is-active {
156
- background-color: var(--diva-white);
157
- border-color: var(--diva-accent);
158
- color: var(--diva-text-primary);
159
- }
160
-
161
- .contents-list-nested {
162
- padding-left: 16px;
163
- margin-top: 6px;
164
- }
165
-
166
- .contents-item {
167
- margin-bottom: 6px;
168
- }
169
-
170
- .contents-meta {
171
- border: 1px solid var(--diva-dark-border);
172
- padding: 8px;
173
- margin-top: 6px;
174
- }
175
-
176
- .contents-button:hover {
177
- color: var(--diva-accent);
178
- }
179
-
180
- @media (max-width: 720px) {
181
- .sidebar-panel {
182
- width: 100% !important;
183
- height: auto;
184
- border-radius: 6px;
185
- }
186
-
187
- .sidebar-panel.is-overlay {
188
- position: absolute;
189
- top: 0;
190
- left: 0;
191
- right: 0;
192
- bottom: 0;
193
- width: 100%;
194
- height: 100%;
195
- border-radius: 0;
196
- z-index: 100;
197
- box-shadow: 0 12px 24px var(--diva-shadow-dark);
198
- }
199
-
200
- .sidebar-panel.is-mobile-hidden {
201
- display: none;
202
- }
203
-
204
- .thumbs {
205
- width: 100%;
206
- height: auto;
207
- grid-template-columns: repeat(3, minmax(0, 1fr));
208
- overflow-x: auto;
209
- overflow-y: hidden;
210
- }
211
-
212
- .thumbs-item {
213
- min-width: 120px;
214
- }
215
- }
@@ -1,39 +0,0 @@
1
- /* Shared CSS variables for the Diva theme. */
2
-
3
- :root {
4
- --diva-accent: rgba(90, 107, 255, 1);
5
- --diva-accent-light: rgba(154, 164, 255, 1);
6
- --diva-border: rgba(217, 212, 206, 1);
7
- --diva-danger: rgba(211, 47, 47, 1);
8
- --diva-dark-bg: rgba(28, 29, 34, 1);
9
- --diva-dark-border: rgba(44, 45, 51, 1);
10
- --diva-overlay-bg: rgba(16, 17, 20, 0.6);
11
- --diva-page-bg: rgba(247, 245, 241, 1);
12
- --diva-shadow-dark: rgba(0, 0, 0, 0.15);
13
- --diva-shadow-focus: rgba(154, 164, 255, 0.35);
14
- --diva-shadow-modal: rgba(0, 0, 0, 0.25);
15
- --diva-surface: rgba(230, 225, 220, 1);
16
- --diva-text-muted: rgba(92, 90, 85, 1);
17
- --diva-text-muted-on-dark: rgba(255, 255, 255, 0.7);
18
- --diva-text-primary: rgba(27, 27, 27, 1);
19
- --diva-toolbar-button-bg: rgb(82 88 98 / 42%);
20
- --diva-toolbar-button-bg-hover: rgb(92 99 110 / 52%);
21
- --diva-toolbar-button-bg-fullscreen: rgb(82 88 98 / 52%);
22
- --diva-toolbar-button-bg-fullscreen-hover: rgb(96 104 116 / 62%);
23
- --diva-toolbar-button-border: rgb(255 255 255 / 35%);
24
- --diva-toolbar-button-border-hover: rgb(255 255 255 / 45%);
25
- --diva-toolbar-button-border-fullscreen-hover: rgb(255 255 255 / 60%);
26
- --diva-toolbar-button-icon: rgba(44, 45, 51, 1);
27
- --diva-toolbar-button-shadow:
28
- inset 0 1px 0 rgb(255 255 255 / 55%),
29
- inset 0 -1px 0 rgb(255 255 255 / 18%);
30
- --diva-toolbar-button-shadow-hover:
31
- inset 0 1px 0 rgb(255 255 255 / 70%),
32
- inset 0 -1px 0 rgb(255 255 255 / 24%);
33
- --diva-white: rgba(255, 255, 255, 1);
34
- --diva-font-lg: 16px;
35
- --diva-font-md: 13px;
36
- --diva-font-sm: 11px;
37
- --diva-font-xs: 10px;
38
- --diva-font-xl: 20px;
39
- }