@happyvertical/smrt-svelte 0.55.15 → 0.55.17
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.
- package/README.md +5 -3
- package/agents/cookbook-shell.md +7 -1
- package/agents/overview-surfaces.md +5 -0
- package/agents/workspace.md +145 -11
- package/dist/browser-ai/svelte/components/DownloadProgress.svelte +22 -19
- package/dist/browser-ai/svelte/components/ModelStatusControl.svelte +16 -13
- package/dist/browser-ai/svelte/components/STTTest.svelte +41 -38
- package/dist/browser-ai/svelte/components/VoiceInput.svelte +17 -14
- package/dist/components/activity/ActivityList.svelte +1 -1
- package/dist/components/app/AppShell.svelte +274 -9
- package/dist/components/app/AppShell.svelte.d.ts +63 -2
- package/dist/components/app/AppShell.svelte.d.ts.map +1 -1
- package/dist/components/app/DockToggles.svelte +27 -1
- package/dist/components/app/DockToggles.svelte.d.ts.map +1 -1
- package/dist/components/app/OwnerSetupForm.svelte +98 -34
- package/dist/components/app/OwnerSetupForm.svelte.d.ts +4 -0
- package/dist/components/app/OwnerSetupForm.svelte.d.ts.map +1 -1
- package/dist/components/app/PhoneTabBar.svelte +136 -0
- package/dist/components/app/PhoneTabBar.svelte.d.ts +22 -0
- package/dist/components/app/PhoneTabBar.svelte.d.ts.map +1 -0
- package/dist/components/app/ShellSettingsPage.svelte +17 -2
- package/dist/components/app/ShellSettingsPage.svelte.d.ts +11 -16
- package/dist/components/app/ShellSettingsPage.svelte.d.ts.map +1 -1
- package/dist/components/app/dock-toggle.d.ts +3 -2
- package/dist/components/app/dock-toggle.d.ts.map +1 -1
- package/dist/components/app/index.d.ts +2 -1
- package/dist/components/app/index.d.ts.map +1 -1
- package/dist/components/app/index.js +1 -0
- package/dist/components/app/owner-setup-types.d.ts +5 -0
- package/dist/components/app/owner-setup-types.d.ts.map +1 -1
- package/dist/components/app/phone-tabs.d.ts +41 -0
- package/dist/components/app/phone-tabs.d.ts.map +1 -0
- package/dist/components/app/phone-tabs.js +66 -0
- package/dist/components/app/slot-item.d.ts +16 -0
- package/dist/components/app/slot-item.d.ts.map +1 -1
- package/dist/components/app/view-transition.d.ts +43 -0
- package/dist/components/app/view-transition.d.ts.map +1 -0
- package/dist/components/app/view-transition.js +76 -0
- package/dist/components/audit/AuditList.svelte +4 -1
- package/dist/components/audit/RecordHistory.svelte +4 -1
- package/dist/components/board/Board.svelte +4 -1
- package/dist/components/command-palette/CommandPalette.svelte +4 -1
- package/dist/components/command-palette/CommandPalette.svelte.d.ts +2 -0
- package/dist/components/command-palette/CommandPalette.svelte.d.ts.map +1 -1
- package/dist/components/command-palette/CommandPaletteDialog.svelte +3 -0
- package/dist/components/command-palette/CommandPaletteTrigger.svelte +3 -0
- package/dist/components/cookbook/CookbookApp.svelte +2 -1
- package/dist/components/cookbook/CookbookApp.svelte.d.ts.map +1 -1
- package/dist/components/cookbook/CookbookSectionPage.svelte +4 -1
- package/dist/components/cookbook/brand-theme.d.ts.map +1 -1
- package/dist/components/cookbook/brand-theme.js +21 -2
- package/dist/components/cookbook/build.js +1 -1
- package/dist/components/cookbook/theme.d.ts.map +1 -1
- package/dist/components/cookbook/theme.js +9 -5
- package/dist/components/cookbook/types.d.ts +5 -1
- package/dist/components/cookbook/types.d.ts.map +1 -1
- package/dist/components/forms/AddressInput.svelte +25 -22
- package/dist/components/forms/CheckboxInput.svelte +8 -5
- package/dist/components/forms/DateRangeInput.svelte +41 -38
- package/dist/components/forms/DateTimeInput.svelte +29 -26
- package/dist/components/forms/FileUpload.svelte +24 -21
- package/dist/components/forms/Form.svelte +34 -31
- package/dist/components/forms/FormMicButton.svelte +10 -7
- package/dist/components/forms/FormScope.svelte +4 -1
- package/dist/components/forms/MeasurementInput.svelte +26 -23
- package/dist/components/forms/MoneyInput.svelte +18 -15
- package/dist/components/forms/NumberInput.svelte +17 -14
- package/dist/components/forms/PhoneInput.svelte +37 -34
- package/dist/components/forms/SearchInput.svelte +16 -13
- package/dist/components/forms/SelectInput.svelte +17 -14
- package/dist/components/forms/TextInput.svelte +19 -16
- package/dist/components/forms/TextareaInput.svelte +21 -18
- package/dist/components/import-export/ImportExport.svelte +4 -1
- package/dist/components/module/ModulePanel.svelte +14 -11
- package/dist/components/notifications/NotificationBell.svelte +4 -1
- package/dist/components/overview/OverviewAssistantUndo.svelte +4 -1
- package/dist/components/overview/OverviewGrid.svelte +11 -6
- package/dist/components/overview/OverviewGrid.svelte.d.ts.map +1 -1
- package/dist/components/overview/WidgetOptionsForm.svelte +3 -0
- package/dist/components/overview/widgets/ChartWidget.svelte +7 -4
- package/dist/components/overview/widgets/MetricWidget.svelte +5 -2
- package/dist/components/overview/widgets/NoteWidget.svelte +5 -2
- package/dist/components/overview/widgets/RecordListWidget.svelte +6 -3
- package/dist/components/overview/widgets/ShortcutsWidget.svelte +12 -6
- package/dist/components/overview/widgets/ShortcutsWidget.svelte.d.ts.map +1 -1
- package/dist/components/screens/DetailScreen.svelte +6 -3
- package/dist/components/screens/EditForm.svelte +6 -3
- package/dist/components/screens/ListScreen.svelte +4 -1
- package/dist/components/screens/RecipeScreens.svelte +1 -1
- package/dist/components/settings/SettingsCatalog.svelte +4 -1
- package/dist/components/sortable/Sortable.svelte +11 -5
- package/dist/components/sortable/Sortable.svelte.d.ts.map +1 -1
- package/dist/components/workspace/Breadcrumbs.svelte +4 -1
- package/dist/components/workspace/NavTree.svelte +4 -1
- package/dist/components/workspace/RoleShell.svelte +4 -1
- package/dist/components/workspace/WorkspaceShell.svelte +43 -40
- package/dist/components/workspace/admin-shell/ActivityItem.svelte +4 -1
- package/dist/components/workspace/admin-shell/ActivityList.svelte +5 -2
- package/dist/components/workspace/admin-shell/ActivityTicker.svelte +6 -3
- package/dist/components/workspace/admin-shell/ActivityToasts.svelte +4 -1
- package/dist/components/workspace/admin-shell/AdminShell.svelte +502 -72
- package/dist/components/workspace/admin-shell/AdminShell.svelte.d.ts +7 -1
- package/dist/components/workspace/admin-shell/AdminShell.svelte.d.ts.map +1 -1
- package/dist/components/workspace/admin-shell/AppScopePanel.svelte +4 -1
- package/dist/components/workspace/admin-shell/HotkeyInput.svelte +4 -1
- package/dist/components/workspace/admin-shell/PhoneBottomBar.svelte +21 -8
- package/dist/components/workspace/admin-shell/PhoneBottomBar.svelte.d.ts +9 -2
- package/dist/components/workspace/admin-shell/PhoneBottomBar.svelte.d.ts.map +1 -1
- package/dist/components/workspace/admin-shell/PhoneTopBar.svelte +4 -1
- package/dist/components/workspace/admin-shell/ShellBrand.svelte +3 -0
- package/dist/components/workspace/admin-shell/ShellCorner.svelte +4 -1
- package/dist/components/workspace/admin-shell/ShellIconButton.svelte +4 -1
- package/dist/components/workspace/admin-shell/ShellLayoutEditor.svelte +4 -1
- package/dist/components/workspace/admin-shell/ShellNavEditor.svelte +13 -7
- package/dist/components/workspace/admin-shell/ShellNavEditor.svelte.d.ts +1 -1
- package/dist/components/workspace/admin-shell/ShellNavEditor.svelte.d.ts.map +1 -1
- package/dist/components/workspace/admin-shell/ShellNavToggle.svelte +4 -1
- package/dist/components/workspace/admin-shell/ShellSectionIcon.svelte +4 -1
- package/dist/components/workspace/admin-shell/ShellSectionMenu.svelte +15 -10
- package/dist/components/workspace/admin-shell/ShellSectionMenu.svelte.d.ts.map +1 -1
- package/dist/components/workspace/admin-shell/ShellSettingsPanel.svelte +236 -48
- package/dist/components/workspace/admin-shell/ShellSettingsPanel.svelte.d.ts +11 -1
- package/dist/components/workspace/admin-shell/ShellSettingsPanel.svelte.d.ts.map +1 -1
- package/dist/components/workspace/admin-shell/ShellTitle.svelte +4 -1
- package/dist/components/workspace/admin-shell/ShortcutsOverlay.svelte +4 -1
- package/dist/components/workspace/admin-shell/SystemScopePanel.svelte +4 -1
- package/dist/components/workspace/admin-shell/SystemStatusChips.svelte +5 -2
- package/dist/components/workspace/admin-shell/TenantNav.svelte +81 -36
- package/dist/components/workspace/admin-shell/TenantNav.svelte.d.ts +4 -3
- package/dist/components/workspace/admin-shell/TenantNav.svelte.d.ts.map +1 -1
- package/dist/components/workspace/admin-shell/WorkspaceAccountMenu.svelte +305 -53
- package/dist/components/workspace/admin-shell/WorkspaceAccountMenu.svelte.d.ts +15 -2
- package/dist/components/workspace/admin-shell/WorkspaceAccountMenu.svelte.d.ts.map +1 -1
- package/dist/components/workspace/admin-shell/motion.d.ts +19 -0
- package/dist/components/workspace/admin-shell/motion.d.ts.map +1 -0
- package/dist/components/workspace/admin-shell/motion.js +44 -0
- package/dist/components/workspace/admin-shell/settings.d.ts +1 -0
- package/dist/components/workspace/admin-shell/settings.d.ts.map +1 -1
- package/dist/components/workspace/admin-shell/settings.js +1 -1
- package/dist/components/workspace/admin-shell/shell-icons.d.ts +8 -0
- package/dist/components/workspace/admin-shell/shell-icons.d.ts.map +1 -1
- package/dist/components/workspace/admin-shell/shell-icons.js +8 -0
- package/dist/components/workspace/admin-shell/state.svelte.d.ts +6 -0
- package/dist/components/workspace/admin-shell/state.svelte.d.ts.map +1 -1
- package/dist/components/workspace/admin-shell/state.svelte.js +15 -0
- package/dist/components/workspace/admin-shell/types.d.ts +13 -3
- package/dist/components/workspace/admin-shell/types.d.ts.map +1 -1
- package/dist/components/workspace/tools-dock/ToolsDock.svelte +41 -38
- package/dist/i18n/strings.workspace.d.ts +37 -0
- package/dist/i18n/strings.workspace.d.ts.map +1 -1
- package/dist/i18n/strings.workspace.js +42 -2
- package/dist/mcp-apps/McpAppsBridge.svelte +4 -1
- package/package.json +14 -14
|
@@ -298,7 +298,7 @@ function handleInput(e: Event) {
|
|
|
298
298
|
}
|
|
299
299
|
</script>
|
|
300
300
|
|
|
301
|
-
<div class="smrt-phone" class:listening={isHolding}>
|
|
301
|
+
<div class="smrt-phone" class:listening={isHolding} data-smrt-component="PhoneInput">
|
|
302
302
|
{#if label}
|
|
303
303
|
<FieldLabel id={labelId} for={name} {label} {required} />
|
|
304
304
|
{/if}
|
|
@@ -391,10 +391,12 @@ function handleInput(e: Event) {
|
|
|
391
391
|
</div>
|
|
392
392
|
|
|
393
393
|
<style>
|
|
394
|
+
@layer smrt.reset, smrt.structure, smrt.theme;
|
|
395
|
+
@layer smrt.theme {
|
|
394
396
|
.smrt-phone {
|
|
395
397
|
display: flex;
|
|
396
398
|
flex-direction: column;
|
|
397
|
-
gap: var(--smrt-spacing-1
|
|
399
|
+
gap: var(--smrt-spacing-1);
|
|
398
400
|
position: relative;
|
|
399
401
|
}
|
|
400
402
|
|
|
@@ -405,42 +407,42 @@ function handleInput(e: Event) {
|
|
|
405
407
|
|
|
406
408
|
.smrt-input {
|
|
407
409
|
flex: 1;
|
|
408
|
-
padding: var(--smrt-spacing-2
|
|
410
|
+
padding: var(--smrt-spacing-2) var(--smrt-spacing-3);
|
|
409
411
|
font-size: var(--smrt-typography-body-large-size, 1rem);
|
|
410
|
-
border: 1px solid var(--smrt-color-outline-variant
|
|
411
|
-
border-radius: var(--smrt-radius-small
|
|
412
|
-
background: var(--smrt-color-surface
|
|
412
|
+
border: 1px solid var(--smrt-color-outline-variant);
|
|
413
|
+
border-radius: var(--smrt-radius-small);
|
|
414
|
+
background: var(--smrt-color-surface);
|
|
413
415
|
transition: all var(--smrt-duration-short2, 150ms) var(--smrt-easing-standard, ease);
|
|
414
416
|
}
|
|
415
417
|
|
|
416
418
|
.smrt-input:focus {
|
|
417
419
|
outline: none;
|
|
418
|
-
border-color: var(--smrt-color-primary
|
|
419
|
-
box-shadow: 0 0 0 3px color-mix(in srgb, var(--smrt-color-primary
|
|
420
|
+
border-color: var(--smrt-color-primary);
|
|
421
|
+
box-shadow: 0 0 0 3px color-mix(in srgb, var(--smrt-color-primary) 10%, transparent);
|
|
420
422
|
}
|
|
421
423
|
|
|
422
424
|
.smrt-input.smrt-mode {
|
|
423
|
-
padding-right: var(--smrt-spacing-11
|
|
425
|
+
padding-right: var(--smrt-spacing-11);
|
|
424
426
|
cursor: pointer;
|
|
425
427
|
}
|
|
426
428
|
|
|
427
429
|
.smrt-input:disabled {
|
|
428
|
-
background: var(--smrt-color-surface-container-high
|
|
430
|
+
background: var(--smrt-color-surface-container-high);
|
|
429
431
|
cursor: not-allowed;
|
|
430
432
|
}
|
|
431
433
|
|
|
432
434
|
.smrt-phone.listening .smrt-input {
|
|
433
|
-
border-color: var(--smrt-color-success
|
|
434
|
-
box-shadow: 0 0 0 3px color-mix(in srgb, var(--smrt-color-success
|
|
435
|
+
border-color: var(--smrt-color-success);
|
|
436
|
+
box-shadow: 0 0 0 3px color-mix(in srgb, var(--smrt-color-success) 30%, transparent);
|
|
435
437
|
animation: pulse-green 1.5s var(--smrt-easing-standard, ease-in-out) infinite;
|
|
436
438
|
}
|
|
437
439
|
|
|
438
440
|
@keyframes pulse-green {
|
|
439
441
|
0%, 100% {
|
|
440
|
-
box-shadow: 0 0 0 3px color-mix(in srgb, var(--smrt-color-success
|
|
442
|
+
box-shadow: 0 0 0 3px color-mix(in srgb, var(--smrt-color-success) 30%, transparent);
|
|
441
443
|
}
|
|
442
444
|
50% {
|
|
443
|
-
box-shadow: 0 0 0 6px color-mix(in srgb, var(--smrt-color-success
|
|
445
|
+
box-shadow: 0 0 0 6px color-mix(in srgb, var(--smrt-color-success) 15%, transparent);
|
|
444
446
|
}
|
|
445
447
|
}
|
|
446
448
|
|
|
@@ -462,19 +464,19 @@ function handleInput(e: Event) {
|
|
|
462
464
|
justify-content: center;
|
|
463
465
|
background: transparent;
|
|
464
466
|
border: none;
|
|
465
|
-
border-radius: var(--smrt-radius-sm
|
|
466
|
-
color: var(--smrt-color-on-surface-variant
|
|
467
|
+
border-radius: var(--smrt-radius-sm);
|
|
468
|
+
color: var(--smrt-color-on-surface-variant);
|
|
467
469
|
cursor: pointer;
|
|
468
470
|
transition: all 0.2s;
|
|
469
471
|
}
|
|
470
472
|
|
|
471
473
|
.mic-btn:hover {
|
|
472
474
|
background: var(--smrt-color-surface-container);
|
|
473
|
-
color: var(--smrt-color-on-surface
|
|
475
|
+
color: var(--smrt-color-on-surface);
|
|
474
476
|
}
|
|
475
477
|
|
|
476
478
|
.mic-btn.active {
|
|
477
|
-
background: var(--smrt-color-primary
|
|
479
|
+
background: var(--smrt-color-primary);
|
|
478
480
|
color: var(--smrt-color-on-primary, white);
|
|
479
481
|
}
|
|
480
482
|
|
|
@@ -484,12 +486,12 @@ function handleInput(e: Event) {
|
|
|
484
486
|
}
|
|
485
487
|
|
|
486
488
|
.smrt-input.invalid {
|
|
487
|
-
border-color: var(--smrt-color-error
|
|
489
|
+
border-color: var(--smrt-color-error);
|
|
488
490
|
}
|
|
489
491
|
|
|
490
492
|
.smrt-input.invalid:focus {
|
|
491
|
-
border-color: var(--smrt-color-error
|
|
492
|
-
box-shadow: 0 0 0 3px color-mix(in srgb, var(--smrt-color-error
|
|
493
|
+
border-color: var(--smrt-color-error);
|
|
494
|
+
box-shadow: 0 0 0 3px color-mix(in srgb, var(--smrt-color-error) 10%, transparent);
|
|
493
495
|
}
|
|
494
496
|
|
|
495
497
|
.smrt-input.processing {
|
|
@@ -502,17 +504,17 @@ function handleInput(e: Event) {
|
|
|
502
504
|
.listening-indicator {
|
|
503
505
|
display: flex;
|
|
504
506
|
align-items: center;
|
|
505
|
-
gap: var(--smrt-spacing-2
|
|
507
|
+
gap: var(--smrt-spacing-2);
|
|
506
508
|
font-size: var(--smrt-typography-body-small-size, 0.75rem);
|
|
507
509
|
color: var(--smrt-color-on-surface-variant);
|
|
508
|
-
margin-top: var(--smrt-spacing-1
|
|
510
|
+
margin-top: var(--smrt-spacing-1);
|
|
509
511
|
}
|
|
510
512
|
|
|
511
513
|
.listening-dot {
|
|
512
514
|
width: 8px;
|
|
513
515
|
height: 8px;
|
|
514
516
|
background: var(--smrt-color-success);
|
|
515
|
-
border-radius: var(--smrt-radius-full
|
|
517
|
+
border-radius: var(--smrt-radius-full);
|
|
516
518
|
animation: pulse-dot 1s ease-in-out infinite;
|
|
517
519
|
}
|
|
518
520
|
|
|
@@ -536,19 +538,19 @@ function handleInput(e: Event) {
|
|
|
536
538
|
.processing-indicator {
|
|
537
539
|
display: flex;
|
|
538
540
|
align-items: center;
|
|
539
|
-
gap: var(--smrt-spacing-2
|
|
541
|
+
gap: var(--smrt-spacing-2);
|
|
540
542
|
font-size: var(--smrt-typography-body-small-size, 0.75rem);
|
|
541
|
-
color: var(--smrt-color-on-surface-variant
|
|
542
|
-
margin-top: var(--smrt-spacing-1
|
|
543
|
+
color: var(--smrt-color-on-surface-variant);
|
|
544
|
+
margin-top: var(--smrt-spacing-1);
|
|
543
545
|
}
|
|
544
546
|
|
|
545
547
|
.downloading-indicator {
|
|
546
548
|
display: flex;
|
|
547
549
|
align-items: center;
|
|
548
|
-
gap: var(--smrt-spacing-2
|
|
550
|
+
gap: var(--smrt-spacing-2);
|
|
549
551
|
font-size: var(--smrt-typography-body-small-size, 0.75rem);
|
|
550
552
|
color: var(--smrt-color-tertiary);
|
|
551
|
-
margin-top: var(--smrt-spacing-1
|
|
553
|
+
margin-top: var(--smrt-spacing-1);
|
|
552
554
|
}
|
|
553
555
|
|
|
554
556
|
.processing-spinner {
|
|
@@ -556,7 +558,7 @@ function handleInput(e: Event) {
|
|
|
556
558
|
height: 12px;
|
|
557
559
|
border: 2px solid var(--smrt-color-outline-variant);
|
|
558
560
|
border-top-color: var(--smrt-color-primary);
|
|
559
|
-
border-radius: var(--smrt-radius-full
|
|
561
|
+
border-radius: var(--smrt-radius-full);
|
|
560
562
|
animation: spin 0.8s linear infinite;
|
|
561
563
|
}
|
|
562
564
|
|
|
@@ -568,13 +570,14 @@ function handleInput(e: Event) {
|
|
|
568
570
|
|
|
569
571
|
.error-message {
|
|
570
572
|
font-size: var(--smrt-typography-body-small-size, 0.75rem);
|
|
571
|
-
color: var(--smrt-color-error
|
|
572
|
-
margin-top: var(--smrt-spacing-1
|
|
573
|
+
color: var(--smrt-color-error);
|
|
574
|
+
margin-top: var(--smrt-spacing-1);
|
|
573
575
|
}
|
|
574
576
|
|
|
575
577
|
.validation-error {
|
|
576
578
|
font-size: var(--smrt-typography-body-small-size, 0.75rem);
|
|
577
|
-
color: var(--smrt-color-error
|
|
578
|
-
margin-top: var(--smrt-spacing-1
|
|
579
|
+
color: var(--smrt-color-error);
|
|
580
|
+
margin-top: var(--smrt-spacing-1);
|
|
579
581
|
}
|
|
582
|
+
}
|
|
580
583
|
</style>
|
|
@@ -132,7 +132,7 @@ const sizeClasses = {
|
|
|
132
132
|
<div
|
|
133
133
|
class="search-input {sizeClasses[size]}"
|
|
134
134
|
class:search-input--disabled={disabled}
|
|
135
|
-
class:search-input--loading={loading}
|
|
135
|
+
class:search-input--loading={loading} data-smrt-component="SearchInput"
|
|
136
136
|
>
|
|
137
137
|
<span class="search-input__icon" aria-hidden="true">
|
|
138
138
|
{#if loading}
|
|
@@ -213,20 +213,22 @@ const sizeClasses = {
|
|
|
213
213
|
</div>
|
|
214
214
|
|
|
215
215
|
<style>
|
|
216
|
+
@layer smrt.reset, smrt.structure, smrt.theme;
|
|
217
|
+
@layer smrt.theme {
|
|
216
218
|
.search-input {
|
|
217
219
|
position: relative;
|
|
218
220
|
display: flex;
|
|
219
221
|
align-items: center;
|
|
220
222
|
width: 100%;
|
|
221
|
-
background: var(--smrt-color-surface-container-low
|
|
222
|
-
border: 1px solid var(--smrt-color-outline-variant
|
|
223
|
+
background: var(--smrt-color-surface-container-low);
|
|
224
|
+
border: 1px solid var(--smrt-color-outline-variant);
|
|
223
225
|
border-radius: var(--smrt-radius-md, 0.5rem);
|
|
224
226
|
transition: all var(--smrt-duration-fast, 150ms) var(--smrt-easing-standard, ease);
|
|
225
227
|
}
|
|
226
228
|
|
|
227
229
|
.search-input:focus-within {
|
|
228
|
-
background: var(--smrt-color-surface
|
|
229
|
-
border-color: var(--smrt-color-primary
|
|
230
|
+
background: var(--smrt-color-surface);
|
|
231
|
+
border-color: var(--smrt-color-primary);
|
|
230
232
|
box-shadow: 0 0 0 3px var(--smrt-color-primary-container, rgba(0, 90, 193, 0.1));
|
|
231
233
|
}
|
|
232
234
|
|
|
@@ -240,7 +242,7 @@ const sizeClasses = {
|
|
|
240
242
|
align-items: center;
|
|
241
243
|
justify-content: center;
|
|
242
244
|
flex-shrink: 0;
|
|
243
|
-
color: var(--smrt-color-on-surface-variant
|
|
245
|
+
color: var(--smrt-color-on-surface-variant);
|
|
244
246
|
}
|
|
245
247
|
|
|
246
248
|
.search-input__spinner {
|
|
@@ -259,12 +261,12 @@ const sizeClasses = {
|
|
|
259
261
|
border: none;
|
|
260
262
|
background: transparent;
|
|
261
263
|
font-family: inherit;
|
|
262
|
-
color: var(--smrt-color-on-surface
|
|
264
|
+
color: var(--smrt-color-on-surface);
|
|
263
265
|
outline: none;
|
|
264
266
|
}
|
|
265
267
|
|
|
266
268
|
.search-input__field::placeholder {
|
|
267
|
-
color: var(--smrt-color-on-surface-variant
|
|
269
|
+
color: var(--smrt-color-on-surface-variant);
|
|
268
270
|
}
|
|
269
271
|
|
|
270
272
|
/* Hide default search clear button */
|
|
@@ -280,19 +282,19 @@ const sizeClasses = {
|
|
|
280
282
|
padding: 0;
|
|
281
283
|
border: none;
|
|
282
284
|
background: transparent;
|
|
283
|
-
color: var(--smrt-color-on-surface-variant
|
|
285
|
+
color: var(--smrt-color-on-surface-variant);
|
|
284
286
|
cursor: pointer;
|
|
285
|
-
border-radius: var(--smrt-radius-full
|
|
287
|
+
border-radius: var(--smrt-radius-full);
|
|
286
288
|
transition: all var(--smrt-duration-short2, 150ms) var(--smrt-easing-standard, ease);
|
|
287
289
|
}
|
|
288
290
|
|
|
289
291
|
.search-input__clear:hover {
|
|
290
|
-
color: var(--smrt-color-on-surface
|
|
291
|
-
background: var(--smrt-color-surface-container
|
|
292
|
+
color: var(--smrt-color-on-surface);
|
|
293
|
+
background: var(--smrt-color-surface-container);
|
|
292
294
|
}
|
|
293
295
|
|
|
294
296
|
.search-input__clear:focus-visible {
|
|
295
|
-
outline: 2px solid var(--smrt-color-primary
|
|
297
|
+
outline: 2px solid var(--smrt-color-primary);
|
|
296
298
|
outline-offset: 2px;
|
|
297
299
|
}
|
|
298
300
|
|
|
@@ -355,4 +357,5 @@ const sizeClasses = {
|
|
|
355
357
|
height: 32px;
|
|
356
358
|
margin-right: var(--smrt-spacing-3, 0.75rem);
|
|
357
359
|
}
|
|
360
|
+
}
|
|
358
361
|
</style>
|
|
@@ -136,7 +136,7 @@ function handleChange(e: Event) {
|
|
|
136
136
|
class:smrt-mode={isSmrt}
|
|
137
137
|
class:focused={isFocused}
|
|
138
138
|
class:disabled
|
|
139
|
-
class:has-value={!!value}
|
|
139
|
+
class:has-value={!!value} data-smrt-component="SelectInput"
|
|
140
140
|
>
|
|
141
141
|
{#if label}
|
|
142
142
|
<FieldLabel id={labelId} for={name} {label} {required} />
|
|
@@ -180,10 +180,12 @@ function handleChange(e: Event) {
|
|
|
180
180
|
</div>
|
|
181
181
|
|
|
182
182
|
<style>
|
|
183
|
+
@layer smrt.reset, smrt.structure, smrt.theme;
|
|
184
|
+
@layer smrt.theme {
|
|
183
185
|
.smrt-select-field {
|
|
184
|
-
--field-color: var(--smrt-color-on-surface-variant);
|
|
185
|
-
--field-bg: var(--smrt-color-surface-container-highest);
|
|
186
|
-
--field-active: var(--smrt-color-primary);
|
|
186
|
+
--smrt-select-input-field-color: var(--smrt-color-on-surface-variant);
|
|
187
|
+
--smrt-select-input-field-bg: var(--smrt-color-surface-container-highest);
|
|
188
|
+
--smrt-select-input-field-active: var(--smrt-color-primary);
|
|
187
189
|
|
|
188
190
|
display: flex;
|
|
189
191
|
flex-direction: column;
|
|
@@ -195,11 +197,11 @@ function handleChange(e: Event) {
|
|
|
195
197
|
position: relative;
|
|
196
198
|
display: flex;
|
|
197
199
|
align-items: center;
|
|
198
|
-
background-color: var(--smrt-color-surface
|
|
199
|
-
border: 1px solid var(--smrt-color-outline-variant
|
|
200
|
-
border-radius: var(--smrt-radius-small
|
|
200
|
+
background-color: var(--smrt-color-surface);
|
|
201
|
+
border: 1px solid var(--smrt-color-outline-variant);
|
|
202
|
+
border-radius: var(--smrt-radius-small);
|
|
201
203
|
min-height: 40px;
|
|
202
|
-
padding: 0 var(--smrt-spacing-3
|
|
204
|
+
padding: 0 var(--smrt-spacing-3);
|
|
203
205
|
transition: background-color var(--smrt-duration-short3, 200ms) var(--smrt-easing-standard, cubic-bezier(0.2, 0, 0, 1));
|
|
204
206
|
}
|
|
205
207
|
|
|
@@ -221,7 +223,7 @@ function handleChange(e: Event) {
|
|
|
221
223
|
background: transparent;
|
|
222
224
|
font-size: var(--smrt-typography-body-large-size, 1rem);
|
|
223
225
|
line-height: var(--smrt-typography-body-large-line-height, 1.5);
|
|
224
|
-
letter-spacing: var(--smrt-typography-body-large-tracking
|
|
226
|
+
letter-spacing: var(--smrt-typography-body-large-tracking);
|
|
225
227
|
color: var(--smrt-color-on-surface);
|
|
226
228
|
width: 100%;
|
|
227
229
|
padding: 0;
|
|
@@ -239,7 +241,7 @@ function handleChange(e: Event) {
|
|
|
239
241
|
display: flex;
|
|
240
242
|
align-items: center;
|
|
241
243
|
justify-content: center;
|
|
242
|
-
color: var(--field-color);
|
|
244
|
+
color: var(--smrt-select-input-field-color);
|
|
243
245
|
pointer-events: none;
|
|
244
246
|
margin-right: -4px;
|
|
245
247
|
}
|
|
@@ -247,12 +249,12 @@ function handleChange(e: Event) {
|
|
|
247
249
|
.active-indicator { display: none; }
|
|
248
250
|
|
|
249
251
|
.focused .container {
|
|
250
|
-
border-color: var(--field-active);
|
|
251
|
-
box-shadow: 0 0 0 3px color-mix(in srgb, var(--field-active) 10%, transparent);
|
|
252
|
+
border-color: var(--smrt-select-input-field-active);
|
|
253
|
+
box-shadow: 0 0 0 3px color-mix(in srgb, var(--smrt-select-input-field-active) 10%, transparent);
|
|
252
254
|
}
|
|
253
255
|
|
|
254
256
|
.supporting-text {
|
|
255
|
-
padding: var(--smrt-spacing-1
|
|
257
|
+
padding: var(--smrt-spacing-1) 0 0;
|
|
256
258
|
font-size: var(--smrt-typography-body-small-size, 0.75rem);
|
|
257
259
|
}
|
|
258
260
|
|
|
@@ -265,6 +267,7 @@ function handleChange(e: Event) {
|
|
|
265
267
|
|
|
266
268
|
/* Smrt mode overrides */
|
|
267
269
|
.smrt-mode {
|
|
268
|
-
--field-active: var(--smrt-color-tertiary);
|
|
270
|
+
--smrt-select-input-field-active: var(--smrt-color-tertiary);
|
|
269
271
|
}
|
|
272
|
+
}
|
|
270
273
|
</style>
|
|
@@ -265,7 +265,7 @@ function handleInput(e: Event) {
|
|
|
265
265
|
class:invalid={showInvalid}
|
|
266
266
|
class:disabled
|
|
267
267
|
class:has-value={!!value}
|
|
268
|
-
class:listening={isHolding}
|
|
268
|
+
class:listening={isHolding} data-smrt-component="TextInput"
|
|
269
269
|
>
|
|
270
270
|
{#if label}
|
|
271
271
|
<FieldLabel id={labelId} for={name} {label} {required} />
|
|
@@ -337,10 +337,12 @@ function handleInput(e: Event) {
|
|
|
337
337
|
</div>
|
|
338
338
|
|
|
339
339
|
<style>
|
|
340
|
+
@layer smrt.reset, smrt.structure, smrt.theme;
|
|
341
|
+
@layer smrt.theme {
|
|
340
342
|
.smrt-text-field {
|
|
341
|
-
--field-color: var(--smrt-color-on-surface-variant);
|
|
342
|
-
--field-bg: var(--smrt-color-surface-container-highest);
|
|
343
|
-
--field-active: var(--smrt-color-primary);
|
|
343
|
+
--smrt-text-input-field-color: var(--smrt-color-on-surface-variant);
|
|
344
|
+
--smrt-text-input-field-bg: var(--smrt-color-surface-container-highest);
|
|
345
|
+
--smrt-text-input-field-active: var(--smrt-color-primary);
|
|
344
346
|
|
|
345
347
|
display: flex;
|
|
346
348
|
flex-direction: column;
|
|
@@ -352,11 +354,11 @@ function handleInput(e: Event) {
|
|
|
352
354
|
position: relative;
|
|
353
355
|
display: flex;
|
|
354
356
|
align-items: center;
|
|
355
|
-
background-color: var(--smrt-color-surface
|
|
356
|
-
border: 1px solid var(--smrt-color-outline-variant
|
|
357
|
-
border-radius: var(--smrt-radius-small
|
|
357
|
+
background-color: var(--smrt-color-surface);
|
|
358
|
+
border: 1px solid var(--smrt-color-outline-variant);
|
|
359
|
+
border-radius: var(--smrt-radius-small);
|
|
358
360
|
min-height: 40px;
|
|
359
|
-
padding: 0 var(--smrt-spacing-3
|
|
361
|
+
padding: 0 var(--smrt-spacing-3);
|
|
360
362
|
transition: background-color var(--smrt-duration-short3, 200ms) var(--smrt-easing-standard, cubic-bezier(0.2, 0, 0, 1));
|
|
361
363
|
}
|
|
362
364
|
|
|
@@ -378,7 +380,7 @@ function handleInput(e: Event) {
|
|
|
378
380
|
background: transparent;
|
|
379
381
|
font-size: var(--smrt-typography-body-large-size, 1rem);
|
|
380
382
|
line-height: var(--smrt-typography-body-large-line-height, 1.5);
|
|
381
|
-
letter-spacing: var(--smrt-typography-body-large-tracking
|
|
383
|
+
letter-spacing: var(--smrt-typography-body-large-tracking);
|
|
382
384
|
color: var(--smrt-color-on-surface);
|
|
383
385
|
width: 100%;
|
|
384
386
|
padding: 0;
|
|
@@ -393,8 +395,8 @@ function handleInput(e: Event) {
|
|
|
393
395
|
.active-indicator { display: none; }
|
|
394
396
|
|
|
395
397
|
.focused .container {
|
|
396
|
-
border-color: var(--field-active);
|
|
397
|
-
box-shadow: 0 0 0 3px color-mix(in srgb, var(--field-active) 10%, transparent);
|
|
398
|
+
border-color: var(--smrt-text-input-field-active);
|
|
399
|
+
box-shadow: 0 0 0 3px color-mix(in srgb, var(--smrt-text-input-field-active) 10%, transparent);
|
|
398
400
|
}
|
|
399
401
|
|
|
400
402
|
.mic-btn {
|
|
@@ -405,8 +407,8 @@ function handleInput(e: Event) {
|
|
|
405
407
|
justify-content: center;
|
|
406
408
|
border: none;
|
|
407
409
|
background: transparent;
|
|
408
|
-
color: var(--field-color);
|
|
409
|
-
border-radius: var(--smrt-radius-full
|
|
410
|
+
color: var(--smrt-text-input-field-color);
|
|
411
|
+
border-radius: var(--smrt-radius-full);
|
|
410
412
|
cursor: pointer;
|
|
411
413
|
margin-right: -8px;
|
|
412
414
|
transition: all 200ms;
|
|
@@ -418,7 +420,7 @@ function handleInput(e: Event) {
|
|
|
418
420
|
}
|
|
419
421
|
|
|
420
422
|
.supporting-text {
|
|
421
|
-
padding: var(--smrt-spacing-1
|
|
423
|
+
padding: var(--smrt-spacing-1) 0 0;
|
|
422
424
|
font-size: var(--smrt-typography-body-small-size, 0.75rem);
|
|
423
425
|
min-height: 16px;
|
|
424
426
|
}
|
|
@@ -429,8 +431,8 @@ function handleInput(e: Event) {
|
|
|
429
431
|
|
|
430
432
|
/* States */
|
|
431
433
|
.invalid {
|
|
432
|
-
--field-active: var(--smrt-color-error);
|
|
433
|
-
--field-color: var(--smrt-color-error);
|
|
434
|
+
--smrt-text-input-field-active: var(--smrt-color-error);
|
|
435
|
+
--smrt-text-input-field-color: var(--smrt-color-error);
|
|
434
436
|
}
|
|
435
437
|
|
|
436
438
|
.listening {
|
|
@@ -441,4 +443,5 @@ function handleInput(e: Event) {
|
|
|
441
443
|
opacity: 0.38;
|
|
442
444
|
pointer-events: none;
|
|
443
445
|
}
|
|
446
|
+
}
|
|
444
447
|
</style>
|
|
@@ -228,7 +228,7 @@ function handleInput(e: Event) {
|
|
|
228
228
|
class:focused={isFocused}
|
|
229
229
|
class:disabled
|
|
230
230
|
class:has-value={!!value}
|
|
231
|
-
class:listening={isHolding}
|
|
231
|
+
class:listening={isHolding} data-smrt-component="TextareaInput"
|
|
232
232
|
>
|
|
233
233
|
{#if label}
|
|
234
234
|
<FieldLabel id={labelId} for={name} {label} {required} />
|
|
@@ -297,10 +297,12 @@ function handleInput(e: Event) {
|
|
|
297
297
|
</div>
|
|
298
298
|
|
|
299
299
|
<style>
|
|
300
|
+
@layer smrt.reset, smrt.structure, smrt.theme;
|
|
301
|
+
@layer smrt.theme {
|
|
300
302
|
.smrt-text-field {
|
|
301
|
-
--field-color: var(--smrt-color-on-surface-variant);
|
|
302
|
-
--field-bg: var(--smrt-color-surface-container-highest);
|
|
303
|
-
--field-active: var(--smrt-color-primary);
|
|
303
|
+
--smrt-textarea-input-field-color: var(--smrt-color-on-surface-variant);
|
|
304
|
+
--smrt-textarea-input-field-bg: var(--smrt-color-surface-container-highest);
|
|
305
|
+
--smrt-textarea-input-field-active: var(--smrt-color-primary);
|
|
304
306
|
|
|
305
307
|
display: flex;
|
|
306
308
|
flex-direction: column;
|
|
@@ -312,11 +314,11 @@ function handleInput(e: Event) {
|
|
|
312
314
|
position: relative;
|
|
313
315
|
display: flex;
|
|
314
316
|
align-items: flex-start;
|
|
315
|
-
background-color: var(--smrt-color-surface
|
|
316
|
-
border: 1px solid var(--smrt-color-outline-variant
|
|
317
|
-
border-radius: var(--smrt-radius-small
|
|
317
|
+
background-color: var(--smrt-color-surface);
|
|
318
|
+
border: 1px solid var(--smrt-color-outline-variant);
|
|
319
|
+
border-radius: var(--smrt-radius-small);
|
|
318
320
|
min-height: 40px;
|
|
319
|
-
padding: 0 var(--smrt-spacing-3
|
|
321
|
+
padding: 0 var(--smrt-spacing-3);
|
|
320
322
|
transition: background-color var(--smrt-duration-short3, 200ms) var(--smrt-easing-standard, cubic-bezier(0.2, 0, 0, 1));
|
|
321
323
|
}
|
|
322
324
|
|
|
@@ -328,8 +330,8 @@ function handleInput(e: Event) {
|
|
|
328
330
|
flex: 1;
|
|
329
331
|
display: flex;
|
|
330
332
|
flex-direction: column;
|
|
331
|
-
padding-top: var(--smrt-spacing-2
|
|
332
|
-
padding-bottom: var(--smrt-spacing-2
|
|
333
|
+
padding-top: var(--smrt-spacing-2);
|
|
334
|
+
padding-bottom: var(--smrt-spacing-2);
|
|
333
335
|
}
|
|
334
336
|
|
|
335
337
|
|
|
@@ -338,7 +340,7 @@ function handleInput(e: Event) {
|
|
|
338
340
|
background: transparent;
|
|
339
341
|
font-size: var(--smrt-typography-body-large-size, 1rem);
|
|
340
342
|
line-height: var(--smrt-typography-body-large-line-height, 1.5);
|
|
341
|
-
letter-spacing: var(--smrt-typography-body-large-tracking
|
|
343
|
+
letter-spacing: var(--smrt-typography-body-large-tracking);
|
|
342
344
|
color: var(--smrt-color-on-surface);
|
|
343
345
|
width: 100%;
|
|
344
346
|
padding: 0;
|
|
@@ -354,8 +356,8 @@ function handleInput(e: Event) {
|
|
|
354
356
|
.active-indicator { display: none; }
|
|
355
357
|
|
|
356
358
|
.focused .container {
|
|
357
|
-
border-color: var(--field-active);
|
|
358
|
-
box-shadow: 0 0 0 3px color-mix(in srgb, var(--field-active) 10%, transparent);
|
|
359
|
+
border-color: var(--smrt-textarea-input-field-active);
|
|
360
|
+
box-shadow: 0 0 0 3px color-mix(in srgb, var(--smrt-textarea-input-field-active) 10%, transparent);
|
|
359
361
|
}
|
|
360
362
|
|
|
361
363
|
.mic-btn {
|
|
@@ -366,11 +368,11 @@ function handleInput(e: Event) {
|
|
|
366
368
|
justify-content: center;
|
|
367
369
|
border: none;
|
|
368
370
|
background: transparent;
|
|
369
|
-
color: var(--field-color);
|
|
370
|
-
border-radius: var(--smrt-radius-full
|
|
371
|
+
color: var(--smrt-textarea-input-field-color);
|
|
372
|
+
border-radius: var(--smrt-radius-full);
|
|
371
373
|
cursor: pointer;
|
|
372
374
|
margin-right: -8px;
|
|
373
|
-
margin-top: var(--smrt-spacing-2
|
|
375
|
+
margin-top: var(--smrt-spacing-2);
|
|
374
376
|
transition: all 200ms;
|
|
375
377
|
}
|
|
376
378
|
|
|
@@ -380,7 +382,7 @@ function handleInput(e: Event) {
|
|
|
380
382
|
}
|
|
381
383
|
|
|
382
384
|
.supporting-text {
|
|
383
|
-
padding: var(--smrt-spacing-1
|
|
385
|
+
padding: var(--smrt-spacing-1) 0 0;
|
|
384
386
|
font-size: var(--smrt-typography-body-small-size, 0.75rem);
|
|
385
387
|
min-height: 16px;
|
|
386
388
|
}
|
|
@@ -399,6 +401,7 @@ function handleInput(e: Event) {
|
|
|
399
401
|
}
|
|
400
402
|
|
|
401
403
|
.smrt-mode {
|
|
402
|
-
--field-active: var(--smrt-color-tertiary);
|
|
404
|
+
--smrt-textarea-input-field-active: var(--smrt-color-tertiary);
|
|
403
405
|
}
|
|
406
|
+
}
|
|
404
407
|
</style>
|
|
@@ -319,7 +319,7 @@ async function startExport() {
|
|
|
319
319
|
}
|
|
320
320
|
</script>
|
|
321
321
|
|
|
322
|
-
<section class="smrt-import-export" aria-label={collectionLabel ? `${t(M['ui.importExport.label'])}: ${collectionLabel}` : t(M['ui.importExport.label'])}>
|
|
322
|
+
<section class="smrt-import-export" aria-label={collectionLabel ? `${t(M['ui.importExport.label'])}: ${collectionLabel}` : t(M['ui.importExport.label'])} data-smrt-component="ImportExport">
|
|
323
323
|
{#if canImport && canExport}
|
|
324
324
|
<SegmentedControl
|
|
325
325
|
label={t(M['ui.importExport.mode'])}
|
|
@@ -637,6 +637,8 @@ async function startExport() {
|
|
|
637
637
|
</section>
|
|
638
638
|
|
|
639
639
|
<style>
|
|
640
|
+
@layer smrt.reset, smrt.structure, smrt.theme;
|
|
641
|
+
@layer smrt.theme {
|
|
640
642
|
.smrt-import-export {
|
|
641
643
|
display: flex;
|
|
642
644
|
flex-direction: column;
|
|
@@ -675,4 +677,5 @@ async function startExport() {
|
|
|
675
677
|
padding: 0;
|
|
676
678
|
margin: 0;
|
|
677
679
|
}
|
|
680
|
+
}
|
|
678
681
|
</style>
|
|
@@ -56,7 +56,7 @@ const slotMeta = $derived(moduleMeta?.uiSlots?.[slotId]);
|
|
|
56
56
|
class={className}
|
|
57
57
|
/>
|
|
58
58
|
{:else}
|
|
59
|
-
<div class="module-panel-placeholder {className}">
|
|
59
|
+
<div class="module-panel-placeholder {className}" data-smrt-component="ModulePanel">
|
|
60
60
|
<div class="module-panel-placeholder__icon">
|
|
61
61
|
<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
|
62
62
|
<path d="M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z"/>
|
|
@@ -85,6 +85,8 @@ const slotMeta = $derived(moduleMeta?.uiSlots?.[slotId]);
|
|
|
85
85
|
{/if}
|
|
86
86
|
|
|
87
87
|
<style>
|
|
88
|
+
@layer smrt.reset, smrt.structure, smrt.theme;
|
|
89
|
+
@layer smrt.theme {
|
|
88
90
|
.module-panel-placeholder {
|
|
89
91
|
display: flex;
|
|
90
92
|
flex-direction: column;
|
|
@@ -92,15 +94,15 @@ const slotMeta = $derived(moduleMeta?.uiSlots?.[slotId]);
|
|
|
92
94
|
justify-content: center;
|
|
93
95
|
padding: 2rem;
|
|
94
96
|
text-align: center;
|
|
95
|
-
background: var(--smrt-color-surface-container-low
|
|
96
|
-
border: 1px dashed var(--smrt-color-outline-variant
|
|
97
|
-
border-radius: var(--smrt-radius-medium
|
|
97
|
+
background: var(--smrt-color-surface-container-low);
|
|
98
|
+
border: 1px dashed var(--smrt-color-outline-variant);
|
|
99
|
+
border-radius: var(--smrt-radius-medium);
|
|
98
100
|
min-height: 150px;
|
|
99
101
|
gap: 0.75rem;
|
|
100
102
|
}
|
|
101
103
|
|
|
102
104
|
.module-panel-placeholder__icon {
|
|
103
|
-
color: var(--smrt-color-on-surface-variant
|
|
105
|
+
color: var(--smrt-color-on-surface-variant);
|
|
104
106
|
opacity: 0.6;
|
|
105
107
|
}
|
|
106
108
|
|
|
@@ -108,27 +110,28 @@ const slotMeta = $derived(moduleMeta?.uiSlots?.[slotId]);
|
|
|
108
110
|
margin: 0;
|
|
109
111
|
font-size: var(--smrt-typography-title-medium-size, 1rem);
|
|
110
112
|
font-weight: var(--smrt-typography-weight-semibold, 600);
|
|
111
|
-
color: var(--smrt-color-on-surface
|
|
113
|
+
color: var(--smrt-color-on-surface);
|
|
112
114
|
}
|
|
113
115
|
|
|
114
116
|
.module-panel-placeholder__code {
|
|
115
117
|
font-family: var(--smrt-font-family-mono, 'SF Mono', 'Monaco', 'Consolas', monospace);
|
|
116
118
|
font-size: var(--smrt-typography-body-medium-size, 0.875rem);
|
|
117
119
|
padding: var(--smrt-spacing-1, 0.25rem) var(--smrt-spacing-2, 0.5rem);
|
|
118
|
-
background: var(--smrt-color-surface-container-high
|
|
119
|
-
border-radius: var(--smrt-radius-small
|
|
120
|
-
color: var(--smrt-color-on-surface-variant
|
|
120
|
+
background: var(--smrt-color-surface-container-high);
|
|
121
|
+
border-radius: var(--smrt-radius-small);
|
|
122
|
+
color: var(--smrt-color-on-surface-variant);
|
|
121
123
|
}
|
|
122
124
|
|
|
123
125
|
.module-panel-placeholder__hint {
|
|
124
126
|
margin: 0;
|
|
125
127
|
font-size: var(--smrt-typography-body-medium-size, 0.875rem);
|
|
126
|
-
color: var(--smrt-color-on-surface-variant
|
|
128
|
+
color: var(--smrt-color-on-surface-variant);
|
|
127
129
|
}
|
|
128
130
|
|
|
129
131
|
.module-panel-placeholder__meta {
|
|
130
132
|
margin: 0;
|
|
131
133
|
font-size: var(--smrt-typography-body-small-size, 0.75rem);
|
|
132
|
-
color: var(--smrt-color-on-surface-variant
|
|
134
|
+
color: var(--smrt-color-on-surface-variant);
|
|
133
135
|
}
|
|
136
|
+
}
|
|
134
137
|
</style>
|
|
@@ -106,7 +106,7 @@ $effect(() => {
|
|
|
106
106
|
});
|
|
107
107
|
</script>
|
|
108
108
|
|
|
109
|
-
<div class="smrt-notification-bell">
|
|
109
|
+
<div class="smrt-notification-bell" data-smrt-component="NotificationBell">
|
|
110
110
|
<Button id={`${instanceId}-trigger`} aria-controls={`${instanceId}-panel`} variant="ghost" aria-haspopup="dialog" aria-expanded={open} onclick={() => (open = !open)}>
|
|
111
111
|
{heading}{#if unread > 0}<span aria-label={t(M['ui.notification_bell.unread'], { count: unread })}> ({unread})</span>{/if}
|
|
112
112
|
</Button>
|
|
@@ -126,6 +126,8 @@ $effect(() => {
|
|
|
126
126
|
</div>
|
|
127
127
|
|
|
128
128
|
<style>
|
|
129
|
+
@layer smrt.reset, smrt.structure, smrt.theme;
|
|
130
|
+
@layer smrt.theme {
|
|
129
131
|
.smrt-notification-bell { position: relative; }
|
|
130
132
|
.smrt-notification-bell__panel { position: absolute; z-index: 1; inset-block-start: 100%; inset-inline-end: 0; inline-size: min(24rem, 90vw); padding: var(--smrt-spacing-3); background: var(--smrt-color-surface); border: 1px solid var(--smrt-color-outline); border-radius: var(--smrt-radius-medium); }
|
|
131
133
|
header { display: flex; justify-content: space-between; gap: var(--smrt-spacing-2); }
|
|
@@ -133,4 +135,5 @@ $effect(() => {
|
|
|
133
135
|
li { padding-block: var(--smrt-spacing-2); border-block-end: 1px solid var(--smrt-color-outline-variant); }
|
|
134
136
|
li[data-read='false'] { border-inline-start: 3px solid var(--smrt-color-primary); padding-inline-start: var(--smrt-spacing-2); }
|
|
135
137
|
p { overflow-wrap: anywhere; }
|
|
138
|
+
}
|
|
136
139
|
</style>
|