@politiet/sheriff-web-components 2.7.0 → 2.7.2

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 (96) hide show
  1. package/custom-elements.json +172 -7
  2. package/dist/frameworks/preact.d.ts +4 -1
  3. package/dist/frameworks/preact.d.ts.map +1 -1
  4. package/dist/frameworks/react.d.ts +10 -2
  5. package/dist/frameworks/react.d.ts.map +1 -1
  6. package/dist/frameworks/solidjs.d.ts +1 -0
  7. package/dist/frameworks/solidjs.d.ts.map +1 -1
  8. package/dist/frameworks/svelte.d.ts +1 -0
  9. package/dist/frameworks/svelte.d.ts.map +1 -1
  10. package/dist/frameworks/vue.d.ts +1 -0
  11. package/dist/frameworks/vue.d.ts.map +1 -1
  12. package/dist/index.d.ts +2 -0
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/index.js +1 -0
  15. package/dist/index.js.map +1 -1
  16. package/dist/mixins/sds-dialog-target-mixin.d.ts +2 -0
  17. package/dist/mixins/sds-dialog-target-mixin.d.ts.map +1 -1
  18. package/dist/mixins/sds-dialog-target-mixin.js +31 -15
  19. package/dist/mixins/sds-dialog-target-mixin.js.map +1 -1
  20. package/dist/mixins/sds-popover-target-mixin.d.ts +1 -1
  21. package/dist/mixins/sds-popover-target-mixin.d.ts.map +1 -1
  22. package/dist/mixins/sds-popover-target-mixin.js.map +1 -1
  23. package/dist/react-wrappers/SDSPopoverWrapper.d.ts +4 -1
  24. package/dist/react-wrappers/SDSPopoverWrapper.d.ts.map +1 -1
  25. package/dist/react-wrappers/SDSPopoverWrapper.js +3 -1
  26. package/dist/react-wrappers/SDSPopoverWrapper.js.map +1 -1
  27. package/dist/react-wrappers/SDSTooltipWrapper.d.ts +6 -0
  28. package/dist/react-wrappers/SDSTooltipWrapper.d.ts.map +1 -0
  29. package/dist/react-wrappers/SDSTooltipWrapper.js +12 -0
  30. package/dist/react-wrappers/SDSTooltipWrapper.js.map +1 -0
  31. package/dist/react-wrappers/index.d.ts +1 -0
  32. package/dist/react-wrappers/index.d.ts.map +1 -1
  33. package/dist/react-wrappers/index.js +1 -0
  34. package/dist/react-wrappers/index.js.map +1 -1
  35. package/dist/sds-button/sds-button.component.d.ts +1 -1
  36. package/dist/sds-button/sds-button.component.d.ts.map +1 -1
  37. package/dist/sds-button/sds-button.component.js +1 -1
  38. package/dist/sds-button/sds-button.component.js.map +1 -1
  39. package/dist/sds-dialog/sds-dialog.component.js +1 -1
  40. package/dist/sds-dialog/sds-dialog.component.js.map +1 -1
  41. package/dist/sds-popover/assets/popover-styles.d.ts.map +1 -1
  42. package/dist/sds-popover/assets/popover-styles.js +1 -1
  43. package/dist/sds-popover/assets/popover-styles.js.map +1 -1
  44. package/dist/sds-popover/sds-popover.d.ts +3 -1
  45. package/dist/sds-popover/sds-popover.d.ts.map +1 -1
  46. package/dist/sds-popover/sds-popover.js +18 -4
  47. package/dist/sds-popover/sds-popover.js.map +1 -1
  48. package/dist/sds-tooltip/assets/tooltip-styles.d.ts +3 -0
  49. package/dist/sds-tooltip/assets/tooltip-styles.d.ts.map +1 -0
  50. package/dist/sds-tooltip/assets/tooltip-styles.js +3 -0
  51. package/dist/sds-tooltip/assets/tooltip-styles.js.map +1 -0
  52. package/dist/sds-tooltip/sds-tooltip.d.ts +35 -0
  53. package/dist/sds-tooltip/sds-tooltip.d.ts.map +1 -0
  54. package/dist/sds-tooltip/sds-tooltip.js +140 -0
  55. package/dist/sds-tooltip/sds-tooltip.js.map +1 -0
  56. package/dist/sds-tooltip/sds-tooltip.styles.d.ts +2 -0
  57. package/dist/sds-tooltip/sds-tooltip.styles.d.ts.map +1 -0
  58. package/dist/sds-tooltip/sds-tooltip.styles.js +87 -0
  59. package/dist/sds-tooltip/sds-tooltip.styles.js.map +1 -0
  60. package/dist/shared/assets/positioning.js +1 -0
  61. package/dist/shared/positioning.d.ts +2 -0
  62. package/dist/shared/positioning.d.ts.map +1 -0
  63. package/dist/shared/positioning.js +2 -0
  64. package/dist/shared/positioning.js.map +1 -0
  65. package/dist/sheriff-web-components.js +284 -201
  66. package/package.json +10 -4
  67. package/web-types.json +260 -11
  68. package/dist/playwright-util/custom-matchers.d.ts +0 -7
  69. package/dist/playwright-util/custom-matchers.d.ts.map +0 -1
  70. package/dist/playwright-util/custom-matchers.js +0 -21
  71. package/dist/playwright-util/custom-matchers.js.map +0 -1
  72. package/dist/playwright-util/form.d.ts +0 -3
  73. package/dist/playwright-util/form.d.ts.map +0 -1
  74. package/dist/playwright-util/form.js +0 -44
  75. package/dist/playwright-util/form.js.map +0 -1
  76. package/dist/sds-button/sds-button.spec.d.ts +0 -2
  77. package/dist/sds-button/sds-button.spec.d.ts.map +0 -1
  78. package/dist/sds-button/sds-button.spec.js +0 -182
  79. package/dist/sds-button/sds-button.spec.js.map +0 -1
  80. package/dist/sds-checkbox/sds-checkbox.spec.d.ts +0 -2
  81. package/dist/sds-checkbox/sds-checkbox.spec.d.ts.map +0 -1
  82. package/dist/sds-checkbox/sds-checkbox.spec.js +0 -74
  83. package/dist/sds-checkbox/sds-checkbox.spec.js.map +0 -1
  84. package/dist/sds-dialog/sds-dialog.spec.d.ts +0 -2
  85. package/dist/sds-dialog/sds-dialog.spec.d.ts.map +0 -1
  86. package/dist/sds-dialog/sds-dialog.spec.js +0 -50
  87. package/dist/sds-dialog/sds-dialog.spec.js.map +0 -1
  88. package/dist/sds-popover/assets/positioning.js +0 -1
  89. package/dist/sds-radio/sds-radio.spec.d.ts +0 -2
  90. package/dist/sds-radio/sds-radio.spec.d.ts.map +0 -1
  91. package/dist/sds-radio/sds-radio.spec.js +0 -71
  92. package/dist/sds-radio/sds-radio.spec.js.map +0 -1
  93. package/dist/sds-textfield/sds-textfield.spec.d.ts +0 -2
  94. package/dist/sds-textfield/sds-textfield.spec.d.ts.map +0 -1
  95. package/dist/sds-textfield/sds-textfield.spec.js +0 -137
  96. package/dist/sds-textfield/sds-textfield.spec.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@politiet/sheriff-web-components",
