@swiftwc/ui 0.0.0-dev.50 → 0.0.0-dev.51

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.
@@ -0,0 +1,10 @@
1
+ /**
2
+ *
3
+ * @attr {@spacingSet} spacing - The gap between the primary axis
4
+ *
5
+ */
6
+ export declare class HStack extends HTMLElement {
7
+ constructor();
8
+ connectedCallback(): void;
9
+ disconnectedCallback(): void;
10
+ }
@@ -0,0 +1,19 @@
1
+ import { devFlags } from '../internal/utils';
2
+ /**
3
+ *
4
+ * @attr {@spacingSet} spacing - The gap between the primary axis
5
+ *
6
+ */
7
+ export class HStack extends HTMLElement {
8
+ constructor() {
9
+ super();
10
+ }
11
+ connectedCallback() {
12
+ if (devFlags.debug)
13
+ console.debug(`${HStack.name} ⚡️ connect`);
14
+ }
15
+ disconnectedCallback() {
16
+ if (devFlags.debug)
17
+ console.debug(`${HStack.name} ⚡️ disconnect`);
18
+ }
19
+ }
@@ -11,6 +11,7 @@ export * from './fine-tooltip';
11
11
  export * from './form-view';
12
12
  export * from './glass-button';
13
13
  export * from './glass-prominent-button';
14
+ export * from './h-stack';
14
15
  export * from './image-view';
15
16
  export * from './label-view';
16
17
  export * from './list-view';
@@ -11,6 +11,7 @@ export * from './fine-tooltip';
11
11
  export * from './form-view';
12
12
  export * from './glass-button';
13
13
  export * from './glass-prominent-button';
14
+ export * from './h-stack';
14
15
  export * from './image-view';
15
16
  export * from './label-view';
16
17
  export * from './list-view';
@@ -1,5 +1,7 @@
1
1
  /**
2
2
  * @summary Display selectable, sortable data arranged in rows and columns.
3
+ *
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
3
5
  */
4
6
  export declare class TableView extends HTMLElement {
5
7
  #private;
@@ -2,10 +2,12 @@ var _a;
2
2
  import { CleanupRegistry } from '../internal/class/cleanup-registry';
3
3
  import { CSSStyleObserver } from '../internal/class/css-style-observer';
4
4
  import { MutationObserverSet } from '../internal/class/mutation-observer-set';
5
- import { $, devFlags, listActive, onoff } from '../internal/utils';
5
+ import { $, devFlags, listActive, onoff, renderLabelTitle } from '../internal/utils';
6
6
  import { Snapshot } from '../snapshot';
7
7
  /**
8
8
  * @summary Display selectable, sortable data arranged in rows and columns.
9
+ *
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
9
11
  */
10
12
  export class TableView extends HTMLElement {
11
13
  #styleObserver;
@@ -54,35 +56,6 @@ export class TableView extends HTMLElement {
54
56
  this.#slots = new Map();
55
57
  });
56
58
  this.#slots?.get('column')?.addEventListener('slotchange', this.#handleColumnSlotchange);
57
- // this.append(
58
- // document.createRange().createContextualFragment(`<menu-view slot="header-trailing">
59
- // <label-view slot="label" title="Delete"></label-view>
60
- // <button type="button" tabindex="0">
61
- // <label-view system-image="dots-three" title="Scan Documents"></label-view>
62
- // </button>
63
- // <button type="button" tabindex="0">
64
- // <label-view system-image="dots-three" title="Connect to Server"></label-view>
65
- // </button>
66
- // <button type="button" tabindex="0">
67
- // <label-view title="Edit Sidebar"></label-view>
68
- // </button>
69
- // </menu-view>
70
- // `)
71
- // $(`<menu-view slot="header-trailing">
72
- // <label-view slot="label" title="Delete"></label-view>
73
- // <button type="button" tabindex="0">
74
- // <label-view system-image="dots-three" title="Scan Documents"></label-view>
75
- // </button>
76
- // <button type="button" tabindex="0">
77
- // <label-view system-image="dots-three" title="Connect to Server"></label-view>
78
- // </button>
79
- // <button type="button" tabindex="0">
80
- // <label-view title="Edit Sidebar"></label-view>
81
- // </button>
82
- // </menu-view>
83
- // <div slot="footer-leading">22</div>
84
- // <div slot="footer-trailing"><button>&lt;</button> <button>&gt;</button></div>`)
85
- // )
86
59
  }
