@greese/ui 1.1.0 → 1.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.
Files changed (194) hide show
  1. package/README.md +19 -14
  2. package/dist/_maps.scss +1 -1
  3. package/dist/_tokens-base.scss +30 -6
  4. package/dist/_tokens.scss +31 -2
  5. package/dist/_utilities-table.scss +1615 -0
  6. package/dist/clipboard.d.ts +18 -0
  7. package/dist/clipboard.js +62 -0
  8. package/dist/css/Button.css +2 -2
  9. package/dist/css/Carousel.css +145 -47
  10. package/dist/css/Checkbox.css +2 -2
  11. package/dist/css/Chip.css +38 -8
  12. package/dist/css/ChoiceGroup.css +42 -1
  13. package/dist/css/Collapsible.css +1 -0
  14. package/dist/css/ColorPicker.css +84 -0
  15. package/dist/css/Combobox.css +2 -2
  16. package/dist/css/Dialog.css +24 -22
  17. package/dist/css/EditableField.css +219 -0
  18. package/dist/css/Input.css +11 -2
  19. package/dist/css/Menu.css +9 -0
  20. package/dist/css/NumberField.css +53 -8
  21. package/dist/css/NumberStepper.css +9 -0
  22. package/dist/css/OtpField.css +1 -1
  23. package/dist/css/Radio.css +2 -2
  24. package/dist/css/ScrollCarousel.css +225 -0
  25. package/dist/css/SegmentedControl.css +2 -2
  26. package/dist/css/Select.css +3 -2
  27. package/dist/css/Slider.css +45 -5
  28. package/dist/css/Switch.css +6 -6
  29. package/dist/css/Text.css +14 -14
  30. package/dist/css/Textarea.css +1 -1
  31. package/dist/css/core.css +36 -6
  32. package/dist/css/resets.css +162 -0
  33. package/dist/css.d.ts +2 -0
  34. package/dist/css.js +2 -0
  35. package/dist/greese.css +978 -138
  36. package/dist/index.d.ts +2 -1
  37. package/dist/index.js +2 -1
  38. package/dist/scss/components/_Accordion.scss +2 -0
  39. package/dist/scss/components/_ActionSelect.scss +2 -0
  40. package/dist/scss/components/_Alert.scss +2 -0
  41. package/dist/scss/components/_AppBar.scss +2 -0
  42. package/dist/scss/components/_AspectRatio.scss +2 -0
  43. package/dist/scss/components/_AutoLayout.scss +2 -0
  44. package/dist/scss/components/_Avatar.scss +2 -0
  45. package/dist/scss/components/_Badge.scss +2 -0
  46. package/dist/scss/components/_Box.scss +2 -0
  47. package/dist/scss/components/_Breadcrumbs.scss +2 -0
  48. package/dist/scss/components/_Button.scss +2 -0
  49. package/dist/scss/components/_ButtonGroup.scss +2 -0
  50. package/dist/scss/components/_Card.scss +2 -0
  51. package/dist/scss/components/_Carousel.scss +2 -0
  52. package/dist/scss/components/_Center.scss +2 -0
  53. package/dist/scss/components/_ChatBubble.scss +2 -0
  54. package/dist/scss/components/_Checkbox.scss +2 -0
  55. package/dist/scss/components/_Chip.scss +2 -0
  56. package/dist/scss/components/_ChoiceGroup.scss +2 -0
  57. package/dist/scss/components/_Code.scss +2 -0
  58. package/dist/scss/components/_Collapsible.scss +2 -0
  59. package/dist/scss/components/_ColorPicker.scss +2 -0
  60. package/dist/scss/components/_Combobox.scss +2 -0
  61. package/dist/scss/components/_Container.scss +2 -0
  62. package/dist/scss/components/_Countdown.scss +2 -0
  63. package/dist/scss/components/_DateField.scss +2 -0
  64. package/dist/scss/components/_Dialog.scss +2 -0
  65. package/dist/scss/components/_Diff.scss +2 -0
  66. package/dist/scss/components/_Divider.scss +2 -0
  67. package/dist/scss/components/_Dock.scss +2 -0
  68. package/dist/scss/components/_EditableField.scss +2 -0
  69. package/dist/scss/components/_Field.scss +2 -0
  70. package/dist/scss/components/_Fieldset.scss +2 -0
  71. package/dist/scss/components/_FileInput.scss +2 -0
  72. package/dist/scss/components/_Footer.scss +2 -0
  73. package/dist/scss/components/_Grid.scss +2 -0
  74. package/dist/scss/components/_Header.scss +2 -0
  75. package/dist/scss/components/_Heading.scss +2 -0
  76. package/dist/scss/components/_Icon.scss +2 -0
  77. package/dist/scss/components/_IconButton.scss +2 -0
  78. package/dist/scss/components/_Image.scss +2 -0
  79. package/dist/scss/components/_Indicator.scss +2 -0
  80. package/dist/scss/components/_Input.scss +2 -0
  81. package/dist/scss/components/_Key.scss +2 -0
  82. package/dist/scss/components/_Link.scss +2 -0
  83. package/dist/scss/components/_List.scss +2 -0
  84. package/dist/scss/components/_Media.scss +2 -0
  85. package/dist/scss/components/_Menu.scss +2 -0
  86. package/dist/scss/components/_Motion.scss +2 -0
  87. package/dist/scss/components/_NumberField.scss +2 -0
  88. package/dist/scss/components/_NumberStepper.scss +2 -0
  89. package/dist/scss/components/_OtpField.scss +2 -0
  90. package/dist/scss/components/_PageTransition.scss +2 -0
  91. package/dist/scss/components/_Pagination.scss +2 -0
  92. package/dist/scss/components/_Popover.scss +2 -0
  93. package/dist/scss/components/_Progress.scss +2 -0
  94. package/dist/scss/components/_RadialProgress.scss +2 -0
  95. package/dist/scss/components/_Radio.scss +2 -0
  96. package/dist/scss/components/_Rating.scss +2 -0
  97. package/dist/scss/components/_ScrollCarousel.scss +2 -0
  98. package/dist/scss/components/_ScrollSpy.scss +2 -0
  99. package/dist/scss/components/_SegmentedControl.scss +2 -0
  100. package/dist/scss/components/_Select.scss +2 -0
  101. package/dist/scss/components/_Sidebar.scss +2 -0
  102. package/dist/scss/components/_Skeleton.scss +2 -0
  103. package/dist/scss/components/_Slider.scss +2 -0
  104. package/dist/scss/components/_Spacer.scss +2 -0
  105. package/dist/scss/components/_SpeedDial.scss +2 -0
  106. package/dist/scss/components/_Spinner.scss +2 -0
  107. package/dist/scss/components/_Stack.scss +2 -0
  108. package/dist/scss/components/_Stat.scss +2 -0
  109. package/dist/scss/components/_Status.scss +2 -0
  110. package/dist/scss/components/_Steps.scss +2 -0
  111. package/dist/scss/components/_Swap.scss +2 -0
  112. package/dist/scss/components/_Switch.scss +2 -0
  113. package/dist/scss/components/_Table.scss +2 -0
  114. package/dist/scss/components/_Tabs.scss +2 -0
  115. package/dist/scss/components/_Text.scss +2 -0
  116. package/dist/scss/components/_TextRotate.scss +2 -0
  117. package/dist/scss/components/_Textarea.scss +2 -0
  118. package/dist/scss/components/_ThemeProvider.scss +2 -0
  119. package/dist/scss/components/_Tile.scss +2 -0
  120. package/dist/scss/components/_Toast.scss +2 -0
  121. package/dist/scss/components/_ToggleButton.scss +2 -0
  122. package/dist/scss/components/_Tooltip.scss +2 -0
  123. package/dist/scss/components/_Type.scss +2 -0
  124. package/dist/scss/components/_Visibility.scss +2 -0
  125. package/dist/scss/components/_VisuallyHidden.scss +2 -0
  126. package/dist/shapes.d.ts +12 -1
  127. package/dist/shapes.js +11 -10
  128. package/dist/style-manifest.json +18830 -132
  129. package/dist/theme.js +6 -1
  130. package/dist/themeFiles/index.d.ts +9 -0
  131. package/dist/themeFiles/index.js +9 -0
  132. package/dist/themeFiles/scssModule.d.ts +100 -0
  133. package/dist/themeFiles/scssModule.js +384 -0
  134. package/dist/themeFiles/spec.d.ts +198 -0
  135. package/dist/themeFiles/spec.js +877 -0
  136. package/dist/tokens.css +30 -1
  137. package/dist/typography.js +1 -1
  138. package/dist/utilities.css +435 -0
  139. package/dist/utilities.d.ts +8 -0
  140. package/dist/utilities.js +75 -0
  141. package/package.json +20 -1
  142. package/src/components/AutoLayout/AutoLayout.scss +2 -26
  143. package/src/components/Carousel/Carousel.scss +122 -126
  144. package/src/components/Checkbox/Checkbox.scss +2 -2
  145. package/src/components/Chip/Chip.scss +63 -8
  146. package/src/components/ChoiceGroup/ChoiceGroup.scss +19 -1
  147. package/src/components/Collapsible/Collapsible.scss +3 -0
  148. package/src/components/ColorPicker/ColorPicker.scss +95 -0
  149. package/src/components/Combobox/Combobox.scss +4 -2
  150. package/src/components/Dialog/Dialog.scss +24 -7
  151. package/src/components/EditableField/EditableField.scss +275 -0
  152. package/src/components/Grid/Grid.scss +2 -70
  153. package/src/components/Input/Input.scss +29 -0
  154. package/src/components/Menu/Menu.scss +18 -0
  155. package/src/components/NumberField/NumberField.scss +56 -9
  156. package/src/components/NumberStepper/NumberStepper.scss +13 -0
  157. package/src/components/Radio/Radio.scss +2 -2
  158. package/src/components/ScrollCarousel/ScrollCarousel.scss +142 -0
  159. package/src/components/Select/Select.scss +4 -0
  160. package/src/components/Slider/Slider.scss +51 -6
  161. package/src/components/Stack/Stack.scss +2 -48
  162. package/src/components/Switch/Switch.scss +9 -6
  163. package/src/components/Text/Text.scss +5 -2
  164. package/src/styles/_breakpoint-vars.scss +17 -11
  165. package/src/styles/_controls.scss +2 -2
  166. package/src/styles/_core.scss +1 -0
  167. package/src/styles/_kit.scss +483 -56
  168. package/src/styles/_layout-props.scss +197 -0
  169. package/src/styles/_manifest.scss +53 -23
  170. package/src/styles/_mixins.scss +53 -15
  171. package/src/styles/_slides.scss +112 -0
  172. package/src/styles/_utilities.scss +104 -0
  173. package/src/styles/breakpoints.test.ts +21 -1
  174. package/src/styles/entryPoints.test.ts +25 -2
  175. package/src/styles/index.scss +3 -1
  176. package/src/styles/kit.test.ts +171 -1
  177. package/src/styles/public/_breakpoints.scss +43 -0
  178. package/src/styles/public/_slides.scss +3 -0
  179. package/src/styles/public/_utilities.scss +3 -0
  180. package/src/styles/resets.scss +7 -0
  181. package/src/styles/utilities.test.ts +39 -0
  182. package/themes/bevel.css +187 -187
  183. package/themes/bevel.scss +960 -958
  184. package/themes/extrude.css +42 -42
  185. package/themes/folio.css +200 -200
  186. package/themes/folio.scss +880 -878
  187. package/themes/outline.css +18 -18
  188. package/themes/pebble.css +8 -8
  189. package/themes/ridge.css +188 -188
  190. package/themes/ridge.scss +820 -818
  191. package/themes/soft.css +11 -11
  192. package/themes/ticket.css +180 -180
  193. package/themes/ticket.scss +881 -879
  194. package/themes/tilt.css +25 -25
