@spectrum-web-components/picker 0.40.2 → 0.40.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -395,4 +395,4 @@ When the `value` of an `<sp-picker>` matches the `value` attribute or the trimme
395
395
 
396
396
  ## Accessibility
397
397
 
398
- To render accessibly, an `<sp-picker>` element should be paired with an `<sp-field-label>` element that has a `for` attribute referencing the `id` of the `<sp-picker>` element.
398
+ To render accessibly, an `<sp-picker>` element should be paired with an `<sp-field-label>` element that has a `for` attribute referencing the `id` of the `<sp-picker>` element. For an accessible label that renders within the bounds of the picker itself, but still fulfills the accessibility contract, use the `label` attribute or a `<span slot="label">` as a child element of `<sp-picker>`.
@@ -178,6 +178,14 @@
178
178
  },
179
179
  "privacy": "protected"
180
180
  },
181
+ {
182
+ "kind": "field",
183
+ "name": "tooltipEl",
184
+ "type": {
185
+ "text": "Tooltip | undefined"
186
+ },
187
+ "privacy": "protected"
188
+ },
181
189
  {
182
190
  "kind": "field",
183
191
  "name": "placement",
@@ -261,6 +269,16 @@
261
269
  }
262
270
  }
263
271
  },
272
+ {
273
+ "kind": "method",
274
+ "name": "click",
275
+ "privacy": "public",
276
+ "return": {
277
+ "type": {
278
+ "text": "void"
279
+ }
280
+ }
281
+ },
264
282
  {
265
283
  "kind": "method",
266
284
  "name": "handleButtonBlur",
@@ -280,6 +298,15 @@
280
298
  "privacy": "protected",
281
299
  "default": "'no'"
282
300
  },
301
+ {
302
+ "kind": "field",
303
+ "name": "pointerdownState",
304
+ "type": {
305
+ "text": "boolean"
306
+ },
307
+ "privacy": "private",
308
+ "default": "false"
309
+ },
283
310
  {
284
311
  "kind": "method",
285
312
  "name": "handleButtonPointerdown",
@@ -288,7 +315,15 @@
288
315
  "type": {
289
316
  "text": "void"
290
317
  }
291
- }
318
+ },
319
+ "parameters": [
320
+ {
321
+ "name": "event",
322
+ "type": {
323
+ "text": "PointerEvent"
324
+ }
325
+ }
326
+ ]
292
327
  },
293
328
  {
294
329
  "kind": "method",
@@ -310,13 +345,22 @@
310
345
  },
311
346
  {
312
347
  "kind": "method",
313
- "name": "handleButtonClick",
348
+ "name": "handleActivate",
314
349
  "privacy": "protected",
315
350
  "return": {
316
351
  "type": {
317
352
  "text": "void"
318
353
  }
319
- }
354
+ },
355
+ "parameters": [
356
+ {
357
+ "name": "event",
358
+ "optional": true,
359
+ "type": {
360
+ "text": "Event"
361
+ }
362
+ }
363
+ ]
320
364
  },
321
365
  {
322
366
  "kind": "method",
@@ -472,6 +516,24 @@
472
516
  "text": "MenuItemChildren | undefined"
473
517
  }
474
518
  },
519
+ {
520
+ "kind": "method",
521
+ "name": "handleTooltipSlotchange",
522
+ "privacy": "protected",
523
+ "return": {
524
+ "type": {
525
+ "text": "void"
526
+ }
527
+ },
528
+ "parameters": [
529
+ {
530
+ "name": "event",
531
+ "type": {
532
+ "text": "Event & { target: HTMLSlotElement }"
533
+ }
534
+ }
535
+ ]
536
+ },
475
537
  {
476
538
  "kind": "method",
477
539
  "name": "renderLabelContent",
@@ -549,6 +611,49 @@
549
611
  "privacy": "protected",
550
612
  "readonly": true
551
613
  },