87
60
  disconnectedCallback() {
88
61
  if (devFlags.debug)
@@ -96,7 +69,6 @@ export class TableView extends HTMLElement {
96
69
  if (devFlags.debug)
97
70
  console.debug(`${_a.name} ⚡️ connect`);
98
71
  CleanupRegistry.register(this, onoff(listActive(this), this).on());
99
- // console.log(999, this.#shadowRoot.querySelector('[part*=table-column-stack]'))
100
72
  this.#styleObserver = new CSSStyleObserver({
101
73
  properties: ['--adaptable-table-style-index'],
102
74
  });
@@ -134,8 +106,10 @@ export class TableView extends HTMLElement {
134
106
  <label-view font="callout" foreground="secondary"></label-view>
135
107
  </v-stack>
136
108
  </button>`, '>1'), title = btn.querySelector('label-view:first-child'), subTitle = btn.querySelector('label-view:last-child');
137
- title?.setAttribute('title', node.textContent.trim());
138
- subTitle?.setAttribute('title', node.ariaSort ?? '');
109
+ if (title)
110
+ renderLabelTitle(title, node.textContent.trim()); //title?.setAttribute('title', node.textContent.trim())
111
+ if (subTitle)
112
+ renderLabelTitle(subTitle, node.ariaSort ?? ''); //subTitle?.setAttribute('title', node.ariaSort ?? '')
139
113
  this.#compactToolbarItem.appendChild(btn);
140
114
  }
141
115
  };
@@ -150,16 +124,19 @@ export class TableView extends HTMLElement {
150
124
  const adaptableTableStyle = style.getPropertyValue('--adaptable-table-style') || 'compact';
151
125
  switch (adaptableTableStyle) {
152
126
  case 'expanded':
153
- if (!this.#compactToolbarItem?.isConnected)
154
- break;
155
- this.#compactToolbarItem?.remove();
127
+ if (this.#compactToolbarItem?.isConnected)
128
+ this.#compactToolbarItem?.remove();
156
129
  break;
157
130
  default:
158
131
  if (!this.#compactToolbarItem)
159
132
  break;
160
- if (this.#compactToolbarItem?.isConnected)
133
+ if (!this.#slots
134
+ ?.get('column')
135
+ ?.assignedElements()
136
+ .filter((el) => el.matches(':is(button[is=table-column])')).length)
161
137
  break;
162
- this.insertAdjacentElement('beforeend', this.#compactToolbarItem);
138
+ if (!this.#compactToolbarItem?.isConnected)
139
+ this.insertAdjacentElement('beforeend', this.#compactToolbarItem);
163
140
  break;
164
141
  }
165
142
  };
@@ -169,8 +146,7 @@ export class TableView extends HTMLElement {
169
146
  const btn = target.closest('button');
170
147
  if (!btn)
171
148
  return;
172
- const siblings = [...(btn.parentNode?.querySelectorAll(':scope>button') ?? [])];
173
- const index = siblings.indexOf(btn);
149
+ const siblings = [...(btn.parentNode?.querySelectorAll(':scope>button') ?? [])], index = siblings.indexOf(btn);
174
150
  this.querySelector(`:scope>[slot=column]:nth-of-type(${index + 1})`)?.click();
175
151
  };
176
152
  }
@@ -2,6 +2,9 @@
2
2
  * @attr {leading|"leading fill"|center|trailing|fill|space-between} distribution - The distribution of cols
3
3
  *
4
4
  * @attr {"auto spacer"|"auto auto spacer"|"auto auto auto spacer"} template
5
+ *
6
+ * @attr {@spacingSet} spacing - The gap between the primary axis
7
+ *
5
8
  */
6
9
  export declare class VStack extends HTMLElement {
7
10
  constructor();
@@ -3,6 +3,9 @@ import { devFlags } from '../internal/utils';
3
3
  * @attr {leading|"leading fill"|center|trailing|fill|space-between} distribution - The distribution of cols
4
4
  *
5
5
  * @attr {"auto spacer"|"auto auto spacer"|"auto auto auto spacer"} template
6
+ *
7
+ * @attr {@spacingSet} spacing - The gap between the primary axis
8
+ *
6
9
  */
7
10
  export class VStack extends HTMLElement {
8
11
  constructor() {
@@ -4248,7 +4248,8 @@
4248
4248
  column-gap: var(--table-col-gap);
4249
4249
  padding-inline: var(--list--host-padding-inline, 0px);
4250
4250
  padding-block: var(--table-row-gap);
4251
- color: var(--blue);
4251
+ font-size: 0.875rem;
4252
+ font-weight: 600;
4252
4253
  background-color: var(--separator);
4253
4254
  }
4254
4255
  :where(table-view:not(table-view table-view, list-view table-view, [is=form-view] table-view) > [slot^=header],
@@ -4484,6 +4485,25 @@
4484
4485
  grid-area: subtitle;
4485
4486
  grid-column: 1/-1;
4486
4487
  }
4488
+ :where(table-view[preferred-compact-template="title:subtitle:trailing"] > [is=table-row]) {
4489
+ grid-template-columns: 1fr 1fr;
4490
+ grid-template-rows: repeat(2, auto);
4491
+ grid-template-areas: "title trailing" "subtitle _";
4492
+ }
4493
+ :where(table-view[preferred-compact-template="title:subtitle:trailing"] > [is=table-row] > :nth-child(-n+3)) {
4494
+ display: grid;
4495
+ }
4496
+ :where(table-view[preferred-compact-template="title:subtitle:trailing"] > [is=table-row] > :nth-child(1)) {
4497
+ grid-area: title;
4498
+ }
4499
+ :where(table-view[preferred-compact-template="title:subtitle:trailing"] > [is=table-row] > :nth-child(2)) {
4500
+ grid-area: subtitle;
4501
+ }
4502
+ :where(table-view[preferred-compact-template="title:subtitle:trailing"] > [is=table-row] > :nth-child(3)) {
4503
+ grid-area: trailing;
4504
+ place-self: end;
4505
+ grid-column: 1/-1;
4506
+ }
4487
4507
  :where(table-view[preferred-compact-template="*"] > [is=table-row] > :nth-child(n+2)) {
4488
4508
  display: grid;
4489
4509
  }
@@ -4496,6 +4516,7 @@
4496
4516
  grid-template-columns: auto var(--table-accessory-size);
4497
4517
  place-content: start;
4498
4518
  place-items: center;
4519
+ color: var(--blue);
4499
4520
  }
4500
4521
  :where([is=table-column][aria-sort])::after {
4501
4522
  pointer-events: none;
@@ -6171,160 +6192,212 @@
6171
6192
  justify-items: stretch ;
6172
6193
  justify-content: stretch ;
6173
6194
  }
6174
- :where(v-stack[spacing="0"]) {
6195
+ :where(v-stack[spacing="0"],
6196
+ h-stack[spacing="0"]) {
6175
6197
  gap: 0rem;
6176
6198
  }
6177
- :where(v-stack[spacing="1"]) {
6199
+ :where(v-stack[spacing="1"],
6200
+ h-stack[spacing="1"]) {
6178
6201
  gap: 0.1rem;
6179
6202
  }
6180
- :where(v-stack[spacing="2"]) {
6203
+ :where(v-stack[spacing="2"],
6204
+ h-stack[spacing="2"]) {
6181
6205
  gap: 0.2rem;
6182
6206
  }
6183
- :where(v-stack[spacing="3"]) {
6207
+ :where(v-stack[spacing="3"],
6208
+ h-stack[spacing="3"]) {
6184
6209
  gap: 0.3rem;
6185
6210
  }
6186
- :where(v-stack[spacing="4"]) {
6211
+ :where(v-stack[spacing="4"],
6212
+ h-stack[spacing="4"]) {
6187
6213
  gap: 0.4rem;
6188
6214
  }
6189
- :where(v-stack[spacing="5"]) {
6215
+ :where(v-stack[spacing="5"],
6216
+ h-stack[spacing="5"]) {
6190
6217
  gap: 0.5rem;
6191
6218
  }
6192
- :where(v-stack[spacing="6"]) {
6219
+ :where(v-stack[spacing="6"],
6220
+ h-stack[spacing="6"]) {
6193
6221
  gap: 0.6rem;
6194
6222
  }
6195
- :where(v-stack[spacing="7"]) {
6223
+ :where(v-stack[spacing="7"],
6224
+ h-stack[spacing="7"]) {
6196
6225
  gap: 0.7rem;
6197
6226
  }
6198
- :where(v-stack[spacing="8"]) {
6227
+ :where(v-stack[spacing="8"],
6228
+ h-stack[spacing="8"]) {
6199
6229
  gap: 0.8rem;
6200
6230
  }
6201
- :where(v-stack[spacing="9"]) {
6231
+ :where(v-stack[spacing="9"],
6232
+ h-stack[spacing="9"]) {
6202
6233
  gap: 0.9rem;
6203
6234
  }
6204
- :where(v-stack[spacing="10"]) {
6235
+ :where(v-stack[spacing="10"],
6236
+ h-stack[spacing="10"]) {
6205
6237
  gap: 1rem;
6206
6238
  }
6207
- :where(v-stack[spacing="11"]) {
6239
+ :where(v-stack[spacing="11"],
6240
+ h-stack[spacing="11"]) {
6208
6241
  gap: 1.1rem;
6209
6242
  }
6210
- :where(v-stack[spacing="12"]) {
6243
+ :where(v-stack[spacing="12"],
6244
+ h-stack[spacing="12"]) {
6211
6245
  gap: 1.2rem;
6212
6246
  }
6213
- :where(v-stack[spacing="13"]) {
6247
+ :where(v-stack[spacing="13"],
6248
+ h-stack[spacing="13"]) {
6214
6249
  gap: 1.3rem;
6215
6250
  }
6216
- :where(v-stack[spacing="14"]) {
6251
+ :where(v-stack[spacing="14"],
6252
+ h-stack[spacing="14"]) {
6217
6253
  gap: 1.4rem;
6218
6254
  }
6219
- :where(v-stack[spacing="15"]) {
6255
+ :where(v-stack[spacing="15"],
6256
+ h-stack[spacing="15"]) {
6220
6257
  gap: 1.5rem;
6221
6258
  }
6222
- :where(v-stack[spacing="16"]) {
6259
+ :where(v-stack[spacing="16"],
6260
+ h-stack[spacing="16"]) {
6223
6261
  gap: 1.6rem;
6224
6262
  }
6225
- :where(v-stack[spacing="17"]) {
6263
+ :where(v-stack[spacing="17"],
6264
+ h-stack[spacing="17"]) {
6226
6265
  gap: 1.7rem;
6227
6266
  }
6228
- :where(v-stack[spacing="18"]) {
6267
+ :where(v-stack[spacing="18"],
6268
+ h-stack[spacing="18"]) {
6229
6269
  gap: 1.8rem;
6230
6270
  }
6231
- :where(v-stack[spacing="19"]) {
6271
+ :where(v-stack[spacing="19"],
6272
+ h-stack[spacing="19"]) {
6232
6273
  gap: 1.9rem;
6233
6274
  }
6234
- :where(v-stack[spacing="20"]) {
6275
+ :where(v-stack[spacing="20"],
6276
+ h-stack[spacing="20"]) {
6235
6277
  gap: 2rem;
6236
6278
  }
6237
- :where(v-stack[spacing="21"]) {
6279
+ :where(v-stack[spacing="21"],
6280
+ h-stack[spacing="21"]) {
6238
6281
  gap: 2.1rem;
6239
6282
  }
6240
- :where(v-stack[spacing="22"]) {
6283
+ :where(v-stack[spacing="22"],
6284
+ h-stack[spacing="22"]) {
6241
6285
  gap: 2.2rem;
6242
6286
  }
6243
- :where(v-stack[spacing="23"]) {
6287
+ :where(v-stack[spacing="23"],
6288
+ h-stack[spacing="23"]) {
6244
6289
  gap: 2.3rem;
6245
6290
  }
6246
- :where(v-stack[spacing="24"]) {
6291
+ :where(v-stack[spacing="24"],
6292
+ h-stack[spacing="24"]) {
6247
6293
  gap: 2.4rem;
6248
6294
  }
6249
- :where(v-stack[spacing="25"]) {
6295
+ :where(v-stack[spacing="25"],
6296
+ h-stack[spacing="25"]) {
6250
6297
  gap: 2.5rem;
6251
6298
  }
6252
- :where(v-stack[spacing="26"]) {
6299
+ :where(v-stack[spacing="26"],
6300
+ h-stack[spacing="26"]) {
6253
6301
  gap: 2.6rem;
6254
6302
  }
6255
- :where(v-stack[spacing="27"]) {
6303
+ :where(v-stack[spacing="27"],
6304
+ h-stack[spacing="27"]) {
6256
6305
  gap: 2.7rem;
6257
6306
  }
6258
- :where(v-stack[spacing="28"]) {
6307
+ :where(v-stack[spacing="28"],
6308
+ h-stack[spacing="28"]) {
6259
6309
  gap: 2.8rem;
6260
6310
  }
6261
- :where(v-stack[spacing="29"]) {
6311
+ :where(v-stack[spacing="29"],
6312
+ h-stack[spacing="29"]) {
6262
6313
  gap: 2.9rem;
6263
6314
  }
6264
- :where(v-stack[spacing="30"]) {
6315
+ :where(v-stack[spacing="30"],
6316
+ h-stack[spacing="30"]) {
6265
6317
  gap: 3rem;
6266
6318
  }
6267
- :where(v-stack[spacing="31"]) {
6319
+ :where(v-stack[spacing="31"],
6320
+ h-stack[spacing="31"]) {
6268
6321
  gap: 3.1rem;
6269
6322
  }
6270
- :where(v-stack[spacing="32"]) {
6323
+ :where(v-stack[spacing="32"],
6324
+ h-stack[spacing="32"]) {
6271
6325
  gap: 3.2rem;
6272
6326
  }
6273
- :where(v-stack[spacing="33"]) {
6327
+ :where(v-stack[spacing="33"],
6328
+ h-stack[spacing="33"]) {
6274
6329
  gap: 3.3rem;
6275
6330
  }
6276
- :where(v-stack[spacing="34"]) {
6331
+ :where(v-stack[spacing="34"],
6332
+ h-stack[spacing="34"]) {
6277
6333
  gap: 3.4rem;
6278
6334
  }
6279
- :where(v-stack[spacing="35"]) {
6335
+ :where(v-stack[spacing="35"],
6336
+ h-stack[spacing="35"]) {
6280
6337
  gap: 3.5rem;
6281
6338
  }
6282
- :where(v-stack[spacing="36"]) {
6339
+ :where(v-stack[spacing="36"],
6340
+ h-stack[spacing="36"]) {
6283
6341
  gap: 3.6rem;
6284
6342
  }
6285
- :where(v-stack[spacing="37"]) {
6343
+ :where(v-stack[spacing="37"],
6344
+ h-stack[spacing="37"]) {
6286
6345
  gap: 3.7rem;
6287
6346
  }
6288
- :where(v-stack[spacing="38"]) {
6347
+ :where(v-stack[spacing="38"],
6348
+ h-stack[spacing="38"]) {
6289
6349
  gap: 3.8rem;
6290
6350
  }
6291
- :where(v-stack[spacing="39"]) {
6351
+ :where(v-stack[spacing="39"],
6352
+ h-stack[spacing="39"]) {
6292
6353
  gap: 3.9rem;
6293
6354
  }
6294
- :where(v-stack[spacing="40"]) {
6355
+ :where(v-stack[spacing="40"],
6356
+ h-stack[spacing="40"]) {
6295
6357
  gap: 4rem;
6296
6358
  }
6297
- :where(v-stack[spacing="41"]) {
6359
+ :where(v-stack[spacing="41"],
6360
+ h-stack[spacing="41"]) {
6298
6361
  gap: 4.1rem;
6299
6362
  }
6300
- :where(v-stack[spacing="42"]) {
6363
+ :where(v-stack[spacing="42"],
6364
+ h-stack[spacing="42"]) {
6301
6365
  gap: 4.2rem;
6302
6366
  }
6303
- :where(v-stack[spacing="43"]) {
6367
+ :where(v-stack[spacing="43"],
6368
+ h-stack[spacing="43"]) {
6304
6369
  gap: 4.3rem;
6305
6370
  }
6306
- :where(v-stack[spacing="44"]) {
6371
+ :where(v-stack[spacing="44"],
6372
+ h-stack[spacing="44"]) {
6307
6373
  gap: 4.4rem;
6308
6374
  }
6309
- :where(v-stack[spacing="45"]) {
6375
+ :where(v-stack[spacing="45"],
6376
+ h-stack[spacing="45"]) {
6310
6377
  gap: 4.5rem;
6311
6378
  }
6312
- :where(v-stack[spacing="46"]) {
6379
+ :where(v-stack[spacing="46"],
6380
+ h-stack[spacing="46"]) {
6313
6381
  gap: 4.6rem;
6314
6382
  }
6315
- :where(v-stack[spacing="47"]) {
6383
+ :where(v-stack[spacing="47"],
6384
+ h-stack[spacing="47"]) {
6316
6385
  gap: 4.7rem;
6317
6386
  }
6318
- :where(v-stack[spacing="48"]) {
6387
+ :where(v-stack[spacing="48"],
6388
+ h-stack[spacing="48"]) {
6319
6389
  gap: 4.8rem;
6320
6390
  }
6321
- :where(v-stack[spacing="49"]) {
6391
+ :where(v-stack[spacing="49"],
6392
+ h-stack[spacing="49"]) {
6322
6393
  gap: 4.9rem;
6323
6394
  }
6324
- :where(v-stack[spacing="50"]) {
6395
+ :where(v-stack[spacing="50"],
6396
+ h-stack[spacing="50"]) {
6325
6397
  gap: 5rem;
6326
6398
  }
6327
- :where(v-stack[frame\:alignment=center]) {
6399
+ :where(v-stack[frame\:alignment=center],
6400
+ h-stack[frame\:alignment=center]) {
6328
6401
  justify-self: center;
6329
6402
  }
6330
6403
  :where(v-stack[padding],
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@swiftwc/ui",
3
- "version": "0.0.0-dev.50",
3
+ "version": "0.0.0-dev.51",
4
4
  "description": "Elegant SwiftUI-inspired web components for standalone web apps and web extensions.",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -15,6 +15,8 @@
15
15
  place-content: start;
16
16
 
17
17
  place-items: center;
18
+
19
+ color: var(--blue);
18
20
  }
19
21
 
20
22
  &[aria-sort] {
@@ -138,6 +138,42 @@
138
138
  }
139
139
  }
140
140
  }
141
+ table-view[preferred-compact-template='title:subtitle:trailing'] > & {
142
+ :where(&) {
143
+ grid-template-columns: 1fr 1fr;
144
+ grid-template-rows: repeat(2, auto);
145
+ grid-template-areas:
146
+ 'title trailing'
147
+ 'subtitle _';
148
+ // grid-template-rows: repeat(3, auto); /* 3 rows for first 6 items */
149
+ // grid-template-areas:
150
+ // 'a b'
151
+ // 'c d'
152
+ // 'e f';
153
+ }
154
+ > :nth-child(-n + 3) {
155
+ :where(&) {
156
+ display: grid;
157
+ }
158
+ }
159
+ > :nth-child(1) {
160
+ :where(&) {
161
+ grid-area: title;
162
+ }
163
+ }
164
+ > :nth-child(2) {
165
+ :where(&) {
166
+ grid-area: subtitle;
167
+ }
168
+ }
169
+ > :nth-child(3) {
170
+ :where(&) {
171
+ grid-area: trailing;
172
+ place-self: end;
173
+ grid-column: 1 / -1;
174
+ }
175
+ }
176
+ }
141
177
  table-view[preferred-compact-template='*'] > & {
142
178
  > :nth-child(n + 2) {
143
179
  :where(&) {
@@ -107,6 +107,7 @@ $table-elses: (
107
107
 
108
108
  &::part(table-column-stack) {
109
109
  grid-auto-flow: column;
110
+
110
111
  grid-auto-columns: minmax(0, 1fr);
111
112
 
112
113
  column-gap: var(--table-col-gap);
@@ -115,7 +116,9 @@ $table-elses: (
115
116
 
116
117
  padding-block: var(--table-row-gap);
117
118
 
118
- color: var(--blue);
119
+ // color: var(--blue);
120
+ font-size: 0.875rem;
121
+ font-weight: 600;
119
122
 
120
123
  background-color: var(--separator);
121
124
  }
@@ -170,7 +170,8 @@ $v-placement-map: (
170
170
  // }
171
171
  }
172
172
 
173
- v-stack {
173
+ v-stack,
174
+ h-stack {
174
175
  // $spaces: 0, 1, 2, 3, 4;
175
176
  // @each $s in $spaces {
176
177
  @for $i from 0 through 50 {
@@ -166,6 +166,17 @@
166
166
  }
167
167
  ]
168
168
  },
169
+ {
170
+ "name": "hstack",
171
+ "description": "",
172
+ "attributes": [
173
+ {
174
+ "name": "spacing",
175
+ "description": "\nDescription: The gap between the primary axis",
176
+ "valueSet": "spacingSet"
177
+ }
178
+ ]
179
+ },
169
180
  {
170
181
  "name": "image-view",
171
182
  "attributes": [
@@ -331,7 +342,27 @@
331
342
  },
332
343
  {
333
344
  "name": "table-view",
334
- "description": "Display selectable, sortable data arranged in rows and columns."
345
+ "description": "Display selectable, sortable data arranged in rows and columns.",
346
+ "attributes": [
347
+ {
348
+ "name": "preferred-compact-template",
349
+ "description": "Value Type: “title:trailing:subtitle” | “trailing:title:subtitle” | “title:subtitle:trailing” | “*”\n\nDescription: Sets the template areas when the table is in compact mode",
350
+ "values": [
351
+ {
352
+ "name": "title:trailing:subtitle"
353
+ },
354
+ {
355
+ "name": "trailing:title:subtitle"
356
+ },
357
+ {
358
+ "name": "title:subtitle:trailing"
359
+ },
360
+ {
361
+ "name": "*"
362
+ }
363
+ ]
364
+ }
365
+ ]
335
366
  },
336
367
  {
337
368
  "name": "text-field",
@@ -443,7 +474,7 @@
443
474
  ]
444
475
  },
445
476
  {
446
- "name": "templat",
477
+ "name": "template",
447
478
  "description": "Value Type: “auto spacer” | “auto auto spacer” | “auto auto auto spacer”",
448
479
  "values": [
449
480
  {
@@ -456,6 +487,11 @@
456
487
  "name": "auto auto auto spacer"
457
488
  }
458
489
  ]
490
+ },
491
+ {
492
+ "name": "spacing",
493
+ "description": "\nDescription: The gap between the primary axis",
494
+ "valueSet": "spacingSet"
459
495
  }
460
496
  ]
461
497
  }
@@ -488,6 +524,31 @@
488
524
  }
489
525
  ],
490
526
  "valueSets": [
527
+ {
528
+ "name": "spacingSet",
529
+ "values": [
530
+ {
531
+ "name": "0",
532
+ "description": "0rem"
533
+ },
534
+ {
535
+ "name": "1",
536
+ "description": "0.1rem"
537
+ },
538
+ {
539
+ "name": "2",
540
+ "description": "0.2rem"
541
+ },
542
+ {
543
+ "name": "3",
544
+ "description": "0.3rem"
545
+ },
546
+ {
547
+ "name": "4",
548
+ "description": "0.4rem"
549
+ }
550
+ ]
551
+ },
491
552
  {
492
553
  "name": "tintSet",
493
554
  "values": [