@motion-proto/live-tokens 0.1.1 → 0.3.2
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 +168 -21
- package/dist-plugin/index.cjs +823 -336
- package/dist-plugin/index.d.cts +9 -7
- package/dist-plugin/index.d.ts +9 -7
- package/dist-plugin/index.js +822 -335
- package/package.json +46 -20
- package/src/assets/newspaper.webp +0 -0
- package/src/assets/offering.webp +0 -0
- package/src/component-editor/BadgeEditor.svelte +170 -0
- package/src/component-editor/CalloutEditor.svelte +103 -0
- package/src/component-editor/CardEditor.svelte +184 -0
- package/src/component-editor/CollapsibleSectionEditor.svelte +167 -0
- package/src/component-editor/CornerBadgeEditor.svelte +207 -0
- package/src/component-editor/DialogEditor.svelte +172 -0
- package/src/component-editor/ImageEditor.svelte +72 -0
- package/src/component-editor/InlineEditActionsEditor.svelte +83 -0
- package/src/component-editor/NotificationEditor.svelte +160 -0
- package/src/component-editor/ProgressBarEditor.svelte +124 -0
- package/src/component-editor/RadioButtonEditor.svelte +140 -0
- package/src/component-editor/SectionDividerEditor.svelte +263 -0
- package/src/component-editor/SegmentedControlEditor.svelte +154 -0
- package/src/component-editor/StandardButtonsEditor.svelte +178 -0
- package/src/component-editor/TabBarEditor.svelte +137 -0
- package/src/component-editor/TableEditor.svelte +128 -0
- package/src/component-editor/TooltipEditor.svelte +122 -0
- package/src/component-editor/editorTokens.test.ts +93 -0
- package/src/component-editor/groupKeySlots.test.ts +67 -0
- package/src/component-editor/groupKeySnapshot.test.ts +52 -0
- package/src/component-editor/index.ts +5 -0
- package/src/component-editor/registry.ts +246 -0
- package/src/component-editor/scaffolding/AngleDial.svelte +185 -0
- package/src/component-editor/scaffolding/ComponentEditorBase.svelte +96 -0
- package/src/component-editor/scaffolding/ComponentFileManager.svelte +682 -0
- package/src/component-editor/scaffolding/ComponentFileMenu.svelte +312 -0
- package/src/component-editor/scaffolding/ComponentsTab.svelte +69 -0
- package/src/component-editor/scaffolding/CopyFromMenu.svelte +246 -0
- package/src/component-editor/scaffolding/DemoHeader.svelte +21 -0
- package/src/component-editor/scaffolding/DividerEditor.svelte +81 -0
- package/src/component-editor/scaffolding/FieldsetWrapper.svelte +46 -0
- package/src/component-editor/scaffolding/GradientCard.svelte +291 -0
- package/src/component-editor/scaffolding/LinkageChart.svelte +297 -0
- package/src/component-editor/scaffolding/LinkedBlock.svelte +418 -0
- package/src/component-editor/scaffolding/NonStylableConfig.svelte +57 -0
- package/src/component-editor/scaffolding/SaveAsDialog.svelte +177 -0
- package/src/component-editor/scaffolding/ShadowBackdrop.svelte +25 -0
- package/src/component-editor/scaffolding/ShadowBackdropControls.svelte +56 -0
- package/src/component-editor/scaffolding/StateBlock.svelte +115 -0
- package/src/component-editor/scaffolding/TokenLayout.svelte +511 -0
- package/src/component-editor/scaffolding/TypeEditor.svelte +82 -0
- package/src/component-editor/scaffolding/VariantGroup.svelte +277 -0
- package/src/component-editor/scaffolding/buildTypeGroupTokens.ts +97 -0
- package/src/component-editor/scaffolding/componentSectionType.ts +8 -0
- package/src/component-editor/scaffolding/componentSources.ts +9 -0
- package/src/component-editor/scaffolding/defaultSections.ts +16 -0
- package/src/component-editor/scaffolding/editorContext.ts +44 -0
- package/src/component-editor/scaffolding/linkedBlock.ts +226 -0
- package/src/component-editor/scaffolding/siblings.ts +33 -0
- package/src/component-editor/scaffolding/types.ts +39 -0
- package/src/components/Badge.svelte +231 -42
- package/src/components/Button.svelte +324 -124
- package/src/components/Callout.svelte +145 -0
- package/src/components/Card.svelte +123 -25
- package/src/components/CollapsibleSection.svelte +213 -35
- package/src/components/CornerBadge.svelte +224 -0
- package/src/components/Dialog.svelte +137 -114
- package/src/components/Image.svelte +43 -0
- package/src/components/InlineEditActions.svelte +74 -14
- package/src/components/Notification.svelte +184 -163
- package/src/components/ProgressBar.svelte +216 -22
- package/src/components/RadioButton.svelte +110 -40
- package/src/components/SectionDivider.svelte +428 -74
- package/src/components/SegmentedControl.svelte +203 -0
- package/src/components/TabBar.svelte +146 -21
- package/src/components/Table.svelte +102 -0
- package/src/components/Tooltip.svelte +45 -19
- package/src/components/types.ts +51 -0
- package/src/data/google-fonts.json +75 -0
- package/src/lib/ColumnsOverlay.svelte +20 -7
- package/src/lib/LiveEditorOverlay.svelte +257 -78
- package/src/lib/columnsOverlay.ts +21 -17
- package/src/lib/componentConfig.test.ts +204 -0
- package/src/lib/componentConfigKeys.ts +19 -0
- package/src/lib/componentConfigService.ts +88 -0
- package/src/lib/copyPopover.ts +30 -0
- package/src/lib/cssVarSync.ts +59 -7
- package/src/lib/editorConfigStore.ts +0 -10
- package/src/lib/editorCore.ts +402 -0
- package/src/lib/editorKeybindings.ts +52 -0
- package/src/lib/editorPersistence.ts +106 -0
- package/src/lib/editorRenderer.ts +74 -0
- package/src/lib/editorStore.test.ts +328 -0
- package/src/lib/editorStore.ts +412 -0
- package/src/lib/editorTypes.ts +100 -0
- package/src/lib/editorViewStore.ts +55 -0
- package/src/lib/files/versionedFileResource.ts +140 -0
- package/src/lib/fontLoader.ts +130 -0
- package/src/lib/fontMigration.ts +140 -0
- package/src/lib/fontParse.ts +168 -0
- package/src/lib/index.ts +48 -30
- package/src/lib/lazyConfig.test.ts +54 -0
- package/src/lib/migrations/2026-04-24-component-prefix-and-suffix-renames.ts +64 -0
- package/src/lib/migrations/2026-04-24-legacy-keys-and-bg-to-canvas.ts +71 -0
- package/src/lib/migrations/2026-04-27-segmentedcontrol-disabled-flatten.ts +43 -0
- package/src/lib/migrations/2026-05-08-collapsiblesection-frame-and-cleanup.ts +68 -0
- package/src/lib/migrations/2026-05-08-collapsiblesection-variant-namespace.ts +35 -0
- package/src/lib/migrations/2026-05-10-sectiondivider-gradient-stops.ts +50 -0
- package/src/lib/migrations/2026-05-13-primary-to-brand.ts +90 -0
- package/src/lib/migrations/index.ts +93 -0
- package/src/lib/migrations/migrations.test.ts +341 -0
- package/src/lib/navLinkTypes.ts +1 -0
- package/src/lib/overlayState.ts +3 -0
- package/src/lib/paletteDerivation.ts +300 -0
- package/src/lib/parentRouteStore.ts +42 -0
- package/src/lib/parsers/globalRootBlock.ts +32 -0
- package/src/lib/presetService.ts +94 -0
- package/src/lib/router.ts +42 -10
- package/src/lib/scrollSection.ts +45 -0
- package/src/lib/slices/columns.ts +59 -0
- package/src/lib/slices/components.ts +362 -0
- package/src/lib/slices/domainVars.ts +15 -0
- package/src/lib/slices/fonts.ts +30 -0
- package/src/lib/slices/gradients.ts +153 -0
- package/src/lib/slices/overlays.ts +132 -0
- package/src/lib/slices/palettes.ts +26 -0
- package/src/lib/slices/shadows.ts +123 -0
- package/src/lib/storage.ts +88 -0
- package/src/lib/themeInit.ts +74 -0
- package/src/lib/themeService.ts +101 -0
- package/src/lib/themeTypes.ts +146 -0
- package/src/lib/tokenRegistry.ts +148 -0
- package/src/pages/ComponentEditorPage.svelte +384 -0
- package/src/pages/ComponentEditorPage.svelte.d.ts +2 -0
- package/src/pages/Editor.svelte +98 -0
- package/src/pages/Editor.svelte.d.ts +2 -0
- package/src/pages/EditorShell.svelte +348 -0
- package/src/styles/_padding.scss +34 -0
- package/src/styles/fonts/Fraunces/Fraunces-italic-latin-ext.woff2 +0 -0
- package/src/styles/fonts/Fraunces/Fraunces-italic-latin.woff2 +0 -0
- package/src/styles/fonts/Fraunces/Fraunces-roman-latin-ext.woff2 +0 -0
- package/src/styles/fonts/Fraunces/Fraunces-roman-latin.woff2 +0 -0
- package/src/styles/fonts/Manrope/Manrope-latin-ext.woff2 +0 -0
- package/src/styles/fonts/Manrope/Manrope-latin.woff2 +0 -0
- package/src/styles/fonts.css +22 -10
- package/src/styles/form-controls.css +14 -16
- package/src/styles/tokens.css +1322 -0
- package/src/styles/ui-editor.css +126 -0
- package/src/{showcase → ui}/BezierCurveEditor.svelte +14 -14
- package/src/{showcase → ui}/ColorEditPanel.svelte +42 -36
- package/src/ui/EditorViewSwitcher.svelte +180 -0
- package/src/ui/FontStackEditor.svelte +360 -0
- package/src/ui/GradientEditor.svelte +461 -0
- package/src/ui/GradientStopPicker.svelte +74 -0
- package/src/ui/PaletteEditor.svelte +1590 -0
- package/src/ui/PaletteEditor.test.ts +108 -0
- package/src/ui/PresetFileManager.svelte +567 -0
- package/src/ui/ProjectFontsSection.svelte +645 -0
- package/src/{showcase → ui}/SurfacesTab.svelte +39 -39
- package/src/{showcase → ui}/TextTab.svelte +27 -27
- package/src/{showcase/TokenFileManager.svelte → ui/ThemeFileManager.svelte} +196 -112
- package/src/ui/Toggle.svelte +108 -0
- package/src/ui/UICopyPopover.svelte +78 -0
- package/src/{showcase/EditorDialog.svelte → ui/UIDialog.svelte} +66 -25
- package/src/ui/UIFontFamilySelector.svelte +309 -0
- package/src/ui/UIFontSizeSelector.svelte +165 -0
- package/src/ui/UIFontWeightSelector.svelte +52 -0
- package/src/ui/UILineHeightSelector.svelte +47 -0
- package/src/ui/UILinkToggle.svelte +60 -0
- package/src/ui/UIOptionItem.svelte +74 -0
- package/src/ui/UIOptionList.svelte +27 -0
- package/src/ui/UIPaddingSelector.svelte +661 -0
- package/src/ui/UIPaletteSelector.svelte +1084 -0
- package/src/ui/UIRadio.svelte +72 -0
- package/src/ui/UIRadioGroup.svelte +59 -0
- package/src/ui/UIRelinkConfirmPopover.svelte +235 -0
- package/src/ui/UITokenSelector.svelte +509 -0
- package/src/ui/UIVariantSelector.svelte +145 -0
- package/src/ui/VariablesTab.svelte +252 -0
- package/src/ui/index.ts +31 -0
- package/src/ui/keepInViewport.ts +84 -0
- package/src/ui/palette/GradientStopEditor.svelte +482 -0
- package/src/ui/palette/OverridesPanel.svelte +526 -0
- package/src/ui/palette/PaletteBase.svelte +165 -0
- package/src/ui/palette/ScaleCurveEditor.svelte +38 -0
- package/src/ui/palette/paletteEditorState.ts +89 -0
- package/src/ui/sections/ColumnsSection.svelte +273 -0
- package/src/ui/sections/GradientsSection.svelte +147 -0
- package/src/ui/sections/OverlaysSection.svelte +670 -0
- package/src/ui/sections/ShadowsSection.svelte +1250 -0
- package/src/ui/sections/TokenScaleTable.svelte +332 -0
- package/src/ui/sections/tokenScales.ts +81 -0
- package/src/ui/variantScales.ts +108 -0
- package/src/components/DetailNav.svelte +0 -78
- package/src/components/Toggle.svelte +0 -86
- package/src/lib/tokenInit.ts +0 -29
- package/src/lib/tokenService.ts +0 -144
- package/src/lib/tokenTypes.ts +0 -45
- package/src/pages/Admin.svelte +0 -100
- package/src/pages/ShowcasePage.svelte +0 -144
- package/src/showcase/BackupBrowser.svelte +0 -617
- package/src/showcase/ComponentsTab.svelte +0 -105
- package/src/showcase/PaletteEditor.svelte +0 -2579
- package/src/showcase/PaletteSelector.svelte +0 -627
- package/src/showcase/TokenMap.svelte +0 -54
- package/src/showcase/VariablesTab.svelte +0 -2655
- package/src/showcase/VisualsTab.svelte +0 -231
- package/src/showcase/demos/BadgeDemo.svelte +0 -56
- package/src/showcase/demos/CardDemo.svelte +0 -50
- package/src/showcase/demos/ChoiceButtonsDemo.svelte +0 -192
- package/src/showcase/demos/CollapsibleSectionDemo.svelte +0 -54
- package/src/showcase/demos/DialogDemo.svelte +0 -42
- package/src/showcase/demos/InlineEditActionsDemo.svelte +0 -25
- package/src/showcase/demos/NotificationDemo.svelte +0 -147
- package/src/showcase/demos/ProgressBarDemo.svelte +0 -54
- package/src/showcase/demos/RadioButtonDemo.svelte +0 -56
- package/src/showcase/demos/SectionDividerDemo.svelte +0 -77
- package/src/showcase/demos/StandardButtonsDemo.svelte +0 -455
- package/src/showcase/demos/TabBarDemo.svelte +0 -58
- package/src/showcase/demos/TooltipDemo.svelte +0 -52
- package/src/showcase/editor.css +0 -93
- package/src/showcase/index.ts +0 -17
- package/src/styles/fonts/Domine/Domine-VariableFont_wght.ttf +0 -0
- package/src/styles/fonts/Domine/OFL.txt +0 -97
- package/src/styles/fonts/Domine/README.txt +0 -66
- /package/src/{showcase → ui}/curveEngine.ts +0 -0
|
@@ -1,147 +0,0 @@
|
|
|
1
|
-
<script lang="ts">
|
|
2
|
-
import Notification from '../../components/Notification.svelte';
|
|
3
|
-
import TokenMap from '../TokenMap.svelte';
|
|
4
|
-
</script>
|
|
5
|
-
|
|
6
|
-
<div class="demo-block">
|
|
7
|
-
<h2 class="component-title">Notification Components</h2>
|
|
8
|
-
<p class="demo-description">
|
|
9
|
-
Contextual feedback notifications with multiple variants. Import from <code>components/Notification.svelte</code>
|
|
10
|
-
</p>
|
|
11
|
-
|
|
12
|
-
<div class="demo-section">
|
|
13
|
-
<h3 class="demo-subtitle">Variants</h3>
|
|
14
|
-
<div class="notification-showcase">
|
|
15
|
-
<Notification
|
|
16
|
-
variant="info"
|
|
17
|
-
title="Information"
|
|
18
|
-
description="This is an informational message to keep you updated."
|
|
19
|
-
/>
|
|
20
|
-
|
|
21
|
-
<Notification
|
|
22
|
-
variant="success"
|
|
23
|
-
title="Success"
|
|
24
|
-
description="Your action was completed successfully."
|
|
25
|
-
/>
|
|
26
|
-
|
|
27
|
-
<Notification
|
|
28
|
-
variant="warning"
|
|
29
|
-
title="Warning"
|
|
30
|
-
description="Caution: This action may have unintended consequences."
|
|
31
|
-
/>
|
|
32
|
-
|
|
33
|
-
<Notification
|
|
34
|
-
variant="danger"
|
|
35
|
-
title="Danger"
|
|
36
|
-
description="Critical error: Please address this issue immediately."
|
|
37
|
-
/>
|
|
38
|
-
</div>
|
|
39
|
-
</div>
|
|
40
|
-
|
|
41
|
-
<div class="demo-section">
|
|
42
|
-
<h3 class="demo-subtitle">With Impact Text</h3>
|
|
43
|
-
<div class="notification-showcase">
|
|
44
|
-
<Notification
|
|
45
|
-
variant="warning"
|
|
46
|
-
title="Food Shortage"
|
|
47
|
-
description="Your kingdom is running low on food supplies."
|
|
48
|
-
impact="-2 to Economy until resolved"
|
|
49
|
-
/>
|
|
50
|
-
</div>
|
|
51
|
-
</div>
|
|
52
|
-
|
|
53
|
-
<div class="demo-section">
|
|
54
|
-
<h3 class="demo-subtitle">With Action Button</h3>
|
|
55
|
-
<div class="notification-showcase">
|
|
56
|
-
<Notification
|
|
57
|
-
variant="info"
|
|
58
|
-
title="Settlement Unmapped"
|
|
59
|
-
description="This settlement has not been placed on the map yet."
|
|
60
|
-
actionText="Place on Map"
|
|
61
|
-
actionIcon="fas fa-map-marker-alt"
|
|
62
|
-
onAction={() => {}}
|
|
63
|
-
/>
|
|
64
|
-
|
|
65
|
-
<Notification
|
|
66
|
-
variant="success"
|
|
67
|
-
title="Trade Agreement Available"
|
|
68
|
-
description="A neighboring faction has offered a trade deal."
|
|
69
|
-
actionText="View Details"
|
|
70
|
-
actionIcon="fas fa-handshake"
|
|
71
|
-
onAction={() => {}}
|
|
72
|
-
actionInline={true}
|
|
73
|
-
/>
|
|
74
|
-
</div>
|
|
75
|
-
</div>
|
|
76
|
-
|
|
77
|
-
<div class="demo-section">
|
|
78
|
-
<h3 class="demo-subtitle">Compact Size & Emphasis</h3>
|
|
79
|
-
<div class="notification-showcase">
|
|
80
|
-
<Notification
|
|
81
|
-
variant="info"
|
|
82
|
-
title="Compact Notification"
|
|
83
|
-
description="A smaller notification for tighter spaces."
|
|
84
|
-
size="compact"
|
|
85
|
-
/>
|
|
86
|
-
|
|
87
|
-
<Notification
|
|
88
|
-
variant="danger"
|
|
89
|
-
title="Emphasized Alert"
|
|
90
|
-
description="Important notifications can have emphasis styling."
|
|
91
|
-
emphasis={true}
|
|
92
|
-
/>
|
|
93
|
-
</div>
|
|
94
|
-
</div>
|
|
95
|
-
|
|
96
|
-
<div class="demo-section">
|
|
97
|
-
<h3 class="demo-subtitle">Dismissible</h3>
|
|
98
|
-
<div class="notification-showcase">
|
|
99
|
-
<Notification
|
|
100
|
-
variant="success"
|
|
101
|
-
title="Dismissible Notification"
|
|
102
|
-
description="Click the X to dismiss this notification."
|
|
103
|
-
dismissible={true}
|
|
104
|
-
/>
|
|
105
|
-
</div>
|
|
106
|
-
</div>
|
|
107
|
-
|
|
108
|
-
<div class="demo-section">
|
|
109
|
-
<h3 class="demo-subtitle">Tokens</h3>
|
|
110
|
-
<div class="token-sections">
|
|
111
|
-
<TokenMap title="info" tokens={[
|
|
112
|
-
{ label: 'Header BG', variable: '--surface-info-low' },
|
|
113
|
-
{ label: 'Border', variable: '--border-info' },
|
|
114
|
-
{ label: 'Icon', variable: '--text-info' },
|
|
115
|
-
]} />
|
|
116
|
-
<TokenMap title="success" tokens={[
|
|
117
|
-
{ label: 'Header BG', variable: '--surface-success' },
|
|
118
|
-
{ label: 'Border', variable: '--border-success' },
|
|
119
|
-
{ label: 'Icon', variable: '--text-success' },
|
|
120
|
-
]} />
|
|
121
|
-
<TokenMap title="warning" tokens={[
|
|
122
|
-
{ label: 'Header BG', variable: '--surface-warning' },
|
|
123
|
-
{ label: 'Border', variable: '--border-warning' },
|
|
124
|
-
{ label: 'Icon', variable: '--text-warning' },
|
|
125
|
-
]} />
|
|
126
|
-
<TokenMap title="danger" tokens={[
|
|
127
|
-
{ label: 'Header BG', variable: '--surface-primary' },
|
|
128
|
-
{ label: 'Border', variable: '--border-danger' },
|
|
129
|
-
{ label: 'Icon', variable: '--text-danger' },
|
|
130
|
-
]} />
|
|
131
|
-
</div>
|
|
132
|
-
</div>
|
|
133
|
-
</div>
|
|
134
|
-
|
|
135
|
-
<style>
|
|
136
|
-
.notification-showcase {
|
|
137
|
-
display: flex;
|
|
138
|
-
flex-direction: column;
|
|
139
|
-
gap: var(--space-16);
|
|
140
|
-
}
|
|
141
|
-
|
|
142
|
-
.token-sections {
|
|
143
|
-
display: flex;
|
|
144
|
-
flex-direction: column;
|
|
145
|
-
gap: var(--space-16);
|
|
146
|
-
}
|
|
147
|
-
</style>
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
<script lang="ts">
|
|
2
|
-
import ProgressBar from '../../components/ProgressBar.svelte';
|
|
3
|
-
import TokenMap from '../TokenMap.svelte';
|
|
4
|
-
</script>
|
|
5
|
-
|
|
6
|
-
<div class="demo-block">
|
|
7
|
-
<h2 class="component-title">Progress Bar Component</h2>
|
|
8
|
-
<p class="demo-description">
|
|
9
|
-
Animated progress bar with variants. Import from <code>components/ProgressBar.svelte</code>
|
|
10
|
-
</p>
|
|
11
|
-
|
|
12
|
-
<div class="demo-section">
|
|
13
|
-
<div class="progress-demo-stack">
|
|
14
|
-
<ProgressBar value={25} label="Getting Started" variant="primary" />
|
|
15
|
-
<ProgressBar value={50} label="Halfway There" variant="info" />
|
|
16
|
-
<ProgressBar value={75} label="Almost Done" variant="warning" />
|
|
17
|
-
<ProgressBar value={100} label="Complete" variant="success" />
|
|
18
|
-
<ProgressBar value={33} label="Danger Zone" variant="danger" />
|
|
19
|
-
<ProgressBar value={60} variant="primary" size="compact" />
|
|
20
|
-
</div>
|
|
21
|
-
</div>
|
|
22
|
-
|
|
23
|
-
<div class="demo-section">
|
|
24
|
-
<h3 class="demo-subtitle">Tokens</h3>
|
|
25
|
-
<div class="token-sections">
|
|
26
|
-
<TokenMap title="track" tokens={[
|
|
27
|
-
{ label: 'Background', variable: '--surface-neutral-low' },
|
|
28
|
-
{ label: 'Border', variable: '--border-neutral-faint' },
|
|
29
|
-
{ label: 'Label', variable: '--text-secondary' },
|
|
30
|
-
]} />
|
|
31
|
-
<TokenMap title="fill colors" tokens={[
|
|
32
|
-
{ label: 'Success', variable: '--border-success' },
|
|
33
|
-
{ label: 'Warning', variable: '--border-warning' },
|
|
34
|
-
{ label: 'Danger', variable: '--border-danger' },
|
|
35
|
-
{ label: 'Info', variable: '--border-info' },
|
|
36
|
-
]} />
|
|
37
|
-
</div>
|
|
38
|
-
</div>
|
|
39
|
-
</div>
|
|
40
|
-
|
|
41
|
-
<style>
|
|
42
|
-
.progress-demo-stack {
|
|
43
|
-
display: flex;
|
|
44
|
-
flex-direction: column;
|
|
45
|
-
gap: var(--space-16);
|
|
46
|
-
max-width: 400px;
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
.token-sections {
|
|
50
|
-
display: flex;
|
|
51
|
-
flex-direction: column;
|
|
52
|
-
gap: var(--space-16);
|
|
53
|
-
}
|
|
54
|
-
</style>
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
<script lang="ts">
|
|
2
|
-
import RadioButton from '../../components/RadioButton.svelte';
|
|
3
|
-
import TokenMap from '../TokenMap.svelte';
|
|
4
|
-
|
|
5
|
-
let selectedRadio = 'option-b';
|
|
6
|
-
</script>
|
|
7
|
-
|
|
8
|
-
<div class="demo-block">
|
|
9
|
-
<h2 class="component-title">Radio Button Component</h2>
|
|
10
|
-
<p class="demo-description">
|
|
11
|
-
Styled radio buttons with icon and color support. Import from <code>components/RadioButton.svelte</code>
|
|
12
|
-
</p>
|
|
13
|
-
|
|
14
|
-
<div class="demo-section">
|
|
15
|
-
<div class="radio-demo-row">
|
|
16
|
-
<RadioButton
|
|
17
|
-
icon="fas fa-shield-alt"
|
|
18
|
-
label="Defense"
|
|
19
|
-
color="var(--text-info)"
|
|
20
|
-
active={selectedRadio === 'option-a'}
|
|
21
|
-
on:click={() => selectedRadio = 'option-a'}
|
|
22
|
-
/>
|
|
23
|
-
<RadioButton
|
|
24
|
-
icon="fas fa-coins"
|
|
25
|
-
label="Economy"
|
|
26
|
-
color="var(--text-accent)"
|
|
27
|
-
active={selectedRadio === 'option-b'}
|
|
28
|
-
on:click={() => selectedRadio = 'option-b'}
|
|
29
|
-
/>
|
|
30
|
-
<RadioButton
|
|
31
|
-
icon="fas fa-users"
|
|
32
|
-
label="Loyalty"
|
|
33
|
-
color="var(--text-success)"
|
|
34
|
-
active={selectedRadio === 'option-c'}
|
|
35
|
-
on:click={() => selectedRadio = 'option-c'}
|
|
36
|
-
/>
|
|
37
|
-
</div>
|
|
38
|
-
</div>
|
|
39
|
-
|
|
40
|
-
<div class="demo-section">
|
|
41
|
-
<h3 class="demo-subtitle">Tokens</h3>
|
|
42
|
-
<TokenMap tokens={[
|
|
43
|
-
{ label: 'Dot Border', variable: '--border-neutral-default' },
|
|
44
|
-
{ label: 'Label', variable: '--text-primary' },
|
|
45
|
-
{ label: 'Surface', variable: '--surface-neutral-lowest' },
|
|
46
|
-
]} />
|
|
47
|
-
</div>
|
|
48
|
-
</div>
|
|
49
|
-
|
|
50
|
-
<style>
|
|
51
|
-
.radio-demo-row {
|
|
52
|
-
display: flex;
|
|
53
|
-
gap: var(--space-16);
|
|
54
|
-
flex-wrap: wrap;
|
|
55
|
-
}
|
|
56
|
-
</style>
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
<script lang="ts">
|
|
2
|
-
import SectionDivider from '../../components/SectionDivider.svelte';
|
|
3
|
-
import TokenMap from '../TokenMap.svelte';
|
|
4
|
-
|
|
5
|
-
const dividerVariants: { variant: 'bg' | 'neutral' | 'alternate' | 'primary' | 'accent' | 'special'; label: string }[] = [
|
|
6
|
-
{ variant: 'bg', label: 'Background' },
|
|
7
|
-
{ variant: 'neutral', label: 'Neutral' },
|
|
8
|
-
{ variant: 'alternate', label: 'Alternate' },
|
|
9
|
-
{ variant: 'primary', label: 'Primary' },
|
|
10
|
-
{ variant: 'accent', label: 'Accent' },
|
|
11
|
-
{ variant: 'special', label: 'Special' },
|
|
12
|
-
];
|
|
13
|
-
</script>
|
|
14
|
-
|
|
15
|
-
<div class="demo-block">
|
|
16
|
-
<h2 class="component-title">Section Divider Component</h2>
|
|
17
|
-
<p class="demo-description">
|
|
18
|
-
Full-width section banner with display font and palette variants. Import from <code>components/SectionDivider.svelte</code>
|
|
19
|
-
</p>
|
|
20
|
-
|
|
21
|
-
<div class="demo-section">
|
|
22
|
-
<h3 class="demo-subtitle">Variants</h3>
|
|
23
|
-
<div class="divider-showcase">
|
|
24
|
-
{#each dividerVariants as item}
|
|
25
|
-
<div class="divider-showcase-item">
|
|
26
|
-
<SectionDivider title={item.label} variant={item.variant} />
|
|
27
|
-
<span class="variant-label">variant="{item.variant}" surface-{item.variant}-highest → surface-{item.variant}</span>
|
|
28
|
-
</div>
|
|
29
|
-
{/each}
|
|
30
|
-
</div>
|
|
31
|
-
</div>
|
|
32
|
-
|
|
33
|
-
<div class="demo-section">
|
|
34
|
-
<h3 class="demo-subtitle">With Description</h3>
|
|
35
|
-
<div class="divider-showcase">
|
|
36
|
-
<SectionDivider
|
|
37
|
-
title="Community Modules"
|
|
38
|
-
variant="bg"
|
|
39
|
-
description="These modules were created by other authors and are no longer actively maintained."
|
|
40
|
-
/>
|
|
41
|
-
</div>
|
|
42
|
-
</div>
|
|
43
|
-
|
|
44
|
-
<div class="demo-section">
|
|
45
|
-
<h3 class="demo-subtitle">Tokens (bg variant)</h3>
|
|
46
|
-
<TokenMap tokens={[
|
|
47
|
-
{ label: 'Gradient High', variable: '--surface-bg-highest' },
|
|
48
|
-
{ label: 'Gradient Mid', variable: '--surface-bg-higher' },
|
|
49
|
-
{ label: 'Gradient Low', variable: '--surface-bg-high' },
|
|
50
|
-
{ label: 'Gradient Base', variable: '--surface-bg' },
|
|
51
|
-
{ label: 'Text Stroke', variable: '--surface-bg-lowest' },
|
|
52
|
-
]} />
|
|
53
|
-
</div>
|
|
54
|
-
</div>
|
|
55
|
-
|
|
56
|
-
<style>
|
|
57
|
-
.divider-showcase {
|
|
58
|
-
display: flex;
|
|
59
|
-
flex-direction: column;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
.divider-showcase-item {
|
|
63
|
-
display: flex;
|
|
64
|
-
flex-direction: column;
|
|
65
|
-
align-items: flex-start;
|
|
66
|
-
width: 100%;
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
.variant-label {
|
|
70
|
-
font-size: var(--font-xs);
|
|
71
|
-
color: var(--ui-text-tertiary);
|
|
72
|
-
font-family: var(--ui-font-mono);
|
|
73
|
-
background: var(--ui-surface-lowest);
|
|
74
|
-
padding: var(--space-2) var(--space-6);
|
|
75
|
-
border-radius: var(--radius-sm);
|
|
76
|
-
}
|
|
77
|
-
</style>
|