@@ -90,7 +90,7 @@
90
90
  inline-size: min(var(--greese-dialog-width, 32rem), 100vw - 2 * var(--greese-space-4));
91
91
  max-inline-size: none;
92
92
  max-block-size: calc(100dvh - 2 * var(--greese-space-4));
93
- padding: var(--greese-space-5);
93
+ padding: var(--greese-dialog-padding, var(--greese-space-5));
94
94
  overflow: hidden;
95
95
  border-radius: var(--greese-corner-surface);
96
96
  }
@@ -132,7 +132,7 @@
132
132
  inline-size: 100vw;
133
133
  max-block-size: 100dvh;
134
134
  block-size: 100dvh;
135
- padding-block: max(var(--greese-space-5), env(safe-area-inset-top)) max(var(--greese-space-5), env(safe-area-inset-bottom));
135
+ padding-block: var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-top))) var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-bottom)));
136
136
  border: 0;
137
137
  border-radius: 0;
138
138
  }
@@ -162,6 +162,8 @@
162
162
  .greese-Dialog-body {
163
163
  flex: 1 1 auto;
164
164
  min-block-size: 0;
165
+ padding: 4px;
166
+ margin: -4px;
165
167
  overflow: auto;
166
168
  overscroll-behavior: contain;
167
169
  }
