@adia-ai/web-modules 0.8.35 → 0.8.37
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/CHANGELOG.md +22 -0
- package/README.md +3 -3
- package/agent-admin/admin-roster/admin-roster.js +1 -1
- package/agent-admin/admin-settings/admin-settings.js +1 -1
- package/agent-admin/agent-admin/agent-admin.js +1 -1
- package/billing/billing-overview/billing-overview.a2ui.json +281 -0
- package/billing/billing-overview/billing-overview.class.js +838 -0
- package/billing/billing-overview/billing-overview.css +223 -0
- package/billing/billing-overview/billing-overview.js +16 -0
- package/billing/billing-overview/billing-overview.yaml +441 -0
- package/billing/index.js +21 -0
- package/billing/invoice-detail/invoice-detail.a2ui.json +276 -0
- package/billing/invoice-detail/invoice-detail.class.js +711 -0
- package/billing/invoice-detail/invoice-detail.css +305 -0
- package/billing/invoice-detail/invoice-detail.js +16 -0
- package/billing/invoice-detail/invoice-detail.yaml +411 -0
- package/billing/invoice-history/invoice-history.a2ui.json +315 -0
- package/billing/invoice-history/invoice-history.class.js +672 -0
- package/billing/invoice-history/invoice-history.css +130 -0
- package/billing/invoice-history/invoice-history.js +16 -0
- package/billing/invoice-history/invoice-history.yaml +398 -0
- package/billing/payment-method-form/payment-method-form.a2ui.json +310 -0
- package/billing/payment-method-form/payment-method-form.class.js +886 -0
- package/billing/payment-method-form/payment-method-form.css +149 -0
- package/billing/payment-method-form/payment-method-form.js +16 -0
- package/billing/payment-method-form/payment-method-form.yaml +430 -0
- package/billing/payment-method-list/payment-method-list.a2ui.json +283 -0
- package/billing/payment-method-list/payment-method-list.class.js +705 -0
- package/billing/payment-method-list/payment-method-list.css +128 -0
- package/billing/payment-method-list/payment-method-list.js +16 -0
- package/billing/payment-method-list/payment-method-list.yaml +355 -0
- package/billing/plan-picker/plan-picker.a2ui.json +349 -0
- package/billing/plan-picker/plan-picker.class.js +635 -0
- package/billing/plan-picker/plan-picker.css +227 -0
- package/billing/plan-picker/plan-picker.js +16 -0
- package/billing/plan-picker/plan-picker.yaml +453 -0
- package/chat/README.md +1 -1
- package/chat/chat-composer/chat-composer.js +2 -2
- package/chat/chat-empty/chat-empty.js +2 -2
- package/chat/chat-shell/chat-shell.js +4 -4
- package/chat/chat-sidebar/chat-sidebar.js +2 -2
- package/chat/chat-surfaces/chat-surfaces.js +2 -2
- package/chat/chat-thread/chat-thread.js +2 -2
- package/dashboard/dashboard-layout/dashboard-layout.a2ui.json +254 -0
- package/dashboard/dashboard-layout/dashboard-layout.css +190 -0
- package/dashboard/dashboard-layout/dashboard-layout.js +289 -0
- package/dashboard/dashboard-layout/dashboard-layout.yaml +374 -0
- package/dashboard/date-range-selector/date-range-selector.a2ui.json +236 -0
- package/dashboard/date-range-selector/date-range-selector.css +84 -0
- package/dashboard/date-range-selector/date-range-selector.js +686 -0
- package/dashboard/date-range-selector/date-range-selector.yaml +358 -0
- package/dashboard/index.js +14 -0
- package/dist/everything.min.js +1 -1
- package/editor/editor-canvas/editor-canvas.js +2 -2
- package/editor/editor-shell/editor-shell.js +2 -2
- package/editor/editor-sidebar/editor-sidebar.js +2 -2
- package/editor/editor-toolbar/editor-toolbar.js +2 -2
- package/feedback/confirm-dialog/confirm-dialog.a2ui.json +206 -0
- package/feedback/confirm-dialog/confirm-dialog.css +157 -0
- package/feedback/confirm-dialog/confirm-dialog.js +383 -0
- package/feedback/confirm-dialog/confirm-dialog.yaml +297 -0
- package/feedback/index.js +10 -0
- package/form/form-popover/form-popover.js +1 -1
- package/generative/index.d.ts +1 -1
- package/generative/index.js +2 -2
- package/onboarding/index.js +1 -0
- package/onboarding/onboarding-checklist/onboarding-checklist.a2ui.json +263 -0
- package/onboarding/onboarding-checklist/onboarding-checklist.css +157 -0
- package/onboarding/onboarding-checklist/onboarding-checklist.js +428 -0
- package/onboarding/onboarding-checklist/onboarding-checklist.yaml +236 -0
- package/package.json +99 -6
- package/runtime/a2ui-root/a2ui-root.js +3 -3
- package/runtime/gen-root/gen-root.js +5 -5
- package/settings/index.js +12 -0
- package/settings/integrations-page/integrations-page.a2ui.json +274 -0
- package/settings/integrations-page/integrations-page.css +177 -0
- package/settings/integrations-page/integrations-page.d.ts +77 -0
- package/settings/integrations-page/integrations-page.js +413 -0
- package/settings/integrations-page/integrations-page.yaml +317 -0
- package/settings/notification-preferences/notification-preferences.a2ui.json +245 -0
- package/settings/notification-preferences/notification-preferences.css +204 -0
- package/settings/notification-preferences/notification-preferences.js +622 -0
- package/settings/notification-preferences/notification-preferences.yaml +358 -0
- package/shell/admin-command/admin-command.js +2 -2
- package/shell/admin-shell/admin-shell.js +2 -2
- package/shell/admin-sidebar/admin-sidebar.js +2 -2
- package/shell/embed-shell/embed-shell.js +3 -3
- package/simple/simple-shell/simple-shell.js +1 -1
- package/theme/theme-panel/theme-panel.js +2 -2
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://adiaui.dev/a2ui/v0_9/components/DateRangeSelector.json",
|
|
4
|
+
"title": "DateRangeSelector",
|
|
5
|
+
"description": "Page-level \"current time window\" chooser for dashboards. A module-tier\ncomposite that pairs a preset chip-row (Today / 7d / 30d / 90d / QTD /\nYTD / Custom) with an embedded <date-range-picker-ui> and broadcasts\nthe active range to every range-aware panel on the page.\n\nOne chooser, one event bus, every panel follows. The composite owns\nthe range value, resolves preset keys to ISO 8601 from/to pairs, and\nemits a `range-change` CustomEvent on the configured broadcast target\n(default `document`). It also writes `data-range-from` /\n`data-range-to` to that target so CSS-only subscribers can match\nattribute selectors.\n\nUse for dashboard toolbars (typically <dashboard-layout-ui slot=\"toolbar\">\nor <admin-page-header slot=\"action\">). For card-local per-panel\ncomparison overlays, set [broadcast=\"self\"] so the secondary instance\nscopes to its host.\n\nSpec: .claude/docs/specs/implementation-ready/SPEC-019-date-range-selector-global.md.\n",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"allOf": [
|
|
8
|
+
{
|
|
9
|
+
"$ref": "common_types.json#/$defs/ComponentCommon"
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
"$ref": "common_types.json#/$defs/CatalogComponentCommon"
|
|
13
|
+
}
|
|
14
|
+
],
|
|
15
|
+
"properties": {
|
|
16
|
+
"aria-label": {
|
|
17
|
+
"description": "Accessible name for the toolbar group (role=group). Defaults to\n\"Time period\"; override when multiple range selectors sit on the\nsame page (e.g., \"Primary range\" / \"Comparison range\").\n",
|
|
18
|
+
"type": "string",
|
|
19
|
+
"default": "Time period"
|
|
20
|
+
},
|
|
21
|
+
"broadcast": {
|
|
22
|
+
"description": "Broadcast scope. `document` fires `range-change` on\n`document.documentElement` AND writes `data-range-from` /\n`data-range-to` there (page-global). `self` fires on the host and\nwrites the same attributes to the host (scoped subscribers).\n`none` suppresses broadcast entirely; only the host-level `change`\nevent fires.\n",
|
|
23
|
+
"type": "string",
|
|
24
|
+
"enum": [
|
|
25
|
+
"document",
|
|
26
|
+
"self",
|
|
27
|
+
"none"
|
|
28
|
+
],
|
|
29
|
+
"default": "document"
|
|
30
|
+
},
|
|
31
|
+
"component": {
|
|
32
|
+
"const": "DateRangeSelector"
|
|
33
|
+
},
|
|
34
|
+
"disabled": {
|
|
35
|
+
"description": "Non-interactive; chips and the embedded picker dim and suppress\npointer-events via the CSS scope.\n",
|
|
36
|
+
"type": "boolean",
|
|
37
|
+
"default": false
|
|
38
|
+
},
|
|
39
|
+
"from": {
|
|
40
|
+
"description": "Start of the resolved range, ISO-8601 date (YYYY-MM-DD). Read-only\noutput — set by the composite when value resolves or when the\nembedded picker commits a custom range. Consumers read this after\n`range-change`.\n",
|
|
41
|
+
"$ref": "common_types.json#/$defs/DynamicString"
|
|
42
|
+
},
|
|
43
|
+
"name": {
|
|
44
|
+
"description": "Form field name (UIFormElement convention). When set, the\ncomposite participates in form submission — the resolved range\nserializes as a colon-pair \"{from}:{to}\" via ElementInternals.\nWithout it, the composite emits events only.\n",
|
|
45
|
+
"type": "string",
|
|
46
|
+
"default": ""
|
|
47
|
+
},
|
|
48
|
+
"presets": {
|
|
49
|
+
"description": "Override the preset chip list as a comma-separated subset of the\n`value` enum. Order matters. `custom` is optional but recommended\nas the trailing chip. Unknown keys are ignored at runtime.\n",
|
|
50
|
+
"type": "string",
|
|
51
|
+
"default": "today,7d,30d,90d,qtd,ytd,custom"
|
|
52
|
+
},
|
|
53
|
+
"to": {
|
|
54
|
+
"description": "End of the resolved range, ISO-8601 date. Same read-only output\nsemantics as `from`.\n",
|
|
55
|
+
"$ref": "common_types.json#/$defs/DynamicString"
|
|
56
|
+
},
|
|
57
|
+
"value": {
|
|
58
|
+
"description": "Active preset key. Drives the chip-row selection and re-resolves\nthe from/to range on change. `custom` defers to the embedded\npicker's value (consumer-supplied from/to).\n",
|
|
59
|
+
"$ref": "common_types.json#/$defs/DynamicString"
|
|
60
|
+
}
|
|
61
|
+
},
|
|
62
|
+
"required": [
|
|
63
|
+
"component"
|
|
64
|
+
],
|
|
65
|
+
"unevaluatedProperties": false,
|
|
66
|
+
"x-adiaui": {
|
|
67
|
+
"anti_patterns": [
|
|
68
|
+
{
|
|
69
|
+
"description": "Two document-broadcasters on the same page. The late mounter wins\nsilently for the data-range-* attributes on <html>, and CSS-only\nsubscribers see flicker as the attributes are rewritten.\n",
|
|
70
|
+
"right": "<date-range-selector-ui broadcast=\"document\"></date-range-selector-ui>\n<date-range-selector-ui broadcast=\"self\"></date-range-selector-ui>\n",
|
|
71
|
+
"rule": "Pick ONE global broadcaster; route secondary instances via\nbroadcast=\"self\" so they emit only on the host.\n",
|
|
72
|
+
"wrong": "<date-range-selector-ui broadcast=\"document\"></date-range-selector-ui>\n<date-range-selector-ui broadcast=\"document\"></date-range-selector-ui>\n"
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"description": "Using DateRangeSelector for single-date selection. The composite\nresolves a range; the picker UI exposes two-pane selection. For\nsingle-date use <input-ui type=\"date\"> or <calendar-picker-ui>.\n",
|
|
76
|
+
"right": "<input-ui type=\"date\" name=\"d\"></input-ui>\n",
|
|
77
|
+
"rule": "Range chooser → DateRangeSelector. Single-date chooser → input-ui\ntype=date or calendar-picker-ui.\n",
|
|
78
|
+
"wrong": "<date-range-selector-ui value=\"today\"></date-range-selector-ui>\n<!-- The selector still resolves a range (from=today, to=today). -->\n"
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
"description": "Custom selected with no from/to. The composite falls back to the\nprevious resolved range, which may be empty on first mount —\nconsumers see mystery behavior.\n",
|
|
82
|
+
"right": "<date-range-selector-ui value=\"custom\" from=\"2026-05-01\" to=\"2026-05-07\"></date-range-selector-ui>\n",
|
|
83
|
+
"rule": "value=\"custom\" requires either declarative from/to or a follow-on\nsetRange(\"custom\", from, to) call before the chooser is meaningful.\n",
|
|
84
|
+
"wrong": "<date-range-selector-ui value=\"custom\"></date-range-selector-ui>\n"
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
"description": "Unknown preset key. The composite resolves to the default (\"7d\")\nand the consumer sees an unexpected range.\n",
|
|
88
|
+
"right": "<date-range-selector-ui value=\"qtd\"></date-range-selector-ui>\n",
|
|
89
|
+
"rule": "Use documented enum keys only — today, 7d, 30d, 90d, qtd, ytd,\ncustom. Quarter-to-date is `qtd`.\n",
|
|
90
|
+
"wrong": "<date-range-selector-ui value=\"lastQuarter\"></date-range-selector-ui>\n"
|
|
91
|
+
}
|
|
92
|
+
],
|
|
93
|
+
"category": "input",
|
|
94
|
+
"composes": [
|
|
95
|
+
"date-range-picker-ui",
|
|
96
|
+
"segmented-ui",
|
|
97
|
+
"segment-ui",
|
|
98
|
+
"button-ui",
|
|
99
|
+
"text-ui"
|
|
100
|
+
],
|
|
101
|
+
"events": {
|
|
102
|
+
"change": {
|
|
103
|
+
"description": "Alias of range-change, fires on the host element only (UIFormElement\nconvention). When [name] is set, the form value is the colon-pair\n\"{from}:{to}\".\n",
|
|
104
|
+
"detail": {
|
|
105
|
+
"from": "string",
|
|
106
|
+
"to": "string",
|
|
107
|
+
"value": "string"
|
|
108
|
+
}
|
|
109
|
+
},
|
|
110
|
+
"range-change": {
|
|
111
|
+
"description": "Fired when the resolved range changes — preset clicked, custom\nrange applied, or programmatic setRange(). Fires on the broadcast\ntarget per [broadcast]. Guaranteed once per resolved range; never\nfires for in-progress picker interactions.\n",
|
|
112
|
+
"detail": {
|
|
113
|
+
"from": "string",
|
|
114
|
+
"preset": "string",
|
|
115
|
+
"to": "string",
|
|
116
|
+
"value": "string"
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
},
|
|
120
|
+
"examples": [
|
|
121
|
+
{
|
|
122
|
+
"description": "Page-global selector in a dashboard toolbar; charts subscribe to range-change on document.",
|
|
123
|
+
"a2ui": "[\n {\n \"id\": \"dr-global\",\n \"component\": \"DateRangeSelector\",\n \"value\": \"30d\",\n \"presets\": \"today,7d,30d,90d,qtd,ytd,custom\",\n \"broadcast\": \"document\"\n }\n]\n",
|
|
124
|
+
"name": "dashboard-toolbar-global"
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
"description": "Card-local secondary picker broadcasting only on the host (no document writes).",
|
|
128
|
+
"a2ui": "[\n {\n \"id\": \"dr-overlay\",\n \"component\": \"DateRangeSelector\",\n \"broadcast\": \"self\",\n \"presets\": \"7d,30d,90d\"\n }\n]\n",
|
|
129
|
+
"name": "scoped-self-broadcast"
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
"description": "Form-participating selector emitting a colon-pair value on submit.",
|
|
133
|
+
"a2ui": "[\n {\n \"id\": \"dr-form\",\n \"component\": \"DateRangeSelector\",\n \"name\": \"period\",\n \"value\": \"ytd\"\n }\n]\n",
|
|
134
|
+
"name": "form-participating"
|
|
135
|
+
}
|
|
136
|
+
],
|
|
137
|
+
"keywords": [
|
|
138
|
+
"date-range-selector",
|
|
139
|
+
"date-range",
|
|
140
|
+
"range-selector",
|
|
141
|
+
"period-selector",
|
|
142
|
+
"time-window",
|
|
143
|
+
"dashboard-range",
|
|
144
|
+
"period",
|
|
145
|
+
"global-range",
|
|
146
|
+
"range-bus",
|
|
147
|
+
"timeframe"
|
|
148
|
+
],
|
|
149
|
+
"name": "DateRangeSelector",
|
|
150
|
+
"related": [
|
|
151
|
+
"DateRangePicker",
|
|
152
|
+
"Segmented",
|
|
153
|
+
"Segment",
|
|
154
|
+
"Button",
|
|
155
|
+
"Text",
|
|
156
|
+
"DashboardLayout",
|
|
157
|
+
"AdminPageHeader"
|
|
158
|
+
],
|
|
159
|
+
"slots": {
|
|
160
|
+
"default": {
|
|
161
|
+
"description": "The composite stamps its own chip row + picker; children placed in\nthe default slot are ignored. Use prefix/suffix slots for label\ntext or auxiliary controls.\n"
|
|
162
|
+
},
|
|
163
|
+
"prefix": {
|
|
164
|
+
"description": "Optional leading content (e.g., a \"Period:\" caption). Renders\nbefore the chip row.\n"
|
|
165
|
+
},
|
|
166
|
+
"suffix": {
|
|
167
|
+
"description": "Optional trailing content (e.g., a comparison-mode toggle).\nRenders after the picker.\n"
|
|
168
|
+
}
|
|
169
|
+
},
|
|
170
|
+
"states": [
|
|
171
|
+
{
|
|
172
|
+
"description": "Default — preset chip selected, custom picker closed.",
|
|
173
|
+
"name": "idle"
|
|
174
|
+
},
|
|
175
|
+
{
|
|
176
|
+
"description": "Custom preset active; embedded picker is exposed for editing.",
|
|
177
|
+
"attribute": "value",
|
|
178
|
+
"name": "custom"
|
|
179
|
+
},
|
|
180
|
+
{
|
|
181
|
+
"description": "Embedded picker popover is open (reflected from <date-range-picker-ui>).",
|
|
182
|
+
"attribute": "picker-open",
|
|
183
|
+
"name": "picker-open"
|
|
184
|
+
},
|
|
185
|
+
{
|
|
186
|
+
"description": "Non-interactive; chips + picker dimmed; pointer-events suppressed.",
|
|
187
|
+
"attribute": "disabled",
|
|
188
|
+
"name": "disabled"
|
|
189
|
+
}
|
|
190
|
+
],
|
|
191
|
+
"status": "experimental",
|
|
192
|
+
"synonyms": {
|
|
193
|
+
"period": [
|
|
194
|
+
"range",
|
|
195
|
+
"timeframe",
|
|
196
|
+
"reporting-period"
|
|
197
|
+
],
|
|
198
|
+
"range": [
|
|
199
|
+
"period",
|
|
200
|
+
"timeframe",
|
|
201
|
+
"window"
|
|
202
|
+
],
|
|
203
|
+
"selector": [
|
|
204
|
+
"chooser",
|
|
205
|
+
"picker"
|
|
206
|
+
],
|
|
207
|
+
"tags": [
|
|
208
|
+
"DateRangeSelector",
|
|
209
|
+
"RangeSelector",
|
|
210
|
+
"PeriodSelector",
|
|
211
|
+
"TimeWindow"
|
|
212
|
+
]
|
|
213
|
+
},
|
|
214
|
+
"tag": "date-range-selector-ui",
|
|
215
|
+
"tokens": {
|
|
216
|
+
"--date-range-selector-gap": {
|
|
217
|
+
"description": "Inline gap between prefix slot, chip row, picker, readout, and suffix slot.",
|
|
218
|
+
"default": "var(--a-space-3)"
|
|
219
|
+
},
|
|
220
|
+
"--date-range-selector-picker-trigger-py": {
|
|
221
|
+
"description": "Vertical padding on the embedded picker trigger (cascades into the inner button-ui).",
|
|
222
|
+
"default": "var(--a-space-2)"
|
|
223
|
+
},
|
|
224
|
+
"--date-range-selector-readout-fg": {
|
|
225
|
+
"description": "Resolved-range readout foreground color.",
|
|
226
|
+
"default": "var(--a-fg-muted)"
|
|
227
|
+
},
|
|
228
|
+
"--date-range-selector-readout-size": {
|
|
229
|
+
"description": "Resolved-range readout font size.",
|
|
230
|
+
"default": "var(--a-font-size-sm)"
|
|
231
|
+
}
|
|
232
|
+
},
|
|
233
|
+
"traits": [],
|
|
234
|
+
"version": 1
|
|
235
|
+
}
|
|
236
|
+
}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/* ═══════════════════════════════════════════════════════════════
|
|
2
|
+
<date-range-selector-ui> — Page-level time-window chooser.
|
|
3
|
+
|
|
4
|
+
Module-tier composite that composes <segmented-ui> (preset chips),
|
|
5
|
+
<date-range-picker-ui> (custom-range editor), and <text-ui>
|
|
6
|
+
(readout). The host is an inline-flex row laying out the
|
|
7
|
+
prefix/chips/picker/readout/suffix regions in DOM order.
|
|
8
|
+
|
|
9
|
+
SPEC: docs/specs/implementation-ready/SPEC-019-date-range-selector-global.md
|
|
10
|
+
Two-block @scope pattern per docs/specs/component-token-contract.md.
|
|
11
|
+
Zero raw color values; zero raw px ≥ 3 (rem only).
|
|
12
|
+
═══════════════════════════════════════════════════════════════ */
|
|
13
|
+
|
|
14
|
+
/* ── Block 1: TOKEN DECLARATIONS ──────────────────────────────── */
|
|
15
|
+
|
|
16
|
+
date-range-selector-ui {
|
|
17
|
+
--date-range-selector-gap: var(--a-space-3);
|
|
18
|
+
--date-range-selector-readout-size: var(--a-font-size-sm);
|
|
19
|
+
--date-range-selector-readout-fg: var(--a-fg-muted);
|
|
20
|
+
--date-range-selector-picker-trigger-py: var(--a-space-2);
|
|
21
|
+
|
|
22
|
+
/* Disabled visual — shared --a-opacity-disabled escalation. */
|
|
23
|
+
--date-range-selector-disabled-opacity: var(--a-opacity-disabled, 0.5);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/* ── Block 2: SCOPED LAYOUT ──────────────────────────────────── */
|
|
27
|
+
|
|
28
|
+
@scope (date-range-selector-ui) {
|
|
29
|
+
|
|
30
|
+
:scope {
|
|
31
|
+
display: inline-flex;
|
|
32
|
+
align-items: center;
|
|
33
|
+
gap: var(--date-range-selector-gap);
|
|
34
|
+
color: var(--date-range-selector-readout-fg);
|
|
35
|
+
font-size: var(--date-range-selector-readout-size);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
/* ── Region ordering ── */
|
|
39
|
+
:scope > [slot="prefix"] { order: 0; }
|
|
40
|
+
:scope > [data-region="chips"] { order: 1; }
|
|
41
|
+
:scope > [data-region="picker"] { order: 2; }
|
|
42
|
+
:scope > [data-region="readout"] { order: 3; }
|
|
43
|
+
:scope > [slot="suffix"] { order: 4; }
|
|
44
|
+
|
|
45
|
+
/* ── Picker visibility — only when value="custom" ──
|
|
46
|
+
Non-custom presets communicate the range through the chip label
|
|
47
|
+
itself; the picker collapses to keep the toolbar compact. */
|
|
48
|
+
:scope:not([value="custom"]) > [data-region="picker"] {
|
|
49
|
+
display: none;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/* Cascade the picker trigger padding via the picker's L3 token. */
|
|
53
|
+
:scope > [data-region="picker"] {
|
|
54
|
+
--date-range-picker-py: var(--date-range-selector-picker-trigger-py);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
/* ── Readout visibility ── */
|
|
58
|
+
/* Default readout is hidden (JS toggles `hidden` based on from/to).
|
|
59
|
+
For value="custom", reveal it so the resolved range is legible
|
|
60
|
+
next to the picker trigger. */
|
|
61
|
+
:scope:not([value="custom"]) > [data-region="readout"] {
|
|
62
|
+
display: none;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
:scope > [data-region="readout"] {
|
|
66
|
+
color: var(--date-range-selector-readout-fg);
|
|
67
|
+
font-size: var(--date-range-selector-readout-size);
|
|
68
|
+
white-space: nowrap;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
/* ── Disabled state ── */
|
|
72
|
+
:scope[disabled] {
|
|
73
|
+
opacity: var(--date-range-selector-disabled-opacity);
|
|
74
|
+
pointer-events: none;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/* ── Slot containers — strip any margin defaults from author content ── */
|
|
78
|
+
:scope > [slot="prefix"],
|
|
79
|
+
:scope > [slot="suffix"] {
|
|
80
|
+
display: inline-flex;
|
|
81
|
+
align-items: center;
|
|
82
|
+
gap: var(--a-space-2);
|
|
83
|
+
}
|
|
84
|
+
}
|