@webstudio-is/css-data 0.83.0 → 0.85.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/lib/cjs/html.js CHANGED
@@ -25,6 +25,7 @@ __export(html_exports, {
25
25
  b: () => b,
26
26
  blockquote: () => blockquote,
27
27
  body: () => body,
28
+ button: () => button,
28
29
  caption: () => caption,
29
30
  cite: () => i,
30
31
  code: () => code,
@@ -38,6 +39,7 @@ __export(html_exports, {
38
39
  dl: () => p,
39
40
  dt: () => article,
40
41
  em: () => i,
42
+ fieldset: () => fieldset,
41
43
  figcaption: () => article,
42
44
  figure: () => blockquote,
43
45
  footer: () => article,
@@ -53,18 +55,23 @@ __export(html_exports, {
53
55
  hr: () => hr,
54
56
  html: () => article,
55
57
  i: () => i,
58
+ input: () => input,
56
59
  ins: () => u,
57
60
  kbd: () => code,
61
+ label: () => label,
62
+ legend: () => legend,
58
63
  li: () => li,
59
64
  main: () => article,
60
65
  mark: () => mark,
61
66
  nav: () => article,
62
67
  ol: () => ol,
68
+ option: () => option,
63
69
  p: () => p,
64
70
  pre: () => pre,
65
71
  s: () => s,
66
72
  samp: () => code,
67
73
  section: () => article,
74
+ select: () => select,
68
75
  strong: () => b,
69
76
  sub: () => sub,
70
77
  summary: () => article,
@@ -72,6 +79,7 @@ __export(html_exports, {
72
79
  table: () => table,
73
80
  tbody: () => tbody,
74
81
  td: () => td,
82
+ textarea: () => textarea,
75
83
  tfoot: () => tfoot,
76
84
  th: () => th,
77
85
  thead: () => thead,
@@ -81,184 +89,211 @@ __export(html_exports, {
81
89
  var: () => i
82
90
  });
83
91
  module.exports = __toCommonJS(html_exports);
84
- const displayBlock = {
92
+ const display = (value) => ({
85
93
  property: "display",
86
- value: { type: "keyword", value: "block" }
87
- };
88
- const mt1em = {
94
+ value: { type: "keyword", value }
95
+ });
96
+ const marginTop = (value, unit) => ({
89
97
  property: "marginTop",
90
- value: { type: "unit", value: 1, unit: "em" }
91
- };
92
- const mb1em = {
98
+ value: { type: "unit", value, unit: unit ?? "number" }
99
+ });
100
+ const marginRight = (value, unit) => ({
101
+ property: "marginRight",
102
+ value: { type: "unit", value, unit: unit ?? "number" }
103
+ });
104
+ const marginBottom = (value, unit) => ({
93
105
  property: "marginBottom",
94
- value: { type: "unit", value: 1, unit: "em" }
95
- };
96
- const ml40px = {
106
+ value: { type: "unit", value, unit: unit ?? "number" }
107
+ });
108
+ const marginLeft = (value, unit) => ({
97
109
  property: "marginLeft",
98
- value: { type: "unit", value: 40, unit: "px" }
99
- };
100
- const mr40px = {
101
- property: "marginRight",
102
- value: { type: "unit", value: 40, unit: "px" }
103
- };
104
- const pl40px = {
105
- property: "paddingLeft",
106
- value: { type: "unit", value: 40, unit: "px" }
107
- };
108
- const fontWeightBold = {
109
- property: "fontWeight",
110
- value: { type: "keyword", value: "bold" }
111
- };
112
- const fontStyleItalic = {
113
- property: "fontStyle",
114
- value: { type: "keyword", value: "italic" }
115
- };
116
- const pt1px = {
110
+ value: { type: "unit", value, unit: unit ?? "number" }
111
+ });
112
+ const paddingTop = (value, unit) => ({
117
113
  property: "paddingTop",
118
- value: { type: "unit", value: 1, unit: "px" }
119
- };
120
- const pr1px = {
114
+ value: { type: "unit", value, unit }
115
+ });
116
+ const paddingRight = (value, unit) => ({
121
117
  property: "paddingRight",
122
- value: { type: "unit", value: 1, unit: "px" }
123
- };
124
- const pb1px = {
118
+ value: { type: "unit", value, unit }
119
+ });
120
+ const paddingBottom = (value, unit) => ({
125
121
  property: "paddingBottom",
126
- value: { type: "unit", value: 1, unit: "px" }
127
- };
128
- const pl1px = {
122
+ value: { type: "unit", value, unit }
123
+ });
124
+ const paddingLeft = (value, unit) => ({
129
125
  property: "paddingLeft",
130
- value: { type: "unit", value: 1, unit: "px" }
131
- };
132
- const article = [displayBlock];
133
- const body = [
134
- displayBlock,
126
+ value: { type: "unit", value, unit }
127
+ });
128
+ const color = (value) => ({
129
+ property: "color",
130
+ value: { type: "keyword", value }
131
+ });
132
+ const fontSize = (value, unit) => ({
133
+ property: "fontSize",
134
+ value: { type: "unit", value, unit }
135
+ });
136
+ const fontWeight = (value) => ({
137
+ property: "fontWeight",
138
+ value: { type: "keyword", value }
139
+ });
140
+ const fontStyle = (value) => ({
141
+ property: "fontStyle",
142
+ value: { type: "keyword", value }
143
+ });
144
+ const textAlign = (value) => ({
145
+ property: "textAlign",
146
+ value: { type: "keyword", value }
147
+ });
148
+ const verticalAlign = (value) => ({
149
+ property: "verticalAlign",
150
+ value: { type: "keyword", value }
151
+ });
152
+ const whiteSpace = (value) => ({
153
+ property: "whiteSpace",
154
+ value: { type: "keyword", value }
155
+ });
156
+ const cursor = (value) => ({
157
+ property: "cursor",
158
+ value: { type: "keyword", value }
159
+ });
160
+ const borderWidth = (value, unit) => [
135
161
  {
136
- property: "marginTop",
137
- value: { type: "unit", value: 8, unit: "px" }
162
+ property: "borderTopWidth",
163
+ value: { type: "unit", value, unit }
138
164
  },
139
165
  {
140
- property: "marginRight",
141
- value: { type: "unit", value: 8, unit: "px" }
166
+ property: "borderRightWidth",
167
+ value: { type: "unit", value, unit }
142
168
  },
143
169
  {
144
- property: "marginBottom",
145
- value: { type: "unit", value: 8, unit: "px" }
170
+ property: "borderBottomWidth",
171
+ value: { type: "unit", value, unit }
146
172
  },
147
173
  {
148
- property: "marginLeft",
149
- value: { type: "unit", value: 8, unit: "px" }
174
+ property: "borderLeftWidth",
175
+ value: { type: "unit", value, unit }
150
176
  }
151
177
  ];
152
- const p = [displayBlock, mt1em, mb1em];
153
- const dd = [displayBlock, ml40px];
154
- const blockquote = [displayBlock, mt1em, mb1em, ml40px, mr40px];
155
- const address = [displayBlock, fontStyleItalic];
156
- const h1 = [
157
- displayBlock,
158
- fontWeightBold,
178
+ const borderStyle = (value) => [
159
179
  {
160
- property: "fontSize",
161
- value: { type: "unit", value: 2, unit: "em" }
162
- },
163
- {
164
- property: "marginTop",
165
- value: { type: "unit", value: 0.67, unit: "em" }
180
+ property: "borderTopStyle",
181
+ value: { type: "keyword", value }
166
182
  },
167
183
  {
168
- property: "marginBottom",
169
- value: { type: "unit", value: 0.67, unit: "em" }
170
- }
171
- ];
172
- const h2 = [
173
- displayBlock,
174
- fontWeightBold,
175
- {
176
- property: "fontSize",
177
- value: { type: "unit", value: 1.5, unit: "em" }
184
+ property: "borderRightStyle",
185
+ value: { type: "keyword", value }
178
186
  },
179
187
  {
180
- property: "marginTop",
181
- value: { type: "unit", value: 0.83, unit: "em" }
188
+ property: "borderBottomStyle",
189
+ value: { type: "keyword", value }
182
190
  },
183
191
  {
184
- property: "marginBottom",
185
- value: { type: "unit", value: 0.83, unit: "em" }
192
+ property: "borderLeftStyle",
193
+ value: { type: "keyword", value }
186
194
  }
187
195
  ];
188
- const h3 = [
189
- displayBlock,
190
- fontWeightBold,
196
+ const borderColor = (value) => [
191
197
  {
192
- property: "fontSize",
193
- value: { type: "unit", value: 1.17, unit: "em" }
198
+ property: "borderTopColor",
199
+ value: { type: "keyword", value }
194
200
  },
195
201
  {
196
- property: "marginTop",
197
- value: { type: "unit", value: 1, unit: "em" }
202
+ property: "borderRightColor",
203
+ value: { type: "keyword", value }
198
204
  },
199
205
  {
200
- property: "marginBottom",
201
- value: { type: "unit", value: 1, unit: "em" }
202
- }
203
- ];
204
- const h4 = [
205
- displayBlock,
206
- fontWeightBold,
207
- {
208
- property: "marginTop",
209
- value: { type: "unit", value: 1.33, unit: "em" }
206
+ property: "borderBottomColor",
207
+ value: { type: "keyword", value }
210
208
  },
211
209
  {
212
- property: "marginBottom",
213
- value: { type: "unit", value: 1.33, unit: "em" }
210
+ property: "borderLeftColor",
211
+ value: { type: "keyword", value }
214
212
  }
215
213
  ];
214
+ const appearance = (value) => ({
215
+ property: "appearance",
216
+ value: { type: "keyword", value }
217
+ });
218
+ const userSelect = (value) => ({
219
+ property: "userSelect",
220
+ value: { type: "keyword", value }
221
+ });
222
+ const boxSizing = (value) => ({
223
+ property: "boxSizing",
224
+ value: { type: "keyword", value }
225
+ });
226
+ const article = [display("block")];
227
+ const body = [
228
+ display("block"),
229
+ marginTop(8, "px"),
230
+ marginRight(8, "px"),
231
+ marginBottom(8, "px"),
232
+ marginLeft(8, "px")
233
+ ];
234
+ const p = [
235
+ display("block"),
236
+ marginTop(1, "em"),
237
+ marginBottom(1, "em")
238
+ ];
239
+ const dd = [display("block"), marginLeft(40, "px")];
240
+ const blockquote = [
241
+ display("block"),
242
+ marginTop(1, "em"),
243
+ marginBottom(1, "em"),
244
+ marginLeft(40, "px"),
245
+ marginRight(40, "px")
246
+ ];
247
+ const address = [display("block"), fontStyle("italic")];
248
+ const h1 = [
249
+ display("block"),
250
+ fontWeight("bold"),
251
+ fontSize(2, "em"),
252
+ marginTop(0.67, "em"),
253
+ marginBottom(0.67, "em")
254
+ ];
255
+ const h2 = [
256
+ display("block"),
257
+ fontWeight("bold"),
258
+ fontSize(1.5, "em"),
259
+ marginTop(0.83, "em"),
260
+ marginBottom(0.83, "em")
261
+ ];
262
+ const h3 = [
263
+ display("block"),
264
+ fontWeight("bold"),
265
+ fontSize(1.17, "em"),
266
+ marginTop(1, "em"),
267
+ marginBottom(1, "em")
268
+ ];
269
+ const h4 = [
270
+ display("block"),
271
+ fontWeight("bold"),
272
+ marginTop(1.33, "em"),
273
+ marginBottom(1.33, "em")
274
+ ];
216
275
  const h5 = [
217
- displayBlock,
218
- fontWeightBold,
219
- {
220
- property: "fontSize",
221
- value: { type: "unit", value: 0.83, unit: "em" }
222
- },
223
- {
224
- property: "marginTop",
225
- value: { type: "unit", value: 1.67, unit: "em" }
226
- },
227
- {
228
- property: "marginBottom",
229
- value: { type: "unit", value: 1.67, unit: "em" }
230
- }
276
+ display("block"),
277
+ fontWeight("bold"),
278
+ fontSize(0.83, "em"),
279
+ marginTop(1.67, "em"),
280
+ marginBottom(1.67, "em")
231
281
  ];
232
282
  const h6 = [
233
- displayBlock,
234
- fontWeightBold,
235
- {
236
- property: "fontSize",
237
- value: { type: "unit", value: 0.67, unit: "em" }
238
- },
239
- {
240
- property: "marginTop",
241
- value: { type: "unit", value: 2.33, unit: "em" }
242
- },
243
- {
244
- property: "marginBottom",
245
- value: { type: "unit", value: 2.33, unit: "em" }
246
- }
283
+ display("block"),
284
+ fontWeight("bold"),
285
+ fontSize(0.67, "em"),
286
+ marginTop(2.33, "em"),
287
+ marginBottom(2.33, "em")
247
288
  ];
248
289
  const pre = [
249
- displayBlock,
250
- {
251
- property: "whiteSpace",
252
- value: { type: "keyword", value: "pre" }
253
- },
254
- mt1em,
255
- mb1em
290
+ display("block"),
291
+ whiteSpace("pre"),
292
+ marginTop(1, "em"),
293
+ marginBottom(1, "em")
256
294
  ];
257
295
  const table = [
258
- {
259
- property: "display",
260
- value: { type: "keyword", value: "table" }
261
- },
296
+ display("table"),
262
297
  {
263
298
  property: "borderSpacing",
264
299
  value: { type: "unit", value: 2, unit: "px" }
@@ -267,115 +302,50 @@ const table = [
267
302
  property: "borderCollapse",
268
303
  value: { type: "keyword", value: "separate" }
269
304
  },
305
+ boxSizing("border-box"),
270
306
  {
271
- property: "boxSizing",
272
- value: { type: "keyword", value: "border-box" }
273
- },
274
- {
275
- property: "borderSpacing",
307
+ property: "textIndent",
276
308
  value: { type: "unit", value: 0, unit: "number" }
277
309
  }
278
310
  ];
279
- const caption = [
280
- {
281
- property: "display",
282
- value: { type: "keyword", value: "table" }
283
- },
284
- {
285
- property: "textAlign",
286
- value: { type: "keyword", value: "center" }
287
- }
288
- ];
289
- const tr = [
290
- {
291
- property: "display",
292
- value: { type: "keyword", value: "table-row" }
293
- },
294
- {
295
- property: "verticalAlign",
296
- value: { type: "keyword", value: "inherit" }
297
- }
298
- ];
299
- const col = [
300
- {
301
- property: "display",
302
- value: { type: "keyword", value: "table-column" }
303
- }
304
- ];
305
- const colgroup = [
306
- {
307
- property: "display",
308
- value: { type: "keyword", value: "table-column-group" }
309
- }
310
- ];
311
+ const caption = [display("table-caption"), textAlign("center")];
312
+ const tr = [display("table-row"), verticalAlign("inherit")];
313
+ const col = [display("table-column")];
314
+ const colgroup = [display("table-column-group")];
311
315
  const tbody = [
312
- {
313
- property: "display",
314
- value: { type: "keyword", value: "table-row-group" }
315
- },
316
- {
317
- property: "verticalAlign",
318
- value: { type: "keyword", value: "middle" }
319
- }
316
+ display("table-row-group"),
317
+ verticalAlign("middle")
320
318
  ];
321
319
  const thead = [
322
- {
323
- property: "display",
324
- value: { type: "keyword", value: "table-header-group" }
325
- },
326
- {
327
- property: "verticalAlign",
328
- value: { type: "keyword", value: "middle" }
329
- }
320
+ display("table-header-group"),
321
+ verticalAlign("middle")
330
322
  ];
331
323
  const tfoot = [
332
- {
333
- property: "display",
334
- value: { type: "keyword", value: "table-footer-group" }
335
- },
336
- {
337
- property: "verticalAlign",
338
- value: { type: "keyword", value: "middle" }
339
- }
324
+ display("table-footer-group"),
325
+ verticalAlign("middle")
340
326
  ];
341
327
  const td = [
342
- {
343
- property: "display",
344
- value: { type: "keyword", value: "table-cell" }
345
- },
346
- {
347
- property: "verticalAlign",
348
- value: { type: "keyword", value: "inherit" }
349
- },
350
- {
351
- property: "textAlign",
352
- value: { type: "keyword", value: "unset" }
353
- },
354
- pt1px,
355
- pr1px,
356
- pb1px,
357
- pl1px
328
+ display("table-cell"),
329
+ verticalAlign("inherit"),
330
+ paddingTop(1, "px"),
331
+ paddingRight(1, "px"),
332
+ paddingBottom(1, "px"),
333
+ paddingLeft(1, "px")
358
334
  ];
359
335
  const th = [
360
- {
361
- property: "display",
362
- value: { type: "keyword", value: "table-cell" }
363
- },
364
- {
365
- property: "verticalAlign",
366
- value: { type: "keyword", value: "inherit" }
367
- },
368
- fontWeightBold,
369
- pt1px,
370
- pr1px,
371
- pb1px,
372
- pl1px
336
+ display("table-cell"),
337
+ verticalAlign("inherit"),
338
+ fontWeight("bold"),
339
+ paddingTop(1, "px"),
340
+ paddingRight(1, "px"),
341
+ paddingBottom(1, "px"),
342
+ paddingLeft(1, "px")
373
343
  ];
374
344
  const b = [
375
345
  // in firefox defined as bolder
376
- fontWeightBold
346
+ fontWeight("bold")
377
347
  ];
378
- const i = [fontStyleItalic];
348
+ const i = [fontStyle("italic")];
379
349
  const code = [
380
350
  {
381
351
  property: "fontFamily",
@@ -389,11 +359,8 @@ const mark = [
389
359
  // in firefox defined as Mark
390
360
  value: { type: "keyword", value: "yellow" }
391
361
  },
392
- {
393
- property: "color",
394
- // in firefox defined as MarkText
395
- value: { type: "keyword", value: "black" }
396
- }
362
+ // in firefox defined as MarkText
363
+ color("black")
397
364
  ];
398
365
  const u = [
399
366
  {
@@ -408,20 +375,14 @@ const s = [
408
375
  }
409
376
  ];
410
377
  const sub = [
411
- {
412
- property: "verticalAlign",
413
- value: { type: "keyword", value: "sub" }
414
- },
378
+ verticalAlign("sub"),
415
379
  {
416
380
  property: "fontSize",
417
381
  value: { type: "keyword", value: "smaller" }
418
382
  }
419
383
  ];
420
384
  const sup = [
421
- {
422
- property: "verticalAlign",
423
- value: { type: "keyword", value: "super" }
424
- },
385
+ verticalAlign("super"),
425
386
  {
426
387
  property: "fontSize",
427
388
  value: { type: "keyword", value: "smaller" }
@@ -432,10 +393,7 @@ const a = [
432
393
  property: "textDecorationLine",
433
394
  value: { type: "keyword", value: "underline" }
434
395
  },
435
- {
436
- property: "cursor",
437
- value: { type: "keyword", value: "pointer" }
438
- },
396
+ cursor("pointer"),
439
397
  {
440
398
  property: "color",
441
399
  value: { type: "rgb", r: 0, g: 0, b: 238, alpha: 1 }
@@ -444,80 +402,32 @@ const a = [
444
402
  // and modeling var-like defaults is too complex
445
403
  ];
446
404
  const ul = [
447
- displayBlock,
405
+ display("block"),
448
406
  {
449
407
  property: "listStyleType",
450
408
  value: { type: "keyword", value: "disc" }
451
409
  },
452
- mt1em,
453
- mb1em,
454
- pl40px
410
+ marginTop(1, "em"),
411
+ marginBottom(1, "em"),
412
+ paddingLeft(40, "px")
455
413
  ];
456
414
  const ol = [
457
- displayBlock,
415
+ display("block"),
458
416
  {
459
417
  property: "listStyleType",
460
418
  value: { type: "keyword", value: "decimal" }
461
419
  },
462
- mt1em,
463
- mb1em,
464
- pl40px
465
- ];
466
- const li = [
467
- {
468
- property: "display",
469
- value: { type: "keyword", value: "list-item" }
470
- },
471
- {
472
- property: "textAlign",
473
- value: { type: "keyword", value: "match-parent" }
474
- }
420
+ marginTop(1, "em"),
421
+ marginBottom(1, "em"),
422
+ paddingLeft(40, "px")
475
423
  ];
424
+ const li = [display("list-item"), textAlign("match-parent")];
476
425
  const hr = [
477
- {
478
- property: "color",
479
- value: { type: "keyword", value: "gray" }
480
- },
481
- {
482
- property: "borderTopWidth",
483
- value: { type: "unit", value: 1, unit: "px" }
484
- },
485
- {
486
- property: "borderRightWidth",
487
- value: { type: "unit", value: 1, unit: "px" }
488
- },
489
- {
490
- property: "borderBottomWidth",
491
- value: { type: "unit", value: 1, unit: "px" }
492
- },
493
- {
494
- property: "borderLeftWidth",
495
- value: { type: "unit", value: 1, unit: "px" }
496
- },
497
- {
498
- property: "borderTopStyle",
499
- value: { type: "keyword", value: "inset" }
500
- },
501
- {
502
- property: "borderRightStyle",
503
- value: { type: "keyword", value: "inset" }
504
- },
505
- {
506
- property: "borderBottomStyle",
507
- value: { type: "keyword", value: "inset" }
508
- },
509
- {
510
- property: "borderLeftStyle",
511
- value: { type: "keyword", value: "inset" }
512
- },
513
- {
514
- property: "marginTop",
515
- value: { type: "unit", value: 0.5, unit: "em" }
516
- },
517
- {
518
- property: "marginBottom",
519
- value: { type: "unit", value: 0.5, unit: "em" }
520
- },
426
+ color("gray"),
427
+ ...borderWidth(1, "px"),
428
+ ...borderStyle("inset"),
429
+ marginTop(0.5, "em"),
430
+ marginBottom(0.5, "em"),
521
431
  {
522
432
  property: "marginLeft",
523
433
  value: { type: "keyword", value: "auto" }
@@ -532,5 +442,140 @@ const hr = [
532
442
  value: { type: "keyword", value: "hidden" }
533
443
  },
534
444
  /* This is not really per spec but all browsers define it */
535
- displayBlock
445
+ display("block")
446
+ ];
447
+ const formControlReset = [
448
+ // in firefox defined as FieldText
449
+ color("initial"),
450
+ { property: "letterSpacing", value: { type: "keyword", value: "normal" } },
451
+ { property: "wordSpacing", value: { type: "keyword", value: "normal" } },
452
+ { property: "lineHeight", value: { type: "keyword", value: "normal" } },
453
+ { property: "textTransform", value: { type: "keyword", value: "none" } },
454
+ { property: "textIndent", value: { type: "unit", value: 0, unit: "number" } },
455
+ { property: "textShadow", value: { type: "keyword", value: "none" } },
456
+ display("inline-block"),
457
+ textAlign("start")
458
+ ];
459
+ const legend = [
460
+ display("block"),
461
+ paddingLeft(2, "px"),
462
+ paddingRight(2, "px")
463
+ ];
464
+ const fieldset = [
465
+ display("block"),
466
+ marginLeft(2, "px"),
467
+ marginRight(2, "px"),
468
+ paddingTop(0.35, "em"),
469
+ paddingBottom(0.625, "em"),
470
+ paddingLeft(0.75, "em"),
471
+ paddingRight(0.75, "em"),
472
+ ...borderWidth(2, "px"),
473
+ // in browsers defined as groove
474
+ ...borderStyle("solid"),
475
+ ...borderColor("ThreeDFace"),
476
+ { property: "minWidth", value: { type: "keyword", value: "min-content" } }
477
+ ];
478
+ const label = [cursor("default")];
479
+ const input = [
480
+ appearance("auto"),
481
+ paddingTop(1, "px"),
482
+ paddingRight(1, "px"),
483
+ paddingBottom(1, "px"),
484
+ paddingLeft(1, "px"),
485
+ ...borderWidth(2, "px"),
486
+ // in browsers defined as inset
487
+ ...borderStyle("solid"),
488
+ // in firefox defined as Field
489
+ { property: "backgroundColor", value: { type: "keyword", value: "white" } },
490
+ cursor("text")
491
+ ];
492
+ const textarea = [
493
+ ...formControlReset,
494
+ appearance("auto"),
495
+ marginTop(1, "px"),
496
+ marginBottom(1, "px"),
497
+ // in firefox 2px
498
+ ...borderWidth(1, "px"),
499
+ // in browsers defined as inset
500
+ ...borderStyle("solid"),
501
+ paddingTop(2, "px"),
502
+ paddingRight(2, "px"),
503
+ paddingBottom(2, "px"),
504
+ paddingLeft(2, "px"),
505
+ // in firefox defined as Field
506
+ { property: "backgroundColor", value: { type: "keyword", value: "white" } },
507
+ verticalAlign("text-bottom"),
508
+ cursor("text"),
509
+ { property: "resize", value: { type: "keyword", value: "both" } },
510
+ whiteSpace("pre-wrap"),
511
+ {
512
+ property: "wordWrap",
513
+ value: { type: "keyword", value: "break-word" }
514
+ }
515
+ ];
516
+ const select = [
517
+ ...formControlReset,
518
+ display("inline-block"),
519
+ marginTop(0),
520
+ marginRight(0),
521
+ marginBottom(0),
522
+ marginLeft(0),
523
+ paddingTop(1, "px"),
524
+ paddingBottom(1, "px"),
525
+ paddingRight(4, "px"),
526
+ paddingLeft(4, "px"),
527
+ ...borderWidth(2, "px"),
528
+ // in browsers defined as inset
529
+ ...borderStyle("solid"),
530
+ whiteSpace("nowrap"),
531
+ {
532
+ property: "wordWrap",
533
+ value: { type: "keyword", value: "normal" }
534
+ },
535
+ cursor("default"),
536
+ boxSizing("border-box"),
537
+ userSelect("none"),
538
+ {
539
+ property: "overflow",
540
+ value: { type: "keyword", value: "clip" }
541
+ },
542
+ verticalAlign("baseline"),
543
+ appearance("auto")
544
+ ];
545
+ const option = [
546
+ display("block"),
547
+ { property: "float", value: { type: "keyword", value: "none" } },
548
+ { property: "position", value: { type: "keyword", value: "static" } },
549
+ { property: "minHeight", value: { type: "unit", value: 1, unit: "em" } },
550
+ paddingTop(2, "px"),
551
+ paddingBottom(2, "px"),
552
+ paddingRight(2, "px"),
553
+ paddingLeft(4, "px"),
554
+ userSelect("none"),
555
+ whiteSpace("nowrap"),
556
+ {
557
+ property: "wordWrap",
558
+ value: { type: "keyword", value: "normal" }
559
+ }
560
+ ];
561
+ const button = [
562
+ ...formControlReset,
563
+ appearance("auto"),
564
+ // in firefox defined as 1px 8px
565
+ paddingTop(2, "px"),
566
+ paddingBottom(3, "px"),
567
+ paddingLeft(6, "px"),
568
+ paddingRight(6, "px"),
569
+ ...borderWidth(2, "px"),
570
+ // in browsers defined as outset
571
+ ...borderStyle("solid"),
572
+ cursor("default"),
573
+ boxSizing("border-box"),
574
+ userSelect("none"),
575
+ textAlign("center"),
576
+ {
577
+ property: "backgroundColor",
578
+ // in browsers defined as ButtonFace
579
+ value: { type: "keyword", value: "lightgray" }
580
+ }
536
581
  ];