@@ -234,7 +236,7 @@
234
236
  inline-size: min(24rem, 100vw - 3rem);
235
237
  block-size: 100dvh;
236
238
  max-block-size: none;
237
- padding-block: max(var(--greese-space-5), env(safe-area-inset-top)) max(var(--greese-space-5), env(safe-area-inset-bottom));
239
+ padding-block: var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-top))) var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-bottom)));
238
240
  border-start-start-radius: var(--greese-corner-surface);
239
241
  border-start-end-radius: 0;
240
242
  border-end-end-radius: 0;
@@ -248,7 +250,7 @@
248
250
  inline-size: min(24rem, 100vw - 3rem);
249
251
  block-size: 100dvh;
250
252
  max-block-size: none;
251
- padding-block: max(var(--greese-space-5), env(safe-area-inset-top)) max(var(--greese-space-5), env(safe-area-inset-bottom));
253
+ padding-block: var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-top))) var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-bottom)));
252
254
  border-start-start-radius: 0;
253
255
  border-start-end-radius: var(--greese-corner-surface);
254
256
  border-end-end-radius: var(--greese-corner-surface);
@@ -262,7 +264,7 @@
262
264
  inline-size: 100vw;
263
265
  block-size: auto;
264
266
  max-block-size: 85dvh;
265
- padding-block: var(--greese-space-5) max(var(--greese-space-5), env(safe-area-inset-bottom));
267
+ padding-block: var(--greese-dialog-padding, var(--greese-space-5)) var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-bottom)));
266
268
  border-start-start-radius: var(--greese-corner-surface);