614
+ {
615
+ "kind": "field",
616
+ "name": "dependenciesLoaded",
617
+ "type": {
618
+ "text": "boolean"
619
+ },
620
+ "privacy": "private",
621
+ "default": "false"
622
+ },
623
+ {
624
+ "kind": "field",
625
+ "name": "dependenciesToLoad",
626
+ "type": {
627
+ "text": "Record<string, boolean>"
628
+ },
629
+ "privacy": "private",
630
+ "default": "{}"
631
+ },
632
+ {
633
+ "kind": "method",
634
+ "name": "trackDependency",
635
+ "privacy": "private",
636
+ "return": {
637
+ "type": {
638
+ "text": "void"
639
+ }
640
+ },
641
+ "parameters": [
642
+ {
643
+ "name": "dependency",
644
+ "type": {
645
+ "text": "string"
646
+ }
647
+ },
648
+ {
649
+ "name": "flag",
650
+ "optional": true,
651
+ "type": {
652
+ "text": "boolean"
653
+ }
654
+ }
655
+ ]
656
+ },
552
657
  {
553
658
  "kind": "method",
554
659
  "name": "renderContainer",
@@ -1023,6 +1128,18 @@
1023
1128
  "module": "src/Picker.js"
1024
1129
  }
1025
1130
  },
1131
+ {
1132
+ "kind": "field",
1133
+ "name": "tooltipEl",
1134
+ "type": {
1135
+ "text": "Tooltip | undefined"
1136
+ },
1137
+ "privacy": "protected",
1138
+ "inheritedFrom": {
1139
+ "name": "PickerBase",
1140
+ "module": "src/Picker.js"
1141
+ }
1142
+ },
1026
1143
  {
1027
1144
  "kind": "field",
1028
1145
  "name": "placement",
@@ -1142,6 +1259,20 @@
1142
1259
  "module": "src/Picker.js"
1143
1260
  }
1144
1261
  },
1262
+ {
1263
+ "kind": "method",
1264
+ "name": "click",
1265
+ "privacy": "public",
1266
+ "return": {
1267
+ "type": {
1268
+ "text": "void"
1269
+ }
1270
+ },
1271
+ "inheritedFrom": {
1272
+ "name": "PickerBase",
1273
+ "module": "src/Picker.js"
1274
+ }
1275
+ },
1145
1276
  {
1146
1277
  "kind": "method",
1147
1278
  "name": "handleButtonBlur",
@@ -1169,6 +1300,19 @@
1169
1300
  "module": "src/Picker.js"
1170
1301
  }
1171
1302
  },
1303
+ {
1304
+ "kind": "field",
1305
+ "name": "pointerdownState",
1306
+ "type": {
1307
+ "text": "boolean"
1308
+ },
1309
+ "privacy": "private",
1310
+ "default": "false",
1311
+ "inheritedFrom": {
1312
+ "name": "PickerBase",
1313
+ "module": "src/Picker.js"
1314
+ }
1315
+ },
1172
1316
  {
1173
1317
  "kind": "method",
1174
1318
  "name": "handleButtonPointerdown",
@@ -1178,6 +1322,14 @@
1178
1322
  "text": "void"
1179
1323
  }
1180
1324
  },
1325
+ "parameters": [
1326
+ {
1327
+ "name": "event",
1328
+ "type": {
1329
+ "text": "PointerEvent"
1330
+ }
1331
+ }
1332
+ ],
1181
1333
  "inheritedFrom": {
1182
1334
  "name": "PickerBase",
1183
1335
  "module": "src/Picker.js"
@@ -1207,13 +1359,22 @@
1207
1359
  },
1208
1360
  {
1209
1361
  "kind": "method",
1210
- "name": "handleButtonClick",
1362
+ "name": "handleActivate",
1211
1363
  "privacy": "protected",
1212
1364
  "return": {
1213
1365
  "type": {
1214
1366
  "text": "void"
1215
1367
  }
1216
1368
  },
1369
+ "parameters": [
1370
+ {
1371
+ "name": "event",
1372
+ "optional": true,
1373
+ "type": {
1374
+ "text": "Event"
1375
+ }
1376
+ }
1377
+ ],
1217
1378
  "inheritedFrom": {
1218
1379
  "name": "PickerBase",
1219
1380
  "module": "src/Picker.js"
@@ -1395,6 +1556,28 @@
1395
1556
  "module": "src/Picker.js"
1396
1557
  }
1397
1558
  },
