@ptcwebops/ptcw-design 6.4.33-beta → 6.4.34-beta

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 (160) hide show
  1. package/dist/cjs/buying-option-cards-slider.cjs.entry.js +1 -1
  2. package/dist/cjs/event-podcast-slider-example.cjs.entry.js +1 -1
  3. package/dist/cjs/featured-events-slider-example.cjs.entry.js +1 -1
  4. package/dist/cjs/homepage-jumbotron.cjs.entry.js +1 -1
  5. package/dist/cjs/icon-asset_2.cjs.entry.js +154 -0
  6. package/dist/cjs/list-item.cjs.entry.js +52 -0
  7. package/dist/cjs/loader.cjs.js +1 -1
  8. package/dist/cjs/ptc-back-to-top.cjs.entry.js +100 -0
  9. package/dist/cjs/ptc-breadcrumb.cjs.entry.js +63 -0
  10. package/dist/cjs/ptc-button.cjs.entry.js +117 -0
  11. package/dist/cjs/ptc-card_2.cjs.entry.js +1 -1
  12. package/dist/cjs/ptc-case-studies-slider.cjs.entry.js +1 -1
  13. package/dist/cjs/ptc-icon-card-slider-example.cjs.entry.js +1 -1
  14. package/dist/cjs/ptc-icon-component.cjs.entry.js +1 -1
  15. package/dist/cjs/ptc-para.cjs.entry.js +139 -0
  16. package/dist/cjs/ptc-picture.cjs.entry.js +185 -0
  17. package/dist/cjs/ptc-product-card.cjs.entry.js +61 -0
  18. package/dist/cjs/ptc-product-category.cjs.entry.js +20 -0
  19. package/dist/cjs/ptc-product-dropdown.cjs.entry.js +80 -0
  20. package/dist/cjs/ptc-product-highlight-card.cjs.entry.js +28 -0
  21. package/dist/cjs/ptc-product-list.cjs.entry.js +172 -0
  22. package/dist/cjs/ptc-product-sidebar.cjs.entry.js +178 -0
  23. package/dist/cjs/ptc-readmore.cjs.entry.js +186 -0
  24. package/dist/cjs/ptc-spacer.cjs.entry.js +38 -0
  25. package/dist/cjs/ptc-title.cjs.entry.js +161 -0
  26. package/dist/cjs/ptc-tooltip.cjs.entry.js +113 -0
  27. package/dist/cjs/ptcw-design.cjs.js +1 -1
  28. package/dist/cjs/storefront-enhanced-product-list-alt-example.cjs.entry.js +1 -1
  29. package/dist/cjs/storefront-enhanced-product-list-example.cjs.entry.js +1 -1
  30. package/dist/collection/components/buying-option-cards-slider/buying-option-cards-slider.css +11 -16
  31. package/dist/collection/components/organism-bundles/event-podcast-slider-example/event-podcast-slider-example.css +11 -16
  32. package/dist/collection/components/organism-bundles/featured-events-slider-example/featured-events-slider-example.css +11 -16
  33. package/dist/collection/components/organism-bundles/homepage-jumbotron/homepage-jumbotron.css +11 -16
  34. package/dist/collection/components/organism-bundles/ptc-icon-card-slider-example/ptc-icon-card-slider-example.css +11 -16
  35. package/dist/collection/components/organism-bundles/storefront-enhanced-product-list-example/storefront-enhanced-product-list-example.css +11 -16
  36. package/dist/collection/components/ptc-case-studies-slider/ptc-case-studies-slider.css +11 -16
  37. package/dist/collection/components/ptc-icon-component/ptc-icon-component.css +11 -16
  38. package/dist/collection/components/ptc-preloader-section/ptc-preloader-section.css +4 -4
  39. package/dist/collection/components/ptc-seo-title/ptc-seo-title.js +3 -3
  40. package/dist/custom-elements/index.js +9 -9
  41. package/dist/esm/blog-detail-content_2.entry.js +1 -1
  42. package/dist/esm/blog-detail-layout.entry.js +1 -1
  43. package/dist/esm/blogs-search-section.entry.js +1 -1
  44. package/dist/esm/buying-option-cards-slider.entry.js +1 -1
  45. package/dist/esm/event-podcast-slider-example.entry.js +1 -1
  46. package/dist/esm/featured-events-slider-example.entry.js +1 -1
  47. package/dist/esm/homepage-jumbotron.entry.js +2 -2
  48. package/dist/esm/homepage-toggled-content.entry.js +1 -1
  49. package/dist/esm/icon-asset_2.entry.js +149 -0
  50. package/dist/esm/innovator-toggle-container.entry.js +1 -1
  51. package/dist/esm/{interfaces-7c0243be.js → interfaces-4caedd26.js} +1 -1
  52. package/dist/esm/list-item.entry.js +48 -0
  53. package/dist/esm/loader.js +1 -1
  54. package/dist/esm/most-popular-news.entry.js +1 -1
  55. package/dist/esm/my-component.entry.js +1 -1
  56. package/dist/esm/ptc-accordion-item.entry.js +1 -1
  57. package/dist/esm/ptc-back-to-top.entry.js +96 -0
  58. package/dist/esm/ptc-background-video.entry.js +1 -1
  59. package/dist/esm/ptc-breadcrumb.entry.js +59 -0
  60. package/dist/esm/ptc-button.entry.js +113 -0
  61. package/dist/esm/ptc-card_2.entry.js +1 -1
  62. package/dist/esm/ptc-case-studies-slider.entry.js +1 -1
  63. package/dist/esm/ptc-collapse-list.entry.js +1 -1
  64. package/dist/esm/ptc-form-checkbox_4.entry.js +1 -1
  65. package/dist/esm/ptc-homepage-image-feature.entry.js +1 -1
  66. package/dist/esm/ptc-homepage-video-background.entry.js +1 -1
  67. package/dist/esm/ptc-icon-card-slider-example.entry.js +1 -1
  68. package/dist/esm/ptc-icon-card.entry.js +1 -1
  69. package/dist/esm/ptc-icon-component.entry.js +1 -1
  70. package/dist/esm/ptc-img.entry.js +1 -1
  71. package/dist/esm/ptc-link.entry.js +1 -1
  72. package/dist/esm/ptc-media-card.entry.js +1 -1
  73. package/dist/esm/ptc-para.entry.js +135 -0
  74. package/dist/esm/ptc-picture.entry.js +181 -0
  75. package/dist/esm/ptc-pricing-packaging-table.entry.js +1 -1
  76. package/dist/esm/ptc-pricing-tabs.entry.js +1 -1
  77. package/dist/esm/ptc-product-card.entry.js +57 -0
  78. package/dist/esm/ptc-product-category.entry.js +16 -0
  79. package/dist/esm/ptc-product-dropdown.entry.js +76 -0
  80. package/dist/esm/ptc-product-highlight-card.entry.js +24 -0
  81. package/dist/esm/ptc-product-list.entry.js +168 -0
  82. package/dist/esm/ptc-product-sidebar.entry.js +174 -0
  83. package/dist/esm/ptc-readmore.entry.js +182 -0
  84. package/dist/esm/ptc-social-icons-footer.entry.js +1 -1
  85. package/dist/esm/ptc-spacer.entry.js +34 -0
  86. package/dist/esm/ptc-title.entry.js +157 -0
  87. package/dist/esm/ptc-tooltip.entry.js +109 -0
  88. package/dist/esm/ptcw-design.js +1 -1
  89. package/dist/esm/storefront-enhanced-product-list-alt-example.entry.js +1 -1
  90. package/dist/esm/storefront-enhanced-product-list-example.entry.js +1 -1
  91. package/dist/esm/{utils-a64ba942.js → utils-bdd0cc16.js} +1 -1
  92. package/dist/ptcw-design/p-00c5879b.entry.js +1 -0
  93. package/dist/ptcw-design/p-03a1e1a5.entry.js +1 -0
  94. package/dist/ptcw-design/p-068b64a1.entry.js +1 -0
  95. package/dist/ptcw-design/p-0ea22cdc.entry.js +1 -0
  96. package/dist/ptcw-design/p-183ba1ca.entry.js +1 -0
  97. package/dist/ptcw-design/p-1acd3617.entry.js +1 -0
  98. package/dist/ptcw-design/p-1b3394a7.entry.js +1 -0
  99. package/dist/ptcw-design/p-2e288e60.entry.js +1 -0
  100. package/dist/ptcw-design/{p-0824f503.entry.js → p-2efd18d8.entry.js} +1 -1
  101. package/dist/ptcw-design/{p-681d26ef.entry.js → p-2f7b6437.entry.js} +1 -1
  102. package/dist/ptcw-design/p-2f82de8f.entry.js +1 -0
  103. package/dist/ptcw-design/p-36d6e662.entry.js +1 -0
  104. package/dist/ptcw-design/p-4313edfb.entry.js +1 -0
  105. package/dist/ptcw-design/p-47aa1583.entry.js +1 -0
  106. package/dist/ptcw-design/p-5119fb48.entry.js +1 -0
  107. package/dist/ptcw-design/p-561a622f.entry.js +1 -0
  108. package/dist/ptcw-design/{p-ed49544c.entry.js → p-562a3e36.entry.js} +1 -1
  109. package/dist/ptcw-design/{p-fa045097.entry.js → p-5b00a563.entry.js} +1 -1
  110. package/dist/ptcw-design/{p-fd269576.entry.js → p-5dd9b00c.entry.js} +1 -1
  111. package/dist/ptcw-design/p-674c828e.entry.js +1 -0
  112. package/dist/ptcw-design/p-709cc1f0.entry.js +1 -0
  113. package/dist/ptcw-design/{p-ee1183b2.js → p-711bcdad.js} +1 -1
  114. package/dist/ptcw-design/p-73293d32.entry.js +1 -0
  115. package/dist/ptcw-design/{p-bdb2e42c.entry.js → p-75c8fceb.entry.js} +1 -1
  116. package/dist/ptcw-design/{p-7524411a.entry.js → p-7777753a.entry.js} +1 -1
  117. package/dist/ptcw-design/{p-a31f22a1.entry.js → p-804dac0c.entry.js} +1 -1
  118. package/dist/ptcw-design/{p-e2da8109.entry.js → p-83dabf2e.entry.js} +1 -1
  119. package/dist/ptcw-design/{p-83632220.entry.js → p-850e6e8c.entry.js} +1 -1
  120. package/dist/ptcw-design/{p-87a9a028.entry.js → p-87215e3a.entry.js} +1 -1
  121. package/dist/ptcw-design/p-87e4c337.entry.js +1 -0
  122. package/dist/ptcw-design/p-89da867f.entry.js +1 -0
  123. package/dist/ptcw-design/p-8efaac1b.entry.js +1 -0
  124. package/dist/ptcw-design/{p-769954c9.entry.js → p-91a9f126.entry.js} +1 -1
  125. package/dist/ptcw-design/{p-7398874a.entry.js → p-9df3c31f.entry.js} +1 -1
  126. package/dist/ptcw-design/{p-2fa5814b.entry.js → p-a318a793.entry.js} +1 -1
  127. package/dist/ptcw-design/p-a3ef1660.entry.js +1 -0
  128. package/dist/ptcw-design/{p-9461c4eb.entry.js → p-a81833cd.entry.js} +1 -1
  129. package/dist/ptcw-design/{p-3596ce5a.entry.js → p-b154bbdb.entry.js} +1 -1
  130. package/dist/ptcw-design/p-b1c51eb4.entry.js +1 -0
  131. package/dist/ptcw-design/{p-fb0f4459.entry.js → p-b2fcbbd8.entry.js} +1 -1
  132. package/dist/ptcw-design/{p-22cf00e7.js → p-c7e948b2.js} +1 -1
  133. package/dist/ptcw-design/p-c9762c88.entry.js +1 -0
  134. package/dist/ptcw-design/{p-1b1fd60d.entry.js → p-cf41ac32.entry.js} +1 -1
  135. package/dist/ptcw-design/{p-b9966f20.entry.js → p-d3c11c68.entry.js} +1 -1
  136. package/dist/ptcw-design/p-d428ba40.entry.js +1 -0
  137. package/dist/ptcw-design/p-e00c5964.entry.js +1 -0
  138. package/dist/ptcw-design/p-e1373325.entry.js +1 -0
  139. package/dist/ptcw-design/{p-edaf241d.entry.js → p-e65cbdb9.entry.js} +1 -1
  140. package/dist/ptcw-design/p-ec22d0b8.entry.js +1 -0
  141. package/dist/ptcw-design/ptcw-design.esm.js +1 -1
  142. package/dist/types/components.d.ts +62 -62
  143. package/package.json +101 -101
  144. package/readme.md +23 -23
  145. package/dist/cjs/icon-asset_17.cjs.entry.js +0 -1660
  146. package/dist/cjs/ptc-search-field.cjs.entry.js +0 -95
  147. package/dist/esm/icon-asset_17.entry.js +0 -1640
  148. package/dist/esm/ptc-search-field.entry.js +0 -91
  149. package/dist/ptcw-design/p-045c468a.entry.js +0 -1
  150. package/dist/ptcw-design/p-1a47d0fe.entry.js +0 -1
  151. package/dist/ptcw-design/p-4e8c1ba6.entry.js +0 -1
  152. package/dist/ptcw-design/p-5aed43be.entry.js +0 -1
  153. package/dist/ptcw-design/p-8ffdd794.entry.js +0 -1
  154. package/dist/ptcw-design/p-af46854e.entry.js +0 -1
  155. package/dist/ptcw-design/p-da4b7e23.entry.js +0 -1
  156. package/dist/ptcw-design/p-e50a5a46.entry.js +0 -1
  157. package/dist/ptcw-design/p-e69a0445.entry.js +0 -1
  158. package/dist/ptcw-design/p-e9f834fa.entry.js +0 -1
  159. package/dist/ptcw-design/p-eabf87be.entry.js +0 -1
  160. package/dist/ptcw-design/p-fe445a4a.entry.js +0 -1