267
269
  border-start-end-radius: var(--greese-corner-surface);
268
270
  border-end-end-radius: 0;
@@ -276,7 +278,7 @@
276
278
  inline-size: 100vw;
277
279
  block-size: auto;
278
280
  max-block-size: 85dvh;
279
- padding-block: max(var(--greese-space-5), env(safe-area-inset-top)) var(--greese-space-5);
281
+ padding-block: var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-top))) var(--greese-dialog-padding, var(--greese-space-5));
280
282
  border-start-start-radius: 0;
281
283
  border-start-end-radius: 0;
282
284
  border-end-end-radius: var(--greese-corner-surface);
@@ -291,7 +293,7 @@
291
293
  inline-size: min(24rem, 100vw - 3rem);
292
294
  block-size: 100dvh;
293
295
  max-block-size: none;
294
- padding-block: max(var(--greese-space-5), env(safe-area-inset-top)) max(var(--greese-space-5), env(safe-area-inset-bottom));
296
+ padding-block: var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-top))) var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-bottom)));
295
297
  border-start-start-radius: var(--greese-corner-surface);
296
298
  border-start-end-radius: 0;
297
299
  border-end-end-radius: 0;
@@ -305,7 +307,7 @@
305
307
  inline-size: min(24rem, 100vw - 3rem);
306
308
  block-size: 100dvh;
307
309
  max-block-size: none;
308
- padding-block: max(var(--greese-space-5), env(safe-area-inset-top)) max(var(--greese-space-5), env(safe-area-inset-bottom));
310
+ padding-block: var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-top))) var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-bottom)));
309
311
  border-start-start-radius: 0;
310
312
  border-start-end-radius: var(--greese-corner-surface);
311
313
  border-end-end-radius: var(--greese-corner-surface);
@@ -319,7 +321,7 @@
319
321
  inline-size: 100vw;
320
322
  block-size: auto;
321
323
  max-block-size: 85dvh;
322
- padding-block: var(--greese-space-5) max(var(--greese-space-5), env(safe-area-inset-bottom));
324
+ padding-block: var(--greese-dialog-padding, var(--greese-space-5)) var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-bottom)));
323
325
  border-start-start-radius: var(--greese-corner-surface);
324
326
  border-start-end-radius: var(--greese-corner-surface);
325
327
  border-end-end-radius: 0;
@@ -333,7 +335,7 @@
333
335
  inline-size: 100vw;
334
336
  block-size: auto;
335
337
  max-block-size: 85dvh;
336
- padding-block: max(var(--greese-space-5), env(safe-area-inset-top)) var(--greese-space-5);
338
+ padding-block: var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-top))) var(--greese-dialog-padding, var(--greese-space-5));
337
339
  border-start-start-radius: 0;
338
340
  border-start-end-radius: 0;
339
341
  border-end-end-radius: var(--greese-corner-surface);
@@ -349,7 +351,7 @@
349
351
  inline-size: min(24rem, 100vw - 3rem);
350
352
  block-size: 100dvh;
351
353
  max-block-size: none;
352
- padding-block: max(var(--greese-space-5), env(safe-area-inset-top)) max(var(--greese-space-5), env(safe-area-inset-bottom));
354
+ padding-block: var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-top))) var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-bottom)));
353
355
  border-start-start-radius: var(--greese-corner-surface);
354
356
  border-start-end-radius: 0;
355
357
  border-end-end-radius: 0;
@@ -363,7 +365,7 @@
363
365
  inline-size: min(24rem, 100vw - 3rem);
364
366
  block-size: 100dvh;
365
367
  max-block-size: none;
366
- padding-block: max(var(--greese-space-5), env(safe-area-inset-top)) max(var(--greese-space-5), env(safe-area-inset-bottom));
368
+ padding-block: var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-top))) var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-bottom)));
367
369
  border-start-start-radius: 0;
368
370
  border-start-end-radius: var(--greese-corner-surface);
369
371
  border-end-end-radius: var(--greese-corner-surface);
@@ -377,7 +379,7 @@
377
379
  inline-size: 100vw;
378
380
  block-size: auto;
379
381
  max-block-size: 85dvh;
380
- padding-block: var(--greese-space-5) max(var(--greese-space-5), env(safe-area-inset-bottom));
382
+ padding-block: var(--greese-dialog-padding, var(--greese-space-5)) var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-bottom)));
381
383
  border-start-start-radius: var(--greese-corner-surface);
382
384
  border-start-end-radius: var(--greese-corner-surface);
383
385
  border-end-end-radius: 0;
@@ -391,7 +393,7 @@
391
393
  inline-size: 100vw;
392
394
  block-size: auto;
393
395
  max-block-size: 85dvh;
394
- padding-block: max(var(--greese-space-5), env(safe-area-inset-top)) var(--greese-space-5);
396
+ padding-block: var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-top))) var(--greese-dialog-padding, var(--greese-space-5));
395
397
  border-start-start-radius: 0;
