@ptcwebops/ptcw-design 6.3.60-beta → 6.3.62-beta

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. package/dist/cjs/embedded-form.cjs.entry.js +1 -1
  2. package/dist/cjs/loader.cjs.js +1 -1
  3. package/dist/cjs/ptc-button_5.cjs.entry.js +542 -0
  4. package/dist/cjs/ptc-card_2.cjs.entry.js +3 -2
  5. package/dist/cjs/ptc-countdown.cjs.entry.js +7 -10
  6. package/dist/cjs/ptc-form-checkbox_4.cjs.entry.js +5 -3
  7. package/dist/cjs/ptc-img.cjs.entry.js +69 -36
  8. package/dist/cjs/ptc-jumbotron.cjs.entry.js +3 -0
  9. package/dist/cjs/ptcw-design.cjs.js +1 -1
  10. package/dist/collection/components/organism-bundles/form/embedded-form/embedded-form.js +1 -1
  11. package/dist/collection/components/ptc-card/ptc-card.js +21 -2
  12. package/dist/collection/components/ptc-countdown/ptc-countdown.js +7 -10
  13. package/dist/collection/components/ptc-img/ptc-img.css +47 -0
  14. package/dist/collection/components/ptc-img/ptc-img.js +73 -36
  15. package/dist/collection/components/ptc-jumbotron/ptc-jumbotron.js +3 -0
  16. package/dist/collection/components/ptc-textfield/ptc-textfield.css +38 -0
  17. package/dist/collection/components/ptc-textfield/ptc-textfield.js +9 -4
  18. package/dist/custom-elements/index.js +90 -54
  19. package/dist/esm/blog-detail-content_2.entry.js +1 -1
  20. package/dist/esm/blog-detail-layout.entry.js +1 -1
  21. package/dist/esm/blogs-search-section.entry.js +1 -1
  22. package/dist/esm/embedded-form.entry.js +1 -1
  23. package/dist/esm/homepage-jumbotron.entry.js +1 -1
  24. package/dist/esm/homepage-toggled-content.entry.js +1 -1
  25. package/dist/esm/{interfaces-4caedd26.js → interfaces-7c0243be.js} +1 -1
  26. package/dist/esm/loader.js +1 -1
  27. package/dist/esm/most-popular-news.entry.js +1 -1
  28. package/dist/esm/my-component.entry.js +1 -1
  29. package/dist/esm/ptc-accordion-item.entry.js +1 -1
  30. package/dist/esm/ptc-background-video.entry.js +1 -1
  31. package/dist/esm/ptc-button_5.entry.js +534 -0
  32. package/dist/esm/ptc-card_2.entry.js +3 -2
  33. package/dist/esm/ptc-collapse-list.entry.js +1 -1
  34. package/dist/esm/ptc-countdown.entry.js +7 -10
  35. package/dist/esm/ptc-form-checkbox_4.entry.js +6 -4
  36. package/dist/esm/ptc-homepage-image-feature.entry.js +1 -1
  37. package/dist/esm/ptc-homepage-video-background.entry.js +1 -1
  38. package/dist/esm/ptc-icon-card.entry.js +1 -1
  39. package/dist/esm/ptc-img.entry.js +70 -37
  40. package/dist/esm/ptc-jumbotron.entry.js +3 -0
  41. package/dist/esm/ptc-link.entry.js +1 -1
  42. package/dist/esm/ptc-media-card.entry.js +1 -1
  43. package/dist/esm/ptc-pricing-packaging-table.entry.js +1 -1
  44. package/dist/esm/ptc-pricing-tabs.entry.js +1 -1
  45. package/dist/esm/ptc-social-icons-footer.entry.js +1 -1
  46. package/dist/esm/ptcw-design.js +1 -1
  47. package/dist/esm/{utils-2f12c081.js → utils-7c68b88a.js} +1 -1
  48. package/dist/ptcw-design/{p-901c31b3.entry.js → p-0252726c.entry.js} +1 -1
  49. package/dist/ptcw-design/p-0c4918f5.entry.js +1 -0
  50. package/dist/ptcw-design/{p-45b1f3fc.entry.js → p-16d47ac5.entry.js} +1 -1
  51. package/dist/ptcw-design/{p-a5fc048f.entry.js → p-24a6eefa.entry.js} +1 -1
  52. package/dist/ptcw-design/{p-9dbcfcee.entry.js → p-2ba1ef9d.entry.js} +1 -1
  53. package/dist/ptcw-design/{p-1eb40265.entry.js → p-30bfb2f9.entry.js} +1 -1
  54. package/dist/ptcw-design/{p-f1734520.entry.js → p-37c4f168.entry.js} +1 -1
  55. package/dist/ptcw-design/{p-297a14cb.entry.js → p-4056c365.entry.js} +1 -1
  56. package/dist/ptcw-design/p-4ce6baf6.entry.js +1 -0
  57. package/dist/ptcw-design/{p-b647f7a1.entry.js → p-50770cc0.entry.js} +1 -1
  58. package/dist/ptcw-design/{p-4ca956c1.entry.js → p-531caca4.entry.js} +1 -1
  59. package/dist/ptcw-design/{p-52e17d34.entry.js → p-55e344bc.entry.js} +1 -1
  60. package/dist/ptcw-design/{p-8cea8943.entry.js → p-5bd8b4be.entry.js} +1 -1
  61. package/dist/ptcw-design/{p-257267e3.entry.js → p-673cfd2e.entry.js} +1 -1
  62. package/dist/ptcw-design/{p-8e42a22d.entry.js → p-757e3edb.entry.js} +1 -1
  63. package/dist/ptcw-design/{p-d51438de.entry.js → p-80588c84.entry.js} +1 -1
  64. package/dist/ptcw-design/{p-4702c233.entry.js → p-81e65926.entry.js} +1 -1
  65. package/dist/ptcw-design/{p-80122e26.js → p-826c17e8.js} +1 -1
  66. package/dist/ptcw-design/p-a3977a9e.entry.js +1 -0
  67. package/dist/ptcw-design/{p-8c121480.entry.js → p-a5ad0eff.entry.js} +1 -1
  68. package/dist/ptcw-design/{p-1efb0486.entry.js → p-abf9b25f.entry.js} +3 -3
  69. package/dist/ptcw-design/{p-14b7693f.entry.js → p-dffcfa42.entry.js} +1 -1
  70. package/dist/ptcw-design/{p-76dab076.entry.js → p-e813ea2b.entry.js} +1 -1
  71. package/dist/ptcw-design/p-e94353a4.entry.js +1 -0
  72. package/dist/ptcw-design/{p-711bcdad.js → p-ee1183b2.js} +1 -1
  73. package/dist/ptcw-design/{p-fd87fcd5.entry.js → p-ef5b5890.entry.js} +1 -1
  74. package/dist/ptcw-design/{p-bab5bb88.entry.js → p-f5d8a3b1.entry.js} +1 -1
  75. package/dist/ptcw-design/ptcw-design.esm.js +1 -1
  76. package/dist/types/components/ptc-card/ptc-card.d.ts +1 -0
  77. package/dist/types/components/ptc-countdown/ptc-countdown.d.ts +0 -1
  78. package/dist/types/components/ptc-img/ptc-img.d.ts +13 -4
  79. package/dist/types/components/ptc-jumbotron/ptc-jumbotron.d.ts +1 -0
  80. package/dist/types/components/ptc-textfield/ptc-textfield.d.ts +2 -2
  81. package/dist/types/components.d.ts +4 -2
  82. package/package.json +1 -1
  83. package/readme.md +1 -1
  84. package/dist/cjs/ptc-button.cjs.entry.js +0 -89
  85. package/dist/cjs/ptc-para.cjs.entry.js +0 -127
  86. package/dist/cjs/ptc-picture.cjs.entry.js +0 -162
  87. package/dist/cjs/ptc-spacer.cjs.entry.js +0 -38
  88. package/dist/cjs/ptc-title.cjs.entry.js +0 -152
  89. package/dist/esm/ptc-button.entry.js +0 -85
  90. package/dist/esm/ptc-para.entry.js +0 -123
  91. package/dist/esm/ptc-picture.entry.js +0 -158
  92. package/dist/esm/ptc-spacer.entry.js +0 -34
  93. package/dist/esm/ptc-title.entry.js +0 -148
  94. package/dist/ptcw-design/p-0c69ea52.entry.js +0 -1
  95. package/dist/ptcw-design/p-2cc7e2a8.entry.js +0 -1
  96. package/dist/ptcw-design/p-539639ff.entry.js +0 -1
  97. package/dist/ptcw-design/p-a8872ce3.entry.js +0 -1
  98. package/dist/ptcw-design/p-a978cd5b.entry.js +0 -1
  99. package/dist/ptcw-design/p-e4eb925f.entry.js +0 -1
  100. package/dist/ptcw-design/p-e9c5e74e.entry.js +0 -1
  101. package/dist/ptcw-design/p-f74e87ec.entry.js +0 -1
