@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
package/README.md CHANGED
@@ -24,20 +24,25 @@ the framework packages provide.
24
24
 
25
25
  ## What's in it
26
26
 
27
- | Import | What |
28
- | -------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
29
- | `@greese/ui/styles.css` | Tokens and every component's styles |
30
- | `@greese/ui/base.css` | Opt-in reset and page defaults |
31
- | `@greese/ui/css/<Name>.css` | One component's own styles (plus the shared core). A component built on others (a Dialog uses Button) needs theirs too; the framework packages wire that up |
32
- | `@greese/ui/tokens.css` | `--greese-*` custom properties, in `@layer greese.tokens` |
33
- | `@greese/ui/palette.css` | Opt-in: the palette as `--greese-<hue>-<shade>` (`--greese-lavender-600`), about 1.5 kB compressed |
34
- | `@greese/ui/scss` | The whole stylesheet as Sass, configurable (`@use 'pkg:@greese/ui/scss' with ($breakpoints: …)`) |
35
- | `@greese/ui/scss/kit` | The theming kit: `@use 'pkg:@greese/ui/scss/kit' as greese`, build-time themes that reject unknown names |
36
- | `@greese/ui/scss/tokens` | The token CSS, plus `$breakpoints` and `$space-keys` Sass maps |
37
- | `@greese/ui/scss/layers` | Only the cascade layer order statement |
38
- | `@greese/ui/scss/maps` | Only the Sass maps (`$breakpoints`, `$space-keys`, every token default as `$color` and `$scalars`, the palette as `$palette`, and `$layer-order`); emits no CSS |
39
- | `@greese/ui/style-manifest.json` | Every component's styling API, read from the compiled CSS |
40
- | `@greese/ui` | TypeScript constants (`color`, `palette` and each hue, `space`, `radius`, `lineHeight`, `shadow`, `breakpoints`, …), `createTheme()` and `getSchemeScript()` |
27
+ | Import | What |
28
+ | ------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
29
+ | `@greese/ui/styles.css` | Tokens and every component's styles |
30
+ | `@greese/ui/base.css` | Opt-in reset and page defaults |
31
+ | `@greese/ui/css/<Name>.css` | One component's own styles (plus the shared core). A component built on others (a Dialog uses Button) needs theirs too; the framework packages wire that up |
32
+ | `@greese/ui/tokens.css` | `--greese-*` custom properties, in `@layer greese.tokens` |
33
+ | `@greese/ui/palette.css` | Opt-in: the palette as `--greese-<hue>-<shade>` (`--greese-lavender-600`), about 1.5 kB compressed |
34
+ | `@greese/ui/scss` | The whole stylesheet as Sass, configurable (`@use 'pkg:@greese/ui/scss' with ($breakpoints: …)`) |
35
+ | `@greese/ui/scss/kit` | The theming kit: `@use 'pkg:@greese/ui/scss/kit' as greese`, build-time themes that reject unknown names |
36
+ | `@greese/ui/scss/tokens` | The token CSS, plus `$breakpoints` and `$space-keys` Sass maps |
37
+ | `@greese/ui/scss/layers` | Only the cascade layer order statement |
38
+ | `@greese/ui/scss/maps` | Only the Sass maps (`$breakpoints`, `$space-keys`, every token default as `$color` and `$scalars`, the palette as `$palette`, and `$layer-order`); emits no CSS |
39
+ | `@greese/ui/scss/mixins`, `tones`, `floating`, `controls`, `slides` | The library's own mixins and maps for theme authors (ADR 0021); emit no CSS |
40
+ | `@greese/ui/scss/utilities` | The utility classes from Sass, built with the configured breakpoints: `@include utilities.classes(…)` |
41
+ | `@greese/ui/scss/core`, `scss/components/<Name>` | For a Sass build that picks its components: core (tokens, type system) and one component's own stylesheet |
42
+ | `@greese/ui/css/resets.css` | Opt-in: `.greese-reset-color`, `-shape`, `-motion` and `.greese-reset`, which take a theme's layers back from part of a page |
43
+ | `@greese/ui/theme-files` | A theme as data (Theme Studio's JSON) and the SCSS it becomes: `specToLayout()`, the documented folder of modules, or `specToScss()`, one file (ADR 0034) |
44
+ | `@greese/ui/style-manifest.json` | Every component's styling API, read from the compiled CSS |
45
+ | `@greese/ui` | TypeScript constants (`color`, `palette` and each hue, `space`, `radius`, `lineHeight`, `shadow`, `breakpoints`, …), `createTheme()` and `getSchemeScript()` |
41
46
 
42
47
  It has no dependencies.
43
48
 
package/dist/_maps.scss CHANGED
@@ -284,7 +284,7 @@ $typography: (
284
284
  'button': (
285
285
  'base': (
286
286
  'font-size': "0.9375rem",
287
- 'font-weight': "600",
287
+ 'font-weight': "700",
288
288
  'line-height': "1.25",
289
289
  'letter-spacing': "0",
290
290
  ),
@@ -1,5 +1,6 @@
1
1
  /* GENERATED by @greese/ui from src/tokens.ts - do not edit. */
2
- // Internal: the tokens without the type system (src/styles/_typography-vars.scss).
2
+ // Internal: the tokens without the breakpoints (src/styles/_breakpoint-vars.scss)
3
+ // or the type system (src/styles/_typography-vars.scss).
3
4
  @layer greese.reset, greese.tokens, greese.theme, greese.base, greese.components, greese.overrides, greese.utilities;
4
5
  @layer greese.tokens {
5
6
  :root {
@@ -52,11 +53,6 @@
52
53
  --greese-easing-standard: cubic-bezier(0.2, 0, 0, 1);
53
54
  --greese-easing-enter: cubic-bezier(0, 0, 0, 1);
54
55
  --greese-easing-exit: cubic-bezier(0.3, 0, 1, 1);
55
- --greese-breakpoint-xs: 0px;
56
- --greese-breakpoint-sm: 600px;
57
- --greese-breakpoint-md: 900px;
58
- --greese-breakpoint-lg: 1200px;
59
- --greese-breakpoint-xl: 1536px;
60
56
  }
61
57
 
62
58
 
@@ -172,3 +168,31 @@
172
168
  }
173
169
  }
174
170
  }
171
+
172
+ @layer greese.utilities {
173
+ [data-greese-motion='reduce'],
174
+ [data-greese-motion='reduce'] [data-greese-theme] {
175
+ --greese-duration-fast: 0.01ms;
176
+ --greese-duration-normal: 0.01ms;
177
+ --greese-duration-slow: 0.01ms;
178
+ }
179
+
180
+ [data-greese-motion='reduce'],
181
+ [data-greese-motion='reduce'] *,
182
+ [data-greese-motion='reduce'] ::before,
183
+ [data-greese-motion='reduce'] ::after {
184
+ animation-duration: 0.01ms;
185
+ animation-delay: 0s;
186
+ animation-iteration-count: 1;
187
+ transition-duration: 0.01ms;
188
+ transition-delay: 0s;
189
+ scroll-behavior: auto;
190
+ }
191
+
192
+ :root[data-greese-motion='reduce']::view-transition-group(*),
193
+ :root[data-greese-motion='reduce']::view-transition-old(*),
194
+ :root[data-greese-motion='reduce']::view-transition-new(*) {
195
+ animation-duration: 0.01ms;
196
+ animation-delay: 0s;
197
+ }
198
+ }
package/dist/_tokens.scss CHANGED
@@ -287,7 +287,7 @@ $typography: (
287
287
  'button': (
288
288
  'base': (
289
289
  'font-size': "0.9375rem",
290
- 'font-weight': "600",
290
+ 'font-weight': "700",
291
291
  'line-height': "1.25",
292
292
  'letter-spacing': "0",
293
293
  ),
@@ -1943,6 +1943,7 @@ $layer-order: 'greese.reset, greese.tokens, greese.theme, greese.base, greese.co
1943
1943
  --greese-breakpoint-md: 900px;
1944
1944
  --greese-breakpoint-lg: 1200px;
1945
1945
  --greese-breakpoint-xl: 1536px;
1946
+ --greese-breakpoint-keys: xs sm md lg xl;
1946
1947
  --greese-type-p1-font-size: 1.125rem;
1947
1948
  --greese-type-p1-font-weight: 400;
1948
1949
  --greese-type-p1-line-height: 1.6;
@@ -1998,7 +1999,7 @@ $layer-order: 'greese.reset, greese.tokens, greese.theme, greese.base, greese.co
1998
1999
  --greese-type-caption-line-height: 1.4;
1999
2000
  --greese-type-caption-letter-spacing: 0.02em;
2000
2001
  --greese-type-button-font-size: 0.9375rem;
2001
- --greese-type-button-font-weight: 600;
2002
+ --greese-type-button-font-weight: 700;
2002
2003
  --greese-type-button-line-height: 1.25;
2003
2004
  --greese-type-button-letter-spacing: 0;
2004
2005
  }
@@ -2138,3 +2139,31 @@ $layer-order: 'greese.reset, greese.tokens, greese.theme, greese.base, greese.co
2138
2139
  }
2139
2140
  }
2140
2141
  }
2142
+
2143
+ @layer greese.utilities {
2144
+ [data-greese-motion='reduce'],
2145
+ [data-greese-motion='reduce'] [data-greese-theme] {
2146
+ --greese-duration-fast: 0.01ms;
2147
+ --greese-duration-normal: 0.01ms;
2148
+ --greese-duration-slow: 0.01ms;
2149
+ }
2150
+
2151
+ [data-greese-motion='reduce'],
2152
+ [data-greese-motion='reduce'] *,
2153
+ [data-greese-motion='reduce'] ::before,
2154
+ [data-greese-motion='reduce'] ::after {
2155
+ animation-duration: 0.01ms;
2156
+ animation-delay: 0s;
2157
+ animation-iteration-count: 1;
2158
+ transition-duration: 0.01ms;
2159
+ transition-delay: 0s;
2160
+ scroll-behavior: auto;
2161
+ }
2162
+
2163
+ :root[data-greese-motion='reduce']::view-transition-group(*),
2164
+ :root[data-greese-motion='reduce']::view-transition-old(*),
2165
+ :root[data-greese-motion='reduce']::view-transition-new(*) {
2166
+ animation-duration: 0.01ms;
2167
+ animation-delay: 0s;
2168
+ }
2169
+ }