396
398
  border-start-end-radius: 0;
397
399
  border-end-end-radius: var(--greese-corner-surface);
@@ -407,7 +409,7 @@
407
409
  inline-size: min(24rem, 100vw - 3rem);
408
410
  block-size: 100dvh;
409
411
  max-block-size: none;
410
- padding-block: max(var(--greese-space-5), env(safe-area-inset-top)) max(var(--greese-space-5), env(safe-area-inset-bottom));
412
+ padding-block: var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-top))) var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-bottom)));
411
413
  border-start-start-radius: var(--greese-corner-surface);
412
414
  border-start-end-radius: 0;
413
415
  border-end-end-radius: 0;
@@ -421,7 +423,7 @@
421
423
  inline-size: min(24rem, 100vw - 3rem);
422
424
  block-size: 100dvh;
423
425
  max-block-size: none;
424
- padding-block: max(var(--greese-space-5), env(safe-area-inset-top)) max(var(--greese-space-5), env(safe-area-inset-bottom));
426
+ padding-block: var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-top))) var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-bottom)));
425
427
  border-start-start-radius: 0;
426
428
  border-start-end-radius: var(--greese-corner-surface);
427
429
  border-end-end-radius: var(--greese-corner-surface);
@@ -435,7 +437,7 @@
435
437
  inline-size: 100vw;
436
438
  block-size: auto;
437
439
  max-block-size: 85dvh;
438
- padding-block: var(--greese-space-5) max(var(--greese-space-5), env(safe-area-inset-bottom));
440
+ padding-block: var(--greese-dialog-padding, var(--greese-space-5)) var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-bottom)));
439
441
  border-start-start-radius: var(--greese-corner-surface);
440
442
  border-start-end-radius: var(--greese-corner-surface);
441
443
  border-end-end-radius: 0;
@@ -449,7 +451,7 @@
449
451
  inline-size: 100vw;
450
452
  block-size: auto;
451
453
  max-block-size: 85dvh;
452
- padding-block: max(var(--greese-space-5), env(safe-area-inset-top)) var(--greese-space-5);
454
+ padding-block: var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-top))) var(--greese-dialog-padding, var(--greese-space-5));
453
455
  border-start-start-radius: 0;
454
456
  border-start-end-radius: 0;
455
457
  border-end-end-radius: var(--greese-corner-surface);
@@ -465,7 +467,7 @@
465
467
  inline-size: min(24rem, 100vw - 3rem);
466
468
  block-size: 100dvh;
467
469
  max-block-size: none;
468
- padding-block: max(var(--greese-space-5), env(safe-area-inset-top)) max(var(--greese-space-5), env(safe-area-inset-bottom));
470
+ padding-block: var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-top))) var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-bottom)));
469
471
  border-start-start-radius: var(--greese-corner-surface);
470
472
  border-start-end-radius: 0;
471
473
  border-end-end-radius: 0;
@@ -479,7 +481,7 @@
479
481
  inline-size: min(24rem, 100vw - 3rem);
480
482
  block-size: 100dvh;
481
483
  max-block-size: none;
482
- padding-block: max(var(--greese-space-5), env(safe-area-inset-top)) max(var(--greese-space-5), env(safe-area-inset-bottom));
484
+ padding-block: var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-top))) var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-bottom)));
483
485
  border-start-start-radius: 0;
484
486
  border-start-end-radius: var(--greese-corner-surface);
485
487
  border-end-end-radius: var(--greese-corner-surface);
@@ -493,7 +495,7 @@
493
495
  inline-size: 100vw;
494
496
  block-size: auto;
495
497
  max-block-size: 85dvh;
496
- padding-block: var(--greese-space-5) max(var(--greese-space-5), env(safe-area-inset-bottom));
498
+ padding-block: var(--greese-dialog-padding, var(--greese-space-5)) var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-bottom)));
497
499
  border-start-start-radius: var(--greese-corner-surface);
498
500
  border-start-end-radius: var(--greese-corner-surface);
499
501
  border-end-end-radius: 0;
@@ -507,7 +509,7 @@
507
509
  inline-size: 100vw;
508
510
  block-size: auto;
509
511
  max-block-size: 85dvh;
510
- padding-block: max(var(--greese-space-5), env(safe-area-inset-top)) var(--greese-space-5);
512
+ padding-block: var(--greese-dialog-padding, max(var(--greese-space-5), env(safe-area-inset-top))) var(--greese-dialog-padding, var(--greese-space-5));
511
513
  border-start-start-radius: 0;
512
514
  border-start-end-radius: 0;
513
515
  border-end-end-radius: var(--greese-corner-surface);