3
- "version": "2.7.0",
3
+ "version": "2.7.2",
4
4
  "description": "Sheriff Design System Web Components Library",
5
5
  "author": "Politiets IT-enhet",
6
6
  "license": "ISC",
@@ -146,11 +146,17 @@
146
146
  "./sds-textfield": {
147
147
  "import": "./dist/sds-textfield/sds-textfield.js",
148
148
  "types": "./dist/sds-textfield/sds-textfield.d.ts"
149
+ },
150
+ "./sds-tooltip": {
151
+ "import": "./dist/sds-tooltip/sds-tooltip.js",
152
+ "types": "./dist/sds-tooltip/sds-tooltip.d.ts"
149
153
  }
150
154
  },
151
155
  "scripts": {
152
156
  "tidy-frameworks": "node ../../../scripts/delete-filetypes-from-folder.js --folder ./dist/frameworks --filetypes js,js.map",
153
- "build": "npm run build:popover && tsc && npm run tidy-frameworks && npm run build:metadata && npm run build:skill",
157
+ "build": "npm run build:shared && npm run build:popover && npm run build:tooltip && tsc && npm run tidy-frameworks && npm run build:metadata && npm run build:skill",
158
+ "build:shared": "rollup -c ./src/shared/assets/rollup.config.js",
159
+ "build:tooltip": "rollup -c ./src/sds-tooltip/assets/rollup.config.js",
154
160
  "build:popover": "rollup -c src/sds-popover/assets/rollup.config.js",
155
161
  "build:web-types": "wca-webtypes analyze \"src/sds-*/**/*.ts\" --format webtypes --visibility public --outFile \"web-types.json\"",
156
162
  "build:cem": "cem analyze --config custom-elements-manifest.config.mjs --outdir .",
@@ -165,7 +171,7 @@
165
171
  "@politiet/sheriff-icons": "^2.0.2"
166
172
  },
167
173
  "peerDependencies": {
168
- "@politiet/sheriff-css-framework": "^2.3.0",
174
+ "@politiet/sheriff-css-framework": "^2.3.1",
169
175
  "typescript": ">=3.8.0"
170
176
  },
171
177
  "peerDependenciesMeta": {
@@ -178,7 +184,7 @@
178
184
  "@digdir/designsystemet-css": "^1.12.1",
179
185
  "@digdir/designsystemet-web": "^1.12.1",
180
186
  "@rollup/plugin-node-resolve": "^16.0.3",
181
- "@rollup/plugin-terser": "^0.4.4",
187
+ "@rollup/plugin-terser": "^1.0.0",
182
188
  "lit-web-types": "^0.1.5",
183
189
  "rollup": "^4.59.0",
184
190
  "web-component-analyzer-webtypes": "^2.0.12"
package/web-types.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "http://json.schemastore.org/web-types",
3
3
  "name": "@politiet/sheriff-web-components",
4
- "version": "2.7.0",
4
+ "version": "2.7.2",
5
5
  "framework": "web-components",
6
6
  "description-markup": "markdown",
7
7
  "contributions": {
@@ -442,7 +442,23 @@
442
442
  }
443
443
  },
