@ptcwebops/ptcw-design 6.4.12 → 6.4.13
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/{component-35540bfb.js → component-06dda623.js} +1 -1
- package/dist/cjs/{component-1b8ad4d2.js → component-5b5b6a98.js} +1 -1
- package/dist/cjs/icon-asset_14.cjs.entry.js +1911 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/ptc-data-lookup.cjs.entry.js +2 -2
- package/dist/cjs/ptc-form-checkbox_2.cjs.entry.js +1 -1
- package/dist/cjs/ptc-multi-select_2.cjs.entry.js +2 -2
- package/dist/cjs/ptc-search-field.cjs.entry.js +95 -0
- package/dist/cjs/ptcw-design.cjs.js +1 -1
- package/dist/collection/components/ptc-subnav-v2/ptc-subnav-v2.js +2 -1
- package/dist/custom-elements/index.js +3 -2
- 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/{component-8c53e377.js → component-274da230.js} +1 -1
- package/dist/esm/{component-9beac35b.js → component-341e4eaa.js} +1 -1
- package/dist/esm/homepage-jumbotron.entry.js +1 -1
- package/dist/esm/homepage-toggled-content.entry.js +1 -1
- package/dist/esm/icon-asset_14.entry.js +1894 -0
- package/dist/esm/innovator-toggle-container.entry.js +1 -1
- 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-collapse-list.entry.js +1 -1
- package/dist/esm/ptc-data-lookup.entry.js +2 -2
- package/dist/esm/ptc-form-checkbox_2.entry.js +2 -2
- 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.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-multi-select_2.entry.js +3 -3
- 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-search-field.entry.js +91 -0
- package/dist/esm/ptc-social-icons-footer.entry.js +1 -1
- package/dist/esm/ptcw-design.js +1 -1
- package/dist/esm/{utils-bdd0cc16.js → utils-a64ba942.js} +1 -1
- package/dist/ptcw-design/{p-2efd18d8.entry.js → p-0824f503.entry.js} +1 -1
- package/dist/ptcw-design/{p-bb86265c.entry.js → p-140c134e.entry.js} +1 -1
- package/dist/ptcw-design/{p-c7e948b2.js → p-22cf00e7.js} +1 -1
- package/dist/ptcw-design/{p-a318a793.entry.js → p-2fa5814b.entry.js} +1 -1
- package/dist/ptcw-design/{p-c101aeb5.entry.js → p-32bbcb5a.entry.js} +1 -1
- package/dist/ptcw-design/{p-b154bbdb.entry.js → p-3596ce5a.entry.js} +1 -1
- package/dist/ptcw-design/{p-2f7b6437.entry.js → p-681d26ef.entry.js} +1 -1
- package/dist/ptcw-design/{p-7777753a.entry.js → p-7524411a.entry.js} +1 -1
- package/dist/ptcw-design/p-809f3878.entry.js +1 -0
- package/dist/ptcw-design/{p-850e6e8c.entry.js → p-83632220.entry.js} +1 -1
- package/dist/ptcw-design/{p-87215e3a.entry.js → p-87a9a028.entry.js} +1 -1
- package/dist/ptcw-design/{p-a81833cd.entry.js → p-9461c4eb.entry.js} +1 -1
- package/dist/ptcw-design/{p-804dac0c.entry.js → p-a31f22a1.entry.js} +1 -1
- package/dist/ptcw-design/{p-d3c11c68.entry.js → p-b9966f20.entry.js} +1 -1
- package/dist/ptcw-design/{p-75c8fceb.entry.js → p-bdb2e42c.entry.js} +1 -1
- package/dist/ptcw-design/{p-98844b50.js → p-be533f0d.js} +1 -1
- package/dist/ptcw-design/{p-19832538.entry.js → p-bf15988f.entry.js} +1 -1
- package/dist/ptcw-design/{p-8234aa2a.entry.js → p-c1302aea.entry.js} +1 -1
- package/dist/ptcw-design/{p-03a1e1a5.entry.js → p-d8c1a14a.entry.js} +1 -1
- package/dist/ptcw-design/{p-83dabf2e.entry.js → p-e2da8109.entry.js} +1 -1
- package/dist/ptcw-design/p-e50a5a46.entry.js +1 -0
- package/dist/ptcw-design/{p-a28ff90b.entry.js → p-e51bb274.entry.js} +1 -1
- package/dist/ptcw-design/p-eabf87be.entry.js +1 -0
- package/dist/ptcw-design/{p-e65cbdb9.entry.js → p-edaf241d.entry.js} +1 -1
- package/dist/ptcw-design/{p-5b00a563.entry.js → p-fa045097.entry.js} +1 -1
- package/dist/ptcw-design/ptcw-design.esm.js +1 -1
- package/package.json +1 -1
- package/readme.md +1 -1
- package/dist/cjs/icon-asset_2.cjs.entry.js +0 -154
- package/dist/cjs/interfaces-574e6df7.js +0 -15
- package/dist/cjs/list-item.cjs.entry.js +0 -52
- package/dist/cjs/max-width-container.cjs.entry.js +0 -54
- package/dist/cjs/ptc-background-video.cjs.entry.js +0 -152
- package/dist/cjs/ptc-breadcrumb.cjs.entry.js +0 -53
- package/dist/cjs/ptc-button.cjs.entry.js +0 -117
- package/dist/cjs/ptc-img.cjs.entry.js +0 -136
- package/dist/cjs/ptc-jumbotron.cjs.entry.js +0 -184
- package/dist/cjs/ptc-para.cjs.entry.js +0 -139
- package/dist/cjs/ptc-picture.cjs.entry.js +0 -185
- package/dist/cjs/ptc-spacer.cjs.entry.js +0 -38
- package/dist/cjs/ptc-subnav-v2.cjs.entry.js +0 -533
- package/dist/cjs/ptc-title.cjs.entry.js +0 -161
- package/dist/cjs/ptc-tooltip.cjs.entry.js +0 -113
- package/dist/esm/icon-asset_2.entry.js +0 -149
- package/dist/esm/interfaces-4caedd26.js +0 -12
- package/dist/esm/list-item.entry.js +0 -48
- package/dist/esm/max-width-container.entry.js +0 -50
- package/dist/esm/ptc-background-video.entry.js +0 -148
- package/dist/esm/ptc-breadcrumb.entry.js +0 -49
- package/dist/esm/ptc-button.entry.js +0 -113
- package/dist/esm/ptc-img.entry.js +0 -132
- package/dist/esm/ptc-jumbotron.entry.js +0 -180
- package/dist/esm/ptc-para.entry.js +0 -135
- package/dist/esm/ptc-picture.entry.js +0 -181
- package/dist/esm/ptc-spacer.entry.js +0 -34
- package/dist/esm/ptc-subnav-v2.entry.js +0 -529
- package/dist/esm/ptc-title.entry.js +0 -157
- package/dist/esm/ptc-tooltip.entry.js +0 -109
- package/dist/ptcw-design/p-07b1afd5.entry.js +0 -1
- package/dist/ptcw-design/p-1acd3617.entry.js +0 -1
- package/dist/ptcw-design/p-2e288e60.entry.js +0 -1
- package/dist/ptcw-design/p-4313edfb.entry.js +0 -1
- package/dist/ptcw-design/p-474a9967.entry.js +0 -1
- package/dist/ptcw-design/p-561a622f.entry.js +0 -1
- package/dist/ptcw-design/p-674c828e.entry.js +0 -1
- package/dist/ptcw-design/p-6785dc81.entry.js +0 -1
- package/dist/ptcw-design/p-709cc1f0.entry.js +0 -1
- package/dist/ptcw-design/p-711bcdad.js +0 -1
- package/dist/ptcw-design/p-7226670f.entry.js +0 -1
- package/dist/ptcw-design/p-98e2b403.entry.js +0 -1
- package/dist/ptcw-design/p-9df3c31f.entry.js +0 -1
- package/dist/ptcw-design/p-b3cd2410.entry.js +0 -1
- package/dist/ptcw-design/p-d9ec506c.entry.js +0 -1
- package/dist/ptcw-design/p-ec22d0b8.entry.js +0 -1
- /package/dist/ptcw-design/{p-98426799.js → p-c1513c3f.js} +0 -0
|
@@ -0,0 +1,1894 @@
|
|
|
1
|
+
import { r as registerInstance, c as createEvent, g as getAssetPath, h, H as Host, a as getElement } from './index-0bf594c4.js';
|
|
2
|
+
import { i as isReducedMotion, n as nextUserInteractionEvent, o as onReducedMotionChange, C as CheckDarkFocusState, g as getSeoTagType, s as seoSlotReset } from './utils-a64ba942.js';
|
|
3
|
+
|
|
4
|
+
const iconAssetCss = ".svg-inline--fa.sc-icon-asset,svg.sc-icon-asset:not(:root).svg-inline--fa{overflow:visible}.svg-inline--fa.sc-icon-asset{display:inline-block;font-size:inherit;height:1em;vertical-align:-.125em}.svg-inline--fa.fa-lg.sc-icon-asset{vertical-align:-.225em}.svg-inline--fa.fa-w-1.sc-icon-asset{width:.0625em}.svg-inline--fa.fa-w-2.sc-icon-asset{width:.125em}.svg-inline--fa.fa-w-3.sc-icon-asset{width:.1875em}.svg-inline--fa.fa-w-4.sc-icon-asset{width:.25em}.svg-inline--fa.fa-w-5.sc-icon-asset{width:.3125em}.svg-inline--fa.fa-w-6.sc-icon-asset{width:.375em}.svg-inline--fa.fa-w-7.sc-icon-asset{width:.4375em}.svg-inline--fa.fa-w-8.sc-icon-asset{width:.5em}.svg-inline--fa.fa-w-9.sc-icon-asset{width:.5625em}.svg-inline--fa.fa-w-10.sc-icon-asset{width:.625em}.svg-inline--fa.fa-w-11.sc-icon-asset{width:.6875em}.svg-inline--fa.fa-w-12.sc-icon-asset{width:.75em}.svg-inline--fa.fa-w-13.sc-icon-asset{width:.8125em}.svg-inline--fa.fa-w-14.sc-icon-asset{width:.875em}.svg-inline--fa.fa-w-15.sc-icon-asset{width:.9375em}.svg-inline--fa.fa-w-16.sc-icon-asset{width:1em}.svg-inline--fa.fa-w-17.sc-icon-asset{width:1.0625em}.svg-inline--fa.fa-w-18.sc-icon-asset{width:1.125em}.svg-inline--fa.fa-w-19.sc-icon-asset{width:1.1875em}.svg-inline--fa.fa-w-20.sc-icon-asset{width:1.25em}.svg-inline--fa.fa-pull-left.sc-icon-asset{margin-right:.3em;width:auto}.svg-inline--fa.fa-pull-right.sc-icon-asset{margin-left:.3em;width:auto}.svg-inline--fa.fa-border.sc-icon-asset{height:1.5em}.svg-inline--fa.fa-li.sc-icon-asset{width:2em}.svg-inline--fa.fa-fw.sc-icon-asset{width:1.25em}.fa-layers.sc-icon-asset svg.svg-inline--fa.sc-icon-asset{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.fa-layers.sc-icon-asset{display:inline-block;height:1em;position:relative;text-align:center;vertical-align:-.125em;width:1em}.fa-layers.sc-icon-asset svg.svg-inline--fa.sc-icon-asset{-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-counter.sc-icon-asset,.fa-layers-text.sc-icon-asset{display:inline-block;position:absolute;text-align:center}.fa-layers-text.sc-icon-asset{left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-counter.sc-icon-asset{background-color:#ff253a;border-radius:1em;-webkit-box-sizing:border-box;box-sizing:border-box;color:#fff;height:1.5em;line-height:1;max-width:5em;min-width:1.5em;overflow:hidden;padding:.25em;right:0;text-overflow:ellipsis;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-bottom-right.sc-icon-asset{bottom:0;right:0;top:auto;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:bottom right;transform-origin:bottom right}.fa-layers-bottom-left.sc-icon-asset{bottom:0;left:0;right:auto;top:auto;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:bottom left;transform-origin:bottom left}.fa-layers-top-right.sc-icon-asset{right:0;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-top-left.sc-icon-asset{left:0;right:auto;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top left;transform-origin:top left}.fa-lg.sc-icon-asset{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs.sc-icon-asset{font-size:.75em}.fa-sm.sc-icon-asset{font-size:.875em}.fa-1x.sc-icon-asset{font-size:1em}.fa-2x.sc-icon-asset{font-size:2em}.fa-3x.sc-icon-asset{font-size:3em}.fa-4x.sc-icon-asset{font-size:4em}.fa-5x.sc-icon-asset{font-size:5em}.fa-6x.sc-icon-asset{font-size:6em}.fa-7x.sc-icon-asset{font-size:7em}.fa-8x.sc-icon-asset{font-size:8em}.fa-9x.sc-icon-asset{font-size:9em}.fa-10x.sc-icon-asset{font-size:10em}.fa-fw.sc-icon-asset{text-align:center;width:1.25em}.fa-ul.sc-icon-asset{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul.sc-icon-asset>li.sc-icon-asset{position:relative}.fa-li.sc-icon-asset{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border.sc-icon-asset{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left.sc-icon-asset{float:left}.fa-pull-right.sc-icon-asset{float:right}.fa.fa-pull-left.sc-icon-asset,.fab.fa-pull-left.sc-icon-asset,.fal.fa-pull-left.sc-icon-asset,.far.fa-pull-left.sc-icon-asset,.fas.fa-pull-left.sc-icon-asset{margin-right:.3em}.fa.fa-pull-right.sc-icon-asset,.fab.fa-pull-right.sc-icon-asset,.fal.fa-pull-right.sc-icon-asset,.far.fa-pull-right.sc-icon-asset,.fas.fa-pull-right.sc-icon-asset{margin-left:.3em}.fa-spin.sc-icon-asset{-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.fa-pulse.sc-icon-asset{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90.sc-icon-asset{-ms-filter:\"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)\";-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180.sc-icon-asset{-ms-filter:\"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)\";-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270.sc-icon-asset{-ms-filter:\"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)\";-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal.sc-icon-asset{-ms-filter:\"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)\";-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical.sc-icon-asset{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both.sc-icon-asset,.fa-flip-horizontal.fa-flip-vertical.sc-icon-asset,.fa-flip-vertical.sc-icon-asset{-ms-filter:\"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)\"}.fa-flip-both.sc-icon-asset,.fa-flip-horizontal.fa-flip-vertical.sc-icon-asset{-webkit-transform:scale(-1);transform:scale(-1)}.sc-icon-asset:root .fa-flip-both.sc-icon-asset,.sc-icon-asset:root .fa-flip-horizontal.sc-icon-asset,.sc-icon-asset:root .fa-flip-vertical.sc-icon-asset,.sc-icon-asset:root .fa-rotate-90.sc-icon-asset,.sc-icon-asset:root .fa-rotate-180.sc-icon-asset,.sc-icon-asset:root .fa-rotate-270.sc-icon-asset{-webkit-filter:none;filter:none}.fa-stack.sc-icon-asset{display:inline-block;height:2em;position:relative;width:2.5em}.fa-stack-1x.sc-icon-asset,.fa-stack-2x.sc-icon-asset{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.svg-inline--fa.fa-stack-1x.sc-icon-asset{height:1em;width:1.25em}.svg-inline--fa.fa-stack-2x.sc-icon-asset{height:2em;width:2.5em}.fa-inverse.sc-icon-asset{color:#fff}.sr-only.sc-icon-asset{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable.sc-icon-asset:active,.sr-only-focusable.sc-icon-asset:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.svg-inline--fa.sc-icon-asset .fa-primary.sc-icon-asset{fill:var(--fa-primary-color,currentColor);opacity:1;opacity:var(--fa-primary-opacity,1)}.svg-inline--fa.sc-icon-asset .fa-secondary.sc-icon-asset{fill:var(--fa-secondary-color,currentColor)}.svg-inline--fa.sc-icon-asset .fa-secondary.sc-icon-asset,.svg-inline--fa.fa-swap-opacity.sc-icon-asset .fa-primary.sc-icon-asset{opacity:.4;opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity.sc-icon-asset .fa-secondary.sc-icon-asset{opacity:1;opacity:var(--fa-primary-opacity,1)}.svg-inline--fa.sc-icon-asset mask.sc-icon-asset .fa-primary.sc-icon-asset,.svg-inline--fa.sc-icon-asset mask.sc-icon-asset .fa-secondary.sc-icon-asset{fill:#000}.fad.fa-inverse.sc-icon-asset{color:#fff}h1.sc-icon-asset,h2.sc-icon-asset,h3.sc-icon-asset,h4.sc-icon-asset,h5.sc-icon-asset,h6.sc-icon-asset,p.sc-icon-asset,ul.sc-icon-asset,li.sc-icon-asset,ptc-subnav.sc-icon-asset,ptc-tab-list.sc-icon-asset,ptc-link.sc-icon-asset,ptc-square-card.sc-icon-asset,.hyphenate-text.sc-icon-asset,ptc-footer.sc-icon-asset{word-break:break-word;hyphens:manual;-webkit-hyphens:manual;-moz-hyphens:manual;-ms-hyphens:manual}@supports (hyphenate-limit-chars: 12 3 3){h1.sc-icon-asset,h2.sc-icon-asset,h3.sc-icon-asset,h4.sc-icon-asset,h5.sc-icon-asset,h6.sc-icon-asset,p.sc-icon-asset,ul.sc-icon-asset,li.sc-icon-asset,ptc-subnav.sc-icon-asset,ptc-tab-list.sc-icon-asset,ptc-link.sc-icon-asset,ptc-square-card.sc-icon-asset,.hyphenate-text.sc-icon-asset,ptc-footer.sc-icon-asset{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}}icon-asset.sc-icon-asset{vertical-align:middle}svg.sc-icon-asset{transition:all var(--ptc-transition-medium) var(--ptc-ease-inout)}svg.micro.sc-icon-asset{width:calc(var(--ptc-font-size-x-small) / 2);height:calc(var(--ptc-font-size-x-small) / 2)}svg.xxx-small.sc-icon-asset{width:var(--ptc-font-size-xxx-small);height:var(--ptc-font-size-xxx-small)}svg.xx-small.sc-icon-asset{width:var(--ptc-font-size-xx-small);height:var(--ptc-font-size-xx-small)}svg.x-small.sc-icon-asset{width:var(--ptc-font-size-x-small);height:var(--ptc-font-size-x-small)}svg.small.sc-icon-asset{width:var(--ptc-font-size-small);height:var(--ptc-font-size-small)}svg.medium.sc-icon-asset{width:var(--ptc-font-size-medium);height:var(--ptc-font-size-medium)}svg.large.sc-icon-asset{width:var(--ptc-font-size-large);height:var(--ptc-font-size-large)}svg.x-large.sc-icon-asset{width:var(--ptc-font-size-x-large);height:var(--ptc-font-size-x-large)}svg.xx-large.sc-icon-asset{width:var(--ptc-font-size-xx-large);height:var(--ptc-font-size-xx-large)}svg.xxx-large.sc-icon-asset{width:var(--ptc-font-size-xxx-large);height:var(--ptc-font-size-xxx-large)}svg.xxxx-large.sc-icon-asset{width:var(--ptc-font-size-xxxx-large);height:var(--ptc-font-size-xxxx-large)}svg.white.sc-icon-asset{fill:var(--color-white)}svg.white.sc-icon-asset use[href$=\"#minus\"].sc-icon-asset,svg.white.sc-icon-asset use[href$=\"#plus\"].sc-icon-asset,svg.white.sc-icon-asset use[href$=\"#checkmark\"].sc-icon-asset{stroke:var(--color-white)}svg.black.sc-icon-asset{fill:var(--color-black)}svg.black.sc-icon-asset use[href$=\"#minus\"].sc-icon-asset,svg.black.sc-icon-asset use[href$=\"#plus\"].sc-icon-asset,svg.black.sc-icon-asset use[href$=\"#checkmark\"].sc-icon-asset{stroke:var(--color-black)}svg.ptc-green.sc-icon-asset{fill:var(--color-green-07)}svg.ptc-green.sc-icon-asset use[href$=\"#minus\"].sc-icon-asset,svg.ptc-green.sc-icon-asset use[href$=\"#plus\"].sc-icon-asset,svg.ptc-green.sc-icon-asset use[href$=\"#checkmark\"].sc-icon-asset{stroke:var(--color-green-07)}svg.gray.sc-icon-asset{fill:var(--color-gray-06)}svg.gray.sc-icon-asset use[href$=\"#minus\"].sc-icon-asset,svg.gray.sc-icon-asset use[href$=\"#plus\"].sc-icon-asset,svg.gray.sc-icon-asset use[href$=\"#checkmark\"].sc-icon-asset{stroke:var(--color-gray-06)}svg.light-gray.sc-icon-asset{fill:var(--color-gray-05)}svg.light-gray.sc-icon-asset use[href$=\"#minus\"].sc-icon-asset,svg.light-gray.sc-icon-asset use[href$=\"#plus\"].sc-icon-asset,svg.light-gray.sc-icon-asset use[href$=\"#checkmark\"].sc-icon-asset{stroke:var(--color-gray-05)}svg.disabled.sc-icon-asset{fill:var(--color-gray-03)}svg.disabled.sc-icon-asset use[href$=\"#minus\"].sc-icon-asset,svg.disabled.sc-icon-asset use[href$=\"#plus\"].sc-icon-asset,svg.disabled.sc-icon-asset use[href$=\"#checkmark\"].sc-icon-asset{stroke:var(--color-gray-03)}svg.primary-gray.sc-icon-asset{fill:var(--color-gray-10)}svg.inherit.sc-icon-asset{fill:inherit}svg.inherit.sc-icon-asset use[href$=\"#minus\"].sc-icon-asset,svg.inherit.sc-icon-asset use[href$=\"#plus\"].sc-icon-asset,svg.inherit.sc-icon-asset use[href$=\"#checkmark\"].sc-icon-asset{stroke:inherit}svg.sc-icon-asset:focus{outline:none !important}svg[tabIndex=\"0\"].sc-icon-asset:focus-visible{border-radius:var(--ptc-border-radius-standard);outline:5px solid var(--keyboard-nav-outline)}svg[tabIndex=\"0\"].sc-icon-asset:focus{outline:none !important}";
|
|
5
|
+
|
|
6
|
+
const IconAsset = class {
|
|
7
|
+
constructor(hostRef) {
|
|
8
|
+
registerInstance(this, hostRef);
|
|
9
|
+
this.ready = createEvent(this, "ready", 7);
|
|
10
|
+
this.regularSprite = getAssetPath("./media/regular.svg");
|
|
11
|
+
this.solidSprite = getAssetPath("./media/solid.svg");
|
|
12
|
+
this.brandSprite = getAssetPath("./media/brands.svg");
|
|
13
|
+
this.ptcSprite = getAssetPath("./media/designer-v6.0.7.svg");
|
|
14
|
+
this.name = undefined;
|
|
15
|
+
this.size = "xx-small";
|
|
16
|
+
this.type = "regular";
|
|
17
|
+
this.spin = "";
|
|
18
|
+
this.pulse = "";
|
|
19
|
+
this.color = "default";
|
|
20
|
+
this.isMobileSelect = undefined;
|
|
21
|
+
this.injectedStyle = undefined;
|
|
22
|
+
this.focusOn = false;
|
|
23
|
+
this.trackerId = "";
|
|
24
|
+
}
|
|
25
|
+
componentDidLoad() {
|
|
26
|
+
this.ready.emit({
|
|
27
|
+
"regular-icons": this.regularSprite,
|
|
28
|
+
"sold-icons": this.solidSprite,
|
|
29
|
+
"brand-icons": this.brandSprite,
|
|
30
|
+
"ptc-icons": this.ptcSprite,
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
render() {
|
|
34
|
+
const classMap = this.getCssClassMap();
|
|
35
|
+
if (this.type == "brands") {
|
|
36
|
+
return (h(Host, null, this.injectedStyle && h("style", null, this.injectedStyle), h("svg", { class: classMap }, h("use", { href: `${this.brandSprite}#${this.name}` }))));
|
|
37
|
+
}
|
|
38
|
+
else if (this.type == "solid") {
|
|
39
|
+
return (h(Host, null, this.injectedStyle && h("style", null, this.injectedStyle), h("svg", { class: classMap }, h("use", { href: `${this.solidSprite}#${this.name}` }))));
|
|
40
|
+
}
|
|
41
|
+
else if (this.type == "ptc") {
|
|
42
|
+
return (h(Host, null, this.injectedStyle && h("style", null, this.injectedStyle), h("svg", { class: classMap, "aria-hidden": this.isMobileSelect && "true", tabindex: this.focusOn ? 0 : -1, id: this.trackerId }, h("use", { href: `${this.ptcSprite}#${this.name}` }))));
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
return (h(Host, null, this.injectedStyle && h("style", null, this.injectedStyle), h("svg", { class: classMap }, h("use", { href: `${this.regularSprite}#${this.name}` }))));
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
getCssClassMap() {
|
|
49
|
+
return {
|
|
50
|
+
[this.size]: true,
|
|
51
|
+
[this.spin]: true,
|
|
52
|
+
[this.pulse]: true,
|
|
53
|
+
[this.color]: true,
|
|
54
|
+
["ismobileselect"]: this.isMobileSelect ? true : false,
|
|
55
|
+
["mf-listen"]: this.trackerId !== "" ? true : false,
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
static get assetsDirs() { return ["media"]; }
|
|
59
|
+
};
|
|
60
|
+
IconAsset.style = iconAssetCss;
|
|
61
|
+
|
|
62
|
+
const listItemCss = "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(.list-primary){display:block}:host(.flush-before) li::before{content:\"\" !important}:host(.breadcrumb){display:inline-block}:host(.breadcrumb) li{position:relative;display:inline-block;color:var(--color-white);font-weight:var(--ptc-font-weight-bold);font-size:var(--ptc-font-size-xxx-small);line-height:var(--ptc-line-height-densest);display:flex;align-items:baseline}:host(.breadcrumb) li::before{content:\"/\";top:0;left:0;margin-left:2px}:host(.breadcrumb) li a.item-link{color:var(--color-white);font-weight:var(--ptc-font-weight-bold) !important;font-size:var(--ptc-font-size-xxx-small) !important;line-height:var(--ptc-line-height-densest);text-decoration:underline;text-decoration-color:transparent;text-underline-offset:2px;text-decoration-thickness:1px;outline:none;transition:text-decoration-color var(--ptc-transition-medium) var(--ptc-ease-inout)}:host(.breadcrumb) li a.item-link:hover{text-decoration:underline;text-decoration-color:var(--color-green-07);outline:none}:host(.breadcrumb) li a.item-link:focus-visible{transition:none;border-radius:var(--ptc-border-radius-standard);border:2px solid white;outline:5px solid var(--keyboard-nav-outline);padding-bottom:5px;padding-right:5px}:host(.breadcrumb-center) li{display:inline}:host(.list-green){display:block;margin-bottom:16px}:host(.list-green) li a{font-size:var(--ptc-font-size-xx-small);color:var(--color-gray-10);text-decoration:underline;text-decoration-thickness:1.5px;text-decoration-color:var(--color-green-04);font-weight:var(--ptc-font-weight-bold);transition:color var(--ptc-transition-medium) var(--ptc-ease-inout);line-height:var(--ptc-line-height-p);text-underline-offset:4px}:host(.list-green) li a:hover{color:var(--color-green-04)}:host(:not(.flush-before)) li::before{margin-right:2px}:host(.list-footer) li{display:inline-block;font-size:var(--ptc-font-size-xx-small);font-weight:var(--ptc-font-weight-regular);font-style:normal;font-stretch:normal;line-height:var(--ptc-line-height-denser);letter-spacing:normal;color:var(--color-white);margin:0 0.5rem}:host(.list-footer) li a{color:var(--color-white-grey);border-bottom:1px solid transparent;display:inline-block;text-decoration:none}:host(.list-footer) li a:hover,:host(.list-footer) li a:focus{text-decoration:none;border-bottom:1px solid var(--color-green-06);color:var(--color-white-grey);transition:border var(--ptc-ease-inout) var(--ptc-transition-medium)}:host(.list-footer) li a:active{text-decoration:none;border-bottom:1px solid var(--color-green-06);color:var(--color-white-grey)}:host(.list-footer) li a:focus{outline:3px solid var(--color-blue-07);outline-offset:2px;border-radius:var(--ptc-border-radius-standard);text-decoration:none;border-color:transparent !important}:host(.list-footer) li a:focus-visible{border-radius:var(--ptc-border-radius-standard);border:2px solid white;outline:5px solid var(--keyboard-nav-outline);transition:none !important;border-color:white !important}:host(.white) li{color:var(--color-white)}:host(.white) li a.item-link{color:var(--color-white)}:host(.light-gray) li{color:var(--color-gray-01)}:host(.light-gray) li a.item-link{color:var(--color-gray-01)}:host(.primary-gray) li{color:var(--color-gray-10)}:host(.primary-gray) li a.item-link{color:var(--color-gray-10)}:host(.list-underline) li{color:var(--color-gray-10);list-style:none;-webkit-text-decoration:underline 1px solid;text-decoration:underline 1px solid;text-underline-offset:2px;line-height:var(--ptc-line-height-p)}:host(.list-underline) li a{display:inline-block;padding:4px 0}:host(.list-underline) li a.item-link{color:var(--color-gray-10)}:host(.list-underline) li a:focus-visible{border-radius:var(--ptc-border-radius-standard);outline:5px solid var(--keyboard-nav-outline)}:host li .has-before-home-icon{display:block}@media only screen and (min-width: 480px){:host li .has-before-home-icon{display:none}}";
|
|
63
|
+
|
|
64
|
+
const ListItem = class {
|
|
65
|
+
constructor(hostRef) {
|
|
66
|
+
registerInstance(this, hostRef);
|
|
67
|
+
this.listType = "list-primary";
|
|
68
|
+
this.linkHref = undefined;
|
|
69
|
+
this.flushBefore = false;
|
|
70
|
+
this.linkTarget = "_self";
|
|
71
|
+
this.hasBeforeHomeIcon = false;
|
|
72
|
+
this.trackerId = undefined;
|
|
73
|
+
this.color = undefined;
|
|
74
|
+
this.styles = undefined;
|
|
75
|
+
this.ariaLabel = "";
|
|
76
|
+
}
|
|
77
|
+
render() {
|
|
78
|
+
const classMap = this.getCssClassMap();
|
|
79
|
+
return (h(Host, { class: classMap }, this.styles && h("style", null, this.styles), h("li", { id: this.trackerId }, this.linkHref ? (h("a", Object.assign({ class: "item-link", target: this.linkTarget }, (this.linkHref ? { href: this.linkHref } : {}), (this.ariaLabel !== ""
|
|
80
|
+
? { "aria-label": this.ariaLabel }
|
|
81
|
+
: {}), { tabindex: "0" }), h("slot", null))) : (h("slot", null)))));
|
|
82
|
+
}
|
|
83
|
+
getCssClassMap() {
|
|
84
|
+
let bcEnable = false;
|
|
85
|
+
if (this.hostElement && this.hostElement.parentElement) {
|
|
86
|
+
try {
|
|
87
|
+
bcEnable =
|
|
88
|
+
this.hostElement.parentElement.classList.contains("center") &&
|
|
89
|
+
this.hostElement.parentElement.tagName === "PTC-BREADCRUMB";
|
|
90
|
+
}
|
|
91
|
+
catch (err) {
|
|
92
|
+
console.log(err);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
return {
|
|
96
|
+
[this.listType]: true,
|
|
97
|
+
["flush-before"]: this.flushBefore ? true : false,
|
|
98
|
+
[this.color]: !!this.color ? true : false,
|
|
99
|
+
["breadcrumb-center"]: bcEnable,
|
|
100
|
+
["mf-listen"]: true,
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
get hostElement() { return getElement(this); }
|
|
104
|
+
};
|
|
105
|
+
ListItem.style = listItemCss;
|
|
106
|
+
|
|
107
|
+
const maxWidthContainerCss = ":host{display:block}:host(.left){margin:auto auto auto 0}:host(.right){margin:auto 0 auto auto}:host(.center){margin:0 auto}";
|
|
108
|
+
|
|
109
|
+
const MaxWidthContainer = class {
|
|
110
|
+
constructor(hostRef) {
|
|
111
|
+
registerInstance(this, hostRef);
|
|
112
|
+
this.maxWidthP = undefined;
|
|
113
|
+
this.maxWidth = undefined;
|
|
114
|
+
this.breakpoint = 768;
|
|
115
|
+
this.contentAlign = "center";
|
|
116
|
+
this.styles = undefined;
|
|
117
|
+
}
|
|
118
|
+
componentDidLoad() {
|
|
119
|
+
this.handleResize();
|
|
120
|
+
window.addEventListener("resize", this.handleResize.bind(this));
|
|
121
|
+
}
|
|
122
|
+
disconnectedCallback() {
|
|
123
|
+
window.removeEventListener("resize", this.handleResize);
|
|
124
|
+
}
|
|
125
|
+
render() {
|
|
126
|
+
const classMap = this.getCssClassMap();
|
|
127
|
+
return (h(Host, { class: classMap }, this.styles && h("style", null, this.styles), h("slot", null)));
|
|
128
|
+
}
|
|
129
|
+
getCssClassMap() {
|
|
130
|
+
return {
|
|
131
|
+
[this.contentAlign]: true,
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
handleResize() {
|
|
135
|
+
// const selectedContainer = this.el.querySelector('.max-width-container');
|
|
136
|
+
if (this.el) {
|
|
137
|
+
if (window.innerWidth >= this.breakpoint) {
|
|
138
|
+
if (this.maxWidthP) {
|
|
139
|
+
this.el.style.maxWidth = `${this.maxWidthP}%`;
|
|
140
|
+
}
|
|
141
|
+
else {
|
|
142
|
+
this.el.style.maxWidth = `${this.maxWidth}px`;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
else {
|
|
146
|
+
this.el.style.maxWidth = "initial";
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
get el() { return getElement(this); }
|
|
151
|
+
};
|
|
152
|
+
MaxWidthContainer.style = maxWidthContainerCss;
|
|
153
|
+
|
|
154
|
+
const ptcBackgroundVideoCss = "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;position:relative}:host video{position:absolute;top:0px;left:0px;right:0;width:100%;height:100%;overflow:hidden;pointer-events:none;z-index:-100;-o-object-fit:cover;object-fit:cover}:host .video-overlay{z-index:1;display:block;position:absolute;width:100%;height:100%;top:0;left:0;opacity:0.8;background-image:linear-gradient(270deg, rgba(30, 38, 38, 0) 26%, #1e2626)}:host .video-overlay.dark{background-color:rgba(0, 0, 0, 0.6)}:host(.legacy){display:block;position:absolute;top:0px;left:0px;right:0;width:100%;height:100%;overflow:hidden;pointer-events:none;z-index:-100}:host(.legacy) video{-o-object-fit:cover;object-fit:cover;position:absolute;top:0px;left:0px;right:0;width:100%;height:100%;overflow:hidden}:host .iframe-wrapper{position:absolute;top:0px;left:0px;right:0;width:100%;height:100%;overflow:hidden;pointer-events:none;z-index:-100}:host .iframe-wrapper .background-video-embed{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:100%;height:100%}:host .iframe-wrapper .player .vp-video-wrapper .vp-telecine-cover video{-o-object-fit:cover;object-fit:cover}:host .play-button{position:absolute;top:1.5rem;right:1.5rem;width:34px;height:34px;z-index:99}@media (min-width: 768px){:host .play-button.top-right{top:2rem;right:2rem}}:host .play-button.top-left{right:unset;top:1.5rem;left:1.5rem}@media (min-width: 768px){:host .play-button.top-left{bottom:3.75rem;left:2rem}}@media (min-width: 768px){:host .play-button.bottom-left{top:unset;right:unset;bottom:3.75rem;left:2rem}}@media (min-width: 768px){:host .play-button.bottom-right{top:unset;bottom:3.75rem;right:2rem}}:host .play-button.allbp-bottom-right{top:unset;bottom:4.75rem;right:2rem}:host .play-button button{display:inline-block;padding:5px;position:relative;top:-5px;left:-5px;cursor:pointer}@media only screen and (min-width: 768px){:host .play-button button{top:auto;left:auto}}@media only screen and (min-width: 992px){:host .play-button button{padding:0}}:host .play-button button.bg-svg-play,:host .play-button button.bg-svg-pause{background-repeat:no-repeat;background-size:18px 18px;background-position:center;background-color:var(--color-white);width:34px;height:34px;box-shadow:0px 4px 8px 0px rgba(0, 0, 0, 0.24);border-radius:4px;border:2px solid var(--color-gray-10)}:host .play-button button.bg-svg-play:hover,:host .play-button button.bg-svg-pause:hover{background-color:var(--color-gray-02)}:host .play-button button.bg-svg-play:active,:host .play-button button.bg-svg-pause:active{transition:none;background-color:var(--color-gray-03)}:host .play-button button.bg-svg-play.active:hover,:host .play-button button.bg-svg-pause.active:hover{background-color:var(--color-gray-05)}:host .play-button button.bg-svg-play.active:active,:host .play-button button.bg-svg-pause.active:active{transition:none;background-color:var(--color-gray-03)}:host .play-button button.bg-svg-play:focus,:host .play-button button.bg-svg-pause:focus{border-radius:var(--ptc-border-radius-standard);border:2px solid white;outline:5px solid var(--keyboard-nav-outline)}:host .play-button button.bg-svg-play{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 12 18\" id=\"play\"><path d=\"M11.9625 9L0.0374756 0V18L11.9625 9Z\"></path></svg>')}:host .play-button button.bg-svg-pause{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 14 18\" id=\"pause\"><path id=\"rect28\" d=\"M 0,0 H 4 V 18 H 0 Z\"></path><path id=\"rect30\" d=\"m 10,0 h 4 v 18 h -4 z\"></path></svg>')}:host{display:block;position:relative}:host .media{position:absolute;inset:0;overflow:hidden}:host .background-video,:host .bg-fallback{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}:host .bg-fallback{display:block}";
|
|
155
|
+
|
|
156
|
+
const PtcBackgroundVideo = class {
|
|
157
|
+
constructor(hostRef) {
|
|
158
|
+
registerInstance(this, hostRef);
|
|
159
|
+
/** Ensure the first frame is painted and paused. */
|
|
160
|
+
this.showFirstFrame = (v) => {
|
|
161
|
+
v.preload = "auto";
|
|
162
|
+
v.removeAttribute("autoplay");
|
|
163
|
+
v.loop = false;
|
|
164
|
+
const paint = () => {
|
|
165
|
+
try {
|
|
166
|
+
//v.currentTime = 0;
|
|
167
|
+
// If a browser still paints black, try this tiny nudge:
|
|
168
|
+
v.currentTime = 0.1;
|
|
169
|
+
}
|
|
170
|
+
catch (_a) { }
|
|
171
|
+
v.pause();
|
|
172
|
+
};
|
|
173
|
+
if (v.readyState >= 2 /* HAVE_CURRENT_DATA, have enough data */) {
|
|
174
|
+
paint();
|
|
175
|
+
}
|
|
176
|
+
else {
|
|
177
|
+
const onLoaded = () => {
|
|
178
|
+
v.removeEventListener("loadeddata", onLoaded);
|
|
179
|
+
paint();
|
|
180
|
+
};
|
|
181
|
+
v.addEventListener("loadeddata", onLoaded, { once: true });
|
|
182
|
+
v.load();
|
|
183
|
+
}
|
|
184
|
+
};
|
|
185
|
+
this.videoSrc = undefined;
|
|
186
|
+
this.posterSrc = undefined;
|
|
187
|
+
this.overlay = true;
|
|
188
|
+
this.overlayType = "standard";
|
|
189
|
+
this.playButtonTitle = undefined;
|
|
190
|
+
this.pauseButtonTitle = undefined;
|
|
191
|
+
this.buttonLocation = "bottom-right";
|
|
192
|
+
this.buttonTabIndex = 0;
|
|
193
|
+
this.trackerId = undefined;
|
|
194
|
+
this.defer = undefined;
|
|
195
|
+
this.type = "default";
|
|
196
|
+
this.isIframe = false;
|
|
197
|
+
this.paused = undefined;
|
|
198
|
+
this.loadedTrue = false;
|
|
199
|
+
this.reducedMotion = false;
|
|
200
|
+
}
|
|
201
|
+
componentWillLoad() {
|
|
202
|
+
this.paused = false;
|
|
203
|
+
this.reducedMotion = isReducedMotion();
|
|
204
|
+
}
|
|
205
|
+
componentDidLoad() {
|
|
206
|
+
const afterMount = () => {
|
|
207
|
+
this.loadedTrue = true;
|
|
208
|
+
this.syncPlaybackWithPreference();
|
|
209
|
+
};
|
|
210
|
+
if (this.defer) {
|
|
211
|
+
nextUserInteractionEvent(this).then(afterMount);
|
|
212
|
+
}
|
|
213
|
+
else {
|
|
214
|
+
afterMount();
|
|
215
|
+
}
|
|
216
|
+
this.offMotionListener = onReducedMotionChange((reduced) => {
|
|
217
|
+
this.reducedMotion = reduced;
|
|
218
|
+
// Wait a tick for render to reflect state, then sync playback.
|
|
219
|
+
setTimeout(() => this.syncPlaybackWithPreference(), 0);
|
|
220
|
+
});
|
|
221
|
+
}
|
|
222
|
+
disconnectedCallback() {
|
|
223
|
+
var _a;
|
|
224
|
+
(_a = this.offMotionListener) === null || _a === void 0 ? void 0 : _a.call(this);
|
|
225
|
+
}
|
|
226
|
+
syncPlaybackWithPreference() {
|
|
227
|
+
if (this.isIframe) {
|
|
228
|
+
return;
|
|
229
|
+
}
|
|
230
|
+
const v = this.videoEl;
|
|
231
|
+
if (!v)
|
|
232
|
+
return;
|
|
233
|
+
if (this.reducedMotion) {
|
|
234
|
+
// Animations OFF, freeze first frame
|
|
235
|
+
this.showFirstFrame(v);
|
|
236
|
+
this.paused = true; //sync icon state
|
|
237
|
+
}
|
|
238
|
+
else {
|
|
239
|
+
// Animations ON, autoplay unless user paused
|
|
240
|
+
v.preload = "auto";
|
|
241
|
+
v.loop = true;
|
|
242
|
+
if (!this.paused) {
|
|
243
|
+
v.setAttribute("autoplay", "");
|
|
244
|
+
v.play().catch(() => { });
|
|
245
|
+
this.paused = false; //sync icon state
|
|
246
|
+
}
|
|
247
|
+
else {
|
|
248
|
+
v.pause();
|
|
249
|
+
this.paused = true; //sync icon state
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
// ------------ Render ------------
|
|
254
|
+
render() {
|
|
255
|
+
const canMountMedia = this.loadedTrue;
|
|
256
|
+
const videoNode = !this.isIframe && canMountMedia && (h("video", { class: "background-video", src: this.videoSrc, muted: true, playsinline: true, autoplay: !this.reducedMotion && !this.paused, loop: !this.reducedMotion, preload: "auto", "aria-hidden": "true", tabindex: "-1", ref: (el) => (this.videoEl = el) }));
|
|
257
|
+
const iframeNode = this.isIframe && canMountMedia && (h("div", { class: "iframe-wrapper" }, h("iframe", { id: "jumbotron-iframe", src: this.videoSrc, frameborder: 0, allow: "autoplay", allowFullScreen: true, class: "background-video-embed", "aria-hidden": "true", tabindex: "-1" })));
|
|
258
|
+
return (h(Host, { class: this.type }, h("div", { class: "media" }, videoNode, iframeNode), !!this.videoSrc && this.playButtonTitle && (h("div", { class: `play-button ${this.buttonLocation}` }, this.paused && (h("ptc-tooltip", { class: "play-btn", mode: "wrapper", description: this.playButtonTitle, position: this.buttonLocation === "allbp-bottom-right"
|
|
259
|
+
? "side-left"
|
|
260
|
+
: "bottom-right", styles: ".wrapper-content.sc-ptc-tooltip .tooltip.sc-ptc-tooltip{min-width:unset!important; white-space: nowrap}" }, h("div", { id: this.trackerId, class: "tracker-div mf-listen" }, h("button", { class: "bg-svg-play", type: "button", tabindex: this.buttonTabIndex, onClick: (e) => this.toggleVideoPlay(e), "aria-label": "Video Play button" })))), !this.paused && !!this.pauseButtonTitle && (h("ptc-tooltip", { class: "pause-btn", mode: "wrapper", description: this.pauseButtonTitle, position: this.buttonLocation === "allbp-bottom-right"
|
|
261
|
+
? "side-left"
|
|
262
|
+
: "bottom-right", styles: ".wrapper-content.sc-ptc-tooltip .tooltip.sc-ptc-tooltip{min-width:unset!important; white-space: nowrap}" }, h("div", { id: this.trackerId, class: "tracker-div mf-listen" }, h("button", { class: "bg-svg-pause", tabindex: this.buttonTabIndex, type: "button", onClick: (e) => this.toggleVideoPlay(e), "aria-label": "Video Pause button" })))))), this.overlay ? h("div", { class: `video-overlay ${this.overlayType}` }) : "", this.type === "default" ? h("slot", null) : ""));
|
|
263
|
+
}
|
|
264
|
+
toggleVideoPlay(e) {
|
|
265
|
+
e.preventDefault();
|
|
266
|
+
this.paused = !this.paused;
|
|
267
|
+
const v = this.videoEl;
|
|
268
|
+
if (!v)
|
|
269
|
+
return;
|
|
270
|
+
if (this.paused) {
|
|
271
|
+
v.pause();
|
|
272
|
+
}
|
|
273
|
+
else {
|
|
274
|
+
v.loop = true;
|
|
275
|
+
if (!this.reducedMotion)
|
|
276
|
+
v.setAttribute("autoplay", "");
|
|
277
|
+
v.play().catch((z) => console.error(z));
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
async pauseVideo() {
|
|
281
|
+
var _a;
|
|
282
|
+
this.paused = true;
|
|
283
|
+
(_a = this.videoEl) === null || _a === void 0 ? void 0 : _a.pause();
|
|
284
|
+
}
|
|
285
|
+
async playVideo() {
|
|
286
|
+
this.paused = false;
|
|
287
|
+
if (this.videoEl) {
|
|
288
|
+
this.videoEl.loop = true;
|
|
289
|
+
if (!this.reducedMotion)
|
|
290
|
+
this.videoEl.setAttribute("autoplay", "");
|
|
291
|
+
this.videoEl.play().catch((z) => console.error(z));
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
get el() { return getElement(this); }
|
|
295
|
+
};
|
|
296
|
+
PtcBackgroundVideo.style = ptcBackgroundVideoCss;
|
|
297
|
+
|
|
298
|
+
const ptcBreadcrumbCss = "h1.sc-ptc-breadcrumb,h2.sc-ptc-breadcrumb,h3.sc-ptc-breadcrumb,h4.sc-ptc-breadcrumb,h5.sc-ptc-breadcrumb,h6.sc-ptc-breadcrumb,p.sc-ptc-breadcrumb,ul.sc-ptc-breadcrumb,li.sc-ptc-breadcrumb,ptc-subnav.sc-ptc-breadcrumb,ptc-tab-list.sc-ptc-breadcrumb,ptc-link.sc-ptc-breadcrumb,ptc-square-card.sc-ptc-breadcrumb,.hyphenate-text.sc-ptc-breadcrumb,ptc-footer.sc-ptc-breadcrumb{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-breadcrumb,h2.sc-ptc-breadcrumb,h3.sc-ptc-breadcrumb,h4.sc-ptc-breadcrumb,h5.sc-ptc-breadcrumb,h6.sc-ptc-breadcrumb,p.sc-ptc-breadcrumb,ul.sc-ptc-breadcrumb,li.sc-ptc-breadcrumb,ptc-subnav.sc-ptc-breadcrumb,ptc-tab-list.sc-ptc-breadcrumb,ptc-link.sc-ptc-breadcrumb,ptc-square-card.sc-ptc-breadcrumb,.hyphenate-text.sc-ptc-breadcrumb,ptc-footer.sc-ptc-breadcrumb{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-breadcrumb-h{margin-top:var(--ptc-element-spacing-05);display:flex;align-items:flex-start}.sc-ptc-breadcrumb-h .visually-hidden.sc-ptc-breadcrumb{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.sc-ptc-breadcrumb-h .ptc-breadcrumb-ol.sc-ptc-breadcrumb{position:relative;list-style:none;margin:0;padding:0 0 0 22px}.sc-ptc-breadcrumb-h .ptc-breadcrumb-ol.sc-ptc-breadcrumb li.sc-ptc-breadcrumb{position:relative;display:inline;font-weight:var(--ptc-font-weight-bold);font-size:var(--ptc-font-size-xxx-small);line-height:var(--ptc-line-height-densest);word-break:initial;color:var(--color-white)}.sc-ptc-breadcrumb-h .ptc-breadcrumb-ol.sc-ptc-breadcrumb li.sc-ptc-breadcrumb::before{content:\"/\";margin:0 3px}.sc-ptc-breadcrumb-h .ptc-breadcrumb-ol.sc-ptc-breadcrumb li.home-link.sc-ptc-breadcrumb{position:absolute;left:0;margin-top:-3px}.sc-ptc-breadcrumb-h .ptc-breadcrumb-ol.sc-ptc-breadcrumb li.home-link.sc-ptc-breadcrumb::before{display:none}.sc-ptc-breadcrumb-h .ptc-breadcrumb-ol.sc-ptc-breadcrumb li.sc-ptc-breadcrumb a.sc-ptc-breadcrumb{font-weight:var(--ptc-font-weight-bold) !important;font-size:var(--ptc-font-size-xxx-small) !important;line-height:var(--ptc-line-height-densest);text-decoration:underline;text-decoration-color:transparent;text-underline-offset:2px;text-decoration-thickness:1px;outline:none;transition:text-decoration-color var(--ptc-transition-medium) var(--ptc-ease-inout);color:var(--color-white)}.sc-ptc-breadcrumb-h .ptc-breadcrumb-ol.sc-ptc-breadcrumb li.sc-ptc-breadcrumb a.sc-ptc-breadcrumb:active{transition:none}.sc-ptc-breadcrumb-h .ptc-breadcrumb-ol.sc-ptc-breadcrumb li.sc-ptc-breadcrumb a.sc-ptc-breadcrumb:hover{text-decoration:underline;text-decoration-color:var(--color-green-07);outline:none}.sc-ptc-breadcrumb-h .ptc-breadcrumb-ol.sc-ptc-breadcrumb li.sc-ptc-breadcrumb a.breadcrumb-item-link.sc-ptc-breadcrumb:focus-visible{border-radius:var(--ptc-border-radius-standard);border:2px solid white;outline:5px solid var(--keyboard-nav-outline);display:inline-block}.sc-ptc-breadcrumb-h .ptc-breadcrumb-ol.sc-ptc-breadcrumb li.sc-ptc-breadcrumb a.breadcrumb-item-link.sc-ptc-breadcrumb:focus-visible.dark-mode-link:focus-visible{border-radius:var(--ptc-border-radius-standard);outline:5px solid var(--keyboard-nav-outline)}.white.sc-ptc-breadcrumb-h .ptc-breadcrumb-ol.sc-ptc-breadcrumb li.sc-ptc-breadcrumb{color:var(--color-white)}.white.sc-ptc-breadcrumb-h .ptc-breadcrumb-ol.sc-ptc-breadcrumb li.sc-ptc-breadcrumb a.sc-ptc-breadcrumb{color:var(--color-white)}.black.sc-ptc-breadcrumb-h .ptc-breadcrumb-ol.sc-ptc-breadcrumb li.sc-ptc-breadcrumb{color:var(--color-black)}.black.sc-ptc-breadcrumb-h .ptc-breadcrumb-ol.sc-ptc-breadcrumb li.sc-ptc-breadcrumb a.sc-ptc-breadcrumb{color:var(--color-black)}.ptc-green.sc-ptc-breadcrumb-h .ptc-breadcrumb-ol.sc-ptc-breadcrumb li.sc-ptc-breadcrumb{color:var(--color-green-07)}.ptc-green.sc-ptc-breadcrumb-h .ptc-breadcrumb-ol.sc-ptc-breadcrumb li.sc-ptc-breadcrumb a.sc-ptc-breadcrumb{color:var(--color-green-07)}.gray.sc-ptc-breadcrumb-h .ptc-breadcrumb-ol.sc-ptc-breadcrumb li.sc-ptc-breadcrumb{color:var(--color-gray-06)}.gray.sc-ptc-breadcrumb-h .ptc-breadcrumb-ol.sc-ptc-breadcrumb li.sc-ptc-breadcrumb a.sc-ptc-breadcrumb{color:var(--color-gray-06)}.light-gray.sc-ptc-breadcrumb-h .ptc-breadcrumb-ol.sc-ptc-breadcrumb li.sc-ptc-breadcrumb{color:var(--color-gray-05)}.light-gray.sc-ptc-breadcrumb-h .ptc-breadcrumb-ol.sc-ptc-breadcrumb li.sc-ptc-breadcrumb a.sc-ptc-breadcrumb{color:var(--color-gray-05)}.primary-gray.sc-ptc-breadcrumb-h .ptc-breadcrumb-ol.sc-ptc-breadcrumb li.sc-ptc-breadcrumb{color:var(--color-gray-10)}.primary-gray.sc-ptc-breadcrumb-h .ptc-breadcrumb-ol.sc-ptc-breadcrumb li.sc-ptc-breadcrumb a.sc-ptc-breadcrumb{color:var(--color-gray-10)}.left.sc-ptc-breadcrumb-h{display:flex;justify-content:flex-start;align-items:flex-end}.center.sc-ptc-breadcrumb-h{display:flex;justify-content:center}.center.sc-ptc-breadcrumb-h .ptc-breadcrumb-ol.sc-ptc-breadcrumb{padding:0;text-align:center}.center.sc-ptc-breadcrumb-h .ptc-breadcrumb-ol.sc-ptc-breadcrumb li.sc-ptc-breadcrumb{display:inline-block}.center.sc-ptc-breadcrumb-h .ptc-breadcrumb-ol.sc-ptc-breadcrumb li.home-link.sc-ptc-breadcrumb{position:relative;left:auto;margin-top:0;vertical-align:text-bottom;margin-bottom:-1px}.right.sc-ptc-breadcrumb-h{display:flex;justify-content:flex-end}.remove-top-margin.sc-ptc-breadcrumb-h{margin-top:0px !important}";
|
|
299
|
+
|
|
300
|
+
const PtcBreadcrumb = class {
|
|
301
|
+
constructor(hostRef) {
|
|
302
|
+
registerInstance(this, hostRef);
|
|
303
|
+
this.position = undefined;
|
|
304
|
+
this.removeTopMargin = false;
|
|
305
|
+
this.color = "white";
|
|
306
|
+
this.isDarkMode = false;
|
|
307
|
+
this.styles = undefined;
|
|
308
|
+
}
|
|
309
|
+
componentWillLoad() {
|
|
310
|
+
this.listItems = this.hostElement.querySelectorAll("list-item");
|
|
311
|
+
}
|
|
312
|
+
componentDidLoad() {
|
|
313
|
+
if (this.listItems) {
|
|
314
|
+
this.hostElement.querySelectorAll("list-item").forEach((item) => {
|
|
315
|
+
item.remove();
|
|
316
|
+
});
|
|
317
|
+
}
|
|
318
|
+
}
|
|
319
|
+
render() {
|
|
320
|
+
const classMap = this.getCssClassMap();
|
|
321
|
+
return (h(Host, { class: classMap }, this.styles && h("style", null, this.styles), h("nav", { "aria-label": "Breadcrumb" }, h("ol", { class: "ptc-breadcrumb-ol" }, h("li", { class: "home-link mf-listen", id: "homeLinkID" }, h("a", { href: "/", "aria-label": "Home Link", class: {
|
|
322
|
+
["breadcrumb-item-link"]: true,
|
|
323
|
+
["dark-mode-link"]: this.isDarkMode,
|
|
324
|
+
} }, h("icon-asset", { type: "ptc", size: "medium", name: "icon-home", color: this.color }))), Array.from(this.listItems).map((item, index, array) => {
|
|
325
|
+
const textContent = item.textContent.trim();
|
|
326
|
+
const href = item.getAttribute("link-href");
|
|
327
|
+
return (h("li", { key: index, class: "mf-listen", id: `breadcrumb` + index + `ID` }, index < array.length - 1 ? (h("a", { href: href, target: "_self", class: {
|
|
328
|
+
["breadcrumb-item-link"]: true,
|
|
329
|
+
["dark-mode-link"]: this.isDarkMode,
|
|
330
|
+
} }, textContent)) : (textContent), h("span", { class: "visually-hidden" }, "/")));
|
|
331
|
+
})))));
|
|
332
|
+
}
|
|
333
|
+
getCssClassMap() {
|
|
334
|
+
return {
|
|
335
|
+
[this.position]: !!this.position && this.position !== undefined ? true : false,
|
|
336
|
+
["remove-top-margin"]: this.removeTopMargin ? true : false,
|
|
337
|
+
[this.color]: true,
|
|
338
|
+
};
|
|
339
|
+
}
|
|
340
|
+
get hostElement() { return getElement(this); }
|
|
341
|
+
};
|
|
342
|
+
PtcBreadcrumb.style = ptcBreadcrumbCss;
|
|
343
|
+
|
|
344
|
+
const ptcButtonCss = "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}}button.disabled{pointer-events:none;opacity:0.6}button{background-color:var(--color-gray-10);display:inline-block;border-style:solid;border-width:1px;white-space:normal;position:relative;text-decoration:none;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;cursor:pointer;padding:9.4px 17.5px;border-radius:var(--ptc-border-radius-standard)}button.reveal-down .content{transition:opacity var(--ptc-transition-medium) var(--ptc-ease-out);opacity:0;font-size:var(--ptc-font-size-xx-small)}button.reveal-down .icon-wrapper{position:relative;display:flex;align-items:center;justify-content:center;align-content:center;height:16px}button.reveal-down .icon-wrapper .icon{transition:top var(--ptc-transition-fast) var(--ptc-ease-out);position:absolute;display:inline-block;top:-12px}button:hover.reveal-down .content{opacity:1}button:hover.reveal-down .icon-wrapper .icon{top:4px}button.animation-right ::slotted([slot=slot-after-text]),button.animation-right ::slotted([slot=slot-before-text]),button.animation-down ::slotted([slot=slot-after-text]),button.animation-down ::slotted([slot=slot-before-text]){transition:transform var(--ptc-transition-medium) var(--ptc-ease-inout);position:relative;display:inline-block}button:hover.animation-right ::slotted([slot=slot-after-text]),button:hover.animation-right ::slotted([slot=slot-before-text]){transform:translateX(var(--ptc-element-spacing-02))}button:hover.animation-down ::slotted([slot=slot-after-text]),button:hover.animation-down ::slotted([slot=slot-before-text]){transform:translateY(var(--ptc-element-spacing-02))}button span{font-family:var(--ptc-font-latin);font-size:var(--ptc-font-size-small);font-weight:bold;line-height:var(--ptc-line-height-densest)}button.left{text-align:left}button.right{text-align:right}button.center{text-align:center}.icon-left ::slotted([slot=slot-before-text]){margin-right:var(--ptc-element-spacing-01)}.icon-right ::slotted([slot=slot-after-text]){margin-left:var(--ptc-element-spacing-01)}.blackgrey{box-shadow:var(--ptc-shadow-x-small);border:solid 1px var(--color-gray-10);background-image:linear-gradient(285deg, var(--color-gray-10) 155%, var(--color-gray-07) 62%)}.blackgrey:hover{box-shadow:var(--ptc-shadow-x-large)}.blackgrey span{color:var(--color-white)}.turtlegreen{box-shadow:var(--ptc-shadow-x-small);border:solid 1px var(--color-green-07);background-image:linear-gradient(285deg, var(--color-green-07) 155%, var(--color-green-07) 62%)}.turtlegreen:hover{box-shadow:var(--ptc-shadow-x-large)}.turtlegreen span{color:var(--color-white)}.offwhite{box-shadow:var(--ptc-shadow-x-small);border:solid 1px var(--color-gray-10);background-image:linear-gradient(to right, var(--color-white), var(--color-gray-02), var(--color-gray-01))}.offwhite:hover{box-shadow:var(--ptc-shadow-x-large)}.offwhite span{color:var(--color-gray-10)}.legacy-green{margin-left:10px;padding:10px 20px;margin-bottom:var(--ptc-element-spacing-01);margin-top:var(--ptc-element-spacing-01);box-shadow:var(--ptc-shadow-large);border:solid 2.5px var(--color-green-08);background-image:linear-gradient(to right, var(--color-green-06), var(--color-green-08))}.legacy-green:after{position:absolute;content:\"\";top:-1px;left:0;bottom:0;right:0;width:100%;height:103%;background-image:linear-gradient(to right, var(--color-green-08), var(--color-green-06));opacity:0;transition:opacity var(--ptc-transition-x-slow) var(--ptc-ease-inout);border-radius:2px}.legacy-green:hover{box-shadow:var(--ptc-shadow-x-large)}.legacy-green:hover span{color:var(--color-white)}.legacy-green:hover:after{opacity:1}.legacy-green span{font-family:var(--ptc-font-secondary-latin);color:var(--color-white);z-index:100;position:relative;text-transform:uppercase;font-weight:var(--ptc-font-weight-bold);letter-spacing:var(--ptc-letter-spacing-normal);font-size:var(--ptc-font-size-x-small)}@media only screen and (min-width: 768px){.legacy-green span{font-size:var(--ptc-font-size-small);letter-spacing:var(--ptc-letter-spacing-loose)}}.legacy-green icon-asset{display:inline}a{border-style:solid;border-width:1px;position:relative;text-decoration:none;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;padding:9.4px 17.5px;border-radius:var(--ptc-border-radius-standard);display:inline-block;position:relative}a.animation-right ::slotted([slot=slot-after-text]),a.animation-right ::slotted([slot=slot-before-text]),a.animation-down ::slotted([slot=slot-after-text]),a.animation-down ::slotted([slot=slot-before-text]){transition:all var(--ptc-ease-inout) var(--ptc-transition-medium);position:relative;display:inline-block;margin-left:5px}a:hover.animation-right ::slotted([slot=slot-after-text]),a:hover.animation-right ::slotted([slot=slot-before-text]){transform:translateX(var(--ptc-element-spacing-02))}a:hover.animation-down ::slotted([slot=slot-after-text]),a:hover.animation-down ::slotted([slot=slot-before-text]){transform:translateY(var(--ptc-element-spacing-02))}a.left{text-align:left}a.right{text-align:right}a.center{text-align:center}.nav{font-family:var(--ptc-font-latin);background-color:var(--color-gray-10);border-radius:var(--ptc-border-radius-standard);border:1px solid var(--color-white);border-bottom-style:solid;border-bottom-width:1px;box-sizing:border-box;color:var(--color-white);display:inline-block;font-size:var(--ptc-font-size-xx-small);font-stretch:100%;font-weight:var(--ptc-font-weight-bold);line-height:var(--ptc-line-height-loose);list-style:none;padding:3px var(--ptc-element-spacing-04);position:relative;text-align:center;text-decoration:none;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;transition:background-color var(--ptc-transition-medium) var(--ptc-ease-inout)}.nav:focus-visible{border-radius:4px !important;border:2px solid #fff !important;outline:5px solid #003dd6 !important;background-color:transparent !important;outline-offset:0px !important}.nav:focus{text-decoration:none;border:solid 2px transparent;outline:none}.nav:hover{background-color:var(--color-gray-12)}.ptc-primary,.ptc-quaternary,.ptc-secondary,.ptc-tertiary,.icon-toggle{padding:var(--ptc-font-size-xx-small) var(--ptc-font-size-medium);transition:background-color var(--ptc-ease-inout) var(--ptc-transition-medium);line-height:20px}.ptc-primary.disabled,.ptc-quaternary.disabled,.ptc-secondary.disabled,.ptc-tertiary.disabled,.icon-toggle.disabled{pointer-events:none;border-color:var(--color-gray-03);background:var(--color-gray-02)}.ptc-primary.disabled span,.ptc-quaternary.disabled span,.ptc-secondary.disabled span,.ptc-tertiary.disabled span,.icon-toggle.disabled span{color:var(--color-gray-03)}.ptc-primary.disabled ::slotted([slot=slot-after-text]),.ptc-quaternary.disabled ::slotted([slot=slot-after-text]),.ptc-secondary.disabled ::slotted([slot=slot-after-text]),.ptc-tertiary.disabled ::slotted([slot=slot-after-text]),.icon-toggle.disabled ::slotted([slot=slot-after-text]){fill:var(--color-gray-03) !important}.ptc-primary:focus-visible,.ptc-quaternary:focus-visible,.ptc-secondary:focus-visible,.ptc-tertiary:focus-visible,.icon-toggle:focus-visible{border-radius:var(--ptc-border-radius-standard);outline:5px solid var(--keyboard-nav-outline)}.ptc-primary span,.ptc-quaternary span,.ptc-secondary span,.ptc-tertiary span,.icon-toggle span{font-family:var(--ptc-font-latin);font-weight:var(--ptc-font-weight-bold);font-size:var(--ptc-font-size-small);line-height:var(--ptc-line-height-densest);letter-spacing:normal}.ptc-primary.small,.ptc-quaternary.small,.ptc-secondary.small,.ptc-tertiary.small,.icon-toggle.small{padding:var(--ptc-element-spacing-03) var(--ptc-element-spacing-04)}.ptc-primary.small span,.ptc-quaternary.small span,.ptc-secondary.small span,.ptc-tertiary.small span,.icon-toggle.small span{font-size:var(--ptc-font-size-xx-small)}.ptc-primary.medium,.ptc-quaternary.medium,.ptc-secondary.medium,.ptc-tertiary.medium,.icon-toggle.medium{padding:14px 20px}.ptc-primary.medium span,.ptc-quaternary.medium span,.ptc-secondary.medium span,.ptc-tertiary.medium span,.icon-toggle.medium span{font-size:var(--ptc-font-size-small)}.ptc-primary.large,.ptc-quaternary.large,.ptc-secondary.large,.ptc-tertiary.large,.icon-toggle.large{padding:var(--ptc-element-spacing-04) var(--ptc-element-spacing-06)}.ptc-primary.large span,.ptc-quaternary.large span,.ptc-secondary.large span,.ptc-tertiary.large span,.icon-toggle.large span{font-size:var(--ptc-font-size-large)}.ptc-primary.acc-alt-style:focus-visible,.ptc-quaternary.acc-alt-style:focus-visible,.ptc-secondary.acc-alt-style:focus-visible,.ptc-tertiary.acc-alt-style:focus-visible,.icon-toggle.acc-alt-style:focus-visible{border-radius:var(--ptc-border-radius-standard);border:2px solid white;outline:5px solid var(--keyboard-nav-outline)}.ptc-primary{background:var(--color-gray-12);border:2px solid var(--color-green-07);border-radius:var(--ptc-border-radius-standard)}.ptc-primary:hover{background-color:var(--color-gray-10)}.ptc-primary:active{background-color:var(--color-black);transition:none}.ptc-primary span{color:var(--color-white)}.ptc-primary ::slotted([slot=slot-after-text]){fill:var(--color-white) !important}.ptc-secondary{background:var(--color-gray-12);border:2px solid var(--color-gray-08);border-radius:var(--ptc-border-radius-standard)}.ptc-secondary:hover{background-color:var(--color-gray-10)}.ptc-secondary:active{background-color:var(--color-black);transition:none}.ptc-secondary span{color:var(--color-white)}.ptc-secondary ::slotted([slot=slot-after-text]){fill:var(--color-white) !important}.ptc-tertiary{background:var(--color-white);border:2px solid var(--color-gray-10);border-radius:var(--ptc-border-radius-standard)}.ptc-tertiary:hover{background-color:var(--color-gray-02)}.ptc-tertiary:active{background-color:var(--color-gray-03);transition:none}.ptc-tertiary span{color:var(--color-gray-10)}.ptc-tertiary ::slotted([slot=slot-after-text]){fill:var(--color-gray-10) !important}.ptc-tertiary ::slotted(a){color:var(--color-gray-10) !important;text-decoration-line:none !important}.ptc-quaternary{background:var(--color-green-07);border:2px solid var(--color-green-07);border-radius:var(--ptc-border-radius-standard);cursor:pointer}.ptc-quaternary:hover{background-color:var(--color-green-08)}.ptc-quaternary:active{background-color:var(--color-green-09);transition:none}.ptc-quaternary span{color:var(--color-white)}.ptc-quaternary ::slotted([slot=slot-after-text]){fill:var(--color-white) !important}.icon-toggle{background:var(--color-white);border:1px solid var(--color-gray-10);border-radius:var(--ptc-border-radius-standard);padding:0;height:2.125rem;width:2.125rem;box-shadow:var(--ptc-shadow-medium)}.icon-toggle:hover{background-color:var(--color-gray-02)}.icon-toggle:active{transition:none;background-color:var(--color-gray-03)}.icon-toggle.active{background-color:var(--color-gray-04)}.icon-toggle.active:hover{background-color:var(--color-gray-05)}.icon-toggle.active:active{transition:none;background-color:var(--color-gray-03)}.icon-toggle:focus{outline:2px solid var(--color-blue-07);outline-offset:1px}.icon-toggle span{color:var(--color-gray-10);padding:0}.icon-toggle ::slotted([slot=slot-after-text]){fill:var(--color-gray-10) !important}.icon-toggle ::slotted(icon-asset){display:block;margin:auto;height:18px;width:18px}.clear-search{border:none;padding:0px;line-height:var(----ptc-line-height-densest);background-color:transparent}.clear-search:hover{text-decoration:underline;text-decoration-color:var(--color-white)}.clear-search span{color:var(--color-white);font-weight:var(--ptc-font-weight-semibold);font-size:var(--ptc-font-size-x-small);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.tracker-div{display:inline;display:inline-block}.focus-state-dark-background:focus-visible{border-radius:var(--ptc-border-radius-standard);border:2px solid white;outline:5px solid var(--keyboard-nav-outline)}.secondary-cta-light,.secondary-cta-dark,.primary-cta{padding:0.875rem 1.25rem;font-size:var(--ptc-font-size-small);font-style:normal;font-weight:var(--ptc-font-weight-bold);line-height:var(--ptc-line-height-densest);color:var(--color-white);border:2px solid transparent;text-decoration:none}.medium.secondary-cta-light,.medium.secondary-cta-dark,.medium.primary-cta{padding:0.75rem 1rem}.medium.secondary-cta-light span,.medium.secondary-cta-dark span,.medium.primary-cta span{font-size:var(--ptc-font-size-xx-small);font-weight:var(--ptc-font-weight-extrabold)}.small.secondary-cta-light,.small.secondary-cta-dark,.small.primary-cta{padding:0.5rem 0.75rem}.small.secondary-cta-light span,.small.secondary-cta-dark span,.small.primary-cta span{font-size:var(--ptc-font-size-xx-small);font-weight:var(--ptc-font-weight-extrabold)}.disabled.secondary-cta-light,.disabled.secondary-cta-dark,.disabled.primary-cta{pointer-events:none;color:var(--color-gray-03);border-color:var(--color-gray-03);background-color:var(--color-gray-02)}.disabled.secondary-cta-light icon-asset svg,.disabled.secondary-cta-dark icon-asset svg,.disabled.primary-cta icon-asset svg{fill:var(--color-gray-03)}.disabled.secondary-cta-light:focus-visible,.disabled.secondary-cta-dark:focus-visible,.disabled.primary-cta:focus-visible{background-color:var(--color-gray-02)}.secondary-cta-light:focus-visible,.secondary-cta-dark:focus-visible,.primary-cta:focus-visible{border-radius:var(--ptc-border-radius-standard);border:2px solid white;outline:5px solid var(--keyboard-nav-outline)}.full-width.secondary-cta-light,.full-width.secondary-cta-dark,.full-width.primary-cta{width:100%}.secondary-cta-light .cta-content-wrap,.secondary-cta-dark .cta-content-wrap,.primary-cta .cta-content-wrap{display:flex;justify-content:center;align-items:center;text-align:center}.secondary-cta-light .cta-content-wrap icon-asset,.secondary-cta-dark .cta-content-wrap icon-asset,.primary-cta .cta-content-wrap icon-asset{margin-right:8px;line-height:0}.secondary-cta-light .cta-content-wrap icon-asset+span,.secondary-cta-dark .cta-content-wrap icon-asset+span,.primary-cta .cta-content-wrap icon-asset+span{text-align:left}.primary-cta{background-color:var(--color-green-07);border-color:var(--color-green-07);transition:all 0.2s ease}.primary-cta:hover{background-color:var(--color-green-08)}.primary-cta:active{background-color:var(--color-green-09)}.primary-cta:focus-visible{background-color:var(--color-green-07)}.secondary-cta-dark{background-color:var(--color-gray-12);border-color:var(--color-gray-08)}.secondary-cta-dark:hover{background-color:var(--color-gray-10)}.secondary-cta-dark:active{background-color:var(--color-black)}.secondary-cta-dark:focus-visible{background-color:var(--color-gray-12)}.secondary-cta-light{background-color:var(--color-white);border-color:var(--color-gray-10);color:var(--color-gray-10)}.secondary-cta-light:hover{background-color:var(--color-gray-02)}.secondary-cta-light:active{background-color:var(--color-gray-03)}.secondary-cta-light:focus-visible{background-color:var(--color-white)}";
|
|
345
|
+
|
|
346
|
+
const PtcButton = class {
|
|
347
|
+
constructor(hostRef) {
|
|
348
|
+
registerInstance(this, hostRef);
|
|
349
|
+
this.clickEvent = createEvent(this, "clickEvent", 7);
|
|
350
|
+
this.disabled = false;
|
|
351
|
+
this.active = false;
|
|
352
|
+
this.type = "button";
|
|
353
|
+
this.color = "ptc-primary";
|
|
354
|
+
this.iconAnimation = "";
|
|
355
|
+
this.iconPosition = "icon-right";
|
|
356
|
+
this.linkHref = undefined;
|
|
357
|
+
this.linkTitle = undefined;
|
|
358
|
+
this.target = "_self";
|
|
359
|
+
this.rel = undefined;
|
|
360
|
+
this.tabNav = 0;
|
|
361
|
+
this.styles = undefined;
|
|
362
|
+
this.textAlign = undefined;
|
|
363
|
+
this.enableAccessibilityAltStyle = false;
|
|
364
|
+
this.size = undefined;
|
|
365
|
+
this.buttonTitle = undefined;
|
|
366
|
+
this.ariaLabel = "";
|
|
367
|
+
this.seoCompatibilityMode = false;
|
|
368
|
+
this.maintainContent = false;
|
|
369
|
+
this.trackerId = undefined;
|
|
370
|
+
this.darkFocusState = false;
|
|
371
|
+
this.ctaWidth = "default";
|
|
372
|
+
}
|
|
373
|
+
clickEventHandler() {
|
|
374
|
+
this.clickEvent.emit();
|
|
375
|
+
}
|
|
376
|
+
componentWillLoad() {
|
|
377
|
+
CheckDarkFocusState(this, this.el);
|
|
378
|
+
}
|
|
379
|
+
seoCompRender() {
|
|
380
|
+
const classMap = this.getCssClassMap();
|
|
381
|
+
const Tag = !!this.linkHref ? "a" : "button";
|
|
382
|
+
const [TagType, firstChild] = getSeoTagType(this.el, Tag);
|
|
383
|
+
const html = firstChild && firstChild.innerHTML;
|
|
384
|
+
if (this.el == firstChild) {
|
|
385
|
+
this.el.innerHTML = "";
|
|
386
|
+
}
|
|
387
|
+
if (this.maintainContent) {
|
|
388
|
+
this.el.innerHTML = html;
|
|
389
|
+
}
|
|
390
|
+
return (h(Host, null, this.styles && h("style", null, this.styles), h("div", Object.assign({ id: this.trackerId, class: "tracker-div mf-listen" }, (this.ctaWidth === "full-width"
|
|
391
|
+
? { style: { display: "block" } }
|
|
392
|
+
: {})), h(TagType, Object.assign({ class: classMap, onClick: this.clickEventHandler.bind(this) }, (!!this.linkHref ? { href: this.linkHref } : {}), (!this.linkHref ? { type: this.type } : {}), (!!this.target && !!this.linkHref
|
|
393
|
+
? { target: this.target }
|
|
394
|
+
: {}), (!!this.rel && !!this.linkHref
|
|
395
|
+
? { rel: this.rel }
|
|
396
|
+
: {}), (!!this.linkHref
|
|
397
|
+
? {
|
|
398
|
+
title: this.linkTitle
|
|
399
|
+
? this.linkTitle
|
|
400
|
+
: this.linkHref,
|
|
401
|
+
}
|
|
402
|
+
: {}), (!!this.tabNav
|
|
403
|
+
? { tabindex: -1 }
|
|
404
|
+
: { tabindex: 0 }), { title: this.buttonTitle }, (this.ariaLabel !== ""
|
|
405
|
+
? { ariaLabel: this.ariaLabel }
|
|
406
|
+
: {})), h("span", { innerHTML: html, class: "cta-content-wrap" }, h("slot", { name: "slot-before-text" }), h("slot", { name: "slot-after-text" }))))));
|
|
407
|
+
}
|
|
408
|
+
standardRender() {
|
|
409
|
+
const classMap = this.getCssClassMap();
|
|
410
|
+
const Tag = !!this.linkHref ? "a" : "button";
|
|
411
|
+
return (h(Host, null, this.styles && h("style", null, this.styles), h("div", { id: this.trackerId, class: "tracker-div mf-listen" }, h(Tag, Object.assign({ class: classMap, onClick: this.clickEventHandler.bind(this) }, (!!this.linkHref ? { href: this.linkHref } : {}), (!this.linkHref ? { type: this.type } : {}), (!!this.target && !!this.linkHref
|
|
412
|
+
? { target: this.target }
|
|
413
|
+
: {}), (!!this.rel && !!this.linkHref
|
|
414
|
+
? { rel: this.rel }
|
|
415
|
+
: {}), (!!this.linkHref
|
|
416
|
+
? {
|
|
417
|
+
title: this.linkTitle
|
|
418
|
+
? this.linkTitle
|
|
419
|
+
: this.linkHref,
|
|
420
|
+
}
|
|
421
|
+
: {}), (!!this.tabNav
|
|
422
|
+
? { tabindex: -1 }
|
|
423
|
+
: { tabindex: 0 }), { title: this.buttonTitle }, (this.ariaLabel !== ""
|
|
424
|
+
? { ariaLabel: this.ariaLabel }
|
|
425
|
+
: {})), this.iconAnimation == "reveal-down" ? (h("span", null, h("div", { class: "content" }, h("slot", null)), h("div", { class: "icon-wrapper" }, h("div", { class: "icon" }, h("slot", { name: "slot-after-text" }))))) : (h("span", null, h("slot", { name: "slot-before-text" }), h("slot", null), h("slot", { name: "slot-after-text" })))))));
|
|
426
|
+
}
|
|
427
|
+
render() {
|
|
428
|
+
if (this.seoCompatibilityMode) {
|
|
429
|
+
return this.seoCompRender();
|
|
430
|
+
}
|
|
431
|
+
else {
|
|
432
|
+
return this.standardRender();
|
|
433
|
+
}
|
|
434
|
+
}
|
|
435
|
+
getCssClassMap() {
|
|
436
|
+
return {
|
|
437
|
+
[this.color]: true,
|
|
438
|
+
[this.iconAnimation]: true,
|
|
439
|
+
[this.iconPosition]: true,
|
|
440
|
+
["disabled"]: this.disabled ? true : false,
|
|
441
|
+
["active"]: this.active ? true : false,
|
|
442
|
+
[this.textAlign]: true,
|
|
443
|
+
[this.size]: true,
|
|
444
|
+
["acc-alt-style"]: this.enableAccessibilityAltStyle,
|
|
445
|
+
["focus-state-dark-background"]: this.darkFocusState,
|
|
446
|
+
[this.ctaWidth]: true,
|
|
447
|
+
};
|
|
448
|
+
}
|
|
449
|
+
get el() { return getElement(this); }
|
|
450
|
+
};
|
|
451
|
+
PtcButton.style = ptcButtonCss;
|
|
452
|
+
|
|
453
|
+
let ResponsiveBgVariables = {
|
|
454
|
+
envs: ['xs', 'sm', 'md', 'lg'],
|
|
455
|
+
selector: '.ptc-img',
|
|
456
|
+
interval: 250
|
|
457
|
+
};
|
|
458
|
+
let ResponsivePictureVariables = {
|
|
459
|
+
envs: ['xs', 'sm', 'md', 'lg'],
|
|
460
|
+
selector: '.ptc-picture',
|
|
461
|
+
interval: 250
|
|
462
|
+
};
|
|
463
|
+
|
|
464
|
+
const ptcImgCss = "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}}.smart-bg{width:100%;height:100%;background-size:cover;background-repeat:no-repeat;background-position:50% 50%}.smart-img{position:absolute;display:block;width:100%;height:100%;top:0;left:0;background-size:cover;background-repeat:no-repeat;background-position:50% 50%}.radius-standard{border-radius:var(--ptc-border-radius-standard)}.radius-standard-top{border-top-left-radius:var(--ptc-border-radius-standard);border-top-right-radius:var(--ptc-border-radius-standard)}.radius-large{border-radius:var(--ptc-border-radius-large)}.radius-large-top{border-top-left-radius:var(--ptc-border-radius-large);border-top-right-radius:var(--ptc-border-radius-large)}.lazy-bg{background-image:none !important;background-color:var(--color-gray-03)}@media only screen and (min-width: 768px){.hidden-xs{display:none !important}}@media (min-width: 768px) and (max-width: 991px){.hidden-sm{display:none !important}}@media (min-width: 992px) and (max-width: 1199px){.hidden-md{display:none !important}}@media only screen and (min-width: 768px){.hidden-lg{display:none !important}}";
|
|
465
|
+
|
|
466
|
+
const PtcImg = class {
|
|
467
|
+
constructor(hostRef) {
|
|
468
|
+
registerInstance(this, hostRef);
|
|
469
|
+
this.sizeXs = "510x340";
|
|
470
|
+
this.sizeSm = "1240x496";
|
|
471
|
+
this.sizeMd = "1366x500";
|
|
472
|
+
this.sizeLg = "1920x1080";
|
|
473
|
+
this.imgUrl = undefined;
|
|
474
|
+
this.imageType = "smart-bg";
|
|
475
|
+
this.borderRadius = "";
|
|
476
|
+
this.loadMode = "lazy-bg";
|
|
477
|
+
this.styles = undefined;
|
|
478
|
+
}
|
|
479
|
+
/**
|
|
480
|
+
* Image Z Index
|
|
481
|
+
*/
|
|
482
|
+
// @Prop() imageZIndex: 'z-index-auto' | 'z-index-n-2' | 'z-index-n-1' | 'z-index-p-1' | 'z-index-p-2' = 'z-index-auto';
|
|
483
|
+
WindowResize() {
|
|
484
|
+
this.setResponsiveBg();
|
|
485
|
+
}
|
|
486
|
+
render() {
|
|
487
|
+
const classMap = this.getCssClassMap();
|
|
488
|
+
return (h(Host, null, this.styles && h("style", null, this.styles), h("div", { class: classMap, "data-xs": `${this.imgUrl}`, "data-sm": `${this.imgUrl}`, "data-md": `${this.imgUrl}`, "data-lg": `${this.imgUrl}` }, this.imageType == "smart-bg" ? h("slot", null) : null)));
|
|
489
|
+
}
|
|
490
|
+
componentDidLoad() {
|
|
491
|
+
this.addIntersectionObserver();
|
|
492
|
+
this.setResponsiveBg();
|
|
493
|
+
}
|
|
494
|
+
componentWillUpdate() {
|
|
495
|
+
this.addIntersectionObserver();
|
|
496
|
+
this.setResponsiveBg();
|
|
497
|
+
}
|
|
498
|
+
//responsive image
|
|
499
|
+
setResponsiveBg() {
|
|
500
|
+
// Define local variables
|
|
501
|
+
let backgrounds = (this.el || document).querySelectorAll(ResponsiveBgVariables.selector), el, elData, currentBreakpoint = this.getCurrentBreakPoints();
|
|
502
|
+
// Loop through all target elements
|
|
503
|
+
for (var i = 0, len = backgrounds.length; i < len; i++) {
|
|
504
|
+
// Set current variables
|
|
505
|
+
el = backgrounds[i];
|
|
506
|
+
elData = el.getAttribute("data-" + currentBreakpoint);
|
|
507
|
+
// If the data attribute exists, set the background
|
|
508
|
+
if (elData !== null) {
|
|
509
|
+
el.style.backgroundImage = "url('" + elData + "')";
|
|
510
|
+
}
|
|
511
|
+
else {
|
|
512
|
+
if (typeof console == "object") {
|
|
513
|
+
console.warn("Data attribute: data-" +
|
|
514
|
+
currentBreakpoint +
|
|
515
|
+
" not found on element:\n\n" +
|
|
516
|
+
el.outerHTML +
|
|
517
|
+
"\n\n\n");
|
|
518
|
+
}
|
|
519
|
+
}
|
|
520
|
+
}
|
|
521
|
+
}
|
|
522
|
+
//lazy loading
|
|
523
|
+
addIntersectionObserver() {
|
|
524
|
+
if (!this.imgUrl) {
|
|
525
|
+
return;
|
|
526
|
+
}
|
|
527
|
+
if ("IntersectionObserver" in window) {
|
|
528
|
+
let lazyLoadBgs = (this.el || document).querySelectorAll(".lazy-bg");
|
|
529
|
+
let bgObserver = new IntersectionObserver((entries) => {
|
|
530
|
+
entries.forEach((entry) => {
|
|
531
|
+
if (entry.isIntersecting) {
|
|
532
|
+
const image = entry.target;
|
|
533
|
+
image.classList.remove("lazy-bg");
|
|
534
|
+
bgObserver.unobserve(image);
|
|
535
|
+
}
|
|
536
|
+
});
|
|
537
|
+
});
|
|
538
|
+
lazyLoadBgs.forEach((image) => {
|
|
539
|
+
bgObserver.observe(image);
|
|
540
|
+
});
|
|
541
|
+
}
|
|
542
|
+
}
|
|
543
|
+
getCssClassMap() {
|
|
544
|
+
return {
|
|
545
|
+
[this.imageType]: true,
|
|
546
|
+
"ptc-img": true,
|
|
547
|
+
[this.borderRadius]: true,
|
|
548
|
+
[this.loadMode]: true,
|
|
549
|
+
// [this.imageZIndex] : true
|
|
550
|
+
};
|
|
551
|
+
}
|
|
552
|
+
getCurrentBreakPoints() {
|
|
553
|
+
// Define local variables
|
|
554
|
+
let doc = window.document, temp = doc.createElement("div"), env;
|
|
555
|
+
// Append test node
|
|
556
|
+
doc.body.appendChild(temp);
|
|
557
|
+
// Loop through breakpoints
|
|
558
|
+
for (let i = ResponsiveBgVariables.envs.length - 1; i >= 0; i--) {
|
|
559
|
+
env = ResponsiveBgVariables.envs[i];
|
|
560
|
+
// Add classes
|
|
561
|
+
temp.className = "hidden-" + env;
|
|
562
|
+
// Found breakpoint
|
|
563
|
+
if (temp.offsetParent === null) {
|
|
564
|
+
// Remove our test node
|
|
565
|
+
doc.body.removeChild(temp);
|
|
566
|
+
// Return current breakpoint
|
|
567
|
+
return env;
|
|
568
|
+
}
|
|
569
|
+
}
|
|
570
|
+
// Breakpoint not found, try fallback
|
|
571
|
+
doc.body.removeChild(temp);
|
|
572
|
+
return this.getFallbackBreakpoint();
|
|
573
|
+
}
|
|
574
|
+
getFallbackBreakpoint() {
|
|
575
|
+
if (window.matchMedia("(min-width: 992px)").matches) {
|
|
576
|
+
return "lg";
|
|
577
|
+
}
|
|
578
|
+
else if (window.matchMedia("(min-width: 768px)").matches) {
|
|
579
|
+
return "md";
|
|
580
|
+
}
|
|
581
|
+
else if (window.matchMedia("(min-width: 576px)").matches) {
|
|
582
|
+
return "sm";
|
|
583
|
+
}
|
|
584
|
+
else {
|
|
585
|
+
return "xs";
|
|
586
|
+
}
|
|
587
|
+
}
|
|
588
|
+
get el() { return getElement(this); }
|
|
589
|
+
};
|
|
590
|
+
PtcImg.style = ptcImgCss;
|
|
591
|
+
|
|
592
|
+
const ptcJumbotronCss = "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}}.ptc-container{padding-right:24px;padding-left:24px;margin-right:auto;margin-left:auto}@media only screen and (min-width: 1200px){.ptc-container{padding-left:0;padding-right:0;max-width:1136px}}@media only screen and (min-width: 1440px){.ptc-container{padding-left:0;padding-right:0;max-width:1200px}}.ptc-container-lg{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media only screen and (min-width: 480px){.ptc-container-lg{padding-left:var(--ptc-layout-spacing-03);padding-right:var(--ptc-layout-spacing-03)}}@media only screen and (min-width: 768px){.ptc-container-lg{padding-left:var(--ptc-layout-spacing-04);padding-right:var(--ptc-layout-spacing-04)}}@media only screen and (min-width: 992px){.ptc-container-lg{padding-left:var(--ptc-element-spacing-08);padding-right:var(--ptc-element-spacing-08)}}@media only screen and (min-width: 1980px){.ptc-container-lg{padding-left:0;padding-right:0;max-width:1900px}}.ptc-container-fluid{width:100%}.u-para-sm{font-size:var(--ptc-font-size-small) !important}.u-para-md{font-size:var(--ptc-font-size-medium) !important}.u-para-lg{font-size:var(--ptc-font-size-large) !important}.u-para-xl{font-size:var(--ptc-font-size-x-large) !important}.u-para-xxl{font-size:var(--ptc-font-size-xx-large) !important}.u-para-xxxl{font-size:var(--ptc-font-size-xxx-large) !important}@media only screen and (min-width: 768px){.u-para-sm{font-size:calc(var(--ptc-font-size-small) + 0.05vw) !important}.u-para-md{font-size:calc(var(--ptc-font-size-medium) + 0.05vw) !important}.u-para-lg{font-size:calc(var(--ptc-font-size-large) + 0.05vw) !important}.u-para-xl{font-size:calc(var(--ptc-font-size-x-large) + 0.05vw) !important}.u-para-xxl{font-size:calc(var(--ptc-font-size-xx-large) + 0.05vw) !important}.u-para-xxxl{font-size:calc(var(--ptc-font-size-xxx-large) + 0.05vw) !important}}@media only screen and (min-width: 992px){.u-para-sm{font-size:calc(var(--ptc-font-size-small) + 0.1vw) !important}.u-para-md{font-size:calc(var(--ptc-font-size-medium) + 0.1vw) !important}.u-para-lg{font-size:calc(var(--ptc-font-size-large) + 0.1vw) !important}.u-para-xl{font-size:calc(var(--ptc-font-size-x-large) + 0.1vw) !important}.u-para-xxl{font-size:calc(var(--ptc-font-size-xx-large) + 0.1vw) !important}.u-para-xxxl{font-size:calc(var(--ptc-font-size-xxx-large) + 0.1vw) !important}}@media only screen and (min-width: 1200px){.u-para-sm{font-size:calc(var(--ptc-font-size-small) + 0.15vw) !important}.u-para-md{font-size:calc(var(--ptc-font-size-medium) + 0.15vw) !important}.u-para-lg{font-size:calc(var(--ptc-font-size-large) + 0.15vw) !important}.u-para-xl{font-size:calc(var(--ptc-font-size-x-large) + 0.15vw) !important}.u-para-xxl{font-size:calc(var(--ptc-font-size-xx-large) + 0.15vw) !important}.u-para-xxxl{font-size:calc(var(--ptc-font-size-xxx-large) + 0.15vw) !important}}@media only screen and (min-width: 1440px){.u-para-sm{font-size:calc(var(--ptc-font-size-small) + 0.2vw) !important}.u-para-md{font-size:calc(var(--ptc-font-size-medium) + 0.2vw) !important}.u-para-lg{font-size:calc(var(--ptc-font-size-large) + 0.2vw) !important}.u-para-xl{font-size:calc(var(--ptc-font-size-x-large) + 0.2vw) !important}.u-para-xxl{font-size:calc(var(--ptc-font-size-xx-large) + 0.2vw) !important}.u-para-xxxl{font-size:calc(var(--ptc-font-size-xxx-large) + 0.2vw) !important}}@media only screen and (min-width: 1600px){.u-para-sm{font-size:calc(var(--ptc-font-size-small) + 0.25vw) !important}.u-para-md{font-size:calc(var(--ptc-font-size-medium) + 0.25vw) !important}.u-para-lg{font-size:calc(var(--ptc-font-size-large) + 0.25vw) !important}.u-para-xl{font-size:calc(var(--ptc-font-size-x-large) + 0.25vw) !important}.u-para-xxl{font-size:calc(var(--ptc-font-size-xx-large) + 0.25vw) !important}.u-para-xxxl{font-size:calc(var(--ptc-font-size-xxx-large) + 0.25vw) !important}}@media only screen and (min-width: 1980px){.u-para-sm{font-size:calc(var(--ptc-font-size-small) + 0.3vw) !important}.u-para-md{font-size:calc(var(--ptc-font-size-medium) + 0.3vw) !important}.u-para-lg{font-size:calc(var(--ptc-font-size-large) + 0.3vw) !important}.u-para-xl{font-size:calc(var(--ptc-font-size-x-large) + 0.3vw) !important}.u-para-xxl{font-size:calc(var(--ptc-font-size-xx-large) + 0.3vw) !important}.u-para-xxxl{font-size:calc(var(--ptc-font-size-xxx-large) + 0.3vw) !important}}@media only screen and (min-width: 2600px){.u-para-sm{font-size:calc(var(--ptc-font-size-small) + 0.35vw) !important}.u-para-md{font-size:calc(var(--ptc-font-size-medium) + 0.35vw) !important}.u-para-lg{font-size:calc(var(--ptc-font-size-large) + 0.35vw) !important}.u-para-xl{font-size:calc(var(--ptc-font-size-x-large) + 0.35vw) !important}.u-para-xxl{font-size:calc(var(--ptc-font-size-xx-large) + 0.35vw) !important}.u-para-xxxl{font-size:calc(var(--ptc-font-size-xxx-large) + 0.35vw) !important}}.u-para-body{font-size:var(--ptc-font-size-medium) !important}.u-color-white{color:var(--color-white) !important}.u-uppercase{text-transform:uppercase !important}.u-margin-flush{margin:0 !important}.u-marginTop-flush{margin-top:0 !important}.u-marginLeft-flush{margin-left:0 !important}.u-marginRight-flush{margin-right:0 !important}.u-marginBottom-flush{margin-bottom:0 !important}.u-padding-flush{padding:0 !important}.u-paddingTop-flush{padding-top:0 !important}.u-paddingLeft-flush{padding-left:0 !important}.u-paddingRight-flush{padding-right:0 !important}.u-paddingBottom-flush{padding-bottom:0 !important}.u-margin-xs{margin:var(--ptc-element-spacing-01) !important}.u-marginTop-xs{margin-top:var(--ptc-element-spacing-01) !important}.u-marginLeft-xs{margin-left:var(--ptc-element-spacing-01) !important}.u-marginRight-xs{margin-right:var(--ptc-element-spacing-01) !important}.u-marginBottom-xs{margin-bottom:var(--ptc-element-spacing-01) !important}.u-margin-sm{margin:var(--ptc-element-spacing-02) !important}.u-marginTop-sm{margin-top:var(--ptc-element-spacing-02) !important}.u-marginLeft-sm{margin-left:var(--ptc-element-spacing-02) !important}.u-marginRight-sm{margin-right:var(--ptc-element-spacing-02) !important}.u-marginBottom-sm{margin-bottom:var(--ptc-element-spacing-02) !important}.u-margin-md{margin:var(--ptc-element-spacing-03) !important}.u-marginTop-md{margin-top:var(--ptc-element-spacing-03) !important}.u-marginLeft-md{margin-left:var(--ptc-element-spacing-03) !important}.u-marginRight-md{margin-right:var(--ptc-element-spacing-03) !important}.u-marginBottom-md{margin-bottom:var(--ptc-element-spacing-03) !important}.u-margin-lg{margin:var(--ptc-element-spacing-04) !important}.u-marginTop-lg{margin-top:var(--ptc-element-spacing-04) !important}.u-marginLeft-lg{margin-left:var(--ptc-element-spacing-04) !important}.u-marginRight-lg{margin-right:var(--ptc-element-spacing-04) !important}.u-marginBottom-lg{margin-bottom:var(--ptc-element-spacing-04) !important}.u-margin-xl{margin:var(--ptc-element-spacing-05) !important}.u-marginTop-xl{margin-top:var(--ptc-element-spacing-05) !important}.u-marginLeft-xl{margin-left:var(--ptc-element-spacing-05) !important}.u-marginRight-xl{margin-right:var(--ptc-element-spacing-05) !important}.u-marginBottom-xl{margin-bottom:var(--ptc-element-spacing-05) !important}.u-margin-xxl{margin:var(--ptc-element-spacing-06) !important}.u-marginTop-xxl{margin-top:var(--ptc-element-spacing-06) !important}.u-marginLeft-xxl{margin-left:var(--ptc-element-spacing-06) !important}.u-marginRight-xxl{margin-right:var(--ptc-element-spacing-06) !important}.u-marginBottom-xxl{margin-bottom:var(--ptc-element-spacing-06) !important}.u-margin-xxxl{margin:var(--ptc-element-spacing-07) !important}.u-marginTop-xxxl{margin-top:var(--ptc-element-spacing-07) !important}.u-marginLeft-xxxl{margin-left:var(--ptc-element-spacing-07) !important}.u-marginRight-xxxl{margin-right:var(--ptc-element-spacing-07) !important}.u-marginBottom-xxxl{margin-bottom:var(--ptc-element-spacing-07) !important}.u-margin-4xl{margin:var(--ptc-element-spacing-08) !important}.u-marginTop-4xl{margin-top:var(--ptc-element-spacing-08) !important}.u-marginLeft-4xl{margin-left:var(--ptc-element-spacing-08) !important}.u-marginRight-4xl{margin-right:var(--ptc-element-spacing-08) !important}.u-marginBottom-4xl{margin-bottom:var(--ptc-element-spacing-08) !important}.u-textAlign-ctr{text-align:center !important}.u-textAlign-right{text-align:right !important}.u-textAlign-left{text-align:left !important}.u-textWhite{color:var(--color-white) !important}.u-textGreen1{color:var(--color-green-07) !important}.u-textGreen2{color:var(--color-green-06) !important}.u-text-nowrap{white-space:nowrap}.u-text-medium{font-weight:var(--ptc-font-weight-medium)}.u-text-semibold{font-weight:var(--ptc-font-weight-semibold)}.u-text-bold{font-weight:var(--ptc-font-weight-bold)}.u-text-thin{font-weight:var(--ptc-font-weight-thin)}.u-textStyle-normal{font-style:normal !important}.u-no-scroll{overflow:hidden}.overflow-x-hidden{overflow-x:hidden}.u-background-white{background-color:var(--color-white)}.u-background-reset{background-color:transparent !important}.u-white-overylay{background:rgba(242, 242, 242, 0.9)}.u-cursor-pointer{cursor:pointer}.u-clear{clear:both}.u-border-radius-standard{border-radius:var(--ptc-border-radius-standard)}.u-border-radius-large{border-radius:var(--ptc-border-radius-large)}.u-border-radius-pill{border-radius:var(--ptc-border-radius-pill)}.u-border-radius-circle{border-radius:var(--ptc-border-radius-circle)}.u-border-none{border:none}.u-shadow-x-small{box-shadow:var(--ptc-shadow-x-small)}.u-shadow-small{box-shadow:var(--ptc-shadow-small)}.u-shadow-medium{box-shadow:var(--ptc-shadow-medium)}.u-shadow-large{box-shadow:var(--ptc-shadow-large)}.u-shadow-x-large{box-shadow:var(--ptc-shadow-x-large)}@media only screen and (min-width: 768px){.u-hero-width{width:525px}.u-margin-center{margin:0 auto}.u-justify-self-end{justify-self:flex-end}}.u-hero-pushup{transform:translateY(-120px)}@media only screen and (min-width: 768px){.u-hero-pushup{transform:translateY(-144px)}}@media only screen and (min-width: 768px){.grid-order-1-md{order:1}.grid-order-2-md{order:2}.grid-order-3-md{order:3}}@media only screen and (min-width: 992px){.grid-order-1-lg{order:1}.grid-order-2-lg{order:2}.grid-order-3-lg{order:3}}.standard-list{list-style:none;margin-left:0;margin-bottom:20px;padding:0}.is-spaced-between{justify-content:space-between}.h-100{height:100%}.w-100{width:100%}.grid-large-col-gap-md{-moz-column-gap:0;column-gap:0}@media only screen and (min-width: 992px){.grid-large-col-gap-md{-moz-column-gap:3rem;column-gap:3rem}}.grid-large-col-gap-sm{-moz-column-gap:0;column-gap:0}@media only screen and (min-width: 768px){.grid-large-col-gap-sm{-moz-column-gap:3rem;column-gap:3rem}}.grid-x-large-col-gap-md{-moz-column-gap:0;column-gap:0}@media only screen and (min-width: 992px){.grid-x-large-col-gap-md{-moz-column-gap:4rem;column-gap:4rem}}.grid-x-large-col-gap-sm{-moz-column-gap:0;column-gap:0}@media only screen and (min-width: 768px){.grid-x-large-col-gap-sm{-moz-column-gap:4rem;column-gap:4rem}}.grid-medium-col-gap-md{-moz-column-gap:0;column-gap:0}@media only screen and (min-width: 992px){.grid-medium-col-gap-md{-moz-column-gap:2rem;column-gap:2rem}}.grid-medium-col-gap-sm{-moz-column-gap:0;column-gap:0}@media only screen and (min-width: 768px){.grid-medium-col-gap-sm{-moz-column-gap:2rem;column-gap:2rem}}.is-float-left{float:left}.is-float-right{float:right}.is-mobile{display:block}.is-desktop{display:none}@media only screen and (min-width: 992px){.is-mobile{display:none}.is-desktop{display:block}}.ptc-section{padding-top:3rem;padding-bottom:3rem}.ptc-section-standard{padding-top:3rem;padding-bottom:3rem}.ptc-section-half{padding-top:1.5rem;padding-bottom:1.5rem}.ptc-section-large{padding-top:2.25rem;padding-bottom:2.25rem}@media only screen and (min-width: 992px){.ptc-section-large{padding-top:3.5rem;padding-bottom:3.5rem}}.ptc-section-hp{padding-bottom:calc(2.25rem - 32px)}@media only screen and (min-width: 992px){.ptc-section-hp{padding-bottom:calc(3.5rem - 32px)}}.u-flex{display:flex}@media only screen and (min-width: 480px){.u-flex-xs{display:flex}}@media only screen and (min-width: 768px){.u-flex-sm{display:flex}}@media only screen and (min-width: 992px){.u-flex-md{display:flex}}@media only screen and (min-width: 1200px){.u-flex-lg{display:flex}}@media only screen and (min-width: 1440px){.u-flex-xl{display:flex}}@media only screen and (min-width: 1600px){.u-flex-xxl{display:flex}}@media only screen and (min-width: 1980px){.u-flex-2k{display:flex}}@media only screen and (min-width: 2600px){.u-flex-4k{display:flex}}.u-align-center{margin:auto;align-self:center}.u-align-left{margin-right:auto;align-self:center}.u-align-right{margin-left:auto;align-self:center}.u-align-x-center{margin-right:auto;margin-left:auto}.u-align-x-left{margin-right:auto}.u-align-x-right{margin-left:auto}.u-align-y-center{align-self:center}.u-align-y-top{align-self:flex-start}.u-align-y-bottom{align-self:flex-end}.is-flex-column{flex-direction:column}.flex-align-items{align-items:flex-end}.flex-align-items-center{align-items:center}.u-flex-nowrap{flex-wrap:nowrap}.u-flex-wrap{flex-wrap:wrap}.u-align-self-start{align-self:start}.u-align-self-center{align-self:center}.u-align-self-stretch{align-self:stretch}.u-justify-self-start{justify-self:start}.u-justify-self-center{justify-self:center}.u-justify-self-stretch{justify-self:stretch}.u-flex-justify-center{justify-content:center}.u-flex-justify-flexend{justify-content:flex-end}.u-section-heading-wrapper{max-width:768px;margin-left:auto;margin-right:auto}.embed-responsive{position:relative;display:block;height:0;padding:0;overflow:hidden}.embed-responsive-16by9{padding-bottom:56.25%}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}@media only screen and (min-width: 768px){.is-grid.grid-large-col-gap-xs-0{row-gap:0}}.max-content{max-width:90%;margin:auto}@media only screen and (min-width: 480px){.max-content{max-width:80%}}.u-justify-space-between{justify-content:space-between}.all-product-banner{padding:50px 0 44px 0px}@media only screen and (min-width: 992px){.all-product-banner{padding:50px 0 72px 0px;display:flex;min-height:300px;justify-content:center;align-items:center}}.all-product-gradient{background:linear-gradient(180deg, #f3f3f3 2.6%, rgba(225, 241, 226, 0.2) 40.63%, #f3f3f3 82.29%), linear-gradient(0deg, #f3f3f3, #f3f3f3)}.menu-right ptc-nav-submenu{position:relative}.media-thumb-feature{display:block}@media only screen and (min-width: 992px){.media-thumb-feature{display:flex;justify-content:space-between}}.media-thumb-feature .media-thumb{width:100%;margin-bottom:2rem}@media only screen and (min-width: 992px){.media-thumb-feature .media-thumb{width:340px;flex:0 0 340px}}.media-thumb-feature .media-thumb>ptc-picture:not(:last-of-type),.media-thumb-feature .media-thumb>img:not(:last-of-type){margin-bottom:1.5rem}.media-thumb-feature .media-feature{width:100%;margin-bottom:2rem}@media only screen and (min-width: 992px){.media-thumb-feature .media-feature{width:auto;flex:1 1 auto}}.partner-card-desc h5.description{font-family:var(--ptc-font-latin);color:var(--color-gray-10);font-size:var(--ptc-font-size-x-small);font-weight:var(--ptc-font-weight-medium);letter-spacing:var(--ptc-letter-spacing-normal);line-height:var(--ptc-line-height-medium);margin:0 0 10px 0}.partner-card-desc .tags{margin-bottom:0.75rem}.partner-card-desc .tags .tag:not(:first-child){border-left:2px solid var(--color-green-07);padding:0 8px}.partner-card-desc .tags .tag:first-child{padding:0 8px 0 0}.partner-card-desc .tags .tag{color:var(--color-gray-10);display:inline;font-size:var(--ptc-font-size-xx-small);font-weight:var(--ptc-font-weight-bold);letter-spacing:var(--ptc-letter-spacing-loose);margin:0 0 10px 0;padding:0 8px}.u-3-col-grid{width:100%;display:flex;flex-wrap:wrap;grid-row-gap:1rem;grid-column-gap:1rem}.u-3-col-grid .u-3-col{width:100%}@media only screen and (min-width: 768px){.u-3-col-grid .u-3-col{width:calc(50% - 10.66666666px)}}@media only screen and (min-width: 992px){.u-3-col-grid .u-3-col{width:calc(33.3333333333% - 10.66666666px)}}.u-3-col-grid.u-col-space-lg{grid-row-gap:2rem;grid-column-gap:2rem}.u-3-col-grid.u-col-space-lg .u-3-col{width:100%}@media only screen and (min-width: 768px){.u-3-col-grid.u-col-space-lg .u-3-col{width:calc(50% - 21.3333333px)}}@media only screen and (min-width: 992px){.u-3-col-grid.u-col-space-lg .u-3-col{width:calc(33.3333333333% - 21.3333333px)}}.u-display-none{display:none}ptc-preloader-section.min-height{min-height:150vh}@media only screen and (min-width: 1200px){.ms-mobile-select{display:none}}.ms-mobile-select.ms-show{position:fixed}.light-font{color:var(--color-white)}.light-font *{color:var(--color-white)}ptc-nav-submenu{margin-top:6px;border-left:2px solid transparent;border-right:2px solid transparent;border-bottom:2px solid transparent}ptc-nav-submenu:focus-visible,ptc-nav-submenu:focus{margin-top:4px;border-radius:var(--ptc-border-radius-standard);border:2px solid white;outline:5px solid var(--keyboard-nav-outline)}ptc-nav-link{margin-top:6px;border-left:2px solid transparent;border-right:2px solid transparent;border-bottom:2px solid transparent}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,.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,.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,.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,.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,.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,.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,.vjs-social-share-links a):active,.light-links a:not(.hero-footer-form-wrapper a,ptc-modal inline-form 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,.vjs-social-share-links a):active,.background-grey-10 a:not(.hero-footer-form-wrapper a,ptc-modal inline-form 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,.vjs-social-share-links a):active,.background-plm-grey a:not(.hero-footer-form-wrapper a,ptc-modal inline-form 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,.vjs-social-share-links a):hover,.light-links a:not(.hero-footer-form-wrapper a,ptc-modal inline-form 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,.vjs-social-share-links a):hover,.background-grey-10 a:not(.hero-footer-form-wrapper a,ptc-modal inline-form 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,.vjs-social-share-links a):hover,.background-plm-grey a:not(.hero-footer-form-wrapper a,ptc-modal inline-form 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,.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,.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,.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,.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,.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,.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)}.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}@media only screen and (min-width: 992px){:host(:not(.png-jumbotron):not(.text-jumbotron):not(.gif-jumbotron):not(.blog-jumbotron)) .content-container{padding-top:20px;padding-bottom:16px}}.parent{display:grid;grid-template-columns:1fr;grid-template-rows:auto 1fr;grid-column-gap:0px;grid-row-gap:0px;position:relative;z-index:1}.logo-frame{background-color:transparent;margin-top:24px;display:flex;width:152px;height:-moz-max-content;height:max-content}.logo-frame img{box-sizing:border-box;max-width:100%;height:100%;max-height:64.02px}.hp-adjustments{background-color:var(--color-black);height:auto;min-height:640px !important;max-height:-webkit-fill-available}@media (min-height: 640px){.hp-adjustments{min-height:72vh !important}}.hp-adjustments .div1{grid-area:1/1/3/2;min-height:300px}.hp-adjustments .div1.hidden{display:none}.hp-adjustments .div2{display:flex}.hp-adjustments .bg-overlay{background:linear-gradient(180deg, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0) 20%), linear-gradient(0deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.6) 100%) !important}@media only screen and (min-width: 992px){.hp-adjustments .div1{grid-area:1/1/2/2;min-height:unset}.hp-adjustments .bg-overlay{background:linear-gradient(180deg, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0) 20%), linear-gradient(90deg, rgba(0, 0, 0, 0.6) 60%, rgba(0, 0, 0, 0) 100%) !important}}.hp-adjustments .div1,.hp-adjustments .main-content-items{transition:opacity ease-out 250ms;opacity:1}.hp-adjustments.transitioning .div1,.hp-adjustments.transitioning .main-content-items{opacity:0}.div1{grid-area:1/1/2/2;min-height:300px}.div1.hidden{display:none}.mobile-media-image{display:flex;justify-content:center;align-items:center}@media only screen and (min-width: 992px){.mobile-media-image{display:none}}.gif-bg{background-color:#f3f3f3}.gif-bg img{width:100%;height:auto}@media only screen and (min-width: 768px){.gif-bg img{width:auto}}.video-ratio{position:relative;overflow:hidden;height:100%}.div2{grid-area:2/1/3/2;position:relative}.bg-overlay{position:absolute;width:100%;height:100%;top:0;left:0}.content-layout{display:flex;flex-direction:column}@media only screen and (min-width: 992px){.content-layout{flex-direction:row}}.content-layout.hp-container{width:100%;margin-top:120px;margin-bottom:120px}@media screen and (min-width: 768px) and (max-width: 992px){.content-layout.hp-container{max-width:720px;margin-left:unset;margin-top:160px;margin-bottom:160px}}@media only screen and (min-width: 1200px){.content-layout.hp-container{width:1136px}}@media only screen and (min-width: 1440px){.content-layout.hp-container{width:1200px}}.content-layout.hp-container .gap-adjustment{margin-bottom:unset}.content-layout.blog-container{padding-bottom:48px}@media only screen and (min-width: 768px){.content-layout.blog-container{padding-bottom:100px}}@media only screen and (min-width: 992px){.content-layout.blog-container{gap:43px;padding-top:75px}.content-layout.blog-container max-width-container{width:50%}.content-layout.blog-container div.desktop-media-image{width:50%}}.content-layout.blog-container .gap-adjustment{gap:var(--ptc-element-spacing-07);margin-bottom:unset}.gap-adjustment{gap:var(--ptc-element-spacing-04);margin-bottom:var(--ptc-element-spacing-07)}@media only screen and (min-width: 992px){.gap-adjustment{gap:var(--ptc-element-spacing-07)}}.text-adjustment{justify-content:center}.desktop-media-image{width:40%;display:none}@media only screen and (min-width: 992px){.desktop-media-image{display:block}}.desk-gif-adjustment{z-index:3;display:none;justify-content:center;align-items:center}@media only screen and (min-width: 992px){.desk-gif-adjustment{display:flex}}.desk-gif-adjustment img{width:100%}@media only screen and (min-width: 992px){.parent{grid-template-columns:1fr;grid-template-rows:1fr;grid-column-gap:0px;grid-row-gap:0px;min-height:500px;position:relative}.div1{grid-area:1/1/2/2;min-height:unset}.div2{grid-area:1/1/2/2;align-self:center;position:unset}}:host(.text-jumbotron) .parent{min-height:120px;padding:48px 0 24px 0}:host(.text-jumbotron) .parent .text-adjustment{margin-bottom:0;margin-top:20px}:host(.text-jumbotron) .parent .logo-frame{justify-self:center;justify-content:center}:host(.png-jumbotron) .desktop-media-image,:host(.png-jumbotron) .mobile-media-image{position:relative}:host(.png-jumbotron) .desktop-media-image .media-image-wrapper,:host(.png-jumbotron) .mobile-media-image .media-image-wrapper{height:100%;width:100%;display:flex;align-items:center;justify-content:center}:host(.png-jumbotron) ::slotted(ptc-svg-btn){position:absolute;left:50% !important;top:50% !important;transform:translate(-50%, -50%) !important}@media only screen and (min-width: 992px){:host(.png-jumbotron) max-width-container{box-sizing:border-box;padding-right:2rem}}:host(.blog-jumbotron) #header-blog-author{display:flex;align-items:center;gap:12px;margin-bottom:var(--ptc-layout-spacing-04)}:host(.blog-jumbotron) #header-blog-author .image{width:48px;height:48px;border-radius:var(--ptc-border-radius-circle)}:host(.blog-jumbotron) #header-blog-author .image img{width:100%;height:100%;border-radius:var(--ptc-border-radius-circle);-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center}:host(.blog-jumbotron) .blog-author-name{color:inherit;text-decoration:none;font-size:inherit;font-weight:inherit;position:relative}:host(.blog-jumbotron) .blog-author-name:before{content:\"\";position:absolute;display:inline-block;width:100%;height:100%;padding:16px;margin:-16px}:host(.blog-jumbotron) .blog-author-name:hover{color:inherit;cursor:pointer;text-decoration-line:underline;text-decoration-style:solid;text-decoration-color:var(--color-green-07);text-decoration-thickness:2px;text-underline-offset:4px}:host(.blog-jumbotron) .blog-author-name:focus-visible{border-radius:var(--ptc-border-radius-standard);border:2px solid white;outline:5px solid var(--keyboard-nav-outline)}:host(.blog-jumbotron) .image-container{background:white}@media only screen and (min-width: 992px){:host(.blog-jumbotron) .image-container{display:none}}:host(.blog-jumbotron) .desktop-media-image,:host(.blog-jumbotron) .mobile-media-image{position:relative}:host(.blog-jumbotron) .desktop-media-image .media-image-wrapper,:host(.blog-jumbotron) .mobile-media-image .media-image-wrapper{height:100%;max-height:360px;width:100%;display:flex;align-items:center;justify-content:center}:host(.blog-jumbotron) .desktop-media-image .media-image-wrapper ptc-picture,:host(.blog-jumbotron) .mobile-media-image .media-image-wrapper ptc-picture{width:100%;border-radius:var(--ptc-border-radius-standard)}:host(.blog-jumbotron) .desktop-media-image{display:none}:host(.blog-jumbotron) .desktop-media-image ptc-picture{height:100%;max-height:360px}@media only screen and (min-width: 992px){:host(.blog-jumbotron) .desktop-media-image{display:flex;align-items:center}}:host(.blog-jumbotron) .mobile-media-image{margin:75px 24px 32px 24px;display:flex}:host(.blog-jumbotron) .mobile-media-image ptc-picture{height:360px}@media only screen and (min-width: 992px){:host(.blog-jumbotron) .mobile-media-image{display:none}}.dl-img-wrap{position:relative;width:100%;height:100%}:host(.dark-video-jumbotron) .mobile-modal-play-btn ::slotted(ptc-svg-btn),:host(.light-video-jumbotron) .mobile-modal-play-btn ::slotted(ptc-svg-btn),:host(.light-jumbotron) .mobile-modal-play-btn ::slotted(ptc-svg-btn),:host(.dark-jumbotron) .mobile-modal-play-btn ::slotted(ptc-svg-btn){left:50% !important;top:50% !important;transform:translate(-50%, -50%) !important}ptc-info-tile:focus-visible{outline:3px solid var(--color-blue-07);outline-offset:2px}:host(.light-video-jumbotron) .bg-overlay,:host(.light-jumbotron) .bg-overlay{border-bottom:1px solid rgba(0, 0, 0, 0.06);box-sizing:border-box}";
|
|
593
|
+
|
|
594
|
+
const PtcJumbotron = class {
|
|
595
|
+
constructor(hostRef) {
|
|
596
|
+
registerInstance(this, hostRef);
|
|
597
|
+
this.jumbotronType = "light";
|
|
598
|
+
this.hasPopupVideo = false;
|
|
599
|
+
this.mainTitle = "Lorem Ipsum Dolor Sit Amet Consectetur";
|
|
600
|
+
this.subTitle = "Lorem Ipsum Dolor Sit Amet Consectetur Adipiscing Lorem Ipsum Dolor Sit Amet Consectetur Adipisci Lorem Ipsum Dolor Sit Amet";
|
|
601
|
+
this.pngSrc = undefined;
|
|
602
|
+
this.pngImgStyles = "";
|
|
603
|
+
this.gifSrc = undefined;
|
|
604
|
+
this.bgVideoSrc = undefined;
|
|
605
|
+
this.bgVideoPosterSrc = undefined;
|
|
606
|
+
this.bgSrc = undefined;
|
|
607
|
+
this.isIframe = false;
|
|
608
|
+
this.isHomepage = false;
|
|
609
|
+
this.playButtonTitle = undefined;
|
|
610
|
+
this.pauseButtonTitle = undefined;
|
|
611
|
+
this.buttonLocation = undefined;
|
|
612
|
+
this.buttonTabIndex = 0;
|
|
613
|
+
this.contentBackground = undefined;
|
|
614
|
+
this.contentColor = undefined;
|
|
615
|
+
this.textAlign = "left";
|
|
616
|
+
this.isMobile = undefined;
|
|
617
|
+
this.isTransitioning = undefined;
|
|
618
|
+
this.blogAuthorImage = "";
|
|
619
|
+
this.blogAuthorImageAlt = "";
|
|
620
|
+
this.blogAuthorName = "";
|
|
621
|
+
this.blogAuthorQueryHref = "";
|
|
622
|
+
this.blogAuthorQueryTarget = "";
|
|
623
|
+
this.hasCountdown = false;
|
|
624
|
+
this.logo = "";
|
|
625
|
+
this.styles = undefined;
|
|
626
|
+
this.defer = undefined;
|
|
627
|
+
this.hasCtaSlot = undefined;
|
|
628
|
+
}
|
|
629
|
+
componentWillLoad() {
|
|
630
|
+
this.hasCtaSlot = !!this.el.querySelector('[slot="j-cta"]');
|
|
631
|
+
}
|
|
632
|
+
handleResize() {
|
|
633
|
+
this.getContentBackground();
|
|
634
|
+
//this.adjustJumbotronHeight();
|
|
635
|
+
}
|
|
636
|
+
connectedCallback() {
|
|
637
|
+
this.getContentBackground();
|
|
638
|
+
}
|
|
639
|
+
componentDidLoad() {
|
|
640
|
+
//this.adjustJumbotronHeight();
|
|
641
|
+
}
|
|
642
|
+
componentDidUpdate() {
|
|
643
|
+
this.getContentBackground();
|
|
644
|
+
}
|
|
645
|
+
render() {
|
|
646
|
+
const classMap = this.getCssClassMap();
|
|
647
|
+
let mediaElement;
|
|
648
|
+
switch (this.jumbotronType) {
|
|
649
|
+
case "png":
|
|
650
|
+
mediaElement = (h("div", { class: "mobile-media-image" }, h("div", { class: "media-image-wrapper" }, h("ptc-picture", { src: this.pngSrc }), this.hasPopupVideo && this.isMobile ? (h("slot", { name: "video" })) : null)));
|
|
651
|
+
break;
|
|
652
|
+
case "blog":
|
|
653
|
+
mediaElement = (h("div", { class: "mobile-media-image" }, h("div", { class: "media-image-wrapper" }, h("ptc-picture", { "is-full-width": true, src: this.pngSrc, styles: "img {height: 100%;}" }))));
|
|
654
|
+
break;
|
|
655
|
+
case "gif":
|
|
656
|
+
mediaElement = (h("div", { class: "mobile-media-image gif-bg" }, h("img", { src: this.gifSrc })));
|
|
657
|
+
break;
|
|
658
|
+
case "dark-video":
|
|
659
|
+
case "light-video":
|
|
660
|
+
mediaElement = (h("ptc-background-video", { class: "video-ratio", overlay: false, "video-src": this.bgVideoSrc, isIframe: this.isIframe, "play-button-title": this.playButtonTitle, "pause-button-title": this.pauseButtonTitle, "button-location": this.buttonLocation, "button-tab-index": this.buttonTabIndex, defer: this.defer, posterSrc: this.bgVideoPosterSrc }, " ", this.hasPopupVideo && this.isMobile ? (h("div", { class: "mobile-modal-play-btn" }, " ", h("slot", { name: "video" }))) : null));
|
|
661
|
+
break;
|
|
662
|
+
case "dark":
|
|
663
|
+
case "light":
|
|
664
|
+
mediaElement = (h("div", { class: "dl-img-wrap" }, h("ptc-img", { "img-url": this.bgSrc, styles: ".smart-bg{background-position:right !important;}" }), this.hasPopupVideo && this.isMobile ? (h("div", { class: "mobile-modal-play-btn" }, " ", h("slot", { name: "video" }))) : null));
|
|
665
|
+
break;
|
|
666
|
+
default:
|
|
667
|
+
mediaElement = (h("ptc-img", { "img-url": this.bgSrc, styles: ".smart-bg{background-position:right !important;}" }));
|
|
668
|
+
}
|
|
669
|
+
return (h(Host, { class: classMap }, this.styles && h("style", null, this.styles), h("div", { class: {
|
|
670
|
+
parent: true,
|
|
671
|
+
"light-links": this.jumbotronType === "dark" ||
|
|
672
|
+
this.jumbotronType === "dark-video",
|
|
673
|
+
"hp-adjustments": this.isHomepage,
|
|
674
|
+
transitioning: this.isTransitioning,
|
|
675
|
+
} }, h("div", { class: `div1 image-container ${this.jumbotronType === "text" ? "hidden" : ""}` }, mediaElement), h("div", { class: "div2 content-container" }, h("div", { class: "bg-overlay", style: { background: this.contentBackground } }), h("div", { class: {
|
|
676
|
+
"ptc-container": true,
|
|
677
|
+
"content-layout": true,
|
|
678
|
+
"hp-container": this.isHomepage,
|
|
679
|
+
"blog-container": this.jumbotronType === "blog",
|
|
680
|
+
} }, h("max-width-container", { "max-width-p": "60", breakpoint: 992, "content-align": this.jumbotronType === "text"
|
|
681
|
+
? "center"
|
|
682
|
+
: this.textAlign, styles: ":host{z-index: 999}" }, h("slot", { name: "breadcrumb" }), !!this.logo && (h("div", { class: "logo-frame" }, h("img", { alt: "Logo", src: this.logo }))), h("span", { class: "main-content-items" }, h("ptc-spacer", { breakpoint: "small", size: "small" }), h("ptc-spacer", { breakpoint: "x-small", size: "medium" }), h("slot", { name: "main-title" }), h("slot", { name: "hp-sub-title" }), (this.jumbotronType !== "text" ||
|
|
683
|
+
(this.jumbotronType === "text" &&
|
|
684
|
+
this.subTitle)) &&
|
|
685
|
+
!this.isHomepage && (h("div", null, h("ptc-spacer", { breakpoint: "small", size: "small" }), h("ptc-spacer", { breakpoint: "x-small", size: "medium" }))), !this.isHomepage && (h("ptc-para", { styles: `p{color: ${this.contentColor}!important;}`, "font-size": this.jumbotronType === "text" &&
|
|
686
|
+
this.isMobile
|
|
687
|
+
? "x-small"
|
|
688
|
+
: "small", "font-weight": "w-4", "para-margin": `${this.jumbotronType === "text" || this.jumbotronType === "blog" ? "margin-flush" : "margin-bottom-6"}`, "para-color": "white", "para-line-h": "line-height-p", "para-align": this.jumbotronType === "text"
|
|
689
|
+
? "center"
|
|
690
|
+
: "left", "seo-compatibility-mode": true }, h("p", { innerHTML: this.subTitle, style: { margin: "0" } }), h("p", { style: { margin: "0" } }, h("slot", { name: "blog-date" })), this.jumbotronType === "blog" && (h("div", null, h("ptc-spacer", { breakpoint: "x-small", size: "medium" }), h("ptc-spacer", { breakpoint: "small", size: "small" }), h("div", { id: "header-blog-author", slot: "blog-author" }, h("div", { class: "image" }, h("img", { alt: this
|
|
691
|
+
.blogAuthorImageAlt, src: this
|
|
692
|
+
.blogAuthorImage })), h("ptc-para", { "font-size": "small", "font-weight": "w-4", "para-color": "primary-grey", "para-line-h": "line-height-p", "para-margin": "margin-flush" }, h("a", { class: "blog-author-name mf-listen", tabindex: "0", href: this
|
|
693
|
+
.blogAuthorQueryHref, target: this
|
|
694
|
+
.blogAuthorQueryTarget, "aria-label": "Other blogs by author" }, this
|
|
695
|
+
.blogAuthorName))))))), this.hasCtaSlot && (h("div", { class: `u-flex u-flex-wrap gap-adjustment${this.jumbotronType === "text" ? " text-adjustment" : ""}` }, h("slot", { name: "j-cta" }))))), this.hasPopupVideo &&
|
|
696
|
+
this.jumbotronType !== "png" ? (h("slot", { name: "video" })) : null, this.hasCountdown ? (h("slot", { name: "countdown" })) : null, this.jumbotronType === "png" ? (h("div", { class: "desktop-media-image" }, h("div", { class: "media-image-wrapper" }, h("ptc-picture", { "is-full-width": true, src: this.pngSrc, styles: `img {${this.pngImgStyles}}` }), this.hasPopupVideo ? (h("slot", { name: "video" })) : null))) : null, this.jumbotronType === "gif" ? (h("div", { class: "desktop-media-image desk-gif-adjustment" }, h("img", { src: this.gifSrc }))) : null, this.jumbotronType === "blog" ? (h("div", { class: "desktop-media-image" }, h("div", { class: "media-image-wrapper" }, h("ptc-picture", { "is-full-width": true, src: this.pngSrc, styles: "img {height: 100%;}" })))) : null)))));
|
|
697
|
+
}
|
|
698
|
+
getCssClassMap() {
|
|
699
|
+
return {
|
|
700
|
+
// [this.imageZIndex] : true
|
|
701
|
+
"text-jumbotron": this.jumbotronType === "text" ? true : false,
|
|
702
|
+
"png-jumbotron": this.jumbotronType === "png" ? true : false,
|
|
703
|
+
"blog-jumbotron": this.jumbotronType === "blog" ? true : false,
|
|
704
|
+
"gif-jumbotron": this.jumbotronType === "gif" ? true : false,
|
|
705
|
+
"dark-video-jumbotron light-links": this.jumbotronType === "dark-video" ? true : false,
|
|
706
|
+
"light-video-jumbotron": this.jumbotronType === "light-video" ? true : false,
|
|
707
|
+
"dark-jumbotron light-links": this.jumbotronType === "dark" ? true : false,
|
|
708
|
+
"light-jumbotron": this.jumbotronType === "light" ? true : false,
|
|
709
|
+
};
|
|
710
|
+
}
|
|
711
|
+
getContentBackground() {
|
|
712
|
+
if (window.innerWidth < 992) {
|
|
713
|
+
switch (this.jumbotronType) {
|
|
714
|
+
case "light":
|
|
715
|
+
case "light-video":
|
|
716
|
+
case "png":
|
|
717
|
+
this.contentBackground = "var(--color-white)";
|
|
718
|
+
this.contentColor = "var(--color-gray-10)";
|
|
719
|
+
break;
|
|
720
|
+
case "dark":
|
|
721
|
+
case "dark-video":
|
|
722
|
+
this.contentBackground = "var(--color-gray-09)";
|
|
723
|
+
this.contentColor = "var(--color-gray-01)";
|
|
724
|
+
break;
|
|
725
|
+
case "blog":
|
|
726
|
+
this.contentBackground = "white";
|
|
727
|
+
this.contentColor = "var(--color-gray-10)";
|
|
728
|
+
break;
|
|
729
|
+
default:
|
|
730
|
+
this.contentBackground = "transparent";
|
|
731
|
+
this.contentColor = "var(--color-gray-10)";
|
|
732
|
+
}
|
|
733
|
+
this.isMobile = true;
|
|
734
|
+
}
|
|
735
|
+
else {
|
|
736
|
+
switch (this.jumbotronType) {
|
|
737
|
+
case "light":
|
|
738
|
+
case "light-video":
|
|
739
|
+
case "png":
|
|
740
|
+
this.contentBackground =
|
|
741
|
+
"linear-gradient(90.19deg, rgba(255, 255, 255, 0.9) 62.55%, rgba(228, 231, 233, 0) 99.86%)";
|
|
742
|
+
this.contentColor = "var(--color-gray-10)";
|
|
743
|
+
break;
|
|
744
|
+
case "dark":
|
|
745
|
+
case "dark-video":
|
|
746
|
+
this.contentBackground =
|
|
747
|
+
"linear-gradient(90deg, rgba(0, 0, 0, 0.63) 52.42%, rgba(40, 47, 53, 0) 100%)";
|
|
748
|
+
this.contentColor = "var(--color-gray-01)";
|
|
749
|
+
break;
|
|
750
|
+
case "gif":
|
|
751
|
+
this.contentBackground = "#F3F3F3";
|
|
752
|
+
this.contentColor = "var(--color-gray-10)";
|
|
753
|
+
break;
|
|
754
|
+
case "blog":
|
|
755
|
+
this.contentBackground = "white";
|
|
756
|
+
this.contentColor = "var(--color-gray-10)";
|
|
757
|
+
break;
|
|
758
|
+
default:
|
|
759
|
+
this.contentBackground = "transparent";
|
|
760
|
+
this.contentColor = "var(--color-gray-10)";
|
|
761
|
+
}
|
|
762
|
+
this.isMobile = false;
|
|
763
|
+
}
|
|
764
|
+
}
|
|
765
|
+
get el() { return getElement(this); }
|
|
766
|
+
};
|
|
767
|
+
PtcJumbotron.style = ptcJumbotronCss;
|
|
768
|
+
|
|
769
|
+
const ptcParaCss = "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{position:relative;z-index:1}:host .tooltip-enabled{position:relative}:host(.white){color:var(--color-white)}:host(.z-1){z-index:1}:host(.z-2){z-index:2}:host(.z-3){z-index:3}:host(.z-99){z-index:99}:host(.z-999){z-index:999}:host(.z-auto){z-index:auto}p.default{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;}p.main{text-shadow:0 3px 6px var(--color-white);line-height:var(--ptc-line-height-dense);color:var(--color-gray-10)}p.primary-grey{color:var(--color-gray-10)}p.gray-darker{color:var(--color-gray-11)}p.white{color:var(--color-white)}p.xxx-small{font-size:var(--ptc-font-size-xxx-small)}p.xx-small{font-size:var(--ptc-font-size-xx-small)}p.x-small{font-size:var(--ptc-font-size-x-small)}p.small{font-size:var(--ptc-font-size-small)}p.medium{font-size:var(--ptc-font-size-medium)}p.large{font-size:var(--ptc-font-size-large)}p.x-large{font-size:var(--ptc-font-size-x-large)}p.xx-large{font-size:var(--ptc-font-size-xx-large)}p.xxx-large{font-size:var(--ptc-font-size-xxx-large)}p.xxxx-large{font-size:var(--ptc-font-size-xxxx-large)}p.htmlquote-para{font-size:var(--ptc-font-size-small)}@media only screen and (min-width: 992px){p.htmlquote-para{font-size:var(--ptc-font-size-large)}}p.w-3{font-weight:var(--ptc-font-weight-thin)}p.w-4{font-weight:var(--ptc-font-weight-regular)}p.w-5{font-weight:var(--ptc-font-weight-medium)}p.w-6{font-weight:var(--ptc-font-weight-semibold)}p.w-7{font-weight:var(--ptc-font-weight-bold)}p.w-8{font-weight:var(--ptc-font-weight-extrabold)}p.w-8 ::slotted(a){font-weight:var(--ptc-font-weight-extrabold) !important}p.w-9{font-weight:var(--ptc-font-weight-black)}p.w-9 ::slotted(a){font-weight:var(--ptc-font-weight-black) !important}p.margin-flush{margin-top:0;margin-bottom:0}p.margin-top-1{margin-top:var(--ptc-element-spacing-01);margin-bottom:0}p.margin-top-2{margin-top:var(--ptc-element-spacing-02);margin-bottom:0}p.margin-top-3{margin-top:var(--ptc-element-spacing-03);margin-bottom:0}p.margin-top-4{margin-top:var(--ptc-element-spacing-04);margin-bottom:0}p.margin-top-5{margin-top:var(--ptc-element-spacing-05);margin-bottom:0}p.margin-top-6{margin-top:var(--ptc-element-spacing-06);margin-bottom:0}p.margin-bottom-1{margin-bottom:var(--ptc-element-spacing-01);margin-top:0}p.margin-bottom-2{margin-bottom:var(--ptc-element-spacing-02);margin-top:0}p.margin-bottom-3{margin-bottom:var(--ptc-element-spacing-03);margin-top:0}p.margin-bottom-4{margin-bottom:var(--ptc-element-spacing-04);margin-top:0}p.margin-bottom-5{margin-bottom:var(--ptc-element-spacing-05);margin-top:0}p.margin-bottom-6{margin-bottom:var(--ptc-element-spacing-06);margin-top:0}p.margin-1{margin-top:var(--ptc-element-spacing-01);margin-bottom:var(--ptc-element-spacing-01)}p.margin-2{margin-top:var(--ptc-element-spacing-02);margin-bottom:var(--ptc-element-spacing-02)}p.margin-3{margin-top:var(--ptc-element-spacing-03);margin-bottom:var(--ptc-element-spacing-03)}p.margin-4{margin-top:var(--ptc-element-spacing-04);margin-bottom:var(--ptc-element-spacing-04)}p.margin-5{margin-top:var(--ptc-element-spacing-05);margin-bottom:var(--ptc-element-spacing-05)}p.margin-6{margin-top:var(--ptc-element-spacing-06);margin-bottom:var(--ptc-element-spacing-06)}p.line-height-densest{line-height:var(--ptc-line-height-densest)}p.line-height-denser{line-height:var(--ptc-line-height-denser)}p.line-height-p{line-height:var(--ptc-line-height-p)}p.line-height-dense{line-height:var(--ptc-line-height-dense)}p.line-height-normal{line-height:var(--ptc-line-height-normal)}p.line-height-loose{line-height:var(--ptc-line-height-loose)}p.line-height-looser{line-height:var(--ptc-line-height-looser)}p.left{text-align:left}p.right{text-align:right}p.center{text-align:center}p.justify{text-align:justify}p.right-768above{text-align:left}@media (min-width: 768px){p.right-768above{text-align:right}}p.announcement{text-transform:uppercase;font-size:var(--ptc-font-size-small);color:var(--color-gray-07);line-height:var(--ptc-line-height-looser);letter-spacing:var(--ptc-letter-spacing-loose)}p.ellipsis-boxing{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;overflow-wrap:break-word}p.line-clamp-title{display:-webkit-box !important;-webkit-box-orient:vertical;overflow:hidden}@media (max-width: 768px){:host(.hide-tooltip-on-mobile) .line-clamp-title{-webkit-line-clamp:initial !important}}";
|
|
770
|
+
|
|
771
|
+
const PtcPara = class {
|
|
772
|
+
constructor(hostRef) {
|
|
773
|
+
registerInstance(this, hostRef);
|
|
774
|
+
this.fontSize = "x-small";
|
|
775
|
+
this.fontWeight = "w-4";
|
|
776
|
+
this.paraStyle = "default";
|
|
777
|
+
this.paraColor = "primary-grey";
|
|
778
|
+
this.paraLineH = "line-height-normal";
|
|
779
|
+
this.paraMargin = undefined;
|
|
780
|
+
this.paraAlign = undefined;
|
|
781
|
+
this.ellipsisLineCutoff = undefined;
|
|
782
|
+
this.paraZIndex = undefined;
|
|
783
|
+
this.styles = undefined;
|
|
784
|
+
this.seoCompatibilityMode = false;
|
|
785
|
+
this.tooltipZIndex = "auto";
|
|
786
|
+
this.tooltipPosition = "bottom";
|
|
787
|
+
this.tooltipTheme = "standard";
|
|
788
|
+
this.enableTooltip = false;
|
|
789
|
+
this.maxChars = undefined;
|
|
790
|
+
this.maxLines = undefined;
|
|
791
|
+
this.hideTooltipOnMobile = false;
|
|
792
|
+
this.ismob = undefined;
|
|
793
|
+
this.noOverflow = false;
|
|
794
|
+
this.tooltipWidth = "default";
|
|
795
|
+
}
|
|
796
|
+
// Tooltip Properties ends
|
|
797
|
+
render() {
|
|
798
|
+
if (this.seoCompatibilityMode) {
|
|
799
|
+
seoSlotReset(this.el);
|
|
800
|
+
}
|
|
801
|
+
return this.standardRender();
|
|
802
|
+
}
|
|
803
|
+
//tooltip code
|
|
804
|
+
getSortedText(content) {
|
|
805
|
+
if (!this.enableTooltip)
|
|
806
|
+
return;
|
|
807
|
+
const trimmedContent = content.trim();
|
|
808
|
+
const shouldTruncate = trimmedContent.length > this.maxChars && !this.maxLines;
|
|
809
|
+
return shouldTruncate
|
|
810
|
+
? `${trimmedContent.slice(0, this.maxChars).trimEnd()}\u00A0\u2026`
|
|
811
|
+
: trimmedContent;
|
|
812
|
+
}
|
|
813
|
+
componentDidLoad() {
|
|
814
|
+
if (this.hideTooltipOnMobile) {
|
|
815
|
+
this.el.classList.add("hide-tooltip-on-mobile");
|
|
816
|
+
}
|
|
817
|
+
this.el.addEventListener("mouseenter", () => {
|
|
818
|
+
this.toggleTitleTooltip(true);
|
|
819
|
+
});
|
|
820
|
+
this.el.addEventListener("mouseleave", () => {
|
|
821
|
+
this.toggleTitleTooltip(false);
|
|
822
|
+
});
|
|
823
|
+
if (this.enableTooltip) {
|
|
824
|
+
let paraContent = this.el.innerText || this.el.textContent;
|
|
825
|
+
this.tooltipText = paraContent.trim();
|
|
826
|
+
this.el.innerText = this.getSortedText(paraContent);
|
|
827
|
+
}
|
|
828
|
+
}
|
|
829
|
+
toggleTitleTooltip(show) {
|
|
830
|
+
const tooltipClass = "tooltip-box";
|
|
831
|
+
const existingTooltip = this.el.querySelector(`.${tooltipClass}`);
|
|
832
|
+
const text = this.el.shadowRoot.querySelectorAll(".line-clamp-title");
|
|
833
|
+
let maxLinesShowCheck = false;
|
|
834
|
+
if (text) {
|
|
835
|
+
text.forEach((t) => {
|
|
836
|
+
maxLinesShowCheck = t.scrollHeight > t.clientHeight;
|
|
837
|
+
});
|
|
838
|
+
}
|
|
839
|
+
const ifCharExceeds = this.maxChars
|
|
840
|
+
? this.tooltipText.length > this.maxChars && !this.maxLines
|
|
841
|
+
: false;
|
|
842
|
+
const ifLinesExceeds = this.maxLines && maxLinesShowCheck;
|
|
843
|
+
if (show && this.enableTooltip) {
|
|
844
|
+
if (((!existingTooltip && ifCharExceeds) ||
|
|
845
|
+
(!existingTooltip && ifLinesExceeds)) &&
|
|
846
|
+
!this.noOverflow) {
|
|
847
|
+
const tooltipMarkup = document.createElement("div");
|
|
848
|
+
tooltipMarkup.className = tooltipClass;
|
|
849
|
+
tooltipMarkup.innerText = this.tooltipText;
|
|
850
|
+
tooltipMarkup.style.zIndex = String(this.tooltipZIndex); // Ensures zIndex is a string
|
|
851
|
+
tooltipMarkup.classList.add(this.tooltipPosition, this.tooltipTheme, this.tooltipWidth);
|
|
852
|
+
if (this.hideTooltipOnMobile) {
|
|
853
|
+
tooltipMarkup.classList.add("hide-tooltip-mobile");
|
|
854
|
+
}
|
|
855
|
+
this.el.appendChild(tooltipMarkup);
|
|
856
|
+
}
|
|
857
|
+
}
|
|
858
|
+
else {
|
|
859
|
+
existingTooltip === null || existingTooltip === void 0 ? void 0 : existingTooltip.remove();
|
|
860
|
+
}
|
|
861
|
+
}
|
|
862
|
+
//tooltip code ends
|
|
863
|
+
standardRender() {
|
|
864
|
+
const classMap = this.getCssClassMap();
|
|
865
|
+
const colorClass = this.addWhiteClass();
|
|
866
|
+
const cutOff = this.getLineCuttoff();
|
|
867
|
+
return (h(Host, { class: `${colorClass} ${this.paraZIndex} trunc-text` }, this.styles && h("style", null, this.styles), h("p", { class: classMap, part: "part-para", style: cutOff }, h("slot", null))));
|
|
868
|
+
}
|
|
869
|
+
getCssClassMap() {
|
|
870
|
+
return {
|
|
871
|
+
[this.fontSize]: true,
|
|
872
|
+
[this.fontWeight]: true,
|
|
873
|
+
[this.paraStyle]: true,
|
|
874
|
+
[this.paraMargin]: !!this.paraMargin ? true : false,
|
|
875
|
+
[this.paraColor]: true,
|
|
876
|
+
[this.paraLineH]: true,
|
|
877
|
+
[this.paraAlign]: !!this.paraAlign ? true : false,
|
|
878
|
+
["ellipsis-boxing"]: this.ellipsisLineCutoff && this.ellipsisLineCutoff > 0,
|
|
879
|
+
["line-clamp-title"]: this.maxLines && this.maxLines > 0, //tooltip code,
|
|
880
|
+
};
|
|
881
|
+
}
|
|
882
|
+
//WEB-2392
|
|
883
|
+
addWhiteClass() {
|
|
884
|
+
if (this.paraColor == "white") {
|
|
885
|
+
return {
|
|
886
|
+
[this.paraColor]: true,
|
|
887
|
+
};
|
|
888
|
+
}
|
|
889
|
+
}
|
|
890
|
+
getLineCuttoff() {
|
|
891
|
+
const lineClamp = this.ellipsisLineCutoff > 0
|
|
892
|
+
? this.ellipsisLineCutoff
|
|
893
|
+
: this.maxLines;
|
|
894
|
+
return lineClamp > 0 ? { "-webkit-line-clamp": `${lineClamp}` } : {};
|
|
895
|
+
}
|
|
896
|
+
get el() { return getElement(this); }
|
|
897
|
+
};
|
|
898
|
+
PtcPara.style = ptcParaCss;
|
|
899
|
+
|
|
900
|
+
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}";
|
|
901
|
+
|
|
902
|
+
const PtcPicture = class {
|
|
903
|
+
constructor(hostRef) {
|
|
904
|
+
registerInstance(this, hostRef);
|
|
905
|
+
this.src = undefined;
|
|
906
|
+
this.alt = "image";
|
|
907
|
+
this.sizeXs = "510x340";
|
|
908
|
+
this.sizeSm = "1240x496";
|
|
909
|
+
this.sizeMd = "1366x500";
|
|
910
|
+
this.sizeLg = "1920x1080";
|
|
911
|
+
this.disableResize = false;
|
|
912
|
+
this.oldSrc = undefined;
|
|
913
|
+
this.imagePosition = "static";
|
|
914
|
+
this.borderRadius = undefined;
|
|
915
|
+
this.height = undefined;
|
|
916
|
+
this.width = undefined;
|
|
917
|
+
this.objectFit = "cover";
|
|
918
|
+
this.isFullHeight = false;
|
|
919
|
+
this.isFullWidth = false;
|
|
920
|
+
this.styles = undefined;
|
|
921
|
+
this.imageAlignment = "left";
|
|
922
|
+
this.maxWidth = undefined;
|
|
923
|
+
this.displayImage = "block";
|
|
924
|
+
}
|
|
925
|
+
WindowResize() {
|
|
926
|
+
this.addIntersectionObserver();
|
|
927
|
+
}
|
|
928
|
+
componentWillLoad() {
|
|
929
|
+
if (this.disableResize) {
|
|
930
|
+
this.sizeXs = undefined;
|
|
931
|
+
this.sizeSm = undefined;
|
|
932
|
+
this.sizeMd = undefined;
|
|
933
|
+
this.sizeLg = undefined;
|
|
934
|
+
}
|
|
935
|
+
}
|
|
936
|
+
componentDidLoad() {
|
|
937
|
+
this.addIntersectionObserver();
|
|
938
|
+
}
|
|
939
|
+
componentWillUpdate() {
|
|
940
|
+
if (this.src !== this.oldSrc) {
|
|
941
|
+
this.addIntersectionObserver();
|
|
942
|
+
}
|
|
943
|
+
this.oldSrc = this.src;
|
|
944
|
+
}
|
|
945
|
+
//lazy-loading
|
|
946
|
+
addIntersectionObserver() {
|
|
947
|
+
if (!this.src) {
|
|
948
|
+
return;
|
|
949
|
+
}
|
|
950
|
+
if ("IntersectionObserver" in window) {
|
|
951
|
+
let lazyLoadImages = new IntersectionObserver((entries) => {
|
|
952
|
+
entries.forEach((entry) => {
|
|
953
|
+
if (entry.isIntersecting) {
|
|
954
|
+
const image = this.el.shadowRoot.querySelector("img");
|
|
955
|
+
image.src = this.setResponsiveBg();
|
|
956
|
+
lazyLoadImages.unobserve(image);
|
|
957
|
+
}
|
|
958
|
+
});
|
|
959
|
+
});
|
|
960
|
+
let tempImg = this.el.shadowRoot.querySelector("img");
|
|
961
|
+
if (tempImg) {
|
|
962
|
+
lazyLoadImages.observe(tempImg);
|
|
963
|
+
}
|
|
964
|
+
this.observer = lazyLoadImages;
|
|
965
|
+
}
|
|
966
|
+
else {
|
|
967
|
+
// fall back to setTimeout for Safari and IE
|
|
968
|
+
setTimeout(() => {
|
|
969
|
+
const image = this.el.shadowRoot.querySelector("img");
|
|
970
|
+
image.src = this.setResponsiveBg();
|
|
971
|
+
image.onload = () => {
|
|
972
|
+
image.removeAttribute("data-src");
|
|
973
|
+
};
|
|
974
|
+
}, 5000);
|
|
975
|
+
}
|
|
976
|
+
}
|
|
977
|
+
//responsive image
|
|
978
|
+
setResponsiveBg() {
|
|
979
|
+
// Define local variables
|
|
980
|
+
let backgrounds = (this.el.shadowRoot || document).querySelectorAll("img"), el, elData, currentBreakpoint = this.getCurrentBreakPoints();
|
|
981
|
+
for (var i = 0, len = backgrounds.length; i < len; i++) {
|
|
982
|
+
// Set current variables
|
|
983
|
+
el = backgrounds[i];
|
|
984
|
+
elData = el.getAttribute("data-" + currentBreakpoint);
|
|
985
|
+
if (elData !== null) {
|
|
986
|
+
return elData;
|
|
987
|
+
}
|
|
988
|
+
else {
|
|
989
|
+
if (typeof console == "object") {
|
|
990
|
+
console.warn("Data attribute: data-" +
|
|
991
|
+
currentBreakpoint +
|
|
992
|
+
" not found on element:\n\n" +
|
|
993
|
+
el.outerHTML +
|
|
994
|
+
"\n\n\n");
|
|
995
|
+
}
|
|
996
|
+
}
|
|
997
|
+
}
|
|
998
|
+
}
|
|
999
|
+
//manually load image
|
|
1000
|
+
async LoadImage() {
|
|
1001
|
+
const image = this.el.shadowRoot.querySelector("img");
|
|
1002
|
+
if (!image) {
|
|
1003
|
+
return;
|
|
1004
|
+
}
|
|
1005
|
+
if (!image.src) {
|
|
1006
|
+
image.src = this.setResponsiveBg();
|
|
1007
|
+
image.onload = () => {
|
|
1008
|
+
image.removeAttribute("data-src");
|
|
1009
|
+
};
|
|
1010
|
+
}
|
|
1011
|
+
if (this.observer) {
|
|
1012
|
+
this.observer.unobserve(image);
|
|
1013
|
+
}
|
|
1014
|
+
}
|
|
1015
|
+
render() {
|
|
1016
|
+
const classMap = this.getCssClassMap();
|
|
1017
|
+
const classMapHost = this.getCssClassMapHost();
|
|
1018
|
+
return (h(Host, { class: classMapHost }, this.styles && h("style", null, this.styles), 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
|
|
1019
|
+
? { maxWidth: this.maxWidth + "px" }
|
|
1020
|
+
: {})) })), h("slot", null)));
|
|
1021
|
+
}
|
|
1022
|
+
getCurrentBreakPoints() {
|
|
1023
|
+
// Define local variables
|
|
1024
|
+
let doc = window.document, temp = doc.createElement("div"), env;
|
|
1025
|
+
// Append test node
|
|
1026
|
+
doc.body.appendChild(temp);
|
|
1027
|
+
// Loop through breakpoints
|
|
1028
|
+
for (let i = ResponsivePictureVariables.envs.length - 1; i >= 0; i--) {
|
|
1029
|
+
env = ResponsivePictureVariables.envs[i];
|
|
1030
|
+
// Add classes
|
|
1031
|
+
temp.className = "hidden-" + env;
|
|
1032
|
+
// Found breakpoint
|
|
1033
|
+
if (temp.offsetParent === null) {
|
|
1034
|
+
// Remove our test node
|
|
1035
|
+
doc.body.removeChild(temp);
|
|
1036
|
+
// Return current breakpoint
|
|
1037
|
+
return env;
|
|
1038
|
+
}
|
|
1039
|
+
}
|
|
1040
|
+
// Breakpoint not found, try fallback
|
|
1041
|
+
doc.body.removeChild(temp);
|
|
1042
|
+
return this.getFallbackBreakpoint();
|
|
1043
|
+
}
|
|
1044
|
+
getFallbackBreakpoint() {
|
|
1045
|
+
if (window.matchMedia("(min-width: 992px)").matches) {
|
|
1046
|
+
return "lg";
|
|
1047
|
+
}
|
|
1048
|
+
else if (window.matchMedia("(min-width: 768px)").matches) {
|
|
1049
|
+
return "md";
|
|
1050
|
+
}
|
|
1051
|
+
else if (window.matchMedia("(min-width: 576px)").matches) {
|
|
1052
|
+
return "sm";
|
|
1053
|
+
}
|
|
1054
|
+
else {
|
|
1055
|
+
return "xs";
|
|
1056
|
+
}
|
|
1057
|
+
}
|
|
1058
|
+
getCssClassMap() {
|
|
1059
|
+
return {
|
|
1060
|
+
[this.borderRadius]: this.borderRadius ? true : false,
|
|
1061
|
+
[this.objectFit]: true,
|
|
1062
|
+
[this.isFullHeight ? "is-full-height" : "is-normal-height"]: true,
|
|
1063
|
+
[this.isFullWidth ? "is-full-width" : "is-normal-width"]: true,
|
|
1064
|
+
[this.displayImage]: true,
|
|
1065
|
+
};
|
|
1066
|
+
}
|
|
1067
|
+
getCssClassMapHost() {
|
|
1068
|
+
return {
|
|
1069
|
+
[this.imagePosition]: true,
|
|
1070
|
+
[this.imageAlignment]: true,
|
|
1071
|
+
};
|
|
1072
|
+
}
|
|
1073
|
+
get el() { return getElement(this); }
|
|
1074
|
+
};
|
|
1075
|
+
PtcPicture.style = ptcPictureCss;
|
|
1076
|
+
|
|
1077
|
+
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}}";
|
|
1078
|
+
|
|
1079
|
+
const PtcSpacer = class {
|
|
1080
|
+
constructor(hostRef) {
|
|
1081
|
+
registerInstance(this, hostRef);
|
|
1082
|
+
this.breakpoint = "";
|
|
1083
|
+
this.size = "medium";
|
|
1084
|
+
this.direction = "vertical";
|
|
1085
|
+
}
|
|
1086
|
+
render() {
|
|
1087
|
+
const classMap = this.getCssClassMap();
|
|
1088
|
+
return h(Host, { class: classMap });
|
|
1089
|
+
}
|
|
1090
|
+
getCssClassMap() {
|
|
1091
|
+
return {
|
|
1092
|
+
[this.size]: true,
|
|
1093
|
+
["ptc-spacer-horizontal"]: this.direction === "horizontal",
|
|
1094
|
+
["ptc-spacer-vertical"]: this.direction === "vertical",
|
|
1095
|
+
["ptc-spacer-xx-small"]: this.breakpoint === "xx-small",
|
|
1096
|
+
["ptc-spacer-x-small"]: this.breakpoint === "x-small",
|
|
1097
|
+
["ptc-spacer-small"]: this.breakpoint === "small",
|
|
1098
|
+
["ptc-spacer-medium"]: this.breakpoint === "medium",
|
|
1099
|
+
["ptc-spacer-large"]: this.breakpoint === "large",
|
|
1100
|
+
["ptc-spacer-x-large"]: this.breakpoint === "x-large",
|
|
1101
|
+
["ptc-spacer-xx-large"]: this.breakpoint === "xx-large",
|
|
1102
|
+
["ptc-spacer-xxx-large"]: this.breakpoint === "xxx-large",
|
|
1103
|
+
};
|
|
1104
|
+
}
|
|
1105
|
+
};
|
|
1106
|
+
PtcSpacer.style = ptcSpacerCss;
|
|
1107
|
+
|
|
1108
|
+
const ptcSubnavV2Css = "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 .mobile-dropdown-container .mobile-dropdown-button,:host .subnav-menu-left .overflow-menu-container .overflow-button,:host .subnav-menu-left ul.desktop-menu li a{color:var(--color-gray-07);text-decoration:none;padding:8px 12px;text-align:center;font-family:var(--ptc-font-latin);font-style:var(--ptc-font-style-normal);font-size:var(--ptc-font-size-xx-small);font-weight:var(--ptc-font-weight-bold);line-height:18px;display:flex;align-items:center;position:relative;border-bottom:3px solid transparent;height:100%;box-sizing:border-box;transition:all 0.2s ease}:host .subnav-menu-left .overflow-menu-container .overflow-dropdown{position:absolute;top:100%;background:var(--color-standard-gray);border-radius:var(--ptc-border-radius-standard);box-shadow:var(--ptc-shadow-x-large);z-index:1001;padding:14px 0;margin-top:-4px;max-width:312px;width:-moz-max-content;width:max-content}:host .mobile-dropdown-container .mobile-dropdown li .mobile-dropdown-item,:host .subnav-menu-left .overflow-menu-container .overflow-dropdown a{display:block;padding:10px 32px 10px 24px;color:var(--color-gray-07);text-decoration:none;font-size:var(--ptc-font-size-xx-small);font-weight:var(--ptc-font-weight-bold);line-height:var(--ptc-line-height-densest);transition:all 0.2s ease;position:relative;border:none}:host{position:relative;display:block;font-family:var(--ptc-font-latin);background-color:var(--color-standard-gray);box-shadow:var(--ptc-shadow-small);transition:all 0.3s ease-in-out}:host.sticky-transition{transition:transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.3s ease-in-out, background-color 0.3s ease-in-out;box-shadow:0 2px 8px rgba(0, 0, 0, 0.15)}:host .subnav-container{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:0 24px;margin:0 auto;max-width:1200px;gap:24px}@media only screen and (min-width: 768px){:host .subnav-container{flex-wrap:wrap;gap:48px}}@media only screen and (min-width: 1200px){:host .subnav-container{padding:0;max-width:1136px}}@media only screen and (min-width: 1440px){:host .subnav-container{padding:0;max-width:1200px}}:host .subnav-container.full-width{justify-content:flex-start}:host .subnav-menu-left{display:flex;align-items:center;flex:1;align-self:stretch}@media only screen and (min-width: 768px){:host .subnav-menu-left{justify-content:flex-start}}:host .subnav-menu-left ul.desktop-menu{list-style:none;padding:0;margin:0;display:flex;align-items:center;justify-content:center;gap:4px;flex-wrap:wrap;align-self:stretch}@media only screen and (min-width: 768px){:host .subnav-menu-left ul.desktop-menu{justify-content:flex-start;gap:32px}}:host .subnav-menu-left ul.desktop-menu li{display:inline-block;height:100%}@media only screen and (min-width: 768px){:host .subnav-menu-left ul.desktop-menu li a{padding:20px 0 17px 0}}:host .subnav-menu-left ul.desktop-menu li a:hover{color:var(--color-gray-10)}:host .subnav-menu-left ul.desktop-menu li a.active{color:var(--color-gray-10);border-bottom:3px solid var(--color-green-07)}:host .subnav-menu-left ul.desktop-menu li a:focus-visible{border-radius:var(--ptc-border-radius-standard);outline:5px solid var(--keyboard-nav-outline)}:host .subnav-menu-left .overflow-menu-container{position:relative;display:none}@media only screen and (min-width: 768px){:host .subnav-menu-left .overflow-menu-container{display:inline-block}}:host .subnav-menu-left .overflow-menu-container .overflow-button{background:none;border:none;padding:20px 0 17px 0;cursor:pointer;justify-content:center;border-bottom:3px solid transparent;box-sizing:border-box}:host .subnav-menu-left .overflow-menu-container .overflow-button:hover{color:var(--color-gray-10)}:host .subnav-menu-left .overflow-menu-container .overflow-button:focus-visible{border-radius:var(--ptc-border-radius-standard);outline:5px solid var(--keyboard-nav-outline)}:host .subnav-menu-left .overflow-menu-container .overflow-button .overflow-dots{border-radius:2px;border:1px solid var(--color-gray-07);line-height:1;width:18px;height:18px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all 0.2s ease;box-sizing:border-box}:host .subnav-menu-left .overflow-menu-container .overflow-button .overflow-dots:hover{background-color:var(--color-gray-04);border-color:var(--color-gray-04)}:host .subnav-menu-left .overflow-menu-container .overflow-button .overflow-dots:hover svg circle{fill:var(--color-gray-10)}:host .subnav-menu-left .overflow-menu-container .overflow-button .overflow-dots:focus-visible{border-radius:var(--ptc-border-radius-standard);outline:5px solid var(--keyboard-nav-outline)}:host .subnav-menu-left .overflow-menu-container .overflow-button[aria-expanded],:host .subnav-menu-left .overflow-menu-container .overflow-button.selected-active{border-bottom-color:var(--color-green-07)}:host .subnav-menu-left .overflow-menu-container .overflow-button[aria-expanded] .overflow-dots,:host .subnav-menu-left .overflow-menu-container .overflow-button.selected-active .overflow-dots{background-color:var(--color-green-07);border-color:var(--color-green-07)}:host .subnav-menu-left .overflow-menu-container .overflow-button[aria-expanded] .overflow-dots svg circle,:host .subnav-menu-left .overflow-menu-container .overflow-button.selected-active .overflow-dots svg circle{fill:var(--color-white)}:host .subnav-menu-left .overflow-menu-container .overflow-dropdown.align-right{left:auto;right:-2px}:host .subnav-menu-left .overflow-menu-container .overflow-dropdown.align-left{left:0;right:auto}:host .subnav-menu-left .overflow-menu-container .overflow-dropdown a{text-align:left;line-height:18px}:host .subnav-menu-left .overflow-menu-container .overflow-dropdown a:hover{background-color:var(--color-gray-02);color:var(--color-gray-10)}:host .subnav-menu-left .overflow-menu-container .overflow-dropdown a.active{color:var(--color-gray-10);border-bottom:none}:host .subnav-menu-left .overflow-menu-container .overflow-dropdown a.active::before{content:\"\";display:block;width:2px;height:100%;background-color:var(--color-green-07);position:absolute;left:14px;top:0}:host .subnav-menu-left .overflow-menu-container .overflow-dropdown a:focus-visible{border-radius:var(--ptc-border-radius-standard);outline:5px solid var(--keyboard-nav-outline)}:host .subnav-menu-left.full-width{flex:1;width:100%;justify-content:flex-start}:host .subnav-menu-left.full-width .desktop-menu{width:100%}:host .mobile-dropdown-container{position:relative;display:block;height:100%;box-sizing:border-box}@media only screen and (min-width: 768px){:host .mobile-dropdown-container{display:none !important}}:host .mobile-dropdown-container .mobile-dropdown-button{background:transparent;border:none;border-bottom:3px solid var(--color-green-07);padding:20px 0 17px 0;justify-content:center;gap:10px;cursor:pointer}:host .mobile-dropdown-container .mobile-dropdown-button:focus-visible{border-radius:var(--ptc-border-radius-standard);outline:5px solid var(--keyboard-nav-outline)}:host .mobile-dropdown-container .mobile-dropdown-button[aria-expanded]{border-color:var(--color-green-07);color:var(--color-gray-10)}:host .mobile-dropdown-container .mobile-dropdown-button .mobile-selected-item{flex:1;text-align:left;color:var(--color-gray-07);font-size:var(--ptc-font-size-xx-small);font-weight:var(--ptc-font-weight-bold);line-height:var(--ptc-line-height-densest);display:-webkit-box;line-clamp:1;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;max-width:100%}:host .mobile-dropdown-container .mobile-dropdown-button .mobile-arrow{display:flex;align-items:center;justify-content:center;transition:transform 0.2s ease}:host .mobile-dropdown-container .mobile-dropdown-button .mobile-arrow svg{transition:transform 0.2s ease}:host .mobile-dropdown-container .mobile-dropdown-button .mobile-arrow.rotated svg{transform:rotate(180deg)}:host .mobile-dropdown-container .mobile-dropdown{position:absolute;top:calc(100% - 8px);left:-2px;background:var(--color-standard-gray);border-radius:var(--ptc-border-radius-standard);box-shadow:var(--ptc-shadow-medium);z-index:1001;margin:4px 0 0 0;overflow-y:auto;min-width:280px;width:-moz-fit-content;width:fit-content;list-style:none;padding:14px 0}:host .mobile-dropdown-container .mobile-dropdown li{display:block}:host .mobile-dropdown-container .mobile-dropdown li:last-child{border-bottom:none}:host .mobile-dropdown-container .mobile-dropdown li .mobile-dropdown-item{width:100%;background:none;text-align:left;cursor:pointer;word-break:break-word;display:block;box-sizing:border-box}:host .mobile-dropdown-container .mobile-dropdown li .mobile-dropdown-item.active{color:var(--color-gray-10)}:host .mobile-dropdown-container .mobile-dropdown li .mobile-dropdown-item.active::before{content:\"\";display:block;width:2px;height:100%;background-color:var(--color-green-07);position:absolute;left:14px;top:0}:host .mobile-dropdown-container .mobile-dropdown li .mobile-dropdown-item:focus-visible{border-radius:var(--ptc-border-radius-standard);outline:5px solid var(--keyboard-nav-outline)}:host .subnav-menu-right{max-width:50%;padding:12px 0}@media only screen and (min-width: 768px){:host .subnav-menu-right{width:auto;max-width:300px}}";
|
|
1109
|
+
|
|
1110
|
+
const PtcSubnavV2 = class {
|
|
1111
|
+
constructor(hostRef) {
|
|
1112
|
+
registerInstance(this, hostRef);
|
|
1113
|
+
this.cachedNavItems = null;
|
|
1114
|
+
this.isSticky = false;
|
|
1115
|
+
this.originalTop = 0;
|
|
1116
|
+
this.placeholderElement = null;
|
|
1117
|
+
this.measurementElement = null;
|
|
1118
|
+
this.handleClickOutside = (event) => {
|
|
1119
|
+
if (!this.el.contains(event.target)) {
|
|
1120
|
+
this.showOverflowMenu = false;
|
|
1121
|
+
}
|
|
1122
|
+
};
|
|
1123
|
+
this.handleKeyDown = (event) => {
|
|
1124
|
+
var _a;
|
|
1125
|
+
if (event.key === "Escape" && this.showOverflowMenu) {
|
|
1126
|
+
this.showOverflowMenu = false;
|
|
1127
|
+
(_a = this.overflowButton) === null || _a === void 0 ? void 0 : _a.focus();
|
|
1128
|
+
}
|
|
1129
|
+
};
|
|
1130
|
+
this.handleScroll = () => {
|
|
1131
|
+
// Throttle scroll events for better performance
|
|
1132
|
+
if (this.scrollThrottleTimeout) {
|
|
1133
|
+
return;
|
|
1134
|
+
}
|
|
1135
|
+
this.scrollThrottleTimeout = window.setTimeout(() => {
|
|
1136
|
+
// Don't update active state if user just manually navigated
|
|
1137
|
+
if (this.isManualNavigation) {
|
|
1138
|
+
this.scrollThrottleTimeout = null;
|
|
1139
|
+
return;
|
|
1140
|
+
}
|
|
1141
|
+
// Fallback scroll handler to ensure active state is updated
|
|
1142
|
+
const navItems = this.getNavItems();
|
|
1143
|
+
const subnavHeight = this.el.offsetHeight;
|
|
1144
|
+
const scrollPosition = window.scrollY + subnavHeight + 100; // Offset for better detection
|
|
1145
|
+
// Find the section that should be active based on scroll position
|
|
1146
|
+
let activeSection = navItems[0].id; // Default to first section
|
|
1147
|
+
for (let i = navItems.length - 1; i >= 0; i--) {
|
|
1148
|
+
const section = document.getElementById(navItems[i].id);
|
|
1149
|
+
if (section && section.offsetTop <= scrollPosition) {
|
|
1150
|
+
activeSection = navItems[i].id;
|
|
1151
|
+
break;
|
|
1152
|
+
}
|
|
1153
|
+
}
|
|
1154
|
+
// Only update if different from current active
|
|
1155
|
+
if (activeSection !== this.currentActive) {
|
|
1156
|
+
this.currentActive = activeSection;
|
|
1157
|
+
}
|
|
1158
|
+
this.scrollThrottleTimeout = null;
|
|
1159
|
+
}, 16); // ~60fps throttling
|
|
1160
|
+
};
|
|
1161
|
+
this.initializeStickyPosition = () => {
|
|
1162
|
+
// Store the original position of the subnav
|
|
1163
|
+
const rect = this.el.getBoundingClientRect();
|
|
1164
|
+
this.originalTop = rect.top + window.scrollY;
|
|
1165
|
+
};
|
|
1166
|
+
this.handleStickyScroll = () => {
|
|
1167
|
+
// Throttle sticky scroll events for better performance
|
|
1168
|
+
if (this.stickyScrollTimeout) {
|
|
1169
|
+
return;
|
|
1170
|
+
}
|
|
1171
|
+
this.stickyScrollTimeout = window.setTimeout(() => {
|
|
1172
|
+
var _a;
|
|
1173
|
+
const scrollY = window.scrollY;
|
|
1174
|
+
// Check if we should make the subnav sticky
|
|
1175
|
+
const shouldBeSticky = scrollY >= this.originalTop;
|
|
1176
|
+
if (shouldBeSticky && !this.isSticky) {
|
|
1177
|
+
// Store the original height before making it fixed
|
|
1178
|
+
const originalHeight = this.el.offsetHeight;
|
|
1179
|
+
// Create placeholder element to maintain space
|
|
1180
|
+
this.placeholderElement = document.createElement("div");
|
|
1181
|
+
this.placeholderElement.style.height = `${originalHeight}px`;
|
|
1182
|
+
this.placeholderElement.style.width = "100%";
|
|
1183
|
+
this.placeholderElement.style.pointerEvents = "none";
|
|
1184
|
+
// Insert placeholder before the subnav
|
|
1185
|
+
(_a = this.el.parentNode) === null || _a === void 0 ? void 0 : _a.insertBefore(this.placeholderElement, this.el);
|
|
1186
|
+
// Add transition class for smooth animation
|
|
1187
|
+
this.el.classList.add("sticky-transition");
|
|
1188
|
+
// Apply fixed positioning with smooth transition
|
|
1189
|
+
this.el.style.position = "fixed";
|
|
1190
|
+
this.el.style.top = "0";
|
|
1191
|
+
this.el.style.left = "0";
|
|
1192
|
+
this.el.style.right = "0";
|
|
1193
|
+
this.el.style.width = "100%";
|
|
1194
|
+
this.el.style.zIndex = "105";
|
|
1195
|
+
this.el.style.transform = "translateY(0)";
|
|
1196
|
+
this.isSticky = true;
|
|
1197
|
+
}
|
|
1198
|
+
else if (!shouldBeSticky && this.isSticky) {
|
|
1199
|
+
// Remove transition class and reset transform
|
|
1200
|
+
this.el.classList.remove("sticky-transition");
|
|
1201
|
+
this.el.style.transform = "";
|
|
1202
|
+
// Remove fixed positioning and restore original position
|
|
1203
|
+
this.el.style.position = "";
|
|
1204
|
+
this.el.style.top = "";
|
|
1205
|
+
this.el.style.left = "";
|
|
1206
|
+
this.el.style.right = "";
|
|
1207
|
+
this.el.style.width = "";
|
|
1208
|
+
this.el.style.zIndex = "";
|
|
1209
|
+
this.isSticky = false;
|
|
1210
|
+
// Remove placeholder element
|
|
1211
|
+
if (this.placeholderElement) {
|
|
1212
|
+
this.placeholderElement.remove();
|
|
1213
|
+
this.placeholderElement = null;
|
|
1214
|
+
}
|
|
1215
|
+
}
|
|
1216
|
+
this.stickyScrollTimeout = null;
|
|
1217
|
+
}, 16); // ~60fps throttling
|
|
1218
|
+
};
|
|
1219
|
+
this.handleResize = () => {
|
|
1220
|
+
this.navContainer && setTimeout(() => this.calculateVisibleItems(), 10);
|
|
1221
|
+
// Recalculate original position on resize
|
|
1222
|
+
if (!this.isSticky) {
|
|
1223
|
+
this.initializeStickyPosition();
|
|
1224
|
+
}
|
|
1225
|
+
else if (this.placeholderElement) {
|
|
1226
|
+
// Update placeholder height if sticky and resized
|
|
1227
|
+
const currentHeight = this.el.offsetHeight;
|
|
1228
|
+
this.placeholderElement.style.height = `${currentHeight}px`;
|
|
1229
|
+
// Update originalTop based on placeholder position (layout may have changed)
|
|
1230
|
+
const placeholderRect = this.placeholderElement.getBoundingClientRect();
|
|
1231
|
+
this.originalTop = placeholderRect.top + window.scrollY;
|
|
1232
|
+
}
|
|
1233
|
+
};
|
|
1234
|
+
this.setupIntersectionObserver = () => {
|
|
1235
|
+
// Get all sections that correspond to our navigation items
|
|
1236
|
+
const navItems = this.getNavItems();
|
|
1237
|
+
// Create intersection observer
|
|
1238
|
+
this.intersectionObserver = new IntersectionObserver((entries) => {
|
|
1239
|
+
// Clear any existing timeout
|
|
1240
|
+
if (this.scrollTimeout) {
|
|
1241
|
+
clearTimeout(this.scrollTimeout);
|
|
1242
|
+
}
|
|
1243
|
+
// Debounce the intersection changes
|
|
1244
|
+
this.scrollTimeout = window.setTimeout(() => {
|
|
1245
|
+
// Don't update active state if user just manually navigated
|
|
1246
|
+
if (this.isManualNavigation) {
|
|
1247
|
+
return;
|
|
1248
|
+
}
|
|
1249
|
+
// Find all intersecting sections
|
|
1250
|
+
const intersectingSections = entries.filter((entry) => entry.isIntersecting);
|
|
1251
|
+
if (intersectingSections.length > 0) {
|
|
1252
|
+
// Sort by intersection ratio (how much of the section is visible)
|
|
1253
|
+
// and then by position (top to bottom)
|
|
1254
|
+
intersectingSections.sort((a, b) => {
|
|
1255
|
+
// First sort by intersection ratio (higher = more visible)
|
|
1256
|
+
if (b.intersectionRatio !== a.intersectionRatio) {
|
|
1257
|
+
return (b.intersectionRatio - a.intersectionRatio);
|
|
1258
|
+
}
|
|
1259
|
+
// If intersection ratios are equal, sort by position
|
|
1260
|
+
return (a.boundingClientRect.top -
|
|
1261
|
+
b.boundingClientRect.top);
|
|
1262
|
+
});
|
|
1263
|
+
// Get the most visible section
|
|
1264
|
+
const mostVisibleSection = intersectingSections[0];
|
|
1265
|
+
const sectionId = mostVisibleSection.target.id;
|
|
1266
|
+
if (sectionId && sectionId !== this.currentActive) {
|
|
1267
|
+
this.currentActive = sectionId;
|
|
1268
|
+
}
|
|
1269
|
+
}
|
|
1270
|
+
}, 100); // Increased debounce time for better performance
|
|
1271
|
+
}, {
|
|
1272
|
+
root: null,
|
|
1273
|
+
rootMargin: "-20% 0px -60% 0px",
|
|
1274
|
+
threshold: [0, 0.1, 0.25, 0.5, 0.75, 1.0], // Multiple thresholds for better detection
|
|
1275
|
+
});
|
|
1276
|
+
// Observe all sections
|
|
1277
|
+
navItems.forEach((item) => {
|
|
1278
|
+
const section = document.getElementById(item.id);
|
|
1279
|
+
if (section) {
|
|
1280
|
+
this.intersectionObserver.observe(section);
|
|
1281
|
+
}
|
|
1282
|
+
});
|
|
1283
|
+
};
|
|
1284
|
+
this.setupResizeObserver = () => {
|
|
1285
|
+
// Observe the parent element for layout changes
|
|
1286
|
+
this.resizeObserver = new ResizeObserver(() => {
|
|
1287
|
+
// Recalculate sticky position when parent layout changes
|
|
1288
|
+
if (!this.isSticky) {
|
|
1289
|
+
this.initializeStickyPosition();
|
|
1290
|
+
}
|
|
1291
|
+
else if (this.placeholderElement) {
|
|
1292
|
+
// If sticky, update originalTop based on placeholder position
|
|
1293
|
+
const placeholderRect = this.placeholderElement.getBoundingClientRect();
|
|
1294
|
+
this.originalTop = placeholderRect.top + window.scrollY;
|
|
1295
|
+
}
|
|
1296
|
+
});
|
|
1297
|
+
// Observe the element's parent or the element itself
|
|
1298
|
+
if (this.el.parentElement) {
|
|
1299
|
+
this.resizeObserver.observe(this.el.parentElement);
|
|
1300
|
+
}
|
|
1301
|
+
};
|
|
1302
|
+
this.extractNavItemsFromSlots = () => {
|
|
1303
|
+
const slotElement = this.el.querySelector('[slot="nav-items"]');
|
|
1304
|
+
if (!slotElement)
|
|
1305
|
+
return null;
|
|
1306
|
+
const links = slotElement.querySelectorAll("a");
|
|
1307
|
+
const items = Array.from(links)
|
|
1308
|
+
.map((link) => {
|
|
1309
|
+
var _a, _b;
|
|
1310
|
+
return ({
|
|
1311
|
+
id: ((_a = link.getAttribute("href")) === null || _a === void 0 ? void 0 : _a.substring(1)) || "",
|
|
1312
|
+
label: ((_b = link.textContent) === null || _b === void 0 ? void 0 : _b.trim()) || "",
|
|
1313
|
+
title: link.getAttribute("title") || undefined,
|
|
1314
|
+
trackerId: link.getAttribute("tracker-id") || undefined,
|
|
1315
|
+
});
|
|
1316
|
+
})
|
|
1317
|
+
.filter((item) => Boolean(item.id && item.label));
|
|
1318
|
+
return items.length > 0 ? items : null;
|
|
1319
|
+
};
|
|
1320
|
+
this.getNavItems = () => {
|
|
1321
|
+
// Return cached items if available
|
|
1322
|
+
if (this.cachedNavItems) {
|
|
1323
|
+
return this.cachedNavItems;
|
|
1324
|
+
}
|
|
1325
|
+
// Extract navigation items from slots (SEO-friendly approach)
|
|
1326
|
+
const slotItems = this.extractNavItemsFromSlots();
|
|
1327
|
+
if (slotItems) {
|
|
1328
|
+
this.cachedNavItems = slotItems;
|
|
1329
|
+
return slotItems;
|
|
1330
|
+
}
|
|
1331
|
+
// If navItems prop is provided, parse and use it (fallback)
|
|
1332
|
+
const propItems = this.parsePropNavItems();
|
|
1333
|
+
if (propItems) {
|
|
1334
|
+
this.cachedNavItems = propItems;
|
|
1335
|
+
return propItems;
|
|
1336
|
+
}
|
|
1337
|
+
// Return empty array if no navigation items found
|
|
1338
|
+
console.warn("No navigation items found in slots or props for ptc-subnav-v2");
|
|
1339
|
+
return [];
|
|
1340
|
+
};
|
|
1341
|
+
this.hasActiveOverflowItem = () => {
|
|
1342
|
+
return this.overflowItems.some((item) => item.id === this.currentActive);
|
|
1343
|
+
};
|
|
1344
|
+
this.hasSubnavMenuRightContent = () => {
|
|
1345
|
+
const slotElement = this.el.querySelector('[slot="subnav-menu-right"]');
|
|
1346
|
+
return Boolean(slotElement === null || slotElement === void 0 ? void 0 : slotElement.children.length);
|
|
1347
|
+
};
|
|
1348
|
+
this.calculateVisibleItems = () => {
|
|
1349
|
+
const navItems = this.getNavItems();
|
|
1350
|
+
// Handle case where no navigation items are found
|
|
1351
|
+
if (navItems.length === 0) {
|
|
1352
|
+
this.visibleItems = [];
|
|
1353
|
+
this.overflowItems = [];
|
|
1354
|
+
return;
|
|
1355
|
+
}
|
|
1356
|
+
// Check if we're in mobile mode (below 767px)
|
|
1357
|
+
const wasMobile = this.isMobile;
|
|
1358
|
+
this.isMobile = window.innerWidth <= 767;
|
|
1359
|
+
// Force re-render if mobile state changed
|
|
1360
|
+
if (wasMobile !== this.isMobile) {
|
|
1361
|
+
this.showOverflowMenu = false; // Close any open menus when switching modes
|
|
1362
|
+
}
|
|
1363
|
+
if (this.isMobile) {
|
|
1364
|
+
// On mobile, show only the current active item
|
|
1365
|
+
const activeItem = navItems.find((item) => item.id === this.currentActive) ||
|
|
1366
|
+
navItems[0];
|
|
1367
|
+
this.visibleItems = [activeItem];
|
|
1368
|
+
this.overflowItems = navItems.filter((item) => item.id !== activeItem.id);
|
|
1369
|
+
}
|
|
1370
|
+
else {
|
|
1371
|
+
// Desktop behavior - calculate based on available width
|
|
1372
|
+
const containerWidth = this.navContainer
|
|
1373
|
+
? this.navContainer.offsetWidth
|
|
1374
|
+
: 0;
|
|
1375
|
+
const buttonWidth = this.overflowButton
|
|
1376
|
+
? this.overflowButton.offsetWidth + 32
|
|
1377
|
+
: 0; // 32px for gap
|
|
1378
|
+
const availableWidth = containerWidth - buttonWidth - 48; // 48px for right margin
|
|
1379
|
+
// Fallback if container width is not available yet
|
|
1380
|
+
if (containerWidth === 0) {
|
|
1381
|
+
this.visibleItems = navItems;
|
|
1382
|
+
this.overflowItems = [];
|
|
1383
|
+
return;
|
|
1384
|
+
}
|
|
1385
|
+
let visibleCount = 0;
|
|
1386
|
+
let totalWidth = 0;
|
|
1387
|
+
// Create or reuse measurement element
|
|
1388
|
+
if (!this.measurementElement) {
|
|
1389
|
+
this.measurementElement = document.createElement("div");
|
|
1390
|
+
this.measurementElement.style.position = "absolute";
|
|
1391
|
+
this.measurementElement.style.visibility = "hidden";
|
|
1392
|
+
this.measurementElement.style.whiteSpace = "nowrap";
|
|
1393
|
+
this.measurementElement.style.fontSize = "14px";
|
|
1394
|
+
this.measurementElement.style.fontWeight = "700";
|
|
1395
|
+
this.measurementElement.style.padding = "20px 0 20px 0";
|
|
1396
|
+
}
|
|
1397
|
+
document.body.appendChild(this.measurementElement);
|
|
1398
|
+
for (let i = 0; i < navItems.length; i++) {
|
|
1399
|
+
const item = navItems[i];
|
|
1400
|
+
this.measurementElement.textContent = item.label;
|
|
1401
|
+
const itemWidth = this.measurementElement.offsetWidth + 32; // 32px for gap
|
|
1402
|
+
if (totalWidth + itemWidth <= availableWidth) {
|
|
1403
|
+
totalWidth += itemWidth;
|
|
1404
|
+
visibleCount++;
|
|
1405
|
+
}
|
|
1406
|
+
else {
|
|
1407
|
+
break;
|
|
1408
|
+
}
|
|
1409
|
+
}
|
|
1410
|
+
document.body.removeChild(this.measurementElement);
|
|
1411
|
+
this.visibleItems = navItems.slice(0, visibleCount);
|
|
1412
|
+
this.overflowItems = navItems.slice(visibleCount);
|
|
1413
|
+
}
|
|
1414
|
+
// Don't automatically show overflow menu - it should be closed by default
|
|
1415
|
+
// this.showOverflowMenu = this.overflowItems.length > 0;
|
|
1416
|
+
};
|
|
1417
|
+
this.toggleOverflowMenu = () => {
|
|
1418
|
+
this.showOverflowMenu = !this.showOverflowMenu;
|
|
1419
|
+
// After opening, measure and decide alignment to avoid viewport overflow
|
|
1420
|
+
if (!this.showOverflowMenu) {
|
|
1421
|
+
return;
|
|
1422
|
+
}
|
|
1423
|
+
requestAnimationFrame(() => {
|
|
1424
|
+
const container = this.overflowMenuContainer;
|
|
1425
|
+
const dropdown = this.overflowDropdownEl;
|
|
1426
|
+
if (!container || !dropdown)
|
|
1427
|
+
return;
|
|
1428
|
+
const containerRect = container.getBoundingClientRect();
|
|
1429
|
+
// Default positioning is right: -2px inside container
|
|
1430
|
+
const dropdownWidth = dropdown.offsetWidth || 0;
|
|
1431
|
+
const rightEdge = containerRect.right + 2;
|
|
1432
|
+
const leftEdge = rightEdge - dropdownWidth;
|
|
1433
|
+
// If left edge would be off the viewport, flip to left aligned
|
|
1434
|
+
this.overflowDropdownAlignLeft = leftEdge < 8; // keep a small gutter
|
|
1435
|
+
});
|
|
1436
|
+
};
|
|
1437
|
+
this.handleNavClick = (event, section) => {
|
|
1438
|
+
event.preventDefault();
|
|
1439
|
+
this.currentActive = section;
|
|
1440
|
+
// Set manual navigation flag to prevent intersection observer from overriding
|
|
1441
|
+
this.isManualNavigation = true;
|
|
1442
|
+
// Clear any existing manual navigation timeout
|
|
1443
|
+
if (this.manualNavigationTimeout) {
|
|
1444
|
+
clearTimeout(this.manualNavigationTimeout);
|
|
1445
|
+
}
|
|
1446
|
+
// Reset manual navigation flag after scroll animation completes
|
|
1447
|
+
this.manualNavigationTimeout = window.setTimeout(() => {
|
|
1448
|
+
this.isManualNavigation = false;
|
|
1449
|
+
}, 1500); // Give enough time for smooth scroll to complete
|
|
1450
|
+
// Emit custom event for parent components
|
|
1451
|
+
const customEvent = new CustomEvent("sectionChange", {
|
|
1452
|
+
detail: { section },
|
|
1453
|
+
bubbles: true,
|
|
1454
|
+
composed: true,
|
|
1455
|
+
});
|
|
1456
|
+
this.el.dispatchEvent(customEvent);
|
|
1457
|
+
// Smooth scroll to section if it exists, accounting for sticky nav height
|
|
1458
|
+
const targetElement = document.querySelector(`#${section}`);
|
|
1459
|
+
if (targetElement) {
|
|
1460
|
+
// Get the sticky nav height
|
|
1461
|
+
const navHeight = this.el.offsetHeight;
|
|
1462
|
+
// Calculate the target position with offset
|
|
1463
|
+
const targetPosition = targetElement.getBoundingClientRect().top +
|
|
1464
|
+
window.scrollY -
|
|
1465
|
+
navHeight;
|
|
1466
|
+
// Smooth scroll to the adjusted position
|
|
1467
|
+
window.scrollTo({
|
|
1468
|
+
top: targetPosition,
|
|
1469
|
+
behavior: "smooth",
|
|
1470
|
+
});
|
|
1471
|
+
}
|
|
1472
|
+
};
|
|
1473
|
+
this.activeSection = "overview";
|
|
1474
|
+
this.navItems = "";
|
|
1475
|
+
this.currentActive = "overview";
|
|
1476
|
+
this.visibleItems = [];
|
|
1477
|
+
this.overflowItems = [];
|
|
1478
|
+
this.showOverflowMenu = false;
|
|
1479
|
+
this.overflowDropdownAlignLeft = false;
|
|
1480
|
+
this.isMobile = false;
|
|
1481
|
+
this.isManualNavigation = false;
|
|
1482
|
+
}
|
|
1483
|
+
componentWillLoad() {
|
|
1484
|
+
this.currentActive = this.activeSection;
|
|
1485
|
+
}
|
|
1486
|
+
componentDidLoad() {
|
|
1487
|
+
this.bindEventHandlers();
|
|
1488
|
+
this.handleResize();
|
|
1489
|
+
this.addEventListeners();
|
|
1490
|
+
this.setupIntersectionObserver();
|
|
1491
|
+
this.setupResizeObserver();
|
|
1492
|
+
this.initializeStickyPosition();
|
|
1493
|
+
}
|
|
1494
|
+
bindEventHandlers() {
|
|
1495
|
+
this.boundHandleResize = this.handleResize.bind(this);
|
|
1496
|
+
this.boundHandleClickOutside = this.handleClickOutside.bind(this);
|
|
1497
|
+
this.boundHandleScroll = this.handleScroll.bind(this);
|
|
1498
|
+
this.boundHandleKeyDown = this.handleKeyDown.bind(this);
|
|
1499
|
+
this.boundHandleStickyScroll = this.handleStickyScroll.bind(this);
|
|
1500
|
+
}
|
|
1501
|
+
addEventListeners() {
|
|
1502
|
+
window.addEventListener("resize", this.boundHandleResize);
|
|
1503
|
+
document.addEventListener("click", this.boundHandleClickOutside);
|
|
1504
|
+
document.addEventListener("keydown", this.boundHandleKeyDown);
|
|
1505
|
+
window.addEventListener("scroll", this.boundHandleScroll, {
|
|
1506
|
+
passive: true,
|
|
1507
|
+
});
|
|
1508
|
+
window.addEventListener("scroll", this.boundHandleStickyScroll, {
|
|
1509
|
+
passive: true,
|
|
1510
|
+
});
|
|
1511
|
+
}
|
|
1512
|
+
disconnectedCallback() {
|
|
1513
|
+
this.removeEventListeners();
|
|
1514
|
+
this.cleanupTimeouts();
|
|
1515
|
+
this.cleanupIntersectionObserver();
|
|
1516
|
+
this.cleanupResizeObserver();
|
|
1517
|
+
this.cleanupElements();
|
|
1518
|
+
}
|
|
1519
|
+
removeEventListeners() {
|
|
1520
|
+
window.removeEventListener("resize", this.boundHandleResize);
|
|
1521
|
+
document.removeEventListener("click", this.boundHandleClickOutside);
|
|
1522
|
+
document.removeEventListener("keydown", this.boundHandleKeyDown);
|
|
1523
|
+
window.removeEventListener("scroll", this.boundHandleScroll);
|
|
1524
|
+
window.removeEventListener("scroll", this.boundHandleStickyScroll);
|
|
1525
|
+
}
|
|
1526
|
+
cleanupTimeouts() {
|
|
1527
|
+
if (this.scrollTimeout)
|
|
1528
|
+
clearTimeout(this.scrollTimeout);
|
|
1529
|
+
if (this.scrollThrottleTimeout)
|
|
1530
|
+
clearTimeout(this.scrollThrottleTimeout);
|
|
1531
|
+
if (this.manualNavigationTimeout)
|
|
1532
|
+
clearTimeout(this.manualNavigationTimeout);
|
|
1533
|
+
if (this.stickyScrollTimeout)
|
|
1534
|
+
clearTimeout(this.stickyScrollTimeout);
|
|
1535
|
+
}
|
|
1536
|
+
cleanupIntersectionObserver() {
|
|
1537
|
+
if (this.intersectionObserver) {
|
|
1538
|
+
this.intersectionObserver.disconnect();
|
|
1539
|
+
}
|
|
1540
|
+
}
|
|
1541
|
+
cleanupResizeObserver() {
|
|
1542
|
+
if (this.resizeObserver) {
|
|
1543
|
+
this.resizeObserver.disconnect();
|
|
1544
|
+
}
|
|
1545
|
+
}
|
|
1546
|
+
cleanupElements() {
|
|
1547
|
+
if (this.placeholderElement) {
|
|
1548
|
+
this.placeholderElement.remove();
|
|
1549
|
+
this.placeholderElement = null;
|
|
1550
|
+
}
|
|
1551
|
+
if (this.measurementElement) {
|
|
1552
|
+
this.measurementElement.remove();
|
|
1553
|
+
this.measurementElement = null;
|
|
1554
|
+
}
|
|
1555
|
+
}
|
|
1556
|
+
parsePropNavItems() {
|
|
1557
|
+
var _a;
|
|
1558
|
+
if (!((_a = this.navItems) === null || _a === void 0 ? void 0 : _a.trim()))
|
|
1559
|
+
return null;
|
|
1560
|
+
try {
|
|
1561
|
+
const parsedItems = JSON.parse(this.navItems);
|
|
1562
|
+
if (Array.isArray(parsedItems) && parsedItems.length > 0) {
|
|
1563
|
+
const validItems = parsedItems.filter((item) => Boolean(item &&
|
|
1564
|
+
typeof item.id === "string" &&
|
|
1565
|
+
typeof item.label === "string"));
|
|
1566
|
+
return validItems.length > 0 ? validItems : null;
|
|
1567
|
+
}
|
|
1568
|
+
}
|
|
1569
|
+
catch (error) {
|
|
1570
|
+
console.warn("Invalid navItems JSON provided to ptc-subnav-v2:", error);
|
|
1571
|
+
}
|
|
1572
|
+
return null;
|
|
1573
|
+
}
|
|
1574
|
+
render() {
|
|
1575
|
+
const navItems = this.getNavItems();
|
|
1576
|
+
const hasRightContent = this.hasSubnavMenuRightContent();
|
|
1577
|
+
const selectedMobileItem = this.isMobile
|
|
1578
|
+
? navItems.find((item) => item.id === this.currentActive) ||
|
|
1579
|
+
navItems[0]
|
|
1580
|
+
: null;
|
|
1581
|
+
// If no navigation items, don't render the navigation
|
|
1582
|
+
if (navItems.length === 0) {
|
|
1583
|
+
return (h(Host, null, h("div", { class: `subnav-container ${!hasRightContent ? "full-width" : ""}` }, hasRightContent && (h("div", { class: "subnav-menu-right" }, h("slot", { name: "subnav-menu-right" }))))));
|
|
1584
|
+
}
|
|
1585
|
+
return (h(Host, null, h("div", { class: `subnav-container ${!hasRightContent ? "full-width" : ""}` }, h("nav", { class: `subnav-menu-left ${!hasRightContent ? "full-width" : ""}`, role: "navigation", "aria-label": "Sub navigation", ref: (el) => (this.navContainer = el) }, this.isMobile ? (
|
|
1586
|
+
// Mobile layout - dropdown with arrows
|
|
1587
|
+
h("div", { class: "mobile-dropdown-container" }, h("button", { class: "mobile-dropdown-button", onClick: this.toggleOverflowMenu, onKeyDown: (e) => {
|
|
1588
|
+
if (e.key === "Enter" ||
|
|
1589
|
+
e.key === " ") {
|
|
1590
|
+
e.preventDefault();
|
|
1591
|
+
this.toggleOverflowMenu();
|
|
1592
|
+
}
|
|
1593
|
+
}, "aria-expanded": this.showOverflowMenu, "aria-haspopup": "true", "aria-label": `${(selectedMobileItem === null || selectedMobileItem === void 0 ? void 0 : selectedMobileItem.label) || "Select Section"} - Choose navigation section`, "tracker-id": "mobile-dropdown-button", ref: (el) => (this.overflowButton = el) }, h("span", { class: "mobile-selected-item" }, (selectedMobileItem === null || selectedMobileItem === void 0 ? void 0 : selectedMobileItem.label) ||
|
|
1594
|
+
"Select Section"), h("span", { class: `mobile-arrow ${this.showOverflowMenu ? "rotated" : ""}`, "aria-hidden": "true" }, h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "12", height: "8", viewBox: "0 0 12 8", fill: "none", "aria-hidden": "true" }, h("path", { d: "M1 1.5L5.94975 6.44975L10.8995 1.5", stroke: "#00890B", "stroke-width": "2", "stroke-linecap": "round" })))), this.showOverflowMenu && (h("ul", { class: "mobile-dropdown", role: "menu", "aria-label": "Navigation sections" }, navItems.map((item) => (h("li", { key: item.id, class: "mf-listen", id: item.trackerId ||
|
|
1595
|
+
`mobile-nav-${item.id}` }, h("a", { href: `#${item.id}`, class: `mobile-dropdown-item ${this.currentActive ===
|
|
1596
|
+
item.id
|
|
1597
|
+
? "active"
|
|
1598
|
+
: ""}`, role: "menuitem", "aria-current": this.currentActive ===
|
|
1599
|
+
item.id
|
|
1600
|
+
? "page"
|
|
1601
|
+
: undefined, title: item.title || "", onClick: (e) => {
|
|
1602
|
+
this.handleNavClick(e, item.id);
|
|
1603
|
+
this.showOverflowMenu = false;
|
|
1604
|
+
} }, item.label)))))))) : (
|
|
1605
|
+
// Desktop layout - original behavior
|
|
1606
|
+
h("ul", { class: "desktop-menu" }, this.visibleItems.map((item) => (h("li", { key: item.id, class: "mf-listen", id: item.trackerId || `nav-${item.id}` }, h("a", { href: `#${item.id}`, class: this.currentActive === item.id
|
|
1607
|
+
? "active"
|
|
1608
|
+
: "", title: item.title || "", onClick: (e) => this.handleNavClick(e, item.id), "aria-current": this.currentActive === item.id
|
|
1609
|
+
? "page"
|
|
1610
|
+
: undefined }, item.label)))), this.overflowItems.length > 0 && (h("li", { class: "overflow-menu-container mf-listen", id: "overflow-menu", ref: (el) => (this.overflowMenuContainer = el) }, h("button", { class: `overflow-button ${this.hasActiveOverflowItem() ? "selected-active" : ""}`, onClick: this.toggleOverflowMenu, onKeyDown: (e) => {
|
|
1611
|
+
if (e.key === "Enter" ||
|
|
1612
|
+
e.key === " ") {
|
|
1613
|
+
e.preventDefault();
|
|
1614
|
+
this.toggleOverflowMenu();
|
|
1615
|
+
}
|
|
1616
|
+
}, "aria-expanded": this.showOverflowMenu, "aria-haspopup": "true", "aria-label": "Show more navigation items", "tracker-id": "overflow-button", ref: (el) => (this.overflowButton = el) }, h("span", { class: "overflow-dots", "aria-hidden": "true" }, h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "10", height: "10", viewBox: "0 0 10 10", fill: "none", "aria-hidden": "true" }, h("circle", { cx: "1.25", cy: "5", r: "1.25", fill: "#617480" }), h("circle", { cx: "5", cy: "5", r: "1.25", fill: "#617480" }), h("circle", { cx: "8.75", cy: "5", r: "1.25", fill: "#617480" })))), this.showOverflowMenu && (h("div", { class: `overflow-dropdown ${this.overflowDropdownAlignLeft ? "align-left" : "align-right"}`, role: "menu", "aria-label": "Additional navigation sections", ref: (el) => (this.overflowDropdownEl =
|
|
1617
|
+
el) }, this.overflowItems.map((item) => (h("a", { key: item.id, href: `#${item.id}`, class: `mf-listen ${this
|
|
1618
|
+
.currentActive ===
|
|
1619
|
+
item.id
|
|
1620
|
+
? "active"
|
|
1621
|
+
: ""}`, title: item.title || "", "tracker-id": item.trackerId ||
|
|
1622
|
+
`overflow-link-${item.id}`, role: "menuitem", onClick: (e) => {
|
|
1623
|
+
this.handleNavClick(e, item.id);
|
|
1624
|
+
this.showOverflowMenu = false;
|
|
1625
|
+
}, "aria-current": this
|
|
1626
|
+
.currentActive ===
|
|
1627
|
+
item.id
|
|
1628
|
+
? "page"
|
|
1629
|
+
: undefined }, item.label)))))))))), hasRightContent && (h("div", { class: "subnav-menu-right" }, h("slot", { name: "subnav-menu-right" }))))));
|
|
1630
|
+
}
|
|
1631
|
+
get el() { return getElement(this); }
|
|
1632
|
+
};
|
|
1633
|
+
PtcSubnavV2.style = ptcSubnavV2Css;
|
|
1634
|
+
|
|
1635
|
+
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}";
|
|
1636
|
+
|
|
1637
|
+
const PtcTitle = class {
|
|
1638
|
+
constructor(hostRef) {
|
|
1639
|
+
registerInstance(this, hostRef);
|
|
1640
|
+
this.isPlmHub = false;
|
|
1641
|
+
this.type = "h2";
|
|
1642
|
+
this.textAlign = undefined;
|
|
1643
|
+
this.upperline = "dotted";
|
|
1644
|
+
this.titleShadow = undefined;
|
|
1645
|
+
this.titleColor = "gray";
|
|
1646
|
+
this.titleMargin = undefined;
|
|
1647
|
+
this.titleWeight = undefined;
|
|
1648
|
+
this.titleSize = undefined;
|
|
1649
|
+
this.titleHeight = "densest";
|
|
1650
|
+
this.styles = undefined;
|
|
1651
|
+
this.ellipsisLineCutoff = undefined;
|
|
1652
|
+
this.titleDisplay = "inline-block";
|
|
1653
|
+
this.seoCompatibilityMode = false;
|
|
1654
|
+
this.tooltipZIndex = "auto";
|
|
1655
|
+
this.tooltipPosition = "bottom";
|
|
1656
|
+
this.tooltipTheme = "standard";
|
|
1657
|
+
this.enableTooltip = false;
|
|
1658
|
+
this.maxChars = undefined;
|
|
1659
|
+
this.maxLines = undefined;
|
|
1660
|
+
this.hideTooltipOnMobile = false;
|
|
1661
|
+
this.ismob = undefined;
|
|
1662
|
+
this.tooltipWidth = "default";
|
|
1663
|
+
}
|
|
1664
|
+
// Tooltip Properties ends
|
|
1665
|
+
componentDidLoad() {
|
|
1666
|
+
if (this.hideTooltipOnMobile) {
|
|
1667
|
+
this.el.classList.add("hide-tooltip-on-mobile");
|
|
1668
|
+
}
|
|
1669
|
+
this.el.addEventListener("mouseenter", () => this.toggleTitleTooltip(true));
|
|
1670
|
+
this.el.addEventListener("mouseleave", () => this.toggleTitleTooltip(false));
|
|
1671
|
+
}
|
|
1672
|
+
render() {
|
|
1673
|
+
if (this.seoCompatibilityMode) {
|
|
1674
|
+
return this.seoCompRender();
|
|
1675
|
+
}
|
|
1676
|
+
else {
|
|
1677
|
+
return this.standardRender();
|
|
1678
|
+
}
|
|
1679
|
+
}
|
|
1680
|
+
getSortedText(content) {
|
|
1681
|
+
if (!this.enableTooltip)
|
|
1682
|
+
return;
|
|
1683
|
+
const trimmedContent = content.trim();
|
|
1684
|
+
const shouldTruncate = trimmedContent.length > this.maxChars && !this.maxLines;
|
|
1685
|
+
return shouldTruncate
|
|
1686
|
+
? trimmedContent.slice(0, this.maxChars) + "..."
|
|
1687
|
+
: trimmedContent;
|
|
1688
|
+
}
|
|
1689
|
+
toggleTitleTooltip(show) {
|
|
1690
|
+
var _a;
|
|
1691
|
+
const tooltipClass = "tooltip-box";
|
|
1692
|
+
const existingTooltip = this.el.querySelector(`.${tooltipClass}`);
|
|
1693
|
+
const text = this.el.querySelectorAll(".line-clamp-title");
|
|
1694
|
+
let maxLinesShowCheck = false;
|
|
1695
|
+
if (text) {
|
|
1696
|
+
text.forEach((t) => {
|
|
1697
|
+
maxLinesShowCheck = t.scrollHeight > t.clientHeight;
|
|
1698
|
+
});
|
|
1699
|
+
}
|
|
1700
|
+
const ifCharExceeds = this.tooltipText &&
|
|
1701
|
+
this.tooltipText.length > this.maxChars &&
|
|
1702
|
+
!this.maxLines;
|
|
1703
|
+
const ifLinesExceeds = this.maxLines && maxLinesShowCheck;
|
|
1704
|
+
if (show && this.enableTooltip) {
|
|
1705
|
+
if ((!existingTooltip && ifCharExceeds) ||
|
|
1706
|
+
(!existingTooltip && ifLinesExceeds)) {
|
|
1707
|
+
const tooltipMarkup = document.createElement("div");
|
|
1708
|
+
tooltipMarkup.className = tooltipClass;
|
|
1709
|
+
tooltipMarkup.innerText = this.tooltipText;
|
|
1710
|
+
tooltipMarkup.style.zIndex = String(this.tooltipZIndex); // Ensures zIndex is a string
|
|
1711
|
+
tooltipMarkup.classList.add(this.tooltipPosition, this.tooltipTheme, this.tooltipWidth);
|
|
1712
|
+
if (this.hideTooltipOnMobile) {
|
|
1713
|
+
tooltipMarkup.classList.add("hide-tooltip-mobile");
|
|
1714
|
+
}
|
|
1715
|
+
(_a = this.el.querySelector("div")) === null || _a === void 0 ? void 0 : _a.appendChild(tooltipMarkup);
|
|
1716
|
+
}
|
|
1717
|
+
}
|
|
1718
|
+
else {
|
|
1719
|
+
existingTooltip === null || existingTooltip === void 0 ? void 0 : existingTooltip.remove();
|
|
1720
|
+
}
|
|
1721
|
+
}
|
|
1722
|
+
seoCompRender() {
|
|
1723
|
+
const classMap = this.getCssClassMap();
|
|
1724
|
+
const cutOff = this.getLineCuttoff();
|
|
1725
|
+
const [TagType, firstChild] = getSeoTagType(this.el, this.type);
|
|
1726
|
+
let html = firstChild && firstChild.innerHTML;
|
|
1727
|
+
// added for tooltip
|
|
1728
|
+
this.tooltipText = html.trim();
|
|
1729
|
+
let eleText = firstChild && firstChild.innerText;
|
|
1730
|
+
html = this.enableTooltip ? this.getSortedText(eleText) : html;
|
|
1731
|
+
if (this.el == firstChild) {
|
|
1732
|
+
this.el.innerHTML = "";
|
|
1733
|
+
}
|
|
1734
|
+
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
|
|
1735
|
+
? "line-clamp-title"
|
|
1736
|
+
: "" }))));
|
|
1737
|
+
}
|
|
1738
|
+
standardRender() {
|
|
1739
|
+
const classMap = this.getCssClassMap();
|
|
1740
|
+
const cutOff = this.getLineCuttoff();
|
|
1741
|
+
let TagType;
|
|
1742
|
+
switch (this.type) {
|
|
1743
|
+
case "h1":
|
|
1744
|
+
TagType = "h1";
|
|
1745
|
+
break;
|
|
1746
|
+
case "h3":
|
|
1747
|
+
TagType = "h3";
|
|
1748
|
+
break;
|
|
1749
|
+
case "h4":
|
|
1750
|
+
TagType = "h4";
|
|
1751
|
+
break;
|
|
1752
|
+
case "h5":
|
|
1753
|
+
TagType = "h5";
|
|
1754
|
+
break;
|
|
1755
|
+
case "h6":
|
|
1756
|
+
TagType = "h6";
|
|
1757
|
+
break;
|
|
1758
|
+
default:
|
|
1759
|
+
TagType = "h2";
|
|
1760
|
+
}
|
|
1761
|
+
return (h(Host, null, this.styles && h("style", null, this.styles), h("div", { class: classMap }, h(TagType, { style: cutOff }, h("slot", null)))));
|
|
1762
|
+
}
|
|
1763
|
+
getCssClassMap() {
|
|
1764
|
+
return {
|
|
1765
|
+
[this.textAlign]: !!this.textAlign ? true : false,
|
|
1766
|
+
[this.upperline]: true,
|
|
1767
|
+
[this.isPlmHub ? "is-plm-hub" : "is-standard"]: true,
|
|
1768
|
+
[this.titleMargin]: !!this.titleMargin ? true : false,
|
|
1769
|
+
[this.titleShadow]: !!this.titleShadow ? true : false,
|
|
1770
|
+
[this.titleWeight]: !!this.titleWeight ? true : false,
|
|
1771
|
+
[this.titleSize]: !!this.titleSize ? true : false,
|
|
1772
|
+
[this.titleHeight]: !!this.titleHeight ? true : false,
|
|
1773
|
+
[this.titleColor]: !!this.titleColor ? true : false,
|
|
1774
|
+
["ellipsis-boxing"]: this.ellipsisLineCutoff && this.ellipsisLineCutoff > 0,
|
|
1775
|
+
[this.titleDisplay]: !!this.titleDisplay ? true : false,
|
|
1776
|
+
};
|
|
1777
|
+
}
|
|
1778
|
+
getLineCuttoff() {
|
|
1779
|
+
const lineClamp = this.ellipsisLineCutoff > 0
|
|
1780
|
+
? this.ellipsisLineCutoff
|
|
1781
|
+
: this.maxLines;
|
|
1782
|
+
return lineClamp > 0 ? { "-webkit-line-clamp": `${lineClamp}` } : {};
|
|
1783
|
+
}
|
|
1784
|
+
get el() { return getElement(this); }
|
|
1785
|
+
};
|
|
1786
|
+
PtcTitle.style = ptcTitleCss;
|
|
1787
|
+
|
|
1788
|
+
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}";
|
|
1789
|
+
|
|
1790
|
+
const PtcTooltip = class {
|
|
1791
|
+
constructor(hostRef) {
|
|
1792
|
+
registerInstance(this, hostRef);
|
|
1793
|
+
this.textDisplay = "inline";
|
|
1794
|
+
this.maxLength = 45;
|
|
1795
|
+
this.textLines = undefined;
|
|
1796
|
+
this.description = "This is a tooltip text placeholder";
|
|
1797
|
+
this.zIndex = "z-auto";
|
|
1798
|
+
this.position = "bottom";
|
|
1799
|
+
this.styles = undefined;
|
|
1800
|
+
this.mode = "text-only";
|
|
1801
|
+
this.theme = "standard";
|
|
1802
|
+
this.width = "default";
|
|
1803
|
+
this.hideOnMobile = false;
|
|
1804
|
+
this.isSmallScreen = undefined;
|
|
1805
|
+
this.noOverflow = false;
|
|
1806
|
+
}
|
|
1807
|
+
addTruncatedClass() {
|
|
1808
|
+
const appRoot = this.el;
|
|
1809
|
+
const text = appRoot.querySelectorAll(".ellipsis-by-line-boxing");
|
|
1810
|
+
text.forEach((t) => {
|
|
1811
|
+
t.classList[t.scrollHeight > t.clientHeight ? "add" : "remove"]("truncated");
|
|
1812
|
+
});
|
|
1813
|
+
}
|
|
1814
|
+
windowResize() {
|
|
1815
|
+
this.verifiyScreenSize();
|
|
1816
|
+
}
|
|
1817
|
+
verifiyScreenSize() {
|
|
1818
|
+
this.isSmallScreen = window.innerWidth < 768;
|
|
1819
|
+
}
|
|
1820
|
+
// Created this function to initialize the truncate function on specific elements like tabs
|
|
1821
|
+
enableAddTruncatedClass(element) {
|
|
1822
|
+
const allTabHeaders = document.querySelectorAll(element);
|
|
1823
|
+
for (const element of Array.from(allTabHeaders)) {
|
|
1824
|
+
let tabHeader = element;
|
|
1825
|
+
if (tabHeader) {
|
|
1826
|
+
tabHeader.addEventListener("click", () => {
|
|
1827
|
+
setTimeout(() => {
|
|
1828
|
+
this.addTruncatedClass();
|
|
1829
|
+
}, 100);
|
|
1830
|
+
});
|
|
1831
|
+
}
|
|
1832
|
+
}
|
|
1833
|
+
}
|
|
1834
|
+
componentWillLoad() {
|
|
1835
|
+
this.verifiyScreenSize();
|
|
1836
|
+
}
|
|
1837
|
+
componentDidLoad() {
|
|
1838
|
+
//this.addTruncatedClass();
|
|
1839
|
+
setTimeout(() => {
|
|
1840
|
+
this.addTruncatedClass();
|
|
1841
|
+
}, 1000);
|
|
1842
|
+
this.enableAddTruncatedClass("tab-header");
|
|
1843
|
+
this.enableAddTruncatedClass("ptc-ellipsis-dropdown");
|
|
1844
|
+
this.enableAddTruncatedClass("ptc-product-card");
|
|
1845
|
+
document.addEventListener("readystatechange", () => {
|
|
1846
|
+
if (document.readyState === "complete") {
|
|
1847
|
+
this.addTruncatedClass();
|
|
1848
|
+
}
|
|
1849
|
+
});
|
|
1850
|
+
}
|
|
1851
|
+
render() {
|
|
1852
|
+
if (this.mode == "wrapper") {
|
|
1853
|
+
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 }))))));
|
|
1854
|
+
}
|
|
1855
|
+
else {
|
|
1856
|
+
const classMap = this.getCssClassMap();
|
|
1857
|
+
const cutOff = this.getLineCuttoff();
|
|
1858
|
+
let truncatedText = this.description.substring(0, this.maxLength);
|
|
1859
|
+
if (this.description.length > this.maxLength) {
|
|
1860
|
+
//const lastSpace = truncatedText.lastIndexOf(' ');
|
|
1861
|
+
//truncatedText = truncatedText.substring(0, lastSpace);
|
|
1862
|
+
truncatedText += "... ";
|
|
1863
|
+
}
|
|
1864
|
+
return (h(Host, { class: {
|
|
1865
|
+
[this.textDisplay]: true,
|
|
1866
|
+
[this.width]: true,
|
|
1867
|
+
"no-overflow": this.noOverflow,
|
|
1868
|
+
} }, 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 })))));
|
|
1869
|
+
}
|
|
1870
|
+
}
|
|
1871
|
+
getCssClassMap() {
|
|
1872
|
+
return {
|
|
1873
|
+
// ['ellipsis-by-line-boxing']: this.textLines && this.textLines > 0,
|
|
1874
|
+
["text-ellipsis"]: true,
|
|
1875
|
+
[this.zIndex]: this.description.length > this.maxLength ? true : false,
|
|
1876
|
+
["truncated"]: this.description.length > this.maxLength && !this.textLines
|
|
1877
|
+
? true
|
|
1878
|
+
: false,
|
|
1879
|
+
};
|
|
1880
|
+
}
|
|
1881
|
+
getLineCuttoff() {
|
|
1882
|
+
let result;
|
|
1883
|
+
if (this.textLines && this.textLines > 0) {
|
|
1884
|
+
result = {
|
|
1885
|
+
["-webkit-line-clamp"]: `${this.textLines}`,
|
|
1886
|
+
};
|
|
1887
|
+
}
|
|
1888
|
+
return result;
|
|
1889
|
+
}
|
|
1890
|
+
get el() { return getElement(this); }
|
|
1891
|
+
};
|
|
1892
|
+
PtcTooltip.style = ptcTooltipCss;
|
|
1893
|
+
|
|
1894
|
+
export { IconAsset as icon_asset, ListItem as list_item, MaxWidthContainer as max_width_container, PtcBackgroundVideo as ptc_background_video, PtcBreadcrumb as ptc_breadcrumb, PtcButton as ptc_button, PtcImg as ptc_img, PtcJumbotron as ptc_jumbotron, PtcPara as ptc_para, PtcPicture as ptc_picture, PtcSpacer as ptc_spacer, PtcSubnavV2 as ptc_subnav_v2, PtcTitle as ptc_title, PtcTooltip as ptc_tooltip };
|