@@ -0,0 +1,219 @@
1
+ @import './core.css';
2
+ /* stylelint-disable color-no-hex */
3
+ @layer greese.components {
4
+ .greese-EditableField {
5
+ --greese-editablefield-dial: 2.25rem;
6
+ box-sizing: border-box;
7
+ display: flex;
8
+ gap: var(--greese-space-2);
9
+ align-items: center;
10
+ min-inline-size: 0;
11
+ }
12
+ .greese-EditableField[data-disabled] {
13
+ opacity: 0.55;
14
+ }
15
+ .greese-EditableField--row {
16
+ justify-content: space-between;
17
+ }
18
+ .greese-EditableField--column {
19
+ flex-direction: column;
20
+ align-items: stretch;
21
+ }
22
+ .greese-EditableField-label {
23
+ flex: none;
24
+ color: var(--greese-color-fg-muted);
25
+ overflow: hidden;
26
+ text-overflow: ellipsis;
27
+ white-space: nowrap;
28
+ }
29
+ .greese-EditableField--column > .greese-EditableField-label {
30
+ align-self: start;
31
+ }
32
+ .greese-EditableField-control {
33
+ flex: 1 1 auto;
34
+ min-inline-size: 0;
35
+ }
36
+ .greese-EditableField--checkbox > .greese-EditableField-control,
37
+ .greese-EditableField--switch > .greese-EditableField-control,
38
+ .greese-EditableField--radio > .greese-EditableField-control,
39
+ .greese-EditableField--segmented > .greese-EditableField-control {
40
+ flex: 0 0 auto;
41
+ }
42
+ .greese-EditableField-number,
43
+ .greese-EditableField-range,
44
+ .greese-EditableField-knob {
45
+ display: flex;
46
+ gap: var(--greese-space-2);
47
+ align-items: center;
48
+ }
49
+ .greese-EditableField-number > .greese-NumberField,
50
+ .greese-EditableField-range > .greese-Slider,
51
+ .greese-EditableField-knob > .greese-NumberField {
52
+ flex: 1;
53
+ min-inline-size: 0;
54
+ }
55
+ @media (pointer: coarse) {
56
+ .greese-EditableField-clear::after {
57
+ position: absolute;
58
+ top: 50%;
59
+ left: 50%;
60
+ inline-size: max(100%, 44px);
61
+ block-size: max(100%, 44px);
62
+ content: "";
63
+ translate: -50% -50%;
64
+ }
65
+ }
66
+ .greese-EditableField-clear {
67
+ position: relative;
68
+ display: inline-grid;
69
+ flex: none;
70
+ place-items: center;
71
+ inline-size: 1.25rem;
72
+ block-size: 1.25rem;
73
+ padding: 0;
74
+ color: var(--greese-color-fg-muted);
75
+ cursor: pointer;
76
+ background: none;
77
+ border: 0;
78
+ border-radius: var(--greese-corner-round);
79
+ }
80
+ @media (hover: hover) {
81
+ .greese-EditableField-clear:hover {
82
+ color: var(--greese-color-fg);
83
+ background-color: color-mix(in oklab, var(--greese-color-fg) 8%, transparent);
84
+ }
85
+ }
86
+ .greese-EditableField-clear > svg {
87
+ inline-size: 0.75rem;
88
+ block-size: 0.75rem;
89
+ }
90
+ .greese-EditableField-textarea {
91
+ position: relative;
92
+ }
93
+ .greese-EditableField-textarea > .greese-EditableField-clear {
94
+ position: absolute;
95
+ inset-block-start: var(--greese-space-1);
96
+ inset-inline-end: var(--greese-space-1);
97
+ }
98
+ .greese-EditableField-textarea:has(> .greese-EditableField-clear) .greese-Textarea-control {
99
+ padding-inline-end: 1.75rem;
100
+ }
101
+ .greese-EditableField-unit,
102
+ .greese-EditableField-value {
103
+ flex: none;
104
+ font-variant-numeric: tabular-nums;
105
+ color: var(--greese-color-fg-muted);
106
+ }
107
+ .greese-EditableField-value {
108
+ min-inline-size: 3ch;
109
+ text-align: end;
110
+ }
111
+ .greese-EditableField-swatch {
112
+ inline-size: 100%;
113
+ padding: 0;
114
+ cursor: pointer;
115
+ background: linear-gradient(var(--greese-editablefield-swatch), var(--greese-editablefield-swatch)), repeating-conic-gradient(#c8ccd2 0% 25%, #fff 0% 50%) 0 0/0.5rem 0.5rem;
116
+ border: 0;
117
+ border-radius: var(--greese-corner-inset);
118
+ box-shadow: inset 0 0 0 1px var(--greese-color-border-strong);
119
+ position: relative;
120
+ min-inline-size: var(--greese-editablefield-height, 1.75rem);
121
+ block-size: var(--greese-editablefield-height, 1.75rem);
122
+ }
123
+ @media (pointer: coarse) {
124
+ .greese-EditableField-swatch::after {
125
+ position: absolute;
126
+ top: 50%;
127
+ left: 50%;
128
+ inline-size: max(100%, 44px);
129
+ block-size: max(100%, 44px);
130
+ content: "";
131
+ translate: -50% -50%;
132
+ }
133
+ }
134
+ .greese-EditableField-swatch:focus-visible {
135
+ outline: 2px solid var(--greese-color-focus-ring);
136
+ outline-offset: 2px;
137
+ }
138
+ .greese-EditableField-swatch:disabled {
139
+ cursor: not-allowed;
140
+ }
141
+ .greese-EditableField-swatch[data-none] {
142
+ background: linear-gradient(to top right, transparent calc(50% - 1px), var(--greese-color-negative) calc(50% - 1px), var(--greese-color-negative) calc(50% + 1px), transparent calc(50% + 1px)), var(--greese-color-surface);
143
+ }
144
+ .greese-EditableField-swatch[data-mixed] {
145
+ background: var(--greese-color-track);
146
+ box-shadow: inset 0 0 0 1px var(--greese-color-border-strong);
147
+ opacity: 0.7;
148
+ }
149
+ .greese-EditableField-picker:popover-open {
150
+ display: grid;
151
+ gap: var(--greese-space-3);
152
+ }
153
+ .greese-EditableField-none {
154
+ padding: var(--greese-space-2);
155
+ font: inherit;
156
+ color: var(--greese-color-fg);
157
+ cursor: pointer;
158
+ background: var(--greese-color-surface);
159
+ border: 1px solid var(--greese-color-border);
160
+ border-radius: var(--greese-corner-inset);
161
+ }
162
+ .greese-EditableField-none:hover {
163
+ background: var(--greese-color-track);
164
+ }
165
+ .greese-EditableField-none:focus-visible {
166
+ outline: 2px solid var(--greese-color-focus-ring);
167
+ outline-offset: 2px;
168
+ }
169
+ .greese-EditableField-dial {
170
+ position: relative;
171
+ flex: none;
172
+ inline-size: var(--greese-editablefield-dial);
173
+ block-size: var(--greese-editablefield-dial);
174
+ cursor: grab;
175
+ background: var(--greese-color-track);
176
+ border: 1px solid var(--greese-color-border);
177
+ border-radius: var(--greese-corner-round);
178
+ touch-action: none;
179
+ }
180
+ .greese-EditableField-dial:focus-visible {
181
+ outline: 2px solid var(--greese-color-focus-ring);
182
+ outline-offset: 2px;
183
+ }
184
+ .greese-EditableField-dial[aria-disabled=true] {
185
+ cursor: not-allowed;
186
+ }
187
+ .greese-EditableField-dialDot {
188
+ position: absolute;
189
+ inset: 0;
190
+ display: block;
191
+ rotate: var(--greese-editablefield-angle, 0deg);
192
+ }
193
+ .greese-EditableField-dialDot::after {
194
+ position: absolute;
195
+ inset-block-start: 0.125rem;
196
+ inset-inline-start: 50%;
197
+ inline-size: 0.375rem;
198
+ block-size: 0.375rem;
199
+ content: "";
200
+ background: var(--greese-color-primary);
201
+ border-radius: var(--greese-corner-round);
202
+ translate: -50% 0;
203
+ }
204
+ .greese-EditableField--size-xs {
205
+ --greese-editablefield-height: 1.5rem;
206
+ }
207
+ .greese-EditableField--size-sm {
208
+ --greese-editablefield-height: 2rem;
209
+ }
210
+ .greese-EditableField--size-md {
211
+ --greese-editablefield-height: 2.5rem;
212
+ }
213
+ .greese-EditableField--size-lg {
214
+ --greese-editablefield-height: 3rem;
215
+ }
216
+ .greese-EditableField--size-xl {
217
+ --greese-editablefield-height: 4rem;
218
+ }
219
+ }
@@ -30,6 +30,7 @@
30
30
  gap: var(--greese-space-2);
31
31
  align-items: center;
32
32
  inline-size: 100%;
33
+ min-inline-size: 0;
33
34
  min-block-size: var(--greese-input-height);
34
35
  padding-inline: var(--greese-input-padding);
35
36
  cursor: text;
@@ -62,9 +63,17 @@
62
63
  inline-size: 1.25em;
63
64
  block-size: 1.25em;
64
65
  }
