1-
21@mixin header-text ($header-fg ) {
32 @include u-font (' heading' , xl);
43 @include u-text ($header-fg , ' normal' );
4+
55 a {
66 & :visited {
77 @include u-text ($header-fg );
88 }
9+
910 & :hover {
1011 @include u-text (' bold' );
1112 }
1415
1516@mixin supporting-text {
1617 @include u-font (' body' , ' md' );
17- @include u-text (' base-darker' ,' normal' );
18+ @include u-text (' base-darker' , ' normal' );
19+
1820 a {
19- @include u-text (' primary' ,' normal' );
21+ @include u-text (' primary' , ' normal' );
22+
2023 & :visited {
2124 @include u-text (' primary' );
2225 }
26+
2327 & :hover {
2428 @include u-text (' bold' );
2529 }
2832
2933@mixin model-text {
3034 @include u-font (' mono' , ' md' );
31- @include u-text (' base-darker' ,' normal' );
35+ @include u-text (' base-darker' , ' normal' );
36+
3237 a {
33- @include u-text (' primary' ,' normal' );
38+ @include u-text (' primary' , ' normal' );
39+
3440 & :visited {
3541 @include u-text (' primary' );
3642 }
43+
3744 & :hover {
3845 @include u-text (' bold' );
3946 }
4047 }
4148}
4249
43- @mixin doc-index ($header-bg ,$header-fg ) {
50+ @mixin doc-index ($header-bg , $header-fg ) {
4451 @include supporting-text ();
52+
4553 section .named-object-group {
4654 /* @include u-bg('base-lightest');*/
4755 @include u-margin-bottom (2 );
4856 @include u-padding-bottom (' 105' );
49- @include u-border (1px ,' base-light' );
57+ @include u-border (1px , ' base-light' );
5058 @include u-radius (' md' );
5159
5260 }
7078 @include u-text (' bold' );
7179 @include u-padding-x (2px );
7280 @include u-margin-x (2px );
73- -webkit-box-shadow : 1px 1px 3px 0 rgba (0 ,0 , 0 , .75 );
74- -moz-box-shadow : 1px 1px 3px 0 rgba (0 ,0 , 0 , .75 );
75- box-shadow : 1px 1px 3px 0 rgba (0 ,0 , 0 , .75 );
81+ -webkit-box-shadow : 1px 1px 3px 0 rgba (0 , 0 , 0 , .75 );
82+ -moz-box-shadow : 1px 1px 3px 0 rgba (0 , 0 , 0 , .75 );
83+ box-shadow : 1px 1px 3px 0 rgba (0 , 0 , 0 , .75 );
7684
7785 a {
7886 @include u-text (' normal' );
8189
8290 span .formal-name {
8391 @include supporting-text ();
92+
8493 a {
8594 @include u-text (' bold' );
8695 }
8796 }
8897}
8998
9099.xml-index {
91- @include doc-index (' green-cool-20' ,' green-cool-80' );
100+ @include doc-index (' green-cool-20' , ' green-cool-80' );
92101}
93102
94103.json-index {
95- @include doc-index (' blue-20' ,' blue-80' );
104+ @include doc-index (' blue-20' , ' blue-80' );
96105}
97106
98- .xml-outline , .json-outline {
107+ .xml-outline ,
108+ .json-outline {
99109 @include model-text ();
100110 hyphens : none ;
101111
102112 div .OM-entry p {
103113 line-height : 1.5 ;
104114 }
115+
105116 details .OM-entry {
106117 .model-container {
107118 margin-left : 2.5em ;
108119 }
120+
109121 & [open ] {
110122 summary {
111123 .show-closed {
112124 display : none ;
113125 }
114126 }
115127 }
128+
116129 & :not ([open ]) {
117130 summary {
118131 .show-closed {
119132 display : initial ;
120133 }
121134 }
122135 }
136+
123137 summary {
124138 cursor : pointer ;
125139 list-style-position : outside ;
126140 line-height : 1.5 ;
127141 }
128142 }
143+
129144 /* span.OM-cardinality { }*/
130- .model-container + p {
145+ .model-container + p {
131146 margin-top : 0 ;
132147 }
133148
134- a , a :visited {
149+ a ,
150+ a :visited {
135151 text-decoration : none ;
136152 }
137153
138- div .OM-choice {
154+ div .OM-choices {
155+ @include u-margin-left (-2 );
139156 @include u-padding-left (2 );
157+ background-color : #d9e8f6 ;
158+ width : max-content ;
159+
160+ div .OM-choice {
161+ @include u-padding-left (4 );
162+ }
163+
164+ // Nested choices alternate color for readability
165+ div .OM-choices {
166+ background-color : white ;
167+
168+ div .OM-choices {
169+ background-color : #d9e8f6 ;
170+ // Add nested colors as needed
171+ }
172+ }
140173 }
141174}
142175
143- @mixin reference-header ($definition-header-bg ,$instance-header-bg ,$header-fg ) {
144- div .definition-header , div .instance-header , div .array-header {
145- .name , p .array-member {
176+ @mixin reference-header ($definition-header-bg , $instance-header-bg , $header-fg ) {
177+
178+ div .definition-header ,
179+ div .instance-header ,
180+ div .array-header {
181+
182+ .name ,
183+ p .array-member {
146184 @include header-text ($header-fg );
147185 @include u-font (' heading' , lg);
148186 @include u-line-height (' heading' , 1 );
152190 align-self : start ;
153191 text-transform : inherit ;
154192 }
193+
155194 p .type {
156195 @include model-text ();
157196 @include u-line-height (' mono' , 1 );
158197 grid-area : type;
159198 margin : 0 ;
160199 align-self : start ;
161200 }
201+
162202 p .occurrence {
163203 @include model-text ();
164204 @include u-line-height (' mono' , 1 );
165205 grid-area : occurance;
166206 margin : 0 ;
167207 align-self : start ;
168208 }
209+
169210 div .crosslink {
170211 grid-area : crosslink;
171212 margin : 0 ;
178219 }
179220 */
180221 }
222+
181223 .formal-name {
182224 @include supporting-text ();
183225 grid-area : formal- name;
184226 margin : 0 ;
185227 align-self : center ;
186228 }
187229 }
188-
230+
189231 div .definition-header {
190232 @include u-bg ($definition-header-bg );
191233 @include header-text ($header-fg );
192234 @include u-margin-top (' 105' );
193- @include u-border (1px ,' base-light' );
235+ @include u-border (1px , ' base-light' );
194236 @include u-radius (' md' );
195237 padding : .5rem ;
196238 display : grid ;
197239 grid-template-columns : 3fr 3fr 2fr ;
198240 grid-template-rows : auto auto ;
199241 grid-gap : .5em ;
200- grid-template-areas :
242+ grid-template-areas :
201243 " name type crosslink"
202244 " formal-name formal-name crosslink" ;
203245 }
204246
205247 div .instance-header {
206248 @include u-bg ($instance-header-bg );
207249 @include header-text ($header-fg );
208- @include u-border (1px ,' base-light' );
250+ @include u-border (1px , ' base-light' );
209251 @include u-radius (' md' );
210252 padding : .5rem ;
211253 display : grid ;
212254 grid-template-columns : 3fr 3fr 2fr 2fr ;
213255 grid-template-rows : auto auto ;
214256 grid-gap : .5em ;
215- grid-template-areas :
257+ grid-template-areas :
216258 " name type occurance crosslink"
217259 " formal-name formal-name formal-name crosslink" ;
218260 }
261+
219262 div .array-header {
220263 @include u-bg (' gray-10' );
221264 @include header-text ($header-fg );
222- @include u-border (1px ,' base-light' );
265+ @include u-border (1px , ' base-light' );
223266 @include u-radius-bottom (' md' );
224267 padding : .5rem ;
225268 display : grid ;
226269 grid-template-columns : 3fr 3fr 2fr 2fr ;
227270 grid-template-rows : auto auto ;
228271 grid-gap : .5em ;
229- grid-template-areas :
272+ grid-template-areas :
230273 " name type occurance formal-name" ;
231274
232- .formal-name {
233- align-self : right ;
275+ .formal-name {
276+ align-self : right ;
234277 }
235278 }
279+
236280 div .body {
237281 @include u-padding-left (' 105' );
238- @include u-border-left (2px ,' base-lightest' );
282+ @include u-border-left (2px , ' base-lightest' );
239283 @include u-margin-bottom (' 105' );
240-
241- > p {
284+
285+ >p {
242286 margin-top : 0.5rem ;
243287 }
288+
244289 details {
245290 margin-top : 0.5rem ;
291+
246292 summary {
247293 @include u-margin-bottom (' 05' );
248294 }
249295 }
250296 }
251297}
252298
253- .xml-reference , .xml-definition {
254- @include reference-header (' green-cool-20' ,' green-cool-10' ,' green-cool-80' );
299+ .xml-reference ,
300+ .xml-definition {
301+ @include reference-header (' green-cool-20' , ' green-cool-10' , ' green-cool-80' );
255302
256303 div .crosslink a .usa-button {
257304 @include u-bg (' green-cool-70' );
258- @include u-text (' white' ,' bold' );
305+ @include u-text (' white' , ' bold' );
306+
259307 & :visited {
260308 @include u-text (' white' );
261309 }
310+
262311 & :hover {
263312 @include u-text (' bold' );
264313 }
265314 }
266315}
267316
268- .json-reference , .json-definition {
269- @include reference-header (' blue-20' ,' blue-10' ,' blue-80' );
317+ .json-reference ,
318+ .json-definition {
319+ @include reference-header (' blue-20' , ' blue-10' , ' blue-80' );
270320
271321 div .crosslink a .usa-button {
272322 @include u-bg (' blue-70' );
273- @include u-text (' white' ,' bold' );
323+ @include u-text (' white' , ' bold' );
324+
274325 & :visited {
275326 @include u-text (' white' );
276327 }
328+
277329 & :hover {
278330 @include u-text (' bold' );
279331 }
280332 }
281- }
333+ }
0 commit comments