@pearpages/pulp-react 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 +65 -0
- package/dist/ListboxOptions-DLsT-dkV.d.ts +11 -0
- package/dist/ToggleField-C-qKSgHh.d.ts +3 -0
- package/dist/accordion.css +90 -0
- package/dist/accordion.css.map +1 -0
- package/dist/accordion.d.ts +71 -0
- package/dist/accordion.js +6 -0
- package/dist/accordion.js.map +1 -0
- package/dist/alert.css +246 -0
- package/dist/alert.css.map +1 -0
- package/dist/alert.d.ts +46 -0
- package/dist/alert.js +10 -0
- package/dist/alert.js.map +1 -0
- package/dist/badge.css +89 -0
- package/dist/badge.css.map +1 -0
- package/dist/badge.d.ts +38 -0
- package/dist/badge.js +5 -0
- package/dist/badge.js.map +1 -0
- package/dist/button.css +162 -0
- package/dist/button.css.map +1 -0
- package/dist/button.d.ts +61 -0
- package/dist/button.js +8 -0
- package/dist/button.js.map +1 -0
- package/dist/calendar.css +128 -0
- package/dist/calendar.css.map +1 -0
- package/dist/calendar.d.ts +48 -0
- package/dist/calendar.js +6 -0
- package/dist/calendar.js.map +1 -0
- package/dist/card.css +66 -0
- package/dist/card.css.map +1 -0
- package/dist/card.d.ts +69 -0
- package/dist/card.js +5 -0
- package/dist/card.js.map +1 -0
- package/dist/checkbox.css +106 -0
- package/dist/checkbox.css.map +1 -0
- package/dist/checkbox.d.ts +41 -0
- package/dist/checkbox.js +7 -0
- package/dist/checkbox.js.map +1 -0
- package/dist/chunk-2PXTVZ7H.js +95 -0
- package/dist/chunk-2PXTVZ7H.js.map +1 -0
- package/dist/chunk-2ZP4ZBI5.js +43 -0
- package/dist/chunk-2ZP4ZBI5.js.map +1 -0
- package/dist/chunk-3GWESUGD.js +28 -0
- package/dist/chunk-3GWESUGD.js.map +1 -0
- package/dist/chunk-4HRNRTXI.js +25 -0
- package/dist/chunk-4HRNRTXI.js.map +1 -0
- package/dist/chunk-5SBKZS56.js +56 -0
- package/dist/chunk-5SBKZS56.js.map +1 -0
- package/dist/chunk-6I26MMQF.js +19 -0
- package/dist/chunk-6I26MMQF.js.map +1 -0
- package/dist/chunk-75GTNRBH.js +45 -0
- package/dist/chunk-75GTNRBH.js.map +1 -0
- package/dist/chunk-7DS4I7OJ.js +30 -0
- package/dist/chunk-7DS4I7OJ.js.map +1 -0
- package/dist/chunk-ASNTNTJW.js +27 -0
- package/dist/chunk-ASNTNTJW.js.map +1 -0
- package/dist/chunk-ASOQ2MVR.js +19 -0
- package/dist/chunk-ASOQ2MVR.js.map +1 -0
- package/dist/chunk-AWQHULJC.js +31 -0
- package/dist/chunk-AWQHULJC.js.map +1 -0
- package/dist/chunk-BBV4L5WO.js +43 -0
- package/dist/chunk-BBV4L5WO.js.map +1 -0
- package/dist/chunk-CZBCGLEM.js +9 -0
- package/dist/chunk-CZBCGLEM.js.map +1 -0
- package/dist/chunk-DWE374JX.js +65 -0
- package/dist/chunk-DWE374JX.js.map +1 -0
- package/dist/chunk-DXOOW6Q6.js +159 -0
- package/dist/chunk-DXOOW6Q6.js.map +1 -0
- package/dist/chunk-F3OFZGGE.js +116 -0
- package/dist/chunk-F3OFZGGE.js.map +1 -0
- package/dist/chunk-FH54XQ35.js +125 -0
- package/dist/chunk-FH54XQ35.js.map +1 -0
- package/dist/chunk-FXRSZUDH.js +38 -0
- package/dist/chunk-FXRSZUDH.js.map +1 -0
- package/dist/chunk-GTTXRDXV.js +181 -0
- package/dist/chunk-GTTXRDXV.js.map +1 -0
- package/dist/chunk-I4KC4V6A.js +31 -0
- package/dist/chunk-I4KC4V6A.js.map +1 -0
- package/dist/chunk-I5OZ63W7.js +50 -0
- package/dist/chunk-I5OZ63W7.js.map +1 -0
- package/dist/chunk-IDNGNQNV.js +41 -0
- package/dist/chunk-IDNGNQNV.js.map +1 -0
- package/dist/chunk-J5S2HVHO.js +67 -0
- package/dist/chunk-J5S2HVHO.js.map +1 -0
- package/dist/chunk-K5QGGQOV.js +84 -0
- package/dist/chunk-K5QGGQOV.js.map +1 -0
- package/dist/chunk-KPQGS4PG.js +77 -0
- package/dist/chunk-KPQGS4PG.js.map +1 -0
- package/dist/chunk-MI4QUKQS.js +8 -0
- package/dist/chunk-MI4QUKQS.js.map +1 -0
- package/dist/chunk-MRQWUCBA.js +57 -0
- package/dist/chunk-MRQWUCBA.js.map +1 -0
- package/dist/chunk-MXWXJZFS.js +48 -0
- package/dist/chunk-MXWXJZFS.js.map +1 -0
- package/dist/chunk-N7L66GMG.js +129 -0
- package/dist/chunk-N7L66GMG.js.map +1 -0
- package/dist/chunk-NAYFLTK6.js +32 -0
- package/dist/chunk-NAYFLTK6.js.map +1 -0
- package/dist/chunk-O6OBFL3Q.js +155 -0
- package/dist/chunk-O6OBFL3Q.js.map +1 -0
- package/dist/chunk-OGIQRHNF.js +52 -0
- package/dist/chunk-OGIQRHNF.js.map +1 -0
- package/dist/chunk-OUFAFINB.js +45 -0
- package/dist/chunk-OUFAFINB.js.map +1 -0
- package/dist/chunk-OXYP34CG.js +43 -0
- package/dist/chunk-OXYP34CG.js.map +1 -0
- package/dist/chunk-P5C2U5ZF.js +73 -0
- package/dist/chunk-P5C2U5ZF.js.map +1 -0
- package/dist/chunk-PM4YO67Q.js +53 -0
- package/dist/chunk-PM4YO67Q.js.map +1 -0
- package/dist/chunk-Q6J6BMSB.js +86 -0
- package/dist/chunk-Q6J6BMSB.js.map +1 -0
- package/dist/chunk-T76YSNTZ.js +33 -0
- package/dist/chunk-T76YSNTZ.js.map +1 -0
- package/dist/chunk-TGMDOQCL.js +53 -0
- package/dist/chunk-TGMDOQCL.js.map +1 -0
- package/dist/chunk-TVI5AXLE.js +41 -0
- package/dist/chunk-TVI5AXLE.js.map +1 -0
- package/dist/chunk-U6QRAD73.js +22 -0
- package/dist/chunk-U6QRAD73.js.map +1 -0
- package/dist/chunk-UX42PQLT.js +76 -0
- package/dist/chunk-UX42PQLT.js.map +1 -0
- package/dist/chunk-XDVS7HX7.js +100 -0
- package/dist/chunk-XDVS7HX7.js.map +1 -0
- package/dist/chunk-Y4TZA77G.js +57 -0
- package/dist/chunk-Y4TZA77G.js.map +1 -0
- package/dist/chunk-YUHS5S5Y.js +12 -0
- package/dist/chunk-YUHS5S5Y.js.map +1 -0
- package/dist/chunk-Z4PN6B2C.js +17 -0
- package/dist/chunk-Z4PN6B2C.js.map +1 -0
- package/dist/chunk-ZVDN3GRI.js +49 -0
- package/dist/chunk-ZVDN3GRI.js.map +1 -0
- package/dist/combobox.css +280 -0
- package/dist/combobox.css.map +1 -0
- package/dist/combobox.d.ts +75 -0
- package/dist/combobox.js +10 -0
- package/dist/combobox.js.map +1 -0
- package/dist/component-manifest.json +3370 -0
- package/dist/date-picker.css +267 -0
- package/dist/date-picker.css.map +1 -0
- package/dist/date-picker.d.ts +59 -0
- package/dist/date-picker.js +8 -0
- package/dist/date-picker.js.map +1 -0
- package/dist/dialog.css +62 -0
- package/dist/dialog.css.map +1 -0
- package/dist/dialog.d.ts +56 -0
- package/dist/dialog.js +3 -0
- package/dist/dialog.js.map +1 -0
- package/dist/field.css +28 -0
- package/dist/field.css.map +1 -0
- package/dist/field.d.ts +98 -0
- package/dist/field.js +5 -0
- package/dist/field.js.map +1 -0
- package/dist/floating-Bw-LN_QT.d.ts +5 -0
- package/dist/heading.css +30 -0
- package/dist/heading.css.map +1 -0
- package/dist/heading.d.ts +316 -0
- package/dist/heading.js +4 -0
- package/dist/heading.js.map +1 -0
- package/dist/icon-button.css +177 -0
- package/dist/icon-button.css.map +1 -0
- package/dist/icon-button.d.ts +29 -0
- package/dist/icon-button.js +9 -0
- package/dist/icon-button.js.map +1 -0
- package/dist/icon.css +25 -0
- package/dist/icon.css.map +1 -0
- package/dist/icon.d.ts +33 -0
- package/dist/icon.js +4 -0
- package/dist/icon.js.map +1 -0
- package/dist/index.css +2345 -0
- package/dist/index.css.map +1 -0
- package/dist/index.d.ts +42 -0
- package/dist/index.js +49 -0
- package/dist/index.js.map +1 -0
- package/dist/inline.css +63 -0
- package/dist/inline.css.map +1 -0
- package/dist/inline.d.ts +322 -0
- package/dist/inline.js +4 -0
- package/dist/inline.js.map +1 -0
- package/dist/listbox.css +95 -0
- package/dist/listbox.css.map +1 -0
- package/dist/listbox.d.ts +47 -0
- package/dist/listbox.js +7 -0
- package/dist/listbox.js.map +1 -0
- package/dist/menu.css +102 -0
- package/dist/menu.css.map +1 -0
- package/dist/menu.d.ts +76 -0
- package/dist/menu.js +9 -0
- package/dist/menu.js.map +1 -0
- package/dist/pagination.css +212 -0
- package/dist/pagination.css.map +1 -0
- package/dist/pagination.d.ts +52 -0
- package/dist/pagination.js +10 -0
- package/dist/pagination.js.map +1 -0
- package/dist/picker.css +209 -0
- package/dist/picker.css.map +1 -0
- package/dist/picker.d.ts +57 -0
- package/dist/picker.js +8 -0
- package/dist/picker.js.map +1 -0
- package/dist/popover.css +48 -0
- package/dist/popover.css.map +1 -0
- package/dist/popover.d.ts +68 -0
- package/dist/popover.js +7 -0
- package/dist/popover.js.map +1 -0
- package/dist/progress.css +83 -0
- package/dist/progress.css.map +1 -0
- package/dist/progress.d.ts +40 -0
- package/dist/progress.js +5 -0
- package/dist/progress.js.map +1 -0
- package/dist/radio.css +107 -0
- package/dist/radio.css.map +1 -0
- package/dist/radio.d.ts +68 -0
- package/dist/radio.js +6 -0
- package/dist/radio.js.map +1 -0
- package/dist/select.css +98 -0
- package/dist/select.css.map +1 -0
- package/dist/select.d.ts +39 -0
- package/dist/select.js +6 -0
- package/dist/select.js.map +1 -0
- package/dist/skeleton.css +59 -0
- package/dist/skeleton.css.map +1 -0
- package/dist/skeleton.d.ts +34 -0
- package/dist/skeleton.js +4 -0
- package/dist/skeleton.js.map +1 -0
- package/dist/slider.css +126 -0
- package/dist/slider.css.map +1 -0
- package/dist/slider.d.ts +61 -0
- package/dist/slider.js +5 -0
- package/dist/slider.js.map +1 -0
- package/dist/spinner.css +60 -0
- package/dist/spinner.css.map +1 -0
- package/dist/spinner.d.ts +34 -0
- package/dist/spinner.js +5 -0
- package/dist/spinner.js.map +1 -0
- package/dist/stack.css +60 -0
- package/dist/stack.css.map +1 -0
- package/dist/stack.d.ts +319 -0
- package/dist/stack.js +4 -0
- package/dist/stack.js.map +1 -0
- package/dist/switch.css +97 -0
- package/dist/switch.css.map +1 -0
- package/dist/switch.d.ts +35 -0
- package/dist/switch.js +7 -0
- package/dist/switch.js.map +1 -0
- package/dist/table.css +188 -0
- package/dist/table.css.map +1 -0
- package/dist/table.d.ts +137 -0
- package/dist/table.js +6 -0
- package/dist/table.js.map +1 -0
- package/dist/tabs.css +75 -0
- package/dist/tabs.css.map +1 -0
- package/dist/tabs.d.ts +73 -0
- package/dist/tabs.js +5 -0
- package/dist/tabs.js.map +1 -0
- package/dist/text-field.css +75 -0
- package/dist/text-field.css.map +1 -0
- package/dist/text-field.d.ts +43 -0
- package/dist/text-field.js +6 -0
- package/dist/text-field.js.map +1 -0
- package/dist/text.css +53 -0
- package/dist/text.css.map +1 -0
- package/dist/text.d.ts +331 -0
- package/dist/text.js +4 -0
- package/dist/text.js.map +1 -0
- package/dist/textarea.css +84 -0
- package/dist/textarea.css.map +1 -0
- package/dist/textarea.d.ts +40 -0
- package/dist/textarea.js +6 -0
- package/dist/textarea.js.map +1 -0
- package/dist/toast.css +300 -0
- package/dist/toast.css.map +1 -0
- package/dist/toast.d.ts +60 -0
- package/dist/toast.js +11 -0
- package/dist/toast.js.map +1 -0
- package/dist/tooltip.css +36 -0
- package/dist/tooltip.css.map +1 -0
- package/dist/tooltip.d.ts +34 -0
- package/dist/tooltip.js +5 -0
- package/dist/tooltip.js.map +1 -0
- package/dist/visually-hidden.css +15 -0
- package/dist/visually-hidden.css.map +1 -0
- package/dist/visually-hidden.d.ts +308 -0
- package/dist/visually-hidden.js +4 -0
- package/dist/visually-hidden.js.map +1 -0
- package/package.json +261 -0
|
@@ -0,0 +1,267 @@
|
|
|
1
|
+
/* src/icon/Icon.module.css */
|
|
2
|
+
@layer components {
|
|
3
|
+
.Icon_icon {
|
|
4
|
+
display: inline-flex;
|
|
5
|
+
flex: none;
|
|
6
|
+
inline-size: 1em;
|
|
7
|
+
block-size: 1em;
|
|
8
|
+
font-size: var(--icon-size-md);
|
|
9
|
+
vertical-align: middle;
|
|
10
|
+
&[data-size=sm] {
|
|
11
|
+
font-size: var(--icon-size-sm);
|
|
12
|
+
}
|
|
13
|
+
&[data-size=lg] {
|
|
14
|
+
font-size: var(--icon-size-lg);
|
|
15
|
+
}
|
|
16
|
+
&[data-size=inherit] {
|
|
17
|
+
font-size: inherit;
|
|
18
|
+
}
|
|
19
|
+
& > * {
|
|
20
|
+
inline-size: 100%;
|
|
21
|
+
block-size: 100%;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/* src/calendar/Calendar.module.css */
|
|
27
|
+
@layer components {
|
|
28
|
+
.Calendar_root {
|
|
29
|
+
display: inline-flex;
|
|
30
|
+
flex-direction: column;
|
|
31
|
+
gap: var(--calendar-gap);
|
|
32
|
+
padding: var(--calendar-padding);
|
|
33
|
+
background-color: var(--calendar-bg);
|
|
34
|
+
color: var(--calendar-fg);
|
|
35
|
+
font-family: var(--calendar-font-family);
|
|
36
|
+
font-size: var(--calendar-font-size);
|
|
37
|
+
}
|
|
38
|
+
.Calendar_header {
|
|
39
|
+
display: flex;
|
|
40
|
+
align-items: center;
|
|
41
|
+
justify-content: space-between;
|
|
42
|
+
gap: var(--calendar-gap);
|
|
43
|
+
}
|
|
44
|
+
.Calendar_heading {
|
|
45
|
+
margin: 0;
|
|
46
|
+
font-size: var(--calendar-heading-font-size);
|
|
47
|
+
font-weight: var(--calendar-heading-font-weight);
|
|
48
|
+
}
|
|
49
|
+
.Calendar_nav {
|
|
50
|
+
display: grid;
|
|
51
|
+
place-items: center;
|
|
52
|
+
inline-size: var(--calendar-nav-size);
|
|
53
|
+
block-size: var(--calendar-nav-size);
|
|
54
|
+
padding: 0;
|
|
55
|
+
border: none;
|
|
56
|
+
border-radius: var(--calendar-nav-radius);
|
|
57
|
+
background-color: transparent;
|
|
58
|
+
color: var(--calendar-nav-fg);
|
|
59
|
+
cursor: pointer;
|
|
60
|
+
transition: background-color var(--calendar-motion-duration) var(--motion-easing-standard);
|
|
61
|
+
&[data-hovered] {
|
|
62
|
+
background-color: var(--calendar-nav-bg-hover);
|
|
63
|
+
color: var(--calendar-nav-fg-hover);
|
|
64
|
+
}
|
|
65
|
+
&[data-focus-visible] {
|
|
66
|
+
outline: var(--calendar-focus-ring-width) solid var(--calendar-focus-ring);
|
|
67
|
+
outline-offset: var(--calendar-focus-ring-offset);
|
|
68
|
+
}
|
|
69
|
+
&[data-disabled] {
|
|
70
|
+
cursor: not-allowed;
|
|
71
|
+
opacity: 0.55;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
.Calendar_grid {
|
|
75
|
+
border-collapse: collapse;
|
|
76
|
+
border-spacing: 0;
|
|
77
|
+
}
|
|
78
|
+
.Calendar_weekday {
|
|
79
|
+
inline-size: var(--calendar-cell-size);
|
|
80
|
+
padding: 0;
|
|
81
|
+
color: var(--calendar-weekday-fg);
|
|
82
|
+
font-size: var(--calendar-weekday-font-size);
|
|
83
|
+
font-weight: var(--calendar-weekday-font-weight);
|
|
84
|
+
text-align: center;
|
|
85
|
+
}
|
|
86
|
+
.Calendar_cell {
|
|
87
|
+
display: grid;
|
|
88
|
+
place-items: center;
|
|
89
|
+
inline-size: var(--calendar-cell-size);
|
|
90
|
+
block-size: var(--calendar-cell-size);
|
|
91
|
+
border-radius: var(--calendar-cell-radius);
|
|
92
|
+
color: var(--calendar-cell-fg);
|
|
93
|
+
cursor: pointer;
|
|
94
|
+
outline: none;
|
|
95
|
+
transition: background-color var(--calendar-motion-duration) var(--motion-easing-standard);
|
|
96
|
+
&[data-outside-month] {
|
|
97
|
+
display: none;
|
|
98
|
+
}
|
|
99
|
+
&[data-today] {
|
|
100
|
+
color: var(--calendar-cell-fg-today);
|
|
101
|
+
font-weight: var(--calendar-heading-font-weight);
|
|
102
|
+
}
|
|
103
|
+
&[data-hovered] {
|
|
104
|
+
background-color: var(--calendar-cell-bg-hover);
|
|
105
|
+
}
|
|
106
|
+
&[data-selected] {
|
|
107
|
+
background-color: var(--calendar-cell-bg-selected);
|
|
108
|
+
color: var(--calendar-cell-fg-selected);
|
|
109
|
+
&[data-hovered] {
|
|
110
|
+
background-color: var(--calendar-cell-bg-selected-hover);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
&[data-focus-visible] {
|
|
114
|
+
outline: var(--calendar-focus-ring-width) solid var(--calendar-focus-ring);
|
|
115
|
+
outline-offset: var(--calendar-focus-ring-offset);
|
|
116
|
+
}
|
|
117
|
+
&[data-unavailable] {
|
|
118
|
+
color: var(--calendar-cell-fg-unavailable);
|
|
119
|
+
text-decoration: line-through;
|
|
120
|
+
cursor: not-allowed;
|
|
121
|
+
}
|
|
122
|
+
&[data-disabled] {
|
|
123
|
+
color: var(--calendar-cell-fg-unavailable);
|
|
124
|
+
cursor: not-allowed;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
/* src/internal/AriaField.module.css */
|
|
130
|
+
@layer components {
|
|
131
|
+
.AriaField_field {
|
|
132
|
+
display: flex;
|
|
133
|
+
flex-direction: column;
|
|
134
|
+
gap: var(--field-gap);
|
|
135
|
+
font-family: var(--font-family-body);
|
|
136
|
+
}
|
|
137
|
+
.AriaField_label {
|
|
138
|
+
font-size: var(--field-label-font-size);
|
|
139
|
+
font-weight: var(--field-label-font-weight);
|
|
140
|
+
color: var(--field-label-fg);
|
|
141
|
+
}
|
|
142
|
+
.AriaField_required {
|
|
143
|
+
margin-inline-start: var(--field-required-gap);
|
|
144
|
+
color: var(--field-required-fg);
|
|
145
|
+
}
|
|
146
|
+
.AriaField_description {
|
|
147
|
+
margin: 0;
|
|
148
|
+
font-size: var(--field-description-font-size);
|
|
149
|
+
color: var(--field-description-fg);
|
|
150
|
+
}
|
|
151
|
+
.AriaField_error {
|
|
152
|
+
margin: 0;
|
|
153
|
+
font-size: var(--field-error-font-size);
|
|
154
|
+
color: var(--field-error-fg);
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
/* src/date-picker/DatePicker.module.css */
|
|
159
|
+
@layer components {
|
|
160
|
+
.DatePicker_root {
|
|
161
|
+
--_height: var(--date-picker-height-md);
|
|
162
|
+
--_font-size: var(--date-picker-font-size-md);
|
|
163
|
+
--_border: var(--date-picker-border-default);
|
|
164
|
+
font-family: var(--date-picker-font-family);
|
|
165
|
+
&[data-size=sm] {
|
|
166
|
+
--_height: var(--date-picker-height-sm);
|
|
167
|
+
--_font-size: var(--date-picker-font-size-sm);
|
|
168
|
+
}
|
|
169
|
+
&[data-size=lg] {
|
|
170
|
+
--_height: var(--date-picker-height-lg);
|
|
171
|
+
--_font-size: var(--date-picker-font-size-lg);
|
|
172
|
+
}
|
|
173
|
+
&[data-invalid] {
|
|
174
|
+
--_border: var(--date-picker-border-invalid);
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
.DatePicker_control {
|
|
178
|
+
display: flex;
|
|
179
|
+
align-items: center;
|
|
180
|
+
min-block-size: var(--_height);
|
|
181
|
+
padding-inline-start: var(--date-picker-padding-inline);
|
|
182
|
+
border: var(--size-hairline) solid var(--_border);
|
|
183
|
+
border-radius: var(--date-picker-radius);
|
|
184
|
+
background-color: var(--date-picker-bg);
|
|
185
|
+
color: var(--date-picker-fg);
|
|
186
|
+
font-size: var(--_font-size);
|
|
187
|
+
transition: border-color var(--date-picker-motion-duration) var(--motion-easing-standard);
|
|
188
|
+
&[data-focus-within] {
|
|
189
|
+
border-color: var(--date-picker-border-focus);
|
|
190
|
+
outline: var(--date-picker-focus-ring-width) solid var(--date-picker-focus-ring);
|
|
191
|
+
outline-offset: var(--date-picker-focus-ring-offset);
|
|
192
|
+
}
|
|
193
|
+
&[data-disabled] {
|
|
194
|
+
cursor: not-allowed;
|
|
195
|
+
opacity: 0.55;
|
|
196
|
+
}
|
|
197
|
+
&[data-hovered]:not([data-focus-within], [data-disabled]) {
|
|
198
|
+
border-color: var(--date-picker-border-hover);
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
.DatePicker_input {
|
|
202
|
+
display: flex;
|
|
203
|
+
flex: 1;
|
|
204
|
+
align-items: center;
|
|
205
|
+
}
|
|
206
|
+
.DatePicker_segment {
|
|
207
|
+
padding-inline: var(--date-picker-segment-padding-inline);
|
|
208
|
+
border-radius: var(--date-picker-segment-radius);
|
|
209
|
+
font-variant-numeric: tabular-nums;
|
|
210
|
+
outline: none;
|
|
211
|
+
caret-color: transparent;
|
|
212
|
+
&[data-type=literal] {
|
|
213
|
+
padding-inline: 0;
|
|
214
|
+
}
|
|
215
|
+
&[data-placeholder] {
|
|
216
|
+
color: var(--date-picker-segment-fg-placeholder);
|
|
217
|
+
}
|
|
218
|
+
&[data-focused] {
|
|
219
|
+
background-color: var(--date-picker-segment-bg-focus);
|
|
220
|
+
color: var(--date-picker-fg);
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
.DatePicker_button {
|
|
224
|
+
display: grid;
|
|
225
|
+
place-items: center;
|
|
226
|
+
inline-size: var(--date-picker-icon-size);
|
|
227
|
+
block-size: calc(var(--_height) - 2 * var(--size-hairline));
|
|
228
|
+
padding: 0;
|
|
229
|
+
border: none;
|
|
230
|
+
border-radius: var(--date-picker-radius);
|
|
231
|
+
background-color: transparent;
|
|
232
|
+
color: var(--date-picker-icon);
|
|
233
|
+
cursor: pointer;
|
|
234
|
+
&[data-focus-visible] {
|
|
235
|
+
outline: var(--date-picker-focus-ring-width) solid var(--date-picker-focus-ring);
|
|
236
|
+
outline-offset: calc(-1 * var(--date-picker-focus-ring-width));
|
|
237
|
+
}
|
|
238
|
+
&[data-disabled] {
|
|
239
|
+
cursor: not-allowed;
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
.DatePicker_popover {
|
|
243
|
+
padding-block-start: var(--date-picker-gap);
|
|
244
|
+
animation: DatePicker_fade var(--date-picker-popover-duration) var(--motion-easing-standard);
|
|
245
|
+
&[data-placement=top] {
|
|
246
|
+
padding-block: 0 var(--date-picker-gap);
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
.DatePicker_dialog {
|
|
250
|
+
border: var(--size-hairline) solid var(--date-picker-dialog-border);
|
|
251
|
+
border-radius: var(--date-picker-dialog-radius);
|
|
252
|
+
background-color: var(--date-picker-dialog-bg);
|
|
253
|
+
box-shadow: var(--date-picker-popover-shadow);
|
|
254
|
+
outline: none;
|
|
255
|
+
}
|
|
256
|
+
@keyframes DatePicker_fade {
|
|
257
|
+
from {
|
|
258
|
+
opacity: 0;
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
@media (prefers-reduced-motion: reduce) {
|
|
262
|
+
.DatePicker_popover {
|
|
263
|
+
animation: none;
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
/*# sourceMappingURL=date-picker.css.map */
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/icon/Icon.module.css","../src/calendar/Calendar.module.css","../src/internal/AriaField.module.css","../src/date-picker/DatePicker.module.css"],"sourcesContent":["/* Every value is a token (--icon-*). The child SVG fills the box; colour is currentColor. */\n\n@layer components {\n .icon {\n display: inline-flex;\n flex: none;\n inline-size: 1em;\n block-size: 1em;\n font-size: var(--icon-size-md);\n vertical-align: middle;\n\n &[data-size=\"sm\"] { font-size: var(--icon-size-sm); }\n &[data-size=\"lg\"] { font-size: var(--icon-size-lg); }\n &[data-size=\"inherit\"] { font-size: inherit; }\n\n & > * {\n inline-size: 100%;\n block-size: 100%;\n }\n }\n}\n","/*\n * Every value is a token (--calendar-*). React Aria writes the cell state:\n * data-selected, data-focused, data-focus-visible, data-hovered,\n * data-disabled, data-unavailable, data-today, data-outside-month.\n */\n\n@layer components {\n .root {\n display: inline-flex;\n flex-direction: column;\n gap: var(--calendar-gap);\n padding: var(--calendar-padding);\n background-color: var(--calendar-bg);\n color: var(--calendar-fg);\n font-family: var(--calendar-font-family);\n font-size: var(--calendar-font-size);\n }\n\n .header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--calendar-gap);\n }\n\n .heading {\n margin: 0;\n font-size: var(--calendar-heading-font-size);\n font-weight: var(--calendar-heading-font-weight);\n }\n\n .nav {\n display: grid;\n place-items: center;\n inline-size: var(--calendar-nav-size);\n block-size: var(--calendar-nav-size);\n padding: 0;\n border: none;\n border-radius: var(--calendar-nav-radius);\n background-color: transparent;\n color: var(--calendar-nav-fg);\n cursor: pointer;\n transition: background-color var(--calendar-motion-duration) var(--motion-easing-standard);\n\n &[data-hovered] {\n background-color: var(--calendar-nav-bg-hover);\n color: var(--calendar-nav-fg-hover);\n }\n\n &[data-focus-visible] {\n outline: var(--calendar-focus-ring-width) solid var(--calendar-focus-ring);\n outline-offset: var(--calendar-focus-ring-offset);\n }\n\n &[data-disabled] {\n cursor: not-allowed;\n opacity: 0.55;\n }\n }\n\n .grid {\n border-collapse: collapse;\n border-spacing: 0;\n }\n\n .weekday {\n inline-size: var(--calendar-cell-size);\n padding: 0;\n color: var(--calendar-weekday-fg);\n font-size: var(--calendar-weekday-font-size);\n font-weight: var(--calendar-weekday-font-weight);\n text-align: center;\n }\n\n .cell {\n display: grid;\n place-items: center;\n inline-size: var(--calendar-cell-size);\n block-size: var(--calendar-cell-size);\n border-radius: var(--calendar-cell-radius);\n color: var(--calendar-cell-fg);\n cursor: pointer;\n outline: none;\n transition: background-color var(--calendar-motion-duration) var(--motion-easing-standard);\n\n &[data-outside-month] {\n display: none;\n }\n\n &[data-today] {\n color: var(--calendar-cell-fg-today);\n font-weight: var(--calendar-heading-font-weight);\n }\n\n &[data-hovered] {\n background-color: var(--calendar-cell-bg-hover);\n }\n\n &[data-selected] {\n background-color: var(--calendar-cell-bg-selected);\n color: var(--calendar-cell-fg-selected);\n\n &[data-hovered] {\n background-color: var(--calendar-cell-bg-selected-hover);\n }\n }\n\n &[data-focus-visible] {\n outline: var(--calendar-focus-ring-width) solid var(--calendar-focus-ring);\n outline-offset: var(--calendar-focus-ring-offset);\n }\n\n &[data-unavailable] {\n color: var(--calendar-cell-fg-unavailable);\n text-decoration: line-through;\n cursor: not-allowed;\n }\n\n /* Disabled dims the days, not the month name, so the visible text keeps its contrast. */\n &[data-disabled] {\n color: var(--calendar-cell-fg-unavailable);\n cursor: not-allowed;\n }\n }\n}\n","/* The same --field-* tokens Field reads, on React Aria's label, description and error parts. */\n\n@layer components {\n .field {\n display: flex;\n flex-direction: column;\n gap: var(--field-gap);\n font-family: var(--font-family-body);\n }\n\n .label {\n font-size: var(--field-label-font-size);\n font-weight: var(--field-label-font-weight);\n color: var(--field-label-fg);\n }\n\n .required {\n margin-inline-start: var(--field-required-gap);\n color: var(--field-required-fg);\n }\n\n .description {\n margin: 0;\n font-size: var(--field-description-font-size);\n color: var(--field-description-fg);\n }\n\n .error {\n margin: 0;\n font-size: var(--field-error-font-size);\n color: var(--field-error-fg);\n }\n}\n","/*\n * Every value is a token (--date-picker-*); the calendar reads --calendar-*.\n * The control is a group drawn like a text field around the date segments.\n * React Aria writes the state: data-focus-within, data-hovered,\n * data-disabled, data-invalid on the group; data-placeholder, data-focused\n * on each segment.\n */\n\n@layer components {\n .root {\n --_height: var(--date-picker-height-md);\n --_font-size: var(--date-picker-font-size-md);\n --_border: var(--date-picker-border-default);\n\n font-family: var(--date-picker-font-family);\n\n &[data-size=\"sm\"] {\n --_height: var(--date-picker-height-sm);\n --_font-size: var(--date-picker-font-size-sm);\n }\n\n &[data-size=\"lg\"] {\n --_height: var(--date-picker-height-lg);\n --_font-size: var(--date-picker-font-size-lg);\n }\n\n &[data-invalid] { --_border: var(--date-picker-border-invalid); }\n }\n\n .control {\n display: flex;\n align-items: center;\n min-block-size: var(--_height);\n padding-inline-start: var(--date-picker-padding-inline);\n border: var(--size-hairline) solid var(--_border);\n border-radius: var(--date-picker-radius);\n background-color: var(--date-picker-bg);\n color: var(--date-picker-fg);\n font-size: var(--_font-size);\n transition: border-color var(--date-picker-motion-duration) var(--motion-easing-standard);\n\n &[data-focus-within] {\n border-color: var(--date-picker-border-focus);\n outline: var(--date-picker-focus-ring-width) solid var(--date-picker-focus-ring);\n outline-offset: var(--date-picker-focus-ring-offset);\n }\n\n &[data-disabled] {\n cursor: not-allowed;\n opacity: 0.55;\n }\n\n &[data-hovered]:not([data-focus-within], [data-disabled]) {\n border-color: var(--date-picker-border-hover);\n }\n }\n\n .input {\n display: flex;\n flex: 1;\n align-items: center;\n }\n\n .segment {\n padding-inline: var(--date-picker-segment-padding-inline);\n border-radius: var(--date-picker-segment-radius);\n font-variant-numeric: tabular-nums;\n outline: none;\n caret-color: transparent;\n\n &[data-type=\"literal\"] {\n padding-inline: 0;\n }\n\n &[data-placeholder] {\n color: var(--date-picker-segment-fg-placeholder);\n }\n\n &[data-focused] {\n background-color: var(--date-picker-segment-bg-focus);\n color: var(--date-picker-fg);\n }\n }\n\n .button {\n display: grid;\n place-items: center;\n inline-size: var(--date-picker-icon-size);\n block-size: calc(var(--_height) - 2 * var(--size-hairline));\n padding: 0;\n border: none;\n border-radius: var(--date-picker-radius);\n background-color: transparent;\n color: var(--date-picker-icon);\n cursor: pointer;\n\n &[data-focus-visible] {\n outline: var(--date-picker-focus-ring-width) solid var(--date-picker-focus-ring);\n outline-offset: calc(-1 * var(--date-picker-focus-ring-width));\n }\n\n &[data-disabled] {\n cursor: not-allowed;\n }\n }\n\n .popover {\n padding-block-start: var(--date-picker-gap);\n animation: fade var(--date-picker-popover-duration) var(--motion-easing-standard);\n\n &[data-placement=\"top\"] {\n padding-block: 0 var(--date-picker-gap);\n }\n }\n\n .dialog {\n border: var(--size-hairline) solid var(--date-picker-dialog-border);\n border-radius: var(--date-picker-dialog-radius);\n background-color: var(--date-picker-dialog-bg);\n box-shadow: var(--date-picker-popover-shadow);\n outline: none;\n }\n\n @keyframes fade {\n from {\n opacity: 0;\n }\n }\n\n @media (prefers-reduced-motion: reduce) {\n .popover {\n animation: none;\n }\n }\n}\n"],"mappings":"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","names":["icon","root","header","heading","nav","grid","weekday","cell","field","label","required","description","error","root","control","input","segment","button","popover","dialog","fade"]}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import * as react from 'react';
|
|
2
|
+
import { ReactNode, Ref } from 'react';
|
|
3
|
+
|
|
4
|
+
type DatePickerSize = 'sm' | 'md' | 'lg';
|
|
5
|
+
interface DatePickerProps {
|
|
6
|
+
/** Visible label. Always rendered. */
|
|
7
|
+
label: ReactNode;
|
|
8
|
+
description?: ReactNode;
|
|
9
|
+
/** Presence marks the control invalid and announces the message. */
|
|
10
|
+
error?: ReactNode;
|
|
11
|
+
/** The date as `YYYY-MM-DD` (controlled). `null` is "none". */
|
|
12
|
+
value?: string | null;
|
|
13
|
+
defaultValue?: string | null;
|
|
14
|
+
onChange?: (value: string | null) => void;
|
|
15
|
+
/** Earliest selectable date, `YYYY-MM-DD`. */
|
|
16
|
+
min?: string;
|
|
17
|
+
/** Latest selectable date, `YYYY-MM-DD`. */
|
|
18
|
+
max?: string;
|
|
19
|
+
/** Marks single dates as unavailable in the calendar. */
|
|
20
|
+
isDateUnavailable?: (date: string) => boolean;
|
|
21
|
+
/** BCP 47 tag. Segment order, month names and the first weekday follow it; defaults to the browser's. */
|
|
22
|
+
locale?: string;
|
|
23
|
+
/** @default 'md' */
|
|
24
|
+
size?: DatePickerSize;
|
|
25
|
+
/** @default false */
|
|
26
|
+
required?: boolean;
|
|
27
|
+
/** @default false */
|
|
28
|
+
disabled?: boolean;
|
|
29
|
+
/** @default false */
|
|
30
|
+
readOnly?: boolean;
|
|
31
|
+
/** Submitted with a form as `YYYY-MM-DD` through a hidden input. */
|
|
32
|
+
name?: string;
|
|
33
|
+
autoFocus?: boolean;
|
|
34
|
+
/** Applied to the field wrapper. */
|
|
35
|
+
className?: string;
|
|
36
|
+
/** The wrapper element. */
|
|
37
|
+
ref?: Ref<HTMLDivElement>;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* A date field with a calendar popover, on React Aria's date picker
|
|
41
|
+
* (decision record 001): the date is typed segment by segment in the
|
|
42
|
+
* user's locale order (arrows and digits, no free text to parse), and the
|
|
43
|
+
* button opens the same month grid as Calendar. Dates cross the API as
|
|
44
|
+
* ISO strings.
|
|
45
|
+
*
|
|
46
|
+
* @status experimental
|
|
47
|
+
* @category Forms
|
|
48
|
+
* @accessibility A `group` named by the label holding one `spinbutton` per date segment (day, month, year in the locale's order), a button that opens a `dialog` containing the Calendar grid, and a hidden input for forms. Arrows step a segment, digits type it, Escape closes the dialog and returns focus.
|
|
49
|
+
* @do Pass `locale` when the app's language is not the browser's.
|
|
50
|
+
* Use `min`/`max` for ranges the user cannot choose outside of.
|
|
51
|
+
* @dont Parse the value yourself; it is always `YYYY-MM-DD`.
|
|
52
|
+
* Use it for a date of birth decades away; the segments are faster than the calendar.
|
|
53
|
+
*/
|
|
54
|
+
declare function DatePicker({ label, description, error, value, defaultValue, onChange, min, max, isDateUnavailable, locale, size, required, disabled, readOnly, name, autoFocus, className, ref, }: DatePickerProps): react.JSX.Element;
|
|
55
|
+
declare namespace DatePicker {
|
|
56
|
+
var displayName: string;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
export { DatePicker, type DatePickerProps, type DatePickerSize };
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export { DatePicker } from './chunk-UX42PQLT.js';
|
|
2
|
+
import './chunk-OXYP34CG.js';
|
|
3
|
+
import './chunk-4HRNRTXI.js';
|
|
4
|
+
import './chunk-YUHS5S5Y.js';
|
|
5
|
+
import './chunk-ASNTNTJW.js';
|
|
6
|
+
import './chunk-MI4QUKQS.js';
|
|
7
|
+
//# sourceMappingURL=date-picker.js.map
|
|
8
|
+
//# sourceMappingURL=date-picker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"date-picker.js"}
|
package/dist/dialog.css
ADDED
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/* src/dialog/Dialog.module.css */
|
|
2
|
+
@layer components {
|
|
3
|
+
.Dialog_root {
|
|
4
|
+
--modal-bg: var(--dialog-surface);
|
|
5
|
+
--modal-surface-elevated: var(--dialog-surface);
|
|
6
|
+
--modal-surface-subtle: var(--dialog-surface-subtle);
|
|
7
|
+
--modal-color: var(--dialog-fg);
|
|
8
|
+
--modal-text-secondary: var(--dialog-fg-muted);
|
|
9
|
+
--modal-text-muted: var(--dialog-fg-muted);
|
|
10
|
+
--modal-backdrop-bg: var(--dialog-backdrop);
|
|
11
|
+
--modal-border-primary-color: var(--dialog-border);
|
|
12
|
+
--modal-border-hover-color: var(--dialog-border-hover);
|
|
13
|
+
--modal-border-focus-color: var(--dialog-focus);
|
|
14
|
+
--modal-border-accent-color: var(--dialog-border);
|
|
15
|
+
--modal-radius: var(--dialog-radius);
|
|
16
|
+
--modal-radius-md: var(--dialog-radius);
|
|
17
|
+
--modal-radius-sm: var(--radius-control);
|
|
18
|
+
--modal-button-radius: var(--radius-control);
|
|
19
|
+
--modal-shadow: var(--dialog-shadow);
|
|
20
|
+
--modal-padding: var(--dialog-padding);
|
|
21
|
+
--modal-spacing-xs: var(--space-1);
|
|
22
|
+
--modal-spacing-sm: var(--space-2);
|
|
23
|
+
--modal-spacing-md: var(--dialog-gap);
|
|
24
|
+
--modal-spacing-lg: var(--space-4);
|
|
25
|
+
--modal-spacing-xl: var(--space-5);
|
|
26
|
+
--modal-font-family: var(--dialog-font-family);
|
|
27
|
+
--modal-font-family-mono: var(--font-family-mono);
|
|
28
|
+
--modal-font-size-title: var(--dialog-title-font-size);
|
|
29
|
+
--modal-font-size-title-mobile: var(--dialog-title-font-size);
|
|
30
|
+
--modal-font-weight-title: var(--dialog-title-font-weight);
|
|
31
|
+
--modal-font-size-description: var(--dialog-description-font-size);
|
|
32
|
+
--modal-font-size-description-mobile: var(--dialog-description-font-size);
|
|
33
|
+
--modal-font-size-button: var(--font-size-sm);
|
|
34
|
+
--modal-close-bg: var(--dialog-close-bg);
|
|
35
|
+
--modal-close-hover-bg: var(--dialog-close-bg-hover);
|
|
36
|
+
--modal-close-text: var(--dialog-close-fg);
|
|
37
|
+
--modal-close-hover-text: var(--dialog-close-fg-hover);
|
|
38
|
+
--modal-interactive-hover: var(--color-action-secondary-hover);
|
|
39
|
+
--modal-interactive-active: var(--color-action-secondary-hover);
|
|
40
|
+
--modal-interactive-focus: var(--color-action-primary-quiet);
|
|
41
|
+
--modal-transition-duration: var(--dialog-motion-duration);
|
|
42
|
+
--modal-transition-easing: var(--dialog-motion-easing);
|
|
43
|
+
--modal-outline-width: var(--focus-ring-width);
|
|
44
|
+
--modal-outline-offset: var(--focus-ring-offset);
|
|
45
|
+
--modal-button-focus-color: var(--dialog-focus);
|
|
46
|
+
--modal-button-primary-bg: var(--color-action-primary);
|
|
47
|
+
--modal-button-primary-border: var(--color-action-primary);
|
|
48
|
+
--modal-button-primary-color: var(--color-text-on-action);
|
|
49
|
+
--modal-button-primary-hover-bg: var(--color-action-primary-hover);
|
|
50
|
+
--modal-button-primary-hover-border: var(--color-action-primary-hover);
|
|
51
|
+
--modal-button-primary-active-bg: var(--color-action-primary-active);
|
|
52
|
+
--modal-button-primary-active-border: var(--color-action-primary-active);
|
|
53
|
+
--modal-button-secondary-bg: var(--color-action-secondary);
|
|
54
|
+
--modal-button-secondary-border: var(--color-border-default);
|
|
55
|
+
--modal-button-secondary-color: var(--color-text-default);
|
|
56
|
+
--modal-button-secondary-hover-bg: var(--color-action-secondary-hover);
|
|
57
|
+
--modal-button-secondary-hover-border: var(--color-border-strong);
|
|
58
|
+
--modal-button-secondary-active-bg: var(--color-action-secondary-hover);
|
|
59
|
+
--modal-button-secondary-active-border: var(--color-border-strong);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
/*# sourceMappingURL=dialog.css.map */
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/dialog/Dialog.module.css"],"sourcesContent":["/*\n * The vendor (@pearpages/modals) reads --modal-* custom properties. This class\n * goes on the portal element pulp owns, so every dialog inherits pulp's\n * --dialog-* tokens and the vendor's :root defaults never apply.\n */\n\n@layer components {\n .root {\n --modal-bg: var(--dialog-surface);\n --modal-surface-elevated: var(--dialog-surface);\n --modal-surface-subtle: var(--dialog-surface-subtle);\n --modal-color: var(--dialog-fg);\n --modal-text-secondary: var(--dialog-fg-muted);\n --modal-text-muted: var(--dialog-fg-muted);\n --modal-backdrop-bg: var(--dialog-backdrop);\n --modal-border-primary-color: var(--dialog-border);\n --modal-border-hover-color: var(--dialog-border-hover);\n --modal-border-focus-color: var(--dialog-focus);\n --modal-border-accent-color: var(--dialog-border);\n --modal-radius: var(--dialog-radius);\n --modal-radius-md: var(--dialog-radius);\n --modal-radius-sm: var(--radius-control);\n --modal-button-radius: var(--radius-control);\n --modal-shadow: var(--dialog-shadow);\n --modal-padding: var(--dialog-padding);\n --modal-spacing-xs: var(--space-1);\n --modal-spacing-sm: var(--space-2);\n --modal-spacing-md: var(--dialog-gap);\n --modal-spacing-lg: var(--space-4);\n --modal-spacing-xl: var(--space-5);\n --modal-font-family: var(--dialog-font-family);\n --modal-font-family-mono: var(--font-family-mono);\n --modal-font-size-title: var(--dialog-title-font-size);\n --modal-font-size-title-mobile: var(--dialog-title-font-size);\n --modal-font-weight-title: var(--dialog-title-font-weight);\n --modal-font-size-description: var(--dialog-description-font-size);\n --modal-font-size-description-mobile: var(--dialog-description-font-size);\n --modal-font-size-button: var(--font-size-sm);\n --modal-close-bg: var(--dialog-close-bg);\n --modal-close-hover-bg: var(--dialog-close-bg-hover);\n --modal-close-text: var(--dialog-close-fg);\n --modal-close-hover-text: var(--dialog-close-fg-hover);\n --modal-interactive-hover: var(--color-action-secondary-hover);\n --modal-interactive-active: var(--color-action-secondary-hover);\n --modal-interactive-focus: var(--color-action-primary-quiet);\n --modal-transition-duration: var(--dialog-motion-duration);\n --modal-transition-easing: var(--dialog-motion-easing);\n --modal-outline-width: var(--focus-ring-width);\n --modal-outline-offset: var(--focus-ring-offset);\n --modal-button-focus-color: var(--dialog-focus);\n --modal-button-primary-bg: var(--color-action-primary);\n --modal-button-primary-border: var(--color-action-primary);\n --modal-button-primary-color: var(--color-text-on-action);\n --modal-button-primary-hover-bg: var(--color-action-primary-hover);\n --modal-button-primary-hover-border: var(--color-action-primary-hover);\n --modal-button-primary-active-bg: var(--color-action-primary-active);\n --modal-button-primary-active-border: var(--color-action-primary-active);\n --modal-button-secondary-bg: var(--color-action-secondary);\n --modal-button-secondary-border: var(--color-border-default);\n --modal-button-secondary-color: var(--color-text-default);\n --modal-button-secondary-hover-bg: var(--color-action-secondary-hover);\n --modal-button-secondary-hover-border: var(--color-border-strong);\n --modal-button-secondary-active-bg: var(--color-action-secondary-hover);\n --modal-button-secondary-active-border: var(--color-border-strong);\n }\n}\n"],"mappings":";AAMA;AACE,GAACA;AACC,gBAAY,IAAI;AAChB,8BAA0B,IAAI;AAC9B,4BAAwB,IAAI;AAC5B,mBAAe,IAAI;AACnB,4BAAwB,IAAI;AAC5B,wBAAoB,IAAI;AACxB,yBAAqB,IAAI;AACzB,kCAA8B,IAAI;AAClC,gCAA4B,IAAI;AAChC,gCAA4B,IAAI;AAChC,iCAA6B,IAAI;AACjC,oBAAgB,IAAI;AACpB,uBAAmB,IAAI;AACvB,uBAAmB,IAAI;AACvB,2BAAuB,IAAI;AAC3B,oBAAgB,IAAI;AACpB,qBAAiB,IAAI;AACrB,wBAAoB,IAAI;AACxB,wBAAoB,IAAI;AACxB,wBAAoB,IAAI;AACxB,wBAAoB,IAAI;AACxB,wBAAoB,IAAI;AACxB,yBAAqB,IAAI;AACzB,8BAA0B,IAAI;AAC9B,6BAAyB,IAAI;AAC7B,oCAAgC,IAAI;AACpC,+BAA2B,IAAI;AAC/B,mCAA+B,IAAI;AACnC,0CAAsC,IAAI;AAC1C,8BAA0B,IAAI;AAC9B,sBAAkB,IAAI;AACtB,4BAAwB,IAAI;AAC5B,wBAAoB,IAAI;AACxB,8BAA0B,IAAI;AAC9B,+BAA2B,IAAI;AAC/B,gCAA4B,IAAI;AAChC,+BAA2B,IAAI;AAC/B,iCAA6B,IAAI;AACjC,+BAA2B,IAAI;AAC/B,2BAAuB,IAAI;AAC3B,4BAAwB,IAAI;AAC5B,gCAA4B,IAAI;AAChC,+BAA2B,IAAI;AAC/B,mCAA+B,IAAI;AACnC,kCAA8B,IAAI;AAClC,qCAAiC,IAAI;AACrC,yCAAqC,IAAI;AACzC,sCAAkC,IAAI;AACtC,0CAAsC,IAAI;AAC1C,iCAA6B,IAAI;AACjC,qCAAiC,IAAI;AACrC,oCAAgC,IAAI;AACpC,uCAAmC,IAAI;AACvC,2CAAuC,IAAI;AAC3C,wCAAoC,IAAI;AACxC,4CAAwC,IAAI;AAC9C;AACF;","names":["root"]}
|
package/dist/dialog.d.ts
ADDED
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import * as _pearpages_modals from '@pearpages/modals';
|
|
2
|
+
import { ModalProps, ModalSystem } from '@pearpages/modals';
|
|
3
|
+
import * as react from 'react';
|
|
4
|
+
import { ComponentProps, ReactNode } from 'react';
|
|
5
|
+
|
|
6
|
+
type DialogProps = ModalProps;
|
|
7
|
+
interface DialogSystemProps extends Omit<ComponentProps<typeof ModalSystem>, 'container'> {
|
|
8
|
+
children: ReactNode;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Mount once near the app root. Owns the portal element every dialog renders
|
|
12
|
+
* into and sets the vendor's `--modal-*` variables on it from pulp's
|
|
13
|
+
* `--dialog-*` tokens, so backdrop, surface, type and motion follow the
|
|
14
|
+
* current brand and scheme. Because the variables sit on an ancestor of the
|
|
15
|
+
* dialog, they win over the vendor stylesheet regardless of cascade layers
|
|
16
|
+
* or import order.
|
|
17
|
+
*
|
|
18
|
+
* @status stable
|
|
19
|
+
* @category Overlays
|
|
20
|
+
* @accessibility Renders nothing visible itself; the portal element it owns is where every dialog mounts, so the vendor's focus trap and `inert` handling apply to the rest of the page.
|
|
21
|
+
* @do Mount it once, near the app root, inside any providers dialogs need.
|
|
22
|
+
* @dont Nest it; one system serves every dialog.
|
|
23
|
+
*/
|
|
24
|
+
declare function DialogSystem({ children, ...rest }: DialogSystemProps): react.JSX.Element;
|
|
25
|
+
/**
|
|
26
|
+
* An accessible modal dialog: focus trap, inert page, Escape and backdrop
|
|
27
|
+
* dismissal, stacking. Built on `@pearpages/modals`; pulp adds the theming and
|
|
28
|
+
* the compound API (`Dialog.Trigger`, `Dialog.Content`, `Dialog.Header`,
|
|
29
|
+
* `Dialog.Title`, `Dialog.Description`, `Dialog.Close`, `Dialog.Body`,
|
|
30
|
+
* `Dialog.Footer`). The trigger is a sibling of the dialog, not a child: a
|
|
31
|
+
* dialog's children render only while it is open. Use pulp's `Button` for
|
|
32
|
+
* actions. Requires `DialogSystem` above it and the vendor stylesheet
|
|
33
|
+
* `@pearpages/modals/styles.css`.
|
|
34
|
+
*
|
|
35
|
+
* @status stable
|
|
36
|
+
* @category Overlays
|
|
37
|
+
* @accessibility `role="dialog"` with `aria-modal`, named by `Dialog.Title` and described by `Dialog.Description`; focus moves in on open and back to the trigger on close; the page behind is inert; Escape and the backdrop close it. Provided by `@pearpages/modals`.
|
|
38
|
+
* @do Always render a `Dialog.Title`.
|
|
39
|
+
* Put the destructive action last in `Dialog.Footer` and make the safe one the default focus.
|
|
40
|
+
* @dont Open a dialog from inside a Menu or Popover that stays open.
|
|
41
|
+
* Use it for content that does not need the page blocked; use Popover.
|
|
42
|
+
*/
|
|
43
|
+
declare function Dialog(props: DialogProps): react.JSX.Element;
|
|
44
|
+
declare namespace Dialog {
|
|
45
|
+
var displayName: string;
|
|
46
|
+
var Trigger: react.FC<_pearpages_modals.ModalTriggerProps>;
|
|
47
|
+
var Content: react.FC<_pearpages_modals.ModalContentProps>;
|
|
48
|
+
var Header: react.FC<_pearpages_modals.ModalHeaderProps>;
|
|
49
|
+
var Title: react.FC<_pearpages_modals.ModalTitleProps>;
|
|
50
|
+
var Description: react.FC<_pearpages_modals.ModalDescriptionProps>;
|
|
51
|
+
var Close: react.FC<_pearpages_modals.ModalCloseProps>;
|
|
52
|
+
var Body: react.FC<_pearpages_modals.ModalBodyProps>;
|
|
53
|
+
var Footer: react.FC<_pearpages_modals.ModalFooterProps>;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
export { Dialog, type DialogProps, DialogSystem, type DialogSystemProps };
|
package/dist/dialog.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"dialog.js"}
|
package/dist/field.css
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/* src/field/Field.module.css */
|
|
2
|
+
@layer components {
|
|
3
|
+
.Field_field {
|
|
4
|
+
display: flex;
|
|
5
|
+
flex-direction: column;
|
|
6
|
+
gap: var(--field-gap);
|
|
7
|
+
}
|
|
8
|
+
.Field_label {
|
|
9
|
+
font-size: var(--field-label-font-size);
|
|
10
|
+
font-weight: var(--field-label-font-weight);
|
|
11
|
+
color: var(--field-label-fg);
|
|
12
|
+
}
|
|
13
|
+
.Field_required {
|
|
14
|
+
margin-inline-start: var(--field-required-gap);
|
|
15
|
+
color: var(--field-required-fg);
|
|
16
|
+
}
|
|
17
|
+
.Field_description {
|
|
18
|
+
margin: 0;
|
|
19
|
+
font-size: var(--field-description-font-size);
|
|
20
|
+
color: var(--field-description-fg);
|
|
21
|
+
}
|
|
22
|
+
.Field_error {
|
|
23
|
+
margin: 0;
|
|
24
|
+
font-size: var(--field-error-font-size);
|
|
25
|
+
color: var(--field-error-fg);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
/*# sourceMappingURL=field.css.map */
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/field/Field.module.css"],"sourcesContent":["/* Every value is a token (--field-*). The control itself brings its own styles. */\n\n@layer components {\n .field {\n display: flex;\n flex-direction: column;\n gap: var(--field-gap);\n }\n\n .label {\n font-size: var(--field-label-font-size);\n font-weight: var(--field-label-font-weight);\n color: var(--field-label-fg);\n }\n\n .required {\n margin-inline-start: var(--field-required-gap);\n color: var(--field-required-fg);\n }\n\n .description {\n margin: 0;\n font-size: var(--field-description-font-size);\n color: var(--field-description-fg);\n }\n\n .error {\n margin: 0;\n font-size: var(--field-error-font-size);\n color: var(--field-error-fg);\n }\n}\n"],"mappings":";AAEA;AACE,GAACA;AACC,aAAS;AACT,oBAAgB;AAChB,SAAK,IAAI;AACX;AAEA,GAACC;AACC,eAAW,IAAI;AACf,iBAAa,IAAI;AACjB,WAAO,IAAI;AACb;AAEA,GAACC;AACC,yBAAqB,IAAI;AACzB,WAAO,IAAI;AACb;AAEA,GAACC;AACC,YAAQ;AACR,eAAW,IAAI;AACf,WAAO,IAAI;AACb;AAEA,GAACC;AACC,YAAQ;AACR,eAAW,IAAI;AACf,WAAO,IAAI;AACb;AACF;","names":["field","label","required","description","error"]}
|
package/dist/field.d.ts
ADDED
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import * as react from 'react';
|
|
2
|
+
import { HTMLAttributes, Ref, ReactNode, LabelHTMLAttributes } from 'react';
|
|
3
|
+
|
|
4
|
+
type Part = 'description' | 'error';
|
|
5
|
+
interface FieldContextValue {
|
|
6
|
+
/** The control's id; the label points at it. */
|
|
7
|
+
id: string;
|
|
8
|
+
/** The label's id, for controls that are labelled by reference (`aria-labelledby`), such as a radio group. */
|
|
9
|
+
labelId: string;
|
|
10
|
+
invalid: boolean;
|
|
11
|
+
disabled: boolean;
|
|
12
|
+
required: boolean;
|
|
13
|
+
/** ids of the description and error that are actually mounted, space separated. */
|
|
14
|
+
describedBy: string | undefined;
|
|
15
|
+
/** Registers a mounted part; returns the unregister function. */
|
|
16
|
+
register: (part: Part) => () => void;
|
|
17
|
+
}
|
|
18
|
+
/** The field's ids and state, for controls that wire themselves instead of using `Field.Control`. */
|
|
19
|
+
declare function useField(): FieldContextValue;
|
|
20
|
+
interface FieldProps extends HTMLAttributes<HTMLDivElement> {
|
|
21
|
+
/** The control's id. Generated when omitted. */
|
|
22
|
+
id?: string;
|
|
23
|
+
/** @default false */
|
|
24
|
+
invalid?: boolean;
|
|
25
|
+
/** @default false */
|
|
26
|
+
disabled?: boolean;
|
|
27
|
+
/** @default false */
|
|
28
|
+
required?: boolean;
|
|
29
|
+
ref?: Ref<HTMLDivElement>;
|
|
30
|
+
children: ReactNode;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* The wiring every form control shares: a label pointing at the control, a
|
|
34
|
+
* description and an error exposed through `aria-describedby`, and invalid,
|
|
35
|
+
* disabled and required state in one place. Only parts that are mounted end
|
|
36
|
+
* up in `aria-describedby`, so no id ever dangles. Compose with
|
|
37
|
+
* `Field.Label`, `Field.Control`, `Field.Description` and `Field.Error`
|
|
38
|
+
* (one of each); state on the DOM as `data-invalid`, `data-disabled`,
|
|
39
|
+
* `data-required`.
|
|
40
|
+
*
|
|
41
|
+
* Known limitation: parts register in a layout effect, so server-rendered
|
|
42
|
+
* HTML carries no `aria-describedby` until hydration. The relationship is
|
|
43
|
+
* complete for every interactive use; static HTML consumers should not rely
|
|
44
|
+
* on it yet.
|
|
45
|
+
*
|
|
46
|
+
* @status stable
|
|
47
|
+
* @category Forms
|
|
48
|
+
* @accessibility Wires `label[for]`, `aria-describedby` (only mounted parts), `aria-invalid`, `aria-required` and `disabled` onto the control. Server-rendered HTML has no `aria-describedby` until hydration (a test pins the gap).
|
|
49
|
+
* @do Use `Field.Label as="span"` with `useField().labelId` for groups that cannot be labelled by `for`.
|
|
50
|
+
* @dont Mount two `Field.Description` or two `Field.Error`; ids would collide (development warns).
|
|
51
|
+
*/
|
|
52
|
+
declare function Field({ id, invalid, disabled, required, className, ref, children, ...rest }: FieldProps): react.JSX.Element;
|
|
53
|
+
declare namespace Field {
|
|
54
|
+
var displayName: string;
|
|
55
|
+
var Label: typeof FieldLabel;
|
|
56
|
+
var Control: typeof FieldControl;
|
|
57
|
+
var Description: typeof FieldDescription;
|
|
58
|
+
var Error: typeof FieldError;
|
|
59
|
+
}
|
|
60
|
+
interface FieldLabelProps extends LabelHTMLAttributes<HTMLLabelElement> {
|
|
61
|
+
/**
|
|
62
|
+
* `label` points at the control with `for`. `span` is for controls that are
|
|
63
|
+
* not labelable (a radio group, a fieldset): it carries `labelId` and the
|
|
64
|
+
* control references it with `aria-labelledby`.
|
|
65
|
+
* @default 'label'
|
|
66
|
+
*/
|
|
67
|
+
as?: 'label' | 'span';
|
|
68
|
+
ref?: Ref<HTMLLabelElement>;
|
|
69
|
+
children: ReactNode;
|
|
70
|
+
}
|
|
71
|
+
declare function FieldLabel({ as, className, ref, children, ...rest }: FieldLabelProps): react.JSX.Element;
|
|
72
|
+
declare namespace FieldLabel {
|
|
73
|
+
var displayName: string;
|
|
74
|
+
}
|
|
75
|
+
interface FieldControlProps {
|
|
76
|
+
/** Extra ids to describe the control by, kept alongside the field's own. */
|
|
77
|
+
'aria-describedby'?: string;
|
|
78
|
+
/** The single control element; the field's wiring is merged into it. */
|
|
79
|
+
children: ReactNode;
|
|
80
|
+
}
|
|
81
|
+
declare function FieldControl({ 'aria-describedby': extra, children }: FieldControlProps): react.ReactElement<unknown, string | react.JSXElementConstructor<any>>;
|
|
82
|
+
declare namespace FieldControl {
|
|
83
|
+
var displayName: string;
|
|
84
|
+
}
|
|
85
|
+
interface FieldTextProps extends HTMLAttributes<HTMLParagraphElement> {
|
|
86
|
+
ref?: Ref<HTMLParagraphElement>;
|
|
87
|
+
children?: ReactNode;
|
|
88
|
+
}
|
|
89
|
+
declare function FieldDescription({ className, ref, children, ...rest }: FieldTextProps): react.JSX.Element;
|
|
90
|
+
declare namespace FieldDescription {
|
|
91
|
+
var displayName: string;
|
|
92
|
+
}
|
|
93
|
+
declare function FieldError({ className, ref, children, ...rest }: FieldTextProps): react.JSX.Element;
|
|
94
|
+
declare namespace FieldError {
|
|
95
|
+
var displayName: string;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
export { Field, type FieldContextValue, type FieldProps, useField };
|
package/dist/field.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"field.js"}
|