66
+ .greese-Input.greese-Input--measured {
67
+ inline-size: fit-content;
68
+ flex: none;
69
+ }
70
+ .greese-Input.greese-Input--measured .greese-Input-control {
71
+ flex: none;
72
+ inline-size: calc(var(--greese-input-size) * 1ch);
73
+ }
65
74
  .greese-Input--size-xs {
66
- --greese-input-height: 1rem;
67
- --greese-input-padding: var(--greese-space-1);
75
+ --greese-input-height: 1.5rem;
76
+ --greese-input-padding: var(--greese-space-2);
68
77
  font-size: var(--greese-type-p3-font-size);
69
78
  }
70
79
  @media (pointer: coarse) {
package/dist/css/Menu.css CHANGED
@@ -93,6 +93,15 @@
93
93
  display: flex;
94
94
  flex-direction: column;
95
95
  }
96
+ .greese-ContextMenu {
97
+ min-inline-size: 0;
98
+ }
99
+ .greese-ContextMenu-point {
100
+ position: fixed;
101
+ inline-size: 0;
102
+ block-size: 0;
103
+ pointer-events: none;
104
+ }
96
105
  .greese-Menu-viewport {
97
106
  min-block-size: 0;
98
107
  padding: var(--greese-space-1);
@@ -5,8 +5,8 @@
5
5
  }
