@ptcwebops/ptcw-design 3.0.4 → 3.0.6
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/{ptc-form-checkbox_3.cjs.entry.js → embedded-form_9.cjs.entry.js} +837 -3
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/ptcw-design.cjs.js +1 -1
- package/dist/collection/components/organism-bundles/form/embedded-form/embedded-form.css +6 -1
- package/dist/collection/components/organism-bundles/form/embedded-form/embedded-form.js +8 -1
- package/dist/collection/components/ptc-data-lookup/ptc-data-lookup.js +15 -0
- package/dist/collection/components/ptc-select/ptc-select.css +4 -1
- package/dist/collection/components/ptc-select/ptc-select.js +41 -1
- package/dist/collection/components/ptc-textfield/ptc-textfield.css +1 -2
- package/dist/collection/utils/elq-lib.js +9 -9
- package/dist/custom-elements/index.js +59 -15
- package/dist/esm/{ptc-form-checkbox_3.entry.js → embedded-form_9.entry.js} +833 -5
- package/dist/esm/loader.js +1 -1
- package/dist/esm/ptcw-design.js +1 -1
- package/dist/ptcw-design/p-ca29f7d6.entry.js +359 -0
- package/dist/ptcw-design/ptcw-design.esm.js +1 -1
- package/dist/types/components/ptc-data-lookup/ptc-data-lookup.d.ts +2 -0
- package/dist/types/components/ptc-select/ptc-select.d.ts +4 -0
- package/dist/types/components.d.ts +2 -0
- package/dist/types/utils/eloqua.d.ts +8 -0
- package/dist/types/utils/elq-lib.d.ts +0 -1
- package/package.json +1 -1
- package/readme.md +1 -1
- package/dist/cjs/embedded-form.cjs.entry.js +0 -108
- package/dist/cjs/max-width-container.cjs.entry.js +0 -54
- package/dist/cjs/ptc-button.cjs.entry.js +0 -52
- package/dist/cjs/ptc-data-lookup.cjs.entry.js +0 -496
- package/dist/cjs/ptc-spacer.cjs.entry.js +0 -38
- package/dist/cjs/ptc-title.cjs.entry.js +0 -78
- package/dist/esm/embedded-form.entry.js +0 -104
- package/dist/esm/max-width-container.entry.js +0 -50
- package/dist/esm/ptc-button.entry.js +0 -48
- package/dist/esm/ptc-data-lookup.entry.js +0 -492
- package/dist/esm/ptc-spacer.entry.js +0 -34
- package/dist/esm/ptc-title.entry.js +0 -74
- package/dist/ptcw-design/p-18dfffd3.entry.js +0 -359
- package/dist/ptcw-design/p-33c054ff.entry.js +0 -1
- package/dist/ptcw-design/p-3faffecb.entry.js +0 -1
- package/dist/ptcw-design/p-92bbd407.entry.js +0 -1
- package/dist/ptcw-design/p-9a36f7a3.entry.js +0 -1
- package/dist/ptcw-design/p-d2c400e2.entry.js +0 -1
- package/dist/ptcw-design/p-f1c77113.entry.js +0 -1
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
import { r as registerInstance, h, H as Host, g as getElement } from './index-62587d0b.js';
|
|
2
|
-
|
|
3
|
-
const embeddedFormCss = ":host{display:block}.flex-adjustments{display:flex;justify-content:center}@media only screen and (min-width: 768px){.flex-adjustments{justify-content:flex-end}}.embedded-form-container{background-color:#142D48}.ptc-embedded-form.form-wrapper{width:433px;display:flex;border-radius:3px;background:#FFF;box-shadow:0px 2px 6px 0px rgba(0, 0, 0, 0.16);flex-direction:column;align-items:center;padding:24px 0px;justify-content:center}@keyframes rollUp{from{height:auto;opacity:1}to{height:0;opacity:0}}.ptc-form-roll-up{animation:rollUp 1s forwards;}";
|
|
4
|
-
|
|
5
|
-
const EmbeddedForm = class {
|
|
6
|
-
constructor(hostRef) {
|
|
7
|
-
registerInstance(this, hostRef);
|
|
8
|
-
this.formData = {
|
|
9
|
-
email: '',
|
|
10
|
-
firstName: '',
|
|
11
|
-
lastName: '',
|
|
12
|
-
company: '',
|
|
13
|
-
country: '',
|
|
14
|
-
phone: '',
|
|
15
|
-
inquiryReason: '',
|
|
16
|
-
howhearselfreport: '',
|
|
17
|
-
policyChecked: false,
|
|
18
|
-
};
|
|
19
|
-
this.isSubmitted = false;
|
|
20
|
-
}
|
|
21
|
-
componentDidLoad() {
|
|
22
|
-
this.onDataLookup();
|
|
23
|
-
this.formButton = this.el.querySelector('.form-submit');
|
|
24
|
-
this.formButton.addEventListener('click', this.handleSubmit.bind(this));
|
|
25
|
-
//get Email
|
|
26
|
-
this.emailEle = this.el.querySelector('ptc-textfield[field-id="contact-email"]');
|
|
27
|
-
this.firstNameEle = this.el.querySelector('ptc-textfield[field-id="contact-firstname"]');
|
|
28
|
-
this.lastNameEle = this.el.querySelector('ptc-textfield[field-id="contact-lastname"]');
|
|
29
|
-
this.companyEle = this.el.querySelector('ptc-textfield[field-id="company"]');
|
|
30
|
-
this.phoneEle = this.el.querySelector('ptc-textfield[field-id="contact-phone"]');
|
|
31
|
-
this.countryEle = this.el.querySelector('ptc-select[field-id="contact-country"]');
|
|
32
|
-
this.inquiryreasonEle = this.el.querySelector('ptc-select[field-id="contact-inquiry"]');
|
|
33
|
-
this.howhearselfreport = this.el.querySelector('ptc-textfield[field-id="self-reporting"]');
|
|
34
|
-
this.policy1 = this.el.querySelector('ptc-form-checkbox[checkbox-id="policy1"]');
|
|
35
|
-
}
|
|
36
|
-
//handle dataLookup
|
|
37
|
-
onDataLookup() {
|
|
38
|
-
const dataLookupElement = this.el.closest('ptc-data-lookup');
|
|
39
|
-
if (dataLookupElement) {
|
|
40
|
-
console.log('Perform Data Lookup...');
|
|
41
|
-
dataLookupElement.performDataLookup();
|
|
42
|
-
}
|
|
43
|
-
else {
|
|
44
|
-
console.log('No Data Lookup...');
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
handleInputChange(field, value) {
|
|
48
|
-
this.formData = Object.assign(Object.assign({}, this.formData), { [field]: value });
|
|
49
|
-
}
|
|
50
|
-
handleSubmit(event) {
|
|
51
|
-
event.preventDefault();
|
|
52
|
-
this.formData.email = this.emailEle.inputValue;
|
|
53
|
-
this.formData.firstName = this.firstNameEle.inputValue;
|
|
54
|
-
this.formData.lastName = this.lastNameEle.inputValue;
|
|
55
|
-
this.formData.company = this.companyEle.inputValue;
|
|
56
|
-
this.formData.phone = this.phoneEle.inputValue;
|
|
57
|
-
this.formData.country = this.countryEle.selectedValue;
|
|
58
|
-
this.formData.inquiryReason = this.inquiryreasonEle.selectedValue;
|
|
59
|
-
this.formData.howhearselfreport = this.howhearselfreport.inputValue;
|
|
60
|
-
this.formData.policyChecked = this.policy1.isChecked;
|
|
61
|
-
//what if the checkbox is not required, I need to hide the checkbox in this case
|
|
62
|
-
if (this.formData.policyChecked) {
|
|
63
|
-
if (this.isValid()) {
|
|
64
|
-
const formSubmitEvent = new CustomEvent('formSubmit', {
|
|
65
|
-
detail: this.formData,
|
|
66
|
-
bubbles: true,
|
|
67
|
-
});
|
|
68
|
-
this.el.dispatchEvent(formSubmitEvent);
|
|
69
|
-
this.isSubmitted = true;
|
|
70
|
-
console.log('Form Submitted: ' + this.formData.email, this.formData.firstName, this.formData.lastName, this.formData.company, this.formData.phone, this.formData.country, this.formData.inquiryReason, this.formData.howhearselfreport, this.formData.policyChecked);
|
|
71
|
-
}
|
|
72
|
-
else {
|
|
73
|
-
console.log('Form validation failed');
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
else {
|
|
77
|
-
this.policy1.validateCheckbox();
|
|
78
|
-
console.log('Warning: Checkbox is not checked. This field is required');
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
isValid() {
|
|
82
|
-
const { email, firstName, lastName, company, country, phone, inquiryReason, howhearselfreport, policyChecked } = this.formData;
|
|
83
|
-
const invalidLength = document.querySelectorAll('.invalid-field').length;
|
|
84
|
-
// console.log('invalid fields length: ' + invalidLength), check the select field
|
|
85
|
-
return (email !== '' &&
|
|
86
|
-
phone !== '' &&
|
|
87
|
-
firstName !== '' &&
|
|
88
|
-
lastName !== '' &&
|
|
89
|
-
company !== '' &&
|
|
90
|
-
country !== '' &&
|
|
91
|
-
inquiryReason !== '' &&
|
|
92
|
-
howhearselfreport != '' &&
|
|
93
|
-
policyChecked &&
|
|
94
|
-
invalidLength === 0);
|
|
95
|
-
}
|
|
96
|
-
render() {
|
|
97
|
-
const formClass = this.isSubmitted ? "ptc-form-roll-up" : "";
|
|
98
|
-
return (h(Host, null, h("div", { class: "ptc-container ptc-section-standard flex-adjustments" }, h("div", { class: "form-wrapper ptc-embedded-form" }, h("max-width-container", { "max-width": "277", breakpoint: 480 }, h("ptc-title", { type: "h2", "text-align": "center", "title-size": "x-small", "title-color": "gray", upperline: "no-upperline", "title-display": "inline-block", "title-height": "densest", "title-margin": "margin-flush", "title-weight": "w-6", "is-plm-hub": "false" }, "Please fill out the form and a PTC sales representative will be in touch."), h("ptc-spacer", { breakpoint: "x-small", size: "medium" }), h("ptc-spacer", { breakpoint: "x-small", size: "medium" }), h("ptc-spacer", { breakpoint: "small", size: "small" }), h("ptc-spacer", { breakpoint: "small", size: "small" })), h("form", { onSubmit: event => this.handleSubmit(event), class: formClass }, h("div", { id: "not-me-link-id" }), h("div", { id: "not-me-additional-top", class: "not-me-additional-text" }), h("ptc-textfield", { "field-id": "contact-firstname", "label-text": "First Name*", type: "text", "ptc-data-eloqua-name": "C_FirstName", "field-name": "firstname" }), h("ptc-textfield", { "field-id": "contact-lastname", "label-text": "Last Name*", type: "text", "ptc-data-eloqua-name": "C_LastName", "field-name": "lastname" }), h("ptc-textfield", { "field-id": "company", "label-text": "Company*", type: "text", "ptc-data-eloqua-name": "C_Company", "field-name": "company" }), h("ptc-textfield", { "field-id": "contact-email", "label-text": "Email*", type: "email", "ptc-data-eloqua-name": "C_EmailAddress", "field-name": "email" }), h("ptc-select", { "field-id": "contact-country", label: "Country*", "ptc-data-eloqua-name": "C_Country", "field-name": "country" }, h("ul", { class: "mdc-list" }, h("li", { class: "mdc-list-item", "data-value": "" }, h("span", { class: "mdc-list-item__ripple" })), h("li", { class: "mdc-list-item", "data-value": "USA" }, h("span", { class: "mdc-list-item__ripple" }), h("span", { class: "mdc-list-item__text" }, "USA")), h("li", { class: "mdc-list-item", "data-value": "Canada" }, h("span", { class: "mdc-list-item__ripple" }), h("span", { class: "mdc-list-item__text" }, "Canada")), h("li", { class: "mdc-list-item", "data-value": "China" }, h("span", { class: "mdc-list-item__ripple" }), h("span", { class: "mdc-list-item__text" }, "China")))), h("ptc-textfield", { "field-id": "contact-phone", "label-text": "Phone*", type: "tel", "ptc-data-eloqua-name": "C_BusPhone", "field-name": "phone" }), h("ptc-select", { label: "What information are you interested in?*", "ptc-data-eloqua-name": "Inquiry_Reason", "field-name": "inquiryreason", "field-id": "contact-inquiry" }, h("ul", { class: "mdc-list" }, h("li", { class: "mdc-list-item", "data-value": "" }, h("span", { class: "mdc-list-item__ripple" })), h("li", { class: "mdc-list-item", "data-value": "Augmented Reality (AR)" }, h("span", { class: "mdc-list-item__ripple" }), h("span", { class: "mdc-list-item__text" }, "Augmented Reality (AR)")), h("li", { class: "mdc-list-item", "data-value": "CAD" }, h("span", { class: "mdc-list-item__ripple" }), h("span", { class: "mdc-list-item__text" }, "Computer Aided Design")), h("li", { class: "mdc-list-item", "data-value": "Retail(FlexPLM)" }, h("span", { class: "mdc-list-item__ripple" }), h("span", { class: "mdc-list-item__text" }, "Fashion and Retail Product Lifecycle Management")))), h("ptc-textfield", { "field-id": "self-reporting", "label-text": "How can we help you?*", type: "text", "ptc-data-eloqua-name": "HowHearSelfReport", "ptc-max-length": "100", "field-name": "howhearselfreport" }), h("ptc-textfield", { type: "hidden", "ptc-data-eloqua-name": "test", "input-value": "test" }), h("ptc-form-checkbox", { label: "I agree to the policy", "checkbox-id": "policy1" }), h("div", { id: "not-me-additional-bottom", class: "not-me-additional-text" }), h("ptc-button", { class: "form-submit", color: "ptc-quaternary", type: "submit", styles: ":host{align-self:flex-end; margin-top: 40px; display:block; text-align:right;}" }, "Submit"))))));
|
|
99
|
-
}
|
|
100
|
-
get el() { return getElement(this); }
|
|
101
|
-
};
|
|
102
|
-
EmbeddedForm.style = embeddedFormCss;
|
|
103
|
-
|
|
104
|
-
export { EmbeddedForm as embedded_form };
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { r as registerInstance, h, H as Host, g as getElement } from './index-62587d0b.js';
|
|
2
|
-
|
|
3
|
-
const maxWidthContainerCss = ":host{display:block}:host(.left){margin:auto auto auto 0}:host(.right){margin:auto 0 auto auto}:host(.center){margin:0 auto}";
|
|
4
|
-
|
|
5
|
-
const MaxWidthContainer = class {
|
|
6
|
-
constructor(hostRef) {
|
|
7
|
-
registerInstance(this, hostRef);
|
|
8
|
-
this.maxWidthP = undefined;
|
|
9
|
-
this.maxWidth = undefined;
|
|
10
|
-
this.breakpoint = 768;
|
|
11
|
-
this.contentAlign = 'center';
|
|
12
|
-
this.styles = undefined;
|
|
13
|
-
}
|
|
14
|
-
componentDidLoad() {
|
|
15
|
-
this.handleResize();
|
|
16
|
-
window.addEventListener('resize', this.handleResize.bind(this));
|
|
17
|
-
}
|
|
18
|
-
disconnectedCallback() {
|
|
19
|
-
window.removeEventListener('resize', this.handleResize);
|
|
20
|
-
}
|
|
21
|
-
render() {
|
|
22
|
-
const classMap = this.getCssClassMap();
|
|
23
|
-
return (h(Host, { class: classMap }, this.styles && h("style", null, this.styles), h("slot", null)));
|
|
24
|
-
}
|
|
25
|
-
getCssClassMap() {
|
|
26
|
-
return {
|
|
27
|
-
[this.contentAlign]: true,
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
handleResize() {
|
|
31
|
-
// const selectedContainer = this.el.querySelector('.max-width-container');
|
|
32
|
-
if (this.el) {
|
|
33
|
-
if (window.innerWidth >= this.breakpoint) {
|
|
34
|
-
if (this.maxWidthP) {
|
|
35
|
-
this.el.style.maxWidth = `${this.maxWidthP}%`;
|
|
36
|
-
}
|
|
37
|
-
else {
|
|
38
|
-
this.el.style.maxWidth = `${this.maxWidth}px`;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
else {
|
|
42
|
-
this.el.style.maxWidth = 'initial';
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
get el() { return getElement(this); }
|
|
47
|
-
};
|
|
48
|
-
MaxWidthContainer.style = maxWidthContainerCss;
|
|
49
|
-
|
|
50
|
-
export { MaxWidthContainer as max_width_container };
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import { r as registerInstance, c as createEvent, h, H as Host } from './index-62587d0b.js';
|
|
2
|
-
|
|
3
|
-
const ptcButtonCss = "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{outline:3px solid var(--color-blue-07);outline-offset:2px}.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,.ptc-quaternary:focus,.ptc-secondary:focus,.ptc-tertiary:focus,.icon-toggle:focus{outline:3px solid var(--color-blue-07);outline-offset:2px}.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{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)}.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)}.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)}.ptc-tertiary span{color:var(--color-gray-10)}.ptc-tertiary ::slotted([slot=slot-after-text]){fill:var(--color-gray-10) !important}.ptc-quaternary{background:var(--color-green-07);border:2px solid var(--color-green-07);border-radius:var(--ptc-border-radius-standard)}.ptc-quaternary:hover{background-color:var(--color-green-08)}.ptc-quaternary:active{background-color:var(--color-green-09)}.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{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{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}";
|
|
4
|
-
|
|
5
|
-
const PtcButton = class {
|
|
6
|
-
constructor(hostRef) {
|
|
7
|
-
registerInstance(this, hostRef);
|
|
8
|
-
this.clickEvent = createEvent(this, "clickEvent", 7);
|
|
9
|
-
this.disabled = false;
|
|
10
|
-
this.active = false;
|
|
11
|
-
this.type = 'button';
|
|
12
|
-
this.color = 'ptc-primary';
|
|
13
|
-
this.iconAnimation = '';
|
|
14
|
-
this.iconPosition = 'icon-right';
|
|
15
|
-
this.linkHref = undefined;
|
|
16
|
-
this.linkTitle = undefined;
|
|
17
|
-
this.target = '_self';
|
|
18
|
-
this.rel = undefined;
|
|
19
|
-
this.tabNav = 0;
|
|
20
|
-
this.styles = undefined;
|
|
21
|
-
this.textAlign = undefined;
|
|
22
|
-
this.size = undefined;
|
|
23
|
-
}
|
|
24
|
-
clickEventHandler() {
|
|
25
|
-
this.clickEvent.emit();
|
|
26
|
-
}
|
|
27
|
-
render() {
|
|
28
|
-
const classMap = this.getCssClassMap();
|
|
29
|
-
const Tag = !!this.linkHref ? 'a' : 'button';
|
|
30
|
-
return (h(Host, null, this.styles && h("style", null, this.styles), 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 ? { target: this.target } : {}), (!!this.rel && !!this.linkHref ? { rel: this.rel } : {}), (!!this.linkHref ? { title: this.linkTitle ? this.linkTitle : this.linkHref } : {}), (!!this.tabNav ? { tabindex: -1 } : { tabindex: 0 })), this.iconAnimation == 'reveal-down' ?
|
|
31
|
-
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" })))) :
|
|
32
|
-
h("span", null, h("slot", { name: "slot-before-text" }), h("slot", null), h("slot", { name: "slot-after-text" })))));
|
|
33
|
-
}
|
|
34
|
-
getCssClassMap() {
|
|
35
|
-
return {
|
|
36
|
-
[this.color]: true,
|
|
37
|
-
[this.iconAnimation]: true,
|
|
38
|
-
[this.iconPosition]: true,
|
|
39
|
-
['disabled']: this.disabled ? true : false,
|
|
40
|
-
['active']: this.active ? true : false,
|
|
41
|
-
[this.textAlign]: true,
|
|
42
|
-
[this.size]: true
|
|
43
|
-
};
|
|
44
|
-
}
|
|
45
|
-
};
|
|
46
|
-
PtcButton.style = ptcButtonCss;
|
|
47
|
-
|
|
48
|
-
export { PtcButton as ptc_button };
|