@ptcwebops/ptcw-design 0.6.8 → 0.7.0
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/{icon-asset_13.cjs.entry.js → dropdown-item_19.cjs.entry.js} +539 -343
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/ptc-checkbox.cjs.entry.js +42 -0
- package/dist/cjs/ptc-dropdown.cjs.entry.js +75 -0
- package/dist/cjs/ptc-filter-tag.cjs.entry.js +67 -0
- package/dist/cjs/ptc-icon-minimize.cjs.entry.js +46 -0
- package/dist/cjs/ptc-link.cjs.entry.js +53 -0
- package/dist/cjs/ptc-modal.cjs.entry.js +162 -0
- package/dist/cjs/ptc-picture.cjs.entry.js +0 -1
- package/dist/cjs/ptcw-design.cjs.js +1 -1
- package/dist/collection/components/ptc-checkbox/ptc-checkbox.css +1 -1
- package/dist/collection/components/ptc-img/ptc-img.js +0 -1
- package/dist/collection/components/ptc-picture/ptc-picture.js +0 -1
- package/dist/collection/components/ptc-pricing-block/ptc-pricing-block.css +0 -1
- package/dist/collection/components/ptc-tab-list/ptc-tab-list.css +2 -2
- package/dist/collection/components/tab-header/tab-header.css +4 -3
- package/dist/custom-elements/index.js +4 -6
- package/dist/esm/{icon-asset_13.entry.js → dropdown-item_19.entry.js} +529 -339
- package/dist/esm/loader.js +1 -1
- package/dist/esm/ptc-checkbox.entry.js +38 -0
- package/dist/esm/ptc-dropdown.entry.js +71 -0
- package/dist/esm/ptc-filter-tag.entry.js +63 -0
- package/dist/esm/ptc-icon-minimize.entry.js +42 -0
- package/dist/esm/ptc-link.entry.js +49 -0
- package/dist/esm/ptc-modal.entry.js +158 -0
- package/dist/esm/ptc-picture.entry.js +0 -1
- package/dist/esm/ptcw-design.js +1 -1
- package/dist/ptcw-design/p-13d45895.entry.js +1 -0
- package/dist/ptcw-design/p-3ef2b02f.entry.js +1 -0
- package/dist/ptcw-design/{p-848f34bb.entry.js → p-62e7565c.entry.js} +1 -1
- package/dist/ptcw-design/p-6c034edd.entry.js +1 -0
- package/dist/ptcw-design/p-704bf1cd.entry.js +1 -0
- package/dist/ptcw-design/p-75a36c38.entry.js +1 -0
- package/dist/ptcw-design/p-92d95119.entry.js +1 -0
- package/dist/ptcw-design/p-c7e63622.entry.js +1 -0
- package/dist/ptcw-design/ptcw-design.esm.js +1 -1
- package/package.json +1 -1
- package/readme.md +1 -1
- package/dist/cjs/dropdown-item.cjs.entry.js +0 -21
- package/dist/cjs/list-item.cjs.entry.js +0 -30
- package/dist/cjs/ptc-ellipsis-dropdown.cjs.entry.js +0 -48
- package/dist/cjs/ptc-hero.cjs.entry.js +0 -29
- package/dist/cjs/ptc-img.cjs.entry.js +0 -160
- package/dist/cjs/ptc-overlay.cjs.entry.js +0 -31
- package/dist/cjs/ptc-previous-url.cjs.entry.js +0 -19
- package/dist/cjs/ptc-pricing-block.cjs.entry.js +0 -26
- package/dist/cjs/ptc-svg-btn.cjs.entry.js +0 -94
- package/dist/cjs/ptc-tab-list.cjs.entry.js +0 -129
- package/dist/cjs/tab-content.cjs.entry.js +0 -37
- package/dist/cjs/tab-header.cjs.entry.js +0 -54
- package/dist/esm/dropdown-item.entry.js +0 -17
- package/dist/esm/list-item.entry.js +0 -26
- package/dist/esm/ptc-ellipsis-dropdown.entry.js +0 -44
- package/dist/esm/ptc-hero.entry.js +0 -25
- package/dist/esm/ptc-img.entry.js +0 -156
- package/dist/esm/ptc-overlay.entry.js +0 -27
- package/dist/esm/ptc-previous-url.entry.js +0 -15
- package/dist/esm/ptc-pricing-block.entry.js +0 -22
- package/dist/esm/ptc-svg-btn.entry.js +0 -90
- package/dist/esm/ptc-tab-list.entry.js +0 -125
- package/dist/esm/tab-content.entry.js +0 -33
- package/dist/esm/tab-header.entry.js +0 -50
- package/dist/ptcw-design/p-09abf994.entry.js +0 -1
- package/dist/ptcw-design/p-2469a843.entry.js +0 -1
- package/dist/ptcw-design/p-2f0223da.entry.js +0 -1
- package/dist/ptcw-design/p-33b70553.entry.js +0 -1
- package/dist/ptcw-design/p-3f65b998.entry.js +0 -1
- package/dist/ptcw-design/p-6956e9cf.entry.js +0 -1
- package/dist/ptcw-design/p-70693e51.entry.js +0 -1
- package/dist/ptcw-design/p-831f5c16.entry.js +0 -1
- package/dist/ptcw-design/p-a0ddea6e.entry.js +0 -1
- package/dist/ptcw-design/p-ab716377.entry.js +0 -1
- package/dist/ptcw-design/p-b1354b54.entry.js +0 -1
- package/dist/ptcw-design/p-b30ba340.entry.js +0 -1
- package/dist/ptcw-design/p-f2d7ecd0.entry.js +0 -1
package/dist/cjs/loader.cjs.js
CHANGED
|
@@ -14,7 +14,7 @@ const patchEsm = () => {
|
|
|
14
14
|
const defineCustomElements = (win, options) => {
|
|
15
15
|
if (typeof window === 'undefined') return Promise.resolve();
|
|
16
16
|
return patchEsm().then(() => {
|
|
17
|
-
return index.bootstrapLazy([["ptc-dynamic-card.cjs",[[1,"ptc-dynamic-card",{"cardType":[1,"card-type"],"cardTitle":[1,"card-title"],"cardImgSrc":[1,"card-img-src"],"cardImgAlt":[1,"card-img-alt"],"cardStatus":[32]},[[2,"click","handleClick"],[9,"resize","handleResize"]]]]],["ptc-
|
|
17
|
+
return index.bootstrapLazy([["ptc-dynamic-card.cjs",[[1,"ptc-dynamic-card",{"cardType":[1,"card-type"],"cardTitle":[1,"card-title"],"cardImgSrc":[1,"card-img-src"],"cardImgAlt":[1,"card-img-alt"],"cardStatus":[32]},[[2,"click","handleClick"],[9,"resize","handleResize"]]]]],["ptc-breadcrumb.cjs",[[1,"ptc-breadcrumb"]]],["ptc-card.cjs",[[1,"ptc-card",{"cardType":[1,"card-type"],"cardHref":[1,"card-href"],"target":[1],"rel":[1],"hasImage":[4,"has-image"],"hasVideo":[4,"has-video"],"hasLottie":[4,"has-lottie"],"heading":[1],"headingTransform":[1,"heading-transform"],"cardDate":[1,"card-date"],"styles":[1],"ribbonText":[1,"ribbon-text"],"eventType":[1,"event-type"],"cardLogo":[1,"card-logo"]}]]],["ptc-collapse-list.cjs",[[1,"ptc-collapse-list",{"listItems":[1040],"placeholderText":[1025,"placeholder-text"],"debounceUpdateDelay":[1026,"debounce-update-delay"],"data":[32],"searchText":[32],"header":[32],"selectedValue":[32],"selectedItems":[32],"hashMap":[32],"debouncedUpdatedEvent":[32],"refreshBuffer":[32],"removeSelectedItem":[64],"addSelectedItem":[64]}]]],["ptc-announcement.cjs",[[1,"ptc-announcement",{"barTitle":[1,"bar-title"],"Description":[1,"description"],"linkText":[513,"link-text"],"linkTitle":[513,"link-title"],"visible":[1540],"linkUrl":[513,"link-url"],"tempContainer":[4,"temp-container"],"target":[1]}]]],["ptc-checkbox.cjs",[[1,"ptc-checkbox",{"checked":[1025],"value":[1025],"inputName":[1,"input-name"]}]]],["ptc-dropdown.cjs",[[1,"ptc-dropdown",{"theme":[1],"label":[1],"listItems":[16],"toggle":[32],"selectedItem":[32]},[[4,"click","offClick"]]]]],["ptc-filter-tag.cjs",[[1,"ptc-filter-tag",{"theme":[1],"iconColorMap":[32]}]]],["ptc-icon-minimize.cjs",[[1,"ptc-icon-minimize",{"heading":[1025],"opened":[1028]}]]],["ptc-link.cjs",[[1,"ptc-link",{"disabled":[516],"external":[516],"href":[1],"target":[1],"linkTitle":[1,"link-title"],"theme":[1],"uppercase":[4],"fontSize":[1,"font-size"]}]]],["ptc-list.cjs",[[1,"ptc-list",{"listType":[1,"list-type"],"listItems":[16]}]]],["ptc-lottie.cjs",[[1,"ptc-lottie",{"jsonSrc":[1025,"json-src"],"speed":[1026]}]]],["ptc-mobile-select.cjs",[[0,"ptc-mobile-select",{"triggerName":[1,"trigger-name"],"selectedText":[1,"selected-text"],"wheelData":[1040],"selectedId":[1,"selected-id"],"ensureBtnText":[1,"ensure-btn-text"],"cancelBtnText":[1,"cancel-btn-text"],"listTitle":[1,"list-title"],"linkUrl":[1025,"link-url"]}]]],["ptc-quote.cjs",[[1,"ptc-quote",{"quoteType":[1025,"quote-type"],"quoteName":[1025,"quote-name"],"ctaText":[1,"cta-text"],"ctaUrl":[1,"cta-url"],"imgSrc":[1,"img-src"],"imgTitle":[1,"img-title"]}]]],["ptc-social-share.cjs",[[1,"ptc-social-share",{"display":[1],"shareType":[1,"share-type"],"shareTitle":[1,"share-title"],"text":[1],"url":[1],"source":[1],"recipient":[1],"isHover":[32]}]]],["my-component.cjs",[[1,"my-component",{"first":[1],"middle":[1],"last":[1]}]]],["ptc-accordion.cjs",[[1,"ptc-accordion",{"multiple":[4]},[[0,"opened","openHandler"]]]]],["ptc-accordion-item.cjs",[[1,"ptc-accordion-item",{"heading":[1],"headingTag":[1,"heading-tag"],"autoHeight":[4,"auto-height"],"active":[1540],"hasHeadingSlot":[32],"hasArrowSlot":[32],"toggle":[64],"close":[64],"open":[64]}]]],["ptc-card-bottom.cjs",[[1,"ptc-card-bottom",{"cardType":[1,"card-type"],"styles":[1]}]]],["ptc-card-plm.cjs",[[1,"ptc-card-plm",{"cardType":[1,"card-type"],"cardLink":[1,"card-link"],"linkTitle":[1,"link-title"],"linkTarget":[1,"link-target"]}]]],["ptc-hero-footer-cta.cjs",[[6,"ptc-hero-footer-cta",{"ctaTitle":[1,"cta-title"],"description":[1],"backgroundImage":[1,"background-image"]}]]],["ptc-icon-list.cjs",[[1,"ptc-icon-list",{"listType":[1,"list-type"],"valueWithUnit":[1,"value-with-unit"],"valueText":[1,"value-text"],"listContent":[1,"list-content"],"isLastItem":[4,"is-last-item"]}]]],["ptc-minimized-footer.cjs",[[1,"ptc-minimized-footer"]]],["ptc-minimized-header.cjs",[[1,"ptc-minimized-header",{"linkUrl":[513,"link-url"],"imgSrc":[513,"img-src"],"imgAlt":[513,"img-alt"]}]]],["ptc-modal.cjs",[[1,"ptc-modal",{"iframeUrl":[1025,"iframe-url"],"size":[1025],"show":[1028],"overlay":[1028],"closeOnBlur":[1028,"close-on-blur"],"rounded":[1028],"showHeaderFooter":[1028,"show-header-footer"],"overlayHeight":[32],"bodyOverflowSetting":[32]}]]],["ptc-nav.cjs",[[1,"ptc-nav"]]],["ptc-nav-item.cjs",[[1,"ptc-nav-item",{"url":[1025],"label":[1025],"ariaExpanded":[1028,"aria-expanded"],"depth":[1538],"hasChildren":[1028,"has-children"],"parentExpanded":[1540,"parent-expanded"],"navType":[1,"nav-type"]},[[0,"handleClick","handleClick"],[9,"resize","handleResize"]]]]],["ptc-pagenation.cjs",[[1,"ptc-pagenation",{"totalCount":[2,"total-count"],"numberOfItems":[2,"number-of-items"],"previousValue":[1,"previous-value"],"lastValue":[1,"last-value"],"minPageNumber":[2,"min-page-number"],"maxPageNumber":[2,"max-page-number"],"clickedPageNumber":[2,"clicked-page-number"],"appendArray":[4,"append-array"],"prevArrowImg":[1,"prev-arrow-img"],"nextArrowImg":[1,"next-arrow-img"],"pageNumbers":[32]}]]],["ptc-responsive-wrapper.cjs",[[1,"ptc-responsive-wrapper"]]],["ptc-span.cjs",[[1,"ptc-span",{"spanStyle":[1,"span-style"],"display":[1],"styles":[1]}]]],["ptc-two-column-media.cjs",[[1,"ptc-two-column-media",{"componentType":[1,"component-type"]}]]],["lottie-player.cjs",[[1,"lottie-player",{"mode":[1],"autoplay":[4],"background":[513],"controls":[4],"count":[2],"direction":[2],"hover":[4],"loop":[516],"renderer":[1],"speed":[2],"src":[1],"currentState":[1,"current-state"],"seeker":[8],"intermission":[2],"play":[64],"pause":[64],"stop":[64],"seek":[64],"getLottie":[64],"setSpeed":[64],"setDirection":[64],"setLooping":[64],"togglePlay":[64],"toggleLooping":[64]}]]],["ptc-card-content.cjs",[[1,"ptc-card-content",{"cardType":[1,"card-type"],"styles":[1]}]]],["ptc-date.cjs",[[1,"ptc-date",{"year":[2],"month":[2],"day":[2],"country":[1],"dateString":[1,"date-string"],"dateColor":[1,"date-color"],"dateStyles":[1,"date-styles"],"dataSize":[1,"data-size"]}]]],["ptc-picture.cjs",[[1,"ptc-picture",{"src":[1],"alt":[1],"sizeXs":[1025,"size-xs"],"sizeSm":[1025,"size-sm"],"sizeMd":[1025,"size-md"],"sizeLg":[1025,"size-lg"],"imagePosition":[1,"image-position"],"borderRadius":[1,"border-radius"],"height":[1],"width":[1],"objectFit":[1,"object-fit"],"isFullHeight":[4,"is-full-height"],"isFullWidth":[4,"is-full-width"],"styles":[1],"imageAlignment":[1,"image-alignment"],"maxWidth":[1,"max-width"],"oldSrc":[32]},[[9,"resize","WindowResize"]]]]],["dropdown-item_19.cjs",[[4,"ptc-tab-list",{"selectedValue":[32]},[[0,"tabClicked","onSelectedTab"],[9,"resize","calculateHeaderTabsRendering"]]],[1,"ptc-hero",{"heroType":[1,"hero-type"],"bgUrl":[1,"bg-url"]}],[1,"ptc-previous-url",{"href":[1],"text":[1]}],[1,"ptc-container",{"backgroundColor":[1,"background-color"],"elevation":[1],"containerType":[1,"container-type"],"spacing":[1]}],[1,"ptc-para",{"fontSize":[1,"font-size"],"fontWeight":[1,"font-weight"],"paraStyle":[1,"para-style"],"paraColor":[1,"para-color"],"paraLineH":[1,"para-line-h"],"paraMargin":[1,"para-margin"]}],[1,"ptc-pricing-block",{"active":[1]}],[1,"ptc-shopping-cart",{"cartCount":[1,"cart-count"],"color":[1]}],[1,"ptc-spacer",{"breakpoint":[1],"size":[1],"direction":[1]}],[4,"tab-content",{"name":[1],"isSelected":[32],"getChild":[64]}],[4,"tab-header",{"name":[1],"isSelected":[32],"getChild":[64]}],[1,"ptc-ellipsis-dropdown",{"dataItems":[16],"selectedTab":[1,"selected-tab"],"isDropdownOpen":[32]},[[4,"click","offClick"]]],[1,"ptc-button",{"disabled":[516],"type":[1],"color":[1],"iconAnimation":[1,"icon-animation"],"iconPosition":[1,"icon-position"],"linkHref":[1,"link-href"],"linkTitle":[1,"link-title"],"target":[1],"rel":[1],"tabNav":[2,"tab-nav"],"styles":[1]}],[4,"ptc-img",{"sizeXs":[1025,"size-xs"],"sizeSm":[1025,"size-sm"],"sizeMd":[1025,"size-md"],"sizeLg":[1025,"size-lg"],"imgUrl":[1,"img-url"],"imageType":[1,"image-type"],"borderRadius":[1,"border-radius"],"loadMode":[1,"load-mode"]},[[9,"resize","WindowResize"]]],[6,"ptc-title",{"isPlmHub":[4,"is-plm-hub"],"type":[1],"textAlign":[1,"text-align"],"upperline":[1],"titleShadow":[1,"title-shadow"],"titleMargin":[1,"title-margin"],"titleWeight":[1,"title-weight"],"titleSize":[1,"title-size"],"titleHeight":[1,"title-height"],"styles":[1]}],[4,"dropdown-item",{"linkHref":[1,"link-href"],"linkTarget":[1,"link-target"]}],[1,"ptc-overlay",{"filterColor":[1,"filter-color"],"borderRadius":[1,"border-radius"],"overlayZIndex":[1,"overlay-z-index"],"styles":[1]}],[1,"ptc-svg-btn",{"svgName":[1,"svg-name"],"display":[1]}],[1,"list-item",{"listType":[1,"list-type"],"linkHref":[1,"link-href"],"flushBefore":[4,"flush-before"],"linkTarget":[1,"link-target"]}],[2,"icon-asset",{"name":[1],"size":[1],"type":[1],"spin":[1],"pulse":[1],"color":[1],"isMobileSelect":[4,"is-mobile-select"],"injectedStyle":[1,"injected-style"]}]]]], options);
|
|
18
18
|
});
|
|
19
19
|
};
|
|
20
20
|
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
const index = require('./index-b3fabe79.js');
|
|
6
|
+
|
|
7
|
+
const ptcCheckboxCss = ":host{display:block}:host .ptc-checkbox{display:block;position:relative;user-select:none;cursor:pointer;font-family:\"Raleway\";font-style:normal;color:var(--color-gray-10);padding-left:var(--spacing-lg);font-weight:var(--ptc-font-weight-regular);font-size:var(--ptc-font-size-x-small);line-height:var(--ptc-line-height-densest)}:host .ptc-checkbox input{position:absolute;opacity:0;cursor:pointer;height:0;width:0}:host .ptc-checkbox .check{position:absolute;top:0;left:0;height:1.375rem;width:1.375rem;background-color:var(--color-white);border:1px solid var(--color-gray-07);box-sizing:border-box;border-radius:4px}:host .ptc-checkbox .check .mark{position:absolute;transition:opacity ease-out 250ms;opacity:0;left:3px;top:2px;width:1.375rem;height:1.375rem}:host .ptc-checkbox input:checked~.check{background-color:#1F2024}:host .ptc-checkbox input:checked~.check .mark{opacity:1}:host .ptc-checkbox:hover input~.check{background-color:#E4E7E9}:host .ptc-checkbox:hover input:checked~.check{background-color:#33353A}";
|
|
8
|
+
|
|
9
|
+
let PtcCheckbox = class {
|
|
10
|
+
constructor(hostRef) {
|
|
11
|
+
index.registerInstance(this, hostRef);
|
|
12
|
+
this.checkedChanged = index.createEvent(this, "checkedChanged", 7);
|
|
13
|
+
this.checked = 'unchecked';
|
|
14
|
+
this.handleClick = (e) => {
|
|
15
|
+
let input = this.host.shadowRoot.querySelector('input');
|
|
16
|
+
if (this.checked == 'unchecked') {
|
|
17
|
+
this.checked = 'checked';
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
this.checked = 'unchecked';
|
|
21
|
+
}
|
|
22
|
+
let parameter = {
|
|
23
|
+
event: e,
|
|
24
|
+
sender: input,
|
|
25
|
+
value: this.value,
|
|
26
|
+
checked: this.checked
|
|
27
|
+
};
|
|
28
|
+
this.checkedChanged.emit(parameter);
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
componentDidLoad() {
|
|
32
|
+
let input = this.host.shadowRoot.querySelector('input');
|
|
33
|
+
input.checked = this.checked == 'checked';
|
|
34
|
+
}
|
|
35
|
+
render() {
|
|
36
|
+
return (index.h(index.Host, null, index.h("label", { class: "ptc-checkbox" }, index.h("slot", null), index.h("input", { type: "checkbox", checked: this.checked == "checked", name: this.inputName, value: this.value, onChange: (e) => this.handleClick(e) }), index.h("span", { class: "check" }, index.h("span", { class: "mark" }, index.h("icon-asset", { type: "ptc", color: "white", size: "xx-small", name: "checkmark" }))))));
|
|
37
|
+
}
|
|
38
|
+
get host() { return index.getElement(this); }
|
|
39
|
+
};
|
|
40
|
+
PtcCheckbox.style = ptcCheckboxCss;
|
|
41
|
+
|
|
42
|
+
exports.ptc_checkbox = PtcCheckbox;
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
const index = require('./index-b3fabe79.js');
|
|
6
|
+
|
|
7
|
+
const ptcDropdownCss = "@charset \"UTF-8\";:host{position:relative}:host .dropdown__header{cursor:pointer;transition:background-color ease-out 250ms, border-color ease-out 250ms;background-color:var(--color-white);display:flex;align-items:center;align-content:center;border:1px solid var(--color-gray-05);padding:0.25rem 0.75rem 0.25rem 0.75rem;border-radius:4px;font-family:Raleway;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0em;text-align:left}:host .dropdown__header b{font-weight:600}:host .dropdown__header icon-asset{width:1rem;height:1rem;margin-left:0.5rem}:host .dropdown__header:hover{background-color:var(--color-gray-02)}:host .dropdown__list{display:table;border:1px solid rgba(0, 0, 0, 0.24);border-radius:8px}:host ul{display:block;top:0.2rem;right:0.2rem;margin:0;list-style-type:none;padding-inline-start:0;padding:0.25rem 0.25rem;background-color:var(--color-gray-02);cursor:pointer;position:absolute;z-index:500}:host ul li{white-space:nowrap;padding:3px 1rem;font-weight:500}:host ul li.selected:before{content:\"✓\";display:block;position:absolute;left:0.4rem}:host ul li:hover{color:#fff;background-color:#699af8;border-radius:4px}.ptc-dropdown{position:relative}";
|
|
8
|
+
|
|
9
|
+
let PtcDropdown = class {
|
|
10
|
+
constructor(hostRef) {
|
|
11
|
+
index.registerInstance(this, hostRef);
|
|
12
|
+
this.clickedItem = index.createEvent(this, "clickedItem", 7);
|
|
13
|
+
/**
|
|
14
|
+
* Theme
|
|
15
|
+
*/
|
|
16
|
+
this.theme = 'sort';
|
|
17
|
+
this.toggle = false;
|
|
18
|
+
this.handleClick = (item) => {
|
|
19
|
+
this.listItems.forEach((item) => item.selected = undefined);
|
|
20
|
+
item.selected = true;
|
|
21
|
+
this.selectedItem = item;
|
|
22
|
+
this.toggle = !this.toggle;
|
|
23
|
+
this.clickedItem.emit(item);
|
|
24
|
+
};
|
|
25
|
+
this.toggleList = () => {
|
|
26
|
+
this.toggle = !this.toggle;
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
offClick(e) {
|
|
30
|
+
if (e && !this.host.contains(e.target) && this.toggle) {
|
|
31
|
+
this.toggle = false;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
componentWillLoad() {
|
|
35
|
+
let items = this.host.querySelectorAll('item');
|
|
36
|
+
if (!this.listItems) {
|
|
37
|
+
this.listItems = [];
|
|
38
|
+
}
|
|
39
|
+
items.forEach(item => {
|
|
40
|
+
if (item && item.getAttribute('label')) {
|
|
41
|
+
let listItem = {
|
|
42
|
+
element: item,
|
|
43
|
+
label: item.getAttribute('label'),
|
|
44
|
+
value: item.getAttribute('value'),
|
|
45
|
+
selected: item.hasAttribute('selected')
|
|
46
|
+
};
|
|
47
|
+
this.listItems.push(listItem);
|
|
48
|
+
if (item.hasAttribute('selected')) {
|
|
49
|
+
this.selectedItem = listItem;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
render() {
|
|
55
|
+
const classMap = this.getCssClassMap();
|
|
56
|
+
return (index.h("div", { class: classMap }, index.h("header", { class: "dropdown__header", onClick: this.toggleList }, index.h("label", null, index.h("b", null, this.label), " ", this.selectedItem ? this.selectedItem.label : "Select Option"), index.h("icon-asset", { type: "solid", size: "x-small", name: "chevron-down" })), this.toggle &&
|
|
57
|
+
index.h("ul", { tabIndex: -1, class: "dropdown__list", onBlur: () => { this.toggle = false; } }, this.listItems.map((item) => {
|
|
58
|
+
let cssClass = "dropdown__item";
|
|
59
|
+
if (item.selected) {
|
|
60
|
+
cssClass += " selected";
|
|
61
|
+
}
|
|
62
|
+
return (index.h("li", { class: cssClass, onClick: () => this.handleClick(item) }, item.label));
|
|
63
|
+
}))));
|
|
64
|
+
}
|
|
65
|
+
getCssClassMap() {
|
|
66
|
+
return {
|
|
67
|
+
['ptc-dropdown']: true,
|
|
68
|
+
[this.theme]: true
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
get host() { return index.getElement(this); }
|
|
72
|
+
};
|
|
73
|
+
PtcDropdown.style = ptcDropdownCss;
|
|
74
|
+
|
|
75
|
+
exports.ptc_dropdown = PtcDropdown;
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
const index = require('./index-b3fabe79.js');
|
|
6
|
+
|
|
7
|
+
const ptcFilterTagCss = ".ptc-filter-tag{display:block;cursor:pointer;position:relative;margin:0.25rem}.ptc-filter-tag.bubble{display:inline-block;font-family:Raleway;font-size:var(--ptc-font-size-xx-small);font-weight:var(--ptc-font-weight-semibold);line-height:var(--ptc-line-height-denser);letter-spacing:var(--ptc-letter-spacing-normal);text-align:left;align-items:center;transition:border-color ease-out 250ms;border:1px solid var(--color-gray-05);border-radius:999px;padding:0.375rem 1.875rem 0.375rem 0.875rem;background:var(--color-white)}.ptc-filter-tag.bubble:hover{border:1px solid var(--color-gray-12)}.ptc-filter-tag.bubble .cls{display:block;position:absolute;top:0.35rem;right:0.8rem}.ptc-filter-tag.link,.ptc-filter-tag.link-lg{display:inline-block;font-family:Raleway;font-size:var(--ptc-font-size-x-small);font-weight:var(--ptc-font-weight-semibold);line-height:var(--ptc-line-height-denser);letter-spacing:var(--ptc-letter-spacing-normal);text-align:right;border-bottom:1px solid transparent;background:var(--color-white)}.ptc-filter-tag.link:hover,.ptc-filter-tag.link-lg:hover{text-decoration:underline}.ptc-filter-tag.link .cls,.ptc-filter-tag.link-lg .cls{display:none}.ptc-filter-tag.link-lg{font-size:var(--ptc-font-size-small);font-weight:var(--ptc-font-weight-bold)}.ptc-filter-tag.button{background:var(--color-gray-10);border-radius:var(--ptc-border-radius-standard);padding:0.625rem 1rem;font-family:\"Raleway\";font-style:normal;font-size:var(--ptc-font-size-x-small);font-weight:var(--ptc-font-weight-semibold);line-height:var(--ptc-line-height-denser);color:var(--color-white)}.ptc-filter-tag.button:hover{background-color:var(--color-gray-12)}.ptc-filter-tag.button:active{background-color:var(--color-black)}.ptc-filter-tag.button .cls{display:none}.ptc-filter-tag.standard{display:inline-flex;background:var(--color-gray-10);font-family:\"Raleway\";font-style:normal;font-size:var(--ptc-font-size-x-small);font-weight:var(--ptc-font-weight-bold);line-height:var(--ptc-line-height-denser);color:var(--color-green-07);background-color:transparent}.ptc-filter-tag.standard .cls{display:block;margin-left:0.25rem}";
|
|
8
|
+
|
|
9
|
+
let PtcFilterTag = class {
|
|
10
|
+
constructor(hostRef) {
|
|
11
|
+
index.registerInstance(this, hostRef);
|
|
12
|
+
this.clicked = index.createEvent(this, "clicked", 7);
|
|
13
|
+
this.theme = 'bubble';
|
|
14
|
+
this.handleClick = () => {
|
|
15
|
+
this.clicked.emit(this);
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
componentWillLoad() {
|
|
19
|
+
this.iconColorMap = {
|
|
20
|
+
'bubble': {
|
|
21
|
+
'hover': 'black',
|
|
22
|
+
'standard': 'light-gray'
|
|
23
|
+
},
|
|
24
|
+
'standard': {
|
|
25
|
+
'hover': 'ptc-green',
|
|
26
|
+
'standard': 'black'
|
|
27
|
+
},
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
handleMouseEnter() {
|
|
31
|
+
this.updateIconColor('hover');
|
|
32
|
+
}
|
|
33
|
+
handleMouseLeave() {
|
|
34
|
+
this.updateIconColor('standard');
|
|
35
|
+
}
|
|
36
|
+
updateIconColor(state) {
|
|
37
|
+
let icon = this.el.shadowRoot.querySelector('icon-asset');
|
|
38
|
+
if (icon) {
|
|
39
|
+
if (this.iconColorMap[this.theme]) {
|
|
40
|
+
icon.setAttribute('color', this.iconColorMap[this.theme][state]);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
render() {
|
|
45
|
+
const classMap = this.getCssClassMap();
|
|
46
|
+
let icon;
|
|
47
|
+
switch (this.theme) {
|
|
48
|
+
case 'bubble':
|
|
49
|
+
icon = (index.h("icon-asset", { class: "cls", type: "ptc", color: "light-gray", name: "times", size: "micro" }));
|
|
50
|
+
break;
|
|
51
|
+
case 'standard':
|
|
52
|
+
icon = (index.h("icon-asset", { class: "cls", type: "ptc", color: "black", name: "times", size: "xxx-small" }));
|
|
53
|
+
break;
|
|
54
|
+
}
|
|
55
|
+
return (index.h(index.Host, null, index.h("span", { class: classMap, onClick: () => this.handleClick(), onMouseEnter: () => this.handleMouseEnter(), onMouseLeave: () => this.handleMouseLeave() }, index.h("slot", null), icon)));
|
|
56
|
+
}
|
|
57
|
+
getCssClassMap() {
|
|
58
|
+
return {
|
|
59
|
+
['ptc-filter-tag']: true,
|
|
60
|
+
[this.theme]: true
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
get el() { return index.getElement(this); }
|
|
64
|
+
};
|
|
65
|
+
PtcFilterTag.style = ptcFilterTagCss;
|
|
66
|
+
|
|
67
|
+
exports.ptc_filter_tag = PtcFilterTag;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
const index = require('./index-b3fabe79.js');
|
|
6
|
+
|
|
7
|
+
const ptcIconMinimizeCss = ".content{transition:max-height ease-out 250ms;overflow:hidden;max-height:0}.ptc-icon-minimize .header{display:flex;justify-content:space-between;align-items:center;align-content:center}.ptc-icon-minimize .header .title{color:var(--color-gray-10);font-family:\"Raleway\";font-style:normal;font-weight:var(--ptc-font-weight-bold);font-size:var(--ptc-font-size-x-small);line-height:var(--ptc-line-height-normal)}.ptc-icon-minimize .header .icon{cursor:pointer;border:1px solid var(--color-gray-10);border-radius:2px;transition:background-color ease-out 250ms;background-color:transparent;height:1.25rem;width:1.25rem;text-align:center;display:flex;align-items:center;justify-content:center}.ptc-icon-minimize .header .icon:hover{background-color:var(--color-gray-02)}.ptc-icon-minimize .header .icon icon-asset{position:relative;width:var(--ptc-font-size-xxx-small);height:var(--ptc-font-size-xxx-small);display:flex}";
|
|
8
|
+
|
|
9
|
+
let PtcIconMinimize = class {
|
|
10
|
+
constructor(hostRef) {
|
|
11
|
+
index.registerInstance(this, hostRef);
|
|
12
|
+
this.opened = true;
|
|
13
|
+
}
|
|
14
|
+
componentDidLoad() {
|
|
15
|
+
let content = this.host.shadowRoot.querySelector('.content');
|
|
16
|
+
if (this.opened && !content.style.maxHeight) {
|
|
17
|
+
content.style.maxHeight = content.scrollHeight + "px";
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
dropdownToggle() {
|
|
21
|
+
this.opened = !this.opened;
|
|
22
|
+
}
|
|
23
|
+
getScrollHeight() {
|
|
24
|
+
let result = undefined;
|
|
25
|
+
let content = this.host.shadowRoot.querySelector('.content');
|
|
26
|
+
if (this.opened && content) {
|
|
27
|
+
result = { 'max-height': content.scrollHeight + "px" };
|
|
28
|
+
}
|
|
29
|
+
else if (this.opened) {
|
|
30
|
+
result = { 'max-height': 350 + "px" };
|
|
31
|
+
}
|
|
32
|
+
else if (content && content.style.maxHeight) {
|
|
33
|
+
content.style.removeProperty('max-height');
|
|
34
|
+
}
|
|
35
|
+
return result;
|
|
36
|
+
}
|
|
37
|
+
render() {
|
|
38
|
+
let scrollHeight = this.getScrollHeight();
|
|
39
|
+
let icon = this.opened ? 'minus' : 'plus';
|
|
40
|
+
return (index.h("div", { class: "ptc-icon-minimize" }, index.h("div", { class: "header" }, index.h("div", { class: "title" }, this.heading), index.h("div", { class: "icon", onClick: () => this.dropdownToggle() }, index.h("icon-asset", { type: "ptc", color: "black", size: "xxx-small", name: icon }))), index.h("div", { class: "content", style: scrollHeight }, index.h("slot", null))));
|
|
41
|
+
}
|
|
42
|
+
get host() { return index.getElement(this); }
|
|
43
|
+
};
|
|
44
|
+
PtcIconMinimize.style = ptcIconMinimizeCss;
|
|
45
|
+
|
|
46
|
+
exports.ptc_icon_minimize = PtcIconMinimize;
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
const index = require('./index-b3fabe79.js');
|
|
6
|
+
|
|
7
|
+
const ptcLinkCss = ":host{display:block}.disabled{pointer-events:none;cursor:default;text-decoration:none}.ptc-link{display:inline-block;color:var(--color-gray-10);font-weight:var(--ptc-font-weight-black);position:relative;line-height:var(--ptc-line-height-normal);outline:none;text-decoration:none}.simple::after{content:\"\";position:absolute;width:100%;left:0px;bottom:2px;transition:opacity var(--ptc-transition-fast) var(--ptc-ease-inout);border-bottom:2px solid var(--color-green-07);opacity:0}.simple:hover.simple::after{opacity:1}.product-link{font-weight:var(--ptc-font-weight-extrabold);margin-top:var(--ptc-element-spacing-04)}.product-link::after{content:\"\";position:absolute;width:100%;left:0px;bottom:2px;transition:opacity var(--ptc-transition-fast) var(--ptc-ease-inout);border-bottom:2px solid var(--color-green-07);opacity:1;color:var(--color-green-07)}.product-link:hover.product-link{color:var(--color-green-07)}.product-link:hover.product-link::after{opacity:1}.arrow{margin-right:var(--ptc-element-spacing-01)}.arrow::after{position:absolute;display:block;content:\"\";width:var(--ptc-element-spacing-07);border-bottom:2px solid var(--color-green-07);bottom:1px;transition:width var(--ptc-transition-fast) var(--ptc-ease-inout)}.arrow:hover.arrow::after{width:100%}.underline{border-bottom:2px solid var(--color-green-07)}.underline:hover{color:#00890B;border-bottom:2px solid #00890B}.uppercase{text-transform:uppercase}.small{font-size:var(--ptc-font-size-xx-small)}.medium{font-size:var(--ptc-font-size-x-small)}.large{font-size:var(--ptc-font-size-medium)}.ptc-link.arrow icon-asset{position:absolute;right:-25px;transition:transform var(--ptc-transition-fast) var(--ptc-ease-inout);transform:translateY(2px)}.ptc-link.arrow icon-asset svg{fill:var(--color-green-07) !important}.ptc-link.arrow-plm icon-asset{position:absolute;right:-6.75px;transform:translate(100%, 3%)}.ptc-link.arrow-plm svg{fill:var(--color-green-07) !important}.ptc-link:hover.arrow icon-asset{transform:translate(var(--ptc-element-spacing-04), 2px)}.nav-title:focus,.nav-title-link:focus,.primary-nav-link:focus,.secondary-nav-link:focus,.footer-nav-link:focus,.copyright-link:focus{outline:3px solid var(--color-blue-07);outline-offset:2px}.nav-title{box-sizing:border-box;color:var(--color-white);display:inline-block;font-size:var(--ptc-font-size-x-small);font-stretch:100%;font-weight:var(--ptc-font-weight-extrabold);letter-spacing:var(--ptc-letter-spacing-normal);line-height:var(--ptc-line-height-dense);list-style:none;margin-bottom:var(--ptc-element-spacing-02);text-align:left}.primary-nav-link{background-color:transparent;box-sizing:border-box;color:var(--color-gray-01);display:inline-block;font-size:var(--ptc-font-size-x-small);font-stretch:100%;font-weight:var(--ptc-font-weight-extrabold);letter-spacing:var(--ptc-letter-spacing-normal);line-height:var(--ptc-line-height-dense);list-style:none;margin:var(--ptc-element-spacing-01) var(--ptc-element-spacing-03);padding:var(--ptc-element-spacing-02) var(--ptc-element-spacing-06);position:relative;text-decoration:none;transition:background-color var(--ptc-transition-medium) var(--ptc-ease-inout)}.primary-nav-link:hover{border-radius:var(--ptc-border-radius-standard);background-color:var(--color-gray-12);text-decoration:none;outline:none}.nav-title-link{background-color:transparent;box-sizing:border-box;color:var(--color-white);font-size:var(--ptc-font-size-xxx-small);font-stretch:100%;font-weight:var(--ptc-font-weight-extrabold);line-height:var(--ptc-line-height-densest);list-style:none;text-align:left;text-decoration-color:var(--color-white);text-decoration:none;transition:border-color var(--ptc-transition-medium) var(--ptc-ease-inout);border-bottom:1.5px solid transparent;display:inline-block}.nav-title-link:hover{color:var(--color-white);border-bottom:1.5px solid var(--color-green-06)}.secondary-nav-link{display:inline-block;background-color:transparent;box-sizing:border-box;color:var(--color-white);font-size:var(--ptc-font-size-xxx-small);font-stretch:100%;font-style:normal;font-weight:var(--ptc-font-weight-semibold);letter-spacing:var(--ptc-letter-spacing-normal);line-height:var(--ptc-line-height-densest);list-style:none;margin-bottom:var(--ptc-element-spacing-03);text-align:left;text-decoration:none;transition:border-color var(--ptc-transition-medium) var(--ptc-ease-inout);border-bottom:1.5px solid transparent;white-space:nowrap}.secondary-nav-link:hover{color:var(--color-white);border-bottom:1.5px solid var(--color-green-06);border-radius:0;text-decoration:none}.footer-nav-link{color:var(--color-white);transition:border var(--ptc-transition-medium) var(--ptc-ease-inout), color var(--ptc-transition-medium) var(--ptc-ease-inout);border-bottom:1px solid transparent;outline:none;text-decoration:none;font-weight:var(--ptc-font-weight-semibold);letter-spacing:var(--ptc-letter-spacing-normal);line-height:var(--ptc-line-height-densest);text-align:left;font-size:var(--ptc-font-size-x-small)}.footer-nav-link:hover{outline:none;text-decoration:none;border-bottom:0.1rem solid var(--color-green-06);color:var(--color-green-06)}.copyright-link{color:var(--color-white);font-size:var(--ptc-font-size-xx-small);font-weight:var(--ptc-font-weight-normal);line-height:var(--ptc-line-height-loose);display:inline-block}.arrow-plm{color:var(--color-white);font-weight:var(--ptc-font-weight-extrabold);line-height:var(--ptc-line-height-densest);text-decoration:underline;text-decoration-thickness:1px;text-decoration-color:transparent;text-underline-offset:2px;transition:text-decoration-color var(--ptc-transition-medium) var(--ptc-ease-inout)}.arrow-plm:hover{text-decoration-color:var(--color-green-07)}";
|
|
8
|
+
|
|
9
|
+
let PtcLink = class {
|
|
10
|
+
constructor(hostRef) {
|
|
11
|
+
index.registerInstance(this, hostRef);
|
|
12
|
+
/**
|
|
13
|
+
* Disabled link
|
|
14
|
+
*/
|
|
15
|
+
this.disabled = false;
|
|
16
|
+
/**
|
|
17
|
+
* Rxternal link
|
|
18
|
+
* */
|
|
19
|
+
this.external = false;
|
|
20
|
+
/**
|
|
21
|
+
* Target
|
|
22
|
+
*/
|
|
23
|
+
this.target = '_self';
|
|
24
|
+
/**
|
|
25
|
+
* Theme
|
|
26
|
+
*/
|
|
27
|
+
this.theme = 'simple';
|
|
28
|
+
/**
|
|
29
|
+
* Uppercase
|
|
30
|
+
*/
|
|
31
|
+
this.uppercase = false;
|
|
32
|
+
/**
|
|
33
|
+
* Font Size
|
|
34
|
+
*/
|
|
35
|
+
this.fontSize = 'medium';
|
|
36
|
+
}
|
|
37
|
+
render() {
|
|
38
|
+
const classMap = this.getCssClassMap();
|
|
39
|
+
return (index.h(index.Host, null, index.h("a", { class: classMap, href: this.href, target: this.external ? '_blank' : this.target, title: this.linkTitle }, this.theme == 'arrow' ? index.h("icon-asset", { type: "solid", size: "x-small", name: "arrow-right" }) : '', this.theme == 'arrow-plm' ? index.h("icon-asset", { type: "ptc", size: "xxx-small", name: "button-arrow-right" }) : '', index.h("slot", null))));
|
|
40
|
+
}
|
|
41
|
+
getCssClassMap() {
|
|
42
|
+
return {
|
|
43
|
+
['ptc-link']: true,
|
|
44
|
+
[this.theme]: true,
|
|
45
|
+
['uppercase']: this.uppercase,
|
|
46
|
+
['disabled']: this.disabled,
|
|
47
|
+
[this.fontSize]: true,
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
PtcLink.style = ptcLinkCss;
|
|
52
|
+
|
|
53
|
+
exports.ptc_link = PtcLink;
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
const index = require('./index-b3fabe79.js');
|
|
6
|
+
|
|
7
|
+
const ptcModalCss = ":host{display:block}.wrapper{position:fixed;width:100vw;height:100%;top:0;left:0;z-index:3000;display:none}.wrapper .modal-popup{margin:7.5rem auto 1rem;background-color:var(--color-white);box-shadow:var(--ptc-shadow-large);max-width:22.5625rem;width:80%;display:flex;flex-direction:column;align-items:flex-end;align-content:flex-end;z-index:3020;transform:translateY(-100%)}@media only screen and (min-width: 992px){.wrapper .modal-popup{max-width:29.125rem}}.wrapper .modal-popup.md{max-width:44.125rem}.wrapper .modal-popup.lg{max-width:56.25rem}.wrapper .modal-popup.xl{max-width:64.0625rem}.wrapper .modal-popup .modal-body{width:100%}.wrapper .modal-popup .modal-body iframe{opacity:0;overflow:hidden;width:100%;border:0;transition:opacity var(--ptc-ease-inout) var(--ptc-transition-medium)}.wrapper .modal-popup .modal-body iframe.ready{opacity:1}.wrapper .modal-popup .modal-body.frame{overflow:hidden}.wrapper .modal-popup .modal-body.html{overflow:hidden}.wrapper .modal-popup .close{margin-right:var(--ptc-element-spacing-03);margin-top:var(--ptc-element-spacing-03)}.wrapper .modal-popup.shadow-scroller{max-height:756px}.wrapper .modal-popup.shadow-scroller .modal-header{transition:box-shadow ease-in-out 250ms;position:relative;min-height:57px;border-bottom:1px solid var(--color-gray-02);width:100%}.wrapper .modal-popup.shadow-scroller .modal-header .close{position:absolute;top:var(--spacing-md);right:var(--spacing-md);margin:0}.wrapper .modal-popup.shadow-scroller .modal-body{min-height:200px;overflow-x:hidden;overflow-y:auto}.wrapper .modal-popup.shadow-scroller .modal-footer{transition:box-shadow ease-in-out 250ms;width:100%;min-height:72px;border-top:1px solid var(--color-gray-02);padding-top:1rem}.wrapper .modal-popup.shadow-scroller.scroll-top .modal-header{box-shadow:0px 4px 12px rgba(0, 0, 0, 0.12)}.wrapper .modal-popup.shadow-scroller.scroll-bottom .modal-footer{box-shadow:0px -8px 12px rgba(0, 0, 0, 0.12)}.wrapper.show{display:flex;align-items:flex-start}.wrapper.show .modal-popup{transform:translateY(0)}.wrapper.show .modal-popup.rounded{border-radius:var(--ptc-border-radius-standard)}.overlay{width:100vw;height:100vh;position:fixed;top:0;left:0;z-index:3010;display:block;background-color:rgba(0, 0, 0, 0.6)}";
|
|
8
|
+
|
|
9
|
+
let PtcModal = class {
|
|
10
|
+
constructor(hostRef) {
|
|
11
|
+
index.registerInstance(this, hostRef);
|
|
12
|
+
this.closed = index.createEvent(this, "closed", 7);
|
|
13
|
+
this.opened = index.createEvent(this, "opened", 7);
|
|
14
|
+
/**
|
|
15
|
+
* Sets if popup should close if click on outside
|
|
16
|
+
*/
|
|
17
|
+
this.size = 'sm';
|
|
18
|
+
/**
|
|
19
|
+
* Set whether or not to display modal
|
|
20
|
+
*/
|
|
21
|
+
this.show = false;
|
|
22
|
+
/**
|
|
23
|
+
* Sets if popup should overlay
|
|
24
|
+
*/
|
|
25
|
+
this.overlay = true;
|
|
26
|
+
/**
|
|
27
|
+
* Sets if popup should close if click on outside
|
|
28
|
+
*/
|
|
29
|
+
this.closeOnBlur = false;
|
|
30
|
+
/**
|
|
31
|
+
* Sets if popup should have rounded corners
|
|
32
|
+
*/
|
|
33
|
+
this.rounded = false;
|
|
34
|
+
/**
|
|
35
|
+
* Sets if popup should have header footer sections
|
|
36
|
+
*/
|
|
37
|
+
this.showHeaderFooter = false;
|
|
38
|
+
}
|
|
39
|
+
fireOnClosed(modal) {
|
|
40
|
+
this.closed.emit(modal);
|
|
41
|
+
}
|
|
42
|
+
fireOnOpened(modal) {
|
|
43
|
+
this.opened.emit(modal);
|
|
44
|
+
}
|
|
45
|
+
componentWillLoad() {
|
|
46
|
+
let body = document.querySelector('body');
|
|
47
|
+
this.bodyOverflowSetting = {
|
|
48
|
+
//overflow: body.style['overflow'],
|
|
49
|
+
overflowY: body.style['overflowY'],
|
|
50
|
+
overflowX: body.style['overflowX'],
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
componentWillRender() {
|
|
54
|
+
let body = document.querySelector('body');
|
|
55
|
+
if (body) {
|
|
56
|
+
if (this.show) {
|
|
57
|
+
//body.style['overflow'] = 'hidden';
|
|
58
|
+
body.style['overflowY'] = 'scroll';
|
|
59
|
+
body.style['overflowX'] = 'hidden';
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
//body.style['overflow'] = this.bodyOverflowSetting.overflow;
|
|
63
|
+
body.style['overflowY'] = this.bodyOverflowSetting.overflowY;
|
|
64
|
+
body.style['overflowX'] = this.bodyOverflowSetting.overflowX;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
componentDidLoad() {
|
|
69
|
+
if (this.show) {
|
|
70
|
+
this.fireOnOpened(this);
|
|
71
|
+
}
|
|
72
|
+
if (this.showHeaderFooter) {
|
|
73
|
+
this.handleScroll();
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
componentDidUpdate() {
|
|
77
|
+
if (this.show) {
|
|
78
|
+
this.fireOnOpened(this);
|
|
79
|
+
}
|
|
80
|
+
else {
|
|
81
|
+
this.fireOnClosed(this);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
resizeIframe(e) {
|
|
85
|
+
let iFrame = e.target;
|
|
86
|
+
setTimeout(() => {
|
|
87
|
+
try {
|
|
88
|
+
iFrame.height = `${iFrame.contentDocument.body.scrollHeight}px`;
|
|
89
|
+
}
|
|
90
|
+
catch (error) {
|
|
91
|
+
console.log(error);
|
|
92
|
+
iFrame.height = '616px'; //default
|
|
93
|
+
iFrame.removeAttribute('scrolling');
|
|
94
|
+
}
|
|
95
|
+
iFrame.classList.add('ready');
|
|
96
|
+
}, 50);
|
|
97
|
+
}
|
|
98
|
+
handleScroll() {
|
|
99
|
+
let modal = this.el.shadowRoot.querySelector('.shadow-scroller');
|
|
100
|
+
if (modal) {
|
|
101
|
+
let body = modal.querySelector('.modal-body');
|
|
102
|
+
var height = body.clientHeight;
|
|
103
|
+
var scrollHeight = body.scrollHeight;
|
|
104
|
+
var scrollTop = body.scrollTop;
|
|
105
|
+
var offset = body.offsetHeight;
|
|
106
|
+
if (height < scrollHeight) { //has scrollbar
|
|
107
|
+
if (scrollTop > 0) { //can scroll up
|
|
108
|
+
modal.classList.add('scroll-top');
|
|
109
|
+
}
|
|
110
|
+
else {
|
|
111
|
+
modal.classList.remove('scroll-top');
|
|
112
|
+
}
|
|
113
|
+
if (offset + scrollTop < scrollHeight) { //can scroll down
|
|
114
|
+
modal.classList.add('scroll-bottom');
|
|
115
|
+
}
|
|
116
|
+
else {
|
|
117
|
+
modal.classList.remove('scroll-bottom');
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
close() {
|
|
123
|
+
this.show = false;
|
|
124
|
+
}
|
|
125
|
+
render() {
|
|
126
|
+
let content;
|
|
127
|
+
let overlay;
|
|
128
|
+
let type = this.iframeUrl ? 'frame' : 'html';
|
|
129
|
+
let closebtn = (index.h("div", { class: "close" }, index.h("a", { href: "#", onClick: (e) => { e.preventDefault(); this.close(); } }, index.h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "14", height: "14", viewBox: "0 0 14 14", fill: "none" }, index.h("path", { d: "M1 1L13 13", stroke: "black" }), index.h("path", { d: "M13 1L1 13", stroke: "black" })))));
|
|
130
|
+
if (this.iframeUrl) {
|
|
131
|
+
content = (index.h("iframe", { src: this.iframeUrl, frameBorder: 0, allowFullScreen: false, height: "100%", width: "100%", scrolling: "no", onLoad: this.resizeIframe }));
|
|
132
|
+
}
|
|
133
|
+
else {
|
|
134
|
+
if (this.showHeaderFooter) {
|
|
135
|
+
content = (index.h("slot", { name: "body" }));
|
|
136
|
+
}
|
|
137
|
+
else {
|
|
138
|
+
content = (index.h("slot", null));
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
if (this.overlay) {
|
|
142
|
+
if (this.closeOnBlur) {
|
|
143
|
+
overlay = index.h("div", { class: "overlay", onClick: (_) => this.close() });
|
|
144
|
+
}
|
|
145
|
+
else {
|
|
146
|
+
overlay = index.h("div", { class: "overlay" });
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
return (index.h(index.Host, null, index.h("div", { class: `wrapper ${this.show ? "show" : "hide"}` }, overlay, index.h("div", { class: `modal-popup ${this.size} ${type} ${this.rounded ? 'rounded' : ''} ${this.showHeaderFooter ? 'shadow-scroller' : ''} ` }, this.showHeaderFooter ? [
|
|
150
|
+
index.h("div", { class: "modal-header" }, index.h("slot", { name: "header" }), closebtn),
|
|
151
|
+
index.h("div", { class: "modal-body", onScroll: () => this.handleScroll() }, content),
|
|
152
|
+
index.h("div", { class: "modal-footer" }, index.h("slot", { name: "footer" }))
|
|
153
|
+
] : [
|
|
154
|
+
closebtn,
|
|
155
|
+
index.h("div", { class: "modal-body" }, content)
|
|
156
|
+
]))));
|
|
157
|
+
}
|
|
158
|
+
get el() { return index.getElement(this); }
|
|
159
|
+
};
|
|
160
|
+
PtcModal.style = ptcModalCss;
|
|
161
|
+
|
|
162
|
+
exports.ptc_modal = PtcModal;
|