444
444
  {
445
- "name": "popovertarget",
445
+ "name": "data-command",
446
+ "required": false,
447
+ "priority": "normal",
448
+ "value": {
449
+ "type": [
450
+ "DialogCommand",
451
+ "undefined"
452
+ ],
453
+ "required": true
454
+ },
455
+ "source": {
456
+ "module": "./src/sds-button/sds-button.ts",
457
+ "symbol": "SDSButton.dataCommand"
458
+ }
459
+ },
460
+ {
461
+ "name": "data-commandfor",
446
462
  "required": false,
447
463
  "priority": "normal",
448
464
  "value": {
@@ -454,11 +470,11 @@
454
470
  },
455
471
  "source": {
456
472
  "module": "./src/sds-button/sds-button.ts",
457
- "symbol": "SDSButton.popoverTarget"
473
+ "symbol": "SDSButton.dataCommandFor"
458
474
  }
459
475
  },
460
476
  {
461
- "name": "popovertargetaction",
477
+ "name": "popovertarget",
462
478
  "required": false,
463
479
  "priority": "normal",
464
480
  "value": {
@@ -468,6 +484,20 @@
468
484
  ],
469
485
  "required": true
470
486
  },
487
+ "source": {
488
+ "module": "./src/sds-button/sds-button.ts",
489
+ "symbol": "SDSButton.popoverTarget"
490
+ }
491
+ },
492
+ {
493
+ "name": "popovertargetaction",
494
+ "required": false,
495
+ "priority": "normal",
496
+ "value": {
497
+ "kind": "plain",
498
+ "type": "\"hide\" | \"show\" | \"toggle\" | undefined",
499
+ "required": true
500
+ },
471
501
  "source": {
472
502
  "module": "./src/sds-button/sds-button.ts",
473
503
  "symbol": "SDSButton.popoverTargetAction"
@@ -717,7 +747,7 @@
717
747
  "value": {
718
748
  "type": "(event: MouseEvent) => void",
719
749
  "required": true,
720
- "default": "\"(event: MouseEvent) => {\\n\\t\\t// For popover triggers, let the browser handle the toggle natively.\\n\\t\\t// Stop propagation and re-dispatch a composed click for listeners on the host.\\n\\t\\tif (this.popoverTarget) {\\n\\t\\t\\tevent.stopImmediatePropagation();\\n\\t\\t\\tif (!this.disabled) {\\n\\t\\t\\t\\tthis.dispatchSheriffEvent('click');\\n\\t\\t\\t}\\n\\t\\t\\treturn;\\n\\t\\t}\\n\\n\\t\\t// For dialog commands, emulate the native commandfor/command behavior on the host.\\n\\t\\t// Stop propagation and re-dispatch a composed click for listeners on the host.\\n\\t\\tif (this.commandFor && this.command) {\\n\\t\\t\\tevent.preventDefault();\\n\\t\\t\\tevent.stopImmediatePropagation();\\n\\t\\t\\tif (!this.disabled) {\\n\\t\\t\\t\\tthis.runDialogCommand();\\n\\t\\t\\t\\tthis.dispatchSheriffEvent('click');\\n\\t\\t\\t}\\n\\t\\t\\treturn;\\n\\t\\t}\\n\\n\\t\\tevent.preventDefault();\\n\\t\\tevent.stopImmediatePropagation();\\n\\n\\t\\tif (!this.disabled) {\\n\\t\\t\\tswitch (this.type) {\\n\\t\\t\\t\\tcase 'submit': {\\n\\t\\t\\t\\t\\tconst shouldSubmit = this.dispatchSheriffEvent('submit');\\n\\n\\t\\t\\t\\t\\tif (shouldSubmit) {\\n\\t\\t\\t\\t\\t\\tif (this.form) {\\n\\t\\t\\t\\t\\t\\t\\tconst root = this.getRootNode() as Document | ShadowRoot;\\n\\t\\t\\t\\t\\t\\t\\tconst formElement: HTMLFormElement | null = root.querySelector(`form#${this.form}`);\\n\\t\\t\\t\\t\\t\\t\\tformElement?.requestSubmit();\\n\\t\\t\\t\\t\\t\\t} else if (this.internals.form) {\\n\\t\\t\\t\\t\\t\\t\\tthis.internals.form.requestSubmit();\\n\\t\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t\\tbreak;\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\tcase 'reset': {\\n\\t\\t\\t\\t\\tconst shouldReset = this.dispatchSheriffEvent('reset');\\n\\n\\t\\t\\t\\t\\tif (shouldReset) {\\n\\t\\t\\t\\t\\t\\tif (this.form) {\\n\\t\\t\\t\\t\\t\\t\\tconst root = this.getRootNode() as Document | ShadowRoot;\\n\\t\\t\\t\\t\\t\\t\\tconst formElement: HTMLFormElement | null = root.querySelector(`form#${this.form}`);\\n\\t\\t\\t\\t\\t\\t\\tformElement?.reset();\\n\\t\\t\\t\\t\\t\\t} else if (this.internals.form) {\\n\\t\\t\\t\\t\\t\\t\\tthis.internals.form.reset();\\n\\t\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t\\tbreak;\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\tdefault:\\n\\t\\t\\t\\t\\tthis.dispatchSheriffEvent('click');\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\""
750
+ "default": "\"(event: MouseEvent) => {\\n\\t\\t// For popover triggers, let the browser handle the toggle natively.\\n\\t\\t// Stop propagation and re-dispatch a composed click for listeners on the host.\\n\\t\\tif (this.popoverTarget) {\\n\\t\\t\\tevent.stopImmediatePropagation();\\n\\t\\t\\tif (!this.disabled) {\\n\\t\\t\\t\\tthis.dispatchSheriffEvent('click');\\n\\t\\t\\t}\\n\\t\\t\\treturn;\\n\\t\\t}\\n\\n\\t\\t// For dialog commands, emulate the native commandfor/command behavior on the host.\\n\\t\\t// Stop propagation and re-dispatch a composed click for listeners on the host.\\n\\t\\tif (this.effectiveCommandFor && this.effectiveCommand) {\\n\\t\\t\\tevent.preventDefault();\\n\\t\\t\\tevent.stopImmediatePropagation();\\n\\t\\t\\tif (!this.disabled) {\\n\\t\\t\\t\\tthis.runDialogCommand();\\n\\t\\t\\t\\tthis.dispatchSheriffEvent('click');\\n\\t\\t\\t}\\n\\t\\t\\treturn;\\n\\t\\t}\\n\\n\\t\\tevent.preventDefault();\\n\\t\\tevent.stopImmediatePropagation();\\n\\n\\t\\tif (!this.disabled) {\\n\\t\\t\\tswitch (this.type) {\\n\\t\\t\\t\\tcase 'submit': {\\n\\t\\t\\t\\t\\tconst shouldSubmit = this.dispatchSheriffEvent('submit');\\n\\n\\t\\t\\t\\t\\tif (shouldSubmit) {\\n\\t\\t\\t\\t\\t\\tif (this.form) {\\n\\t\\t\\t\\t\\t\\t\\tconst root = this.getRootNode() as Document | ShadowRoot;\\n\\t\\t\\t\\t\\t\\t\\tconst formElement: HTMLFormElement | null = root.querySelector(`form#${this.form}`);\\n\\t\\t\\t\\t\\t\\t\\tformElement?.requestSubmit();\\n\\t\\t\\t\\t\\t\\t} else if (this.internals.form) {\\n\\t\\t\\t\\t\\t\\t\\tthis.internals.form.requestSubmit();\\n\\t\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t\\tbreak;\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\tcase 'reset': {\\n\\t\\t\\t\\t\\tconst shouldReset = this.dispatchSheriffEvent('reset');\\n\\n\\t\\t\\t\\t\\tif (shouldReset) {\\n\\t\\t\\t\\t\\t\\tif (this.form) {\\n\\t\\t\\t\\t\\t\\t\\tconst root = this.getRootNode() as Document | ShadowRoot;\\n\\t\\t\\t\\t\\t\\t\\tconst formElement: HTMLFormElement | null = root.querySelector(`form#${this.form}`);\\n\\t\\t\\t\\t\\t\\t\\tformElement?.reset();\\n\\t\\t\\t\\t\\t\\t} else if (this.internals.form) {\\n\\t\\t\\t\\t\\t\\t\\tthis.internals.form.reset();\\n\\t\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t\\tbreak;\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\tdefault:\\n\\t\\t\\t\\t\\tthis.dispatchSheriffEvent('click');\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\""
721
751
  },
722
752
  "source": {
723
753
  "module": "./src/sds-button/sds-button.ts",
@@ -769,6 +799,38 @@
769
799
  "symbol": "SDSButton.commandFor"
770
800
  }
771
801
  },
802
+ {
803
+ "name": "dataCommand",
804
+ "required": false,
805
+ "priority": "normal",
806
+ "value": {
807
+ "type": [
808
+ "DialogCommand",
809
+ "undefined"
810
+ ],
811
+ "required": true
812
+ },
813
+ "source": {
814
+ "module": "./src/sds-button/sds-button.ts",
815
+ "symbol": "SDSButton.dataCommand"
816
+ }
817
+ },
818
+ {
819
+ "name": "dataCommandFor",
820
+ "required": false,
821
+ "priority": "normal",
822
+ "value": {
823
+ "type": [
824
+ "string",
825
+ "undefined"
826
+ ],
827
+ "required": true
828
+ },
829
+ "source": {
830
+ "module": "./src/sds-button/sds-button.ts",
831
+ "symbol": "SDSButton.dataCommandFor"
832
+ }
833
+ },
772
834
  {
773
835
  "name": "_dialogElement",
774
836
  "required": false,
@@ -802,7 +864,23 @@
802
864
  }
803
865
  },
