@swisspost/design-system-components 9.0.0-next.6 → 9.0.0-next.7

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 (242) hide show
  1. package/dist/cjs/index-e1f32cce.js +4 -0
  2. package/dist/cjs/index.cjs.js +22 -20
  3. package/dist/cjs/loader.cjs.js +1 -1
  4. package/dist/cjs/{package-81d89808.js → package-bc44930e.js} +1 -1
  5. package/dist/cjs/{post-accordion-7d2805f4.js → post-accordion-c55fef06.js} +1 -1
  6. package/dist/cjs/{post-accordion-item-0d8b65b1.js → post-accordion-item-641f0b42.js} +1 -1
  7. package/dist/cjs/post-accordion-item.cjs.entry.js +2 -2
  8. package/dist/cjs/post-accordion.cjs.entry.js +2 -2
  9. package/dist/cjs/{post-avatar-0b87e44f.js → post-avatar-10d7b5c0.js} +1 -1
  10. package/dist/cjs/post-avatar.cjs.entry.js +2 -2
  11. package/dist/cjs/{post-banner-e42f02bd.js → post-banner-b286d37f.js} +1 -1
  12. package/dist/cjs/post-banner.cjs.entry.js +2 -2
  13. package/dist/cjs/{post-breadcrumb-item-46a8e876.js → post-breadcrumb-item-8cdc59a8.js} +1 -1
  14. package/dist/cjs/post-breadcrumb-item.cjs.entry.js +2 -2
  15. package/dist/cjs/post-card-control-fc4aca2a.js +272 -0
  16. package/dist/cjs/post-card-control.cjs.entry.js +2 -2
  17. package/dist/cjs/post-closebutton_10.cjs.entry.js +2 -2
  18. package/dist/cjs/{post-collapsible-trigger-ae50d0d4.js → post-collapsible-trigger-c8b3e767.js} +1 -1
  19. package/dist/cjs/post-collapsible_2.cjs.entry.js +2 -2
  20. package/dist/cjs/post-components.cjs.js +1 -1
  21. package/dist/cjs/{post-language-option-c6049337.js → post-language-option-8c1ec4fd.js} +2 -2
  22. package/dist/cjs/post-language-option.cjs.entry.js +2 -2
  23. package/dist/cjs/{post-megadropdown-trigger-97472602.js → post-megadropdown-trigger-9b9f1036.js} +31 -36
  24. package/dist/cjs/{post-menu-61c31423.js → post-menu-5a71a6fe.js} +2 -2
  25. package/dist/cjs/{post-menu-item-4f393cde.js → post-menu-item-5c5c1aaf.js} +2 -2
  26. package/dist/cjs/post-menu-item.cjs.entry.js +2 -2
  27. package/dist/cjs/{post-menu-trigger-44a5f8e9.js → post-menu-trigger-02d128c4.js} +2 -2
  28. package/dist/cjs/post-menu-trigger.cjs.entry.js +2 -2
  29. package/dist/cjs/post-menu.cjs.entry.js +2 -2
  30. package/dist/cjs/{post-popover-44fdb733.js → post-popover-91a83e9d.js} +2 -2
  31. package/dist/cjs/post-popover.cjs.entry.js +2 -2
  32. package/dist/cjs/{post-rating-4d5e7c8e.js → post-rating-57fcf949.js} +2 -2
  33. package/dist/cjs/post-rating.cjs.entry.js +2 -2
  34. package/dist/cjs/{post-tab-header-3fcb40fa.js → post-tab-header-ce56b760.js} +2 -2
  35. package/dist/cjs/post-tab-header.cjs.entry.js +2 -2
  36. package/dist/cjs/{post-tab-panel-b1a41181.js → post-tab-panel-70e49260.js} +2 -2
  37. package/dist/cjs/post-tab-panel.cjs.entry.js +2 -2
  38. package/dist/cjs/{post-tabs-092790e4.js → post-tabs-39262e55.js} +2 -2
  39. package/dist/cjs/post-tabs.cjs.entry.js +2 -2
  40. package/dist/cjs/{post-tag-389a43f7.js → post-tag-b6bc5785.js} +2 -2
  41. package/dist/cjs/post-tag.cjs.entry.js +2 -2
  42. package/dist/cjs/post-togglebutton-2f39442e.js +28 -0
  43. package/dist/cjs/post-togglebutton.cjs.entry.js +11 -0
  44. package/dist/cjs/{post-tooltip-c42d6853.js → post-tooltip-8be3b2aa.js} +28 -16
  45. package/dist/cjs/post-tooltip.cjs.entry.js +2 -2
  46. package/dist/collection/collection-manifest.json +1 -0
  47. package/dist/collection/components/post-card-control/post-card-control.css +1 -1
  48. package/dist/collection/components/post-header/post-header.js +1 -1
  49. package/dist/collection/components/post-icon/post-icon.css +1 -1
  50. package/dist/collection/components/post-icon/post-icon.js +20 -31
  51. package/dist/collection/components/post-language-option/post-language-option.js +1 -1
  52. package/dist/collection/components/post-list/post-list.js +1 -1
  53. package/dist/collection/components/post-list-item/post-list-item.js +1 -1
  54. package/dist/collection/components/post-logo/post-logo.js +1 -1
  55. package/dist/collection/components/post-mainnavigation/post-mainnavigation.js +1 -1
  56. package/dist/collection/components/post-megadropdown/post-megadropdown.js +1 -1
  57. package/dist/collection/components/post-megadropdown-trigger/post-megadropdown-trigger.js +1 -1
  58. package/dist/collection/components/post-menu/post-menu.js +1 -1
  59. package/dist/collection/components/post-menu-item/post-menu-item.js +1 -1
  60. package/dist/collection/components/post-menu-trigger/post-menu-trigger.js +1 -1
  61. package/dist/collection/components/post-popover/post-popover.js +1 -1
  62. package/dist/collection/components/post-popovercontainer/post-popovercontainer.js +2 -2
  63. package/dist/collection/components/post-rating/post-rating.js +1 -1
  64. package/dist/collection/components/post-tab-header/post-tab-header.js +1 -1
  65. package/dist/collection/components/post-tab-panel/post-tab-panel.js +1 -1
  66. package/dist/collection/components/post-tabs/post-tabs.js +1 -1
  67. package/dist/collection/components/post-tag/post-tag.js +1 -1
  68. package/dist/collection/components/post-togglebutton/post-togglebutton.css +1 -0
  69. package/dist/collection/components/post-togglebutton/post-togglebutton.js +56 -0
  70. package/dist/collection/components/post-tooltip/post-tooltip.js +28 -12
  71. package/dist/collection/index.js +1 -0
  72. package/dist/components/index.js +1 -0
  73. package/dist/components/package.js +1 -1
  74. package/dist/components/post-card-control2.js +1 -1
  75. package/dist/components/post-header2.js +1 -1
  76. package/dist/components/post-icon2.js +22 -29
  77. package/dist/components/post-language-option2.js +1 -1
  78. package/dist/components/post-list-item2.js +1 -1
  79. package/dist/components/post-list2.js +1 -1
  80. package/dist/components/post-logo2.js +1 -1
  81. package/dist/components/post-mainnavigation2.js +1 -1
  82. package/dist/components/post-megadropdown-trigger2.js +1 -1
  83. package/dist/components/post-megadropdown2.js +1 -1
  84. package/dist/components/post-menu-item2.js +1 -1
  85. package/dist/components/post-menu-trigger2.js +1 -1
  86. package/dist/components/post-menu2.js +1 -1
  87. package/dist/components/post-popover2.js +1 -1
  88. package/dist/components/post-popovercontainer2.js +2 -2
  89. package/dist/components/post-rating2.js +1 -1
  90. package/dist/components/post-tab-header2.js +1 -1
  91. package/dist/components/post-tab-panel2.js +1 -1
  92. package/dist/components/post-tabs2.js +1 -1
  93. package/dist/components/post-tag2.js +1 -1
  94. package/dist/components/post-togglebutton.d.ts +11 -0
  95. package/dist/components/post-togglebutton.js +6 -0
  96. package/dist/components/post-togglebutton2.js +43 -0
  97. package/dist/components/post-tooltip2.js +27 -15
  98. package/dist/docs.json +61 -1
  99. package/dist/esm/index-e1b64755.js +4 -0
  100. package/dist/esm/index.js +21 -20
  101. package/dist/esm/loader.js +1 -1
  102. package/dist/esm/package-180da9f3.js +3 -0
  103. package/dist/esm/{post-accordion-c833c272.js → post-accordion-7268e29b.js} +1 -1
  104. package/dist/esm/{post-accordion-item-19fb4776.js → post-accordion-item-a5a76abb.js} +1 -1
  105. package/dist/esm/post-accordion-item.entry.js +2 -2
  106. package/dist/esm/post-accordion.entry.js +2 -2
  107. package/dist/esm/{post-avatar-f43ebc89.js → post-avatar-19162f90.js} +1 -1
  108. package/dist/esm/post-avatar.entry.js +2 -2
  109. package/dist/esm/{post-banner-cf6f756b.js → post-banner-132709ad.js} +1 -1
  110. package/dist/esm/post-banner.entry.js +2 -2
  111. package/dist/esm/{post-breadcrumb-item-a93b91a7.js → post-breadcrumb-item-5a77f988.js} +1 -1
  112. package/dist/esm/post-breadcrumb-item.entry.js +2 -2
  113. package/dist/esm/post-card-control-5be9c80a.js +270 -0
  114. package/dist/esm/post-card-control.entry.js +2 -2
  115. package/dist/esm/post-closebutton_10.entry.js +2 -2
  116. package/dist/esm/{post-collapsible-trigger-7b3d0fd3.js → post-collapsible-trigger-43fbbf03.js} +1 -1
  117. package/dist/esm/post-collapsible_2.entry.js +2 -2
  118. package/dist/esm/post-components.js +1 -1
  119. package/dist/esm/{post-language-option-05f53f6f.js → post-language-option-f41240c3.js} +2 -2
  120. package/dist/esm/post-language-option.entry.js +2 -2
  121. package/dist/esm/{post-megadropdown-trigger-3112a42b.js → post-megadropdown-trigger-813b5140.js} +31 -36
  122. package/dist/esm/{post-menu-05396ff7.js → post-menu-62c3e49a.js} +2 -2
  123. package/dist/esm/{post-menu-item-bbbb6a7e.js → post-menu-item-f63a1521.js} +2 -2
  124. package/dist/esm/post-menu-item.entry.js +2 -2
  125. package/dist/esm/{post-menu-trigger-f9f4d299.js → post-menu-trigger-b84f728d.js} +2 -2
  126. package/dist/esm/post-menu-trigger.entry.js +2 -2
  127. package/dist/esm/post-menu.entry.js +2 -2
  128. package/dist/esm/{post-popover-1ae328eb.js → post-popover-abae1f3a.js} +2 -2
  129. package/dist/esm/post-popover.entry.js +2 -2
  130. package/dist/esm/{post-rating-75171e3a.js → post-rating-b963d4f2.js} +2 -2
  131. package/dist/esm/post-rating.entry.js +2 -2
  132. package/dist/esm/{post-tab-header-d4d40b0e.js → post-tab-header-c16feb72.js} +2 -2
  133. package/dist/esm/post-tab-header.entry.js +2 -2
  134. package/dist/esm/{post-tab-panel-79b42d3e.js → post-tab-panel-cb02df49.js} +2 -2
  135. package/dist/esm/post-tab-panel.entry.js +2 -2
  136. package/dist/esm/{post-tabs-4d880ed8.js → post-tabs-81085d7b.js} +2 -2
  137. package/dist/esm/post-tabs.entry.js +2 -2
  138. package/dist/esm/{post-tag-bf91d0a7.js → post-tag-103bfff5.js} +2 -2
  139. package/dist/esm/post-tag.entry.js +2 -2
  140. package/dist/esm/post-togglebutton-0e714838.js +26 -0
  141. package/dist/esm/post-togglebutton.entry.js +3 -0
  142. package/dist/esm/{post-tooltip-7aa14f94.js → post-tooltip-2c5ff736.js} +28 -16
  143. package/dist/esm/post-tooltip.entry.js +2 -2
  144. package/dist/post-components/index.esm.js +1 -1
  145. package/dist/post-components/p-06980a04.js +1 -0
  146. package/dist/post-components/p-0af7dfbb.js +1 -0
  147. package/dist/post-components/{p-314c1090.js → p-0f699dbc.js} +1 -1
  148. package/dist/post-components/p-12262945.entry.js +1 -0
  149. package/dist/post-components/p-2504dace.entry.js +1 -0
  150. package/dist/post-components/p-27343d32.entry.js +1 -0
  151. package/dist/post-components/{p-c6ac2e45.js → p-2a456317.js} +1 -1
  152. package/dist/post-components/{p-b8d230eb.js → p-2c3980d2.js} +1 -1
  153. package/dist/post-components/{p-4cb59994.js → p-31d38040.js} +1 -1
  154. package/dist/post-components/{p-7175208c.entry.js → p-339e000e.entry.js} +1 -1
  155. package/dist/post-components/p-3b325360.entry.js +1 -0
  156. package/dist/post-components/{p-9d94bf34.js → p-3e65ba47.js} +1 -1
  157. package/dist/post-components/p-3f417208.entry.js +1 -0
  158. package/dist/post-components/p-4922deaf.entry.js +1 -0
  159. package/dist/post-components/p-6c7546b8.entry.js +1 -0
  160. package/dist/post-components/{p-4cca12fe.js → p-6f56a13d.js} +3 -3
  161. package/dist/post-components/p-7eee2b6a.js +1 -0
  162. package/dist/post-components/{p-3b3b57d0.entry.js → p-816623f0.entry.js} +1 -1
  163. package/dist/post-components/p-83cd3885.entry.js +1 -0
  164. package/dist/post-components/{p-4ac02dc1.js → p-8b6f7f04.js} +1 -1
  165. package/dist/post-components/{p-4221fd16.js → p-9abe554b.js} +1 -1
  166. package/dist/post-components/p-9ea6103e.entry.js +1 -0
  167. package/dist/post-components/p-a0a7c2c1.entry.js +1 -0
  168. package/dist/post-components/p-abf9ffdc.entry.js +1 -0
  169. package/dist/post-components/p-b4a2c7b7.entry.js +1 -0
  170. package/dist/post-components/{p-ed12b51d.js → p-b7ef401f.js} +1 -1
  171. package/dist/post-components/p-b8a9cf2d.js +1 -0
  172. package/dist/post-components/{p-cf298c46.js → p-bb103905.js} +1 -1
  173. package/dist/post-components/{p-d7c37aca.js → p-c819933c.js} +1 -1
  174. package/dist/post-components/p-ccd8a221.entry.js +1 -0
  175. package/dist/post-components/p-cfc1727f.entry.js +1 -0
  176. package/dist/post-components/{p-cd06fab9.js → p-d4465c2b.js} +1 -1
  177. package/dist/post-components/{p-476a6342.js → p-d4cef624.js} +1 -1
  178. package/dist/post-components/p-da449573.js +1 -0
  179. package/dist/post-components/p-df5bdda5.entry.js +1 -0
  180. package/dist/post-components/{p-7a887455.js → p-ed834dde.js} +1 -1
  181. package/dist/post-components/p-f1416918.entry.js +1 -0
  182. package/dist/post-components/p-f171b18b.entry.js +1 -0
  183. package/dist/post-components/p-f4dbd35f.entry.js +1 -0
  184. package/dist/post-components/p-f6b44820.js +1 -0
  185. package/dist/post-components/{p-71eb2dc7.js → p-fa7af203.js} +1 -1
  186. package/dist/post-components/post-components.esm.js +1 -1
  187. package/dist/types/components/post-icon/post-icon.d.ts +2 -5
  188. package/dist/types/components/post-togglebutton/post-togglebutton.d.ts +13 -0
  189. package/dist/types/components.d.ts +21 -0
  190. package/dist/types/index.d.ts +1 -0
  191. package/loaders/index.d.ts +2 -0
  192. package/loaders/index.js +1 -0
  193. package/loaders/package.js +1 -1
  194. package/loaders/post-card-control.js +1 -1
  195. package/loaders/post-header.js +1 -1
  196. package/loaders/post-icon2.js +22 -29
  197. package/loaders/post-language-option.js +1 -1
  198. package/loaders/post-list-item.js +1 -1
  199. package/loaders/post-list.js +1 -1
  200. package/loaders/post-logo.js +1 -1
  201. package/loaders/post-mainnavigation.js +1 -1
  202. package/loaders/post-megadropdown-trigger.js +1 -1
  203. package/loaders/post-megadropdown.js +1 -1
  204. package/loaders/post-menu-item.js +1 -1
  205. package/loaders/post-menu-trigger.js +1 -1
  206. package/loaders/post-menu.js +1 -1
  207. package/loaders/post-popover.js +1 -1
  208. package/loaders/post-popovercontainer2.js +2 -2
  209. package/loaders/post-rating.js +1 -1
  210. package/loaders/post-tab-header.js +1 -1
  211. package/loaders/post-tab-panel.js +1 -1
  212. package/loaders/post-tabs.js +1 -1
  213. package/loaders/post-tag.js +1 -1
  214. package/loaders/post-togglebutton.d.ts +11 -0
  215. package/loaders/post-togglebutton.js +46 -0
  216. package/loaders/post-tooltip.js +27 -15
  217. package/package.json +3 -3
  218. package/dist/cjs/post-card-control-7d3c5545.js +0 -272
  219. package/dist/esm/package-c65b0409.js +0 -3
  220. package/dist/esm/post-card-control-017fb9b2.js +0 -270
  221. package/dist/post-components/p-34e5b9da.entry.js +0 -1
  222. package/dist/post-components/p-3899ed87.js +0 -1
  223. package/dist/post-components/p-470eb29c.js +0 -1
  224. package/dist/post-components/p-499f3c12.entry.js +0 -1
  225. package/dist/post-components/p-56bd7eb7.entry.js +0 -1
  226. package/dist/post-components/p-61b27b51.entry.js +0 -1
  227. package/dist/post-components/p-6e37b9bf.entry.js +0 -1
  228. package/dist/post-components/p-7391daa3.entry.js +0 -1
  229. package/dist/post-components/p-73a5b344.js +0 -1
  230. package/dist/post-components/p-7a995b7e.entry.js +0 -1
  231. package/dist/post-components/p-888ab913.entry.js +0 -1
  232. package/dist/post-components/p-8927a8e4.entry.js +0 -1
  233. package/dist/post-components/p-8fb11b22.entry.js +0 -1
  234. package/dist/post-components/p-916ec6d5.entry.js +0 -1
  235. package/dist/post-components/p-98d8ba01.js +0 -1
  236. package/dist/post-components/p-a1a1b679.entry.js +0 -1
  237. package/dist/post-components/p-a87d8337.entry.js +0 -1
  238. package/dist/post-components/p-ab0556af.entry.js +0 -1
  239. package/dist/post-components/p-c94a2ae1.entry.js +0 -1
  240. package/dist/post-components/p-d2938e9a.entry.js +0 -1
  241. package/dist/post-components/p-d6ac46af.js +0 -1
  242. package/dist/post-components/p-dddc70f6.entry.js +0 -1
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../dist/types/components";
2
+
3
+ interface PostTogglebutton extends Components.PostTogglebutton, HTMLElement {}
4
+ export const PostTogglebutton: {
5
+ prototype: PostTogglebutton;
6
+ new (): PostTogglebutton;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,46 @@
1
+ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
+ import { v as version } from './package.js';
3
+
4
+ const postTogglebuttonCss = ":host{cursor:pointer}";
5
+ const PostTogglebuttonStyle0 = postTogglebuttonCss;
6
+
7
+ const PostTogglebutton$1 = /*@__PURE__*/ proxyCustomElement(class PostTogglebutton extends HTMLElement {
8
+ constructor() {
9
+ super();
10
+ this.__registerHost();
11
+ this.__attachShadow();
12
+ this.handleClick = () => {
13
+ this.toggled = !this.toggled;
14
+ };
15
+ this.handleKeydown = (event) => {
16
+ if (event.key === 'Enter') {
17
+ this.toggled = !this.toggled;
18
+ }
19
+ };
20
+ this.toggled = false;
21
+ }
22
+ render() {
23
+ return (h(Host, { key: '253ca4026764e8d2c0979341a617fffb6d0d2e8e', slot: "post-togglebutton", tabindex: "0", "data-version": version, role: "button", "aria-pressed": this.toggled.toString(), onClick: this.handleClick, onKeyDown: this.handleKeydown }, h("span", { key: 'e8c7c7492986993ca1ec6c38743555030b068dbb', hidden: this.toggled }, h("slot", { key: 'd012a64cf1da8acc149ad4c5929cfe3fa31619a3', name: "untoggled" })), h("span", { key: '6603b12b05870348e979a9283ac4a17f15a217c6', hidden: !this.toggled }, h("slot", { key: '1306cb988d645ca297fb32d8b743ae65abfe644b', name: "toggled" }))));
24
+ }
25
+ static get style() { return PostTogglebuttonStyle0; }
26
+ }, [1, "post-togglebutton", {
27
+ "toggled": [1540]
28
+ }]);
29
+ function defineCustomElement$1() {
30
+ if (typeof customElements === "undefined") {
31
+ return;
32
+ }
33
+ const components = ["post-togglebutton"];
34
+ components.forEach(tagName => { switch (tagName) {
35
+ case "post-togglebutton":
36
+ if (!customElements.get(tagName)) {
37
+ customElements.define(tagName, PostTogglebutton$1);
38
+ }
39
+ break;
40
+ } });
41
+ }
42
+
43
+ const PostTogglebutton = PostTogglebutton$1;
44
+ const defineCustomElement = defineCustomElement$1;
45
+
46
+ export { PostTogglebutton, defineCustomElement };
@@ -4,10 +4,6 @@ import { g as getAttributeObserver } from './attribute-observer.js';
4
4
  import { c as checkEmptyOrType } from './index2.js';
5
5
  import { d as defineCustomElement$2 } from './post-popovercontainer2.js';
6
6
 
7
- function timeout(delay) {
8
- return new Promise(resolve => setTimeout(resolve, delay));
9
- }
10
-
11
7
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
12
8
 
13
9
  function getDefaultExportFromCjs (x) {
@@ -4791,6 +4787,8 @@ let tooltipInstances = 0;
4791
4787
  let hideTooltipTimeout = null;
4792
4788
  const tooltipTargetAttribute = 'data-tooltip-target';
4793
4789
  const tooltipTargetAttributeSelector = `[${tooltipTargetAttribute}]`;
4790
+ let globalCurrentTarget;
4791
+ let tooltipTimeout = null;
4794
4792
  /**
4795
4793
  * Global event listener to show tooltips. This is globalized so that triggers that are rendered
4796
4794
  * async will still work without the need to set listeners on the element itself
@@ -4803,8 +4801,11 @@ const tooltipTargetAttributeSelector = `[${tooltipTargetAttribute}]`;
4803
4801
  */
4804
4802
  const globalInterestHandler = (e) => {
4805
4803
  const targetElement = e.target.closest(tooltipTargetAttributeSelector);
4806
- if (!targetElement || !('getAttribute' in targetElement))
4804
+ globalCurrentTarget = targetElement;
4805
+ if (!targetElement || !('getAttribute' in targetElement)) {
4806
+ clearTimeout(tooltipTimeout);
4807
4807
  return;
4808
+ }
4808
4809
  const tooltipTarget = targetElement.getAttribute(tooltipTargetAttribute);
4809
4810
  if (!tooltipTarget || tooltipTarget === '')
4810
4811
  return;
@@ -4931,18 +4932,29 @@ const PostTooltip$1 = /*@__PURE__*/ proxyCustomElement(class PostTooltip extends
4931
4932
  * @param triggeredByFocus A boolean indicating if the tooltip was triggered by a focus event.
4932
4933
  */
4933
4934
  async show(target, triggeredByFocus = false) {
4934
- if (this.delayed)
4935
- await timeout(OPEN_DELAY);
4936
- // Determine if the tooltip was opened by a focus event
4937
- this.wasOpenedByFocus = triggeredByFocus;
4938
- // Disable pointer events if triggered by focus, otherwise enable them
4939
- if (this.wasOpenedByFocus) {
4940
- this.host.style.pointerEvents = 'none';
4935
+ const showTooltip = () => {
4936
+ // If focus or pointer event is not on the button anymore, don't show the tooltip
4937
+ if (globalCurrentTarget !== target)
4938
+ return;
4939
+ // Determine if the tooltip was opened by a focus event
4940
+ this.wasOpenedByFocus = triggeredByFocus;
4941
+ // Disable pointer events if triggered by focus, otherwise enable them
4942
+ if (this.wasOpenedByFocus) {
4943
+ this.host.style.pointerEvents = 'none';
4944
+ }
4945
+ else {
4946
+ this.host.style.pointerEvents = 'auto';
4947
+ }
4948
+ this.popoverRef.show(target);
4949
+ };
4950
+ if (this.delayed) {
4951
+ tooltipTimeout = setTimeout(() => {
4952
+ showTooltip();
4953
+ }, OPEN_DELAY);
4941
4954
  }
4942
4955
  else {
4943
- this.host.style.pointerEvents = 'auto';
4956
+ showTooltip();
4944
4957
  }
4945
- this.popoverRef.show(target);
4946
4958
  }
4947
4959
  /**
4948
4960
  * Programmatically hide this tooltip
@@ -4977,7 +4989,7 @@ const PostTooltip$1 = /*@__PURE__*/ proxyCustomElement(class PostTooltip extends
4977
4989
  }
4978
4990
  render() {
4979
4991
  const popoverClass = `${this.arrow ? ' has-arrow' : ''}`;
4980
- return (h(Host, { key: '8e2bd1f11a44a0d39ad797f12b880338d59ea006', "data-version": version$1, role: "tooltip", onPointerOver: this.handleInterest, onPointerOut: this.handleInterestLost, onFocusIn: this.handleInterest, onFocusOut: this.handleInterestLost }, h("post-popovercontainer", { key: 'ff4fdbf72ca4b95d5f4e925fedbfbcf7e281410f', class: popoverClass, arrow: this.arrow, placement: this.placement, ref: (el) => (this.popoverRef = el) }, h("slot", { key: '770a98cff11b963ec37559683a27a216250e8bde' }))));
4992
+ return (h(Host, { key: '8c14096295ee459a3a727e361eaacf0892eb1824', "data-version": version$1, role: "tooltip", onPointerOver: this.handleInterest, onPointerOut: this.handleInterestLost, onFocusIn: this.handleInterest, onFocusOut: this.handleInterestLost }, h("post-popovercontainer", { key: '65138a845ec05bd830e6534519ac4df7bb00067d', class: popoverClass, arrow: this.arrow, placement: this.placement, ref: (el) => (this.popoverRef = el) }, h("slot", { key: '5296d0864df7d07b498924a40a475ff7c94be6b8' }))));
4981
4993
  }
4982
4994
  get host() { return this; }
4983
4995
  static get watchers() { return {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@swisspost/design-system-components",
3
- "version": "9.0.0-next.6",
3
+ "version": "9.0.0-next.7",
4
4
  "description": "A collection of web components built with Stencil JS for the Swiss Post Design System.",
5
5
  "license": "Apache-2.0",
6
6
  "main": "dist/index.cjs.js",
@@ -26,7 +26,7 @@
26
26
  "dependencies": {
27
27
  "@floating-ui/dom": "1.6.8",
28
28
  "@oddbird/popover-polyfill": "0.3.7",
29
- "@swisspost/design-system-styles": "9.0.0-next.6",
29
+ "@swisspost/design-system-styles": "9.0.0-next.7",
30
30
  "ally.js": "1.4.1",
31
31
  "long-press-event": "2.5.0"
32
32
  },
@@ -66,7 +66,7 @@
66
66
  "scripts": {
67
67
  "dev": "stencil build --dev --port 9200 --serve --watch --docs --docs-readme",
68
68
  "start": "stencil build --dev --watch --docs --docs-readme",
69
- "build": "stencil build --docs-readme",
69
+ "build": "rimraf dist && stencil build --docs-readme",
70
70
  "clean": "rimraf www dist loader loaders",
71
71
  "test": "pnpm run unit",
72
72
  "unit": "stencil test --spec",
@@ -1,272 +0,0 @@
1
- 'use strict';
2
-
3
- const index = require('./index-e1f32cce.js');
4
- const checkOneOf = require('./check-one-of-f4f5d0c0.js');
5
- const checkNonEmpty = require('./check-non-empty-eeaa8f77.js');
6
- const _package = require('./package-81d89808.js');
7
-
8
- const postCardControlCss = "/*!\n * Copyright 2021 by Swiss Post, Information Technology\n */.form-check{display:flex;flex-wrap:wrap;align-items:flex-start;width:-moz-fit-content;width:fit-content;border-radius:var(--post-device-border-radius-focus)}.form-check-inline{display:inline-flex;vertical-align:top}fieldset>.form-check-inline:not(:last-of-type){margin-right:1.5rem}.form-check:has(>input:not(:only-child)){outline-offset:var(--post-device-spacing-padding-2) !important;outline:var(--post-scheme-color-interactive-focus-stroke) none var(--post-device-border-width-focus) !important}.form-check:has(>input:not(:only-child)):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.form-check:has(>input:not(:only-child)):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){.form-check:has(>input:not(:only-child)):is(:focus-visible,:focus-within,.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.form-check:has(>input:not(:only-child)):is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}.form-check:has(>input:not(:only-child))>input{outline:none !important}.form-check:has(input[type=checkbox]):not(.form-switch){padding-block:var(--post-device-spacing-padding-block-19)}fieldset>.form-check:has(input[type=checkbox]):not(.form-switch):not(:last-of-type){margin-bottom:var(--post-device-spacing-gap-4)}.form-check:has(input[type=checkbox]):not(.form-switch)>input[type=checkbox]~label{padding-block:var(--post-device-spacing-padding-block-20);padding-inline-start:var(--post-device-spacing-gap-inline-12);color:var(--post-scheme-color-interactive-primary-enabled-fg1)}.form-check:has(input[type=checkbox]):not(.form-switch)>input[type=checkbox]:not([disabled])~label{cursor:pointer}.form-check:has(input[type=checkbox]):not(.form-switch)>input[type=checkbox]:not([disabled]):hover~label{color:var(--post-scheme-color-interactive-primary-hover-fg1)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.form-check:has(input[type=checkbox]):not(.form-switch)>input[type=checkbox]:not([disabled]):hover~label{color:Highlight}}.form-check:has(input[type=checkbox]):not(.form-switch)>input[type=checkbox][disabled]~label{color:var(--post-scheme-color-interactive-primary-disabled-fg1)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.form-check:has(input[type=checkbox]):not(.form-switch)>input[type=checkbox][disabled]~label{color:GrayText}}.form-check.form-switch>input[type=checkbox]~label{color:var(--post-scheme-color-interactive-primary-enabled-fg1)}.form-check.form-switch>input[type=checkbox]:not([disabled])~label{cursor:pointer}.form-check.form-switch>input[type=checkbox]:not([disabled]):hover~label{color:var(--post-scheme-color-interactive-primary-hover-bg2)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.form-check.form-switch>input[type=checkbox]:not([disabled]):hover~label{color:Highlight}}.form-check.form-switch>input[type=checkbox][disabled]~label{color:var(--post-scheme-color-interactive-primary-disabled-bg3)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.form-check.form-switch>input[type=checkbox][disabled]~label{color:GrayText}}.form-check:has(input[type=radio]){padding-block:var(--post-device-spacing-padding-block-19)}fieldset>.form-check:has(input[type=radio]):not(:last-of-type){margin-bottom:var(--post-device-spacing-gap-4)}.form-check:has(input[type=radio])>input[type=radio]~label{padding-block:var(--post-device-spacing-padding-block-20);padding-inline-start:var(--post-device-spacing-gap-inline-12);color:var(--post-scheme-color-interactive-primary-enabled-fg1)}.form-check:has(input[type=radio])>input[type=radio]:not([disabled])~label{cursor:pointer}.form-check:has(input[type=radio])>input[type=radio]:not([disabled]):hover~label{color:var(--post-scheme-color-interactive-primary-hover-fg1)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.form-check:has(input[type=radio])>input[type=radio]:not([disabled]):hover~label{color:Highlight}}.form-check:has(input[type=radio])>input[type=radio][disabled]~label{color:var(--post-scheme-color-interactive-primary-disabled-fg1)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.form-check:has(input[type=radio])>input[type=radio][disabled]~label{color:GrayText}}.form-check>label{transition:color 250ms cubic-bezier(0.4, 0, 0.2, 1);flex:1}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.form-check>label{transition:none}}:where(.form-check>input[type=checkbox]){outline-offset:var(--post-device-spacing-padding-2) !important;outline:var(--post-scheme-color-interactive-focus-stroke) none var(--post-device-border-width-focus) !important}:where(.form-check>input[type=checkbox]):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:where(.form-check>input[type=checkbox]):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){:where(.form-check>input[type=checkbox]):is(:focus-visible,:focus-within,.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:where(.form-check>input[type=checkbox]):is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}.form-check:not(.form-switch):has(input[type=checkbox])>input{appearance:none;flex:none;display:inline-flex;margin:var(--post-device-spacing-padding-1);margin-block:calc(var(--post-device-spacing-padding-1) + var(--post-device-spacing-padding-block-18));width:var(--post-device-sizing-interactive-icon-size);height:var(--post-device-sizing-interactive-icon-size);background-color:var(--post-scheme-color-interactive-primary-enabled-bg1);border:var(--post-device-border-width-default) var(--post-core-border-style-solid) var(--post-scheme-color-interactive-primary-enabled-stroke);border-radius:var(--post-core-dimension-2);color:var(--post-scheme-color-interactive-primary-enabled-fg1);vertical-align:top;transition:background-color 250ms cubic-bezier(0.4, 0, 0.2, 1),border-color 250ms cubic-bezier(0.4, 0, 0.2, 1),color 250ms cubic-bezier(0.4, 0, 0.2, 1),box-shadow 250ms cubic-bezier(0.4, 0, 0.2, 1)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.form-check:not(.form-switch):has(input[type=checkbox])>input{background-color:Field;border-color:FieldText;color:FieldText}}.form-check:not(.form-switch):has(input[type=checkbox])>input:not([disabled]){cursor:pointer}.form-check:not(.form-switch):has(input[type=checkbox])>input::after{display:block;content:\"\";width:100%;height:100%;-webkit-mask-size:var(--post-device-sizing-interactive-icon-size);mask-size:var(--post-device-sizing-interactive-icon-size);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center}.form-check:not(.form-switch):has(input[type=checkbox])>input:checked::after,.form-check:not(.form-switch):has(input[type=checkbox])>input:indeterminate::after{background-color:currentColor}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.form-check:not(.form-switch):has(input[type=checkbox])>input:checked::after,.form-check:not(.form-switch):has(input[type=checkbox])>input:indeterminate::after{background-color:FieldText}}.form-check:not(.form-switch):has(input[type=checkbox])>input:not([disabled]):hover{background-color:var(--post-scheme-color-interactive-primary-hover-bg);border-color:var(--post-scheme-color-interactive-primary-hover-stroke);color:var(--post-scheme-color-interactive-primary-hover-fg1)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.form-check:not(.form-switch):has(input[type=checkbox])>input:not([disabled]):hover{background-color:Field;border-color:Highlight}.form-check:not(.form-switch):has(input[type=checkbox])>input:not([disabled]):hover:checked::after,.form-check:not(.form-switch):has(input[type=checkbox])>input:not([disabled]):hover:indeterminate::after{background-color:Highlight}}.form-check:not(.form-switch):has(input[type=checkbox])>input:checked::after{-webkit-mask-image:url(\"data:image/svg+xml,<svg viewBox='0 0 16 16' xmlns='http://www.w3.org/2000/svg'><path d='M7.51712 12.1332L4.30712 8.69325C4.02712 8.39325 4.03712 7.91325 4.34712 7.63325C4.64712 7.35325 5.12712 7.36325 5.40712 7.67325L7.31712 9.72325L10.7171 4.57325C10.9471 4.22325 11.4071 4.13325 11.7571 4.36325C12.1071 4.59325 12.1971 5.05325 11.9671 5.40325L7.51712 12.1332Z'/></svg>\");mask-image:url(\"data:image/svg+xml,<svg viewBox='0 0 16 16' xmlns='http://www.w3.org/2000/svg'><path d='M7.51712 12.1332L4.30712 8.69325C4.02712 8.39325 4.03712 7.91325 4.34712 7.63325C4.64712 7.35325 5.12712 7.36325 5.40712 7.67325L7.31712 9.72325L10.7171 4.57325C10.9471 4.22325 11.4071 4.13325 11.7571 4.36325C12.1071 4.59325 12.1971 5.05325 11.9671 5.40325L7.51712 12.1332Z'/></svg>\")}.form-check:not(.form-switch):has(input[type=checkbox])>input:indeterminate::after{-webkit-mask-image:url(\"data:image/svg+xml,<svg width='16' height='16' viewBox='0 0 16 16' xmlns='http://www.w3.org/2000/svg'><path d='M11.21 8.5H4.75C4.34 8.5 4 8.16 4 7.75C4 7.34 4.34 7 4.75 7H11.21C11.62 7 11.96 7.34 11.96 7.75C11.96 8.16 11.62 8.5 11.21 8.5Z'/></svg>\");mask-image:url(\"data:image/svg+xml,<svg width='16' height='16' viewBox='0 0 16 16' xmlns='http://www.w3.org/2000/svg'><path d='M11.21 8.5H4.75C4.34 8.5 4 8.16 4 7.75C4 7.34 4.34 7 4.75 7H11.21C11.62 7 11.96 7.34 11.96 7.75C11.96 8.16 11.62 8.5 11.21 8.5Z'/></svg>\")}.form-check:not(.form-switch):has(input[type=checkbox])>input[disabled]{background-color:var(--post-scheme-color-interactive-primary-disabled-bg);border:var(--post-device-border-width-default) var(--post-core-border-style-dash) var(--post-scheme-color-interactive-primary-disabled-stroke);color:var(--post-scheme-color-interactive-primary-disabled-fg1)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.form-check:not(.form-switch):has(input[type=checkbox])>input[disabled]{background-color:Field;border-color:GrayText}.form-check:not(.form-switch):has(input[type=checkbox])>input[disabled]:checked::after,.form-check:not(.form-switch):has(input[type=checkbox])>input[disabled]:indeterminate::after{background-color:GrayText}}:where(.form-check>input[type=radio]){outline-offset:var(--post-device-spacing-padding-2) !important;outline:var(--post-scheme-color-interactive-focus-stroke) none var(--post-device-border-width-focus) !important}:where(.form-check>input[type=radio]):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:where(.form-check>input[type=radio]):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){:where(.form-check>input[type=radio]):is(:focus-visible,:focus-within,.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:where(.form-check>input[type=radio]):is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}.form-check>input[type=radio]{appearance:none;flex:none;display:inline-flex;justify-content:center;align-items:center;margin-block:calc(var(--post-device-spacing-padding-1) + var(--post-device-spacing-padding-block-18));margin-inline:var(--post-device-spacing-padding-1);width:var(--post-device-sizing-interactive-icon-size);height:var(--post-device-sizing-interactive-icon-size);background-color:var(--post-scheme-color-interactive-primary-enabled-bg1);border:var(--post-device-border-width-default) var(--post-core-border-style-solid) var(--post-scheme-color-interactive-primary-enabled-stroke);border-radius:var(--post-device-border-radius-round);color:var(--post-scheme-color-interactive-primary-enabled-fg1);vertical-align:top;transition:background-color 250ms cubic-bezier(0.4, 0, 0.2, 1),border-color 250ms cubic-bezier(0.4, 0, 0.2, 1),color 250ms cubic-bezier(0.4, 0, 0.2, 1),box-shadow 250ms cubic-bezier(0.4, 0, 0.2, 1)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.form-check>input[type=radio]{background-color:Field;border-color:FieldText;color:FieldText;transition:none}}.form-check>input[type=radio]:not([disabled]){cursor:pointer}.form-check>input[type=radio]::after{display:block;content:\"\";width:var(--post-device-sizing-icon-3);height:var(--post-device-sizing-icon-3);border-radius:inherit}.form-check>input[type=radio]:checked::after{background-color:var(--post-scheme-color-interactive-primary-enabled-fg1)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.form-check>input[type=radio]:checked::after{background-color:FieldText}}.form-check>input[type=radio]:not([disabled]):hover{background-color:var(--post-scheme-color-interactive-primary-hover-bg);border-color:var(--post-scheme-color-interactive-primary-hover-stroke);color:var(--post-scheme-color-interactive-primary-hover-fg1)}.form-check>input[type=radio]:not([disabled]):hover:checked::after{background-color:var(--post-scheme-color-interactive-primary-hover-fg1)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.form-check>input[type=radio]:not([disabled]):hover{background-color:Field;border-color:Highlight}.form-check>input[type=radio]:not([disabled]):hover:checked::after{background-color:Highlight}}.form-check>input[type=radio][disabled]{background-color:var(--post-scheme-color-interactive-primary-disabled-bg);border:var(--post-device-border-width-default) var(--post-core-border-style-dash) var(--post-scheme-color-interactive-primary-disabled-stroke);color:var(--post-scheme-color-interactive-primary-disabled-fg1)}.form-check>input[type=radio][disabled]:checked::after{background-color:var(--post-scheme-color-interactive-primary-disabled-fg1)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.form-check>input[type=radio][disabled]{background-color:Field;border-color:GrayText}.form-check>input[type=radio][disabled]:checked::after{background-color:GrayText}}:host{--post-card-control-bg-context:.bg-yellow, .bg-white, .bg-light, .bg-gray, .bg-warning, .bg-info, .bg-success-background, .bg-warning-background, .bg-error-background, .bg-dark, .bg-black, .bg-primary, .bg-secondary, .bg-success, .bg-error;display:flex;width:100%}:host-context(fieldset):host(:not(:last-child)) .card-control{margin-bottom:1rem}.card-control{--post-card-control-border-color:hsl(0, 0%, 40%);--post-card-control-bg:#fff;--post-card-control-color:hsl(0, 0%, 20%);--post-card-control-input-border-color:hsl(0, 0%, 20%);--post-card-control-input-bg:#fff;flex-basis:100%;display:grid;grid-template:\"input label icon\" \"input content content\"/min-content auto min-content;align-items:center;gap:0 .5rem;margin:0;padding:1rem;background-color:var(--post-card-control-bg);border:2px solid var(--post-card-control-border-color);border-radius:4px;color:var(--post-card-control-color) !important;cursor:pointer}.card-control .card-control--input{grid-area:input;margin:.25rem 0;background-color:var(--post-card-control-input-bg) !important;border-color:var(--post-card-control-input-border-color) !important;color:var(--post-card-control-input-border-color) !important;cursor:inherit;transition:none;outline:none !important}.card-control .card-control--input:hover:not([disabled]),.card-control .card-control--input:hover:not([disabled])~label.form-check-label{color:var(--post-contrast-color);background-color:rgba(0,0,0,0)}.card-control .card-control--input:focus,.card-control .card-control--input:focus-visible{box-shadow:none}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.card-control .card-control--input::after{forced-color-adjust:none;border-color:rgba(0,0,0,0)}}.card-control .card-control--label{grid-area:label;margin:.25rem 0;padding:0 !important;color:inherit !important;pointer-events:none;transition:none}.card-control .card-control--label:not(:has(+.card-control--icon)){grid-area:1/label/1/icon}.card-control .card-control--description{grid-area:label;font-size:.75rem}.card-control .card-control--content{grid-area:content}.card-control .card-control--icon{grid-area:icon;width:2rem;height:2rem;pointer-events:none}.card-control .card-control--icon>slot>*{width:100%;height:100%}.card-control:not(.is-disabled).is-checked{--post-card-control-border-color:#000;--post-card-control-bg:#fc0}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.card-control:not(.is-disabled).is-checked{--post-card-control-border-color:FieldText;--post-card-control-bg:SelectedItem;--post-card-control-color:SelectedItemText;--post-card-control-input-border-color:SelectedItemText;--post-card-control-input-bg:SelectedItem}.card-control:not(.is-disabled).is-checked .card-control--input::after{background-color:var(--post-card-control-color) !important}}.card-control:not(.is-disabled).is-invalid{--post-card-control-border-color:#a51728;--post-card-control-color:#a51728;--post-card-control-input-border-color:#a51728}.card-control:not(.is-disabled):hover{--post-card-control-border-color:hsl(0, 0%, 20%);--post-card-control-bg:hsl(0, 0%, 40%);--post-card-control-color:#fff;--post-card-control-input-border-color:#000}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.card-control:not(.is-disabled):hover{--post-card-control-border-color:Highlight;--post-card-control-bg:Field;--post-card-control-color:FieldText;--post-card-control-input-border-color:Highlight;--post-card-control-input-bg:Field}.card-control:not(.is-disabled):hover .card-control--input::after{color:FieldText}}.card-control.is-focused:where(:has(.card-control--input:focus-visible)){outline-offset:2px;outline:2px solid #1976c8}.card-control.is-disabled{--post-card-control-border-color:hsl(0, 0%, 40%);--post-card-control-bg:transparent;--post-card-control-color:hsl(0, 0%, 40%);--post-card-control-input-border-color:hsl(0, 0%, 40%);--post-card-control-input-bg:transparent;border-style:dashed;cursor:default}.card-control.is-disabled .card-control--input{padding:2px;border-style:dashed}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.card-control{--post-card-control-border-color:FieldText;--post-card-control-bg:Field;--post-card-control-color:FieldText;--post-card-control-input-border-color:FieldText;--post-card-control-input-bg:Field;outline:2px solid Field;outline-offset:-4px}.card-control .card-control--input{outline:2px solid Field}.card-control .card-control--input[type]{background-color:Field !important}.card-control .card-control--input::after{border-color:Field !important}.card-control .card-control--label,.card-control .card-control--content{background-color:var(--post-card-control-bg) !important}.card-control:not(.is-disabled).is-checked{--post-card-control-border-color:FieldText;--post-card-control-bg:SelectedItem;--post-card-control-color:SelectedItemText;--post-card-control-input-border-color:FieldText}.card-control:not(.is-disabled).is-checked .card-control--input::after{background-color:FieldText !important}.card-control:not(.is-disabled):hover{--post-card-control-border-color:Highlight;--post-card-control-bg:Field;--post-card-control-color:FieldText;--post-card-control-input-border-color:Highlight}.card-control.is-disabled{--post-card-control-border-color:GrayText;--post-card-control-bg:Field;--post-card-control-color:FieldText;--post-card-control-input-border-color:GrayText;--post-card-control-input-bg:Field}.card-control.is-disabled .card-control--input{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%' height='100%' fill='none' stroke='GrayText' stroke-width='4px ' stroke-dasharray='2 1.5 4 1.5 4 1.5 4 1.5 2 3.5 4 1.5 4 1.5 4 1.5 2 3.5 4 1.5 4 1.5 4 1.5 2 3.5 4 1.5 4 1.5 4' pathLength='88' /%3e%3c/svg%3e\")}.card-control.is-disabled .card-control--input[type=radio]{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%' height='100%' rx='100' ry='100' fill='none' stroke='GrayText' stroke-width='4px ' stroke-dasharray='4 2' /%3e%3c/svg%3e\")}.card-control.is-disabled.is-checked{--post-card-control-bg:SelectedItem;--post-card-control-color:SelectedItemText;position:relative;background-color:Field}.card-control.is-disabled.is-checked::before{display:block;content:\"\";position:absolute;inset:2px;background-color:SelectedItem;z-index:1}.card-control.is-disabled.is-checked>*{position:relative;z-index:2}.card-control.is-disabled.is-checked .card-control--input::after{background-color:FieldText !important}}@media (forced-colors: active)and (forced-colors: active),(forced-colors: active)and (-ms-high-contrast: active),(forced-colors: active)and (-ms-high-contrast: white-on-black),(-ms-high-contrast: active)and (forced-colors: active),(-ms-high-contrast: active)and (-ms-high-contrast: active),(-ms-high-contrast: active)and (-ms-high-contrast: white-on-black),(-ms-high-contrast: white-on-black)and (forced-colors: active),(-ms-high-contrast: white-on-black)and (-ms-high-contrast: active),(-ms-high-contrast: white-on-black)and (-ms-high-contrast: white-on-black){.card-control{--post-card-control-border-color:GrayText;--post-card-control-color:GrayText;--post-card-control-input-border-color:GrayText}.card-control.is-checked{--post-card-control-input-bg:field;position:relative}.card-control.is-checked::before{display:block;content:\"\";position:absolute;inset:2px;border-radius:1px;background-color:SelectedItem}.card-control.is-checked>*{position:relative}.card-control.is-checked .card-control--input{outline:2px solid Field}}:host-context(:is(.bg-dark,.bg-black,.bg-primary,.bg-secondary,.bg-success,.bg-error)) .card-control{--post-card-control-border-color:#fff;--post-card-control-bg:transparent;--post-card-control-color:#fff;--post-card-control-input-border-color:#fff;--post-card-control-input-bg:transparent}:host-context(:is(.bg-dark,.bg-black,.bg-primary,.bg-secondary,.bg-success,.bg-error)) .card-control:not(.is-disabled).is-checked{--post-card-control-border-color:#fc0;--post-card-control-bg:#fc0;--post-card-control-color:hsl(0, 0%, 20%);--post-card-control-input-border-color:hsl(0, 0%, 20%);--post-card-control-input-bg:#fff}:host-context(:is(.bg-dark,.bg-black,.bg-primary,.bg-secondary,.bg-success,.bg-error)) .card-control:not(.is-disabled).is-invalid{--post-card-control-border-color:#a51728;--post-card-control-bg:#ffdade;--post-card-control-color:#a51728;--post-card-control-input-border-color:#a51728;--post-card-control-input-bg:#fff}:host-context(:is(.bg-dark,.bg-black,.bg-primary,.bg-secondary,.bg-success,.bg-error)) .card-control:not(.is-disabled).is-invalid:where(.is-checked){--post-card-control-bg:#fc0}:host-context(:is(.bg-dark,.bg-black,.bg-primary,.bg-secondary,.bg-success,.bg-error)) .card-control:not(.is-disabled):hover{--post-card-control-border-color:#000;--post-card-control-bg:hsl(0, 0%, 80%);--post-card-control-color:#000;--post-card-control-input-border-color:#000;--post-card-control-input-bg:#fff}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host-context(:is(.bg-dark,.bg-black,.bg-primary,.bg-secondary,.bg-success,.bg-error)) .card-control:not(.is-disabled):hover{--post-card-control-border-color:Highlight;--post-card-control-bg:Field;--post-card-control-color:FieldText;--post-card-control-input-border-color:Highlight;--post-card-control-input-bg:Field}}:host-context(:is(.bg-dark,.bg-black,.bg-primary,.bg-secondary,.bg-success,.bg-error)) .card-control.is-focused:where(:has(.card-control--input:focus-visible)){outline-color:#fff}:host-context(:is(.bg-dark,.bg-black,.bg-primary,.bg-secondary,.bg-success,.bg-error)) .card-control.is-disabled{--post-card-control-border-color:post.$white-alpha-80;--post-card-control-bg:transparent;--post-card-control-color:post.$white-alpha-80;--post-card-control-input-border-color:post.$white-alpha-80;--post-card-control-input-bg:transparent}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host-context(:is(.bg-dark,.bg-black,.bg-primary,.bg-secondary,.bg-success,.bg-error)) .card-control.is-disabled{--post-card-control-border-color:GrayText;--post-card-control-color:GrayText;--post-card-control-input-border-color:GrayText}:host-context(:is(.bg-dark,.bg-black,.bg-primary,.bg-secondary,.bg-success,.bg-error)) .card-control.is-disabled.is-checked{--post-card-control-input-bg:Field}}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host-context(:is(.bg-dark,.bg-black,.bg-primary,.bg-secondary,.bg-success,.bg-error)) .card-control{--post-card-control-border-color:FieldText;--post-card-control-bg:Field;--post-card-control-color:FieldText;--post-card-control-input-border-color:FieldText;--post-card-control-input-bg:Field}:host-context(:is(.bg-dark,.bg-black,.bg-primary,.bg-secondary,.bg-success,.bg-error)) .card-control:not(.is-disabled).is-checked{--post-card-control-border-color:FieldText;--post-card-control-bg:SelectedItem;--post-card-control-color:SelectedItemText;--post-card-control-input-border-color:FieldText}:host-context(:is(.bg-dark,.bg-black,.bg-primary,.bg-secondary,.bg-success,.bg-error)) .card-control:not(.is-disabled):hover{--post-card-control-border-color:Highlight;--post-card-control-bg:Field;--post-card-control-color:FieldText;--post-card-control-input-border-color:Highlight}:host-context(:is(.bg-dark,.bg-black,.bg-primary,.bg-secondary,.bg-success,.bg-error)) .card-control.is-disabled{--post-card-control-border-color:GrayText;--post-card-control-bg:Field;--post-card-control-color:FieldText;--post-card-control-input-border-color:GrayText;--post-card-control-input-bg:Field}:host-context(:is(.bg-dark,.bg-black,.bg-primary,.bg-secondary,.bg-success,.bg-error)) .card-control.is-disabled.is-checked{--post-card-control-bg:SelectedItem;--post-card-control-color:SelectedItemText}}:host(:not([data-context])){display:none}:host([data-context*=fieldset]:not(:last-child)) .card-control{margin-bottom:1rem}:host(:is([data-context*=\".bg-dark\"],[data-context*=\".bg-black\"],[data-context*=\".bg-primary\"],[data-context*=\".bg-secondary\"],[data-context*=\".bg-success\"],[data-context*=\".bg-error\"])) .card-control{--post-card-control-border-color:#fff;--post-card-control-bg:transparent;--post-card-control-color:#fff;--post-card-control-input-border-color:#fff;--post-card-control-input-bg:transparent}:host(:is([data-context*=\".bg-dark\"],[data-context*=\".bg-black\"],[data-context*=\".bg-primary\"],[data-context*=\".bg-secondary\"],[data-context*=\".bg-success\"],[data-context*=\".bg-error\"])) .card-control:not(.is-disabled).is-checked{--post-card-control-border-color:#fc0;--post-card-control-bg:#fc0;--post-card-control-color:hsl(0, 0%, 20%);--post-card-control-input-border-color:hsl(0, 0%, 20%);--post-card-control-input-bg:#fff}:host(:is([data-context*=\".bg-dark\"],[data-context*=\".bg-black\"],[data-context*=\".bg-primary\"],[data-context*=\".bg-secondary\"],[data-context*=\".bg-success\"],[data-context*=\".bg-error\"])) .card-control:not(.is-disabled).is-invalid{--post-card-control-border-color:#a51728;--post-card-control-bg:#ffdade;--post-card-control-color:#a51728;--post-card-control-input-border-color:#a51728;--post-card-control-input-bg:#fff}:host(:is([data-context*=\".bg-dark\"],[data-context*=\".bg-black\"],[data-context*=\".bg-primary\"],[data-context*=\".bg-secondary\"],[data-context*=\".bg-success\"],[data-context*=\".bg-error\"])) .card-control:not(.is-disabled).is-invalid:where(.is-checked){--post-card-control-bg:#fc0}:host(:is([data-context*=\".bg-dark\"],[data-context*=\".bg-black\"],[data-context*=\".bg-primary\"],[data-context*=\".bg-secondary\"],[data-context*=\".bg-success\"],[data-context*=\".bg-error\"])) .card-control:not(.is-disabled):hover{--post-card-control-border-color:#000;--post-card-control-bg:hsl(0, 0%, 80%);--post-card-control-color:#000;--post-card-control-input-border-color:#000;--post-card-control-input-bg:#fff}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host(:is([data-context*=\".bg-dark\"],[data-context*=\".bg-black\"],[data-context*=\".bg-primary\"],[data-context*=\".bg-secondary\"],[data-context*=\".bg-success\"],[data-context*=\".bg-error\"])) .card-control:not(.is-disabled):hover{--post-card-control-border-color:Highlight;--post-card-control-bg:Field;--post-card-control-color:FieldText;--post-card-control-input-border-color:Highlight;--post-card-control-input-bg:Field}}:host(:is([data-context*=\".bg-dark\"],[data-context*=\".bg-black\"],[data-context*=\".bg-primary\"],[data-context*=\".bg-secondary\"],[data-context*=\".bg-success\"],[data-context*=\".bg-error\"])) .card-control.is-focused:where(:has(.card-control--input:focus-visible)){outline-color:#fff}:host(:is([data-context*=\".bg-dark\"],[data-context*=\".bg-black\"],[data-context*=\".bg-primary\"],[data-context*=\".bg-secondary\"],[data-context*=\".bg-success\"],[data-context*=\".bg-error\"])) .card-control.is-disabled{--post-card-control-border-color:post.$white-alpha-80;--post-card-control-bg:transparent;--post-card-control-color:post.$white-alpha-80;--post-card-control-input-border-color:post.$white-alpha-80;--post-card-control-input-bg:transparent}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host(:is([data-context*=\".bg-dark\"],[data-context*=\".bg-black\"],[data-context*=\".bg-primary\"],[data-context*=\".bg-secondary\"],[data-context*=\".bg-success\"],[data-context*=\".bg-error\"])) .card-control.is-disabled{--post-card-control-border-color:GrayText;--post-card-control-color:GrayText;--post-card-control-input-border-color:GrayText}:host(:is([data-context*=\".bg-dark\"],[data-context*=\".bg-black\"],[data-context*=\".bg-primary\"],[data-context*=\".bg-secondary\"],[data-context*=\".bg-success\"],[data-context*=\".bg-error\"])) .card-control.is-disabled.is-checked{--post-card-control-input-bg:Field}}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host(:is([data-context*=\".bg-dark\"],[data-context*=\".bg-black\"],[data-context*=\".bg-primary\"],[data-context*=\".bg-secondary\"],[data-context*=\".bg-success\"],[data-context*=\".bg-error\"])) .card-control{--post-card-control-border-color:FieldText;--post-card-control-bg:Field;--post-card-control-color:FieldText;--post-card-control-input-border-color:FieldText;--post-card-control-input-bg:Field}:host(:is([data-context*=\".bg-dark\"],[data-context*=\".bg-black\"],[data-context*=\".bg-primary\"],[data-context*=\".bg-secondary\"],[data-context*=\".bg-success\"],[data-context*=\".bg-error\"])) .card-control:not(.is-disabled).is-checked{--post-card-control-border-color:FieldText;--post-card-control-bg:SelectedItem;--post-card-control-color:SelectedItemText;--post-card-control-input-border-color:FieldText}:host(:is([data-context*=\".bg-dark\"],[data-context*=\".bg-black\"],[data-context*=\".bg-primary\"],[data-context*=\".bg-secondary\"],[data-context*=\".bg-success\"],[data-context*=\".bg-error\"])) .card-control:not(.is-disabled):hover{--post-card-control-border-color:Highlight;--post-card-control-bg:Field;--post-card-control-color:FieldText;--post-card-control-input-border-color:Highlight}:host(:is([data-context*=\".bg-dark\"],[data-context*=\".bg-black\"],[data-context*=\".bg-primary\"],[data-context*=\".bg-secondary\"],[data-context*=\".bg-success\"],[data-context*=\".bg-error\"])) .card-control.is-disabled{--post-card-control-border-color:GrayText;--post-card-control-bg:Field;--post-card-control-color:FieldText;--post-card-control-input-border-color:GrayText;--post-card-control-input-bg:Field}:host(:is([data-context*=\".bg-dark\"],[data-context*=\".bg-black\"],[data-context*=\".bg-primary\"],[data-context*=\".bg-secondary\"],[data-context*=\".bg-success\"],[data-context*=\".bg-error\"])) .card-control.is-disabled.is-checked{--post-card-control-bg:SelectedItem;--post-card-control-color:SelectedItemText}}";
9
- const PostCardControlStyle0 = postCardControlCss;
10
-
11
- let cardControlIds = 0;
12
- const PostCardControl = class {
13
- /**
14
- * A public method to reset the controls `checked` and `validity` state.
15
- * The validity state is set to `null`, so it's neither valid nor invalid.
16
- */
17
- async reset() {
18
- this.validity = null;
19
- this.controlSetChecked(this.initialChecked);
20
- }
21
- /**
22
- * A hidden public method to reset the group controls `checked` state to `false`.
23
- */
24
- async groupReset() {
25
- if (this.disabled)
26
- this.control.checked = this.checked = false;
27
- this.controlSetChecked(false);
28
- }
29
- validateControlLabel(label = this.label) {
30
- checkNonEmpty.checkNonEmpty(label, 'The "post-card-control" element requires its "label" property to be set.');
31
- }
32
- validateControlType(type = this.type) {
33
- checkOneOf.checkOneOf(type, ['checkbox', 'radio'], 'The "post-card-control" element requires its "type" prop to be one of either "checkbox" or "radio".');
34
- }
35
- updateControlChecked(checked = this.checked) {
36
- this.controlSetChecked(checked);
37
- }
38
- updateControlDisabled() {
39
- this.controlSetChecked(this.checked);
40
- }
41
- constructor(hostRef) {
42
- index.registerInstance(this, hostRef);
43
- this.postInput = index.createEvent(this, "postInput", 7);
44
- this.postChange = index.createEvent(this, "postChange", 7);
45
- if (hostRef.$hostElement$["s-ei"]) {
46
- this.internals = hostRef.$hostElement$["s-ei"];
47
- }
48
- else {
49
- this.internals = hostRef.$hostElement$.attachInternals();
50
- hostRef.$hostElement$["s-ei"] = this.internals;
51
- }
52
- this.EVENT_MAP = {
53
- input: 'postInput',
54
- change: 'postChange',
55
- };
56
- this.KEYCODES = {
57
- SPACE: 'Space',
58
- LEFT: 'ArrowLeft',
59
- UP: 'ArrowUp',
60
- RIGHT: 'ArrowRight',
61
- DOWN: 'ArrowDown',
62
- };
63
- this.group = {
64
- hosts: [],
65
- members: [],
66
- first: null,
67
- last: null,
68
- checked: null,
69
- focused: null,
70
- };
71
- this.controlId = `PostCardControl_${cardControlIds++}`;
72
- this.focused = false;
73
- this.label = undefined;
74
- this.description = null;
75
- this.type = undefined;
76
- this.name = null;
77
- this.value = null;
78
- this.checked = false;
79
- this.disabled = false;
80
- this.validity = null;
81
- this.icon = null;
82
- this.cardClickHandler = this.cardClickHandler.bind(this);
83
- this.controlClickHandler = this.controlClickHandler.bind(this);
84
- this.controlChangeHandler = this.controlChangeHandler.bind(this);
85
- this.controlFocusHandler = this.controlFocusHandler.bind(this);
86
- this.controlKeyDownHandler = this.controlKeyDownHandler.bind(this);
87
- }
88
- cardClickHandler(e) {
89
- e.stopPropagation();
90
- // if this was not the clicked element anyway, trigger click on control to change it
91
- if (e.target !== this.control)
92
- this.control.click();
93
- }
94
- controlClickHandler(e) {
95
- e.stopPropagation();
96
- // if control is disabled do nothing
97
- // else control value will fire a change event, which is handled in the controlChangeHandler method
98
- if (this.disabled)
99
- e.preventDefault();
100
- }
101
- controlChangeHandler(e) {
102
- e.stopPropagation();
103
- this.groupCollectMembers();
104
- this.controlSetChecked(this.control.checked, e);
105
- this.groupSetChecked(this.control, e);
106
- }
107
- controlFocusHandler() {
108
- this.focused = this.host === document.activeElement;
109
- }
110
- // https://googlechromelabs.github.io/howto-components/howto-radio-group/
111
- controlKeyDownHandler(e) {
112
- if (this.type === 'radio') {
113
- e.stopPropagation();
114
- if (Object.values(this.KEYCODES).includes(e.code))
115
- e.preventDefault();
116
- this.groupCollectMembers();
117
- switch (e.code) {
118
- case this.KEYCODES.UP:
119
- case this.KEYCODES.LEFT:
120
- this.groupSetChecked(this.groupGetPrev(), e);
121
- break;
122
- case this.KEYCODES.DOWN:
123
- case this.KEYCODES.RIGHT:
124
- this.groupSetChecked(this.groupGetNext(), e);
125
- break;
126
- case this.KEYCODES.SPACE:
127
- this.groupSetChecked(this.control, e);
128
- break;
129
- }
130
- }
131
- }
132
- controlSetChecked(checked, e) {
133
- if (!this.control)
134
- return;
135
- if (this.disabled) {
136
- this.internals.setFormValue(null);
137
- }
138
- else {
139
- this.control.checked = this.checked = checked;
140
- this.internals.setFormValue(this.checked ? this.control.value : null);
141
- if (e) {
142
- const isCheckbox = this.type === 'checkbox';
143
- const isRadioAndChecked = this.type === 'radio' && this.checked;
144
- // https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/checkbox
145
- // https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/radio
146
- // if an event parameter is given and a native control would fire an event, emit the corresponding event to the light dom
147
- if (isCheckbox || isRadioAndChecked)
148
- this[this.EVENT_MAP[e.type]].emit({ state: this.checked, value: this.value });
149
- }
150
- }
151
- }
152
- groupCollectMembers() {
153
- var _a, _b;
154
- if (this.type === 'radio' && this.name) {
155
- this.group.hosts = Array.from(document.querySelectorAll(`post-card-control[type="radio"][name="${this.name}"]`));
156
- this.group.members = this.group.hosts
157
- .map(m => m.shadowRoot.querySelector('input[type="radio"]'))
158
- .filter(m => m !== null);
159
- if (this.group.members.length > 1) {
160
- this.group.first = this.group.members[0];
161
- this.group.last = this.group.members[this.group.members.length - 1];
162
- this.group.checked = (_a = this.group.members.find(m => m.checked)) !== null && _a !== void 0 ? _a : null;
163
- this.group.focused =
164
- (_b = this.group.members.find(m => m.getRootNode().host === document.activeElement)) !== null && _b !== void 0 ? _b : this.group.first;
165
- const focusableMember = this.group.checked || this.group.focused || this.group.first;
166
- this.group.members.forEach(m => {
167
- m.tabIndex = m === focusableMember ? 0 : -1;
168
- });
169
- }
170
- }
171
- }
172
- groupGetPrev() {
173
- var _a;
174
- const focusedIndex = this.group.members.findIndex(m => m.id === this.group.focused.id);
175
- return (_a = this.group.members.find((_m, i) => i === focusedIndex - 1)) !== null && _a !== void 0 ? _a : this.group.last;
176
- }
177
- groupGetNext() {
178
- var _a;
179
- const focusedIndex = this.group.members.findIndex(m => m.id === this.group.focused.id);
180
- return (_a = this.group.members.find((_m, i) => i === focusedIndex + 1)) !== null && _a !== void 0 ? _a : this.group.first;
181
- }
182
- groupSetChecked(newChecked, e) {
183
- if (this.group.members.length > 1) {
184
- const isKeyboardEvent = e.type === 'keydown';
185
- const newIsAriaDisabled = newChecked.hasAttribute('aria-disabled');
186
- const newIndex = this.group.members.findIndex(m => m === newChecked);
187
- if (isKeyboardEvent)
188
- newChecked.focus();
189
- // if new is disabled, do not reset/set anything
190
- if (!newIsAriaDisabled) {
191
- // reset all group members but the newChecked
192
- this.group.hosts
193
- .filter((_h, i) => i !== newIndex)
194
- .forEach(h => {
195
- h.groupReset();
196
- });
197
- // if method was called by keyboard event, select newChecked
198
- // else this has already been done by clicking on the newChecked element already
199
- if (isKeyboardEvent)
200
- newChecked.click();
201
- }
202
- }
203
- }
204
- // remove as soon as all browser support :host-context()
205
- // https://caniuse.com/?search=%3Ahost-context()
206
- setHostContext() {
207
- let bgContext;
208
- const possibleBgContexts = window
209
- .getComputedStyle(this.host)
210
- .getPropertyValue('--post-card-control-bg-context')
211
- .split(', ');
212
- let formContext;
213
- const possibleFromContexts = ['fieldset'];
214
- let element = this.host;
215
- while (element && (!bgContext || !formContext)) {
216
- bgContext = bgContext !== null && bgContext !== void 0 ? bgContext : possibleBgContexts.find(selector => element.matches(selector));
217
- formContext = formContext !== null && formContext !== void 0 ? formContext : possibleFromContexts.find(selector => element.matches(selector));
218
- element = element.parentElement;
219
- }
220
- const hostContext = [bgContext, formContext].filter(context => !!context).join(' ');
221
- this.host.setAttribute('data-context', hostContext);
222
- }
223
- connectedCallback() {
224
- this.initialChecked = this.checked;
225
- }
226
- componentWillRender() {
227
- this.hasIcon = Boolean(this.host.querySelector('[slot="icon"]') || this.icon);
228
- }
229
- render() {
230
- return (index.h(index.Host, { key: '9a9606cbe154a9bedbc5bcabfd0f8a124f48d7c3', "data-version": _package.version, onClick: this.cardClickHandler }, index.h("div", { key: 'fc77375570af7db9e8fe1a554d73e1aec04025b5', class: {
231
- 'card-control': true,
232
- 'is-checked': this.checked,
233
- 'is-disabled': this.disabled,
234
- 'is-focused': this.focused,
235
- 'is-valid': this.validity !== null && this.validity !== 'false',
236
- 'is-invalid': this.validity === 'false',
237
- } }, index.h("input", { key: '5364895020750c3a265ff3773d29fa1984215a36', ref: el => (this.control = el), id: this.controlId, class: "card-control--input", type: this.type, name: this.name, value: this.value, checked: this.checked, "aria-describedby": `${this.controlId}_content`, "aria-disabled": this.disabled, "aria-invalid": this.validity === 'false', onClick: this.controlClickHandler, onInput: this.controlChangeHandler, onChange: this.controlChangeHandler, onFocus: this.controlFocusHandler, onBlur: this.controlFocusHandler, onKeyDown: this.controlKeyDownHandler }), index.h("label", { key: '452117728c65c511f58ca1e3c98f06edff295c83', id: `${this.controlId}_label`, htmlFor: this.controlId, class: "card-control--label" }, this.label, this.description ? (index.h("div", { class: "card-control--description" }, this.description)) : null), this.hasIcon ? (index.h("div", { class: "card-control--icon" }, index.h("slot", { name: "icon" }, this.icon ? index.h("post-icon", { name: this.icon }) : null))) : null, index.h("div", { key: 'b9da8ef0d3cc6492aa6fa2b7696f73905dca3bb6', id: `${this.controlId}_content`, class: "card-control--content" }, index.h("slot", { key: '37aed120bb769b1cfcbccd41b17135b1b769d31e' })))));
238
- }
239
- componentDidRender() {
240
- this.setHostContext();
241
- this.groupCollectMembers();
242
- }
243
- componentDidLoad() {
244
- this.validateControlLabel();
245
- this.validateControlType();
246
- }
247
- // https://stenciljs.com/docs/form-associated
248
- /* eslint-disable @stencil-community/own-methods-must-be-private */
249
- formAssociatedCallback() {
250
- this.controlSetChecked(this.checked);
251
- }
252
- formDisabledCallback(disabled) {
253
- this.disabled = disabled;
254
- }
255
- formStateRestoreCallback(checked) {
256
- this.controlSetChecked(checked);
257
- }
258
- formResetCallback() {
259
- this.reset();
260
- }
261
- static get formAssociated() { return true; }
262
- get host() { return index.getElement(this); }
263
- static get watchers() { return {
264
- "label": ["validateControlLabel"],
265
- "type": ["validateControlType"],
266
- "checked": ["updateControlChecked"],
267
- "disabled": ["updateControlDisabled"]
268
- }; }
269
- };
270
- PostCardControl.style = PostCardControlStyle0;
271
-
272
- exports.PostCardControl = PostCardControl;
@@ -1,3 +0,0 @@
1
- const version = "9.0.0-next.6";
2
-
3
- export { version as v };