@pantheon-systems/pds-toolkit-react 2.0.0-alpha.62 → 2.0.0-alpha.64
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/dist/components/Table/Table.d.ts +14 -1
- package/dist/components/icons/Icon/generated-icon-data.d.ts +1 -1
- package/dist/components/inputs/Datepicker/Datepicker.d.ts +166 -13
- package/dist/components/inputs/TextInput/TextInput.d.ts +1 -1
- package/dist/components/inputs/{TimeInput/TimeInput.d.ts → Timepicker/Timepicker.d.ts} +7 -7
- package/dist/css/component-css/pds-action-card.css +1 -1
- package/dist/css/component-css/pds-badge.css +1 -1
- package/dist/css/component-css/pds-datepicker.css +1 -5
- package/dist/css/component-css/pds-dropdown.css +1 -1
- package/dist/css/component-css/pds-index.css +8 -12
- package/dist/css/component-css/pds-input-utilities.css +1 -1
- package/dist/css/component-css/pds-navbar.css +1 -1
- package/dist/css/component-css/pds-tab-menu.css +1 -1
- package/dist/css/component-css/pds-table.css +2 -2
- package/dist/css/component-css/pds-tabs.css +1 -1
- package/dist/css/component-css/pds-tag.css +1 -1
- package/dist/css/component-css/{pds-time-input.css → pds-timepicker.css} +1 -1
- package/dist/css/design-tokens/variables.dark.css +4 -4
- package/dist/css/design-tokens/variables.global.css +2 -2
- package/dist/css/design-tokens/variables.light.css +2 -2
- package/dist/css/pds-components.css +8 -12
- package/dist/css/pds-core.css +1 -1
- package/dist/index.css +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +2211 -1986
- package/dist/index.js.map +1 -1
- package/dist/index.source.d.ts +1 -1
- package/dist/libs/components/utils.d.ts +1 -0
- package/dist/utilities/hooks/useDropdown/useDropdown.d.ts +10 -2
- package/package.json +2 -3
|
@@ -162,6 +162,19 @@ export interface TableProps extends ComponentPropsWithoutRef<'table'> {
|
|
|
162
162
|
* Number of skeleton rows to render when `isLoading` is true. Defaults to 5.
|
|
163
163
|
*/
|
|
164
164
|
loadingRowCount?: number;
|
|
165
|
+
/**
|
|
166
|
+
* Sets a max-height on the scrollable table area. Accepts any valid CSS
|
|
167
|
+
* value (e.g. `'30rem'`, `'70vh'`). Enables vertical scrolling once content
|
|
168
|
+
* exceeds it. Undefined by default — the table grows to fit its content.
|
|
169
|
+
*/
|
|
170
|
+
maxHeight?: string;
|
|
171
|
+
/**
|
|
172
|
+
* Sets a min-height on the scrollable table area. Accepts any valid CSS
|
|
173
|
+
* value. Use alongside `maxHeight` to keep a table with very few rows (or
|
|
174
|
+
* the empty state) from collapsing to an awkwardly small height. Undefined
|
|
175
|
+
* by default.
|
|
176
|
+
*/
|
|
177
|
+
minHeight?: string;
|
|
165
178
|
/**
|
|
166
179
|
* Accessible label for the detail panel "next row" button.
|
|
167
180
|
* Defaults to `'Next row'`. Override for translation.
|
|
@@ -284,4 +297,4 @@ export interface TableProps extends ComponentPropsWithoutRef<'table'> {
|
|
|
284
297
|
*/
|
|
285
298
|
totalItemCount?: number;
|
|
286
299
|
}
|
|
287
|
-
export declare const Table: ({ className, closeDetailPanelLabel, columns, currentPage, defaultSortKey, defaultSortOrder, detailPanelNav, detailPanelTitle, detailPanelWidth, emptyState, emptyStateHeading, emptyStateMessage, footer, getPageSizeLabel, getRowClassName, getRowId, getRowSelectDisabledReason, getSelectRowLabel, getSortLabel, inspectedRowId, isLoading, isRowSelectable, itemsPerPage, loadingRowCount, nextDetailPanelRowLabel, onDetailPanelNext, onDetailPanelPrev, onPageChange, onPageSizeChange, onRowInspect, onRowSelectionChange, onSort, pageSizeOptions, pageSizeSelectLabel, paginationLabels, panel, prevDetailPanelRowLabel, renderDetailPanel, renderDetailPanelFooter, rowData, selectAllLabel, selectedRows, sortKey, sortOrder, totalItemCount, ...props }: TableProps) => import("react/jsx-runtime").JSX.Element;
|
|
300
|
+
export declare const Table: ({ className, closeDetailPanelLabel, columns, currentPage, defaultSortKey, defaultSortOrder, detailPanelNav, detailPanelTitle, detailPanelWidth, emptyState, emptyStateHeading, emptyStateMessage, footer, getPageSizeLabel, getRowClassName, getRowId, getRowSelectDisabledReason, getSelectRowLabel, getSortLabel, inspectedRowId, isLoading, isRowSelectable, itemsPerPage, loadingRowCount, maxHeight, minHeight, nextDetailPanelRowLabel, onDetailPanelNext, onDetailPanelPrev, onPageChange, onPageSizeChange, onRowInspect, onRowSelectionChange, onSort, pageSizeOptions, pageSizeSelectLabel, paginationLabels, panel, prevDetailPanelRowLabel, renderDetailPanel, renderDetailPanelFooter, rowData, selectAllLabel, selectedRows, sortKey, sortOrder, totalItemCount, ...props }: TableProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Generated by: npm run generate:icon-data
|
|
5
5
|
* Source: icon-registry.ts + Font Awesome packages + custom-icons.tsx
|
|
6
|
-
* Generated: 2026-08-
|
|
6
|
+
* Generated: 2026-08-11T19:57:03.681Z
|
|
7
7
|
*/
|
|
8
8
|
import { customIcons } from './custom-icons';
|
|
9
9
|
export { customIcons };
|
|
@@ -1,38 +1,89 @@
|
|
|
1
1
|
import { HTMLAttributes, ReactNode } from 'react';
|
|
2
2
|
import { Locale } from 'date-fns';
|
|
3
|
-
import { DateRange } from 'react-day-picker';
|
|
4
3
|
import { ValidationStatus } from '../../../libs/types/input-types';
|
|
5
|
-
import 'react-day-picker/dist/style.css';
|
|
6
4
|
import './datepicker.css';
|
|
5
|
+
/**
|
|
6
|
+
* A date range, as plain native `Date` objects. Replaces `react-day-picker`'s
|
|
7
|
+
* `DateRange` type (which consumers previously imported directly from
|
|
8
|
+
* `react-day-picker`) now that Datepicker's calendar core is built on
|
|
9
|
+
* react-aria instead. See guides/DATEPICKER-CONSUMER-MIGRATION.md.
|
|
10
|
+
*/
|
|
11
|
+
export interface DateRange {
|
|
12
|
+
from?: Date;
|
|
13
|
+
to?: Date;
|
|
14
|
+
}
|
|
7
15
|
export type PresetType = 'today' | 'current-week' | 'current-month' | 'last-week' | 'last-month';
|
|
8
16
|
export interface CustomPresetConfig {
|
|
9
17
|
custom?: () => DateRange;
|
|
10
18
|
days?: number;
|
|
19
|
+
hours?: number;
|
|
11
20
|
label: string;
|
|
21
|
+
minutes?: number;
|
|
22
|
+
/**
|
|
23
|
+
* Whether this preset's own `label` (e.g. "Last 15 min") should replace the
|
|
24
|
+
* trigger's computed date/time text while this preset is active. Defaults
|
|
25
|
+
* to `true` for sub-day presets (`hours`/`minutes` set, no `days`/`type`)
|
|
26
|
+
* and `false` otherwise — rolling sub-day windows read better as their own
|
|
27
|
+
* label than as a precise, already-stale-by-the-time-you-read-it
|
|
28
|
+
* timestamp. Set explicitly to override the default either way.
|
|
29
|
+
*/
|
|
30
|
+
showLabelInTrigger?: boolean;
|
|
12
31
|
type?: PresetType;
|
|
13
32
|
}
|
|
33
|
+
/**
|
|
34
|
+
* Options for `getPresetDateRange`. Both are optional and additive — omitting
|
|
35
|
+
* them preserves the function's original behavior (browser-local time zone,
|
|
36
|
+
* Sunday-first weeks).
|
|
37
|
+
*/
|
|
38
|
+
export interface GetPresetDateRangeOptions {
|
|
39
|
+
/**
|
|
40
|
+
* BCP-47 locale, used only for `current-week`/`last-week`'s week-start day
|
|
41
|
+
* (e.g. Monday-first in most of Europe vs. Sunday-first in the US).
|
|
42
|
+
* Defaults to `'en-US'` (Sunday-first), matching this function's original,
|
|
43
|
+
* locale-unaware behavior.
|
|
44
|
+
*/
|
|
45
|
+
locale?: string;
|
|
46
|
+
/**
|
|
47
|
+
* IANA time zone identifier. Determines which calendar day/week/month
|
|
48
|
+
* "today" resolves to for `days`/`type` presets — irrelevant for
|
|
49
|
+
* `hours`/`minutes` presets, which are absolute-time offsets from the
|
|
50
|
+
* current instant, not calendar-day boundaries. Defaults to the browser's
|
|
51
|
+
* local time zone.
|
|
52
|
+
*/
|
|
53
|
+
timeZone?: string;
|
|
54
|
+
}
|
|
14
55
|
/**
|
|
15
56
|
* Converts a preset config to a DateRange. Use this alongside an external
|
|
16
57
|
* SegmentedButton, Select, or other control to compose preset date pickers.
|
|
17
58
|
*/
|
|
18
|
-
export declare const getPresetDateRange: (preset: CustomPresetConfig) => DateRange;
|
|
59
|
+
export declare const getPresetDateRange: (preset: CustomPresetConfig, options?: GetPresetDateRangeOptions) => DateRange;
|
|
19
60
|
export interface DatepickerTranslationStrings {
|
|
20
61
|
clearButton?: string;
|
|
62
|
+
customPresetLabel?: string;
|
|
21
63
|
doneButton?: string;
|
|
64
|
+
endTimeLabel?: string;
|
|
65
|
+
localTimeZoneLabel?: string;
|
|
66
|
+
nextMonthLabel?: string;
|
|
22
67
|
noDateRangeSelected?: string;
|
|
23
68
|
noDateSelected?: string;
|
|
24
69
|
pleaseSelectEndDate?: string;
|
|
70
|
+
presetsGroupLabel?: string;
|
|
71
|
+
previousMonthLabel?: string;
|
|
25
72
|
selectedDate?: string;
|
|
26
73
|
selectedDateRange?: string;
|
|
27
74
|
selectedStartDate?: string;
|
|
75
|
+
startTimeLabel?: string;
|
|
76
|
+
timeLabel?: string;
|
|
77
|
+
timeZoneSwitcherLabel?: string;
|
|
28
78
|
to?: string;
|
|
29
79
|
todayButton?: string;
|
|
80
|
+
utcTimeZoneLabel?: string;
|
|
30
81
|
}
|
|
31
82
|
/**
|
|
32
83
|
* Prop types for Datepicker.
|
|
33
84
|
*/
|
|
34
85
|
type DatepickerHTMLProps = Omit<HTMLAttributes<HTMLDivElement>, 'onChange' | 'value'>;
|
|
35
|
-
|
|
86
|
+
interface DatepickerSharedProps extends DatepickerHTMLProps {
|
|
36
87
|
/**
|
|
37
88
|
* Additional class names.
|
|
38
89
|
*/
|
|
@@ -42,9 +93,13 @@ export interface DatepickerProps extends DatepickerHTMLProps {
|
|
|
42
93
|
*/
|
|
43
94
|
disabled?: boolean;
|
|
44
95
|
/**
|
|
45
|
-
*
|
|
96
|
+
* Optional note rendered at the bottom of the calendar dropdown, below the
|
|
97
|
+
* `showTime` field(s) when present (otherwise directly below the calendar
|
|
98
|
+
* grid(s)) and above the footer actions. Accepts any `ReactNode` — e.g. an
|
|
99
|
+
* "Available window: [start] – [end]" constraint hint — this component
|
|
100
|
+
* doesn't prescribe what goes there.
|
|
46
101
|
*/
|
|
47
|
-
|
|
102
|
+
footerNote?: ReactNode;
|
|
48
103
|
/**
|
|
49
104
|
* Input ID.
|
|
50
105
|
*/
|
|
@@ -75,14 +130,24 @@ export interface DatepickerProps extends DatepickerHTMLProps {
|
|
|
75
130
|
* Minimum selectable date.
|
|
76
131
|
*/
|
|
77
132
|
minDate?: Date;
|
|
78
|
-
/**
|
|
79
|
-
* onChange handler
|
|
80
|
-
*/
|
|
81
|
-
onChange?: (value: DateRange | Date | undefined) => void;
|
|
82
133
|
/**
|
|
83
134
|
* Placeholder text for the trigger button.
|
|
84
135
|
*/
|
|
85
136
|
placeholder?: string;
|
|
137
|
+
/**
|
|
138
|
+
* Renders a preset list (each computed via `getPresetDateRange`) in a
|
|
139
|
+
* dedicated column to the left of the calendar, with a "Custom" entry
|
|
140
|
+
* below it for picking dates directly from the calendar. The calendar
|
|
141
|
+
* itself is always shown alongside the list, never hidden/collapsed.
|
|
142
|
+
* Selecting a preset drives the calendar's own selection; picking a date
|
|
143
|
+
* directly from the calendar (or editing a `showTime` field) marks
|
|
144
|
+
* "Custom" as active. Only meaningful in range mode (`mode="range"`) —
|
|
145
|
+
* every preset computes a `DateRange`. This is purely additive: the
|
|
146
|
+
* existing external-composition pattern (`getPresetDateRange` +
|
|
147
|
+
* `CustomPresetConfig` wired to an external `SegmentedButton`/`Select`)
|
|
148
|
+
* keeps working unchanged whether or not this prop is used.
|
|
149
|
+
*/
|
|
150
|
+
presets?: CustomPresetConfig[];
|
|
86
151
|
/**
|
|
87
152
|
* Is this field required?
|
|
88
153
|
*/
|
|
@@ -91,6 +156,48 @@ export interface DatepickerProps extends DatepickerHTMLProps {
|
|
|
91
156
|
* Should the label be visible? If false, it will render for screen readers only.
|
|
92
157
|
*/
|
|
93
158
|
showLabel?: boolean;
|
|
159
|
+
/**
|
|
160
|
+
* Whether the calendar (and, when `showTime` is on, the time fields) is
|
|
161
|
+
* shown alongside the `presets` list from the start, or only once "Custom"
|
|
162
|
+
* is clicked. Has no effect unless `presets` is also set. Defaults to
|
|
163
|
+
* `true` — the calendar is always visible, matching this component's
|
|
164
|
+
* original `presets` behavior. Set to `false` for a compact, list-only
|
|
165
|
+
* popover (e.g. a log viewer's rolling-window picker) that expands to
|
|
166
|
+
* reveal the calendar only when the viewer picks "Custom" — once
|
|
167
|
+
* expanded, it stays expanded for the rest of that popover session (even
|
|
168
|
+
* if the viewer clicks back to a different preset afterward); it only
|
|
169
|
+
* collapses again the next time the popover is freshly opened.
|
|
170
|
+
*/
|
|
171
|
+
showPresetCalendar?: boolean;
|
|
172
|
+
/**
|
|
173
|
+
* Embeds Timepicker field(s) in the calendar dropdown (one in single mode,
|
|
174
|
+
* start/end in range mode) — the selected time-of-day is baked directly
|
|
175
|
+
* into the emitted `value`'s own `Date`(s); `value`/`onChange` stay plain
|
|
176
|
+
* `Date`/`DateRange`, no shape change.
|
|
177
|
+
*/
|
|
178
|
+
showTime?: boolean;
|
|
179
|
+
/**
|
|
180
|
+
* Renders an inline-labeled "UTC" / "Local" `SegmentedButton` below the
|
|
181
|
+
* embedded time field(s) that lets the viewer swap which zone the
|
|
182
|
+
* displayed (and subsequently entered) time-of-day is shown in. "Local" is
|
|
183
|
+
* whatever `timeZone` resolves to (the configured zone, not necessarily
|
|
184
|
+
* the browser's own). Only the *displayed/emitted time-of-day* changes
|
|
185
|
+
* when toggled — the selected calendar day never moves, even though, for
|
|
186
|
+
* a time near midnight, converting to a different zone can technically
|
|
187
|
+
* land in the neighboring day; this is an accepted, documented
|
|
188
|
+
* simplification rather than a full zoned re-derivation of the selected
|
|
189
|
+
* date. Has no effect unless `showTime` is also true.
|
|
190
|
+
*/
|
|
191
|
+
showTimeZoneSwitcher?: boolean;
|
|
192
|
+
/**
|
|
193
|
+
* IANA time zone identifier (e.g. "America/Los_Angeles", "UTC") used to
|
|
194
|
+
* combine the selected date with `showTime`'s entered time-of-day into a
|
|
195
|
+
* correct absolute instant. Passed straight through to each embedded
|
|
196
|
+
* `Timepicker`'s own `timeZone` prop as well. Defaults to the browser's
|
|
197
|
+
* local time zone. Has no effect when `showTime` is false. Also acts as
|
|
198
|
+
* the "Local" side of `showTimeZoneSwitcher`, when enabled.
|
|
199
|
+
*/
|
|
200
|
+
timeZone?: string;
|
|
94
201
|
/**
|
|
95
202
|
* Optional tooltip text to display additional information.
|
|
96
203
|
*/
|
|
@@ -108,12 +215,58 @@ export interface DatepickerProps extends DatepickerHTMLProps {
|
|
|
108
215
|
*/
|
|
109
216
|
validationStatus?: ValidationStatus;
|
|
110
217
|
/**
|
|
111
|
-
*
|
|
218
|
+
* Number of months shown side by side in range mode. Defaults to `2`.
|
|
219
|
+
* Fixed for the lifetime of a given `Datepicker` instance — it does not
|
|
220
|
+
* auto-adjust based on the selected range or active preset, matching the
|
|
221
|
+
* static layout shown in Figma's own "Edge logs" recipe (a one-month
|
|
222
|
+
* range+time+presets picker for short windows, since its calendar grid
|
|
223
|
+
* never needs to show more than a single month at once). Has no effect
|
|
224
|
+
* in single mode, which always shows one month.
|
|
225
|
+
*/
|
|
226
|
+
visibleMonths?: 1 | 2;
|
|
227
|
+
}
|
|
228
|
+
export interface SingleDatepickerProps extends DatepickerSharedProps {
|
|
229
|
+
/**
|
|
230
|
+
* Single-date selection (the default) — omit `mode` entirely, or set it
|
|
231
|
+
* explicitly to `'single'`.
|
|
232
|
+
*/
|
|
233
|
+
mode?: 'single';
|
|
234
|
+
/**
|
|
235
|
+
* onChange handler.
|
|
236
|
+
*/
|
|
237
|
+
onChange?: (value: Date | undefined) => void;
|
|
238
|
+
/**
|
|
239
|
+
* Selected date.
|
|
240
|
+
*/
|
|
241
|
+
value?: Date;
|
|
242
|
+
}
|
|
243
|
+
export interface RangeDatepickerProps extends DatepickerSharedProps {
|
|
244
|
+
/**
|
|
245
|
+
* Date-range selection: the calendar shows two months side-by-side and
|
|
246
|
+
* the selected span is visually highlighted.
|
|
247
|
+
*/
|
|
248
|
+
mode: 'range';
|
|
249
|
+
/**
|
|
250
|
+
* onChange handler.
|
|
251
|
+
*/
|
|
252
|
+
onChange?: (value: DateRange | undefined) => void;
|
|
253
|
+
/**
|
|
254
|
+
* Selected date range.
|
|
112
255
|
*/
|
|
113
|
-
value?: DateRange
|
|
256
|
+
value?: DateRange;
|
|
114
257
|
}
|
|
258
|
+
/**
|
|
259
|
+
* `mode` is a discriminated union rather than a `hasDateRange` boolean —
|
|
260
|
+
* `value`/`onChange` narrow to the correct shape for the given mode at the
|
|
261
|
+
* type level, instead of relying on a boolean the compiler can't actually
|
|
262
|
+
* tie to the value's shape (which required internal `as DateRange`/`as Date`
|
|
263
|
+
* casts throughout). `mode` is optional and defaults to `'single'`, so
|
|
264
|
+
* existing single-date consumers (the common case) need no changes — only
|
|
265
|
+
* `hasDateRange` → `mode="range"` for range consumers.
|
|
266
|
+
*/
|
|
267
|
+
export type DatepickerProps = SingleDatepickerProps | RangeDatepickerProps;
|
|
115
268
|
/**
|
|
116
269
|
* Datepicker UI component.
|
|
117
270
|
*/
|
|
118
|
-
export declare const Datepicker: ({ className, disabled,
|
|
271
|
+
export declare const Datepicker: ({ className, disabled, footerNote, id, inputWidth, label, locale, maxDate, message, minDate, mode, onChange, placeholder, presets, required, showLabel, showPresetCalendar, showTime, showTimeZoneSwitcher, timeZone, tooltipText, translationStrings: translationStringsProp, validationMessage, validationStatus, value, visibleMonths, ...props }: DatepickerProps) => import("react/jsx-runtime").JSX.Element;
|
|
119
272
|
export {};
|
|
@@ -120,7 +120,7 @@ export interface TextInputProps extends ComponentPropsWithoutRef<'div'> {
|
|
|
120
120
|
*/
|
|
121
121
|
translationStrings?: LabelStrings;
|
|
122
122
|
/**
|
|
123
|
-
* Type of input field to use. For `time`, prefer the
|
|
123
|
+
* Type of input field to use. For `time`, prefer the Timepicker component when possible — it offers segmented entry, 12/24-hour display, and timezone support. Use TextInput's native `time` type only as a lightweight fallback where that complexity isn't warranted; note it renders with browser-native time picker UI that isn't fully styleable to match PDS.
|
|
124
124
|
*/
|
|
125
125
|
type?: HtmlInputTypes;
|
|
126
126
|
/**
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
2
|
import { CalendarDate } from '@internationalized/date';
|
|
3
3
|
import { ValidationStatus } from '../../../libs/types/input-types';
|
|
4
|
-
import './
|
|
5
|
-
export type
|
|
4
|
+
import './timepicker.css';
|
|
5
|
+
export type TimepickerSize = 's' | 'm';
|
|
6
6
|
/**
|
|
7
|
-
* Prop types for
|
|
7
|
+
* Prop types for Timepicker
|
|
8
8
|
*/
|
|
9
|
-
export interface
|
|
9
|
+
export interface TimepickerProps {
|
|
10
10
|
/**
|
|
11
11
|
* Anchor calendar date used for DST-safe conversion math when `timeZone` changes. Defaults to today (in the previous timezone) if omitted — correct for the vast majority of scheduling UIs. Pass a real date (e.g. from Datepicker's selection) for full precision on/near DST transition dates.
|
|
12
12
|
*/
|
|
@@ -66,7 +66,7 @@ export interface TimeInputProps {
|
|
|
66
66
|
/**
|
|
67
67
|
* Input size.
|
|
68
68
|
*/
|
|
69
|
-
size?:
|
|
69
|
+
size?: TimepickerSize;
|
|
70
70
|
/**
|
|
71
71
|
* IANA timezone identifier (e.g. "America/Los_Angeles", "UTC"). Drives the auto-derived display label (e.g. "PDT") and, when this prop changes, converts the current value into the new zone using `@internationalized/date` — a real, DST-safe conversion, not just a relabel.
|
|
72
72
|
*/
|
|
@@ -89,6 +89,6 @@ export interface TimeInputProps {
|
|
|
89
89
|
value?: string;
|
|
90
90
|
}
|
|
91
91
|
/**
|
|
92
|
-
*
|
|
92
|
+
* Timepicker UI component
|
|
93
93
|
*/
|
|
94
|
-
export declare const
|
|
94
|
+
export declare const Timepicker: ({ anchorDate, className, defaultValue, disabled, hourCycle, id, inputWidth, label, message, onBlur, onChange, onFocus, required, showLabel, size, timeZone, tooltipText, validationMessage, validationStatus, value, }: TimepickerProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
@layer pds-v1, pds-v2;@layer pds-v2{.pds-action-card{background-color:var(--pds-color-card-background);border-radius:var(--pds-border-radius-card);box-shadow:var(--pds-elevation-raised);color:var(--pds-color-foreground-default);cursor:pointer;display:flex;flex-direction:column;height:100%;position:relative}.pds-action-card:hover{box-shadow:var(--pds-elevation-overlay)}.pds-action-card__primary{background:transparent;border:none;border-radius:inherit;font:inherit;inset:0;padding:0;position:absolute;z-index:0}.pds-action-card__primary:focus-visible{outline:none}.pds-action-card__primary:focus-visible~.pds-action-card__inner:after{border:var(--pds-border-width-outline) solid var(--pds-color-interactive-focus);border-radius:var(--pds-border-radius-card);content:"";inset:0;pointer-events:none;position:absolute;transition:var(--pds-animation-transition-button)}.pds-action-card__inner{display:flex;flex-direction:column;flex-grow:1;pointer-events:none;position:relative;z-index:1}.pds-action-card__inner [role=button],.pds-action-card__inner [tabindex],.pds-action-card__inner a,.pds-action-card__inner button,.pds-action-card__inner input,.pds-action-card__inner select,.pds-action-card__inner textarea{pointer-events:auto}.pds-action-card__image{border-radius:var(--pds-border-radius-card) var(--pds-border-radius-card) 0 0;display:block;overflow:hidden}.pds-action-card__image img{display:block;object-fit:cover;object-position:top;width:100%}.pds-action-card__main{flex-grow:1;padding:var(--pds-spacing-l) var(--pds-spacing-xl)}.pds-action-card__footer{padding:0 var(--pds-spacing-xl) var(--pds-spacing-l)}.pds-action-card--secondary{background-color:var(--pds-color-surface-default-secondary)}.pds-action-card--transparent{background-color:transparent}.pds-action-card--image-inset .pds-action-card__image{border-radius:var(--pds-border-radius-card);margin:var(--pds-spacing-m) var(--pds-spacing-m) 0;overflow:hidden;width:auto}.pds-action-card--pad-condensed .pds-action-card__main{padding:var(--pds-spacing-m)}.pds-action-card--pad-condensed .pds-action-card__footer{padding:0 var(--pds-spacing-m) var(--pds-spacing-m)}.pds-action-card--pad-spacious .pds-action-card__main{padding:var(--pds-spacing-xl) var(--pds-spacing-2xl)}.pds-action-card--pad-spacious .pds-action-card__footer{padding:0 var(--pds-spacing-2xl) var(--pds-spacing-xl)}}
|
|
1
|
+
@layer pds-v1, pds-v2;@layer pds-v2{.pds-action-card{background-color:var(--pds-color-card-background);border-radius:var(--pds-border-radius-card);box-shadow:var(--pds-elevation-raised);color:var(--pds-color-foreground-default);cursor:pointer;display:flex;flex-direction:column;height:100%;position:relative}.pds-action-card:hover{box-shadow:var(--pds-elevation-overlay)}.pds-action-card__primary{background:transparent;border:none;border-radius:inherit;cursor:pointer;font:inherit;inset:0;padding:0;position:absolute;z-index:0}.pds-action-card__primary:focus-visible{outline:none}.pds-action-card__primary:focus-visible~.pds-action-card__inner:after{border:var(--pds-border-width-outline) solid var(--pds-color-interactive-focus);border-radius:var(--pds-border-radius-card);content:"";inset:0;pointer-events:none;position:absolute;transition:var(--pds-animation-transition-button)}.pds-action-card__inner{display:flex;flex-direction:column;flex-grow:1;pointer-events:none;position:relative;z-index:1}.pds-action-card__inner [role=button],.pds-action-card__inner [tabindex],.pds-action-card__inner a,.pds-action-card__inner button,.pds-action-card__inner input,.pds-action-card__inner select,.pds-action-card__inner textarea{pointer-events:auto}.pds-action-card__image{border-radius:var(--pds-border-radius-card) var(--pds-border-radius-card) 0 0;display:block;overflow:hidden}.pds-action-card__image img{display:block;object-fit:cover;object-position:top;width:100%}.pds-action-card__main{flex-grow:1;padding:var(--pds-spacing-l) var(--pds-spacing-xl)}.pds-action-card__footer{padding:0 var(--pds-spacing-xl) var(--pds-spacing-l)}.pds-action-card--secondary{background-color:var(--pds-color-surface-default-secondary)}.pds-action-card--transparent{background-color:transparent}.pds-action-card--image-inset .pds-action-card__image{border-radius:var(--pds-border-radius-card);margin:var(--pds-spacing-m) var(--pds-spacing-m) 0;overflow:hidden;width:auto}.pds-action-card--pad-condensed .pds-action-card__main{padding:var(--pds-spacing-m)}.pds-action-card--pad-condensed .pds-action-card__footer{padding:0 var(--pds-spacing-m) var(--pds-spacing-m)}.pds-action-card--pad-spacious .pds-action-card__main{padding:var(--pds-spacing-xl) var(--pds-spacing-2xl)}.pds-action-card--pad-spacious .pds-action-card__footer{padding:0 var(--pds-spacing-2xl) var(--pds-spacing-xl)}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
@layer pds-v1, pds-v2;@layer pds-v2{.pds-badge{--badge-bg:var(--pds-color-badge-brand-muted-background);--badge-fg:var(--pds-color-badge-brand-muted-foreground);align-items:center;background-color:var(--badge-bg);border-radius:var(--pds-border-radius-
|
|
1
|
+
@layer pds-v1, pds-v2;@layer pds-v2{.pds-badge{--badge-bg:var(--pds-color-badge-brand-muted-background);--badge-fg:var(--pds-color-badge-brand-muted-foreground);align-items:center;background-color:var(--badge-bg);border-radius:var(--pds-border-radius-default);color:var(--badge-fg);display:inline-flex;font-size:var(--pds-typography-size-s);font-weight:var(--pds-typography-fw-medium);height:var(--pds-spacing-button-height-s);line-height:1;padding-inline:var(--pds-spacing-s);white-space:nowrap}.pds-badge--s{font-size:var(--pds-typography-size-xs);height:var(--pds-spacing-button-height-xs);padding-inline:var(--pds-spacing-xs)}.pds-badge--xs{font-size:.6875rem;height:var(--pds-spacing-l);padding-inline:var(--pds-spacing-3xs)}.pds-badge--brand{--badge-bg:var(--pds-color-badge-brand-background);--badge-fg:var(--pds-color-badge-brand-foreground)}.pds-badge--critical{--badge-bg:var(--pds-color-badge-critical-background);--badge-fg:var(--pds-color-badge-critical-foreground)}.pds-badge--discovery{--badge-bg:var(--pds-color-badge-discovery-background);--badge-fg:var(--pds-color-badge-discovery-foreground)}.pds-badge--gold{--badge-bg:var(--pds-color-badge-gold-background);--badge-fg:var(--pds-color-badge-gold-foreground)}.pds-badge--indigo{--badge-bg:var(--pds-color-badge-indigo-background);--badge-fg:var(--pds-color-badge-indigo-foreground)}.pds-badge--info{--badge-bg:var(--pds-color-badge-info-background);--badge-fg:var(--pds-color-badge-info-foreground)}.pds-badge--ink{--badge-bg:var(--pds-color-badge-ink-background);--badge-fg:var(--pds-color-badge-ink-foreground)}.pds-badge--lime{--badge-bg:var(--pds-color-badge-lime-background);--badge-fg:var(--pds-color-badge-lime-foreground)}.pds-badge--orange{--badge-bg:var(--pds-color-badge-orange-background);--badge-fg:var(--pds-color-badge-orange-foreground)}.pds-badge--rose{--badge-bg:var(--pds-color-badge-rose-background);--badge-fg:var(--pds-color-badge-rose-foreground)}.pds-badge--silver{--badge-bg:var(--pds-color-badge-silver-background);--badge-fg:var(--pds-color-badge-silver-foreground)}.pds-badge--sky{--badge-bg:var(--pds-color-badge-sky-background);--badge-fg:var(--pds-color-badge-sky-foreground)}.pds-badge--slate{--badge-bg:var(--pds-color-badge-slate-background);--badge-fg:var(--pds-color-badge-slate-foreground)}.pds-badge--stone{--badge-bg:var(--pds-color-badge-stone-background);--badge-fg:var(--pds-color-badge-stone-foreground)}.pds-badge--success{--badge-bg:var(--pds-color-badge-success-background);--badge-fg:var(--pds-color-badge-success-foreground)}.pds-badge--warning{--badge-bg:var(--pds-color-badge-warning-background);--badge-fg:var(--pds-color-badge-warning-foreground)}.pds-badge--brand-muted{--badge-bg:var(--pds-color-badge-brand-muted-background);--badge-fg:var(--pds-color-badge-brand-muted-foreground)}.pds-badge--critical-muted{--badge-bg:var(--pds-color-badge-critical-muted-background);--badge-fg:var(--pds-color-badge-critical-muted-foreground)}.pds-badge--discovery-muted{--badge-bg:var(--pds-color-badge-discovery-muted-background);--badge-fg:var(--pds-color-badge-discovery-muted-foreground)}.pds-badge--gold-muted{--badge-bg:var(--pds-color-badge-gold-muted-background);--badge-fg:var(--pds-color-badge-gold-muted-foreground)}.pds-badge--indigo-muted{--badge-bg:var(--pds-color-badge-indigo-muted-background);--badge-fg:var(--pds-color-badge-indigo-muted-foreground)}.pds-badge--info-muted{--badge-bg:var(--pds-color-badge-info-muted-background);--badge-fg:var(--pds-color-badge-info-muted-foreground)}.pds-badge--ink-muted{--badge-bg:var(--pds-color-badge-ink-muted-background);--badge-fg:var(--pds-color-badge-ink-muted-foreground)}.pds-badge--lime-muted{--badge-bg:var(--pds-color-badge-lime-muted-background);--badge-fg:var(--pds-color-badge-lime-muted-foreground)}.pds-badge--orange-muted{--badge-bg:var(--pds-color-badge-orange-muted-background);--badge-fg:var(--pds-color-badge-orange-muted-foreground)}.pds-badge--rose-muted{--badge-bg:var(--pds-color-badge-rose-muted-background);--badge-fg:var(--pds-color-badge-rose-muted-foreground)}.pds-badge--silver-muted{--badge-bg:var(--pds-color-badge-silver-muted-background);--badge-fg:var(--pds-color-badge-silver-muted-foreground)}.pds-badge--sky-muted{--badge-bg:var(--pds-color-badge-sky-muted-background);--badge-fg:var(--pds-color-badge-sky-muted-foreground)}.pds-badge--slate-muted{--badge-bg:var(--pds-color-badge-slate-muted-background);--badge-fg:var(--pds-color-badge-slate-muted-foreground)}.pds-badge--stone-muted{--badge-bg:var(--pds-color-badge-stone-muted-background);--badge-fg:var(--pds-color-badge-stone-muted-foreground)}.pds-badge--success-muted{--badge-bg:var(--pds-color-badge-success-muted-background);--badge-fg:var(--pds-color-badge-success-muted-foreground)}.pds-badge--warning-muted{--badge-bg:var(--pds-color-badge-warning-muted-background);--badge-fg:var(--pds-color-badge-warning-muted-foreground)}}
|
|
@@ -1,5 +1 @@
|
|
|
1
|
-
@layer pds-v1, pds-v2;@layer pds-v2{.pds-datepicker{color:var(--pds-color-foreground-default);font-family:var(--pds-typography-ff-default)}.pds-datepicker__input-wrapper{align-items:center;column-gap:var(--pds-spacing-s);display:flex;row-gap:var(--pds-spacing-xs);width:100%}.pds-datepicker__trigger{align-items:center;background:var(--pds-color-surface-default);border:var(--pds-border-width-default) solid var(--pds-color-border-input);border-radius:var(--pds-border-radius-input);color:var(--pds-color-foreground-default);cursor:pointer;display:flex;font-size:var(--pds-typography-size-s);gap:var(--pds-spacing-s);height:var(--pds-spacing-input-height-s);justify-content:space-between;min-width:10rem;padding:var(--pds-spacing-s);width:100%}.pds-datepicker__trigger:disabled{cursor:not-allowed}.pds-datepicker__trigger--open,.pds-datepicker__trigger:focus-visible{outline:var(--pds-border-width-outline) solid var(--pds-color-interactive-focus);outline-offset:0;transition:var(--pds-animation-transition-focus)}.pds-datepicker__trigger-text{align-items:center;display:flex;flex:1;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.pds-datepicker__trigger-text--placeholder{color:var(--pds-color-input-placeholder)}.pds-datepicker__trigger-icon{color:var(--pds-color-foreground-default);flex-shrink:0;margin-block-start:-1px}.pds-datepicker__separator{padding-inline:var(--pds-spacing-s)}.pds-datepicker__popover{background-color:var(--pds-color-surface-default);border-radius:var(--pds-border-radius-container);box-shadow:var(--pds-elevation-overlay);overflow:hidden;z-index:var(--pds-z-index-overlay)}.pds-datepicker__calendar{background-color:var(--pds-color-surface-default);padding:var(--pds-spacing-s) var(--pds-spacing-s) var(--pds-spacing-
|
|
2
|
-
--pds-color-interactive-background-selected
|
|
3
|
-
);--rdp-range_middle-color:var(
|
|
4
|
-
--pds-color-interactive-background-selected-foreground
|
|
5
|
-
);--rdp-today-color:var(--pds-color-foreground-default);--rdp-day-height:var(--day-size);--rdp-day-width:calc(var(--day-size) + 4px);--rdp-day_button-height:var(--day-size);--rdp-day_button-width:var(--day-size)}.pds-datepicker .rdp-month_caption{margin-block-end:var(--pds-spacing-2xs)}.pds-datepicker .rdp-caption_label{color:var(--pds-color-foreground-default)}.pds-datepicker .rdp-caption_label,.pds-datepicker .rdp-weekday{font-size:var(--pds-typography-size-s);font-weight:var(--pds-typography-fw-semibold)}.pds-datepicker .rdp-weekday{color:var(--pds-color-foreground-default-secondary);opacity:1}.pds-datepicker .rdp-week{border:var(--pds-spacing-3xs) solid var(--pds-color-surface-default)}.pds-datepicker .rdp-day_button{font-size:var(--pds-typography-size-s);font-weight:var(--pds-typography-fw-regular)}.pds-datepicker .rdp-day_button:focus-visible{outline:var(--pds-border-width-outline) solid var(--pds-color-interactive-focus)}.pds-datepicker .rdp-selected:not(.rdp-range_middle) .rdp-day_button{background-color:var(--pds-color-datepicker-selected-background);border-radius:50%;color:var(--pds-color-datepicker-selected-foreground)}.pds-datepicker .rdp-today .rdp-day_button{border-radius:50%;box-shadow:inset 0 0 0 var(--pds-border-width-default) var(--pds-color-datepicker-accent-foreground)}.pds-datepicker .rdp-today.rdp-selected:not(.rdp-range_middle) .rdp-day_button{box-shadow:inset 0 0 0 var(--pds-border-width-default) var(--pds-color-datepicker-selected-foreground)}.pds-datepicker .rdp-button_next,.pds-datepicker .rdp-button_previous{color:var(--pds-color-foreground-default-secondary)}.pds-datepicker .rdp-button_next:hover,.pds-datepicker .rdp-button_previous:hover{color:var(--pds-color-button-secondary-foreground-hover)}.pds-datepicker .rdp-button_next:focus-visible,.pds-datepicker .rdp-button_previous:focus-visible{border-radius:var(--pds-border-radius-button);outline:var(--pds-border-width-outline) solid var(--pds-color-interactive-focus)}@media (max-width:767px){.pds-datepicker__input-wrapper{align-items:stretch;flex-direction:column}.pds-datepicker .rdp-root .rdp-months{flex-direction:column}}}
|
|
1
|
+
@layer pds-v1, pds-v2;@layer pds-v2{.pds-datepicker{--day-size:2rem;--day-gap:4px;color:var(--pds-color-foreground-default);font-family:var(--pds-typography-ff-default)}.pds-datepicker__input-wrapper{align-items:center;column-gap:var(--pds-spacing-s);display:flex;row-gap:var(--pds-spacing-xs);width:100%}.pds-datepicker__trigger{align-items:center;background:var(--pds-color-surface-default);border:var(--pds-border-width-default) solid var(--pds-color-border-input);border-radius:var(--pds-border-radius-input);color:var(--pds-color-foreground-default);cursor:pointer;display:flex;font-size:var(--pds-typography-size-s);gap:var(--pds-spacing-s);height:var(--pds-spacing-input-height-s);justify-content:space-between;min-width:10rem;padding:var(--pds-spacing-s);width:100%}.pds-datepicker__trigger:disabled{cursor:not-allowed}.pds-datepicker__trigger--open,.pds-datepicker__trigger:focus-visible{outline:var(--pds-border-width-outline) solid var(--pds-color-interactive-focus);outline-offset:0;transition:var(--pds-animation-transition-focus)}.pds-datepicker__trigger-text{align-items:center;display:flex;flex:1;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.pds-datepicker__trigger-text--placeholder{color:var(--pds-color-input-placeholder)}.pds-datepicker__trigger-icon{color:var(--pds-color-foreground-default);flex-shrink:0;margin-block-start:-1px}.pds-datepicker__separator{padding-inline:var(--pds-spacing-s)}.pds-datepicker__popover{background-color:var(--pds-color-surface-default);border-radius:var(--pds-border-radius-container);box-shadow:var(--pds-elevation-overlay);display:flex;overflow-x:hidden;overflow-y:auto;z-index:var(--pds-z-index-overlay)}.pds-datepicker__presets{border-inline-end:var(--pds-border-width-default) solid var(--pds-color-dropdown-separator);display:flex;flex-direction:column;justify-content:space-between;min-width:13.75rem;padding:var(--pds-spacing-s);width:13.75rem}.pds-datepicker__presets--collapsed{border-inline-end:none}.pds-datepicker__calendar-wrapper{flex-basis:0;flex-shrink:0;overflow:hidden;transition:flex-basis .3s cubic-bezier(.2,0,0,1)}.pds-datepicker__preset-list{display:flex;flex-direction:column;gap:var(--pds-spacing-4xs)}.pds-datepicker__preset-item{align-items:center;background:none;border:none;border-radius:var(--pds-border-radius-container);color:var(--pds-color-dropdown-foreground);cursor:pointer;display:flex;font-size:var(--pds-typography-size-s);justify-content:space-between;min-height:var(--pds-spacing-2xl);padding-block:var(--pds-spacing-2xs);padding-inline:var(--pds-spacing-xs);text-align:start}.pds-datepicker__preset-item:hover{background-color:var(--pds-color-dropdown-item-background-hover)}.pds-datepicker__preset-item:focus-visible{outline:var(--pds-border-width-outline) solid var(--pds-color-interactive-focus)}.pds-datepicker__preset-item--active{font-weight:var(--pds-typography-fw-medium)}.pds-datepicker__preset-item--active,.pds-datepicker__preset-item--active:hover{background-color:var(--pds-color-interactive-background-active)}.pds-datepicker__preset-divider{background-color:var(--pds-color-dropdown-separator);height:var(--pds-border-width-default);margin-block:var(--pds-spacing-2xs)}.pds-datepicker__calendar{background-color:var(--pds-color-surface-default);display:flex;flex-direction:column;gap:var(--pds-spacing-m);padding:var(--pds-spacing-s) var(--pds-spacing-s) var(--pds-spacing-s)}.pds-datepicker__nav{align-items:center;display:flex;justify-content:space-between;margin-block-end:var(--pds-spacing-s)}.pds-datepicker__nav-title{color:var(--pds-color-foreground-default);flex:1;font-size:var(--pds-typography-size-s);font-weight:var(--pds-typography-fw-semibold);text-align:center}.pds-datepicker__nav-button{align-items:center;background:none;border:none;border-radius:var(--pds-border-radius-button);color:var(--pds-color-foreground-default-secondary);cursor:pointer;display:flex;justify-content:center;padding:var(--pds-spacing-2xs)}.pds-datepicker__nav-button:hover:enabled{background-color:var(--pds-color-button-subtle-background-hover);color:var(--pds-color-button-secondary-foreground-hover)}.pds-datepicker__nav-button:focus-visible{outline:var(--pds-border-width-outline) solid var(--pds-color-interactive-focus)}.pds-datepicker__nav-button:disabled{cursor:not-allowed;opacity:40%}.pds-datepicker__nav-button-spacer{visibility:hidden}.pds-datepicker__grids{display:flex;gap:var(--pds-spacing-l)}.pds-datepicker__month{flex:1}.pds-datepicker__grid{border-collapse:collapse;margin-inline:auto;width:auto}.pds-datepicker__grid th{padding:0}.pds-datepicker__grid tr{border-block-end:none}.pds-datepicker__weekday{color:var(--pds-color-foreground-default-secondary);font-size:var(--pds-typography-size-s);font-weight:var(--pds-typography-fw-semibold);height:var(--day-size);text-align:center}.pds-datepicker__cell{padding-block:3px;padding-inline:0;position:relative;text-align:center;width:calc(var(--day-size) + var(--day-gap))}.pds-datepicker__day{align-items:center;border-radius:50%;cursor:pointer;display:flex;font-size:var(--pds-typography-size-s);font-weight:var(--pds-typography-fw-regular);height:var(--day-size);justify-content:center;outline:none;position:relative;width:var(--day-size);z-index:0}.pds-datepicker__day[hidden]{display:none}.pds-datepicker__day:focus-visible{outline:var(--pds-border-width-outline) solid var(--pds-color-interactive-focus)}.pds-datepicker__day--today{box-shadow:inset 0 0 0 var(--pds-border-width-default) var(--pds-color-datepicker-accent-foreground)}.pds-datepicker__cell--in-range{background-clip:content-box;background-color:var(--pds-color-interactive-background-selected)}.pds-datepicker__cell--range-start{border-end-start-radius:calc(var(--day-size)/2);border-start-start-radius:calc(var(--day-size)/2)}.pds-datepicker__cell--range-end{border-end-end-radius:calc(var(--day-size)/2);border-start-end-radius:calc(var(--day-size)/2);padding-inline-end:var(--day-gap)}.pds-datepicker__day--selected{background-color:var(--pds-color-datepicker-selected-background);color:var(--pds-color-datepicker-selected-foreground)}.pds-datepicker__day--today.pds-datepicker__day--selected{box-shadow:inset 0 0 0 var(--pds-border-width-default) var(--pds-color-datepicker-selected-foreground)}.pds-datepicker__day--disabled,.pds-datepicker__day--unavailable{cursor:not-allowed;opacity:40%}.pds-datepicker__time-section{border-block-start:var(--pds-border-width-default) solid var(--pds-color-border-default);display:flex;flex-direction:column;gap:var(--pds-spacing-s);padding-block-start:var(--pds-spacing-m)}.pds-datepicker__timezone-switcher{align-items:center;display:flex;gap:var(--pds-spacing-s)}.pds-datepicker__timezone-switcher-label{color:var(--pds-color-foreground-default);font-size:var(--pds-typography-size-input-label);font-weight:var(--pds-typography-fw-medium);white-space:nowrap}.pds-datepicker__time-fields{display:flex;gap:var(--pds-spacing-l)}.pds-datepicker__time-fields>*{flex:1}.pds-datepicker__footer-note{color:var(--pds-color-foreground-default-secondary);font-size:var(--pds-typography-size-s)}.pds-datepicker__actions{display:flex;justify-content:space-between;padding:var(--pds-spacing-xs) var(--pds-spacing-4xs) var(--pds-spacing-3xs)}.pds-datepicker__actions-group{display:flex;gap:var(--pds-spacing-s)}@media (max-width:767px){.pds-datepicker__input-wrapper{align-items:stretch;flex-direction:column}.pds-datepicker__grids{flex-direction:column}}}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
@layer pds-v1, pds-v2;@layer pds-v2{.pds-dropdown{position:relative}.pds-dropdown--inline{display:inline-block}.pds-dropdown__trigger{align-items:center;background:transparent;border:none;border-radius:var(--pds-border-radius-container);color:inherit;cursor:pointer;display:inline-flex;font-family:inherit;gap:var(--pds-spacing-3xs);padding:var(--pds-spacing-3xs) var(--pds-spacing-2xs);transition:background-color .15s ease}.pds-dropdown__trigger:hover{background-color:var(--pds-color-interactive-background-hover)}.pds-dropdown__trigger:focus-visible{outline:var(--pds-border-width-outline) solid var(--pds-color-interactive-focus);outline-offset:1px}.pds-dropdown__trigger-icon{color:var(--pds-color-foreground-default-secondary);transition:var(--pds-animation-transition-rotation)}.pds-dropdown__trigger[aria-expanded=true] .pds-dropdown__trigger-icon{transform:rotate(180deg)}.pds-dropdown__panel{background-color:var(--pds-color-dropdown-background);box-shadow:var(--pds-elevation-overlay);flex-direction:column;gap:var(--pds-spacing-4xs);margin:0;min-width:10rem;overflow-y:auto;padding-inline:var(--pds-spacing-2xs);z-index:var(--pds-z-index-dropdown)}.pds-dropdown__item,.pds-dropdown__panel{border-radius:var(--pds-border-radius-container);display:flex;list-style:none;outline:none;padding-block:var(--pds-spacing-2xs)}.pds-dropdown__item{align-items:center;color:var(--pds-color-dropdown-foreground);cursor:pointer;font-size:var(--pds-typography-size-s);gap:var(--pds-spacing-s);justify-content:space-between;min-height:var(--pds-spacing-2xl);padding-inline:var(--pds-spacing-xs)}.pds-dropdown__item:focus-visible:not(:hover){outline:var(--pds-border-width-outline) solid var(--pds-color-interactive-focus);outline-offset:-1px}.pds-dropdown__item--focused,.pds-dropdown__item:hover{background-color:var(--pds-color-dropdown-item-background-hover)}.pds-dropdown__item:active{background-color:var(--pds-color-dropdown-item-background-active)}.pds-dropdown__selected-icon{align-self:center;color:var(--pds-color-foreground-default);display:flex;flex-shrink:0;height:.875em;width:.875em}.pds-dropdown__item--critical{color:var(--pds-color-status-critical-foreground)}.pds-dropdown__item--critical.pds-dropdown__item--focused,.pds-dropdown__item--critical:hover{background-color:var(--pds-color-status-critical-background)}.pds-dropdown__item--disabled{cursor:not-allowed;opacity:.5;pointer-events:none}.pds-dropdown__item-content{align-items:center;display:flex;gap:var(--pds-spacing-2xs)}.pds-dropdown__item-icon{display:flex;flex-shrink:0}.pds-dropdown__item-label{display:flex;flex-direction:column}.pds-dropdown__item-description{color:var(--pds-color-foreground-default-secondary);font-size:var(--pds-typography-size-xs);line-height:var(--pds-typography-lh-s);margin-block-start:var(--pds-spacing-4xs)}.pds-dropdown__item-trailing{display:flex;flex-shrink:0}.pds-dropdown__checkbox-box{align-items:center;background-color:transparent;border:var(--pds-border-width-default) solid var(--pds-color-foreground-default);border-radius:var(--pds-border-radius-
|
|
1
|
+
@layer pds-v1, pds-v2;@layer pds-v2{.pds-dropdown{position:relative}.pds-dropdown--inline{display:inline-block}.pds-dropdown__trigger{align-items:center;background:transparent;border:none;border-radius:var(--pds-border-radius-container);color:inherit;cursor:pointer;display:inline-flex;font-family:inherit;gap:var(--pds-spacing-3xs);padding:var(--pds-spacing-3xs) var(--pds-spacing-2xs);transition:background-color .15s ease}.pds-dropdown__trigger:hover{background-color:var(--pds-color-interactive-background-hover)}.pds-dropdown__trigger:focus-visible{outline:var(--pds-border-width-outline) solid var(--pds-color-interactive-focus);outline-offset:1px}.pds-dropdown__trigger-icon{color:var(--pds-color-foreground-default-secondary);transition:var(--pds-animation-transition-rotation)}.pds-dropdown__trigger[aria-expanded=true] .pds-dropdown__trigger-icon{transform:rotate(180deg)}.pds-dropdown__panel{background-color:var(--pds-color-dropdown-background);box-shadow:var(--pds-elevation-overlay);flex-direction:column;gap:var(--pds-spacing-4xs);margin:0;min-width:10rem;overflow-y:auto;padding-inline:var(--pds-spacing-2xs);z-index:var(--pds-z-index-dropdown)}.pds-dropdown__item,.pds-dropdown__panel{border-radius:var(--pds-border-radius-container);display:flex;list-style:none;outline:none;padding-block:var(--pds-spacing-2xs)}.pds-dropdown__item{align-items:center;color:var(--pds-color-dropdown-foreground);cursor:pointer;font-size:var(--pds-typography-size-s);gap:var(--pds-spacing-s);justify-content:space-between;min-height:var(--pds-spacing-2xl);padding-inline:var(--pds-spacing-xs)}.pds-dropdown__item:focus-visible:not(:hover){outline:var(--pds-border-width-outline) solid var(--pds-color-interactive-focus);outline-offset:-1px}.pds-dropdown__item--focused,.pds-dropdown__item:hover{background-color:var(--pds-color-dropdown-item-background-hover)}.pds-dropdown__item:active{background-color:var(--pds-color-dropdown-item-background-active)}.pds-dropdown__selected-icon{align-self:center;color:var(--pds-color-foreground-default);display:flex;flex-shrink:0;height:.875em;width:.875em}.pds-dropdown__item--critical{color:var(--pds-color-status-critical-foreground)}.pds-dropdown__item--critical.pds-dropdown__item--focused,.pds-dropdown__item--critical:hover{background-color:var(--pds-color-status-critical-background)}.pds-dropdown__item--disabled{cursor:not-allowed;opacity:.5;pointer-events:none}.pds-dropdown__item-content{align-items:center;display:flex;gap:var(--pds-spacing-2xs)}.pds-dropdown__item-icon{display:flex;flex-shrink:0}.pds-dropdown__item-label{display:flex;flex-direction:column}.pds-dropdown__item-description{color:var(--pds-color-foreground-default-secondary);font-size:var(--pds-typography-size-xs);line-height:var(--pds-typography-lh-s);margin-block-start:var(--pds-spacing-4xs)}.pds-dropdown__item-trailing{display:flex;flex-shrink:0}.pds-dropdown__checkbox-box{align-items:center;background-color:transparent;border:var(--pds-border-width-default) solid var(--pds-color-foreground-default);border-radius:var(--pds-border-radius-default);color:var(--pds-color-input-selected-foreground);display:flex;flex-shrink:0;height:1rem;justify-content:center;padding:.0625rem;transition:var(--pds-animation-transition-default);width:1rem}.pds-dropdown__checkbox-box--checked,.pds-dropdown__checkbox-box--indeterminate{background-color:var(--pds-color-input-selected-background);border-color:var(--pds-color-input-selected-background)}.pds-dropdown__checkbox-icon{height:100%;width:100%}.pds-dropdown__heading{color:var(--pds-color-dropdown-heading);font-family:var(--pds-typography-ff-compact);font-size:var(--pds-typography-size-xs);font-weight:var(--pds-typography-fw-regular);line-height:var(--pds-typography-lh-s);list-style:none;padding:var(--pds-spacing-xs) var(--pds-spacing-xs) var(--pds-spacing-3xs)}.pds-dropdown__separator{border-block-end:var(--pds-border-width-default) solid var(--pds-color-dropdown-separator);list-style:none;margin-block-end:2px;margin-inline:calc(var(--pds-spacing-2xs)*-1);padding-block:2px}.pds-dropdown__filter{list-style:none;margin-block-start:calc(var(--pds-spacing-2xs)*-1);margin-inline:calc(var(--pds-spacing-2xs)*-1);padding:0}.pds-dropdown__filter-wrapper{align-items:center;display:flex;position:relative}.pds-dropdown__filter-icon{block-size:.875rem;color:var(--pds-color-foreground-default-secondary);inline-size:.875rem;left:var(--pds-spacing-s);pointer-events:none;position:absolute}.pds-dropdown__filter-wrapper:has(.pds-dropdown__filter-icon)
|
|
2
2
|
.pds-dropdown__filter-input{padding-inline-start:calc(var(--pds-spacing-s) + var(--pds-spacing-xl))}.pds-dropdown__filter-input{background-color:transparent;border:none;border-block-end:var(--pds-border-width-default) solid var(--pds-color-border-input);border-radius:0;box-sizing:border-box;color:var(--pds-color-foreground-default);font-family:inherit;font-size:var(--pds-typography-size-s);padding:var(--pds-spacing-s);width:100%}.pds-dropdown__filter-input::placeholder{color:var(--pds-color-input-placeholder);font-size:var(--pds-typography-size-s)}.pds-dropdown__filter-input:focus-visible{border-radius:var(--pds-border-radius-container) var(--pds-border-radius-container) 0 0;outline:var(--pds-border-width-outline) solid var(--pds-color-interactive-focus);outline-offset:-3px}.pds-dropdown__no-results{color:var(--pds-color-foreground-default-secondary);font-size:var(--pds-typography-size-s);padding-block-end:var(--pds-spacing-s);padding-block-start:var(--pds-spacing-xs);padding-inline:var(--pds-spacing-s)}.pds-dropdown__footer{background-color:var(--pds-color-dropdown-background);border-block-start:var(--pds-border-width-default) solid var(--pds-color-dropdown-separator);bottom:calc(var(--pds-spacing-2xs)*-1);list-style:none;margin-block-end:calc(var(--pds-spacing-2xs)*-1);margin-block-start:var(--pds-spacing-3xs);margin-inline:calc(var(--pds-spacing-2xs)*-1);padding:var(--pds-spacing-s);position:sticky}.pds-dropdown__footer a,.pds-dropdown__footer button{align-items:center;background:none;border:none;color:var(--pds-color-interactive-link-default);cursor:pointer;display:flex;font:inherit;gap:var(--pds-spacing-3xs);padding:0;text-decoration:none;width:100%}.pds-dropdown__footer a:hover,.pds-dropdown__footer button:hover{color:var(--pds-color-interactive-link-hover);text-decoration:underline}.pds-dropdown__footer a:focus-visible,.pds-dropdown__footer button:focus-visible{outline:var(--pds-border-width-outline) solid var(--pds-color-interactive-focus);outline-offset:2px}}
|