6
6
  .greese-NumberField-steppers {
7
7
  display: inline-flex;
8
- gap: 2px;
9
- margin-inline-end: calc(-1 * var(--greese-space-2));
8
+ flex-direction: column;
9
+ margin-inline-end: calc(-1 * var(--greese-space-1));
10
10
  }
11
11
  @media (pointer: coarse) {
12
12
  .greese-NumberField-step::after {
@@ -23,8 +23,6 @@
23
23
  position: relative;
24
24
  display: inline-grid;
25
25
  place-items: center;
26
- inline-size: 1.75rem;
27
- block-size: 1.75rem;
28
26
  padding: 0;
29
27
  color: var(--greese-color-fg-muted);
30
28
  cursor: pointer;
@@ -32,10 +30,6 @@
32
30
  border: 0;
33
31
  border-radius: var(--greese-corner-inset);
34
32
  }
35
- .greese-NumberField-step > svg {
36
- inline-size: 1rem;
37
- block-size: 1rem;
38
- }
39
33
  @media (hover: hover) {
40
34
  .greese-NumberField-step:hover {
41
35
  color: var(--greese-color-fg);
@@ -46,4 +40,55 @@
46
40
  cursor: not-allowed;
47
41
  opacity: 0.4;
48
42
  }
43
+ .greese-NumberField-steppers .greese-NumberField-step {
44
+ inline-size: 1.25rem;
45
+ block-size: 0.875rem;
46
+ }
47
+ .greese-NumberField-steppers .greese-NumberField-step > svg {
48
+ inline-size: 0.75rem;
49
+ block-size: 0.75rem;
50
+ }
51
+ .greese-NumberField--split .greese-NumberField-step {
52
+ inline-size: 1.5rem;
53
+ block-size: 1.5rem;
54
+ }
55
+ .greese-NumberField--split .greese-NumberField-step > svg {
56
+ inline-size: 0.875rem;
57
+ block-size: 0.875rem;
58
+ }
59
+ @media (pointer: coarse) {
60
+ .greese-NumberField-clear::after {
61
+ position: absolute;
62
+ top: 50%;
63
+ left: 50%;
64
+ inline-size: max(100%, 44px);
65
+ block-size: max(100%, 44px);
66
+ content: "";
67
+ translate: -50% -50%;
68
+ }
69
+ }
70
+ .greese-NumberField-clear {
71
+ position: relative;
72
+ display: inline-grid;
73
+ flex: none;
74
+ place-items: center;
75
+ inline-size: 1.25rem;
76
+ block-size: 1.25rem;
77
+ padding: 0;
78
+ color: var(--greese-color-fg-muted);
79
+ cursor: pointer;
80
+ background: none;
81
+ border: 0;
82
+ border-radius: var(--greese-corner-round);
83
+ }
84
+ @media (hover: hover) {
85
+ .greese-NumberField-clear:hover {
86
+ color: var(--greese-color-fg);
87
+ background-color: color-mix(in oklab, var(--greese-color-fg) 8%, transparent);
88
+ }
89
+ }
90
+ .greese-NumberField-clear > svg {
91
+ inline-size: 0.75rem;
92
+ block-size: 0.75rem;
93
+ }
49
94
  }
@@ -0,0 +1,9 @@
1
+ @import './core.css';
2
+ @layer greese.components {
3
+ .greese-NumberStepper {
4
+ --greese-numberstepper-gap: var(--greese-space-1);
5
+ }
6
+ .greese-NumberStepper .greese-Input-control {
7
+ text-align: center;
8
+ }
9
+ }
@@ -8,7 +8,7 @@
8
8
  max-inline-size: 100%;
9
9
  }
10
10
  .greese-OtpField--size-xs {
11
- --greese-otp-size: 1rem;
11
+ --greese-otp-size: 1.5rem;
12
12
  font-size: max(16px, var(--greese-type-p3-font-size));
13
13
  }
14
14
  .greese-OtpField--size-sm {
@@ -13,8 +13,8 @@
13
13
  }
14
14
  .greese-Radio-input {
15
15
  position: relative;
16
- inline-size: 1.125rem;
17
- block-size: 1.125rem;
16
+ inline-size: var(--greese-choice-box, 1.125rem);
17
+ block-size: var(--greese-choice-box, 1.125rem);
18
18
  margin: 0;
19
19
  cursor: pointer;
20
20
  background-color: var(--greese-color-canvas);