@starci/grammar 0.1.0 → 0.2.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 -21
- package/README.md +53 -40
- package/dist/common/styles.css +2 -2
- package/dist/core/StateMark.d.ts +4 -0
- package/dist/core/StateMark.d.ts.map +1 -1
- package/dist/core/StateMark.js +1 -0
- package/dist/core/StateMark.js.map +1 -1
- package/dist/core/branch/Rail/index.d.ts +13 -2
- package/dist/core/branch/Rail/index.d.ts.map +1 -1
- package/dist/core/branch/Rail/index.js +17 -2
- package/dist/core/branch/Rail/index.js.map +1 -1
- package/dist/core/branch/SurfaceCard/index.d.ts +7 -1
- package/dist/core/branch/SurfaceCard/index.d.ts.map +1 -1
- package/dist/core/branch/SurfaceCard/index.js +3 -2
- package/dist/core/branch/SurfaceCard/index.js.map +1 -1
- package/dist/core/branch/SurfaceListCard/index.d.ts +20 -10
- package/dist/core/branch/SurfaceListCard/index.d.ts.map +1 -1
- package/dist/core/branch/SurfaceListCard/index.js +7 -9
- package/dist/core/branch/SurfaceListCard/index.js.map +1 -1
- package/dist/core/composite/StaticStateRow/index.d.ts +17 -0
- package/dist/core/composite/StaticStateRow/index.d.ts.map +1 -0
- package/dist/core/composite/StaticStateRow/index.js +11 -0
- package/dist/core/composite/StaticStateRow/index.js.map +1 -0
- package/dist/core/contracts.d.ts +28 -28
- package/dist/core/contracts.d.ts.map +1 -1
- package/dist/core/contracts.js +65 -11
- package/dist/core/contracts.js.map +1 -1
- package/dist/core/grammar.d.ts +1 -1
- package/dist/core/grammar.js +1 -1
- package/dist/core/index.d.ts +3 -0
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +3 -0
- package/dist/core/index.js.map +1 -1
- package/dist/core/layout.d.ts +9 -0
- package/dist/core/layout.d.ts.map +1 -0
- package/dist/core/layout.js +43 -0
- package/dist/core/layout.js.map +1 -0
- package/dist/core/rules.d.ts +18 -0
- package/dist/core/rules.d.ts.map +1 -1
- package/dist/core/rules.js +21 -0
- package/dist/core/rules.js.map +1 -1
- package/dist/core/styles.css +211 -162
- package/dist/offset-pop/index.d.ts +29 -29
- package/dist/offset-pop/index.js +2 -2
- package/dist/offset-pop/styles.css +393 -393
- package/package.json +72 -72
package/dist/core/styles.css
CHANGED
|
@@ -1,193 +1,242 @@
|
|
|
1
|
-
@layer starci-grammar-core {
|
|
2
|
-
.starci-core-surface-card,
|
|
3
|
-
.starci-core-surface-list {
|
|
4
|
-
container-name: starci-core-surface;
|
|
5
|
-
container-type: inline-size;
|
|
6
|
-
display: flex;
|
|
7
|
-
min-width: 0;
|
|
8
|
-
width: 100%;
|
|
9
|
-
flex-direction: column;
|
|
10
|
-
gap: var(--starci-core-section-gap, 0.75rem);
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
.starci-core-surface-label {
|
|
14
|
-
display: flex;
|
|
15
|
-
min-width: 0;
|
|
16
|
-
align-items: baseline;
|
|
17
|
-
justify-content: space-between;
|
|
18
|
-
gap: var(--starci-core-inline-gap, 0.5rem);
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
.starci-core-surface-label > :first-child {
|
|
22
|
-
min-width: 0;
|
|
23
|
-
margin: 0;
|
|
1
|
+
@layer starci-grammar-core {
|
|
2
|
+
.starci-core-surface-card,
|
|
3
|
+
.starci-core-surface-list {
|
|
4
|
+
container-name: starci-core-surface;
|
|
5
|
+
container-type: inline-size;
|
|
6
|
+
display: flex;
|
|
7
|
+
min-width: 0;
|
|
8
|
+
width: 100%;
|
|
9
|
+
flex-direction: column;
|
|
10
|
+
gap: var(--starci-core-section-gap, 0.75rem);
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.starci-core-surface-label {
|
|
14
|
+
display: flex;
|
|
15
|
+
min-width: 0;
|
|
16
|
+
align-items: baseline;
|
|
17
|
+
justify-content: space-between;
|
|
18
|
+
gap: var(--starci-core-inline-gap, 0.5rem);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.starci-core-surface-label > :first-child {
|
|
22
|
+
min-width: 0;
|
|
23
|
+
margin: 0;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
.starci-core-surface {
|
|
27
|
+
position: relative;
|
|
28
|
+
min-width: 0;
|
|
29
|
+
overflow: hidden;
|
|
30
|
+
border-radius: var(--starci-core-surface-radius, 1rem);
|
|
31
|
+
background: var(--surface, Canvas);
|
|
32
|
+
color: var(--surface-foreground, CanvasText);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.starci-core-surface[data-grammar-surface-depth="top"] {
|
|
36
|
+
border: 0;
|
|
37
|
+
box-shadow: var(--starci-core-surface-shadow, var(--shadow-surface, 0 1px 3px rgb(0 0 0 / 0.16)));
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
.starci-core-surface[data-grammar-surface-depth="nested"] {
|
|
41
|
+
border: 1px solid var(--border, GrayText);
|
|
42
|
+
box-shadow: none;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.starci-core-surface-content {
|
|
46
|
+
min-width: 0;
|
|
47
|
+
padding: var(--starci-core-surface-inset, 1rem);
|
|
24
48
|
}
|
|
25
49
|
|
|
26
|
-
.starci-core-surface {
|
|
50
|
+
.starci-core-surface.starci-core-frameless-surface {
|
|
27
51
|
position: relative;
|
|
28
52
|
min-width: 0;
|
|
29
|
-
overflow:
|
|
30
|
-
border-radius: var(--starci-core-surface-radius, 1rem);
|
|
31
|
-
background: var(--surface);
|
|
32
|
-
color: var(--surface-foreground);
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
.starci-core-surface[data-grammar-surface-depth="top"] {
|
|
36
|
-
border: 0;
|
|
37
|
-
box-shadow: var(--starci-core-surface-shadow, var(--shadow-surface));
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
.starci-core-surface[data-grammar-surface-depth="nested"] {
|
|
41
|
-
border: 1px solid var(--border);
|
|
42
|
-
box-shadow: none;
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
.starci-core-surface-content {
|
|
46
|
-
min-width: 0;
|
|
47
|
-
padding: var(--starci-core-surface-inset, 1rem);
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
[data-grammar-whole-action] {
|
|
51
|
-
position: absolute;
|
|
52
|
-
z-index: 1;
|
|
53
|
-
inset: 0;
|
|
53
|
+
overflow: visible;
|
|
54
54
|
border: 0;
|
|
55
|
-
border-radius:
|
|
55
|
+
border-radius: 0;
|
|
56
56
|
background: transparent;
|
|
57
|
+
box-shadow: none;
|
|
57
58
|
color: inherit;
|
|
58
|
-
cursor: pointer;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
[data-grammar-whole-action]:focus-visible {
|
|
62
|
-
outline: 2px solid var(--focus);
|
|
63
|
-
outline-offset: -2px;
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
[data-grammar-whole-action][aria-disabled="true"],
|
|
67
|
-
[data-grammar-whole-action]:disabled {
|
|
68
|
-
cursor: not-allowed;
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
[data-grammar-state="unavailable"] {
|
|
72
|
-
opacity: var(--starci-core-disabled-opacity, 0.55);
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
[data-grammar-state="pending"] {
|
|
76
|
-
cursor: progress;
|
|
77
59
|
}
|
|
78
60
|
|
|
79
|
-
.starci-core-
|
|
61
|
+
.starci-core-frameless-surface > .starci-core-surface-content {
|
|
80
62
|
padding: 0;
|
|
81
63
|
}
|
|
82
64
|
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
padding: 0;
|
|
87
|
-
flex-direction: column;
|
|
88
|
-
list-style: none;
|
|
65
|
+
[data-grammar-scroll="contained"] {
|
|
66
|
+
max-height: var(--starci-core-contained-max-height, none);
|
|
67
|
+
overflow: hidden;
|
|
89
68
|
}
|
|
90
69
|
|
|
91
|
-
.starci-core-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
margin: 0;
|
|
96
|
-
align-items: flex-start;
|
|
97
|
-
gap: var(--starci-core-row-gap, 0.75rem);
|
|
98
|
-
padding: var(--starci-core-row-inset, 1rem);
|
|
70
|
+
[data-grammar-scroll="contained"] > .starci-core-surface-content {
|
|
71
|
+
min-height: 0;
|
|
72
|
+
overflow-y: auto;
|
|
73
|
+
overscroll-behavior: contain;
|
|
99
74
|
}
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
75
|
+
|
|
76
|
+
[data-grammar-whole-action] {
|
|
77
|
+
position: absolute;
|
|
78
|
+
z-index: 1;
|
|
79
|
+
inset: 0;
|
|
80
|
+
border: 0;
|
|
81
|
+
border-radius: inherit;
|
|
82
|
+
background: transparent;
|
|
83
|
+
color: inherit;
|
|
84
|
+
cursor: pointer;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
[data-grammar-whole-action]:focus-visible {
|
|
88
|
+
outline: 2px solid var(--focus, Highlight);
|
|
89
|
+
outline-offset: -2px;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
[data-grammar-whole-action][aria-disabled="true"],
|
|
93
|
+
[data-grammar-whole-action]:disabled {
|
|
94
|
+
cursor: not-allowed;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
[data-grammar-state="unavailable"] {
|
|
98
|
+
opacity: var(--starci-core-disabled-opacity, 0.55);
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
[data-grammar-state="pending"] {
|
|
102
|
+
cursor: progress;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
.starci-core-list-shell {
|
|
106
|
+
padding: 0;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
.starci-core-static-list {
|
|
110
|
+
display: flex;
|
|
111
|
+
margin: 0;
|
|
112
|
+
padding: 0;
|
|
113
|
+
flex-direction: column;
|
|
114
|
+
list-style: none;
|
|
103
115
|
}
|
|
104
116
|
|
|
105
|
-
.starci-core-
|
|
106
|
-
display: flex;
|
|
117
|
+
.starci-core-owned-collection {
|
|
107
118
|
min-width: 0;
|
|
108
|
-
flex: 1;
|
|
109
|
-
flex-direction: column;
|
|
110
|
-
gap: var(--starci-core-copy-gap, 0.25rem);
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
.starci-core-static-row-copy > :last-child:not(:first-child) {
|
|
114
|
-
color: var(--muted);
|
|
115
119
|
}
|
|
116
120
|
|
|
117
|
-
|
|
118
|
-
width: 1.25rem;
|
|
119
|
-
height: 1.25rem;
|
|
120
|
-
flex: none;
|
|
121
|
-
color: var(--success);
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
.starci-core-rail {
|
|
125
|
-
container-name: starci-core-rail;
|
|
126
|
-
container-type: inline-size;
|
|
127
|
-
width: 100%;
|
|
121
|
+
.starci-core-surface-footer {
|
|
128
122
|
min-width: 0;
|
|
129
123
|
}
|
|
130
|
-
|
|
124
|
+
|
|
125
|
+
.starci-core-static-row,
|
|
126
|
+
.starci-core-empty-row {
|
|
127
|
+
display: flex;
|
|
128
|
+
min-width: 0;
|
|
129
|
+
margin: 0;
|
|
130
|
+
align-items: flex-start;
|
|
131
|
+
gap: var(--starci-core-row-gap, 0.75rem);
|
|
132
|
+
padding: var(--starci-core-row-inset, 1rem);
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
.starci-core-static-row + .starci-core-static-row {
|
|
136
|
+
border-top: 1px solid var(--separator, var(--border, GrayText));
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
.starci-core-static-row-copy {
|
|
140
|
+
display: flex;
|
|
141
|
+
min-width: 0;
|
|
142
|
+
flex: 1;
|
|
143
|
+
flex-direction: column;
|
|
144
|
+
gap: var(--starci-core-copy-gap, 0.25rem);
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
.starci-core-static-row-copy > :last-child:not(:first-child) {
|
|
148
|
+
color: var(--muted, GrayText);
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
[data-grammar-state-mark="check"] {
|
|
152
|
+
width: 1.25rem;
|
|
153
|
+
height: 1.25rem;
|
|
154
|
+
flex: none;
|
|
155
|
+
color: var(--success, #15803d);
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
.starci-core-rail {
|
|
159
|
+
container-name: starci-core-rail;
|
|
160
|
+
container-type: inline-size;
|
|
161
|
+
width: 100%;
|
|
162
|
+
min-width: 0;
|
|
163
|
+
}
|
|
164
|
+
|
|
131
165
|
.starci-core-rail[data-grammar-rail-width="compact"] {
|
|
132
|
-
max-width: var(--starci-core-rail-compact, 16rem);
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
.starci-core-rail[data-grammar-
|
|
136
|
-
max-width: var(--starci-core-rail-
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
.starci-core-rail[data-grammar-rail-width="
|
|
140
|
-
max-width: var(--starci-core-rail-
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
.starci-core-rail-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
166
|
+
max-width: var(--starci-core-rail-compact, 16rem);
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
.starci-core-rail[data-grammar-collapse="collapsed"] {
|
|
170
|
+
max-width: var(--starci-core-rail-collapsed, 4rem);
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
.starci-core-rail[data-grammar-rail-width="standard"] {
|
|
174
|
+
max-width: var(--starci-core-rail-standard, 20rem);
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
.starci-core-rail[data-grammar-rail-width="wide"] {
|
|
178
|
+
max-width: var(--starci-core-rail-wide, 24rem);
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
.starci-core-rail-frame {
|
|
182
|
+
display: flex;
|
|
183
|
+
min-width: 0;
|
|
184
|
+
max-height: calc(100dvh - var(--starci-core-rail-offset, 5.5rem) - 1.5rem);
|
|
185
|
+
flex-direction: column;
|
|
186
|
+
gap: var(--starci-core-rail-gap, 1rem);
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
.starci-core-rail[data-grammar-rail-mode="sticky"] .starci-core-rail-frame {
|
|
190
|
+
position: sticky;
|
|
191
|
+
top: var(--starci-core-rail-offset, 5.5rem);
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
.starci-core-rail-body {
|
|
195
|
+
min-height: 0;
|
|
196
|
+
overflow-y: auto;
|
|
197
|
+
overscroll-behavior: contain;
|
|
198
|
+
}
|
|
199
|
+
|
|
162
200
|
.starci-core-rail-footer {
|
|
163
201
|
flex: none;
|
|
164
202
|
}
|
|
165
203
|
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
.starci-core-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
204
|
+
.starci-core-rail :where(button, [role="button"]) {
|
|
205
|
+
min-inline-size: 44px;
|
|
206
|
+
min-block-size: 44px;
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
@container starci-core-surface (max-width: 28rem) {
|
|
210
|
+
.starci-core-surface-label {
|
|
211
|
+
align-items: flex-start;
|
|
212
|
+
flex-direction: column;
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
.starci-core-static-row {
|
|
216
|
+
gap: var(--starci-core-row-gap-compact, 0.5rem);
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
@container starci-core-rail (max-width: 18rem) {
|
|
221
|
+
.starci-core-rail-frame {
|
|
222
|
+
gap: var(--starci-core-rail-gap-compact, 0.75rem);
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
|
|
183
226
|
@media (max-width: 47.999rem) {
|
|
184
|
-
.starci-core-rail[data-grammar-rail-mode="sticky"] .starci-core-rail-frame {
|
|
185
|
-
position: static;
|
|
186
|
-
max-height: none;
|
|
187
|
-
}
|
|
188
|
-
|
|
189
|
-
.starci-core-rail-body {
|
|
190
|
-
overflow-y: visible;
|
|
227
|
+
.starci-core-rail[data-grammar-rail-mode="sticky"] .starci-core-rail-frame {
|
|
228
|
+
position: static;
|
|
229
|
+
max-height: none;
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
.starci-core-rail-body {
|
|
233
|
+
overflow-y: visible;
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
@media (prefers-reduced-motion: reduce) {
|
|
238
|
+
[data-grammar-motion="animated"] {
|
|
239
|
+
scroll-behavior: auto;
|
|
191
240
|
}
|
|
192
241
|
}
|
|
193
242
|
}
|
|
@@ -27,7 +27,7 @@ export declare const OFFSET_POP_COMPLEX_CASES: readonly ["nested-surface-keeps-o
|
|
|
27
27
|
/** One installable Grammar bundle: Core owns anatomy; Offset Pop owns only visual treatment. */
|
|
28
28
|
export declare const offsetPopGrammar: Readonly<{
|
|
29
29
|
id: "offset-pop";
|
|
30
|
-
version: "1.
|
|
30
|
+
version: "1.1.0";
|
|
31
31
|
extends: readonly {
|
|
32
32
|
id: string;
|
|
33
33
|
version: string;
|
|
@@ -60,16 +60,16 @@ export declare const offsetPopGrammar: Readonly<{
|
|
|
60
60
|
key: "core.surface-card";
|
|
61
61
|
version: string;
|
|
62
62
|
spec: Readonly<{
|
|
63
|
-
readonly version: "1.
|
|
63
|
+
readonly version: "1.1.0";
|
|
64
64
|
readonly layer: "branch";
|
|
65
65
|
readonly slots: readonly ["external-label", "content", "whole-action"];
|
|
66
66
|
readonly stateInputs: readonly ["neutral", "informative", "affirmative", "cautionary", "negative", "pending", "unavailable"];
|
|
67
|
-
readonly variableAxes: readonly ["surface-depth", "state-treatment", "action-mode", "container-response"];
|
|
67
|
+
readonly variableAxes: readonly ["surface-depth", "state-treatment", "action-mode", "label-end", "frame-mode", "scroll-mode", "container-response"];
|
|
68
68
|
readonly extensionPolicy: {
|
|
69
|
-
readonly allowedAxes: readonly ["surface-depth", "state-treatment", "container-response"];
|
|
69
|
+
readonly allowedAxes: readonly ["surface-depth", "state-treatment", "label-end", "frame-mode", "scroll-mode", "container-response"];
|
|
70
70
|
readonly forbiddenChanges: readonly ["anatomy", "closed-invariant", "owner-substitution"];
|
|
71
71
|
};
|
|
72
|
-
readonly closedInvariants: readonly ["label-outside-surface", "nested-border-xor-shadow", "one-content-owner", "whole-action-is-overlay", "neutral-state-only"];
|
|
72
|
+
readonly closedInvariants: readonly ["label-outside-surface", "nested-border-xor-shadow", "one-content-owner", "whole-action-is-overlay", "frameless-has-no-surface-shell", "contained-scroll-has-one-scroll-owner", "neutral-state-only"];
|
|
73
73
|
}>;
|
|
74
74
|
base: Readonly<{
|
|
75
75
|
key: string;
|
|
@@ -83,16 +83,16 @@ export declare const offsetPopGrammar: Readonly<{
|
|
|
83
83
|
key: "core.surface-list-card";
|
|
84
84
|
version: string;
|
|
85
85
|
spec: Readonly<{
|
|
86
|
-
readonly version: "1.
|
|
86
|
+
readonly version: "1.1.0";
|
|
87
87
|
readonly layer: "branch";
|
|
88
|
-
readonly slots: readonly ["external-label", "single-list-shell", "static-row"];
|
|
88
|
+
readonly slots: readonly ["external-label", "single-list-shell", "single-collection-shell", "static-row", "interactive-row", "footer"];
|
|
89
89
|
readonly stateInputs: readonly ["neutral", "informative", "affirmative", "cautionary", "negative", "pending", "unavailable"];
|
|
90
|
-
readonly variableAxes: readonly ["surface-depth", "state-treatment", "row-count", "container-response"];
|
|
90
|
+
readonly variableAxes: readonly ["surface-depth", "state-treatment", "row-count", "row-mode", "label-visibility", "footer-mode", "container-response"];
|
|
91
91
|
readonly extensionPolicy: {
|
|
92
|
-
readonly allowedAxes: readonly ["surface-depth", "state-treatment", "container-response"];
|
|
92
|
+
readonly allowedAxes: readonly ["surface-depth", "state-treatment", "row-mode", "label-visibility", "footer-mode", "container-response"];
|
|
93
93
|
readonly forbiddenChanges: readonly ["anatomy", "closed-invariant", "owner-substitution"];
|
|
94
94
|
};
|
|
95
|
-
readonly closedInvariants: readonly ["one-list-one-shell", "rows-separated-by-dividers", "affirmative-row-uses-one-check", "nested-border-xor-shadow", "static-rows-have-no-action", "neutral-state-only"];
|
|
95
|
+
readonly closedInvariants: readonly ["one-list-one-shell", "one-collection-one-shell", "rows-separated-by-dividers", "affirmative-row-uses-one-check", "nested-border-xor-shadow", "static-rows-have-no-action", "interactive-rows-own-their-actions", "hidden-label-retains-accessible-name", "footer-follows-collection", "neutral-state-only"];
|
|
96
96
|
}>;
|
|
97
97
|
base: Readonly<{
|
|
98
98
|
key: string;
|
|
@@ -106,16 +106,16 @@ export declare const offsetPopGrammar: Readonly<{
|
|
|
106
106
|
key: "core.rail";
|
|
107
107
|
version: string;
|
|
108
108
|
spec: Readonly<{
|
|
109
|
-
readonly version: "1.
|
|
109
|
+
readonly version: "1.1.0";
|
|
110
110
|
readonly layer: "branch";
|
|
111
|
-
readonly slots: readonly ["heading", "body", "footer"];
|
|
111
|
+
readonly slots: readonly ["heading", "body", "footer", "content-landmark"];
|
|
112
112
|
readonly stateInputs: readonly ["neutral", "informative", "affirmative", "cautionary", "negative", "pending", "unavailable"];
|
|
113
|
-
readonly variableAxes: readonly ["rail-mode", "rail-width", "state-treatment", "container-response"];
|
|
113
|
+
readonly variableAxes: readonly ["landmark-mode", "rail-mode", "rail-width", "collapse-mode", "motion-mode", "state-treatment", "container-response"];
|
|
114
114
|
readonly extensionPolicy: {
|
|
115
|
-
readonly allowedAxes: readonly ["rail-width", "state-treatment", "container-response"];
|
|
115
|
+
readonly allowedAxes: readonly ["landmark-mode", "rail-width", "collapse-mode", "motion-mode", "state-treatment", "container-response"];
|
|
116
116
|
readonly forbiddenChanges: readonly ["anatomy", "closed-invariant", "owner-substitution"];
|
|
117
117
|
};
|
|
118
|
-
readonly closedInvariants: readonly ["one-rail-landmark", "sticky-disabled-on-narrow-viewport", "body-remains-reachable", "footer-follows-body", "neutral-state-only"];
|
|
118
|
+
readonly closedInvariants: readonly ["one-rail-landmark", "sticky-disabled-on-narrow-viewport", "body-remains-reachable", "footer-follows-body", "content-landmark-is-not-wrapped-by-a-second-landmark", "collapsed-navigation-retains-accessible-names", "reduced-motion-removes-interpolation-not-state-change", "neutral-state-only"];
|
|
119
119
|
}>;
|
|
120
120
|
base: Readonly<{
|
|
121
121
|
key: string;
|
|
@@ -153,16 +153,16 @@ export declare const offsetPopGrammar: Readonly<{
|
|
|
153
153
|
key: "core.surface-card";
|
|
154
154
|
version: string;
|
|
155
155
|
spec: Readonly<{
|
|
156
|
-
readonly version: "1.
|
|
156
|
+
readonly version: "1.1.0";
|
|
157
157
|
readonly layer: "branch";
|
|
158
158
|
readonly slots: readonly ["external-label", "content", "whole-action"];
|
|
159
159
|
readonly stateInputs: readonly ["neutral", "informative", "affirmative", "cautionary", "negative", "pending", "unavailable"];
|
|
160
|
-
readonly variableAxes: readonly ["surface-depth", "state-treatment", "action-mode", "container-response"];
|
|
160
|
+
readonly variableAxes: readonly ["surface-depth", "state-treatment", "action-mode", "label-end", "frame-mode", "scroll-mode", "container-response"];
|
|
161
161
|
readonly extensionPolicy: {
|
|
162
|
-
readonly allowedAxes: readonly ["surface-depth", "state-treatment", "container-response"];
|
|
162
|
+
readonly allowedAxes: readonly ["surface-depth", "state-treatment", "label-end", "frame-mode", "scroll-mode", "container-response"];
|
|
163
163
|
readonly forbiddenChanges: readonly ["anatomy", "closed-invariant", "owner-substitution"];
|
|
164
164
|
};
|
|
165
|
-
readonly closedInvariants: readonly ["label-outside-surface", "nested-border-xor-shadow", "one-content-owner", "whole-action-is-overlay", "neutral-state-only"];
|
|
165
|
+
readonly closedInvariants: readonly ["label-outside-surface", "nested-border-xor-shadow", "one-content-owner", "whole-action-is-overlay", "frameless-has-no-surface-shell", "contained-scroll-has-one-scroll-owner", "neutral-state-only"];
|
|
166
166
|
}>;
|
|
167
167
|
base: Readonly<{
|
|
168
168
|
key: string;
|
|
@@ -175,16 +175,16 @@ export declare const offsetPopGrammar: Readonly<{
|
|
|
175
175
|
key: "core.surface-list-card";
|
|
176
176
|
version: string;
|
|
177
177
|
spec: Readonly<{
|
|
178
|
-
readonly version: "1.
|
|
178
|
+
readonly version: "1.1.0";
|
|
179
179
|
readonly layer: "branch";
|
|
180
|
-
readonly slots: readonly ["external-label", "single-list-shell", "static-row"];
|
|
180
|
+
readonly slots: readonly ["external-label", "single-list-shell", "single-collection-shell", "static-row", "interactive-row", "footer"];
|
|
181
181
|
readonly stateInputs: readonly ["neutral", "informative", "affirmative", "cautionary", "negative", "pending", "unavailable"];
|
|
182
|
-
readonly variableAxes: readonly ["surface-depth", "state-treatment", "row-count", "container-response"];
|
|
182
|
+
readonly variableAxes: readonly ["surface-depth", "state-treatment", "row-count", "row-mode", "label-visibility", "footer-mode", "container-response"];
|
|
183
183
|
readonly extensionPolicy: {
|
|
184
|
-
readonly allowedAxes: readonly ["surface-depth", "state-treatment", "container-response"];
|
|
184
|
+
readonly allowedAxes: readonly ["surface-depth", "state-treatment", "row-mode", "label-visibility", "footer-mode", "container-response"];
|
|
185
185
|
readonly forbiddenChanges: readonly ["anatomy", "closed-invariant", "owner-substitution"];
|
|
186
186
|
};
|
|
187
|
-
readonly closedInvariants: readonly ["one-list-one-shell", "rows-separated-by-dividers", "affirmative-row-uses-one-check", "nested-border-xor-shadow", "static-rows-have-no-action", "neutral-state-only"];
|
|
187
|
+
readonly closedInvariants: readonly ["one-list-one-shell", "one-collection-one-shell", "rows-separated-by-dividers", "affirmative-row-uses-one-check", "nested-border-xor-shadow", "static-rows-have-no-action", "interactive-rows-own-their-actions", "hidden-label-retains-accessible-name", "footer-follows-collection", "neutral-state-only"];
|
|
188
188
|
}>;
|
|
189
189
|
base: Readonly<{
|
|
190
190
|
key: string;
|
|
@@ -197,16 +197,16 @@ export declare const offsetPopGrammar: Readonly<{
|
|
|
197
197
|
key: "core.rail";
|
|
198
198
|
version: string;
|
|
199
199
|
spec: Readonly<{
|
|
200
|
-
readonly version: "1.
|
|
200
|
+
readonly version: "1.1.0";
|
|
201
201
|
readonly layer: "branch";
|
|
202
|
-
readonly slots: readonly ["heading", "body", "footer"];
|
|
202
|
+
readonly slots: readonly ["heading", "body", "footer", "content-landmark"];
|
|
203
203
|
readonly stateInputs: readonly ["neutral", "informative", "affirmative", "cautionary", "negative", "pending", "unavailable"];
|
|
204
|
-
readonly variableAxes: readonly ["rail-mode", "rail-width", "state-treatment", "container-response"];
|
|
204
|
+
readonly variableAxes: readonly ["landmark-mode", "rail-mode", "rail-width", "collapse-mode", "motion-mode", "state-treatment", "container-response"];
|
|
205
205
|
readonly extensionPolicy: {
|
|
206
|
-
readonly allowedAxes: readonly ["rail-width", "state-treatment", "container-response"];
|
|
206
|
+
readonly allowedAxes: readonly ["landmark-mode", "rail-width", "collapse-mode", "motion-mode", "state-treatment", "container-response"];
|
|
207
207
|
readonly forbiddenChanges: readonly ["anatomy", "closed-invariant", "owner-substitution"];
|
|
208
208
|
};
|
|
209
|
-
readonly closedInvariants: readonly ["one-rail-landmark", "sticky-disabled-on-narrow-viewport", "body-remains-reachable", "footer-follows-body", "neutral-state-only"];
|
|
209
|
+
readonly closedInvariants: readonly ["one-rail-landmark", "sticky-disabled-on-narrow-viewport", "body-remains-reachable", "footer-follows-body", "content-landmark-is-not-wrapped-by-a-second-landmark", "collapsed-navigation-retains-accessible-names", "reduced-motion-removes-interpolation-not-state-change", "neutral-state-only"];
|
|
210
210
|
}>;
|
|
211
211
|
base: Readonly<{
|
|
212
212
|
key: string;
|
package/dist/offset-pop/index.js
CHANGED
|
@@ -54,8 +54,8 @@ export const OFFSET_POP_COMPLEX_CASES = Object.freeze([
|
|
|
54
54
|
/** One installable Grammar bundle: Core owns anatomy; Offset Pop owns only visual treatment. */
|
|
55
55
|
export const offsetPopGrammar = Object.freeze({
|
|
56
56
|
id: "offset-pop",
|
|
57
|
-
version: "1.
|
|
58
|
-
extends: Object.freeze([{ id: "core", version: "1.
|
|
57
|
+
version: "1.1.0",
|
|
58
|
+
extends: Object.freeze([{ id: "core", version: "1.1.0" }]),
|
|
59
59
|
contracts: Object.freeze({
|
|
60
60
|
...CORE_COMPONENT_CONTRACTS,
|
|
61
61
|
[offsetPopVisualTreatmentContract.key]: offsetPopVisualTreatmentContract,
|