804
866
  {
805
- "name": "popoverTarget",
867
+ "name": "effectiveCommand",
868
+ "required": false,
869
+ "priority": "normal",
870
+ "value": {
871
+ "type": [
872
+ "DialogCommand",
873
+ "undefined"
874
+ ],
875
+ "required": true
876
+ },
877
+ "source": {
878
+ "module": "./src/sds-button/sds-button.ts",
879
+ "symbol": "SDSButton.effectiveCommand"
880
+ }
881
+ },
882
+ {
883
+ "name": "effectiveCommandFor",
806
884
  "required": false,
807
885
  "priority": "normal",
808
886
  "value": {
@@ -814,11 +892,11 @@
814
892
  },
815
893
  "source": {
816
894
  "module": "./src/sds-button/sds-button.ts",
817
- "symbol": "SDSButton.popoverTarget"
895
+ "symbol": "SDSButton.effectiveCommandFor"
818
896
  }
819
897
  },
820
898
  {
821
- "name": "popoverTargetAction",
899
+ "name": "popoverTarget",
822
900
  "required": false,
823
901
  "priority": "normal",
824
902
  "value": {
@@ -828,6 +906,20 @@
828
906
  ],
829
907
  "required": true
830
908
  },
909
+ "source": {
910
+ "module": "./src/sds-button/sds-button.ts",
911
+ "symbol": "SDSButton.popoverTarget"
912
+ }
913
+ },
914
+ {
915
+ "name": "popoverTargetAction",
916
+ "required": false,
917
+ "priority": "normal",
918
+ "value": {
919
+ "kind": "plain",
920
+ "type": "\"hide\" | \"show\" | \"toggle\" | undefined",
921
+ "required": true
922
+ },
831
923
  "source": {
832
924
  "module": "./src/sds-button/sds-button.ts",
833
925
  "symbol": "SDSButton.popoverTargetAction"
@@ -3279,7 +3371,7 @@
3279
3371
  },
3280
3372
  "attributes": [
3281
3373
  {
3282
- "name": "data-placement",
3374
+ "name": "placement",
3283
3375
  "required": false,
3284
3376
  "priority": "normal",
3285
3377
  "value": {
@@ -3296,7 +3388,7 @@
3296
3388
  }
3297
3389
  },
3298
3390
  {
3299
- "name": "data-autoplacement",
3391
+ "name": "autoPlacement",
3300
3392
  "required": false,
3301
3393
  "priority": "normal",
3302
3394
  "value": {
@@ -3313,7 +3405,7 @@
3313
3405
  }
3314
3406
  },
3315
3407
  {
3316
- "name": "data-overscroll",
3408
+ "name": "overscroll",
3317
3409
  "required": false,
3318
3410
  "priority": "normal",
3319
3411
  "value": {
@@ -7517,6 +7609,163 @@
7517
7609
  }
7518
7610
  ]
7519
7611
  }
7612
+ },
7613
+ {
7614
+ "name": "sds-tooltip",
7615
+ "source": {
7616
+ "module": "./src/sds-tooltip/sds-tooltip.ts",
7617
+ "symbol": "SDSTooltip"
7618
+ },
7619
+ "attributes": [
7620
+ {
7621
+ "name": "placement",
7622
+ "required": false,
7623
+ "priority": "normal",
7624
+ "value": {
7625
+ "type": "SDSTooltipPlacement",
7626
+ "required": true,
7627
+ "default": "\"top\""
7628
+ },
7629
+ "source": {
7630
+ "module": "./src/sds-tooltip/sds-tooltip.ts",
7631
+ "symbol": "SDSTooltip.placement"
7632
+ }
7633
+ }
7634
+ ],
7635
+ "js": {
7636
+ "properties": [
7637
+ {
7638
+ "name": "styles",
7639
+ "required": false,
7640
+ "priority": "normal",
7641
+ "value": {
7642
+ "type": "CSSResult[]",
7643
+ "required": true,
7644
+ "default": "[\"styles\"]"
7645
+ },
7646
+ "source": {
7647
+ "module": "./src/sds-tooltip/sds-tooltip.ts",
7648
+ "symbol": "SDSTooltip.styles"
7649
+ }
7650
+ },
7651
+ {
7652
+ "name": "placement",
7653
+ "required": false,
7654
+ "priority": "normal",
7655
+ "value": {
7656
+ "type": "SDSTooltipPlacement",
7657
+ "required": true,
7658
+ "default": "\"top\""
7659
+ },
7660
+ "source": {
7661
+ "module": "./src/sds-tooltip/sds-tooltip.ts",
7662
+ "symbol": "SDSTooltip.placement"
7663
+ }
7664
+ },
7665
+ {
7666
+ "name": "triggers",
7667
+ "required": false,
7668
+ "priority": "lowest",
7669
+ "value": {
7670
+ "type": "HTMLElement[]",
7671
+ "required": true,
7672
+ "default": "[]"
7673
+ },
7674
+ "source": {
7675
+ "module": "./src/sds-tooltip/sds-tooltip.ts",
7676
+ "symbol": "SDSTooltip.triggers"
7677
+ }
7678
+ },
7679
+ {
7680
+ "name": "cleanups",
7681
+ "required": false,
7682
+ "priority": "lowest",
7683
+ "value": {
7684
+ "type": "(() => void)[]",
7685
+ "required": true,
7686
+ "default": "[]"
7687
+ },
7688
+ "source": {
7689
+ "module": "./src/sds-tooltip/sds-tooltip.ts",
7690
+ "symbol": "SDSTooltip.cleanups"
7691
+ }
7692
+ },
7693
+ {
7694
+ "name": "hoverTimeout",
7695
+ "required": false,
7696
+ "priority": "lowest",
7697
+ "value": {
7698
+ "type": [
7699
+ "Timeout",
7700
+ "undefined"
7701
+ ],
7702
+ "required": true
7703
+ },
7704
+ "source": {
7705
+ "module": "./src/sds-tooltip/sds-tooltip.ts",
7706
+ "symbol": "SDSTooltip.hoverTimeout"
7707
+ }
7708
+ },
7709
+ {
7710
+ "name": "activeTrigger",
7711
+ "required": false,
7712
+ "priority": "lowest",
7713
+ "value": {
7714
+ "type": [
7715
+ "HTMLElement",
7716
+ "undefined"
7717
+ ],
7718
+ "required": true
7719
+ },
7720
+ "source": {
7721
+ "module": "./src/sds-tooltip/sds-tooltip.ts",
7722
+ "symbol": "SDSTooltip.activeTrigger"
7723
+ }
7724
+ },
7725
+ {
7726
+ "name": "onSelfMouseEnter",
7727
+ "required": false,
7728
+ "priority": "lowest",
7729
+ "value": {
7730
+ "type": "() => void",
7731
+ "required": true,
7732
+ "default": "\"() => {\\n\\t\\tclearTimeout(this.hoverTimeout);\\n\\t}\""
7733
+ },
7734
+ "source": {
7735
+ "module": "./src/sds-tooltip/sds-tooltip.ts",
7736
+ "symbol": "SDSTooltip.onSelfMouseEnter"
7737
+ }
7738
+ },
7739
+ {
7740
+ "name": "onSelfMouseLeave",
7741
+ "required": false,
7742
+ "priority": "lowest",
7743
+ "value": {
7744
+ "type": "() => void",
7745
+ "required": true,
7746
+ "default": "\"() => this.hide()\""
7747
+ },
7748
+ "source": {
7749
+ "module": "./src/sds-tooltip/sds-tooltip.ts",
7750
+ "symbol": "SDSTooltip.onSelfMouseLeave"
7751
+ }
7752
+ },
7753
+ {
7754
+ "name": "onKeyDown",
7755
+ "required": false,
7756
+ "priority": "lowest",
7757
+ "value": {
7758
+ "type": "(e: KeyboardEvent) => void",
7759
+ "required": true,
7760
+ "default": "\"(e: KeyboardEvent) => {\\n\\t\\tif (e.key === 'Escape') {\\n\\t\\t\\tthis.hide();\\n\\t\\t}\\n\\t}\""
7761
+ },
7762
+ "source": {
7763
+ "module": "./src/sds-tooltip/sds-tooltip.ts",
7764
+ "symbol": "SDSTooltip.onKeyDown"
7765
+ }
7766
+ }
7767
+ ]
7768
+ }
7520
7769
  }
