@swiftwc/ui 0.0.0-dev.84 → 0.0.0-dev.86

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 (52) hide show
  1. package/generated/client/index.d.ts +3 -0
  2. package/generated/client/index.js +3 -0
  3. package/generated/components/alert-dialog.d.ts +4 -0
  4. package/generated/components/alert-dialog.js +4 -0
  5. package/generated/components/confirmation-dialog.d.ts +4 -0
  6. package/generated/components/confirmation-dialog.js +4 -0
  7. package/generated/components/h-stack.d.ts +6 -3
  8. package/generated/components/h-stack.js +6 -3
  9. package/generated/components/label-view.d.ts +2 -0
  10. package/generated/components/label-view.js +2 -0
  11. package/generated/components/menu-view.d.ts +2 -0
  12. package/generated/components/menu-view.js +2 -0
  13. package/generated/components/picker-view.d.ts +2 -0
  14. package/generated/components/picker-view.js +2 -0
  15. package/generated/components/progress-view.d.ts +2 -0
  16. package/generated/components/progress-view.js +2 -0
  17. package/generated/components/scroll-view.d.ts +4 -0
  18. package/generated/components/scroll-view.js +4 -0
  19. package/generated/components/section-view.d.ts +4 -0
  20. package/generated/components/section-view.js +4 -0
  21. package/generated/components/table-view.d.ts +8 -0
  22. package/generated/components/table-view.js +8 -0
  23. package/generated/components/v-stack.d.ts +6 -4
  24. package/generated/components/v-stack.js +6 -4
  25. package/generated/css/index.css +242 -11
  26. package/package.json +2 -1
  27. package/scss/_maps.scss +256 -0
  28. package/scss/_vars.scss +2 -115
  29. package/scss/base/_root.scss +6 -5
  30. package/scss/colors/_index.scss +2 -2
  31. package/scss/components/_bordered-button.scss +2 -1
  32. package/scss/components/_bordered-prominent-button.scss +2 -1
  33. package/scss/components/_disclosure-group.scss +1 -1
  34. package/scss/components/_form-view.scss +3 -2
  35. package/scss/components/_glass-button.scss +2 -1
  36. package/scss/components/_glass-prominent-button.scss +2 -1
  37. package/scss/components/_h-stack.scss +4 -21
  38. package/scss/components/_label-view.scss +11 -10
  39. package/scss/components/_list-view.scss +3 -2
  40. package/scss/components/_picker-view.scss +5 -4
  41. package/scss/components/_scroll-view-proxy.scss +2 -2
  42. package/scss/components/_table-view.scss +3 -2
  43. package/scss/components/_toggle-view.scss +1 -1
  44. package/scss/components/_v-stack.scss +3 -4
  45. package/scss/mixins/_color.scss +2 -2
  46. package/scss/mixins/_index.scss +2 -2
  47. package/scss/placeholders/_buttons.scss +2 -1
  48. package/scss/utils/_frame.scss +1 -1
  49. package/scss/utils/_scroll-view.scss +1 -1
  50. package/scss/utils/_spacing.scss +1 -1
  51. package/scss/utils/_stacks.scss +8 -99
  52. package/web-components.html-data/en.json +457 -36
@@ -5,6 +5,9 @@ import { type NavigationHost, queryInsertPosition, startViewTransition } from '.
5
5
  import { type WebComponentCtor } from '../namespace-browser';
6
6
  import { Snapshot } from '../snapshot';
7
7
  export declare const polyfills: Map<string, WebComponentCtor>;