@@ -0,0 +1,185 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-63ddc79c.js');
6
+ const interfaces = require('./interfaces-574e6df7.js');
7
+
8
+ const ptcPictureCss = "h1,h2,h3,h4,h5,h6,p,ul,li,ptc-subnav,ptc-tab-list,ptc-link,ptc-square-card,.hyphenate-text,ptc-footer{word-break:break-word;hyphens:manual;-webkit-hyphens:manual;-moz-hyphens:manual;-ms-hyphens:manual}@supports (hyphenate-limit-chars: 12 3 3){h1,h2,h3,h4,h5,h6,p,ul,li,ptc-subnav,ptc-tab-list,ptc-link,ptc-square-card,.hyphenate-text,ptc-footer{hyphens:auto;-webkit-hyphenate-limit-before:3;-webkit-hyphenate-limit-after:3;hyphenate-limit-chars:12 3 3;hyphenate-limit-lines:2;hyphenate-limit-last:always;hyphenate-limit-zone:6%;-webkit-hyphens:auto;-webkit-hyphenate-limit-before:3;-webkit-hyphenate-limit-after:3;-webkit-hyphenate-limit-chars:12 3 3;-webkit-hyphenate-limit-lines:2;-moz-hyphens:auto;-moz-hyphenate-limit-chars:12 3 3;-moz-hyphenate-limit-lines:2;-ms-hyphens:auto;-ms-hyphenate-limit-chars:12 3 3;-ms-hyphenate-limit-lines:2}}:host{display:block;overflow:hidden}:host .inline{display:inline}:host .inline-block{display:inline-block}:host .block{display:block}:host(.relative){position:relative}:host(.static){position:static}:host(.absoltue){position:absolute}img{max-width:100%}.cover{-o-object-fit:cover;object-fit:cover}.fill{-o-object-fit:fill;object-fit:fill}.contain{-o-object-fit:contain;object-fit:contain}.scale-down{-o-object-fit:scale-down;object-fit:scale-down}.none{-o-object-fit:none;object-fit:none}.initial{-o-object-fit:initial;object-fit:initial}.inherit{-o-object-fit:inherit;object-fit:inherit}.radius-standard{border-radius:var(--ptc-border-radius-standard)}.radius-large{border-radius:var(--ptc-border-radius-large)}.radius-pill{border-radius:var(--ptc-border-radius-pill)}.radius-circle{border-radius:var(--ptc-border-radius-circle)}.is-full-height{height:100%}.is-full-width{width:100%}:host(.left){text-align:left}:host(.right){text-align:right}:host(.center){text-align:center}";
9
+
10
+ const PtcPicture = class {
11
+ constructor(hostRef) {
12
+ index.registerInstance(this, hostRef);
13
+ this.src = undefined;
14
+ this.alt = "image";
15
+ this.sizeXs = "510x340";
16
+ this.sizeSm = "1240x496";
17
+ this.sizeMd = "1366x500";
18
+ this.sizeLg = "1920x1080";
19
+ this.disableResize = false;
20
+ this.oldSrc = undefined;
21
+ this.imagePosition = "static";
22
+ this.borderRadius = undefined;
23
+ this.height = undefined;
24
+ this.width = undefined;
25
+ this.objectFit = "cover";
26
+ this.isFullHeight = false;
27
+ this.isFullWidth = false;
28
+ this.styles = undefined;
29
+ this.imageAlignment = "left";
30
+ this.maxWidth = undefined;
31
+ this.displayImage = "block";
32
+ }
33
+ WindowResize() {
34
+ this.addIntersectionObserver();
35
+ }
36
+ componentWillLoad() {
37
+ if (this.disableResize) {
38
+ this.sizeXs = undefined;
39
+ this.sizeSm = undefined;
40
+ this.sizeMd = undefined;
41
+ this.sizeLg = undefined;
42
+ }
43
+ }
44
+ componentDidLoad() {
45
+ this.addIntersectionObserver();
46
+ }
47
+ componentWillUpdate() {
48
+ if (this.src !== this.oldSrc) {
49
+ this.addIntersectionObserver();
50
+ }
51
+ this.oldSrc = this.src;
52
+ }
53
+ //lazy-loading
54
+ addIntersectionObserver() {
55
+ if (!this.src) {
56
+ return;
57
+ }
58
+ if ("IntersectionObserver" in window) {
59
+ let lazyLoadImages = new IntersectionObserver((entries) => {
60
+ entries.forEach((entry) => {
61
+ if (entry.isIntersecting) {
62
+ const image = this.el.shadowRoot.querySelector("img");
63
+ image.src = this.setResponsiveBg();
64
+ lazyLoadImages.unobserve(image);
65
+ }
66
+ });
67
+ });
68
+ let tempImg = this.el.shadowRoot.querySelector("img");
69
+ if (tempImg) {
70
+ lazyLoadImages.observe(tempImg);
71
+ }
72
+ this.observer = lazyLoadImages;
73
+ }
74
+ else {
75
+ // fall back to setTimeout for Safari and IE
76
+ setTimeout(() => {
77
+ const image = this.el.shadowRoot.querySelector("img");
78
+ image.src = this.setResponsiveBg();
79
+ image.onload = () => {
80
+ image.removeAttribute("data-src");
81
+ };
82
+ }, 5000);
83
+ }
84
+ }
85
+ //responsive image
86
+ setResponsiveBg() {
87
+ // Define local variables
88
+ let backgrounds = (this.el.shadowRoot || document).querySelectorAll("img"), el, elData, currentBreakpoint = this.getCurrentBreakPoints();
89
+ for (var i = 0, len = backgrounds.length; i < len; i++) {
90
+ // Set current variables
91
+ el = backgrounds[i];
92
+ elData = el.getAttribute("data-" + currentBreakpoint);
93
+ if (elData !== null) {
94
+ return elData;
95
+ }
96
+ else {
97
+ if (typeof console == "object") {
98
+ console.warn("Data attribute: data-" +
99
+ currentBreakpoint +
100
+ " not found on element:\n\n" +
101
+ el.outerHTML +
102
+ "\n\n\n");
103
+ }
104
+ }
105
+ }
106
+ }
107
+ //manually load image
108
+ async LoadImage() {
109
+ const image = this.el.shadowRoot.querySelector("img");
110
+ if (!image) {
111
+ return;
112
+ }
113
+ if (!image.src) {
114
+ image.src = this.setResponsiveBg();
115
+ image.onload = () => {
116
+ image.removeAttribute("data-src");
117
+ };
118
+ }
119
+ if (this.observer) {
120
+ this.observer.unobserve(image);
121
+ }
122
+ }
123
+ render() {
124
+ const classMap = this.getCssClassMap();
125
+ const classMapHost = this.getCssClassMapHost();
126
+ return (index.h(index.Host, { class: classMapHost }, this.styles && index.h("style", null, this.styles), index.h("img", Object.assign({ class: classMap, "data-xs": !!this.sizeXs ? `${this.src}` : `${this.src}`, "data-sm": !!this.sizeSm ? `${this.src}` : `${this.src}`, "data-md": !!this.sizeMd ? `${this.src}` : `${this.src}`, "data-lg": !!this.sizeLg ? `${this.src}` : `${this.src}` }, (!!this.width ? { width: this.width } : {}), (!!this.height ? { height: this.height } : {}), { alt: this.alt, style: Object.assign({}, (!!this.maxWidth
127
+ ? { maxWidth: this.maxWidth + "px" }
128
+ : {})) })), index.h("slot", null)));
129
+ }
130
+ getCurrentBreakPoints() {
131
+ // Define local variables
132
+ let doc = window.document, temp = doc.createElement("div"), env;
133
+ // Append test node
134
+ doc.body.appendChild(temp);
135
+ // Loop through breakpoints
136
+ for (let i = interfaces.ResponsivePictureVariables.envs.length - 1; i >= 0; i--) {
137
+ env = interfaces.ResponsivePictureVariables.envs[i];
138
+ // Add classes
139
+ temp.className = "hidden-" + env;
140
+ // Found breakpoint
141
+ if (temp.offsetParent === null) {
142
+ // Remove our test node
143
+ doc.body.removeChild(temp);
144
+ // Return current breakpoint
145
+ return env;
146
+ }
147
+ }
148
+ // Breakpoint not found, try fallback
149
+ doc.body.removeChild(temp);
150
+ return this.getFallbackBreakpoint();
151
+ }
152
+ getFallbackBreakpoint() {
153
+ if (window.matchMedia("(min-width: 992px)").matches) {
154
+ return "lg";
155
+ }
156
+ else if (window.matchMedia("(min-width: 768px)").matches) {
157
+ return "md";
158
+ }
159
+ else if (window.matchMedia("(min-width: 576px)").matches) {
160
+ return "sm";
161
+ }
162
+ else {
163
+ return "xs";
164
+ }
165
+ }
166
+ getCssClassMap() {
167
+ return {
168
+ [this.borderRadius]: this.borderRadius ? true : false,
169
+ [this.objectFit]: true,
170
+ [this.isFullHeight ? "is-full-height" : "is-normal-height"]: true,
171
+ [this.isFullWidth ? "is-full-width" : "is-normal-width"]: true,
172
+ [this.displayImage]: true,
173
+ };
174
+ }
175
+ getCssClassMapHost() {
176
+ return {
177
+ [this.imagePosition]: true,
178
+ [this.imageAlignment]: true,
179
+ };
180
+ }
181
+ get el() { return index.getElement(this); }
182
+ };
183
+ PtcPicture.style = ptcPictureCss;
184
+
185
+ exports.ptc_picture = PtcPicture;
@@ -0,0 +1,61 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-63ddc79c.js');
6
+
7
+ const ptcProductCardCss = "h1,h2,h3,h4,h5,h6,p,ul,li,ptc-subnav,ptc-tab-list,ptc-link,ptc-square-card,.hyphenate-text,ptc-footer{word-break:break-word;hyphens:manual;-webkit-hyphens:manual;-moz-hyphens:manual;-ms-hyphens:manual}@supports (hyphenate-limit-chars: 12 3 3){h1,h2,h3,h4,h5,h6,p,ul,li,ptc-subnav,ptc-tab-list,ptc-link,ptc-square-card,.hyphenate-text,ptc-footer{hyphens:auto;-webkit-hyphenate-limit-before:3;-webkit-hyphenate-limit-after:3;hyphenate-limit-chars:12 3 3;hyphenate-limit-lines:2;hyphenate-limit-last:always;hyphenate-limit-zone:6%;-webkit-hyphens:auto;-webkit-hyphenate-limit-before:3;-webkit-hyphenate-limit-after:3;-webkit-hyphenate-limit-chars:12 3 3;-webkit-hyphenate-limit-lines:2;-moz-hyphens:auto;-moz-hyphenate-limit-chars:12 3 3;-moz-hyphenate-limit-lines:2;-ms-hyphens:auto;-ms-hyphenate-limit-chars:12 3 3;-ms-hyphenate-limit-lines:2}}a{font-family:var(--ptc-font-latin);font-style:var(--ptc-font-style-normal);text-decoration-line:underline;color:var(--color-hyperlink);transition:color var(--ptc-transition-medium) var(--ptc-ease-out);font-weight:var(--ptc-font-weight-bold)}a:visited{color:var(--color-blue-10)}a:active,a:visited:active{transition:none;color:var(--color-blue-09)}a:hover,a:visited:hover{color:var(--color-blue-08)}a.disabled{color:var(--color-gray-04) !important;cursor:not-allowed}a:focus-visible{outline:5px solid #003dd6 !important;outline-offset:0px !important;border-radius:var(--ptc-border-radius-standard)}.light-links a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a),.light-links a.light-link,.background-grey-10 a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a),.background-grey-10 a.light-link,.background-plm-grey a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a),.background-plm-grey a.light-link{color:var(--color-blue-04);margin:-2px;border:2px solid transparent}.light-links a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):visited,.light-links a.light-link:visited,.background-grey-10 a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):visited,.background-grey-10 a.light-link:visited,.background-plm-grey a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):visited,.background-plm-grey a.light-link:visited{color:var(--color-blue-06)}.light-links a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):active,.light-links a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):visited:active,.light-links a.light-link:active,.light-links a.light-link:visited:active,.background-grey-10 a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):active,.background-grey-10 a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):visited:active,.background-grey-10 a.light-link:active,.background-grey-10 a.light-link:visited:active,.background-plm-grey a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):active,.background-plm-grey a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):visited:active,.background-plm-grey a.light-link:active,.background-plm-grey a.light-link:visited:active{transition:none;color:var(--color-blue-07)}.light-links a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):hover,.light-links a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):visited:hover,.light-links a.light-link:hover,.light-links a.light-link:visited:hover,.background-grey-10 a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):hover,.background-grey-10 a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):visited:hover,.background-grey-10 a.light-link:hover,.background-grey-10 a.light-link:visited:hover,.background-plm-grey a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):hover,.background-plm-grey a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):visited:hover,.background-plm-grey a.light-link:hover,.background-plm-grey a.light-link:visited:hover{color:var(--color-blue-05)}.light-links a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a).disabled,.light-links a.light-link.disabled,.background-grey-10 a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a).disabled,.background-grey-10 a.light-link.disabled,.background-plm-grey a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a).disabled,.background-plm-grey a.light-link.disabled{color:var(--color-gray-04) !important;cursor:not-allowed}.light-links a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):focus-visible,.light-links a.light-link:focus-visible,.background-grey-10 a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):focus-visible,.background-grey-10 a.light-link:focus-visible,.background-plm-grey a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):focus-visible,.background-plm-grey a.light-link:focus-visible{border-radius:var(--ptc-border-radius-standard);border:2px solid white;outline:5px solid var(--keyboard-nav-outline)}.light-links .podcast-cta-section a,.background-grey-10 .podcast-cta-section a,.background-plm-grey .podcast-cta-section a{border:2px solid transparent}.light-links .podcast-cta-section a:focus-visible,.background-grey-10 .podcast-cta-section a:focus-visible,.background-plm-grey .podcast-cta-section a:focus-visible{border-radius:var(--ptc-border-radius-standard);border:2px solid white;outline:5px solid var(--keyboard-nav-outline)}.white-links a{color:var(--color-white) !important}.ptc-link{color:var(--color-gray-10);text-decoration:underline;text-decoration-thickness:2px;text-decoration-color:var(--color-green-06);text-underline-offset:5px;transition:text-decoration-color var(--ptc-transition-medium) var(--ptc-ease-inout)}.ptc-link:hover{color:var(--color-green-06)}.ptc-link:visited{color:var(--color-gray-10)}.ptc-link:active,.ptc-link:visited:active{transition:none;color:var(--color-green-06)}.ptc-link:hover,.ptc-link:visited:hover{color:var(--color-green-06)}.ptc-link-dark{color:var(--color-white);text-decoration:underline;text-decoration-thickness:2px;text-decoration-color:var(--color-green-06);text-underline-offset:5px;transition:text-decoration-color var(--ptc-transition-medium) var(--ptc-ease-inout)}.ptc-link-dark:hover{color:var(--color-green-06)}.ptc-link-dark:visited{color:var(--color-white)}.ptc-link-dark:active,.ptc-link-dark:visited:active{transition:none;color:var(--color-green-06)}.ptc-link-dark:hover,.ptc-link-dark:visited:hover{color:var(--color-green-06)}.vjs-social-share-links a{color:var(--color-white)}.vjs-social-share-links a:hover{color:var(--color-white)}:host{display:block;background-color:var(--color-white);border-radius:var(--ptc-border-radius-standard);margin-bottom:var(--ptc-layout-spacing-03)}:host .card-wrap{display:flex;align-items:center}:host .card-wrap ptc-picture{display:none}@media only screen and (min-width: 768px){:host .card-wrap ptc-picture{display:block;margin-left:var(--ptc-element-spacing-06);min-width:38px;max-width:38px}}:host .card-wrap .content{padding:var(--ptc-layout-spacing-03) var(--ptc-layout-spacing-04) var(--ptc-layout-spacing-03) var(--ptc-layout-spacing-04)}@media only screen and (min-width: 768px){:host .card-wrap .content{padding:var(--ptc-layout-spacing-03) var(--ptc-layout-spacing-03) var(--ptc-layout-spacing-03) 44px}}@media only screen and (min-width: 1200px){:host .card-wrap .content{display:flex;align-items:center;justify-content:space-between;width:100%}}:host .card-wrap .content .cta-wrap{margin-left:0;margin-top:24px;min-width:146px;text-align:left}@media only screen and (min-width: 1200px){:host .card-wrap .content .cta-wrap{margin-top:0px;margin-left:44px;text-align:right}}:host .toggle-btn{padding:16px;text-align:center;border-top:1px solid var(--color-gray-04);display:block;cursor:pointer}:host .toggle-btn:focus-visible{border-radius:var(--ptc-border-radius-standard);outline:5px solid var(--keyboard-nav-outline)}:host .toggle-btn svg{margin-right:var(--ptc-element-spacing-03);vertical-align:middle;margin-top:-2px}:host .toggle-btn .toggleText::before{content:\"\";display:inline-block;width:18px;height:18px;background-image:url('data:image/svg+xml,<svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><rect width=\"18\" height=\"18\" rx=\"4\" fill=\"%2300890B\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.953 4.23535H8.04712V8.04712H4.23535V9.953H8.04712V13.7648H9.953V9.953H13.7648V8.04712H9.953V4.23535Z\" fill=\"white\"/></svg>');margin-right:12px;vertical-align:middle;margin-top:-2px}:host .product-highlights-container{padding:0px 20px 16px 20px;display:none}:host(.has-opened) .toggleText::before{background-image:url('data:image/svg+xml,<svg width=\"19\" height=\"18\" viewBox=\"0 0 19 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><rect x=\"0.632812\" width=\"17.9798\" height=\"18\" rx=\"4\" fill=\"%2300890B\"/><g clip-path=\"url(%23clip0_220_1413)\"><path d=\"M4.86328 7.98749V10.0125H14.382V7.98749H4.86328Z\" fill=\"white\"/></g><defs><clipPath id=\"clip0_220_1413\"><rect width=\"9.51872\" height=\"9.52941\" fill=\"white\" transform=\"translate(4.86328 4.23529)\"/></clipPath></defs></svg>')}:host(.has-opened) .product-highlights-container{display:block}::slotted(.cta-group){display:flex;flex-direction:row;gap:12px;flex-wrap:wrap;-moz-column-gap:16px;column-gap:16px}@media only screen and (min-width: 1200px){::slotted(.cta-group){flex-direction:column}}";
8
+
9
+ const PtcProductCard = class {
10
+ constructor(hostRef) {
11
+ index.registerInstance(this, hostRef);
12
+ this.cardImage = undefined;
13
+ this.cardImageAltText = undefined;
14
+ this.cardDescription = undefined;
15
+ this.cardCtaText = undefined;
16
+ this.toggleCtaTitle = undefined;
17
+ this.isOpen = false;
18
+ this.isSlotEmpty = undefined;
19
+ }
20
+ togglePanel() {
21
+ this.isOpen = !this.isOpen;
22
+ }
23
+ handleReadmoreToggle(event) {
24
+ const siblingCards = Array.from(this.hostElement.querySelectorAll(".ptc-product-highlight-card"));
25
+ siblingCards.forEach((card) => {
26
+ var _a, _b;
27
+ const readmoreComponent = card === null || card === void 0 ? void 0 : card.querySelector("ptc-readmore");
28
+ const rmText = (_a = readmoreComponent.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector(".read-more-text");
29
+ const isReadMore = rmText.scrollHeight > rmText.clientHeight;
30
+ const rmCheckbox = (_b = readmoreComponent.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector("#expanded");
31
+ if (readmoreComponent &&
32
+ readmoreComponent !== event.detail.sender) {
33
+ // Update the sibling readmore component
34
+ rmCheckbox.checked = event.detail.isExpanded;
35
+ // Trigger the update programmatically
36
+ const cta = readmoreComponent.shadowRoot.querySelector(".read-more-cta-label");
37
+ if (cta) {
38
+ event.detail.isExpanded
39
+ ? (cta.innerHTML = `<span>${readmoreComponent.lessText || ""}</span>`)
40
+ : (cta.innerHTML = `<span>${readmoreComponent.moreText || ""}</span>`);
41
+ if (event.detail.isExpanded) {
42
+ if (isReadMore) {
43
+ cta.classList.add("show-less-cta");
44
+ }
45
+ }
46
+ else {
47
+ cta.classList.remove("show-less-cta");
48
+ }
49
+ }
50
+ rmText.classList[isReadMore ? "add" : "remove"]("truncated");
51
+ }
52
+ });
53
+ }
54
+ render() {
55
+ return (index.h(index.Host, null, index.h("div", { class: "card-wrap" }, this.cardImage && (index.h("ptc-picture", { alt: "image-test", src: this.cardImage, "display-image": "inline-block", width: "38" })), index.h("div", { class: "content" }, index.h("div", null, index.h("slot", { name: "title" }), index.h("ptc-spacer", { size: "x-small" }), index.h("ptc-spacer", { size: "xx-small", breakpoint: "x-small" }), index.h("div", null, index.h("slot", { name: "content" }))), index.h("div", { class: "cta-wrap" }, index.h("slot", { name: "cta" })))), this.toggleCtaTitle && (index.h("ptc-para", { class: "toggle-btn mf-listen", "font-size": "small", "para-margin": "margin-flush", "para-line-h": "line-height-p", "para-z-index": "z-auto", onClick: () => this.togglePanel(), tabIndex: 0 }, index.h("span", { class: "toggleText" }, this.toggleCtaTitle))), index.h("div", { class: "product-highlights-container" }, index.h("slot", null))));
56
+ }
57
+ get hostElement() { return index.getElement(this); }
58
+ };
59
+ PtcProductCard.style = ptcProductCardCss;
60
+
61
+ exports.ptc_product_card = PtcProductCard;
@@ -0,0 +1,20 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-63ddc79c.js');
6
+
7
+ const ptcProductCategoryCss = "h1,h2,h3,h4,h5,h6,p,ul,li,ptc-subnav,ptc-tab-list,ptc-link,ptc-square-card,.hyphenate-text,ptc-footer{word-break:break-word;hyphens:manual;-webkit-hyphens:manual;-moz-hyphens:manual;-ms-hyphens:manual}@supports (hyphenate-limit-chars: 12 3 3){h1,h2,h3,h4,h5,h6,p,ul,li,ptc-subnav,ptc-tab-list,ptc-link,ptc-square-card,.hyphenate-text,ptc-footer{hyphens:auto;-webkit-hyphenate-limit-before:3;-webkit-hyphenate-limit-after:3;hyphenate-limit-chars:12 3 3;hyphenate-limit-lines:2;hyphenate-limit-last:always;hyphenate-limit-zone:6%;-webkit-hyphens:auto;-webkit-hyphenate-limit-before:3;-webkit-hyphenate-limit-after:3;-webkit-hyphenate-limit-chars:12 3 3;-webkit-hyphenate-limit-lines:2;-moz-hyphens:auto;-moz-hyphenate-limit-chars:12 3 3;-moz-hyphenate-limit-lines:2;-ms-hyphens:auto;-ms-hyphenate-limit-chars:12 3 3;-ms-hyphenate-limit-lines:2}}a{font-family:var(--ptc-font-latin);font-style:var(--ptc-font-style-normal);text-decoration-line:underline;color:var(--color-hyperlink);transition:color var(--ptc-transition-medium) var(--ptc-ease-out);font-weight:var(--ptc-font-weight-bold)}a:visited{color:var(--color-blue-10)}a:active,a:visited:active{transition:none;color:var(--color-blue-09)}a:hover,a:visited:hover{color:var(--color-blue-08)}a.disabled{color:var(--color-gray-04) !important;cursor:not-allowed}a:focus-visible{outline:5px solid #003dd6 !important;outline-offset:0px !important;border-radius:var(--ptc-border-radius-standard)}.light-links a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a),.light-links a.light-link,.background-grey-10 a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a),.background-grey-10 a.light-link,.background-plm-grey a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a),.background-plm-grey a.light-link{color:var(--color-blue-04);margin:-2px;border:2px solid transparent}.light-links a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):visited,.light-links a.light-link:visited,.background-grey-10 a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):visited,.background-grey-10 a.light-link:visited,.background-plm-grey a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):visited,.background-plm-grey a.light-link:visited{color:var(--color-blue-06)}.light-links a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):active,.light-links a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):visited:active,.light-links a.light-link:active,.light-links a.light-link:visited:active,.background-grey-10 a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):active,.background-grey-10 a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):visited:active,.background-grey-10 a.light-link:active,.background-grey-10 a.light-link:visited:active,.background-plm-grey a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):active,.background-plm-grey a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):visited:active,.background-plm-grey a.light-link:active,.background-plm-grey a.light-link:visited:active{transition:none;color:var(--color-blue-07)}.light-links a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):hover,.light-links a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):visited:hover,.light-links a.light-link:hover,.light-links a.light-link:visited:hover,.background-grey-10 a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):hover,.background-grey-10 a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):visited:hover,.background-grey-10 a.light-link:hover,.background-grey-10 a.light-link:visited:hover,.background-plm-grey a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):hover,.background-plm-grey a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):visited:hover,.background-plm-grey a.light-link:hover,.background-plm-grey a.light-link:visited:hover{color:var(--color-blue-05)}.light-links a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a).disabled,.light-links a.light-link.disabled,.background-grey-10 a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a).disabled,.background-grey-10 a.light-link.disabled,.background-plm-grey a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a).disabled,.background-plm-grey a.light-link.disabled{color:var(--color-gray-04) !important;cursor:not-allowed}.light-links a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):focus-visible,.light-links a.light-link:focus-visible,.background-grey-10 a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):focus-visible,.background-grey-10 a.light-link:focus-visible,.background-plm-grey a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):focus-visible,.background-plm-grey a.light-link:focus-visible{border-radius:var(--ptc-border-radius-standard);border:2px solid white;outline:5px solid var(--keyboard-nav-outline)}.light-links .podcast-cta-section a,.background-grey-10 .podcast-cta-section a,.background-plm-grey .podcast-cta-section a{border:2px solid transparent}.light-links .podcast-cta-section a:focus-visible,.background-grey-10 .podcast-cta-section a:focus-visible,.background-plm-grey .podcast-cta-section a:focus-visible{border-radius:var(--ptc-border-radius-standard);border:2px solid white;outline:5px solid var(--keyboard-nav-outline)}.white-links a{color:var(--color-white) !important}.ptc-link{color:var(--color-gray-10);text-decoration:underline;text-decoration-thickness:2px;text-decoration-color:var(--color-green-06);text-underline-offset:5px;transition:text-decoration-color var(--ptc-transition-medium) var(--ptc-ease-inout)}.ptc-link:hover{color:var(--color-green-06)}.ptc-link:visited{color:var(--color-gray-10)}.ptc-link:active,.ptc-link:visited:active{transition:none;color:var(--color-green-06)}.ptc-link:hover,.ptc-link:visited:hover{color:var(--color-green-06)}.ptc-link-dark{color:var(--color-white);text-decoration:underline;text-decoration-thickness:2px;text-decoration-color:var(--color-green-06);text-underline-offset:5px;transition:text-decoration-color var(--ptc-transition-medium) var(--ptc-ease-inout)}.ptc-link-dark:hover{color:var(--color-green-06)}.ptc-link-dark:visited{color:var(--color-white)}.ptc-link-dark:active,.ptc-link-dark:visited:active{transition:none;color:var(--color-green-06)}.ptc-link-dark:hover,.ptc-link-dark:visited:hover{color:var(--color-green-06)}.vjs-social-share-links a{color:var(--color-white)}.vjs-social-share-links a:hover{color:var(--color-white)}:host{display:block;padding-bottom:var(--ptc-layout-spacing-03)}:host .category-header{margin-bottom:var(--ptc-layout-spacing-03)}:host .tooltip-box{visibility:visible;padding:8px;color:var(--color-white);font-size:var(--ptc-font-size-xxx-small);font-weight:var(--ptc-font-weight-semibold);background-color:var(--color-gray-09);box-shadow:0px 2px 4px rgba(0, 0, 0, 0.3);border:none;border-radius:var(--ptc-border-radius-standard);width:auto;height:auto;text-align:left;text-shadow:none;white-space:normal;position:absolute;z-index:999;line-height:1.5}@media only screen and (min-width: 480px){:host .tooltip-box{width:273px}}:host .tooltip-box.hide-tooltip-mobile{display:none !important}@media only screen and (min-width: 768px){:host .tooltip-box.hide-tooltip-mobile{display:block !important}}:host .tooltip-box.full-width{width:100%}:host .tooltip-box::after{content:\"\";position:absolute}:host .tooltip-box.bottom{bottom:-12px;transform:translateY(100%)}:host .tooltip-box.bottom::after{top:1px;left:50%;transform:translate(-50%, -100%);border:8px solid transparent;border-bottom:8px solid var(--color-gray-09)}:host .tooltip-box.left{bottom:-12px;transform:translate(-80%, 100%)}:host .tooltip-box.left::after{top:1px;right:8px;transform:translateY(-100%);border:8px solid transparent;border-bottom:8px solid var(--color-gray-09)}:host .tooltip-box.right{bottom:-12px;transform:translateY(100%);right:0px}@-moz-document url-prefix(){:host .tooltip-box.right{right:unset !important;bottom:unset !important;transform:translate(60%, 8px) !important}@media screen and (min-width: 992px){:host .tooltip-box.right{transform:translate(100%, 8px) !important}}}:host .tooltip-box.right::after{top:1px;left:8px;transform:translateY(-100%);border:8px solid transparent;border-bottom:8px solid var(--color-gray-09)}:host .tooltip-box.top{top:-8px;transform:translateY(-100%)}:host .tooltip-box.top::after{left:50%;bottom:1px;transform:translate(-50%, 100%);border:8px solid transparent;border-top:8px solid var(--color-gray-09)}:host .tooltip-box.bottom-right{bottom:-12px;transform:translate(100%, 100%)}:host .tooltip-box.bottom-right::after{top:1px;left:10%;transform:translate(-50%, -100%);border:8px solid transparent;border-bottom:8px solid var(--color-gray-09)}:host .tooltip-box.danger{color:var(--color-red-07);font-family:var(--ptc-font-latin);font-weight:var(--ptc-font-weight-semibold);font-size:var(--ptc-font-size-xx-small);line-height:var(--ptc-line-height-p);border:2px solid var(--color-red-07);border-radius:var(--ptc-border-radius-standard);background-color:var(--color-white);padding:var(--ptc-element-spacing-06)}:host .tooltip-box.danger a{color:var(--color-hyperlink)}@media (max-width: 768px){:host .hide-tooltip-on-mobile h1,:host .hide-tooltip-on-mobile h2,:host .hide-tooltip-on-mobile h3,:host .hide-tooltip-on-mobile h4,:host .hide-tooltip-on-mobile h5,:host .hide-tooltip-on-mobile h6{-webkit-line-clamp:initial !important}}";
8
+
9
+ const PtcProductCategory = class {
10
+ constructor(hostRef) {
11
+ index.registerInstance(this, hostRef);
12
+ this.categoryDescription = undefined;
13
+ }
14
+ render() {
15
+ return (index.h(index.Host, null, index.h("div", { class: "category-header" }, index.h("slot", { name: "title" }), index.h("ptc-spacer", { size: "x-small" }), index.h("ptc-spacer", { size: "x-small", breakpoint: "x-small" }), index.h("ptc-para", { "para-margin": "margin-flush", "font-size": "small", "para-line-h": "line-height-p", "font-weight": "w-5", "para-z-index": "z-auto", "enable-tooltip": true, "max-lines": "9", "tooltip-z-index": "999", "tooltip-width": "full-width", "seo-compatibility-mode": true }, this.categoryDescription)), index.h("slot", null)));
16
+ }
17
+ };
18
+ PtcProductCategory.style = ptcProductCategoryCss;
19
+
20
+ exports.ptc_product_category = PtcProductCategory;
@@ -0,0 +1,80 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-63ddc79c.js');
6
+
7
+ const ptcProductDropdownCss = "h1,h2,h3,h4,h5,h6,p,ul,li,ptc-subnav,ptc-tab-list,ptc-link,ptc-square-card,.hyphenate-text,ptc-footer{word-break:break-word;hyphens:manual;-webkit-hyphens:manual;-moz-hyphens:manual;-ms-hyphens:manual}@supports (hyphenate-limit-chars: 12 3 3){h1,h2,h3,h4,h5,h6,p,ul,li,ptc-subnav,ptc-tab-list,ptc-link,ptc-square-card,.hyphenate-text,ptc-footer{hyphens:auto;-webkit-hyphenate-limit-before:3;-webkit-hyphenate-limit-after:3;hyphenate-limit-chars:12 3 3;hyphenate-limit-lines:2;hyphenate-limit-last:always;hyphenate-limit-zone:6%;-webkit-hyphens:auto;-webkit-hyphenate-limit-before:3;-webkit-hyphenate-limit-after:3;-webkit-hyphenate-limit-chars:12 3 3;-webkit-hyphenate-limit-lines:2;-moz-hyphens:auto;-moz-hyphenate-limit-chars:12 3 3;-moz-hyphenate-limit-lines:2;-ms-hyphens:auto;-ms-hyphenate-limit-chars:12 3 3;-ms-hyphenate-limit-lines:2}}:host{display:block;margin-top:4px;background-color:var(--color-white)}:host .hidden{display:none}:host .dropdown{position:relative;display:inline-block;width:100%;font-size:16px}:host .dropdown .dropdown-toggle{padding:0.5rem;border:1px solid var(--color-gray-03);background-color:var(--color-white);cursor:pointer;display:flex;align-items:center;justify-content:space-between;min-height:34px;box-sizing:border-box}:host .dropdown .dropdown-toggle:focus-visible{border-radius:var(--ptc-border-radius-standard);outline:5px solid var(--keyboard-nav-outline)}:host .dropdown .dropdown-toggle .dropdown-placeholder{font-size:14px;color:var(--color-gray-07)}:host .caret{display:inline-block;vertical-align:middle}:host .dropdown-menu{position:absolute;top:100%;left:0;min-width:10rem;border:1px solid var(--color-gray-03);background-color:var(--color-white);box-shadow:0px 2px 4px rgba(35, 43, 45, 0.3);z-index:105;max-height:400px;overflow-y:auto;width:100%;box-sizing:border-box}:host .dropdown-menu::-webkit-scrollbar{width:5px}:host .dropdown-menu::-webkit-scrollbar-track{-webkit-box-shadow:inset 0 0 6px rgba(0, 0, 0, 0.3)}:host .dropdown-menu::-webkit-scrollbar-thumb{background-color:var(--color-gray-05);outline:1px solid var(--color-gray-05)}:host .checkbox-label{display:flex;align-items:flex-start;padding:6px 16px;cursor:pointer;font-size:14px}:host .checkbox-label:first-child{padding-top:20px}:host .checkbox-label:last-child{padding-bottom:20px}:host .checkbox-label input[type=checkbox]{min-width:20px;margin-right:8px;width:20px;height:20px;margin-top:0}:host .checkbox-label input[type=checkbox]:focus-visible{border-radius:var(--ptc-border-radius-standard);outline:5px solid var(--keyboard-nav-outline)}";
8
+
9
+ const PtcProductDropdown = class {
10
+ constructor(hostRef) {
11
+ index.registerInstance(this, hostRef);
12
+ this.selectedValues = index.createEvent(this, "selectedValues", 7);
13
+ this.dropdownTouched = index.createEvent(this, "dropdownTouched", 7);
14
+ this.internalOptions = undefined;
15
+ this.newOptions = undefined;
16
+ this.selectedOptions = [];
17
+ this.placeholder = undefined;
18
+ this.isOpen = false;
19
+ }
20
+ parseOptions() {
21
+ let options = Array.from(this.hostElement.querySelectorAll("span"));
22
+ if (options) {
23
+ this.internalOptions = options.map((option) => {
24
+ return option.textContent;
25
+ });
26
+ }
27
+ }
28
+ toggleDropdown() {
29
+ this.isOpen = !this.isOpen;
30
+ this.dropdownTouched.emit({
31
+ sender: this,
32
+ isOpen: this.isOpen,
33
+ });
34
+ }
35
+ handleSearchResult(event) {
36
+ const { sender, searchTerm } = event.detail;
37
+ if (sender) {
38
+ if (searchTerm === "") {
39
+ this.selectedOptions = [];
40
+ this.isOpen = false;
41
+ }
42
+ }
43
+ }
44
+ handleinputChanged(event) {
45
+ const { sender } = event.detail;
46
+ if (sender) {
47
+ this.selectedOptions = [];
48
+ this.isOpen = false;
49
+ }
50
+ }
51
+ handleCheckboxChange(option) {
52
+ const index = this.selectedOptions.indexOf(option);
53
+ if (index > -1) {
54
+ this.selectedOptions.splice(index, 1);
55
+ this.selectedValues.emit({
56
+ sender: this,
57
+ selectedOptions: this.selectedOptions,
58
+ });
59
+ }
60
+ else {
61
+ this.selectedOptions.push(option);
62
+ this.selectedValues.emit({
63
+ sender: this,
64
+ selectedOptions: this.selectedOptions,
65
+ });
66
+ }
67
+ }
68
+ componentWillLoad() {
69
+ this.parseOptions();
70
+ }
71
+ render() {
72
+ return (index.h(index.Host, null, index.h("div", { class: "dropdown" }, index.h("div", { class: "dropdown-toggle", onClick: () => this.toggleDropdown(), onKeyDown: (e) => {
73
+ e.key === "Enter" ? this.toggleDropdown() : null;
74
+ }, tabIndex: 0 }, index.h("span", { class: "dropdown-placeholder" }, this.placeholder), index.h("span", { class: "caret" }, index.h("svg", { width: "12", height: "8", viewBox: "0 0 12 8", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, index.h("path", { d: "M1.86537 0.917969L6.14614 4.56922L10.4269 0.917969L11.9769 2.23997L6.14614 7.21323L0.31543 2.23997L1.86537 0.917969Z", fill: "#323B42" })))), this.isOpen && (index.h("div", { class: "dropdown-menu" }, this.internalOptions.map((option) => (index.h("label", { class: "checkbox-label" }, index.h("input", { type: "checkbox", checked: this.selectedOptions.includes(option), onChange: () => this.handleCheckboxChange(option) }), option)))))), index.h("div", { class: "hidden" }, index.h("slot", null))));
75
+ }
76
+ get hostElement() { return index.getElement(this); }
77
+ };
78
+ PtcProductDropdown.style = ptcProductDropdownCss;
79
+
80
+ exports.ptc_product_dropdown = PtcProductDropdown;
@@ -0,0 +1,28 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-63ddc79c.js');
6
+
7
+ const ptcProductHighlightCardCss = "h1,h2,h3,h4,h5,h6,p,ul,li,ptc-subnav,ptc-tab-list,ptc-link,ptc-square-card,.hyphenate-text,ptc-footer{word-break:break-word;hyphens:manual;-webkit-hyphens:manual;-moz-hyphens:manual;-ms-hyphens:manual}@supports (hyphenate-limit-chars: 12 3 3){h1,h2,h3,h4,h5,h6,p,ul,li,ptc-subnav,ptc-tab-list,ptc-link,ptc-square-card,.hyphenate-text,ptc-footer{hyphens:auto;-webkit-hyphenate-limit-before:3;-webkit-hyphenate-limit-after:3;hyphenate-limit-chars:12 3 3;hyphenate-limit-lines:2;hyphenate-limit-last:always;hyphenate-limit-zone:6%;-webkit-hyphens:auto;-webkit-hyphenate-limit-before:3;-webkit-hyphenate-limit-after:3;-webkit-hyphenate-limit-chars:12 3 3;-webkit-hyphenate-limit-lines:2;-moz-hyphens:auto;-moz-hyphenate-limit-chars:12 3 3;-moz-hyphenate-limit-lines:2;-ms-hyphens:auto;-ms-hyphenate-limit-chars:12 3 3;-ms-hyphenate-limit-lines:2}}a{font-family:var(--ptc-font-latin);font-style:var(--ptc-font-style-normal);text-decoration-line:underline;color:var(--color-hyperlink);transition:color var(--ptc-transition-medium) var(--ptc-ease-out);font-weight:var(--ptc-font-weight-bold)}a:visited{color:var(--color-blue-10)}a:active,a:visited:active{transition:none;color:var(--color-blue-09)}a:hover,a:visited:hover{color:var(--color-blue-08)}a.disabled{color:var(--color-gray-04) !important;cursor:not-allowed}a:focus-visible{outline:5px solid #003dd6 !important;outline-offset:0px !important;border-radius:var(--ptc-border-radius-standard)}.light-links a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a),.light-links a.light-link,.background-grey-10 a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a),.background-grey-10 a.light-link,.background-plm-grey a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a),.background-plm-grey a.light-link{color:var(--color-blue-04);margin:-2px;border:2px solid transparent}.light-links a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):visited,.light-links a.light-link:visited,.background-grey-10 a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):visited,.background-grey-10 a.light-link:visited,.background-plm-grey a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):visited,.background-plm-grey a.light-link:visited{color:var(--color-blue-06)}.light-links a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):active,.light-links a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):visited:active,.light-links a.light-link:active,.light-links a.light-link:visited:active,.background-grey-10 a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):active,.background-grey-10 a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):visited:active,.background-grey-10 a.light-link:active,.background-grey-10 a.light-link:visited:active,.background-plm-grey a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):active,.background-plm-grey a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):visited:active,.background-plm-grey a.light-link:active,.background-plm-grey a.light-link:visited:active{transition:none;color:var(--color-blue-07)}.light-links a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):hover,.light-links a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):visited:hover,.light-links a.light-link:hover,.light-links a.light-link:visited:hover,.background-grey-10 a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):hover,.background-grey-10 a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):visited:hover,.background-grey-10 a.light-link:hover,.background-grey-10 a.light-link:visited:hover,.background-plm-grey a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):hover,.background-plm-grey a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):visited:hover,.background-plm-grey a.light-link:hover,.background-plm-grey a.light-link:visited:hover{color:var(--color-blue-05)}.light-links a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a).disabled,.light-links a.light-link.disabled,.background-grey-10 a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a).disabled,.background-grey-10 a.light-link.disabled,.background-plm-grey a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a).disabled,.background-plm-grey a.light-link.disabled{color:var(--color-gray-04) !important;cursor:not-allowed}.light-links a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):focus-visible,.light-links a.light-link:focus-visible,.background-grey-10 a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):focus-visible,.background-grey-10 a.light-link:focus-visible,.background-plm-grey a:not(.hero-footer-form-wrapper a,ptc-modal inline-form a,.podcast-cta-section a,.vjs-social-share-links a):focus-visible,.background-plm-grey a.light-link:focus-visible{border-radius:var(--ptc-border-radius-standard);border:2px solid white;outline:5px solid var(--keyboard-nav-outline)}.light-links .podcast-cta-section a,.background-grey-10 .podcast-cta-section a,.background-plm-grey .podcast-cta-section a{border:2px solid transparent}.light-links .podcast-cta-section a:focus-visible,.background-grey-10 .podcast-cta-section a:focus-visible,.background-plm-grey .podcast-cta-section a:focus-visible{border-radius:var(--ptc-border-radius-standard);border:2px solid white;outline:5px solid var(--keyboard-nav-outline)}.white-links a{color:var(--color-white) !important}.ptc-link{color:var(--color-gray-10);text-decoration:underline;text-decoration-thickness:2px;text-decoration-color:var(--color-green-06);text-underline-offset:5px;transition:text-decoration-color var(--ptc-transition-medium) var(--ptc-ease-inout)}.ptc-link:hover{color:var(--color-green-06)}.ptc-link:visited{color:var(--color-gray-10)}.ptc-link:active,.ptc-link:visited:active{transition:none;color:var(--color-green-06)}.ptc-link:hover,.ptc-link:visited:hover{color:var(--color-green-06)}.ptc-link-dark{color:var(--color-white);text-decoration:underline;text-decoration-thickness:2px;text-decoration-color:var(--color-green-06);text-underline-offset:5px;transition:text-decoration-color var(--ptc-transition-medium) var(--ptc-ease-inout)}.ptc-link-dark:hover{color:var(--color-green-06)}.ptc-link-dark:visited{color:var(--color-white)}.ptc-link-dark:active,.ptc-link-dark:visited:active{transition:none;color:var(--color-green-06)}.ptc-link-dark:hover,.ptc-link-dark:visited:hover{color:var(--color-green-06)}.vjs-social-share-links a{color:var(--color-white)}.vjs-social-share-links a:hover{color:var(--color-white)}:host{max-width:300px;display:block;padding:18px 10px 12px 10px;border:1px solid var(--color-gray-04);border-radius:var(--ptc-border-radius-standard);margin:auto;height:100%}:host ptc-picture{min-height:100px}:host ptc-para ptc-readmore .box input~label{margin-right:0px}:host ptc-para a{color:var(--color-hyperlink)}";
8
+
9
+ const PtcProductHighlightCard = class {
10
+ constructor(hostRef) {
11
+ index.registerInstance(this, hostRef);
12
+ this.cardTitle = undefined;
13
+ this.cardImage = undefined;
14
+ this.cardImageAltText = undefined;
15
+ this.moreText = "More";
16
+ this.lessText = "Less";
17
+ this.cardDescription = undefined;
18
+ this.browserFirefox = false;
19
+ this.currentLanguage = undefined;
20
+ }
21
+ render() {
22
+ return (index.h(index.Host, null, index.h("ptc-title", { type: "h4", upperline: "no-upperline", "title-margin": "margin-flush", "title-size": "small", "text-align": "center" }, index.h("ptc-tooltip", { "text-display": "block", "text-lines": "2", "z-index": "z-999", description: this.cardTitle, position: "bottom", width: "full-width" })), index.h("ptc-picture", { alt: this.cardImageAltText, src: this.cardImage, "image-alignment": "center", width: "69", "display-image": "inline-block", styles: "img{margin: 12px auto 18px auto}" }), index.h("ptc-para", { "font-size": "x-small", "para-margin": "margin-flush", "para-line-h": "line-height-densest", "para-align": "left", "para-z-index": "z-auto" }, this.browserFirefox &&
23
+ this.currentLanguage.toLowerCase().includes("ja") ? (index.h("slot", null)) : (index.h("ptc-readmore", { "more-text": this.moreText, "less-text": this.lessText, "visible-lines-custom": "8", "read-more-position": "left" }, index.h("slot", null))))));
24
+ }
25
+ };
26
+ PtcProductHighlightCard.style = ptcProductHighlightCardCss;
27
+
28
+ exports.ptc_product_highlight_card = PtcProductHighlightCard;
@@ -0,0 +1,172 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-63ddc79c.js');
6
+
7
+ const ptcProductListCss = "h1,h2,h3,h4,h5,h6,p,ul,li,ptc-subnav,ptc-tab-list,ptc-link,ptc-square-card,.hyphenate-text,ptc-footer{word-break:break-word;hyphens:manual;-webkit-hyphens:manual;-moz-hyphens:manual;-ms-hyphens:manual}@supports (hyphenate-limit-chars: 12 3 3){h1,h2,h3,h4,h5,h6,p,ul,li,ptc-subnav,ptc-tab-list,ptc-link,ptc-square-card,.hyphenate-text,ptc-footer{hyphens:auto;-webkit-hyphenate-limit-before:3;-webkit-hyphenate-limit-after:3;hyphenate-limit-chars:12 3 3;hyphenate-limit-lines:2;hyphenate-limit-last:always;hyphenate-limit-zone:6%;-webkit-hyphens:auto;-webkit-hyphenate-limit-before:3;-webkit-hyphenate-limit-after:3;-webkit-hyphenate-limit-chars:12 3 3;-webkit-hyphenate-limit-lines:2;-moz-hyphens:auto;-moz-hyphenate-limit-chars:12 3 3;-moz-hyphenate-limit-lines:2;-ms-hyphens:auto;-ms-hyphenate-limit-chars:12 3 3;-ms-hyphenate-limit-lines:2}}:host{display:block;padding-bottom:52px}@media only screen and (min-width: 992px){:host{padding-bottom:102px}}:host .no-result-wrap{display:none}:host .no-result-wrap.show{display:block}:host .no-result-wrap .no-result{display:flex;justify-content:center;align-items:center;min-height:160px;padding:20px;text-align:center}";
8
+
9
+ const PtcProductList = class {
10
+ constructor(hostRef) {
11
+ index.registerInstance(this, hostRef);
12
+ this.clearCtaClicked = index.createEvent(this, "clearCtaClicked", 7);
13
+ this.emptyTitle = undefined;
14
+ this.emptySubTitle = undefined;
15
+ this.clearButtonLabel = undefined;
16
+ }
17
+ handleSearchResult(event) {
18
+ const { sender, searchTerm } = event.detail;
19
+ if (sender) {
20
+ this.sortCards(searchTerm);
21
+ }
22
+ }
23
+ handleMultipleSearchResult(event) {
24
+ const { sender, selectedOptions } = event.detail;
25
+ if (sender) {
26
+ this.sortMultipleCards(selectedOptions);
27
+ }
28
+ }
29
+ handleEmptyResult(event) {
30
+ const { sender, searchTerm } = event.detail;
31
+ if (sender) {
32
+ this.noresultSection.classList.add("show");
33
+ this.sortCards(searchTerm);
34
+ }
35
+ }
36
+ sortMultipleCards(searchItems) {
37
+ const categoryList = Array.from(this.hostElement.querySelectorAll("ptc-product-category"));
38
+ categoryList.forEach((category) => {
39
+ const categoryTitle = category.getAttribute("category-title");
40
+ const productList = Array.from(category.querySelectorAll("ptc-product-card"));
41
+ if (searchItems.length > 0) {
42
+ const shouldDisplayCategory = searchItems.some((searchItem) => categoryTitle && categoryTitle.includes(searchItem));
43
+ category.style.display = shouldDisplayCategory
44
+ ? "block"
45
+ : "none";
46
+ if (shouldDisplayCategory) {
47
+ productList.forEach((product) => {
48
+ product.style.display = "block";
49
+ });
50
+ }
51
+ else {
52
+ productList.forEach((product) => {
53
+ const productTitle = product.getAttribute("card-title");
54
+ const shouldDisplayProduct = searchItems.some((searchItem) => productTitle &&
55
+ productTitle.includes(searchItem));
56
+ product.style.display = shouldDisplayProduct
57
+ ? "block"
58
+ : "none";
59
+ });
60
+ }
61
+ }
62
+ else {
63
+ category.style.display = "block";
64
+ productList.forEach((product) => {
65
+ product.style.display = "block";
66
+ });
67
+ }
68
+ });
69
+ }
70
+ // Sorting the
71
+ sortCards(searchItem) {
72
+ const categoryList = this.hostElement.querySelectorAll("ptc-product-category");
73
+ categoryList.forEach((category) => {
74
+ const categoryTitle = category.getAttribute("category-title");
75
+ const productList = category.querySelectorAll("ptc-product-card");
76
+ category.style.display = "none";
77
+ if (searchItem === "") {
78
+ category.style.display = "block";
79
+ productList.forEach((product) => {
80
+ product.style.display = "block";
81
+ });
82
+ this.noresultSection.classList.remove("show");
83
+ }
84
+ else {
85
+ const searchItemLowerCase = searchItem; //
86
+ if (searchItemLowerCase === categoryTitle) {
87
+ category.style.display = "block";
88
+ productList.forEach((product) => {
89
+ product.style.display = "block";
90
+ });
91
+ }
92
+ else {
93
+ productList.forEach((product) => {
94
+ const productTitle = product.getAttribute("card-title");
95
+ product.style.display = "none";
96
+ if (searchItemLowerCase === productTitle) {
97
+ product.style.display = "block";
98
+ category.style.display = "block";
99
+ }
100
+ });
101
+ }
102
+ }
103
+ });
104
+ }
105
+ componentDidLoad() {
106
+ // ptcLogger.log('Component loaded!');
107
+ // ptcLogger.info('Component loaded!');
108
+ // ptcLogger.warn('Component loaded!');
109
+ // ptcLogger.error('Component loaded!');
110
+ this.addIds();
111
+ this.noresultSection = this.hostElement.shadowRoot.querySelector(".no-result-wrap");
112
+ this.productList = this.hostElement.shadowRoot.querySelector(".product-list");
113
+ const productCards = this.hostElement.querySelectorAll("ptc-product-category ptc-product-card");
114
+ productCards.forEach((card) => {
115
+ const toggleBtn = card.shadowRoot.querySelector(".toggle-btn");
116
+ if (toggleBtn) {
117
+ const handleToggle = () => {
118
+ if (card.classList.contains("has-opened")) {
119
+ card.classList.remove("has-opened");
120
+ }
121
+ else {
122
+ card.classList.add("has-opened");
123
+ }
124
+ this.hideAllCards(card);
125
+ };
126
+ toggleBtn.addEventListener("click", handleToggle);
127
+ toggleBtn.addEventListener("keydown", (event) => {
128
+ if (event.key === "Enter") {
129
+ handleToggle();
130
+ }
131
+ });
132
+ }
133
+ });
134
+ }
135
+ hideAllCards(selectedCard) {
136
+ const productCards = this.hostElement.querySelectorAll("ptc-product-category ptc-product-card");
137
+ productCards.forEach((card) => {
138
+ if (selectedCard != card) {
139
+ card.classList.remove("has-opened");
140
+ }
141
+ });
142
+ }
143
+ handleClick(event) {
144
+ this.clearCtaClicked.emit({
145
+ sender: this,
146
+ event: event,
147
+ });
148
+ }
149
+ // Adding id to the category and product cards
150
+ addIds() {
151
+ const categoryList = this.hostElement.querySelectorAll("ptc-product-category");
152
+ categoryList.forEach((category) => {
153
+ const categoryTitle = category.getAttribute("category-title");
154
+ category.setAttribute("id", categoryTitle);
155
+ const productList = category.querySelectorAll("ptc-product-card");
156
+ productList.forEach((product) => {
157
+ const productTitle = product.getAttribute("card-title");
158
+ product.setAttribute("id", productTitle);
159
+ });
160
+ });
161
+ }
162
+ render() {
163
+ return (index.h(index.Host, null, index.h("div", { class: "product-list" }, index.h("slot", null)), index.h("div", { class: "no-result-wrap" }, index.h("div", { class: "no-result" }, index.h("div", null, index.h("ptc-title", { type: "h3", "title-margin": "margin-flush", upperline: "no-upperline", "title-size": "large" }, this.emptyTitle || "No Results Found"), index.h("ptc-para", { "font-size": "x-small" }, this.emptySubTitle ||
164
+ "Try changing or removing some of your filters"), index.h("ptc-button", { type: "link", color: "ptc-quaternary", target: "_blank", onClick: (e) => {
165
+ this.handleClick(e);
166
+ } }, this.clearButtonLabel || "Clear Filters"))))));
167
+ }
168
+ get hostElement() { return index.getElement(this); }
169
+ };
170
+ PtcProductList.style = ptcProductListCss;
171
+
172
+ exports.ptc_product_list = PtcProductList;