@peasant-labs/fairtrade 0.0.0
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/LICENSE +21 -0
- package/README.md +85 -0
- package/dist/lib/README.md +13 -0
- package/dist/lib/base.css +48 -0
- package/dist/lib/components.css +2 -0
- package/dist/lib/fonts.css +28 -0
- package/dist/lib/tokens.css +184 -0
- package/dist/lib/tokens.json +768 -0
- package/dist/lib/types/Accordion.d.ts +47 -0
- package/dist/lib/types/Accordion.stories.d.ts +91 -0
- package/dist/lib/types/Avatar.d.ts +94 -0
- package/dist/lib/types/Avatar.stories.d.ts +160 -0
- package/dist/lib/types/BrandMark.d.ts +25 -0
- package/dist/lib/types/BrandMark.stories.d.ts +75 -0
- package/dist/lib/types/Breadcrumb.d.ts +66 -0
- package/dist/lib/types/Breadcrumb.stories.d.ts +91 -0
- package/dist/lib/types/Button.d.ts +86 -0
- package/dist/lib/types/Button.stories.d.ts +129 -0
- package/dist/lib/types/Card.d.ts +145 -0
- package/dist/lib/types/Card.stories.d.ts +70 -0
- package/dist/lib/types/Chart.stories.d.ts +55 -0
- package/dist/lib/types/ChartBar.d.ts +51 -0
- package/dist/lib/types/ChartLine.d.ts +54 -0
- package/dist/lib/types/Checkbox.d.ts +132 -0
- package/dist/lib/types/Checkbox.stories.d.ts +75 -0
- package/dist/lib/types/Chip.d.ts +85 -0
- package/dist/lib/types/Chip.stories.d.ts +190 -0
- package/dist/lib/types/CliOnboard.d.ts +68 -0
- package/dist/lib/types/CliOnboard.stories.d.ts +24 -0
- package/dist/lib/types/CommandPalette.d.ts +6 -0
- package/dist/lib/types/CommandPalette.stories.d.ts +94 -0
- package/dist/lib/types/CommitGraph.d.ts +71 -0
- package/dist/lib/types/CommitGraph.stories.d.ts +17 -0
- package/dist/lib/types/ConnectionState.d.ts +82 -0
- package/dist/lib/types/ConnectionState.stories.d.ts +117 -0
- package/dist/lib/types/ConsentDialog.d.ts +97 -0
- package/dist/lib/types/ConsentDialog.stories.d.ts +61 -0
- package/dist/lib/types/DataTable.d.ts +116 -0
- package/dist/lib/types/DataTable.stories.d.ts +240 -0
- package/dist/lib/types/DateRange.d.ts +242 -0
- package/dist/lib/types/DateRange.stories.d.ts +272 -0
- package/dist/lib/types/Dialog.d.ts +9 -0
- package/dist/lib/types/Dialog.stories.d.ts +121 -0
- package/dist/lib/types/DiffView.d.ts +39 -0
- package/dist/lib/types/DiffView.stories.d.ts +118 -0
- package/dist/lib/types/EmptyState.d.ts +28 -0
- package/dist/lib/types/EmptyState.stories.d.ts +130 -0
- package/dist/lib/types/EvidenceCaption.d.ts +39 -0
- package/dist/lib/types/EvidenceCaption.stories.d.ts +43 -0
- package/dist/lib/types/Explainer.d.ts +82 -0
- package/dist/lib/types/Explainer.stories.d.ts +22 -0
- package/dist/lib/types/FacetRail.d.ts +13 -0
- package/dist/lib/types/FacetRail.stories.d.ts +28 -0
- package/dist/lib/types/Feedback.d.ts +222 -0
- package/dist/lib/types/Feedback.stories.d.ts +81 -0
- package/dist/lib/types/GroupedMultiSelect.d.ts +67 -0
- package/dist/lib/types/GroupedMultiSelect.stories.d.ts +59 -0
- package/dist/lib/types/Input.d.ts +158 -0
- package/dist/lib/types/Input.stories.d.ts +181 -0
- package/dist/lib/types/Intensity.d.ts +55 -0
- package/dist/lib/types/Intensity.stories.d.ts +108 -0
- package/dist/lib/types/MapCanvas.d.ts +89 -0
- package/dist/lib/types/MapCanvas.stories.d.ts +174 -0
- package/dist/lib/types/Menu.d.ts +62 -0
- package/dist/lib/types/Menu.stories.d.ts +173 -0
- package/dist/lib/types/ModerationQueue.d.ts +135 -0
- package/dist/lib/types/ModerationQueue.stories.d.ts +34 -0
- package/dist/lib/types/Pager.d.ts +47 -0
- package/dist/lib/types/Pager.stories.d.ts +100 -0
- package/dist/lib/types/Pagination.d.ts +50 -0
- package/dist/lib/types/Pagination.stories.d.ts +193 -0
- package/dist/lib/types/PolicySelect.d.ts +80 -0
- package/dist/lib/types/PolicySelect.stories.d.ts +130 -0
- package/dist/lib/types/ProviderIcon.d.ts +83 -0
- package/dist/lib/types/ProviderIcon.stories.d.ts +44 -0
- package/dist/lib/types/RailShell.d.ts +199 -0
- package/dist/lib/types/RailShell.stories.d.ts +32 -0
- package/dist/lib/types/Redaction.d.ts +53 -0
- package/dist/lib/types/Redaction.stories.d.ts +120 -0
- package/dist/lib/types/RoleRoster.d.ts +97 -0
- package/dist/lib/types/RoleRoster.stories.d.ts +23 -0
- package/dist/lib/types/SignIn.d.ts +78 -0
- package/dist/lib/types/SignIn.stories.d.ts +57 -0
- package/dist/lib/types/Sparkline.d.ts +19 -0
- package/dist/lib/types/StatTiles.d.ts +115 -0
- package/dist/lib/types/StatTiles.stories.d.ts +31 -0
- package/dist/lib/types/StepWizard.d.ts +92 -0
- package/dist/lib/types/StepWizard.stories.d.ts +18 -0
- package/dist/lib/types/StepsWaterfall.d.ts +67 -0
- package/dist/lib/types/StepsWaterfall.stories.d.ts +94 -0
- package/dist/lib/types/Switch.d.ts +63 -0
- package/dist/lib/types/Switch.stories.d.ts +134 -0
- package/dist/lib/types/Tabs.d.ts +48 -0
- package/dist/lib/types/Tabs.stories.d.ts +75 -0
- package/dist/lib/types/TimeStrip.d.ts +12 -0
- package/dist/lib/types/TimeStrip.stories.d.ts +30 -0
- package/dist/lib/types/Timeline.d.ts +192 -0
- package/dist/lib/types/Timeline.stories.d.ts +974 -0
- package/dist/lib/types/ToastHost.d.ts +70 -0
- package/dist/lib/types/ToastHost.stories.d.ts +115 -0
- package/dist/lib/types/ToolRenderers.d.ts +24 -0
- package/dist/lib/types/ToolRenderers.stories.d.ts +138 -0
- package/dist/lib/types/Tooltip.d.ts +80 -0
- package/dist/lib/types/Tooltip.stories.d.ts +116 -0
- package/dist/lib/types/Tour.d.ts +37 -0
- package/dist/lib/types/Tour.stories.d.ts +39 -0
- package/dist/lib/types/TranscriptMarkers.d.ts +50 -0
- package/dist/lib/types/TranscriptMarkers.stories.d.ts +48 -0
- package/dist/lib/types/Treemap.d.ts +77 -0
- package/dist/lib/types/Treemap.stories.d.ts +101 -0
- package/dist/lib/types/VisibilityControl.d.ts +54 -0
- package/dist/lib/types/VisibilityControl.stories.d.ts +126 -0
- package/dist/lib/types/chart-shared.d.ts +63 -0
- package/dist/lib/types/index.d.ts +53 -0
- package/dist/lib/types/story-frame.d.ts +12 -0
- package/dist/lib/ui.js +8707 -0
- package/package.json +67 -0
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/* @peasant-labs/fairtrade-lib/fonts.css - font loader.
|
|
2
|
+
|
|
3
|
+
The canonical fairtrade typefaces, loaded via the SAME Google Fonts request the design-system
|
|
4
|
+
app uses (index.html). Two families, weights matched exactly:
|
|
5
|
+
- Atkinson Hyperlegible ital,wght 0,400; 0,700; 1,400; 1,700 (--font-body)
|
|
6
|
+
- Atkinson Hyperlegible Mono ital,wght 0,400; 0,500; 0,600; 0,700; 1,400 (--font-mono / --font-display)
|
|
7
|
+
display=swap keeps text visible during load (no FOIT).
|
|
8
|
+
|
|
9
|
+
These are neuroinclusive faces (high legibility, disambiguated glyphs); do not substitute.
|
|
10
|
+
Importing this file is the self-contained option. For best performance, prefer the documented
|
|
11
|
+
<link> form below (it lets the browser preconnect and avoids an extra CSS round-trip from @import).
|
|
12
|
+
|
|
13
|
+
--- Option A: @import (this file). Just `@import "@peasant-labs/fairtrade-lib/fonts.css";`
|
|
14
|
+
or add it to a <link rel="stylesheet">. Simplest; one extra request hop vs. Option B. */
|
|
15
|
+
@import url("https://fonts.googleapis.com/css2?family=Atkinson+Hyperlegible:ital,wght@0,400;0,700;1,400;1,700&family=Atkinson+Hyperlegible+Mono:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap");
|
|
16
|
+
|
|
17
|
+
/* --- Option B: <link> + preconnect (recommended for apps). Put this in your <head> INSTEAD of
|
|
18
|
+
importing this file, so the browser can warm the connections early:
|
|
19
|
+
|
|
20
|
+
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
21
|
+
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
22
|
+
<link rel="stylesheet"
|
|
23
|
+
href="https://fonts.googleapis.com/css2?family=Atkinson+Hyperlegible:ital,wght@0,400;0,700;1,400;1,700&family=Atkinson+Hyperlegible+Mono:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap">
|
|
24
|
+
|
|
25
|
+
--- Self-hosting: if you cannot reach Google Fonts (offline, CSP, privacy), self-host the same
|
|
26
|
+
families (e.g. via @fontsource/atkinson-hyperlegible) and keep the family names identical to
|
|
27
|
+
the token contract: "Atkinson Hyperlegible" and "Atkinson Hyperlegible Mono". The token
|
|
28
|
+
--font-* values in tokens.css already fall back to ui-sans-serif / ui-monospace stacks. */
|
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
/* @peasant-labs/fairtrade/tokens.css — canonical design tokens.
|
|
2
|
+
GENERATED from src/index.css by scripts/gen-llm-artifacts.mjs. Do not edit by hand;
|
|
3
|
+
edit src/index.css and re-run `pnpm gen:check` (CI fails on drift).
|
|
4
|
+
Dark is the default (:root); [data-theme="light"] overrides the themeable subset.
|
|
5
|
+
Set data-theme="light" on a root element (e.g. <html>) to switch; omit it for dark. */
|
|
6
|
+
:root {
|
|
7
|
+
--sp-1: 4px;
|
|
8
|
+
--sp-2: 8px;
|
|
9
|
+
--sp-3: 12px;
|
|
10
|
+
--sp-4: 16px;
|
|
11
|
+
--sp-5: 24px;
|
|
12
|
+
--sp-6: 32px;
|
|
13
|
+
--sp-7: 40px;
|
|
14
|
+
--sp-8: 56px;
|
|
15
|
+
--lh-body: 1.5;
|
|
16
|
+
--lh-tight: 1.12;
|
|
17
|
+
--lh-mono: 1.4;
|
|
18
|
+
--ic-sm: 14px;
|
|
19
|
+
--ic-md: 16px;
|
|
20
|
+
--ic-lg: 18px;
|
|
21
|
+
--bd: 1px solid var(--rule);
|
|
22
|
+
--bd-strong: 1px solid var(--rule-strong);
|
|
23
|
+
--control-h: 36px;
|
|
24
|
+
--control-h-sm: 28px;
|
|
25
|
+
--nav-h: 56px;
|
|
26
|
+
--maxw: 1040px;
|
|
27
|
+
--gutter: var(--sp-6);
|
|
28
|
+
--bp-sm: 480px;
|
|
29
|
+
--bp-md: 768px;
|
|
30
|
+
--bp-lg: 1024px;
|
|
31
|
+
--bp-xl: 1440px;
|
|
32
|
+
--dialog-w: 420px;
|
|
33
|
+
--fs-label: 14px;
|
|
34
|
+
--fs-sm: 14px;
|
|
35
|
+
--fs-body: 16px;
|
|
36
|
+
--fs-md: 18px;
|
|
37
|
+
--fs-lg: 22px;
|
|
38
|
+
--fs-xl: 28px;
|
|
39
|
+
--fs-hero: 40px;
|
|
40
|
+
--fs-display: 52px;
|
|
41
|
+
--fs-micro: 11px;
|
|
42
|
+
--menu-min-w: 256px;
|
|
43
|
+
--fs-group: clamp(34px, 4vw, 46px);
|
|
44
|
+
--fs-section: clamp(27px, 2.9vw, 33px);
|
|
45
|
+
--fs-sub: clamp(15px, 1.35vw, 17px);
|
|
46
|
+
--band-y: clamp(40px, 4.4vh, 60px);
|
|
47
|
+
--group-y: clamp(52px, 6vh, 84px);
|
|
48
|
+
--fs-min: 16px;
|
|
49
|
+
--tracking-prose: 0.03em;
|
|
50
|
+
--word-spacing-prose: 0.16em;
|
|
51
|
+
--measure-prose: 66ch;
|
|
52
|
+
--measure-read: 60ch;
|
|
53
|
+
--measure-code: 80ch;
|
|
54
|
+
--target-min: 24px;
|
|
55
|
+
--target-comfortable: 44px;
|
|
56
|
+
--toast-w: 360px;
|
|
57
|
+
--row-h-compact: 32px;
|
|
58
|
+
--row-h-standard: 40px;
|
|
59
|
+
--row-h-comfortable: 48px;
|
|
60
|
+
--motion-base: 0ms;
|
|
61
|
+
--canvas: #070706;
|
|
62
|
+
--surface: #0e0e0c;
|
|
63
|
+
--surface-2: #141413;
|
|
64
|
+
--surface-hover: #1b1a17;
|
|
65
|
+
--surface-elev: #1c1b18;
|
|
66
|
+
--ink-strong: #f8f5ed;
|
|
67
|
+
--ink: #e9e5db;
|
|
68
|
+
--ink-2: #b8b3a4;
|
|
69
|
+
--ink-3: #9a9488;
|
|
70
|
+
--ink-4: #8a8478;
|
|
71
|
+
--ink-5: #534e45;
|
|
72
|
+
--rule: #3c382f;
|
|
73
|
+
--rule-strong: #6f6a5f;
|
|
74
|
+
--focus-ring: #cba35c;
|
|
75
|
+
--amber: #cba35c;
|
|
76
|
+
--amber-bright: #e6c483;
|
|
77
|
+
--amber-dim: #937a45;
|
|
78
|
+
--amber-fill: #cba35c;
|
|
79
|
+
--amber-fill-ink: #141003;
|
|
80
|
+
--teal: #7ea69d;
|
|
81
|
+
--olive: #9aa779;
|
|
82
|
+
--clay: #c07f64;
|
|
83
|
+
--mauve: #9a8cae;
|
|
84
|
+
--on-amber: #141003;
|
|
85
|
+
--success: #9aa779;
|
|
86
|
+
--success-fg: #141003;
|
|
87
|
+
--success-soft: rgba(154,167,121,.14);
|
|
88
|
+
--warning: #cba35c;
|
|
89
|
+
--warning-fg: #141003;
|
|
90
|
+
--warning-soft: rgba(203,163,92,.14);
|
|
91
|
+
--danger: #c07f64;
|
|
92
|
+
--danger-fg: #141003;
|
|
93
|
+
--danger-soft: rgba(192,127,100,.14);
|
|
94
|
+
--add-bg: rgba(154,167,121,.13);
|
|
95
|
+
--add-text: #bccb96;
|
|
96
|
+
--add-rail: #9aa779;
|
|
97
|
+
--del-bg: rgba(192,127,100,.14);
|
|
98
|
+
--del-text: #daa791;
|
|
99
|
+
--del-rail: #c07f64;
|
|
100
|
+
--font-display: "Atkinson Hyperlegible Mono", ui-monospace, Menlo, Consolas, monospace;
|
|
101
|
+
--font-body: "Atkinson Hyperlegible", ui-sans-serif, system-ui, -apple-system, sans-serif;
|
|
102
|
+
--font-mono: "Atkinson Hyperlegible Mono", ui-monospace, Menlo, Consolas, monospace;
|
|
103
|
+
--chart-1: var(--teal);
|
|
104
|
+
--chart-2: var(--olive);
|
|
105
|
+
--chart-3: var(--clay);
|
|
106
|
+
--chart-4: var(--mauve);
|
|
107
|
+
--chart-amber: var(--amber);
|
|
108
|
+
--chart-grid: var(--rule);
|
|
109
|
+
--chart-axis: var(--ink-3);
|
|
110
|
+
--chart-surface: var(--surface);
|
|
111
|
+
--chart-point-stroke: var(--surface);
|
|
112
|
+
--nav-bg: rgba(7,7,6,.92);
|
|
113
|
+
--grid: rgba(203,163,92,.12);
|
|
114
|
+
--hero-tex: .16;
|
|
115
|
+
--glow: 0 0 6px rgba(203,163,92,.22);
|
|
116
|
+
--glow-soft: 0 0 4px rgba(203,163,92,.13);
|
|
117
|
+
--glass-bg: rgba(245,243,235,.06);
|
|
118
|
+
--glass-solid: rgba(20,20,18,.62);
|
|
119
|
+
--glass-edge: rgba(245,243,235,.18);
|
|
120
|
+
--glass-hi: rgba(245,243,235,.26);
|
|
121
|
+
--z-sticky: 30;
|
|
122
|
+
--z-nav: 40;
|
|
123
|
+
--z-dropdown: 50;
|
|
124
|
+
--z-dialog: 60;
|
|
125
|
+
--z-toast: 70;
|
|
126
|
+
--z-tooltip: 80;
|
|
127
|
+
--dur-1: 120ms;
|
|
128
|
+
--dur-2: 160ms;
|
|
129
|
+
--dur-3: 200ms;
|
|
130
|
+
--dur-entrance: 900ms;
|
|
131
|
+
--ease-standard: cubic-bezier(.2, 0, 0, 1);
|
|
132
|
+
--ease-out: cubic-bezier(.16, 1, .3, 1);
|
|
133
|
+
--ease-spring: cubic-bezier(.2, .82, .2, 1.12);
|
|
134
|
+
}
|
|
135
|
+
[data-theme="light"] {
|
|
136
|
+
--canvas: #fbfaf7;
|
|
137
|
+
--surface: #fdfcfa;
|
|
138
|
+
--surface-2: #f4f2ec;
|
|
139
|
+
--surface-hover: #edeae2;
|
|
140
|
+
--surface-elev: #efece4;
|
|
141
|
+
--ink-strong: #0d0c09;
|
|
142
|
+
--ink: #27241f;
|
|
143
|
+
--ink-2: #4a463e;
|
|
144
|
+
--ink-3: #5c574d;
|
|
145
|
+
--ink-4: #6f695e;
|
|
146
|
+
--ink-5: #837d72;
|
|
147
|
+
--rule: #c4bca8;
|
|
148
|
+
--rule-strong: #8b836d;
|
|
149
|
+
--focus-ring: #0d0c09;
|
|
150
|
+
--amber: #8a5f1f;
|
|
151
|
+
--amber-bright: #6e4c16;
|
|
152
|
+
--amber-dim: #b09a63;
|
|
153
|
+
--amber-fill: #b8841a;
|
|
154
|
+
--amber-fill-ink: #1a1206;
|
|
155
|
+
--teal: #3a675e;
|
|
156
|
+
--olive: #586a3c;
|
|
157
|
+
--clay: #974b32;
|
|
158
|
+
--mauve: #594e72;
|
|
159
|
+
--on-amber: #fffdf8;
|
|
160
|
+
--success: #586a3c;
|
|
161
|
+
--success-fg: #fffdf8;
|
|
162
|
+
--success-soft: rgba(88,106,60,.14);
|
|
163
|
+
--warning: #8a5f1f;
|
|
164
|
+
--warning-fg: #fffdf8;
|
|
165
|
+
--warning-soft: rgba(138,95,31,.14);
|
|
166
|
+
--danger: #974b32;
|
|
167
|
+
--danger-fg: #fffdf8;
|
|
168
|
+
--danger-soft: rgba(151,75,50,.14);
|
|
169
|
+
--add-bg: rgba(88,106,60,.13);
|
|
170
|
+
--add-text: #465528;
|
|
171
|
+
--add-rail: #586a3c;
|
|
172
|
+
--del-bg: rgba(151,75,50,.12);
|
|
173
|
+
--del-text: #82402a;
|
|
174
|
+
--del-rail: #974b32;
|
|
175
|
+
--nav-bg: rgba(255,255,255,.9);
|
|
176
|
+
--grid: rgba(120,100,40,.08);
|
|
177
|
+
--hero-tex: .06;
|
|
178
|
+
--glow: none;
|
|
179
|
+
--glow-soft: none;
|
|
180
|
+
--glass-bg: rgba(255,255,255,.3);
|
|
181
|
+
--glass-solid: rgba(255,255,255,.74);
|
|
182
|
+
--glass-edge: rgba(20,16,9,.12);
|
|
183
|
+
--glass-hi: rgba(255,255,255,.7);
|
|
184
|
+
}
|