7521
7770
  ]
7522
7771
  },
@@ -1,7 +0,0 @@
1
- import { ExpectMatcherState, Locator, MatcherReturnType } from '@playwright/test';
2
- export declare const expect: import("@playwright/test").Expect<{
3
- isChecked(this: ExpectMatcherState, receiver: Locator): Promise<MatcherReturnType>;
4
- isNotChecked(this: ExpectMatcherState, receiver: Locator): Promise<MatcherReturnType>;
5
- toHaveValue(this: ExpectMatcherState, receiver: Locator, expected: string): Promise<MatcherReturnType>;
6
- }>;
7
- //# sourceMappingURL=custom-matchers.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"custom-matchers.d.ts","sourceRoot":"","sources":["../../src/playwright-util/custom-matchers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,kBAAkB,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAEtG,eAAO,MAAM,MAAM;oBACI,kBAAkB,YAAY,OAAO,GAAG,OAAO,CAAC,iBAAiB,CAAC;uBAK/D,kBAAkB,YAAY,OAAO,GAAG,OAAO,CAAC,iBAAiB,CAAC;sBAInE,kBAAkB,YAAY,OAAO,YAAY,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;EAQ3G,CAAC"}
@@ -1,21 +0,0 @@
1
- import { expect as pwExpect } from '@playwright/test';
2
- export const expect = pwExpect.extend({
3
- async isChecked(receiver) {
4
- console.log(await receiver.getAttribute('checked'));
5
- expect(await receiver.getAttribute('checked')).toBe('');
6
- return { message: () => 'Pass', pass: true };
7
- },
8
- async isNotChecked(receiver) {
9
- expect(await receiver.getAttribute('checked')).toBeNull();
10
- return { message: () => 'Pass', pass: true };
11
- },
12
- async toHaveValue(receiver, expected) {
13
- const actual = await receiver.evaluate((el) => el.value);
14
- const pass = actual === expected;
15
- return {
16
- pass,
17
- message: () => (pass ? `expected value not to be “${expected}”` : `expected value to be “${expected}”, but got ${actual === null ? 'no value' : `“${actual}”`}`),
18
- };
19
- },
20
- });
21
- //# sourceMappingURL=custom-matchers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"custom-matchers.js","sourceRoot":"","sources":["../../src/playwright-util/custom-matchers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,QAAQ,EAAkD,MAAM,kBAAkB,CAAC;AAEtG,MAAM,CAAC,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;IACrC,KAAK,CAAC,SAAS,CAA2B,QAAiB;QAC1D,OAAO,CAAC,GAAG,CAAC,MAAM,QAAQ,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC;QACpD,MAAM,CAAC,MAAM,QAAQ,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACxD,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC9C,CAAC;IACD,KAAK,CAAC,YAAY,CAA2B,QAAiB;QAC7D,MAAM,CAAC,MAAM,QAAQ,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC1D,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC9C,CAAC;IACD,KAAK,CAAC,WAAW,CAA2B,QAAiB,EAAE,QAAgB;QAC9E,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAC,EAAoB,EAAE,EAAE,CAAC,EAAE,CAAC,KAAe,CAAC,CAAC;QACrF,MAAM,IAAI,GAAG,MAAM,KAAK,QAAQ,CAAC;QACjC,OAAO;YACN,IAAI;YACJ,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,6BAA6B,QAAQ,GAAG,CAAC,CAAC,CAAC,yBAAyB,QAAQ,cAAc,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,MAAM,GAAG,EAAE,CAAC;SAChK,CAAC;IACH,CAAC;CACD,CAAC,CAAC","sourcesContent":["import { expect as pwExpect, ExpectMatcherState, Locator, MatcherReturnType } from '@playwright/test';\n\nexport const expect = pwExpect.extend({\n\tasync isChecked(this: ExpectMatcherState, receiver: Locator): Promise<MatcherReturnType> {\n\t\tconsole.log(await receiver.getAttribute('checked'));\n\t\texpect(await receiver.getAttribute('checked')).toBe('');\n\t\treturn { message: () => 'Pass', pass: true };\n\t},\n\tasync isNotChecked(this: ExpectMatcherState, receiver: Locator): Promise<MatcherReturnType> {\n\t\texpect(await receiver.getAttribute('checked')).toBeNull();\n\t\treturn { message: () => 'Pass', pass: true };\n\t},\n\tasync toHaveValue(this: ExpectMatcherState, receiver: Locator, expected: string): Promise<MatcherReturnType> {\n\t\tconst actual = await receiver.evaluate((el: HTMLInputElement) => el.value as string);\n\t\tconst pass = actual === expected;\n\t\treturn {\n\t\t\tpass,\n\t\t\tmessage: () => (pass ? `expected value not to be “${expected}”` : `expected value to be “${expected}”, but got ${actual === null ? 'no value' : `“${actual}”`}`),\n\t\t};\n\t},\n});\n"]}
@@ -1,3 +0,0 @@
1
- import { Page } from '@playwright/test';
2
- export declare const onFormSubmitCallback: (page: Page, formSelector: string) => Promise<() => Promise<Record<string, string>>>;
3
- //# sourceMappingURL=form.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../../src/playwright-util/form.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAExC,eAAO,MAAM,oBAAoB,GAChC,MAAM,IAAI,EACV,cAAc,MAAM,KAClB,OAAO,CAAC,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAiD/C,CAAC"}
@@ -1,44 +0,0 @@
1
- export const onFormSubmitCallback = async (page, formSelector) => {
2
- let formData = null;
3
- // Expose a callback function into the browser's context
4
- // that can call function in our context, too.
5
- // Used to receive the form data from the submission callback.
6
- await page.exposeFunction('callback', async (formDataAsJson) => {
7
- formData = JSON.parse(formDataAsJson);
8
- });
9
- await page.waitForTimeout(500);
10
- // Setup a submit listener on the form found by the formSelector.
11
- // Note that this runs in a separate browser context, so we cannot pass in
12
- // non-serializable variables, such as a function reference.
13
- const result = await page.evaluate((selector) => {
14
- const form = document.getElementById(selector);
15
- if (!(form instanceof HTMLFormElement)) {
16
- return new Error('Form to attach listeners to not found');
17
- }
18
- form.addEventListener('submit', async (event) => {
19
- event.preventDefault();
20
- const formData = new FormData(form);
21
- if ('callback' in window && typeof window.callback === 'function') {
22
- const data = Array.from(formData.keys()).reduce((acc, current) => {
23
- if (formData.getAll(current).length > 1) {
24
- return { ...acc, [current]: formData.getAll(current) };
25
- }
26
- return { ...acc, [current]: formData.get(current) };
27
- }, {});
28
- await window.callback(JSON.stringify(data));
29
- }
30
- });
31
- return true;
32
- }, formSelector);
33
- if (result instanceof Error) {
34
- throw result;
35
- }
36
- // Playwright handles the timeout and will break the loop when the test suite times out
37
- return async () => {
38
- while (!formData) {
39
- await page.waitForTimeout(100);
40
- }
41
- return formData;
42
- };
43
- };
44
- //# sourceMappingURL=form.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"form.js","sourceRoot":"","sources":["../../src/playwright-util/form.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,EACxC,IAAU,EACV,YAAoB,EAC6B,EAAE;IACnD,IAAI,QAAQ,GAAkC,IAAI,CAAC;IACnD,wDAAwD;IACxD,8CAA8C;IAC9C,8DAA8D;IAC9D,MAAM,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,KAAK,EAAE,cAAsB,EAAE,EAAE;QACtE,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;IAE/B,iEAAiE;IACjE,0EAA0E;IAC1E,4DAA4D;IAC5D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,EAAE;QAC/C,MAAM,IAAI,GAAG,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAC/C,IAAI,CAAC,CAAC,IAAI,YAAY,eAAe,CAAC,EAAE,CAAC;YACxC,OAAO,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAC3D,CAAC;QACD,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAkB,EAAE,EAAE;YAC5D,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;YACpC,IAAI,UAAU,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;gBACnE,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAC9C,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE;oBAChB,IAAI,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACzC,OAAO,EAAE,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;oBACxD,CAAC;oBACD,OAAO,EAAE,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAE,EAAE,CAAC;gBACtD,CAAC,EACD,EAA+D,CAC/D,CAAC;gBACF,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;YAC7C,CAAC;QACF,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACb,CAAC,EAAE,YAAY,CAAC,CAAC;IAEjB,IAAI,MAAM,YAAY,KAAK,EAAE,CAAC;QAC7B,MAAM,MAAM,CAAC;IACd,CAAC;IAED,uFAAuF;IACvF,OAAO,KAAK,IAAI,EAAE;QACjB,OAAO,CAAC,QAAQ,EAAE,CAAC;YAClB,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QAChC,CAAC;QACD,OAAO,QAAQ,CAAC;IACjB,CAAC,CAAC;AACH,CAAC,CAAC","sourcesContent":["import { Page } from '@playwright/test';\n\nexport const onFormSubmitCallback = async (\n\tpage: Page,\n\tformSelector: string\n): Promise<() => Promise<Record<string, string>>> => {\n\tlet formData: Record<string, string> | null = null;\n\t// Expose a callback function into the browser's context\n\t// that can call function in our context, too.\n\t// Used to receive the form data from the submission callback.\n\tawait page.exposeFunction('callback', async (formDataAsJson: string) => {\n\t\tformData = JSON.parse(formDataAsJson);\n\t});\n\n\tawait page.waitForTimeout(500);\n\n\t// Setup a submit listener on the form found by the formSelector.\n\t// Note that this runs in a separate browser context, so we cannot pass in\n\t// non-serializable variables, such as a function reference.\n\tconst result = await page.evaluate((selector) => {\n\t\tconst form = document.getElementById(selector);\n\t\tif (!(form instanceof HTMLFormElement)) {\n\t\t\treturn new Error('Form to attach listeners to not found');\n\t\t}\n\t\tform.addEventListener('submit', async (event: SubmitEvent) => {\n\t\t\tevent.preventDefault();\n\t\t\tconst formData = new FormData(form);\n\t\t\tif ('callback' in window && typeof window.callback === 'function') {\n\t\t\t\tconst data = Array.from(formData.keys()).reduce(\n\t\t\t\t\t(acc, current) => {\n\t\t\t\t\t\tif (formData.getAll(current).length > 1) {\n\t\t\t\t\t\t\treturn { ...acc, [current]: formData.getAll(current) };\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn { ...acc, [current]: formData.get(current)! };\n\t\t\t\t\t},\n\t\t\t\t\t{} as Record<string, FormDataEntryValue | FormDataEntryValue[]>\n\t\t\t\t);\n\t\t\t\tawait window.callback(JSON.stringify(data));\n\t\t\t}\n\t\t});\n\t\treturn true;\n\t}, formSelector);\n\n\tif (result instanceof Error) {\n\t\tthrow result;\n\t}\n\n\t// Playwright handles the timeout and will break the loop when the test suite times out\n\treturn async () => {\n\t\twhile (!formData) {\n\t\t\tawait page.waitForTimeout(100);\n\t\t}\n\t\treturn formData;\n\t};\n};\n"]}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=sds-button.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sds-button.spec.d.ts","sourceRoot":"","sources":["../../src/sds-button/sds-button.spec.ts"],"names":[],"mappings":""}