1559
+ {
1560
+ "kind": "method",
1561
+ "name": "handleTooltipSlotchange",
1562
+ "privacy": "protected",
1563
+ "return": {
1564
+ "type": {
1565
+ "text": "void"
1566
+ }
1567
+ },
1568
+ "parameters": [
1569
+ {
1570
+ "name": "event",
1571
+ "type": {
1572
+ "text": "Event & { target: HTMLSlotElement }"
1573
+ }
1574
+ }
1575
+ ],
1576
+ "inheritedFrom": {
1577
+ "name": "PickerBase",
1578
+ "module": "src/Picker.js"
1579
+ }
1580
+ },
1398
1581
  {
1399
1582
  "kind": "method",
1400
1583
  "name": "renderLabelContent",
@@ -1500,6 +1683,61 @@
1500
1683
  "module": "src/Picker.js"
1501
1684
  }
1502
1685
  },
1686
+ {
1687
+ "kind": "field",
1688
+ "name": "dependenciesLoaded",
1689
+ "type": {
1690
+ "text": "boolean"
1691
+ },
1692
+ "privacy": "private",
1693
+ "default": "false",
1694
+ "inheritedFrom": {
1695
+ "name": "PickerBase",
1696
+ "module": "src/Picker.js"
1697
+ }
1698
+ },
1699
+ {
1700
+ "kind": "field",
1701
+ "name": "dependenciesToLoad",
1702
+ "type": {
1703
+ "text": "Record<string, boolean>"
1704
+ },
1705
+ "privacy": "private",
1706
+ "default": "{}",
1707
+ "inheritedFrom": {
1708
+ "name": "PickerBase",
1709
+ "module": "src/Picker.js"
1710
+ }
1711
+ },
1712
+ {
1713
+ "kind": "method",
1714
+ "name": "trackDependency",
1715
+ "privacy": "private",
1716
+ "return": {
1717
+ "type": {
1718
+ "text": "void"
1719
+ }
1720
+ },
1721
+ "parameters": [
1722
+ {
1723
+ "name": "dependency",
1724
+ "type": {
1725
+ "text": "string"
1726
+ }
1727
+ },
1728
+ {
1729
+ "name": "flag",
1730
+ "optional": true,
1731
+ "type": {
1732
+ "text": "boolean"
1733
+ }
1734
+ }
1735
+ ],
1736
+ "inheritedFrom": {
1737
+ "name": "PickerBase",
1738
+ "module": "src/Picker.js"
1739
+ }
1740
+ },
1503
1741
  {
1504
1742
  "kind": "method",
1505
1743
  "name": "renderContainer",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@spectrum-web-components/picker",
3
- "version": "0.40.2",
3
+ "version": "0.40.4",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -65,20 +65,21 @@
65
65
  "lit-html"
66
66
  ],
67
67
  "dependencies": {
68
- "@spectrum-web-components/base": "^0.40.2",
69
- "@spectrum-web-components/button": "^0.40.2",
70
- "@spectrum-web-components/icon": "^0.40.2",
71
- "@spectrum-web-components/icons-ui": "^0.40.2",
72
- "@spectrum-web-components/icons-workflow": "^0.40.2",
73
- "@spectrum-web-components/menu": "^0.40.2",
74
- "@spectrum-web-components/overlay": "^0.40.2",
75
- "@spectrum-web-components/popover": "^0.40.2",
76
- "@spectrum-web-components/reactive-controllers": "^0.40.2",
77
- "@spectrum-web-components/shared": "^0.40.2",
78
- "@spectrum-web-components/tray": "^0.40.2"
68
+ "@spectrum-web-components/base": "^0.40.4",
69
+ "@spectrum-web-components/button": "^0.40.4",
70
+ "@spectrum-web-components/icon": "^0.40.4",
71
+ "@spectrum-web-components/icons-ui": "^0.40.4",
72
+ "@spectrum-web-components/icons-workflow": "^0.40.4",
73
+ "@spectrum-web-components/menu": "^0.40.4",
74
+ "@spectrum-web-components/overlay": "^0.40.4",
75
+ "@spectrum-web-components/popover": "^0.40.4",
76
+ "@spectrum-web-components/reactive-controllers": "^0.40.4",
77
+ "@spectrum-web-components/shared": "^0.40.4",
78
+ "@spectrum-web-components/tooltip": "^0.40.4",
79
+ "@spectrum-web-components/tray": "^0.40.4"
79
80
  },