8
+ /**
9
+ * Presents an alert with a message using the given data to produce the alert’s content and a string variable as a title.
10
+ */
8
11
  export declare const alert: (title?: string, message?: string, actions?: {
9
12
  label?: string;
10
13
  image?: string;
@@ -187,6 +187,9 @@ if (mediaQueryList.matches)
187
187
  // ac.abort() // dialog closes silently, a rejects with AbortError
188
188
  // // or still works standalone
189
189
  // a.dismiss() // same effect, no signal needed
190
+ /**
191
+ * Presents an alert with a message using the given data to produce the alert’s content and a string variable as a title.
192
+ */
190
193
  export const alert = (title, message, actions, options) => {
191
194
  const { promise, resolve, reject } = Promise.withResolvers();
192
195
  let dialog;
@@ -1,4 +1,8 @@
1
1
  import { DialogBase } from '../namespace-browser/base';
2
+ /**
3
+ * A representation of an alert presentation.
4
+ * Use it from the client module like `void alert('Save failed.')`.
5
+ */
2
6
  export declare class AlertDialog extends DialogBase {
3
7
  #private;
4
8
  constructor();
@@ -2,6 +2,10 @@ import { alertDialog } from '../buses';
2
2
  import { CleanupRegistry } from '../internal/class/cleanup-registry';
3
3
  import { devFlags, onoff, touchGlass } from '../internal/utils';
4
4
  import { DialogBase } from '../namespace-browser/base';
5
+ /**
6
+ * A representation of an alert presentation.
7
+ * Use it from the client module like `void alert('Save failed.')`.
8
+ */
5
9
  export class AlertDialog extends DialogBase {
6
10
  constructor() {
7
11
  super();
@@ -1,4 +1,8 @@
1
1
  import { DialogBase } from '../namespace-browser/base';
2
+ /**
3
+ * A representation of a confirmation presentation.
4
+ * Use it from the client module like `await confirmation(trigger, 'Permanently erase the items in the Trash?')`.
5
+ */
2
6
  export declare class ConfirmationDialog extends DialogBase {
3
7
  #private;
4
8
  static get observedAttributes(): string[];
@@ -2,6 +2,10 @@ import { confirmationDialog } from '../buses';
2
2
  import { CleanupRegistry } from '../internal/class/cleanup-registry';
3
3
  import { devFlags, isInside, onoff, touchGlass } from '../internal/utils';
4
4
  import { DialogBase } from '../namespace-browser/base';
5
+ /**
6
+ * A representation of a confirmation presentation.
7
+ * Use it from the client module like `await confirmation(trigger, 'Permanently erase the items in the Trash?')`.
8
+ */
5
9
  export class ConfirmationDialog extends DialogBase {
6
10
  static get observedAttributes() {
7
11
  return ['anchor'];
@@ -1,10 +1,13 @@
1
1
  /**
2
+ * @summary A view that arranges its subviews in a horizontal line.
3
+ *
4
+ * @attr {@templateSet} template - The main-axis grid template
2
5
  *
3
6
  * @attr {@spacingSet} spacing - The gap between the primary axis
4
7
  *
5
- * @attr {@alignmentSet} alignment - The cross-axis alignment
6
- * @attr {@distributionSet} distribution - The main-axis alignment
7
- * @attr {@placementSet} placement - The main-axis alignment
8
+ * @attr {@blockSet} alignment - The cross-axis alignment
9
+ * @attr {@inlineSet} distribution - The main-axis alignment
10
+ * @attr {@inlinePlacementSet} placement - The main-axis alignment
8
11
  *
9
12
  */
10
13
  export declare class HStack extends HTMLElement {
@@ -1,11 +1,14 @@
1
1
  import { devFlags } from '../internal/utils';
2
2
  /**
3
+ * @summary A view that arranges its subviews in a horizontal line.
4
+ *
5
+ * @attr {@templateSet} template - The main-axis grid template
3
6
  *
4
7
  * @attr {@spacingSet} spacing - The gap between the primary axis
5
8
  *
6
- * @attr {@alignmentSet} alignment - The cross-axis alignment
7
- * @attr {@distributionSet} distribution - The main-axis alignment
8
- * @attr {@placementSet} placement - The main-axis alignment
9
+ * @attr {@blockSet} alignment - The cross-axis alignment
10
+ * @attr {@inlineSet} distribution - The main-axis alignment
11
+ * @attr {@inlinePlacementSet} placement - The main-axis alignment
9
12
  *
10
13
  */
11
14
  export class HStack extends HTMLElement {
@@ -2,6 +2,8 @@
2
2
  *
3
3
  * @attr {@fontSet} font - Sets the default font for text in this view.
4
4
  *
5
+ * @slot icon
6
+ *
5
7
  */
6
8
  export declare class LabelView extends HTMLElement {
7
9
  #private;
@@ -4,6 +4,8 @@ import { html, render } from '../tpl';
4
4
  *
5
5
  * @attr {@fontSet} font - Sets the default font for text in this view.
6
6
  *
7
+ * @slot icon
8
+ *
7
9
  */
8
10
  export class LabelView extends HTMLElement {
9
11
  static get observedAttributes() {
@@ -1,5 +1,7 @@
1
1
  /**
2
2
  * @summary A control for presenting a menu of actions.
3
+ *
4
+ * @slot label
3
5
  */
4
6
  export declare class MenuView extends HTMLElement {
5
7
  #private;
@@ -3,6 +3,8 @@ import { CleanupRegistry } from '../internal/class/cleanup-registry';
3
3
  import { $, devFlags, onoff, renderLabel, touchGlass } from '../internal/utils';
4
4
  /**
5
5
  * @summary A control for presenting a menu of actions.
6
+ *
7
+ * @slot label
6
8
  */
7
9
  export class MenuView extends HTMLElement {
8
10
  static get observedAttributes() {
@@ -19,7 +19,9 @@ export type Dictionary = DictEntry[];
19
19
  *
20
20
  * @attr {vertical|horizontal|auto} label-value-placement
21
21
  *
22
+ * @slot label
22
23
  * @slot list
24
+ * @slot validity-options
23
25
  */
24
26
  export declare class PickerView extends FormAssociatedBase {
25
27
  #private;
@@ -124,7 +124,9 @@ const collectLeafValues = (node) => (node.children.length ? node.children.flatMa
124
124
  *
125
125
  * @attr {vertical|horizontal|auto} label-value-placement
126
126
  *
127
+ * @slot label
127
128
  * @slot list
129
+ * @slot validity-options
128
130
  */
129
131
  export class PickerView extends FormAssociatedBase {
130
132
  static get ATTR() {
@@ -1,5 +1,7 @@
1
1
  /**
2
2
  * @summary A view that shows the progress toward completion of a task.
3
+ *
4
+ * @slot current-value
3
5
  */
4
6
  export declare class ProgressView extends HTMLElement {
5
7
  #private;
@@ -6,6 +6,8 @@ import { Snapshot } from '../snapshot';
6
6
  const progressViewStyles = ['circular', 'linear'];
7
7
  /**
8
8
  * @summary A view that shows the progress toward completion of a task.
9
+ *
10
+ * @slot current-value
9
11
  */
10
12
  export class ProgressView extends HTMLElement {
11
13
  static get observedAttributes() {
@@ -1,3 +1,7 @@
1
+ /**
2
+ * @slot top-bar-principal
3
+ * @slot bottom-bar-principal
4
+ */
1
5
  export declare class ScrollView extends HTMLElement {
2
6
  #private;
3
7
  static get observedAttributes(): string[];
@@ -5,6 +5,10 @@ import { ResizeObserverSingleton } from '../internal/class/resize-observer-singl
5
5
  import { $, devFlags, frame, onoff, slowHideShow } from '../internal/utils';
6
6
  import { html, render } from '../tpl';
7
7
  const observers = new ResizeObserverSingleton();
8
+ /**
9
+ * @slot top-bar-principal
10
+ * @slot bottom-bar-principal
11
+ */
8
12
  export class ScrollView extends HTMLElement {
9
13
  static get observedAttributes() {
10
14
  return ['navigation-title', 'navigation-inline-title', 'navigation-inline-subtitle', 'navigation-bar-title-display-mode'];
@@ -1,3 +1,7 @@
1
+ /**
2
+ * @slot header
3
+ * @slot footer
4
+ */
1
5
  export declare class SectionView extends HTMLElement {
2
6
  #private;
3
7
  static get observedAttributes(): string[];
@@ -1,5 +1,9 @@
1
1
  import { $, devFlags } from '../internal/utils';
2
2
  import { html, render } from '../tpl';
3
+ /**
4
+ * @slot header
5
+ * @slot footer
6
+ */
3
7
  export class SectionView extends HTMLElement {
4
8
  static get observedAttributes() {
5
9
  return ['header', 'footer'];
@@ -2,6 +2,14 @@
2
2
  * @summary Display selectable, sortable data arranged in rows and columns.
3
3
  *
4
4
  * @attr {title:trailing:subtitle|trailing:title:subtitle|title:subtitle:trailing|*} preferred-compact-template - Sets the template areas when the table is in compact mode
5
+ *
6
+ * @slot header-leading
7
+ * @slot header-principal
8
+ * @slot header-trailing
9
+ * @slot column
10
+ * @slot footer-leading
11
+ * @slot footer-principal
12
+ * @slot footer-trailing
5
13
  */
6
14
  export declare class TableView extends HTMLElement {
7
15
  #private;
@@ -8,6 +8,14 @@ import { Snapshot } from '../snapshot';
8
8
  * @summary Display selectable, sortable data arranged in rows and columns.
9
9
  *
10
10
  * @attr {title:trailing:subtitle|trailing:title:subtitle|title:subtitle:trailing|*} preferred-compact-template - Sets the template areas when the table is in compact mode
11
+ *
12
+ * @slot header-leading
13
+ * @slot header-principal
14
+ * @slot header-trailing
15
+ * @slot column
16
+ * @slot footer-leading
17
+ * @slot footer-principal
18
+ * @slot footer-trailing
11
19
  */
12
20
  export class TableView extends HTMLElement {
13
21
  #styleObserver;
@@ -1,13 +1,15 @@
1
1
  /**
2
+ * @summary A view that arranges its subviews in a vertical line.
3
+ *
2
4
  * @attr {leading|"leading fill"|center|trailing|fill|space-between} distribution - The distribution of cols
3
5
  *
4
- * @attr {"auto spacer"|"auto auto spacer"|"auto auto auto spacer"} template
6
+ * @attr {@templateSet} template - The main-axis grid template
5
7
  *
6
8
  * @attr {@spacingSet} spacing - The gap between the primary axis
7
9
  *
8
- * @attr {@alignmentSet} alignment - The cross-axis alignment
9
- * @attr {@distributionSet} distribution - The main-axis alignment
10
- * @attr {@placementSet} placement - The main-axis alignment
10
+ * @attr {@inlineSet} alignment - The cross-axis alignment
11
+ * @attr {@blockSet} distribution - The main-axis alignment
12
+ * @attr {@blockPlacementSet} placement - The main-axis alignment
11
13
  *
12
14
  */
13
15
  export declare class VStack extends HTMLElement {
@@ -1,14 +1,16 @@
1
1
  import { devFlags } from '../internal/utils';
2
2
  /**
3
+ * @summary A view that arranges its subviews in a vertical line.
4
+ *
3
5
  * @attr {leading|"leading fill"|center|trailing|fill|space-between} distribution - The distribution of cols
4
6
  *
5
- * @attr {"auto spacer"|"auto auto spacer"|"auto auto auto spacer"} template
7
+ * @attr {@templateSet} template - The main-axis grid template
6
8
  *
7
9
  * @attr {@spacingSet} spacing - The gap between the primary axis
8
10
  *
9
- * @attr {@alignmentSet} alignment - The cross-axis alignment
10
- * @attr {@distributionSet} distribution - The main-axis alignment
11
- * @attr {@placementSet} placement - The main-axis alignment
11
+ * @attr {@inlineSet} alignment - The cross-axis alignment
12
+ * @attr {@blockSet} distribution - The main-axis alignment
13
+ * @attr {@blockPlacementSet} placement - The main-axis alignment
12
14
  *
13
15
  */
14
16
  export class VStack extends HTMLElement {
@@ -2055,17 +2055,8 @@
2055
2055
  place-content: safe center;
2056
2056
  gap: 1rem;
2057
2057
  }
2058
- :where(h-stack[template="auto spacer"]) {
2059
- grid-template-columns: auto minmax(0, 1fr);
2060
- }
2061
- :where(h-stack[template="spacer auto"]) {
2062
- grid-template-columns: minmax(0, 1fr) auto;
2063
- }
2064
- :where(h-stack[template="auto spacer auto auto"]) {
2065
- grid-template-columns: auto minmax(0, 1fr) auto auto;
2066
- }
2067
- :where(h-stack[template="auto spacer auto"]) {
2068
- grid-template-columns: auto minmax(0, 1fr) auto;
2058
+ :where(h-stack[template=spacer]) {
2059
+ grid-template-columns: minmax(0, 1fr);
2069
2060
  }
2070
2061
  :where(h-stack[template="repeat(1,spacer)"]) {
2071
2062
  grid-template-columns: repeat(1, minmax(0, 1fr));
@@ -2097,9 +2088,117 @@
2097
2088
  :where(h-stack[template="repeat(10,spacer)"]) {
2098
2089
  grid-template-columns: repeat(10, minmax(0, 1fr));
2099
2090
  }
2091
+ :where(h-stack[template="spacer auto"]) {
2092
+ grid-template-columns: minmax(0, 1fr) auto;
2093
+ }
2094
+ :where(h-stack[template="repeat(1,spacer) auto"]) {
2095
+ grid-template-columns: repeat(1, minmax(0, 1fr)) auto;
2096
+ }
2100
2097
  :where(h-stack[template="repeat(2,spacer) auto"]) {
2101
2098
  grid-template-columns: repeat(2, minmax(0, 1fr)) auto;
2102
2099
  }
2100
+ :where(h-stack[template="repeat(3,spacer) auto"]) {
2101
+ grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
2102
+ }
2103
+ :where(h-stack[template="repeat(4,spacer) auto"]) {
2104
+ grid-template-columns: repeat(4, minmax(0, 1fr)) auto;
2105
+ }
2106
+ :where(h-stack[template="repeat(5,spacer) auto"]) {
2107
+ grid-template-columns: repeat(5, minmax(0, 1fr)) auto;
2108
+ }
2109
+ :where(h-stack[template="repeat(6,spacer) auto"]) {
2110
+ grid-template-columns: repeat(6, minmax(0, 1fr)) auto;
2111
+ }
2112
+ :where(h-stack[template="repeat(7,spacer) auto"]) {
2113
+ grid-template-columns: repeat(7, minmax(0, 1fr)) auto;
2114
+ }
2115
+ :where(h-stack[template="repeat(8,spacer) auto"]) {
2116
+ grid-template-columns: repeat(8, minmax(0, 1fr)) auto;
2117
+ }
2118
+ :where(h-stack[template="repeat(9,spacer) auto"]) {
2119
+ grid-template-columns: repeat(9, minmax(0, 1fr)) auto;
2120
+ }
2121
+ :where(h-stack[template="repeat(10,spacer) auto"]) {
2122
+ grid-template-columns: repeat(10, minmax(0, 1fr)) auto;
2123
+ }
2124
+ :where(h-stack[template="auto spacer"]) {
2125
+ grid-template-columns: auto minmax(0, 1fr);
2126
+ }
2127
+ :where(h-stack[template="repeat(1,auto) spacer"]) {
2128
+ grid-template-columns: repeat(1, auto) minmax(0, 1fr);
2129
+ }
2130
+ :where(h-stack[template="repeat(2,auto) spacer"]) {
2131
+ grid-template-columns: repeat(2, auto) minmax(0, 1fr);
2132
+ }
2133
+ :where(h-stack[template="repeat(3,auto) spacer"]) {
2134
+ grid-template-columns: repeat(3, auto) minmax(0, 1fr);
2135
+ }
2136
+ :where(h-stack[template="repeat(4,auto) spacer"]) {
2137
+ grid-template-columns: repeat(4, auto) minmax(0, 1fr);
2138
+ }
2139
+ :where(h-stack[template="repeat(5,auto) spacer"]) {
2140
+ grid-template-columns: repeat(5, auto) minmax(0, 1fr);
2141
+ }
2142
+ :where(h-stack[template="repeat(6,auto) spacer"]) {
2143
+ grid-template-columns: repeat(6, auto) minmax(0, 1fr);
2144
+ }
2145
+ :where(h-stack[template="repeat(7,auto) spacer"]) {
2146
+ grid-template-columns: repeat(7, auto) minmax(0, 1fr);
2147
+ }
2148
+ :where(h-stack[template="repeat(8,auto) spacer"]) {
2149
+ grid-template-columns: repeat(8, auto) minmax(0, 1fr);
2150
+ }
2151
+ :where(h-stack[template="repeat(9,auto) spacer"]) {
2152
+ grid-template-columns: repeat(9, auto) minmax(0, 1fr);
2153
+ }
2154
+ :where(h-stack[template="repeat(10,auto) spacer"]) {
2155
+ grid-template-columns: repeat(10, auto) minmax(0, 1fr);
2156
+ }
2157
+ :where(h-stack[template="auto auto spacer"]) {
2158
+ grid-template-columns: auto auto minmax(0, 1fr);
2159
+ }
2160
+ :where(h-stack[template="auto auto auto spacer"]) {
2161
+ grid-template-columns: auto auto auto minmax(0, 1fr);
2162
+ }
2163
+ :where(h-stack[template="auto auto auto auto spacer"]) {
2164
+ grid-template-columns: auto auto auto auto minmax(0, 1fr);
2165
+ }
2166
+ :where(h-stack[template="auto spacer auto"]) {
2167
+ grid-template-columns: auto minmax(0, 1fr) auto;
2168
+ }
2169
+ :where(h-stack[template="repeat(1,auto) spacer repeat(1,auto)"]) {
2170
+ grid-template-columns: repeat(1, auto) minmax(0, 1fr) repeat(1, auto);
2171
+ }
2172
+ :where(h-stack[template="repeat(1,auto) spacer repeat(2,auto)"]) {
2173
+ grid-template-columns: repeat(1, auto) minmax(0, 1fr) repeat(2, auto);
2174
+ }
2175
+ :where(h-stack[template="repeat(1,auto) spacer repeat(3,auto)"]) {
2176
+ grid-template-columns: repeat(1, auto) minmax(0, 1fr) repeat(3, auto);
2177
+ }
2178
+ :where(h-stack[template="repeat(1,auto) spacer repeat(4,auto)"]) {
2179
+ grid-template-columns: repeat(1, auto) minmax(0, 1fr) repeat(4, auto);
2180
+ }
2181
+ :where(h-stack[template="repeat(1,auto) spacer repeat(5,auto)"]) {
2182
+ grid-template-columns: repeat(1, auto) minmax(0, 1fr) repeat(5, auto);
2183
+ }
2184
+ :where(h-stack[template="repeat(2,auto) spacer repeat(1,auto)"]) {
2185
+ grid-template-columns: repeat(2, auto) minmax(0, 1fr) repeat(1, auto);
2186
+ }
2187
+ :where(h-stack[template="repeat(3,auto) spacer repeat(1,auto)"]) {
2188
+ grid-template-columns: repeat(3, auto) minmax(0, 1fr) repeat(1, auto);
2189
+ }
2190
+ :where(h-stack[template="repeat(4,auto) spacer repeat(1,auto)"]) {
2191
+ grid-template-columns: repeat(4, auto) minmax(0, 1fr) repeat(1, auto);
2192
+ }
2193
+ :where(h-stack[template="repeat(5,auto) spacer repeat(1,auto)"]) {
2194
+ grid-template-columns: repeat(5, auto) minmax(0, 1fr) repeat(1, auto);
2195
+ }
2196
+ :where(h-stack[template="repeat(2,auto) spacer repeat(2,auto)"]) {
2197
+ grid-template-columns: repeat(2, auto) minmax(0, 1fr) repeat(2, auto);
2198
+ }
2199
+ :where(h-stack[template="auto spacer auto auto"]) {
2200
+ grid-template-columns: auto minmax(0, 1fr) auto auto;
2201
+ }
2103
2202
  }
2104
2203
  @layer sw-components {
2105
2204
  :where(v-stack) {
@@ -2108,9 +2207,105 @@
2108
2207
  place-content: safe center;
2109
2208
  gap: 1rem;
2110
2209
  }
2210
+ :where(v-stack[template=spacer]) {
2211
+ grid-template-rows: minmax(0, 1fr);
2212
+ }
2213
+ :where(v-stack[template="repeat(1,spacer)"]) {
2214
+ grid-template-rows: repeat(1, minmax(0, 1fr));
2215
+ }
2216
+ :where(v-stack[template="repeat(2,spacer)"]) {
2217
+ grid-template-rows: repeat(2, minmax(0, 1fr));
2218
+ }
2219
+ :where(v-stack[template="repeat(3,spacer)"]) {
2220
+ grid-template-rows: repeat(3, minmax(0, 1fr));
2221
+ }
2222
+ :where(v-stack[template="repeat(4,spacer)"]) {
2223
+ grid-template-rows: repeat(4, minmax(0, 1fr));
2224
+ }
2225
+ :where(v-stack[template="repeat(5,spacer)"]) {
2226
+ grid-template-rows: repeat(5, minmax(0, 1fr));
2227
+ }
2228
+ :where(v-stack[template="repeat(6,spacer)"]) {
2229
+ grid-template-rows: repeat(6, minmax(0, 1fr));
2230
+ }
2231
+ :where(v-stack[template="repeat(7,spacer)"]) {
2232
+ grid-template-rows: repeat(7, minmax(0, 1fr));
2233
+ }
2234
+ :where(v-stack[template="repeat(8,spacer)"]) {
2235
+ grid-template-rows: repeat(8, minmax(0, 1fr));
2236
+ }
2237
+ :where(v-stack[template="repeat(9,spacer)"]) {
2238
+ grid-template-rows: repeat(9, minmax(0, 1fr));
2239
+ }
2240
+ :where(v-stack[template="repeat(10,spacer)"]) {
2241
+ grid-template-rows: repeat(10, minmax(0, 1fr));
2242
+ }
2243
+ :where(v-stack[template="spacer auto"]) {
2244
+ grid-template-rows: minmax(0, 1fr) auto;
2245
+ }
2246
+ :where(v-stack[template="repeat(1,spacer) auto"]) {
2247
+ grid-template-rows: repeat(1, minmax(0, 1fr)) auto;
2248
+ }
2249
+ :where(v-stack[template="repeat(2,spacer) auto"]) {
2250
+ grid-template-rows: repeat(2, minmax(0, 1fr)) auto;
2251
+ }
2252
+ :where(v-stack[template="repeat(3,spacer) auto"]) {
2253
+ grid-template-rows: repeat(3, minmax(0, 1fr)) auto;
2254
+ }
2255
+ :where(v-stack[template="repeat(4,spacer) auto"]) {
2256
+ grid-template-rows: repeat(4, minmax(0, 1fr)) auto;
2257
+ }
2258
+ :where(v-stack[template="repeat(5,spacer) auto"]) {
2259
+ grid-template-rows: repeat(5, minmax(0, 1fr)) auto;
2260
+ }
2261
+ :where(v-stack[template="repeat(6,spacer) auto"]) {
2262
+ grid-template-rows: repeat(6, minmax(0, 1fr)) auto;
2263
+ }
2264
+ :where(v-stack[template="repeat(7,spacer) auto"]) {
2265
+ grid-template-rows: repeat(7, minmax(0, 1fr)) auto;
2266
+ }
2267
+ :where(v-stack[template="repeat(8,spacer) auto"]) {
2268
+ grid-template-rows: repeat(8, minmax(0, 1fr)) auto;
2269
+ }
2270
+ :where(v-stack[template="repeat(9,spacer) auto"]) {
2271
+ grid-template-rows: repeat(9, minmax(0, 1fr)) auto;
2272
+ }
2273
+ :where(v-stack[template="repeat(10,spacer) auto"]) {
2274
+ grid-template-rows: repeat(10, minmax(0, 1fr)) auto;
2275
+ }
2111
2276
  :where(v-stack[template="auto spacer"]) {
2112
2277
  grid-template-rows: auto minmax(0, 1fr);
2113
2278
  }
2279
+ :where(v-stack[template="repeat(1,auto) spacer"]) {
2280
+ grid-template-rows: repeat(1, auto) minmax(0, 1fr);
2281
+ }
2282
+ :where(v-stack[template="repeat(2,auto) spacer"]) {
2283
+ grid-template-rows: repeat(2, auto) minmax(0, 1fr);
2284
+ }
2285
+ :where(v-stack[template="repeat(3,auto) spacer"]) {
2286
+ grid-template-rows: repeat(3, auto) minmax(0, 1fr);
2287
+ }
2288
+ :where(v-stack[template="repeat(4,auto) spacer"]) {
2289
+ grid-template-rows: repeat(4, auto) minmax(0, 1fr);
2290
+ }
2291
+ :where(v-stack[template="repeat(5,auto) spacer"]) {
2292
+ grid-template-rows: repeat(5, auto) minmax(0, 1fr);
2293
+ }
2294
+ :where(v-stack[template="repeat(6,auto) spacer"]) {
2295
+ grid-template-rows: repeat(6, auto) minmax(0, 1fr);
2296
+ }
2297
+ :where(v-stack[template="repeat(7,auto) spacer"]) {
2298
+ grid-template-rows: repeat(7, auto) minmax(0, 1fr);
2299
+ }
2300
+ :where(v-stack[template="repeat(8,auto) spacer"]) {
2301
+ grid-template-rows: repeat(8, auto) minmax(0, 1fr);
2302
+ }
2303
+ :where(v-stack[template="repeat(9,auto) spacer"]) {
2304
+ grid-template-rows: repeat(9, auto) minmax(0, 1fr);
2305
+ }
2306
+ :where(v-stack[template="repeat(10,auto) spacer"]) {
2307
+ grid-template-rows: repeat(10, auto) minmax(0, 1fr);
2308
+ }
2114
2309
  :where(v-stack[template="auto auto spacer"]) {
2115
2310
  grid-template-rows: auto auto minmax(0, 1fr);
2116
2311
  }
@@ -2120,6 +2315,42 @@
2120
2315
  :where(v-stack[template="auto auto auto auto spacer"]) {
2121
2316
  grid-template-rows: auto auto auto auto minmax(0, 1fr);
2122
2317
  }
2318
+ :where(v-stack[template="auto spacer auto"]) {
2319
+ grid-template-rows: auto minmax(0, 1fr) auto;
2320
+ }
2321
+ :where(v-stack[template="repeat(1,auto) spacer repeat(1,auto)"]) {
2322
+ grid-template-rows: repeat(1, auto) minmax(0, 1fr) repeat(1, auto);
2323
+ }
2324
+ :where(v-stack[template="repeat(1,auto) spacer repeat(2,auto)"]) {
2325
+ grid-template-rows: repeat(1, auto) minmax(0, 1fr) repeat(2, auto);
2326
+ }
2327
+ :where(v-stack[template="repeat(1,auto) spacer repeat(3,auto)"]) {
2328
+ grid-template-rows: repeat(1, auto) minmax(0, 1fr) repeat(3, auto);
2329
+ }
2330
+ :where(v-stack[template="repeat(1,auto) spacer repeat(4,auto)"]) {
2331
+ grid-template-rows: repeat(1, auto) minmax(0, 1fr) repeat(4, auto);
2332
+ }
2333
+ :where(v-stack[template="repeat(1,auto) spacer repeat(5,auto)"]) {
2334
+ grid-template-rows: repeat(1, auto) minmax(0, 1fr) repeat(5, auto);
2335
+ }
2336
+ :where(v-stack[template="repeat(2,auto) spacer repeat(1,auto)"]) {
2337
+ grid-template-rows: repeat(2, auto) minmax(0, 1fr) repeat(1, auto);
2338
+ }
2339
+ :where(v-stack[template="repeat(3,auto) spacer repeat(1,auto)"]) {
2340
+ grid-template-rows: repeat(3, auto) minmax(0, 1fr) repeat(1, auto);
2341
+ }
2342
+ :where(v-stack[template="repeat(4,auto) spacer repeat(1,auto)"]) {
2343
+ grid-template-rows: repeat(4, auto) minmax(0, 1fr) repeat(1, auto);
2344
+ }
2345
+ :where(v-stack[template="repeat(5,auto) spacer repeat(1,auto)"]) {
2346
+ grid-template-rows: repeat(5, auto) minmax(0, 1fr) repeat(1, auto);
2347
+ }
2348
+ :where(v-stack[template="repeat(2,auto) spacer repeat(2,auto)"]) {
2349
+ grid-template-rows: repeat(2, auto) minmax(0, 1fr) repeat(2, auto);
2350
+ }
2351
+ :where(v-stack[template="auto spacer auto auto"]) {
2352
+ grid-template-rows: auto minmax(0, 1fr) auto auto;
2353
+ }
2123
2354
  }
2124
2355
  @layer sw-components {
2125
2356
  :where(h-flex-stack) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@swiftwc/ui",
3
- "version": "0.0.0-dev.84",
3
+ "version": "0.0.0-dev.86",
4
4
  "description": "Elegant SwiftUI-inspired web components for standalone web apps and web extensions.",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -79,6 +79,7 @@
79
79
  },
80
80
  "devDependencies": {
81
81
  "doctrine": "^3.0.0",
82
+ "gonzales-pe": "^4.3.0",
82
83
  "happy-dom": "^20.7.0",
83
84
  "sass": "^1.98.0",
84
85
  "ts-morph": "^28.0.0",