@@ -108,14 +108,11 @@ export class PtcCountdown {
108
108
  this.calculateTimeLeft();
109
109
  this.timer = window.setInterval(() => this.calculateTimeLeft(), 1000);
110
110
  }
111
- shouldUse12HourFormat() {
112
- if (this.displayLocale === 'en') {
113
- return true;
114
- }
115
- else if (this.useHourFormat !== undefined) {
116
- return this.useHourFormat;
117
- }
118
- }
111
+ // private shouldUse12HourFormat() : boolean {
112
+ // if(this.useHourFormat !== undefined){
113
+ // return this.useHourFormat
114
+ // }
115
+ // }
119
116
  detectLocaleFromURL() {
120
117
  const url = window.location.href;
121
118
  if (url.includes('/cn/')) {
@@ -149,14 +146,14 @@ export class PtcCountdown {
149
146
  const formattedEventTime = dayjs(this.transformDate(this.eventTime))
150
147
  .utcOffset(this.getOffsetFromAbbr(this.eventTimeZone), true)
151
148
  .format('YYYY-MM-DD HH:mm');
152
- const hour12 = this.shouldUse12HourFormat();
149
+ //const hour12 = this.shouldUse12HourFormat();
153
150
  return (h("div", { class: "countdown-outer" }, this.countdownTitle && h("div", { class: "event-name" }, this.countdownTitle), !this.isExpired ? (h("div", { id: "CDOutput", class: "countdown" }, h("div", { class: "day" }, h("div", null, days), h("span", null, this.daysText)), h("div", { class: "hours" }, h("div", null, hours), h("span", null, this.hoursText)), h("div", { class: "minutes" }, h("div", null, minutes), h("span", null, this.minutesText)), h("div", { class: "seconds" }, h("div", null, seconds), h("span", null, this.secondsText)))) : (h("div", { class: "expired" }, `${this.expiredText} ${formattedEventTime} ${this.eventTimeZone}`)), h("div", { class: "cd-event-date" }, new Date(this.eventTime).toLocaleDateString(this.displayLocale, {
154
151
  month: 'long',
155
152
  day: 'numeric',
156
153
  year: 'numeric',
157
154
  hour: '2-digit',
158
155
  minute: '2-digit',
159
- hour12: hour12,
156
+ hour12: this.useHourFormat,
160
157
  }), ' ', "(", this.eventTimeZone, ")")));
161
158
  }
162
159
  static get is() { return "ptc-countdown"; }
@@ -124,4 +124,51 @@ ptc-link, ptc-square-card,
124
124
  .hidden-lg {
125
125
  display: none !important;
126
126
  }
127
+ }
128
+ .lazy-bg {
129
+ background-image: none !important;
130
+ background-color: var(--color-gray-03);
131
+ }
132
+
133
+ .ptc-img {
134
+ position: relative;
135
+ width: 100%;
136
+ height: 100%;
137
+ background-size: cover;
138
+ background-repeat: no-repeat;
139
+ background-position: center center;
140
+ }
141
+
142
+ img {
143
+ width: 100%;
144
+ height: auto;
145
+ display: block;
146
+ }
147
+
148
+ .low-quality,
149
+ .medium-quality,
150
+ .high-quality {
151
+ position: absolute;
152
+ width: 100%;
153
+ height: 100%;
154
+ top: 0;
155
+ left: 0;
156
+ background-size: cover;
157
+ background-repeat: no-repeat;
158
+ background-position: center center;
159
+ transition: opacity 0.5s ease-in-out;
160
+ }
161
+
162
+ .low-quality {
163
+ z-index: 1;
164
+ }
165
+
166
+ .medium-quality {
167
+ z-index: 2;
168
+ opacity: 0;
169
+ }
170
+
171
+ .high-quality {
172
+ z-index: 3;
173
+ opacity: 0;
127
174
  }
@@ -2,11 +2,6 @@ import { Host, h } from '@stencil/core';
2
2
  import { ResponsiveBgVariables } from '../../utils/interfaces';
3
3
  export class PtcImg {
4
4
  constructor() {
5
- /**
6
- * Lazy Load Transforms array
7
- **/
8
- this.transformParameters = ['t=ptcjumbdesklq', 't=ptcjumbdeskmq', 't=ptcjumbdeskhq'];
9
- this.transformIndex = 0;
10
5
  this.sizeXs = '510x340';
11
6
  this.sizeSm = '1240x496';
12
7
  this.sizeMd = '1366x500';
@@ -19,33 +14,54 @@ export class PtcImg {
19
14
  this.enableLazyLoad = false;
20
15
  this.delay = 2000;
21
16
  this.bgSrcLazy = undefined;
17
+ this.bgSrcMedium = undefined;
18
+ this.bgSrcHigh = undefined;
19
+ this.isInViewport = false;
20
+ this.isImageUpgraded = false;
22
21
  }
23
- /**
24
- * Image Z Index
25
- */
26
- // @Prop() imageZIndex: 'z-index-auto' | 'z-index-n-2' | 'z-index-n-1' | 'z-index-p-1' | 'z-index-p-2' = 'z-index-auto';
27
22
  WindowResize() {
28
23
  this.setResponsiveBg();
29
24
  }
30
25
  render() {
31
26
  const classMap = this.getCssClassMap();
32
- return (h(Host, null, this.styles && h("style", null, this.styles), h("div", { class: classMap, "data-xs": `${this.bgSrcLazy ? this.bgSrcLazy : this.imgUrl}`, "data-sm": `${this.bgSrcLazy ? this.bgSrcLazy : this.imgUrl}`, "data-md": `${this.bgSrcLazy ? this.bgSrcLazy : this.imgUrl}`, "data-lg": `${this.bgSrcLazy ? this.bgSrcLazy : this.imgUrl}` }, this.imageType == 'smart-bg' ? h("slot", null) : null)));
27
+ if (this.enableLazyLoad && this.imgUrl) {
28
+ // Lazy loading functionality
29
+ return (h(Host, null, this.styles && h("style", null, this.styles), h("div", { class: classMap }, h("div", { class: "low-quality", style: {
30
+ backgroundImage: `url(${this.bgSrcLazy})`,
31
+ opacity: '1',
32
+ transition: 'opacity 0.5s ease-in-out',
33
+ } }), h("div", { class: "medium-quality", style: {
34
+ opacity: '0',
35
+ transition: 'opacity 0.5s ease-in-out',
36
+ } }), h("div", { class: "high-quality", style: {
37
+ opacity: '0',
38
+ transition: 'opacity 0.5s ease-in-out',
39
+ } }), this.imageType == 'smart-bg' ? h("slot", null) : null)));
40
+ }
41
+ else {
42
+ return (h(Host, null, this.styles && h("style", null, this.styles), h("div", { class: classMap, "data-xs": this.bgSrcLazy || this.imgUrl, "data-sm": this.bgSrcLazy || this.imgUrl, "data-md": this.bgSrcLazy || this.imgUrl, "data-lg": this.bgSrcLazy || this.imgUrl, style: { backgroundImage: `url(${this.bgSrcLazy || this.imgUrl})` } }, this.imageType == 'smart-bg' ? h("slot", null) : null)));
43
+ }
33
44
  }
34
45
  componentWillLoad() {
35
46
  if (this.enableLazyLoad) {
36
- if (this.imgUrl && this.imgUrl.includes('?')) {
37
- this.bgSrcLazy = `${this.imgUrl}&t=ptcjumbdesklq`;
38
- }
39
- else {
40
- this.bgSrcLazy = `${this.imgUrl}?t=ptcjumbdesklq`;
41
- }
47
+ this.isInViewport = false;
48
+ }
49
+ if (this.enableLazyLoad && this.imgUrl) {
50
+ this.bgSrcLazy = this.getImageUrl('lq');
51
+ this.bgSrcMedium = this.getImageUrl('mq');
52
+ this.bgSrcHigh = this.getImageUrl('hq');
53
+ }
54
+ else {
55
+ console.warn('Image URL is undefined or invalid.');
56
+ this.bgSrcLazy = '';
57
+ this.bgSrcMedium = '';
58
+ this.bgSrcHigh = '';
42
59
  }
43
- console.log(this.bgSrcLazy);
44
60
  }
45
61
  componentDidLoad() {
46
62
  this.addIntersectionObserver();
47
63
  this.setResponsiveBg();
48
- if (this.enableLazyLoad) {
64
+ if (this.enableLazyLoad && this.imgUrl) {
49
65
  const that = this;
50
66
  setTimeout(() => {
51
67
  that.upgradeImageQuality();
@@ -57,22 +73,29 @@ export class PtcImg {
57
73
  this.setResponsiveBg();
58
74
  }
59
75
  upgradeImageQuality() {
60
- const that = this;
61
- that.transformIndex++;
62
- if (that.transformIndex < that.transformParameters.length) {
63
- if (this.imgUrl && this.imgUrl.includes('?')) {
64
- this.bgSrcLazy = `${this.imgUrl}&${that.transformParameters[that.transformIndex]}`;
65
- }
66
- else {
67
- this.bgSrcLazy = `${this.imgUrl}?${that.transformParameters[that.transformIndex]}`;
68
- }
76
+ if (this.isInViewport && !this.isImageUpgraded) {
77
+ console.log('Low-quality image is visible.');
78
+ this.isImageUpgraded = true;
69
79
  setTimeout(() => {
70
- console.log(this.bgSrcLazy);
71
- that.upgradeImageQuality();
72
- }, that.delay);
73
- }
74
- else {
75
- that.bgSrcLazy = that.imgUrl;
80
+ const mediumLayer = this.el.querySelector('.medium-quality');
81
+ if (mediumLayer) {
82
+ mediumLayer.style.backgroundImage = `url(${this.bgSrcMedium})`;
83
+ mediumLayer.style.opacity = '1';
84
+ console.log('Medium-quality image is now visible.');
85
+ }
86
+ setTimeout(() => {
87
+ const highLayer = this.el.querySelector('.high-quality');
88
+ if (highLayer) {
89
+ highLayer.style.backgroundImage = `url(${this.bgSrcHigh})`;
90
+ highLayer.style.opacity = '1';
91
+ console.log('High-quality image is now visible.');
92
+ }
93
+ if (mediumLayer) {
94
+ mediumLayer.style.opacity = '0';
95
+ console.log('Medium-quality image is hidden.');
96
+ }
97
+ }, this.delay);
98
+ }, this.delay / 2);
76
99
  }
77
100
  }
78
101
  //responsive image
@@ -102,12 +125,14 @@ export class PtcImg {
102
125
  }
103
126
  if ('IntersectionObserver' in window) {
104
127
  let lazyLoadBgs = (this.el || document).querySelectorAll('.lazy-bg');
105
- let bgObserver = new IntersectionObserver(entries => {
106
- entries.forEach(entry => {
128
+ let bgObserver = new IntersectionObserver((entries) => {
129
+ entries.forEach((entry) => {
107
130
  if (entry.isIntersecting) {
108
131
  const image = entry.target;
109
132
  image.classList.remove('lazy-bg');
110
133
  bgObserver.unobserve(image);
134
+ this.isInViewport = true;
135
+ this.upgradeImageQuality();
111
136
  }
112
137
  });
113
138
  });
@@ -121,6 +146,14 @@ export class PtcImg {
121
146
  // }, 5000);
122
147
  }
123
148
  }
149
+ getImageUrl(quality) {
150
+ if (this.imgUrl && this.imgUrl.includes('?')) {
151
+ return `${this.imgUrl}&t=ptcjumbdesk${quality}`;
152
+ }
153
+ else {
154
+ return `${this.imgUrl}?t=ptcjumbdesk${quality}`;
155
+ }
156
+ }
124
157
  getCssClassMap() {
125
158
  return {
126
159
  [this.imageType]: true,
@@ -379,7 +412,11 @@ export class PtcImg {
379
412
  }
380
413
  static get states() {
381
414
  return {
382
- "bgSrcLazy": {}
415
+ "bgSrcLazy": {},
416
+ "bgSrcMedium": {},
417
+ "bgSrcHigh": {},
418
+ "isInViewport": {},
419
+ "isImageUpgraded": {}
383
420
  };
384
421
  }
385
422
  static get elementRef() { return "el"; }
@@ -47,6 +47,9 @@ export class PtcJumbotron {
47
47
  componentDidLoad() {
48
48
  //this.adjustJumbotronHeight();
49
49
  }
50
+ componentDidUpdate() {
51
+ this.getContentBackground();
52
+ }
50
53
  render() {
51
54
  const classMap = this.getCssClassMap();
52
55
  let mediaElement;
@@ -3810,4 +3810,42 @@ ptc-link, ptc-square-card,
3810
3810
  }
3811
3811
  .ptc-text-field.email-signup .mdc-text-field__input::placeholder {
3812
3812
  font-size: var(--ptc-font-size-small);
3813
+ }
3814
+ .ptc-text-field textarea.mdc-text-field__input {
3815
+ min-height: 56px;
3816
+ max-height: 200px;
3817
+ overflow-y: auto;
3818
+ font-size: var(--ptc-font-size-xx-small);
3819
+ width: 100%;
3820
+ box-sizing: border-box;
3821
+ resize: vertical;
3822
+ display: block;
3823
+ margin: 0;
3824
+ position: static;
3825
+ padding-right: 8px;
3826
+ line-height: var(--ptc-font-size-small);
3827
+ }
3828
+ .ptc-text-field .mdc-text-field--outlined {
3829
+ height: 34px;
3830
+ width: 273px;
3831
+ padding-left: 8px;
3832
+ padding-right: 8px;
3833
+ }
3834
+ .ptc-text-field .mdc-text-field--outlined .mdc-notched-outline__trailing {
3835
+ border-radius: 0px !important;
3836
+ }
3837
+ .ptc-text-field .mdc-text-field--outlined .mdc-notched-outline__leading {
3838
+ border-radius: 0px !important;
3839
+ }
3840
+ .ptc-text-field .mdc-text-field--outlined:has(textarea.mdc-text-field__input) {
3841
+ min-height: 34px;
3842
+ height: auto;
3843
+ display: flex;
3844
+ flex-direction: column;
3845
+ align-items: stretch;
3846
+ }
3847
+ .ptc-text-field .mdc-text-field:has(textarea.mdc-text-field__input) {
3848
+ padding-right: 1px;
3849
+ padding-top: 2px;
3850
+ padding-bottom: 2px;
3813
3851
  }
@@ -249,9 +249,11 @@ export class PtcTextfield {
249
249
  h("div", { class: `mdc-text-field mdc-text-field--outlined mdc-text-field--no-label
250
250
  ${this.fieldId === 'contact-phone' ? 'intl-phone-adjustments' : ''}`, ref: mdcTextfield => {
251
251
  this.mdcTextfield = mdcTextfield;
252
- } }, h("span", { class: "mdc-notched-outline ptc-textfield-outline" }, h("span", { class: "mdc-notched-outline__leading" }), h("span", { class: "mdc-notched-outline__trailing" })), h("input", Object.assign({}, (this.disabled ? { disabled: true } : null), { ref: customInput => {
252
+ } }, h("span", { class: "mdc-notched-outline ptc-textfield-outline" }, h("span", { class: "mdc-notched-outline__leading" }), h("span", { class: "mdc-notched-outline__trailing" })), this.type === 'textarea' ? (h("textarea", Object.assign({}, (this.disabled ? { disabled: true } : null), { ref: customInput => {
253
253
  this.customInput = customInput;
254
- }, id: this.fieldId }, (this.getInputClassName() ? { class: this.getInputClassName() } : null), { type: this.type }, (this.required ? { required: true } : null), (this.ptcMaxLength ? { maxlength: this.ptcMaxLength } : null), { "aria-controls": this.fieldName, "aria-describedby": this.fieldName, "data-eloqua-name": this.ptcDataEloquaName, "data-target-eloqua-name": this.ptcDataTargetEloquaName, value: this.inputValue, name: this.fieldName }, (this.getValidationPattern() ? { pattern: this.getValidationPattern() } : null), (this.ignoreBlindSubmit ? { ignoreBlindSubmit: true } : null), { placeholder: this.placeholderText }))),
254
+ }, id: this.fieldId, class: this.getInputClassName() }, (this.required ? { required: true } : null), (this.ptcMaxLength ? { maxLength: this.ptcMaxLength } : null), { "aria-controls": this.fieldName, "aria-describedby": this.fieldName, "data-eloqua-name": this.ptcDataEloquaName, "data-target-eloqua-name": this.ptcDataTargetEloquaName, value: this.inputValue, name: this.fieldName, placeholder: this.placeholderText }, (this.getValidationPattern() ? { pattern: this.getValidationPattern() } : null), (this.ignoreBlindSubmit ? { ignoreBlindSubmit: true } : null), { onInput: e => this.handleInput(e) }))) : (h("input", Object.assign({}, (this.disabled ? { disabled: true } : null), { ref: customInput => {
255
+ this.customInput = customInput;
256
+ }, id: this.fieldId }, (this.getInputClassName() ? { class: this.getInputClassName() } : null), { type: this.type }, (this.required ? { required: true } : null), (this.ptcMaxLength ? { maxLength: this.ptcMaxLength } : null), { "aria-controls": this.fieldName, "aria-describedby": this.fieldName, "data-eloqua-name": this.ptcDataEloquaName, "data-target-eloqua-name": this.ptcDataTargetEloquaName, value: this.inputValue, name: this.fieldName }, (this.getValidationPattern() ? { pattern: this.getValidationPattern() } : null), (this.ignoreBlindSubmit ? { ignoreBlindSubmit: true } : null), { placeholder: this.placeholderText })))),
255
257
  h("div", { class: `mdc-text-field-helper-line
256
258
  ${!!this.ptcMaxLength ? 'field-with-counter' : ''}` }, h("div", { class: "mdc-text-field-helper-text mdc-text-field-helper-text--validation-msg", id: this.fieldName }, h("svg", { class: "input-error-svg", width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("g", { "clip-path": "url(#clip0_12_1424)" }, h("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M11.3156 0L16 4.68444V11.3156L11.3156 16H4.68444L0 11.3156V4.68444L4.68444 0H11.3156ZM8 10.4C7.36 10.4 6.84444 10.9156 6.84444 11.5556C6.84444 12.1956 7.36 12.7111 8 12.7111C8.64 12.7111 9.15556 12.1956 9.15556 11.5556C9.15556 10.9156 8.64 10.4 8 10.4ZM8.88889 3.55556H7.11111V8.88889H8.88889V3.55556Z", fill: "#AF3231" })), h("defs", null, h("clipPath", { id: "clip0_12_1424" }, h("rect", { width: "16", height: "16", fill: "white" })))), this.helpertext), this.infoText ? h("div", { class: "mdc-text-field-helper-text mdc-text-field-helper-text--info-msg" }, this.infoText) : null, this.ptcMaxLength ? (h("div", { class: "mdc-text-field-character-counter" }, this.inputValue.length, " / ", this.ptcMaxLength)) : null),
257
259
  /* Alert message */
@@ -520,11 +522,14 @@ export class PtcTextfield {
520
522
  "type": "unknown",
521
523
  "mutable": false,
522
524
  "complexType": {
523
- "original": "(input: HTMLInputElement) => string",
524
- "resolved": "(input: HTMLInputElement) => string",
525
+ "original": "(input: HTMLInputElement | HTMLTextAreaElement) => string",
526
+ "resolved": "(input: HTMLInputElement | HTMLTextAreaElement) => string",
525
527
  "references": {
526
528
  "HTMLInputElement": {
527
529
  "location": "global"
530
+ },
531
+ "HTMLTextAreaElement": {
532
+ "location": "global"
528
533
  }
529
534
  }
530
535
  },