@ptcwebops/ptcw-design 6.4.33-beta → 6.4.35-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.
- package/dist/cjs/buying-option-cards-slider.cjs.entry.js +1 -1
- package/dist/cjs/event-podcast-slider-example.cjs.entry.js +1 -1
- package/dist/cjs/featured-events-slider-example.cjs.entry.js +1 -1
- package/dist/cjs/homepage-jumbotron.cjs.entry.js +1 -1
- package/dist/cjs/icon-asset_2.cjs.entry.js +154 -0
- package/dist/cjs/list-item.cjs.entry.js +52 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/ptc-back-to-top.cjs.entry.js +100 -0
- package/dist/cjs/ptc-breadcrumb.cjs.entry.js +63 -0
- package/dist/cjs/ptc-button.cjs.entry.js +117 -0
- package/dist/cjs/ptc-card_2.cjs.entry.js +1 -1
- package/dist/cjs/ptc-case-studies-slider.cjs.entry.js +1 -1
- package/dist/cjs/ptc-icon-card-slider-example.cjs.entry.js +1 -1
- package/dist/cjs/ptc-icon-component.cjs.entry.js +1 -1
- package/dist/cjs/ptc-para.cjs.entry.js +139 -0
- package/dist/cjs/ptc-picture.cjs.entry.js +185 -0
- package/dist/cjs/ptc-product-card.cjs.entry.js +61 -0
- package/dist/cjs/ptc-product-category.cjs.entry.js +20 -0
- package/dist/cjs/ptc-product-dropdown.cjs.entry.js +80 -0
- package/dist/cjs/ptc-product-highlight-card.cjs.entry.js +28 -0
- package/dist/cjs/ptc-product-list.cjs.entry.js +172 -0
- package/dist/cjs/ptc-product-sidebar.cjs.entry.js +178 -0
- package/dist/cjs/ptc-readmore.cjs.entry.js +186 -0
- package/dist/cjs/ptc-spacer.cjs.entry.js +38 -0
- package/dist/cjs/ptc-title.cjs.entry.js +161 -0
- package/dist/cjs/ptc-tooltip.cjs.entry.js +113 -0
- package/dist/cjs/ptcw-design.cjs.js +1 -1
- package/dist/cjs/storefront-enhanced-product-list-alt-example.cjs.entry.js +1 -1
- package/dist/cjs/storefront-enhanced-product-list-example.cjs.entry.js +1 -1
- package/dist/collection/components/buying-option-cards-slider/buying-option-cards-slider.css +11 -16
- package/dist/collection/components/organism-bundles/event-podcast-slider-example/event-podcast-slider-example.css +11 -16
- package/dist/collection/components/organism-bundles/featured-events-slider-example/featured-events-slider-example.css +11 -16
- package/dist/collection/components/organism-bundles/homepage-jumbotron/homepage-jumbotron.css +11 -16
- package/dist/collection/components/organism-bundles/ptc-icon-card-slider-example/ptc-icon-card-slider-example.css +11 -16
- package/dist/collection/components/organism-bundles/storefront-enhanced-product-list-example/storefront-enhanced-product-list-example.css +11 -16
- package/dist/collection/components/ptc-case-studies-slider/ptc-case-studies-slider.css +11 -16
- package/dist/collection/components/ptc-icon-component/ptc-icon-component.css +11 -16
- package/dist/collection/components/ptc-preloader-section/ptc-preloader-section.css +4 -4
- package/dist/collection/components/ptc-seo-title/ptc-seo-title.js +3 -3
- package/dist/custom-elements/index.js +9 -9
- package/dist/esm/blog-detail-content_2.entry.js +1 -1
- package/dist/esm/blog-detail-layout.entry.js +1 -1
- package/dist/esm/blogs-search-section.entry.js +1 -1
- package/dist/esm/buying-option-cards-slider.entry.js +1 -1
- package/dist/esm/event-podcast-slider-example.entry.js +1 -1
- package/dist/esm/featured-events-slider-example.entry.js +1 -1
- package/dist/esm/homepage-jumbotron.entry.js +2 -2
- package/dist/esm/homepage-toggled-content.entry.js +1 -1
- package/dist/esm/icon-asset_2.entry.js +149 -0
- package/dist/esm/innovator-toggle-container.entry.js +1 -1
- package/dist/esm/{interfaces-7c0243be.js → interfaces-4caedd26.js} +1 -1
- package/dist/esm/list-item.entry.js +48 -0
- package/dist/esm/loader.js +1 -1
- package/dist/esm/most-popular-news.entry.js +1 -1
- package/dist/esm/my-component.entry.js +1 -1
- package/dist/esm/ptc-accordion-item.entry.js +1 -1
- package/dist/esm/ptc-back-to-top.entry.js +96 -0
- package/dist/esm/ptc-background-video.entry.js +1 -1
- package/dist/esm/ptc-breadcrumb.entry.js +59 -0
- package/dist/esm/ptc-button.entry.js +113 -0
- package/dist/esm/ptc-card_2.entry.js +1 -1
- package/dist/esm/ptc-case-studies-slider.entry.js +1 -1
- package/dist/esm/ptc-collapse-list.entry.js +1 -1
- package/dist/esm/ptc-form-checkbox_4.entry.js +1 -1
- package/dist/esm/ptc-homepage-image-feature.entry.js +1 -1
- package/dist/esm/ptc-homepage-video-background.entry.js +1 -1
- package/dist/esm/ptc-icon-card-slider-example.entry.js +1 -1
- package/dist/esm/ptc-icon-card.entry.js +1 -1
- package/dist/esm/ptc-icon-component.entry.js +1 -1
- package/dist/esm/ptc-img.entry.js +1 -1
- package/dist/esm/ptc-link.entry.js +1 -1
- package/dist/esm/ptc-media-card.entry.js +1 -1
- package/dist/esm/ptc-para.entry.js +135 -0
- package/dist/esm/ptc-picture.entry.js +181 -0
- package/dist/esm/ptc-pricing-packaging-table.entry.js +1 -1
- package/dist/esm/ptc-pricing-tabs.entry.js +1 -1
- package/dist/esm/ptc-product-card.entry.js +57 -0
- package/dist/esm/ptc-product-category.entry.js +16 -0
- package/dist/esm/ptc-product-dropdown.entry.js +76 -0
- package/dist/esm/ptc-product-highlight-card.entry.js +24 -0
- package/dist/esm/ptc-product-list.entry.js +168 -0
- package/dist/esm/ptc-product-sidebar.entry.js +174 -0
- package/dist/esm/ptc-readmore.entry.js +182 -0
- package/dist/esm/ptc-social-icons-footer.entry.js +1 -1
- package/dist/esm/ptc-spacer.entry.js +34 -0
- package/dist/esm/ptc-title.entry.js +157 -0
- package/dist/esm/ptc-tooltip.entry.js +109 -0
- package/dist/esm/ptcw-design.js +1 -1
- package/dist/esm/storefront-enhanced-product-list-alt-example.entry.js +1 -1
- package/dist/esm/storefront-enhanced-product-list-example.entry.js +1 -1
- package/dist/esm/{utils-a64ba942.js → utils-bdd0cc16.js} +1 -1
- package/dist/ptcw-design/p-00c5879b.entry.js +1 -0
- package/dist/ptcw-design/p-03a1e1a5.entry.js +1 -0
- package/dist/ptcw-design/p-068b64a1.entry.js +1 -0
- package/dist/ptcw-design/p-0ea22cdc.entry.js +1 -0
- package/dist/ptcw-design/p-183ba1ca.entry.js +1 -0
- package/dist/ptcw-design/p-1acd3617.entry.js +1 -0
- package/dist/ptcw-design/p-1b3394a7.entry.js +1 -0
- package/dist/ptcw-design/p-2e288e60.entry.js +1 -0
- package/dist/ptcw-design/{p-0824f503.entry.js → p-2efd18d8.entry.js} +1 -1
- package/dist/ptcw-design/{p-681d26ef.entry.js → p-2f7b6437.entry.js} +1 -1
- package/dist/ptcw-design/p-2f82de8f.entry.js +1 -0
- package/dist/ptcw-design/p-36d6e662.entry.js +1 -0
- package/dist/ptcw-design/p-4313edfb.entry.js +1 -0
- package/dist/ptcw-design/p-47aa1583.entry.js +1 -0
- package/dist/ptcw-design/p-5119fb48.entry.js +1 -0
- package/dist/ptcw-design/p-561a622f.entry.js +1 -0
- package/dist/ptcw-design/{p-ed49544c.entry.js → p-562a3e36.entry.js} +1 -1
- package/dist/ptcw-design/{p-fa045097.entry.js → p-5b00a563.entry.js} +1 -1
- package/dist/ptcw-design/{p-fd269576.entry.js → p-5dd9b00c.entry.js} +1 -1
- package/dist/ptcw-design/p-674c828e.entry.js +1 -0
- package/dist/ptcw-design/p-709cc1f0.entry.js +1 -0
- package/dist/ptcw-design/{p-ee1183b2.js → p-711bcdad.js} +1 -1
- package/dist/ptcw-design/p-73293d32.entry.js +1 -0
- package/dist/ptcw-design/{p-bdb2e42c.entry.js → p-75c8fceb.entry.js} +1 -1
- package/dist/ptcw-design/{p-7524411a.entry.js → p-7777753a.entry.js} +1 -1
- package/dist/ptcw-design/{p-a31f22a1.entry.js → p-804dac0c.entry.js} +1 -1
- package/dist/ptcw-design/{p-e2da8109.entry.js → p-83dabf2e.entry.js} +1 -1
- package/dist/ptcw-design/{p-83632220.entry.js → p-850e6e8c.entry.js} +1 -1
- package/dist/ptcw-design/{p-87a9a028.entry.js → p-87215e3a.entry.js} +1 -1
- package/dist/ptcw-design/p-87e4c337.entry.js +1 -0
- package/dist/ptcw-design/p-89da867f.entry.js +1 -0
- package/dist/ptcw-design/p-8efaac1b.entry.js +1 -0
- package/dist/ptcw-design/{p-769954c9.entry.js → p-91a9f126.entry.js} +1 -1
- package/dist/ptcw-design/{p-7398874a.entry.js → p-9df3c31f.entry.js} +1 -1
- package/dist/ptcw-design/{p-2fa5814b.entry.js → p-a318a793.entry.js} +1 -1
- package/dist/ptcw-design/p-a3ef1660.entry.js +1 -0
- package/dist/ptcw-design/{p-9461c4eb.entry.js → p-a81833cd.entry.js} +1 -1
- package/dist/ptcw-design/{p-3596ce5a.entry.js → p-b154bbdb.entry.js} +1 -1
- package/dist/ptcw-design/p-b1c51eb4.entry.js +1 -0
- package/dist/ptcw-design/{p-fb0f4459.entry.js → p-b2fcbbd8.entry.js} +1 -1
- package/dist/ptcw-design/{p-22cf00e7.js → p-c7e948b2.js} +1 -1
- package/dist/ptcw-design/p-c9762c88.entry.js +1 -0
- package/dist/ptcw-design/{p-1b1fd60d.entry.js → p-cf41ac32.entry.js} +1 -1
- package/dist/ptcw-design/{p-b9966f20.entry.js → p-d3c11c68.entry.js} +1 -1
- package/dist/ptcw-design/p-d428ba40.entry.js +1 -0
- package/dist/ptcw-design/p-e00c5964.entry.js +1 -0
- package/dist/ptcw-design/p-e1373325.entry.js +1 -0
- package/dist/ptcw-design/{p-edaf241d.entry.js → p-e65cbdb9.entry.js} +1 -1
- package/dist/ptcw-design/p-ec22d0b8.entry.js +1 -0
- package/dist/ptcw-design/ptcw-design.esm.js +1 -1
- package/dist/types/components.d.ts +62 -62
- package/package.json +101 -101
- package/readme.md +23 -23
- package/dist/cjs/icon-asset_17.cjs.entry.js +0 -1660
- package/dist/cjs/ptc-search-field.cjs.entry.js +0 -95
- package/dist/esm/icon-asset_17.entry.js +0 -1640
- package/dist/esm/ptc-search-field.entry.js +0 -91
- package/dist/ptcw-design/p-045c468a.entry.js +0 -1
- package/dist/ptcw-design/p-1a47d0fe.entry.js +0 -1
- package/dist/ptcw-design/p-4e8c1ba6.entry.js +0 -1
- package/dist/ptcw-design/p-5aed43be.entry.js +0 -1
- package/dist/ptcw-design/p-8ffdd794.entry.js +0 -1
- package/dist/ptcw-design/p-af46854e.entry.js +0 -1
- package/dist/ptcw-design/p-da4b7e23.entry.js +0 -1
- package/dist/ptcw-design/p-e50a5a46.entry.js +0 -1
- package/dist/ptcw-design/p-e69a0445.entry.js +0 -1
- package/dist/ptcw-design/p-e9f834fa.entry.js +0 -1
- package/dist/ptcw-design/p-eabf87be.entry.js +0 -1
- package/dist/ptcw-design/p-fe445a4a.entry.js +0 -1
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-0bf594c4.js';
|
|
2
|
+
|
|
3
|
+
const ptcReadmoreCss = "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}.box input{opacity:0;position:absolute;pointer-events:none}.box .read-more-text{display:-webkit-box;-webkit-box-orient:vertical;margin:0;overflow:hidden;word-wrap:break-word}.box .line1{-webkit-line-clamp:1}.box .line2{-webkit-line-clamp:2}.box .line3{-webkit-line-clamp:3}.box .line4{-webkit-line-clamp:4}.box .line5{-webkit-line-clamp:5}.box .line10{-webkit-line-clamp:10}.box input~label{display:block;position:relative;cursor:pointer;right:0;margin-top:var(--ptc-element-spacing-02);font-weight:var(--ptc-font-weight-bold);font-size:var(--ptc-font-size-x-small);line-height:var(--ptc-line-height-densest);text-decoration-line:underline;color:var(--color-hyperlink);text-align:right;margin-right:var(--ptc-element-spacing-07)}.box input~label.left{text-align:left}.box input~label.right{text-align:right}.box input~label.center{text-align:center;margin-right:0}.box label:focus-visible{outline:none}.box label:focus-visible span{border-radius:var(--ptc-border-radius-standard);outline:5px solid var(--keyboard-nav-outline)}.box .z-auto{z-index:auto}.box .z-1{z-index:1}.box .z-2{z-index:2}.box .z-3{z-index:3}.box .z-999{z-index:999}.box input:checked+.read-more-text{-webkit-line-clamp:unset !important}.box .read-more-text:not(.truncated)~label{display:none}.box .show-less-cta{display:block !important}:host .box.add-icon .read-more-cta-label span{display:inline-block;position:relative;padding-right:var(--ptc-element-spacing-03)}:host .box.add-icon .read-more-cta-label span::after{content:\"\";background-image:url(\"data:image/svg+xml,%3Csvg viewBox='0 0 10 7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%2300890B' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E\");width:10px;height:7px;background-size:cover;position:absolute;right:-5px;bottom:7px}:host .box.add-icon .read-more-cta-label.show-less-cta span::after{transform:rotate(180deg)}:host .box.blue .read-more-cta-label{color:var(--color-hyperlink)}:host .box.gray .read-more-cta-label{color:var(--color-gray-10)}:host .box.green .read-more-cta-label{color:var(--color-green-07)}:host .box.initial .read-more-cta-label{color:initial}:host .box.small .read-more-cta-label{font-size:var(--ptc-font-size-x-small);line-height:var(--ptc-line-height-densest)}:host .box.medium .read-more-cta-label{font-size:var(--ptc-font-size-small);line-height:var(--ptc-line-height-p)}:host .box.large .read-more-cta-label{font-size:var(--ptc-font-size-large);line-height:var(--ptc-line-height-p)}:host .box.large.add-icon .read-more-cta-label span{padding-right:var(--ptc-element-spacing-04)}:host .box.large.add-icon .read-more-cta-label span::after{width:15px;height:10px}";
|
|
4
|
+
|
|
5
|
+
const PtcReadmore = class {
|
|
6
|
+
constructor(hostRef) {
|
|
7
|
+
registerInstance(this, hostRef);
|
|
8
|
+
this.readmoreToggle = createEvent(this, "readmoreToggle", 7);
|
|
9
|
+
/**
|
|
10
|
+
* Handle keyboard interactions
|
|
11
|
+
*/
|
|
12
|
+
this.handleKeyDown = (event) => {
|
|
13
|
+
if (event.key !== "Enter")
|
|
14
|
+
return;
|
|
15
|
+
const checkBoxEl = this.el.shadowRoot.querySelector("#expanded");
|
|
16
|
+
const cta = this.el.shadowRoot.querySelector(".read-more-cta-label");
|
|
17
|
+
if (!checkBoxEl || !cta)
|
|
18
|
+
return;
|
|
19
|
+
checkBoxEl.checked = !checkBoxEl.checked;
|
|
20
|
+
const isExpanded = checkBoxEl.checked;
|
|
21
|
+
cta.innerHTML = `<span>${isExpanded ? this.lessText || "" : this.moreText || ""}</span>`;
|
|
22
|
+
cta.classList.toggle("show-less-cta", isExpanded);
|
|
23
|
+
if (isExpanded) {
|
|
24
|
+
// Focus on the first element with tabindex="-1" within 'ptc-readmore'
|
|
25
|
+
const firstTabIndexMinusOne = this.el.querySelector('[tabindex="-1"]');
|
|
26
|
+
firstTabIndexMinusOne === null || firstTabIndexMinusOne === void 0 ? void 0 : firstTabIndexMinusOne.focus();
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
cta.focus();
|
|
30
|
+
const readMoreText = this.el.shadowRoot.querySelector(".read-more-text");
|
|
31
|
+
readMoreText === null || readMoreText === void 0 ? void 0 : readMoreText.classList.add("truncated");
|
|
32
|
+
}
|
|
33
|
+
this.setTabIndex();
|
|
34
|
+
// if lessText content is not present then add tabindex=-1 to the more/less label
|
|
35
|
+
if (cta.textContent == "") {
|
|
36
|
+
cta.setAttribute("tabindex", "-1");
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
this.moreText = "read more";
|
|
40
|
+
this.lessText = undefined;
|
|
41
|
+
this.readMorePosition = "right";
|
|
42
|
+
this.display = "inline";
|
|
43
|
+
this.visibleLines = "line2";
|
|
44
|
+
this.visibleLinesCustom = undefined;
|
|
45
|
+
this.zIndex = "z-auto";
|
|
46
|
+
this.checked = false;
|
|
47
|
+
this.size = "small";
|
|
48
|
+
this.isIcon = false;
|
|
49
|
+
this.color = "blue";
|
|
50
|
+
this.isContentSlotted = false;
|
|
51
|
+
}
|
|
52
|
+
async updateReadmoreStatus() {
|
|
53
|
+
setTimeout(() => {
|
|
54
|
+
this.addBtnTruncated();
|
|
55
|
+
}, 100);
|
|
56
|
+
}
|
|
57
|
+
addBtnTruncated() {
|
|
58
|
+
const appRoot = this.el.shadowRoot;
|
|
59
|
+
const ps = appRoot.querySelectorAll(".read-more-text");
|
|
60
|
+
ps.forEach((p) => {
|
|
61
|
+
// if (this.visibleCharacters){
|
|
62
|
+
// const truncatedText = p.textContent.slice(0, this.visibleCharacters);
|
|
63
|
+
// p.textContent = truncatedText;
|
|
64
|
+
// }
|
|
65
|
+
p.classList[p.scrollHeight > p.clientHeight ? "add" : "remove"]("truncated");
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
// Created this function to initialize the truncate function on specific elements like tabs
|
|
69
|
+
enableAddTruncatedClass(element) {
|
|
70
|
+
const allTabHeaders = document.querySelectorAll(element);
|
|
71
|
+
for (const element of Array.from(allTabHeaders)) {
|
|
72
|
+
let tabHeader = element;
|
|
73
|
+
if (tabHeader) {
|
|
74
|
+
tabHeader.addEventListener("click", () => {
|
|
75
|
+
setTimeout(() => {
|
|
76
|
+
this.addBtnTruncated();
|
|
77
|
+
}, 100);
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
componentDidLoad() {
|
|
83
|
+
this.addBtnTruncated();
|
|
84
|
+
document.addEventListener("readystatechange", () => {
|
|
85
|
+
if (document.readyState === "complete") {
|
|
86
|
+
this.addBtnTruncated();
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
this.enableAddTruncatedClass("tab-header");
|
|
90
|
+
this.enableAddTruncatedClass("ptc-ellipsis-dropdown");
|
|
91
|
+
this.enableAddTruncatedClass("ptc-product-card");
|
|
92
|
+
// added code for tabnavigation
|
|
93
|
+
setTimeout(() => {
|
|
94
|
+
this.setTabIndex();
|
|
95
|
+
}, 400);
|
|
96
|
+
}
|
|
97
|
+
setTabIndex() {
|
|
98
|
+
var _a, _b, _c;
|
|
99
|
+
//debugger
|
|
100
|
+
let links;
|
|
101
|
+
if (!this.isContentSlotted) {
|
|
102
|
+
links = (_a = this.el) === null || _a === void 0 ? void 0 : _a.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])');
|
|
103
|
+
}
|
|
104
|
+
else {
|
|
105
|
+
let slot = (_b = this.el) === null || _b === void 0 ? void 0 : _b.querySelector("slot").assignedNodes();
|
|
106
|
+
links =
|
|
107
|
+
slot[0] instanceof HTMLElement
|
|
108
|
+
? slot[0].querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])')
|
|
109
|
+
: null;
|
|
110
|
+
}
|
|
111
|
+
let bottom = 999999;
|
|
112
|
+
let rects = (_c = this.el.shadowRoot
|
|
113
|
+
.querySelector(".read-more-text")) === null || _c === void 0 ? void 0 : _c.getClientRects();
|
|
114
|
+
if (rects && rects.length > 0) {
|
|
115
|
+
bottom = rects[0].bottom;
|
|
116
|
+
}
|
|
117
|
+
if (links) {
|
|
118
|
+
links.forEach((link) => {
|
|
119
|
+
let linkRects = link.getClientRects();
|
|
120
|
+
if (linkRects && linkRects.length > 0) {
|
|
121
|
+
if (linkRects[0].top < bottom) {
|
|
122
|
+
link.setAttribute("tabindex", "0");
|
|
123
|
+
}
|
|
124
|
+
else {
|
|
125
|
+
link.setAttribute("tabindex", "-1");
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
// click event handler
|
|
132
|
+
handleClick(event) {
|
|
133
|
+
var _a;
|
|
134
|
+
let links = (_a = this.el) === null || _a === void 0 ? void 0 : _a.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])');
|
|
135
|
+
this.addBtnTruncated();
|
|
136
|
+
// check if the input box is checked
|
|
137
|
+
this.checked = event.target.checked;
|
|
138
|
+
// Getting cta element
|
|
139
|
+
const cta = this.el.shadowRoot.querySelector(".read-more-cta-label");
|
|
140
|
+
// Updating the cta text
|
|
141
|
+
this.checked
|
|
142
|
+
? (cta.innerHTML = `<span> ${this.lessText ? this.lessText : ""} </span>`)
|
|
143
|
+
: (cta.innerHTML = `<span> ${this.moreText ? this.moreText : ""}</span>`);
|
|
144
|
+
this.checked
|
|
145
|
+
? cta.classList.add("show-less-cta")
|
|
146
|
+
: cta.classList.remove("show-less-cta");
|
|
147
|
+
// Emit the state change event
|
|
148
|
+
this.readmoreToggle.emit({
|
|
149
|
+
event: event,
|
|
150
|
+
sender: this.el,
|
|
151
|
+
isExpanded: this.checked,
|
|
152
|
+
});
|
|
153
|
+
if (links) {
|
|
154
|
+
if (this.checked) {
|
|
155
|
+
links.forEach((link) => {
|
|
156
|
+
link.setAttribute("tabindex", "0");
|
|
157
|
+
});
|
|
158
|
+
}
|
|
159
|
+
else {
|
|
160
|
+
this.setTabIndex();
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
render() {
|
|
165
|
+
const classMap = this.getCssClassMap();
|
|
166
|
+
return (h(Host, { class: this.display }, h("div", { class: classMap }, h("input", { type: "checkbox", id: "expanded", onClick: (e) => this.handleClick(e), tabIndex: -1 }), !!this.visibleLines || !!this.visibleLinesCustom ? (h("p", { class: `read-more-text ${this.visibleLines}`, style: {
|
|
167
|
+
WebkitLineClamp: `${this.visibleLinesCustom}`,
|
|
168
|
+
} }, h("slot", null))) : null, h("label", { onKeyDown: this.handleKeyDown, htmlFor: "expanded", role: "button", class: `${this.zIndex + " " + this.readMorePosition} read-more-cta-label mf-listen`, tabIndex: 0 }, h("span", null, this.moreText)))));
|
|
169
|
+
}
|
|
170
|
+
getCssClassMap() {
|
|
171
|
+
return {
|
|
172
|
+
["box"]: true,
|
|
173
|
+
[this.color]: true,
|
|
174
|
+
[this.size]: true,
|
|
175
|
+
["add-icon"]: this.isIcon,
|
|
176
|
+
};
|
|
177
|
+
}
|
|
178
|
+
get el() { return getElement(this); }
|
|
179
|
+
};
|
|
180
|
+
PtcReadmore.style = ptcReadmoreCss;
|
|
181
|
+
|
|
182
|
+
export { PtcReadmore as ptc_readmore };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { r as registerInstance, h, H as Host, a as getElement } from './index-0bf594c4.js';
|
|
2
|
-
import { C as CheckDarkFocusState } from './utils-
|
|
2
|
+
import { C as CheckDarkFocusState } from './utils-bdd0cc16.js';
|
|
3
3
|
import { f as facebookSVG, l as linkedinSVG, x as xSVG } from './x-cd64dee4.js';
|
|
4
4
|
|
|
5
5
|
const instagramSVG = `<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { r as registerInstance, h, H as Host } from './index-0bf594c4.js';
|
|
2
|
+
|
|
3
|
+
const ptcSpacerCss = ":host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;position:relative;display:block;width:12px;min-width:12px;height:12px}@media (min-width: 36em){:host{width:16px;min-width:16px;height:16px}}:host(.ptc-spacer-horizontal){display:inline-block;height:100% !important}:host(.ptc-spacer-horizontal.xx-small){width:4px;min-width:4px;height:100%}@media (min-width: 36em){:host(.ptc-spacer-horizontal.xx-small){width:4px;min-width:4px}}:host(.ptc-spacer-horizontal.x-small){width:4px;min-width:4px;height:100%}@media (min-width: 36em){:host(.ptc-spacer-horizontal.x-small){width:8px;min-width:8px}}:host(.ptc-spacer-horizontal.small){width:8px;min-width:8px;height:100%}@media (min-width: 36em){:host(.ptc-spacer-horizontal.small){width:12px;min-width:12px}}:host(.ptc-spacer-horizontal.medium){height:100%}:host(.ptc-spacer-horizontal.large){width:16px;min-width:16px;height:100%}@media (min-width: 36em){:host(.ptc-spacer-horizontal.large){width:20px;min-width:20px}}:host(.ptc-spacer-horizontal.x-large){width:20px;min-width:20px;height:100%}@media (min-width: 36em){:host(.ptc-spacer-horizontal.x-large){width:28px;min-width:28px}}:host(.ptc-spacer-horizontal.xx-large){width:28px;min-width:28px;height:100%}@media (min-width: 36em){:host(.ptc-spacer-horizontal.xx-large){width:36px;min-width:36px}}:host(.ptc-spacer-horizontal.xxx-large){width:36px;min-width:36px;height:100%}@media (min-width: 36em){:host(.ptc-spacer-horizontal.xxx-large){width:48px;min-width:48px}}:host(.ptc-spacer-horizontal.xxxx-large){width:48px;min-width:48px;height:100%}@media (min-width: 36em){:host(.ptc-spacer-horizontal.xxxx-large){width:72px;min-width:72px}}:host(.ptc-spacer-vertical.xx-small){width:100%;height:4px;min-height:4px}:host(.ptc-spacer-vertical.x-small){width:100%;height:4px;min-height:4px}@media (min-width: 36em){:host(.ptc-spacer-vertical.x-small){height:8px;min-height:8px}}:host(.ptc-spacer-vertical.small){width:100%;height:8px;min-height:8px}@media (min-width: 36em){:host(.ptc-spacer-vertical.small){height:12px;min-height:12px}}:host(.ptc-spacer-vertical.medium){width:100%}:host(.ptc-spacer-vertical.large){width:100%;height:16px;min-height:16px}@media (min-width: 36em){:host(.ptc-spacer-vertical.large){height:20px;min-height:20px}}:host(.ptc-spacer-vertical.x-large){width:100%;height:20px;min-height:20px}@media (min-width: 36em){:host(.ptc-spacer-vertical.x-large){height:28px;min-height:28px}}:host(.ptc-spacer-vertical.xx-large){width:100%;height:28px;min-height:28px}@media (min-width: 36em){:host(.ptc-spacer-vertical.xx-large){height:36px;min-height:36px}}:host(.ptc-spacer-vertical.xxx-large){width:100%;height:36px;min-height:36px}@media (min-width: 36em){:host(.ptc-spacer-vertical.xxx-large){height:48px;min-height:48px}}:host(.ptc-spacer-vertical.xxxx-large){width:100%;height:48px;min-height:48px}@media (min-width: 36em){:host(.ptc-spacer-vertical.xxxx-large){height:72px;min-height:72px}}:host(.ptc-spacer-vertical.space-144){width:100%;height:144px;min-height:144px}:host(.ptc-spacer-vertical.space-120){width:100%;height:120px;min-height:120px}:host(.ptc-spacer-vertical.space-128){width:100%;height:128px;min-height:128px}:host(.ptc-spacer-xx-small){display:none}@media (max-width: 22.5em){:host(.ptc-spacer-xx-small){display:block}}:host(.ptc-spacer-x-small){display:none}@media (max-width: 35.99em){:host(.ptc-spacer-x-small){display:block}}:host(.ptc-spacer-small){display:none}@media (min-width: 36em){:host(.ptc-spacer-small){display:block}}:host(.ptc-spacer-medium){display:none}@media (min-width: 48em){:host(.ptc-spacer-medium){display:block}}:host(.ptc-spacer-large){display:none}@media (min-width: 62em){:host(.ptc-spacer-large){display:block}}:host(.ptc-spacer-x-large){display:none}@media (min-width: 64.0625em){:host(.ptc-spacer-x-large){display:block}}:host(.ptc-spacer-xx-large){display:none}@media (min-width: 75em){:host(.ptc-spacer-xx-large){display:block}}:host(.ptc-spacer-xxx-large){display:none}@media (min-width: 90em){:host(.ptc-spacer-xxx-large){display:block}}";
|
|
4
|
+
|
|
5
|
+
const PtcSpacer = class {
|
|
6
|
+
constructor(hostRef) {
|
|
7
|
+
registerInstance(this, hostRef);
|
|
8
|
+
this.breakpoint = "";
|
|
9
|
+
this.size = "medium";
|
|
10
|
+
this.direction = "vertical";
|
|
11
|
+
}
|
|
12
|
+
render() {
|
|
13
|
+
const classMap = this.getCssClassMap();
|
|
14
|
+
return h(Host, { class: classMap });
|
|
15
|
+
}
|
|
16
|
+
getCssClassMap() {
|
|
17
|
+
return {
|
|
18
|
+
[this.size]: true,
|
|
19
|
+
["ptc-spacer-horizontal"]: this.direction === "horizontal",
|
|
20
|
+
["ptc-spacer-vertical"]: this.direction === "vertical",
|
|
21
|
+
["ptc-spacer-xx-small"]: this.breakpoint === "xx-small",
|
|
22
|
+
["ptc-spacer-x-small"]: this.breakpoint === "x-small",
|
|
23
|
+
["ptc-spacer-small"]: this.breakpoint === "small",
|
|
24
|
+
["ptc-spacer-medium"]: this.breakpoint === "medium",
|
|
25
|
+
["ptc-spacer-large"]: this.breakpoint === "large",
|
|
26
|
+
["ptc-spacer-x-large"]: this.breakpoint === "x-large",
|
|
27
|
+
["ptc-spacer-xx-large"]: this.breakpoint === "xx-large",
|
|
28
|
+
["ptc-spacer-xxx-large"]: this.breakpoint === "xxx-large",
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
PtcSpacer.style = ptcSpacerCss;
|
|
33
|
+
|
|
34
|
+
export { PtcSpacer as ptc_spacer };
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
import { r as registerInstance, h, H as Host, a as getElement } from './index-0bf594c4.js';
|
|
2
|
+
import { j as getSeoTagType } from './utils-bdd0cc16.js';
|
|
3
|
+
|
|
4
|
+
const ptcTitleCss = "h1.sc-ptc-title,h2.sc-ptc-title,h3.sc-ptc-title,h4.sc-ptc-title,h5.sc-ptc-title,h6.sc-ptc-title,p.sc-ptc-title,ul.sc-ptc-title,li.sc-ptc-title,ptc-subnav.sc-ptc-title,ptc-tab-list.sc-ptc-title,ptc-link.sc-ptc-title,ptc-square-card.sc-ptc-title,.hyphenate-text.sc-ptc-title,ptc-footer.sc-ptc-title{word-break:break-word;hyphens:manual;-webkit-hyphens:manual;-moz-hyphens:manual;-ms-hyphens:manual}@supports (hyphenate-limit-chars: 12 3 3){h1.sc-ptc-title,h2.sc-ptc-title,h3.sc-ptc-title,h4.sc-ptc-title,h5.sc-ptc-title,h6.sc-ptc-title,p.sc-ptc-title,ul.sc-ptc-title,li.sc-ptc-title,ptc-subnav.sc-ptc-title,ptc-tab-list.sc-ptc-title,ptc-link.sc-ptc-title,ptc-square-card.sc-ptc-title,.hyphenate-text.sc-ptc-title,ptc-footer.sc-ptc-title{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}}div.center.sc-ptc-title{text-align:center}div.center.dotted.sc-ptc-title h1.sc-ptc-title::before,div.center.dotted.sc-ptc-title h2.sc-ptc-title::before,div.center.dotted.sc-ptc-title h3.sc-ptc-title::before,div.center.dotted.sc-ptc-title h4.sc-ptc-title::before,div.center.dotted.sc-ptc-title h5.sc-ptc-title::before,div.center.dotted.sc-ptc-title h6.sc-ptc-title::before{left:50%;transform:translateX(-50%)}div.left.sc-ptc-title{text-align:left;width:100%}div.left.dotted.sc-ptc-title h1.sc-ptc-title::before,div.left.dotted.sc-ptc-title h2.sc-ptc-title::before,div.left.dotted.sc-ptc-title h3.sc-ptc-title::before,div.left.dotted.sc-ptc-title h4.sc-ptc-title::before,div.left.dotted.sc-ptc-title h5.sc-ptc-title::before,div.left.dotted.sc-ptc-title h6.sc-ptc-title::before{left:0%}div.right.sc-ptc-title{text-align:right}div.right.dotted.sc-ptc-title h1.sc-ptc-title::before,div.right.dotted.sc-ptc-title h2.sc-ptc-title::before,div.right.dotted.sc-ptc-title h3.sc-ptc-title::before,div.right.dotted.sc-ptc-title h4.sc-ptc-title::before,div.right.dotted.sc-ptc-title h5.sc-ptc-title::before,div.right.dotted.sc-ptc-title h6.sc-ptc-title::before{right:0%}div.inherit.sc-ptc-title{text-align:inherit}div.dotted.sc-ptc-title h1.sc-ptc-title::before,div.dotted.sc-ptc-title h2.sc-ptc-title::before,div.dotted.sc-ptc-title h3.sc-ptc-title::before,div.dotted.sc-ptc-title h4.sc-ptc-title::before,div.dotted.sc-ptc-title h5.sc-ptc-title::before,div.dotted.sc-ptc-title h6.sc-ptc-title::before{content:\"\";position:absolute;top:-6px;width:30%;display:block;border-top:3px dashed var(--color-green-07)}div.solid.sc-ptc-title h1.sc-ptc-title,div.solid.sc-ptc-title h2.sc-ptc-title,div.solid.sc-ptc-title h3.sc-ptc-title,div.solid.sc-ptc-title h4.sc-ptc-title,div.solid.sc-ptc-title h5.sc-ptc-title,div.solid.sc-ptc-title h6.sc-ptc-title{padding-top:12px}div.solid.sc-ptc-title h1.sc-ptc-title::before,div.solid.sc-ptc-title h2.sc-ptc-title::before,div.solid.sc-ptc-title h3.sc-ptc-title::before,div.solid.sc-ptc-title h4.sc-ptc-title::before,div.solid.sc-ptc-title h5.sc-ptc-title::before,div.solid.sc-ptc-title h6.sc-ptc-title::before{content:\"\";position:absolute;width:100%;height:0.7px;background-color:var(--color-gray-03);opacity:0.9;left:0px;top:0}div.solid.sc-ptc-title h1.sc-ptc-title::after,div.solid.sc-ptc-title h2.sc-ptc-title::after,div.solid.sc-ptc-title h3.sc-ptc-title::after,div.solid.sc-ptc-title h4.sc-ptc-title::after,div.solid.sc-ptc-title h5.sc-ptc-title::after,div.solid.sc-ptc-title h6.sc-ptc-title::after{content:\"\";position:absolute;width:56px;height:2px;background-color:var(--color-green-07);top:-2px;left:0px}div.is-standard.sc-ptc-title h1.sc-ptc-title,div.is-standard.sc-ptc-title h2.sc-ptc-title,div.is-standard.sc-ptc-title h3.sc-ptc-title,div.is-standard.sc-ptc-title h4.sc-ptc-title,div.is-standard.sc-ptc-title h5.sc-ptc-title,div.is-standard.sc-ptc-title h6.sc-ptc-title{display:inline-block;position:relative}div.is-standard.sc-ptc-title h1.sc-ptc-title{font-size:var(--ptc-font-size-xxx-large);line-height:var(--ptc-line-height-densest);font-weight:var(--ptc-font-weight-extrabold);letter-spacing:0px;color:var(--color-gray-10)}@media only screen and (min-width: 768px){div.is-standard.sc-ptc-title h1.sc-ptc-title{font-size:var(--ptc-font-size-xxxx-large)}}div.is-standard.sc-ptc-title h2.sc-ptc-title{font-size:var(--ptc-font-size-x-large);line-height:var(--ptc-line-height-densest);font-weight:var(--ptc-font-weight-extrabold);color:var(--color-gray-10)}@media only screen and (min-width: 768px){div.is-standard.sc-ptc-title h2.sc-ptc-title{font-size:var(--ptc-font-size-xx-large)}}div.is-plm-hub.sc-ptc-title h1.sc-ptc-title,div.is-plm-hub.sc-ptc-title h2.sc-ptc-title,div.is-plm-hub.sc-ptc-title h3.sc-ptc-title,div.is-plm-hub.sc-ptc-title h4.sc-ptc-title,div.is-plm-hub.sc-ptc-title h5.sc-ptc-title,div.is-plm-hub.sc-ptc-title h6.sc-ptc-title{display:inline-block;position:relative;margin-block-start:0em;margin-block-end:0em;margin-inline-start:0px;margin-inline-end:0px;color:var(--color-white) !important}div.margin-flush.sc-ptc-title{margin-top:0;margin-bottom:0}div.margin-flush.sc-ptc-title h1.sc-ptc-title,div.margin-flush.sc-ptc-title h2.sc-ptc-title,div.margin-flush.sc-ptc-title h3.sc-ptc-title,div.margin-flush.sc-ptc-title h4.sc-ptc-title,div.margin-flush.sc-ptc-title h5.sc-ptc-title{margin-top:0;margin-bottom:0}div.margin-top-2.sc-ptc-title{margin-top:var(--ptc-element-spacing-02);margin-bottom:0}div.margin-top-3.sc-ptc-title{margin-top:var(--ptc-element-spacing-03);margin-bottom:0}div.margin-top-4.sc-ptc-title{margin-top:var(--ptc-element-spacing-04);margin-bottom:0}div.margin-top-5.sc-ptc-title{margin-top:var(--ptc-element-spacing-05);margin-bottom:0}div.margin-top-6.sc-ptc-title{margin-top:var(--ptc-element-spacing-06);margin-bottom:0}div.margin-bottom-2.sc-ptc-title{margin-bottom:var(--ptc-element-spacing-02);margin-top:0}div.margin-bottom-3.sc-ptc-title{margin-bottom:var(--ptc-element-spacing-03);margin-top:0}div.margin-bottom-4.sc-ptc-title{margin-bottom:var(--ptc-element-spacing-04);margin-top:0}div.margin-bottom-5.sc-ptc-title{margin-bottom:var(--ptc-element-spacing-05);margin-top:0}div.margin-bottom-6.sc-ptc-title{margin-bottom:var(--ptc-element-spacing-06);margin-top:0}div.margin-2.sc-ptc-title{margin-top:var(--ptc-element-spacing-02);margin-bottom:var(--ptc-element-spacing-02)}div.margin-3.sc-ptc-title{margin-top:var(--ptc-element-spacing-03);margin-bottom:var(--ptc-element-spacing-03)}div.margin-4.sc-ptc-title{margin-top:var(--ptc-element-spacing-04);margin-bottom:var(--ptc-element-spacing-04)}div.margin-5.sc-ptc-title{margin-top:var(--ptc-element-spacing-05);margin-bottom:var(--ptc-element-spacing-05)}div.margin-5.sc-ptc-title h4.sc-ptc-title{margin-top:0;margin-bottom:0}div.margin-6.sc-ptc-title{margin-top:var(--ptc-element-spacing-06);margin-bottom:var(--ptc-element-spacing-06)}div.margin-9.sc-ptc-title{margin-top:var(--ptc-element-spacing-09);margin-bottom:var(--ptc-element-spacing-09)}div.green.sc-ptc-title h1.sc-ptc-title,div.green.sc-ptc-title h2.sc-ptc-title,div.green.sc-ptc-title h3.sc-ptc-title,div.green.sc-ptc-title h4.sc-ptc-title,div.green.sc-ptc-title h5.sc-ptc-title,div.green.sc-ptc-title h6.sc-ptc-title{text-shadow:0px 0px var(--ptc-element-spacing-03) var(--color-green-07)}div.blue.sc-ptc-title h1.sc-ptc-title,div.blue.sc-ptc-title h2.sc-ptc-title,div.blue.sc-ptc-title h3.sc-ptc-title,div.blue.sc-ptc-title h4.sc-ptc-title,div.blue.sc-ptc-title h5.sc-ptc-title,div.blue.sc-ptc-title h6.sc-ptc-title{text-shadow:0px 0px var(--ptc-element-spacing-03) var(--color-blue-07)}div.red.sc-ptc-title h1.sc-ptc-title,div.red.sc-ptc-title h2.sc-ptc-title,div.red.sc-ptc-title h3.sc-ptc-title,div.red.sc-ptc-title h4.sc-ptc-title,div.red.sc-ptc-title h5.sc-ptc-title,div.red.sc-ptc-title h6.sc-ptc-title{text-shadow:0px 0px var(--ptc-element-spacing-03) var(--color-red-07)}div.orange.sc-ptc-title h1.sc-ptc-title,div.orange.sc-ptc-title h2.sc-ptc-title,div.orange.sc-ptc-title h3.sc-ptc-title,div.orange.sc-ptc-title h4.sc-ptc-title,div.orange.sc-ptc-title h5.sc-ptc-title,div.orange.sc-ptc-title h6.sc-ptc-title{text-shadow:0px 0px var(--ptc-element-spacing-03) var(--color-orange-07)}div.slate-grey.sc-ptc-title h1.sc-ptc-title,div.slate-grey.sc-ptc-title h2.sc-ptc-title,div.slate-grey.sc-ptc-title h3.sc-ptc-title,div.slate-grey.sc-ptc-title h4.sc-ptc-title,div.slate-grey.sc-ptc-title h5.sc-ptc-title,div.slate-grey.sc-ptc-title h6.sc-ptc-title{text-shadow:0px 0px var(--ptc-element-spacing-03) var(--color-gray-07)}div.w-3.sc-ptc-title h1.sc-ptc-title,div.w-3.sc-ptc-title h2.sc-ptc-title,div.w-3.sc-ptc-title h3.sc-ptc-title,div.w-3.sc-ptc-title h4.sc-ptc-title,div.w-3.sc-ptc-title h5.sc-ptc-title,div.w-3.sc-ptc-title h6.sc-ptc-title{font-weight:var(--ptc-font-weight-thin)}div.w-4.sc-ptc-title h1.sc-ptc-title,div.w-4.sc-ptc-title h2.sc-ptc-title,div.w-4.sc-ptc-title h3.sc-ptc-title,div.w-4.sc-ptc-title h4.sc-ptc-title,div.w-4.sc-ptc-title h5.sc-ptc-title,div.w-4.sc-ptc-title h6.sc-ptc-title{font-weight:var(--ptc-font-weight-regular)}div.w-5.sc-ptc-title h1.sc-ptc-title,div.w-5.sc-ptc-title h2.sc-ptc-title,div.w-5.sc-ptc-title h3.sc-ptc-title,div.w-5.sc-ptc-title h4.sc-ptc-title,div.w-5.sc-ptc-title h5.sc-ptc-title,div.w-5.sc-ptc-title h6.sc-ptc-title{font-weight:var(--ptc-font-weight-medium)}div.w-6.sc-ptc-title h1.sc-ptc-title,div.w-6.sc-ptc-title h2.sc-ptc-title,div.w-6.sc-ptc-title h3.sc-ptc-title,div.w-6.sc-ptc-title h4.sc-ptc-title,div.w-6.sc-ptc-title h5.sc-ptc-title,div.w-6.sc-ptc-title h6.sc-ptc-title{font-weight:var(--ptc-font-weight-semibold)}div.w-7.sc-ptc-title h1.sc-ptc-title,div.w-7.sc-ptc-title h2.sc-ptc-title,div.w-7.sc-ptc-title h3.sc-ptc-title,div.w-7.sc-ptc-title h4.sc-ptc-title,div.w-7.sc-ptc-title h5.sc-ptc-title,div.w-7.sc-ptc-title h6.sc-ptc-title{font-weight:var(--ptc-font-weight-bold)}div.w-8.sc-ptc-title h1.sc-ptc-title,div.w-8.sc-ptc-title h2.sc-ptc-title,div.w-8.sc-ptc-title h3.sc-ptc-title,div.w-8.sc-ptc-title h4.sc-ptc-title,div.w-8.sc-ptc-title h5.sc-ptc-title,div.w-8.sc-ptc-title h6.sc-ptc-title{font-weight:var(--ptc-font-weight-extrabold)}div.w-9.sc-ptc-title h1.sc-ptc-title,div.w-9.sc-ptc-title h2.sc-ptc-title,div.w-9.sc-ptc-title h3.sc-ptc-title,div.w-9.sc-ptc-title h4.sc-ptc-title,div.w-9.sc-ptc-title h5.sc-ptc-title,div.w-9.sc-ptc-title h6.sc-ptc-title{font-weight:var(--ptc-font-weight-black)}div.xx-small.sc-ptc-title h1.sc-ptc-title,div.xx-small.sc-ptc-title h2.sc-ptc-title,div.xx-small.sc-ptc-title h3.sc-ptc-title,div.xx-small.sc-ptc-title h4.sc-ptc-title,div.xx-small.sc-ptc-title h5.sc-ptc-title,div.xx-small.sc-ptc-title h6.sc-ptc-title{font-size:var(--ptc-font-size-xx-small)}div.x-small.sc-ptc-title h1.sc-ptc-title,div.x-small.sc-ptc-title h2.sc-ptc-title,div.x-small.sc-ptc-title h3.sc-ptc-title,div.x-small.sc-ptc-title h4.sc-ptc-title,div.x-small.sc-ptc-title h5.sc-ptc-title,div.x-small.sc-ptc-title h6.sc-ptc-title{font-size:var(--ptc-font-size-x-small)}div.small.sc-ptc-title h1.sc-ptc-title,div.small.sc-ptc-title h2.sc-ptc-title,div.small.sc-ptc-title h3.sc-ptc-title,div.small.sc-ptc-title h4.sc-ptc-title,div.small.sc-ptc-title h5.sc-ptc-title,div.small.sc-ptc-title h6.sc-ptc-title{font-size:var(--ptc-font-size-small)}div.medium.sc-ptc-title h1.sc-ptc-title,div.medium.sc-ptc-title h2.sc-ptc-title,div.medium.sc-ptc-title h3.sc-ptc-title,div.medium.sc-ptc-title h4.sc-ptc-title,div.medium.sc-ptc-title h5.sc-ptc-title,div.medium.sc-ptc-title h6.sc-ptc-title{font-size:var(--ptc-font-size-medium)}div.large.sc-ptc-title h1.sc-ptc-title,div.large.sc-ptc-title h2.sc-ptc-title,div.large.sc-ptc-title h3.sc-ptc-title,div.large.sc-ptc-title h4.sc-ptc-title,div.large.sc-ptc-title h5.sc-ptc-title,div.large.sc-ptc-title h6.sc-ptc-title{font-size:var(--ptc-font-size-large)}div.large.sc-ptc-title h3.sc-ptc-title{font-size:var(--ptc-font-size-medium)}@media only screen and (min-width: 768px){div.large.sc-ptc-title h3.sc-ptc-title{font-size:var(--ptc-font-size-large)}}div.x-large.sc-ptc-title h1.sc-ptc-title,div.x-large.sc-ptc-title h2.sc-ptc-title,div.x-large.sc-ptc-title h3.sc-ptc-title,div.x-large.sc-ptc-title h4.sc-ptc-title,div.x-large.sc-ptc-title h5.sc-ptc-title,div.x-large.sc-ptc-title h6.sc-ptc-title{font-size:var(--ptc-font-size-x-large)}div.xx-large.sc-ptc-title h1.sc-ptc-title,div.xx-large.sc-ptc-title h2.sc-ptc-title,div.xx-large.sc-ptc-title h3.sc-ptc-title,div.xx-large.sc-ptc-title h4.sc-ptc-title{font-size:var(--ptc-font-size-x-large)}@media only screen and (min-width: 768px){div.xx-large.sc-ptc-title h1.sc-ptc-title,div.xx-large.sc-ptc-title h2.sc-ptc-title,div.xx-large.sc-ptc-title h3.sc-ptc-title,div.xx-large.sc-ptc-title h4.sc-ptc-title{font-size:var(--ptc-font-size-xx-large)}}div.xxx-large.sc-ptc-title h1.sc-ptc-title,div.xxx-large.sc-ptc-title h2.sc-ptc-title,div.xxx-large.sc-ptc-title h3.sc-ptc-title,div.xxx-large.sc-ptc-title h4.sc-ptc-title,div.xxx-large.sc-ptc-title h5.sc-ptc-title,div.xxx-large.sc-ptc-title h6.sc-ptc-title{font-size:var(--ptc-font-size-xx-large)}@media only screen and (min-width: 768px){div.xxx-large.sc-ptc-title h1.sc-ptc-title,div.xxx-large.sc-ptc-title h2.sc-ptc-title,div.xxx-large.sc-ptc-title h3.sc-ptc-title,div.xxx-large.sc-ptc-title h4.sc-ptc-title,div.xxx-large.sc-ptc-title h5.sc-ptc-title,div.xxx-large.sc-ptc-title h6.sc-ptc-title{font-size:var(--ptc-font-size-xxx-large)}}div.xxxx-large.sc-ptc-title h1.sc-ptc-title,div.xxxx-large.sc-ptc-title h2.sc-ptc-title,div.xxxx-large.sc-ptc-title h3.sc-ptc-title,div.xxxx-large.sc-ptc-title h4.sc-ptc-title,div.xxxx-large.sc-ptc-title h5.sc-ptc-title,div.xxxx-large.sc-ptc-title h6.sc-ptc-title{font-size:var(--ptc-font-size-xxx-large)}@media only screen and (min-width: 768px){div.xxxx-large.sc-ptc-title h1.sc-ptc-title,div.xxxx-large.sc-ptc-title h2.sc-ptc-title,div.xxxx-large.sc-ptc-title h3.sc-ptc-title,div.xxxx-large.sc-ptc-title h4.sc-ptc-title,div.xxxx-large.sc-ptc-title h5.sc-ptc-title,div.xxxx-large.sc-ptc-title h6.sc-ptc-title{font-size:var(--ptc-font-size-xxxx-large)}}div.xx-large-allbp.sc-ptc-title h1.sc-ptc-title,div.xx-large-allbp.sc-ptc-title h2.sc-ptc-title,div.xx-large-allbp.sc-ptc-title h3.sc-ptc-title,div.xx-large-allbp.sc-ptc-title h4.sc-ptc-title,div.xx-large-allbp.sc-ptc-title h5.sc-ptc-title,div.xx-large-allbp.sc-ptc-title h6.sc-ptc-title{font-size:var(--ptc-font-size-xx-large)}div.xxxx-large-allbp.sc-ptc-title h1.sc-ptc-title,div.xxxx-large-allbp.sc-ptc-title h2.sc-ptc-title,div.xxxx-large-allbp.sc-ptc-title h3.sc-ptc-title,div.xxxx-large-allbp.sc-ptc-title h4.sc-ptc-title,div.xxxx-large-allbp.sc-ptc-title h5.sc-ptc-title,div.xxxx-large-allbp.sc-ptc-title h6.sc-ptc-title{font-size:var(--ptc-font-size-xxxx-large)}div.xxxx-large-desktop.sc-ptc-title h1.sc-ptc-title,div.xxxx-large-desktop.sc-ptc-title h2.sc-ptc-title,div.xxxx-large-desktop.sc-ptc-title h3.sc-ptc-title,div.xxxx-large-desktop.sc-ptc-title h4.sc-ptc-title,div.xxxx-large-desktop.sc-ptc-title h5.sc-ptc-title,div.xxxx-large-desktop.sc-ptc-title h6.sc-ptc-title{font-size:var(--ptc-font-size-xxx-large)}@media only screen and (min-width: 992px){div.xxxx-large-desktop.sc-ptc-title h1.sc-ptc-title,div.xxxx-large-desktop.sc-ptc-title h2.sc-ptc-title,div.xxxx-large-desktop.sc-ptc-title h3.sc-ptc-title,div.xxxx-large-desktop.sc-ptc-title h4.sc-ptc-title,div.xxxx-large-desktop.sc-ptc-title h5.sc-ptc-title,div.xxxx-large-desktop.sc-ptc-title h6.sc-ptc-title{font-size:var(--ptc-font-size-xxxx-large)}}div.xxxx-large-store.sc-ptc-title h1.sc-ptc-title,div.xxxx-large-store.sc-ptc-title h2.sc-ptc-title,div.xxxx-large-store.sc-ptc-title h3.sc-ptc-title,div.xxxx-large-store.sc-ptc-title h4.sc-ptc-title,div.xxxx-large-store.sc-ptc-title h5.sc-ptc-title,div.xxxx-large-store.sc-ptc-title h6.sc-ptc-title{font-size:var(--ptc-font-size-xxx-large)}@media only screen and (min-width: 992px){div.xxxx-large-store.sc-ptc-title h1.sc-ptc-title,div.xxxx-large-store.sc-ptc-title h2.sc-ptc-title,div.xxxx-large-store.sc-ptc-title h3.sc-ptc-title,div.xxxx-large-store.sc-ptc-title h4.sc-ptc-title,div.xxxx-large-store.sc-ptc-title h5.sc-ptc-title,div.xxxx-large-store.sc-ptc-title h6.sc-ptc-title{font-size:var(--ptc-font-size-xxxx-large)}}div.densest.sc-ptc-title h1.sc-ptc-title,div.densest.sc-ptc-title h2.sc-ptc-title,div.densest.sc-ptc-title h3.sc-ptc-title,div.densest.sc-ptc-title h4.sc-ptc-title,div.densest.sc-ptc-title h5.sc-ptc-title,div.densest.sc-ptc-title h6.sc-ptc-title{line-height:var(--ptc-line-height-densest)}div.denser.sc-ptc-title h1.sc-ptc-title,div.denser.sc-ptc-title h2.sc-ptc-title,div.denser.sc-ptc-title h3.sc-ptc-title,div.denser.sc-ptc-title h4.sc-ptc-title,div.denser.sc-ptc-title h5.sc-ptc-title,div.denser.sc-ptc-title h6.sc-ptc-title{line-height:var(--ptc-line-height-denser)}div.dense.sc-ptc-title h1.sc-ptc-title,div.dense.sc-ptc-title h2.sc-ptc-title,div.dense.sc-ptc-title h3.sc-ptc-title,div.dense.sc-ptc-title h4.sc-ptc-title,div.dense.sc-ptc-title h5.sc-ptc-title,div.dense.sc-ptc-title h6.sc-ptc-title{line-height:var(--ptc-line-height-dense)}div.normal.sc-ptc-title h1.sc-ptc-title,div.normal.sc-ptc-title h2.sc-ptc-title,div.normal.sc-ptc-title h3.sc-ptc-title,div.normal.sc-ptc-title h4.sc-ptc-title,div.normal.sc-ptc-title h5.sc-ptc-title,div.normal.sc-ptc-title h6.sc-ptc-title{line-height:var(--ptc-line-height-normal)}div.loose.sc-ptc-title h1.sc-ptc-title,div.loose.sc-ptc-title h2.sc-ptc-title,div.loose.sc-ptc-title h3.sc-ptc-title,div.loose.sc-ptc-title h4.sc-ptc-title,div.loose.sc-ptc-title h5.sc-ptc-title,div.loose.sc-ptc-title h6.sc-ptc-title{line-height:var(--ptc-line-height-loose)}div.looser.sc-ptc-title h1.sc-ptc-title,div.looser.sc-ptc-title h2.sc-ptc-title,div.looser.sc-ptc-title h3.sc-ptc-title,div.looser.sc-ptc-title h4.sc-ptc-title,div.looser.sc-ptc-title h5.sc-ptc-title,div.looser.sc-ptc-title h6.sc-ptc-title{line-height:var(--ptc-line-height-looser)}div.paragraph.sc-ptc-title h1.sc-ptc-title,div.paragraph.sc-ptc-title h2.sc-ptc-title,div.paragraph.sc-ptc-title h3.sc-ptc-title,div.paragraph.sc-ptc-title h4.sc-ptc-title,div.paragraph.sc-ptc-title h5.sc-ptc-title,div.paragraph.sc-ptc-title h6.sc-ptc-title{line-height:var(--ptc-line-height-paragraph)}div.black.sc-ptc-title h1.sc-ptc-title,div.black.sc-ptc-title h2.sc-ptc-title,div.black.sc-ptc-title h3.sc-ptc-title,div.black.sc-ptc-title h4.sc-ptc-title,div.black.sc-ptc-title h5.sc-ptc-title,div.black.sc-ptc-title h6.sc-ptc-title{color:var(--color-black)}div.white.sc-ptc-title h1.sc-ptc-title,div.white.sc-ptc-title h2.sc-ptc-title,div.white.sc-ptc-title h3.sc-ptc-title,div.white.sc-ptc-title h4.sc-ptc-title,div.white.sc-ptc-title h5.sc-ptc-title,div.white.sc-ptc-title h6.sc-ptc-title{color:var(--color-white)}div.gray-1.sc-ptc-title h1.sc-ptc-title,div.gray-1.sc-ptc-title h2.sc-ptc-title,div.gray-1.sc-ptc-title h3.sc-ptc-title,div.gray-1.sc-ptc-title h4.sc-ptc-title,div.gray-1.sc-ptc-title h5.sc-ptc-title,div.gray-1.sc-ptc-title h6.sc-ptc-title{color:var(--color-gray-01)}div.gray.sc-ptc-title h1.sc-ptc-title,div.gray.sc-ptc-title h2.sc-ptc-title,div.gray.sc-ptc-title h3.sc-ptc-title,div.gray.sc-ptc-title h4.sc-ptc-title,div.gray.sc-ptc-title h5.sc-ptc-title,div.gray.sc-ptc-title h6.sc-ptc-title{color:var(--color-gray-10)}div.gray-darker.sc-ptc-title h1.sc-ptc-title,div.gray-darker.sc-ptc-title h2.sc-ptc-title,div.gray-darker.sc-ptc-title h3.sc-ptc-title,div.gray-darker.sc-ptc-title h4.sc-ptc-title,div.gray-darker.sc-ptc-title h5.sc-ptc-title,div.gray-darker.sc-ptc-title h6.sc-ptc-title{color:var(--color-gray-11)}div.ellipsis-boxing.sc-ptc-title h1.sc-ptc-title,div.ellipsis-boxing.sc-ptc-title h2.sc-ptc-title,div.ellipsis-boxing.sc-ptc-title h3.sc-ptc-title,div.ellipsis-boxing.sc-ptc-title h4.sc-ptc-title,div.ellipsis-boxing.sc-ptc-title h5.sc-ptc-title,div.ellipsis-boxing.sc-ptc-title h6.sc-ptc-title{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;overflow-wrap:break-word;padding-bottom:0}div.block.sc-ptc-title h1.sc-ptc-title,div.block.sc-ptc-title h2.sc-ptc-title,div.block.sc-ptc-title h3.sc-ptc-title,div.block.sc-ptc-title h4.sc-ptc-title,div.block.sc-ptc-title h5.sc-ptc-title,div.block.sc-ptc-title h6.sc-ptc-title{display:block}.line-clamp-title.sc-ptc-title{display:-webkit-box !important;-webkit-box-orient:vertical;overflow:hidden}.sc-ptc-title-h{display:block}.sc-ptc-title-h div.sc-ptc-title{position:relative}";
|
|
5
|
+
|
|
6
|
+
const PtcTitle = class {
|
|
7
|
+
constructor(hostRef) {
|
|
8
|
+
registerInstance(this, hostRef);
|
|
9
|
+
this.isPlmHub = false;
|
|
10
|
+
this.type = "h2";
|
|
11
|
+
this.textAlign = undefined;
|
|
12
|
+
this.upperline = "dotted";
|
|
13
|
+
this.titleShadow = undefined;
|
|
14
|
+
this.titleColor = "gray";
|
|
15
|
+
this.titleMargin = undefined;
|
|
16
|
+
this.titleWeight = undefined;
|
|
17
|
+
this.titleSize = undefined;
|
|
18
|
+
this.titleHeight = "densest";
|
|
19
|
+
this.styles = undefined;
|
|
20
|
+
this.ellipsisLineCutoff = undefined;
|
|
21
|
+
this.titleDisplay = "inline-block";
|
|
22
|
+
this.seoCompatibilityMode = false;
|
|
23
|
+
this.tooltipZIndex = "auto";
|
|
24
|
+
this.tooltipPosition = "bottom";
|
|
25
|
+
this.tooltipTheme = "standard";
|
|
26
|
+
this.enableTooltip = false;
|
|
27
|
+
this.maxChars = undefined;
|
|
28
|
+
this.maxLines = undefined;
|
|
29
|
+
this.hideTooltipOnMobile = false;
|
|
30
|
+
this.ismob = undefined;
|
|
31
|
+
this.tooltipWidth = "default";
|
|
32
|
+
}
|
|
33
|
+
// Tooltip Properties ends
|
|
34
|
+
componentDidLoad() {
|
|
35
|
+
if (this.hideTooltipOnMobile) {
|
|
36
|
+
this.el.classList.add("hide-tooltip-on-mobile");
|
|
37
|
+
}
|
|
38
|
+
this.el.addEventListener("mouseenter", () => this.toggleTitleTooltip(true));
|
|
39
|
+
this.el.addEventListener("mouseleave", () => this.toggleTitleTooltip(false));
|
|
40
|
+
}
|
|
41
|
+
render() {
|
|
42
|
+
if (this.seoCompatibilityMode) {
|
|
43
|
+
return this.seoCompRender();
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
return this.standardRender();
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
getSortedText(content) {
|
|
50
|
+
if (!this.enableTooltip)
|
|
51
|
+
return;
|
|
52
|
+
const trimmedContent = content.trim();
|
|
53
|
+
const shouldTruncate = trimmedContent.length > this.maxChars && !this.maxLines;
|
|
54
|
+
return shouldTruncate
|
|
55
|
+
? trimmedContent.slice(0, this.maxChars) + "..."
|
|
56
|
+
: trimmedContent;
|
|
57
|
+
}
|
|
58
|
+
toggleTitleTooltip(show) {
|
|
59
|
+
var _a;
|
|
60
|
+
const tooltipClass = "tooltip-box";
|
|
61
|
+
const existingTooltip = this.el.querySelector(`.${tooltipClass}`);
|
|
62
|
+
const text = this.el.querySelectorAll(".line-clamp-title");
|
|
63
|
+
let maxLinesShowCheck = false;
|
|
64
|
+
if (text) {
|
|
65
|
+
text.forEach((t) => {
|
|
66
|
+
maxLinesShowCheck = t.scrollHeight > t.clientHeight;
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
const ifCharExceeds = this.tooltipText &&
|
|
70
|
+
this.tooltipText.length > this.maxChars &&
|
|
71
|
+
!this.maxLines;
|
|
72
|
+
const ifLinesExceeds = this.maxLines && maxLinesShowCheck;
|
|
73
|
+
if (show && this.enableTooltip) {
|
|
74
|
+
if ((!existingTooltip && ifCharExceeds) ||
|
|
75
|
+
(!existingTooltip && ifLinesExceeds)) {
|
|
76
|
+
const tooltipMarkup = document.createElement("div");
|
|
77
|
+
tooltipMarkup.className = tooltipClass;
|
|
78
|
+
tooltipMarkup.innerText = this.tooltipText;
|
|
79
|
+
tooltipMarkup.style.zIndex = String(this.tooltipZIndex); // Ensures zIndex is a string
|
|
80
|
+
tooltipMarkup.classList.add(this.tooltipPosition, this.tooltipTheme, this.tooltipWidth);
|
|
81
|
+
if (this.hideTooltipOnMobile) {
|
|
82
|
+
tooltipMarkup.classList.add("hide-tooltip-mobile");
|
|
83
|
+
}
|
|
84
|
+
(_a = this.el.querySelector("div")) === null || _a === void 0 ? void 0 : _a.appendChild(tooltipMarkup);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
existingTooltip === null || existingTooltip === void 0 ? void 0 : existingTooltip.remove();
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
seoCompRender() {
|
|
92
|
+
const classMap = this.getCssClassMap();
|
|
93
|
+
const cutOff = this.getLineCuttoff();
|
|
94
|
+
const [TagType, firstChild] = getSeoTagType(this.el, this.type);
|
|
95
|
+
let html = firstChild && firstChild.innerHTML;
|
|
96
|
+
// added for tooltip
|
|
97
|
+
this.tooltipText = html.trim();
|
|
98
|
+
let eleText = firstChild && firstChild.innerText;
|
|
99
|
+
html = this.enableTooltip ? this.getSortedText(eleText) : html;
|
|
100
|
+
if (this.el == firstChild) {
|
|
101
|
+
this.el.innerHTML = "";
|
|
102
|
+
}
|
|
103
|
+
return (h(Host, null, this.styles && h("style", null, this.styles), h("div", { class: classMap }, h(TagType, { innerHTML: html, style: cutOff, class: this.maxLines && this.maxLines > 0
|
|
104
|
+
? "line-clamp-title"
|
|
105
|
+
: "" }))));
|
|
106
|
+
}
|
|
107
|
+
standardRender() {
|
|
108
|
+
const classMap = this.getCssClassMap();
|
|
109
|
+
const cutOff = this.getLineCuttoff();
|
|
110
|
+
let TagType;
|
|
111
|
+
switch (this.type) {
|
|
112
|
+
case "h1":
|
|
113
|
+
TagType = "h1";
|
|
114
|
+
break;
|
|
115
|
+
case "h3":
|
|
116
|
+
TagType = "h3";
|
|
117
|
+
break;
|
|
118
|
+
case "h4":
|
|
119
|
+
TagType = "h4";
|
|
120
|
+
break;
|
|
121
|
+
case "h5":
|
|
122
|
+
TagType = "h5";
|
|
123
|
+
break;
|
|
124
|
+
case "h6":
|
|
125
|
+
TagType = "h6";
|
|
126
|
+
break;
|
|
127
|
+
default:
|
|
128
|
+
TagType = "h2";
|
|
129
|
+
}
|
|
130
|
+
return (h(Host, null, this.styles && h("style", null, this.styles), h("div", { class: classMap }, h(TagType, { style: cutOff }, h("slot", null)))));
|
|
131
|
+
}
|
|
132
|
+
getCssClassMap() {
|
|
133
|
+
return {
|
|
134
|
+
[this.textAlign]: !!this.textAlign ? true : false,
|
|
135
|
+
[this.upperline]: true,
|
|
136
|
+
[this.isPlmHub ? "is-plm-hub" : "is-standard"]: true,
|
|
137
|
+
[this.titleMargin]: !!this.titleMargin ? true : false,
|
|
138
|
+
[this.titleShadow]: !!this.titleShadow ? true : false,
|
|
139
|
+
[this.titleWeight]: !!this.titleWeight ? true : false,
|
|
140
|
+
[this.titleSize]: !!this.titleSize ? true : false,
|
|
141
|
+
[this.titleHeight]: !!this.titleHeight ? true : false,
|
|
142
|
+
[this.titleColor]: !!this.titleColor ? true : false,
|
|
143
|
+
["ellipsis-boxing"]: this.ellipsisLineCutoff && this.ellipsisLineCutoff > 0,
|
|
144
|
+
[this.titleDisplay]: !!this.titleDisplay ? true : false,
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
getLineCuttoff() {
|
|
148
|
+
const lineClamp = this.ellipsisLineCutoff > 0
|
|
149
|
+
? this.ellipsisLineCutoff
|
|
150
|
+
: this.maxLines;
|
|
151
|
+
return lineClamp > 0 ? { "-webkit-line-clamp": `${lineClamp}` } : {};
|
|
152
|
+
}
|
|
153
|
+
get el() { return getElement(this); }
|
|
154
|
+
};
|
|
155
|
+
PtcTitle.style = ptcTitleCss;
|
|
156
|
+
|
|
157
|
+
export { PtcTitle as ptc_title };
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import { r as registerInstance, h, H as Host, a as getElement } from './index-0bf594c4.js';
|
|
2
|
+
|
|
3
|
+
const ptcTooltipCss = "h1.sc-ptc-tooltip,h2.sc-ptc-tooltip,h3.sc-ptc-tooltip,h4.sc-ptc-tooltip,h5.sc-ptc-tooltip,h6.sc-ptc-tooltip,p.sc-ptc-tooltip,ul.sc-ptc-tooltip,li.sc-ptc-tooltip,ptc-subnav.sc-ptc-tooltip,ptc-tab-list.sc-ptc-tooltip,ptc-link.sc-ptc-tooltip,ptc-square-card.sc-ptc-tooltip,.hyphenate-text.sc-ptc-tooltip,ptc-footer.sc-ptc-tooltip{word-break:break-word;hyphens:manual;-webkit-hyphens:manual;-moz-hyphens:manual;-ms-hyphens:manual}@supports (hyphenate-limit-chars: 12 3 3){h1.sc-ptc-tooltip,h2.sc-ptc-tooltip,h3.sc-ptc-tooltip,h4.sc-ptc-tooltip,h5.sc-ptc-tooltip,h6.sc-ptc-tooltip,p.sc-ptc-tooltip,ul.sc-ptc-tooltip,li.sc-ptc-tooltip,ptc-subnav.sc-ptc-tooltip,ptc-tab-list.sc-ptc-tooltip,ptc-link.sc-ptc-tooltip,ptc-square-card.sc-ptc-tooltip,.hyphenate-text.sc-ptc-tooltip,ptc-footer.sc-ptc-tooltip{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}}.sc-ptc-tooltip-h{position:relative}.inline.sc-ptc-tooltip-h{display:inline}.inline.sc-ptc-tooltip-h .text-content.sc-ptc-tooltip{display:inline}.block.sc-ptc-tooltip-h{display:block}.text-ellipsis.sc-ptc-tooltip{position:relative;display:inline}.text-ellipsis.sc-ptc-tooltip:not(.truncated){z-index:auto !important}.z-auto.sc-ptc-tooltip{z-index:auto}.z-1.sc-ptc-tooltip{z-index:1}.z-2.sc-ptc-tooltip{z-index:2}.z-3.sc-ptc-tooltip{z-index:3}.z-999.sc-ptc-tooltip{z-index:999}.tooltip.sc-ptc-tooltip{position:absolute;padding:8px;color:var(--color-white);font-size:var(--ptc-font-size-xxx-small);font-weight:var(--ptc-font-weight-semibold);background:var(--color-gray-09);box-shadow:0px 2px 4px rgba(0, 0, 0, 0.3);border:none;border-radius:2px;width:auto;height:auto;visibility:hidden;text-align:left;text-shadow:none;white-space:normal}.tooltip.sc-ptc-tooltip span.sc-ptc-tooltip{word-break:initial}@media only screen and (min-width: 480px){.tooltip.sc-ptc-tooltip{width:273px}}.tooltip.danger.sc-ptc-tooltip{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)}.tooltip.danger.sc-ptc-tooltip a.sc-ptc-tooltip{color:var(--color-hyperlink)}.tooltip.bottom.sc-ptc-tooltip{bottom:-12px;transform:translateY(100%)}.tooltip.bottom.sc-ptc-tooltip::after{top:1px;left:50%;transform:translate(-50%, -100%);border:8px solid transparent;border-bottom:8px solid var(--color-gray-09)}.tooltip.left.sc-ptc-tooltip{bottom:-12px;transform:translate(-80%, 100%)}.tooltip.left.sc-ptc-tooltip::after{top:1px;right:8px;transform:translateY(-100%);border:8px solid transparent;border-bottom:8px solid var(--color-gray-09)}.tooltip.right.sc-ptc-tooltip{bottom:-12px;transform:translateY(100%);right:0px}@-moz-document url-prefix(){.tooltip.right{right:unset !important;bottom:unset !important;transform:translate(60%, 8px) !important}@media screen and (min-width: 992px){.tooltip.right{transform:translate(100%, 8px) !important}}}.tooltip.right.sc-ptc-tooltip::after{top:1px;left:8px;transform:translateY(-100%);border:8px solid transparent;border-bottom:8px solid var(--color-gray-09)}.tooltip.top.sc-ptc-tooltip{top:-8px;transform:translateY(-100%)}.tooltip.top.sc-ptc-tooltip::after{left:50%;bottom:1px;transform:translate(-50%, 100%);border:8px solid transparent;border-top:8px solid var(--color-gray-09)}.tooltip.bottom-right.sc-ptc-tooltip{bottom:-12px;transform:translate(-60%, 100%)}.tooltip.bottom-right.sc-ptc-tooltip::after{top:1px;left:75%;transform:translate(-50%, -100%);border:8px solid transparent;border-bottom:8px solid var(--color-gray-09)}.tooltip.danger.sc-ptc-tooltip::after{top:0;border-bottom:8px solid var(--color-red-07)}.tooltip.side-left.sc-ptc-tooltip{bottom:12px;transform:translateX(-112%)}@media only screen and (min-width: 768px){.tooltip.side-left.sc-ptc-tooltip{bottom:4px}}.tooltip.side-left.sc-ptc-tooltip::after{top:50%;right:-15px;transform:translateY(-50%);border:8px solid transparent;border-left:8px solid var(--color-gray-09)}.truncated.sc-ptc-tooltip{cursor:help}.truncated.sc-ptc-tooltip:hover+.tooltip.sc-ptc-tooltip{visibility:visible;z-index:9999}.wrapper-content.sc-ptc-tooltip{display:inline-block;position:relative}.wrapper-content.sc-ptc-tooltip .tooltip.sc-ptc-tooltip{width:auto;min-width:72px;max-width:273px}.wrapper-content.sc-ptc-tooltip .slot-content.sc-ptc-tooltip:hover+.tooltip.sc-ptc-tooltip{visibility:visible;z-index:9999}.tooltip.sc-ptc-tooltip::after{content:\"\";position:absolute}.ellipsis-by-line-boxing.sc-ptc-tooltip{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;overflow-wrap:break-word;padding-bottom:0}.full-width.sc-ptc-tooltip-h .tooltip.sc-ptc-tooltip{width:100%}@media only screen and (min-width: 480px){.full-width.sc-ptc-tooltip-h .tooltip.sc-ptc-tooltip{width:100%}}.no-overflow.sc-ptc-tooltip-h .tooltip.sc-ptc-tooltip{display:none !important}.no-overflow.sc-ptc-tooltip-h .truncated.sc-ptc-tooltip.sc-ptc-tooltip{cursor:pointer}";
|
|
4
|
+
|
|
5
|
+
const PtcTooltip = class {
|
|
6
|
+
constructor(hostRef) {
|
|
7
|
+
registerInstance(this, hostRef);
|
|
8
|
+
this.textDisplay = "inline";
|
|
9
|
+
this.maxLength = 45;
|
|
10
|
+
this.textLines = undefined;
|
|
11
|
+
this.description = "This is a tooltip text placeholder";
|
|
12
|
+
this.zIndex = "z-auto";
|
|
13
|
+
this.position = "bottom";
|
|
14
|
+
this.styles = undefined;
|
|
15
|
+
this.mode = "text-only";
|
|
16
|
+
this.theme = "standard";
|
|
17
|
+
this.width = "default";
|
|
18
|
+
this.hideOnMobile = false;
|
|
19
|
+
this.isSmallScreen = undefined;
|
|
20
|
+
this.noOverflow = false;
|
|
21
|
+
}
|
|
22
|
+
addTruncatedClass() {
|
|
23
|
+
const appRoot = this.el;
|
|
24
|
+
const text = appRoot.querySelectorAll(".ellipsis-by-line-boxing");
|
|
25
|
+
text.forEach((t) => {
|
|
26
|
+
t.classList[t.scrollHeight > t.clientHeight ? "add" : "remove"]("truncated");
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
windowResize() {
|
|
30
|
+
this.verifiyScreenSize();
|
|
31
|
+
}
|
|
32
|
+
verifiyScreenSize() {
|
|
33
|
+
this.isSmallScreen = window.innerWidth < 768;
|
|
34
|
+
}
|
|
35
|
+
// Created this function to initialize the truncate function on specific elements like tabs
|
|
36
|
+
enableAddTruncatedClass(element) {
|
|
37
|
+
const allTabHeaders = document.querySelectorAll(element);
|
|
38
|
+
for (const element of Array.from(allTabHeaders)) {
|
|
39
|
+
let tabHeader = element;
|
|
40
|
+
if (tabHeader) {
|
|
41
|
+
tabHeader.addEventListener("click", () => {
|
|
42
|
+
setTimeout(() => {
|
|
43
|
+
this.addTruncatedClass();
|
|
44
|
+
}, 100);
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
componentWillLoad() {
|
|
50
|
+
this.verifiyScreenSize();
|
|
51
|
+
}
|
|
52
|
+
componentDidLoad() {
|
|
53
|
+
//this.addTruncatedClass();
|
|
54
|
+
setTimeout(() => {
|
|
55
|
+
this.addTruncatedClass();
|
|
56
|
+
}, 1000);
|
|
57
|
+
this.enableAddTruncatedClass("tab-header");
|
|
58
|
+
this.enableAddTruncatedClass("ptc-ellipsis-dropdown");
|
|
59
|
+
this.enableAddTruncatedClass("ptc-product-card");
|
|
60
|
+
document.addEventListener("readystatechange", () => {
|
|
61
|
+
if (document.readyState === "complete") {
|
|
62
|
+
this.addTruncatedClass();
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
render() {
|
|
67
|
+
if (this.mode == "wrapper") {
|
|
68
|
+
return (h(Host, { class: this.textDisplay }, this.styles && h("style", null, this.styles), h("div", { class: "wrapper-content" }, h("div", { class: "slot-content" }, h("slot", null)), h("div", { class: `tooltip ${this.position} ${this.theme}` }, h("slot", { name: "description" }), this.description && (h("span", { innerHTML: this.description }))))));
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
const classMap = this.getCssClassMap();
|
|
72
|
+
const cutOff = this.getLineCuttoff();
|
|
73
|
+
let truncatedText = this.description.substring(0, this.maxLength);
|
|
74
|
+
if (this.description.length > this.maxLength) {
|
|
75
|
+
//const lastSpace = truncatedText.lastIndexOf(' ');
|
|
76
|
+
//truncatedText = truncatedText.substring(0, lastSpace);
|
|
77
|
+
truncatedText += "... ";
|
|
78
|
+
}
|
|
79
|
+
return (h(Host, { class: {
|
|
80
|
+
[this.textDisplay]: true,
|
|
81
|
+
[this.width]: true,
|
|
82
|
+
"no-overflow": this.noOverflow,
|
|
83
|
+
} }, this.styles && h("style", null, this.styles), this.hideOnMobile && this.isSmallScreen ? (h("div", null, this.description)) : (h("div", { class: "text-content" }, this.textLines > 0 && !!this.textLines ? (h("div", { class: "ellipsis-by-line-boxing", style: cutOff, innerHTML: this.description })) : (h("div", { class: classMap }, truncatedText)), h("div", { class: `tooltip ${this.position} ${this.theme}`, innerHTML: this.description })))));
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
getCssClassMap() {
|
|
87
|
+
return {
|
|
88
|
+
// ['ellipsis-by-line-boxing']: this.textLines && this.textLines > 0,
|
|
89
|
+
["text-ellipsis"]: true,
|
|
90
|
+
[this.zIndex]: this.description.length > this.maxLength ? true : false,
|
|
91
|
+
["truncated"]: this.description.length > this.maxLength && !this.textLines
|
|
92
|
+
? true
|
|
93
|
+
: false,
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
getLineCuttoff() {
|
|
97
|
+
let result;
|
|
98
|
+
if (this.textLines && this.textLines > 0) {
|
|
99
|
+
result = {
|
|
100
|
+
["-webkit-line-clamp"]: `${this.textLines}`,
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
return result;
|
|
104
|
+
}
|
|
105
|
+
get el() { return getElement(this); }
|
|
106
|
+
};
|
|
107
|
+
PtcTooltip.style = ptcTooltipCss;
|
|
108
|
+
|
|
109
|
+
export { PtcTooltip as ptc_tooltip };
|