80
81
  "devDependencies": {
81
- "@spectrum-css/picker": "^7.0.8"
82
+ "@spectrum-css/picker": "7.0.18"
82
83
  },
83
84
  "types": "./src/index.d.ts",
84
85
  "customElements": "custom-elements.json",
@@ -88,5 +89,5 @@
88
89
  "./sync/index.js",
89
90
  "./sync/sp-*.js"
90
91
  ],
91
- "gitHead": "e5fd35c7a98569150ca695ec0e0e7411c9c64c28"
92
+ "gitHead": "e7bca020d0da71c4d92e95044bf58780d2e8e603"
92
93
  }
package/src/Picker.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  import { CSSResultArray, PropertyValues, TemplateResult } from '@spectrum-web-components/base';
2
2
  import { StyleInfo } from '@spectrum-web-components/base/src/directives.js';
3
3
  import { Focusable } from '@spectrum-web-components/shared/src/focusable.js';
4
+ import type { Tooltip } from '@spectrum-web-components/tooltip';
4
5
  import '@spectrum-web-components/icons-ui/icons/sp-icon-chevron100.js';
5
6
  import '@spectrum-web-components/icons-workflow/icons/sp-icon-alert.js';
6
7
  import '@spectrum-web-components/menu/sp-menu.js';
@@ -29,6 +30,7 @@ export declare class PickerBase extends PickerBase_base {
29
30
  protected get menuItems(): MenuItem[];
30
31
  protected optionsMenu: Menu;
31
32
  protected overlayElement: Overlay;
33
+ protected tooltipEl?: Tooltip;
32
34
  /**
33
35
  * @type {"top" | "top-start" | "top-end" | "right" | "right-start" | "right-end" | "bottom" | "bottom-start" | "bottom-end" | "left" | "left-start" | "left-end"}
34
36
  * @attr
@@ -43,11 +45,13 @@ export declare class PickerBase extends PickerBase_base {
43
45
  protected itemRole: string;
44
46
  get focusElement(): HTMLElement;
45
47
  forceFocusVisible(): void;
48
+ click(): void;
46
49
  handleButtonBlur(): void;
47
50
  protected preventNextToggle: 'no' | 'maybe' | 'yes';
48
- protected handleButtonPointerdown(): void;
51
+ private pointerdownState;
52
+ protected handleButtonPointerdown(event: PointerEvent): void;
49
53
  protected handleButtonFocus(event: FocusEvent): void;
50
- protected handleButtonClick(): void;
54
+ protected handleActivate(event?: Event): void;
51
55
  focus(options?: FocusOptions): void;
52
56
  handleHelperFocus(): void;
53
57
  handleChange(event: Event): void;
@@ -60,6 +64,9 @@ export declare class PickerBase extends PickerBase_base {
60
64
  protected get selectedItemContent(): MenuItemChildren;
61
65
  protected set selectedItemContent(selectedItemContent: MenuItemChildren | undefined);
62
66
  _selectedItemContent?: MenuItemChildren;
67
+ protected handleTooltipSlotchange(event: Event & {
68
+ target: HTMLSlotElement;
69
+ }): void;
63
70
  protected renderLabelContent(content: Node[]): TemplateResult | Node[];
64
71
  protected get buttonContent(): TemplateResult[];
65
72
  applyFocusElementLabel: (value?: string) => void;
@@ -70,6 +77,9 @@ export declare class PickerBase extends PickerBase_base {
70
77
  protected bindButtonKeydownListener(): void;
71
78
  protected firstUpdated(changes: PropertyValues<this>): void;
72
79
  protected get dismissHelper(): TemplateResult;
80
+ private dependenciesLoaded;
81
+ private dependenciesToLoad;
82
+ private trackDependency;
73
83
  protected renderContainer(menu: TemplateResult): TemplateResult;
74
84
  protected hasRenderedOverlay: boolean;
75
85
  protected get renderMenu(): TemplateResult;