@ptcwebops/ptcw-design 3.2.2 → 3.2.3

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 (593) hide show
  1. package/LICENSE +21 -21
  2. package/dist/cjs/author-listing-example.cjs.entry.js +232 -232
  3. package/dist/cjs/bundle-example.cjs.entry.js +43 -43
  4. package/dist/cjs/bundle-jumbotron-example.cjs.entry.js +39 -39
  5. package/dist/cjs/dropdown-item.cjs.entry.js +10 -10
  6. package/dist/cjs/dynamic-box-bundle.cjs.entry.js +25 -25
  7. package/dist/cjs/embedded-form_9.cjs.entry.js +1467 -1467
  8. package/dist/cjs/featured-list.cjs.entry.js +90 -90
  9. package/dist/cjs/fl-tab-content_3.cjs.entry.js +44 -44
  10. package/dist/cjs/footer-form.cjs.entry.js +55 -55
  11. package/dist/cjs/icon-asset.cjs.entry.js +42 -42
  12. package/dist/cjs/innovator-toggle-container.cjs.entry.js +21 -21
  13. package/dist/cjs/{interfaces-0ecd8027.js → interfaces-574e6df7.js} +9 -9
  14. package/dist/cjs/list-item.cjs.entry.js +23 -23
  15. package/dist/cjs/loader.cjs.js +1 -1
  16. package/dist/cjs/my-component.cjs.entry.js +15 -15
  17. package/dist/cjs/ptc-accordion-item.cjs.entry.js +84 -84
  18. package/dist/cjs/ptc-accordion.cjs.entry.js +39 -39
  19. package/dist/cjs/ptc-announcement.cjs.entry.js +52 -52
  20. package/dist/cjs/ptc-back-to-top.cjs.entry.js +71 -71
  21. package/dist/cjs/ptc-background-video.cjs.entry.js +57 -57
  22. package/dist/cjs/ptc-bio-card.cjs.entry.js +24 -24
  23. package/dist/cjs/ptc-breadcrumb_2.cjs.entry.js +132 -132
  24. package/dist/cjs/ptc-brightcov-video.cjs.entry.js +46 -46
  25. package/dist/cjs/ptc-card-bottom_3.cjs.entry.js +130 -130
  26. package/dist/cjs/ptc-card-content.cjs.entry.js +57 -57
  27. package/dist/cjs/ptc-card.cjs.entry.js +74 -74
  28. package/dist/cjs/ptc-case-studies-slider.cjs.entry.js +77 -77
  29. package/dist/cjs/ptc-checkbox.cjs.entry.js +50 -50
  30. package/dist/cjs/ptc-collapse-list.cjs.entry.js +397 -397
  31. package/dist/cjs/ptc-container.cjs.entry.js +33 -33
  32. package/dist/cjs/ptc-date.cjs.entry.js +50 -50
  33. package/dist/cjs/ptc-dropdown.cjs.entry.js +64 -64
  34. package/dist/cjs/ptc-dynamic-card.cjs.entry.js +48 -48
  35. package/dist/cjs/ptc-ellipsis-dropdown.cjs.entry.js +46 -46
  36. package/dist/cjs/ptc-embedded-quiz.cjs.entry.js +89 -89
  37. package/dist/cjs/ptc-featured-list.cjs.entry.js +95 -95
  38. package/dist/cjs/ptc-filter-dropdown_4.cjs.entry.js +277 -277
  39. package/dist/cjs/ptc-filter-level-theater.cjs.entry.js +66 -66
  40. package/dist/cjs/ptc-filter-tag.cjs.entry.js +57 -57
  41. package/dist/cjs/ptc-form.cjs.entry.js +78 -78
  42. package/dist/cjs/ptc-hero-footer-cta.cjs.entry.js +11 -11
  43. package/dist/cjs/ptc-hero.cjs.entry.js +18 -18
  44. package/dist/cjs/ptc-icon-component.cjs.entry.js +60 -60
  45. package/dist/cjs/ptc-icon-list.cjs.entry.js +21 -21
  46. package/dist/cjs/ptc-icon-minimize.cjs.entry.js +43 -43
  47. package/dist/cjs/ptc-image-download-strip.cjs.entry.js +18 -18
  48. package/dist/cjs/ptc-img.cjs.entry.js +122 -122
  49. package/dist/cjs/ptc-link.cjs.entry.js +48 -48
  50. package/dist/cjs/ptc-list.cjs.entry.js +49 -49
  51. package/dist/cjs/ptc-media-card.cjs.entry.js +58 -58
  52. package/dist/cjs/ptc-minimized-nav.cjs.entry.js +12 -12
  53. package/dist/cjs/ptc-mobile-select.cjs.entry.js +62 -62
  54. package/dist/cjs/ptc-modal-quiz.cjs.entry.js +115 -115
  55. package/dist/cjs/ptc-modal.cjs.entry.js +158 -158
  56. package/dist/cjs/ptc-nav-card.cjs.entry.js +36 -36
  57. package/dist/cjs/ptc-nav-link.cjs.entry.js +36 -36
  58. package/dist/cjs/ptc-nav-pills.cjs.entry.js +8 -8
  59. package/dist/cjs/ptc-nav-slider.cjs.entry.js +90 -90
  60. package/dist/cjs/ptc-nav-submenu.cjs.entry.js +37 -37
  61. package/dist/cjs/ptc-news.cjs.entry.js +24 -24
  62. package/dist/cjs/ptc-overlay.cjs.entry.js +23 -23
  63. package/dist/cjs/ptc-pagenation.cjs.entry.js +306 -306
  64. package/dist/cjs/ptc-para.cjs.entry.js +51 -51
  65. package/dist/cjs/ptc-picture.cjs.entry.js +152 -152
  66. package/dist/cjs/ptc-podcast-card.cjs.entry.js +11 -11
  67. package/dist/cjs/ptc-previous-url.cjs.entry.js +11 -11
  68. package/dist/cjs/ptc-pricing-add-on-card.cjs.entry.js +17 -17
  69. package/dist/cjs/ptc-pricing-add-on-section.cjs.entry.js +38 -38
  70. package/dist/cjs/ptc-pricing-block.cjs.entry.js +20 -20
  71. package/dist/cjs/ptc-pricing-packaging-table.cjs.entry.js +359 -359
  72. package/dist/cjs/ptc-pricing-tabs.cjs.entry.js +124 -124
  73. package/dist/cjs/ptc-product-card.cjs.entry.js +22 -22
  74. package/dist/cjs/ptc-product-category.cjs.entry.js +10 -10
  75. package/dist/cjs/ptc-product-dropdown.cjs.entry.js +69 -69
  76. package/dist/cjs/ptc-product-highlight-card.cjs.entry.js +12 -12
  77. package/dist/cjs/ptc-product-list.cjs.entry.js +140 -140
  78. package/dist/cjs/ptc-product-sidebar.cjs.entry.js +128 -128
  79. package/dist/cjs/ptc-progress-bar.cjs.entry.js +16 -16
  80. package/dist/cjs/ptc-quote.cjs.entry.js +24 -24
  81. package/dist/cjs/ptc-readmore-char.cjs.entry.js +24 -24
  82. package/dist/cjs/ptc-readmore.cjs.entry.js +82 -82
  83. package/dist/cjs/ptc-related-card-rail.cjs.entry.js +149 -149
  84. package/dist/cjs/ptc-responsive-wrapper.cjs.entry.js +54 -54
  85. package/dist/cjs/ptc-search-field.cjs.entry.js +71 -71
  86. package/dist/cjs/ptc-seo-title.cjs.entry.js +82 -0
  87. package/dist/cjs/ptc-shopping-cart.cjs.entry.js +50 -50
  88. package/dist/cjs/ptc-slit-card.cjs.entry.js +25 -25
  89. package/dist/cjs/ptc-span.cjs.entry.js +20 -20
  90. package/dist/cjs/ptc-square-card.cjs.entry.js +10 -10
  91. package/dist/cjs/ptc-sticky-icons.cjs.entry.js +32 -32
  92. package/dist/cjs/ptc-sticky-section.cjs.entry.js +30 -30
  93. package/dist/cjs/ptc-sticky-title.cjs.entry.js +23 -23
  94. package/dist/cjs/ptc-subnav-card.cjs.entry.js +16 -16
  95. package/dist/cjs/ptc-subnav.cjs.entry.js +24 -24
  96. package/dist/cjs/ptc-svg-btn.cjs.entry.js +95 -95
  97. package/dist/cjs/ptc-tab-list.cjs.entry.js +143 -143
  98. package/dist/cjs/ptc-tab.cjs.entry.js +20 -20
  99. package/dist/cjs/ptc-tabs.cjs.entry.js +47 -47
  100. package/dist/cjs/ptc-text-copy-with-background.cjs.entry.js +44 -44
  101. package/dist/cjs/ptc-theater-video-modal.cjs.entry.js +81 -81
  102. package/dist/cjs/ptc-tooltip.cjs.entry.js +96 -96
  103. package/dist/cjs/ptc-two-column-media.cjs.entry.js +15 -15
  104. package/dist/cjs/ptc-value-led-card.cjs.entry.js +10 -10
  105. package/dist/cjs/ptc-value-led-content-highlight.cjs.entry.js +8 -8
  106. package/dist/cjs/ptc-value-led-content.cjs.entry.js +8 -8
  107. package/dist/cjs/ptc-value-led-intro.cjs.entry.js +9 -9
  108. package/dist/cjs/ptc-value-led-layout.cjs.entry.js +103 -103
  109. package/dist/cjs/ptc-value-led-speed-bump.cjs.entry.js +21 -21
  110. package/dist/cjs/ptc-value-prop-card.cjs.entry.js +13 -13
  111. package/dist/cjs/ptcw-design.cjs.js +1 -1
  112. package/dist/cjs/sequential-bundle-example.cjs.entry.js +108 -108
  113. package/dist/cjs/sequential-bundle.cjs.entry.js +88 -88
  114. package/dist/cjs/tab-content.cjs.entry.js +27 -27
  115. package/dist/cjs/tab-header.cjs.entry.js +65 -65
  116. package/dist/cjs/{utils-4e734752.js → utils-3e282dbb.js} +93 -93
  117. package/dist/collection/collection-manifest.json +1 -0
  118. package/dist/collection/components/dropdown-item/dropdown-item.js +61 -61
  119. package/dist/collection/components/dynamic-box-bundle/dynamic-box-bundle.js +114 -114
  120. package/dist/collection/components/icon-asset/icon-asset.css +4 -4
  121. package/dist/collection/components/icon-asset/icon-asset.js +199 -199
  122. package/dist/collection/components/icon-asset/media/brands.svg +1381 -1381
  123. package/dist/collection/components/icon-asset/media/designer.svg +489 -489
  124. package/dist/collection/components/icon-asset/media/regular.svg +463 -463
  125. package/dist/collection/components/icon-asset/media/solid.svg +3016 -3016
  126. package/dist/collection/components/icon-asset/media/svg-with-js.min.css +4 -4
  127. package/dist/collection/components/innovator-toggle-container/innovator-toggle-container.js +89 -89
  128. package/dist/collection/components/list-item/list-item.js +163 -163
  129. package/dist/collection/components/max-width-container/max-width-container.css +11 -11
  130. package/dist/collection/components/max-width-container/max-width-container.js +146 -146
  131. package/dist/collection/components/my-component/my-component.css +3 -3
  132. package/dist/collection/components/my-component/my-component.js +82 -82
  133. package/dist/collection/components/organism-bundles/author-listing-example/author-listing-example.css +69 -69
  134. package/dist/collection/components/organism-bundles/author-listing-example/author-listing-example.js +282 -282
  135. package/dist/collection/components/organism-bundles/bundle-example/bundle-example.css +25 -25
  136. package/dist/collection/components/organism-bundles/bundle-example/bundle-example.js +79 -79
  137. package/dist/collection/components/organism-bundles/bundle-featured-list/featured-list.css +219 -219
  138. package/dist/collection/components/organism-bundles/bundle-featured-list/featured-list.js +122 -122
  139. package/dist/collection/components/organism-bundles/bundle-jumbotron-example/bundle-jumbotron-example.css +3 -3
  140. package/dist/collection/components/organism-bundles/bundle-jumbotron-example/bundle-jumbotron-example.js +91 -91
  141. package/dist/collection/components/organism-bundles/form/embedded-form/embedded-form.js +120 -120
  142. package/dist/collection/components/organism-bundles/form/footer-form/footer-form.js +72 -72
  143. package/dist/collection/components/organism-bundles/form/ptc-form/ptc-form.css +13 -13
  144. package/dist/collection/components/organism-bundles/form/ptc-form/ptc-form.js +94 -94
  145. package/dist/collection/components/organism-bundles/sequential-bundle/sequential-bundle.js +116 -116
  146. package/dist/collection/components/organism-bundles/sequential-bundle-example/sequential-bundle-example.css +90 -90
  147. package/dist/collection/components/organism-bundles/sequential-bundle-example/sequential-bundle-example.js +160 -160
  148. package/dist/collection/components/ptc-accordion/ptc-accordion-item/ptc-accordion-item.js +306 -306
  149. package/dist/collection/components/ptc-accordion/ptc-accordion.js +100 -100
  150. package/dist/collection/components/ptc-announcement/ptc-announcement.js +274 -274
  151. package/dist/collection/components/ptc-back-to-top/ptc-back-to-top.js +97 -97
  152. package/dist/collection/components/ptc-background-video/ptc-background-video.js +200 -200
  153. package/dist/collection/components/ptc-bio-card/ptc-bio-card.js +130 -130
  154. package/dist/collection/components/ptc-breadcrumb/ptc-breadcrumb.js +105 -105
  155. package/dist/collection/components/ptc-brightcov-video/ptc-brightcov-video.js +79 -79
  156. package/dist/collection/components/ptc-button/ptc-button.js +323 -323
  157. package/dist/collection/components/ptc-card/ptc-card.js +439 -439
  158. package/dist/collection/components/ptc-card-bottom/ptc-card-bottom.js +116 -116
  159. package/dist/collection/components/ptc-card-content/ptc-card-content.js +212 -212
  160. package/dist/collection/components/ptc-card-wrapper/ptc-card-wrapper.js +253 -253
  161. package/dist/collection/components/ptc-case-studies-slider/ptc-case-studies-slider.js +91 -91
  162. package/dist/collection/components/ptc-checkbox/ptc-checkbox.js +152 -152
  163. package/dist/collection/components/ptc-collapse-list/ptc-collapse-list.js +639 -639
  164. package/dist/collection/components/ptc-container/ptc-container.js +138 -138
  165. package/dist/collection/components/ptc-data-lookup/ptc-data-lookup.js +379 -379
  166. package/dist/collection/components/ptc-date/ptc-date.js +224 -224
  167. package/dist/collection/components/ptc-dropdown/ptc-dropdown.js +162 -162
  168. package/dist/collection/components/ptc-dynamic-card/media/nav-active-dotslick.svg +15 -15
  169. package/dist/collection/components/ptc-dynamic-card/ptc-dynamic-card.js +192 -192
  170. package/dist/collection/components/ptc-ellipsis-dropdown/ptc-ellipsis-dropdown.js +137 -137
  171. package/dist/collection/components/ptc-embedded-quiz/ptc-embedded-quiz.js +146 -146
  172. package/dist/collection/components/ptc-featured-list/fl-tab-content/fl-tab-content.js +61 -61
  173. package/dist/collection/components/ptc-featured-list/fl-tab-header/fl-tab-header.js +114 -114
  174. package/dist/collection/components/ptc-featured-list/fl-tab-image/fl-tab-image.js +61 -61
  175. package/dist/collection/components/ptc-featured-list/ptc-featured-list.js +128 -128
  176. package/dist/collection/components/ptc-filter-dropdown/ptc-filter-dropdown.js +143 -143
  177. package/dist/collection/components/ptc-filter-level-theater/ptc-filter-level-theater.js +124 -124
  178. package/dist/collection/components/ptc-filter-tag/ptc-filter-tag.js +113 -113
  179. package/dist/collection/components/ptc-form-checkbox/ptc-form-checkbox.js +266 -266
  180. package/dist/collection/components/ptc-hero/ptc-hero.js +86 -86
  181. package/dist/collection/components/ptc-hero-footer-cta/ptc-hero-footer-cta.js +78 -78
  182. package/dist/collection/components/ptc-icon-component/ptc-icon-component.js +87 -87
  183. package/dist/collection/components/ptc-icon-list/ptc-icon-list.js +127 -127
  184. package/dist/collection/components/ptc-icon-minimize/ptc-icon-minimize.js +119 -119
  185. package/dist/collection/components/ptc-image-download-strip/ptc-image-download-strip.js +51 -51
  186. package/dist/collection/components/ptc-img/ptc-img.js +311 -311
  187. package/dist/collection/components/ptc-jumbotron/ptc-jumbotron.js +355 -355
  188. package/dist/collection/components/ptc-link/ptc-link.js +239 -239
  189. package/dist/collection/components/ptc-list/ptc-list.js +99 -99
  190. package/dist/collection/components/ptc-media-card/ptc-media-card.js +240 -240
  191. package/dist/collection/components/ptc-minimized-nav/ptc-minimized-nav.js +100 -100
  192. package/dist/collection/components/ptc-mobile-select/ptc-mobile-select.js +199 -199
  193. package/dist/collection/components/ptc-modal/ptc-modal.js +433 -433
  194. package/dist/collection/components/ptc-modal-quiz/ptc-modal-quiz.js +191 -191
  195. package/dist/collection/components/ptc-nav-card/ptc-nav-card.js +224 -224
  196. package/dist/collection/components/ptc-nav-pills/ptc-nav-pills.js +18 -18
  197. package/dist/collection/components/ptc-news/ptc-news.js +176 -176
  198. package/dist/collection/components/ptc-overlay/ptc-overlay.js +131 -131
  199. package/dist/collection/components/ptc-pagenation/ptc-pagenation.js +573 -573
  200. package/dist/collection/components/ptc-para/ptc-para.js +242 -242
  201. package/dist/collection/components/ptc-picture/ptc-picture.js +500 -500
  202. package/dist/collection/components/ptc-podcast-card/ptc-podcast-card.js +78 -78
  203. package/dist/collection/components/ptc-previous-url/ptc-previous-url.js +78 -78
  204. package/dist/collection/components/ptc-pricing-add-on-card/ptc-pricing-add-on-card.js +139 -139
  205. package/dist/collection/components/ptc-pricing-add-on-section/ptc-pricing-add-on-section.js +75 -75
  206. package/dist/collection/components/ptc-pricing-block/ptc-pricing-block.js +70 -70
  207. package/dist/collection/components/ptc-pricing-packaging-table/ptc-pricing-packaging-table.js +501 -501
  208. package/dist/collection/components/ptc-pricing-tabs/ptc-pricing-tabs.js +272 -272
  209. package/dist/collection/components/ptc-product-card/ptc-product-card.js +162 -162
  210. package/dist/collection/components/ptc-product-category/ptc-product-category.js +60 -60
  211. package/dist/collection/components/ptc-product-dropdown/ptc-product-dropdown.js +185 -185
  212. package/dist/collection/components/ptc-product-highlight-card/ptc-product-highlight-card.js +96 -96
  213. package/dist/collection/components/ptc-product-list/ptc-product-list.js +194 -194
  214. package/dist/collection/components/ptc-product-sidebar/ptc-product-sidebar.js +252 -252
  215. package/dist/collection/components/ptc-progress-bar/ptc-progress-bar.js +42 -42
  216. package/dist/collection/components/ptc-quote/ptc-quote.js +145 -145
  217. package/dist/collection/components/ptc-readmore/ptc-readmore.js +326 -326
  218. package/dist/collection/components/ptc-readmore-char/ptc-readmore-char.js +133 -133
  219. package/dist/collection/components/ptc-related-card-rail/ptc-related-card-rail.js +190 -190
  220. package/dist/collection/components/ptc-responsive-wrapper/ptc-responsive-wrapper.css +3 -3
  221. package/dist/collection/components/ptc-responsive-wrapper/ptc-responsive-wrapper.js +65 -65
  222. package/dist/collection/components/ptc-search-field/ptc-search-field.js +247 -247
  223. package/dist/collection/components/ptc-select/ptc-select.js +555 -555
  224. package/dist/collection/components/ptc-seo-title/ptc-seo-title.css +593 -0
  225. package/dist/collection/components/ptc-seo-title/ptc-seo-title.js +314 -0
  226. package/dist/collection/components/ptc-shopping-cart/ptc-shopping-cart.js +97 -97
  227. package/dist/collection/components/ptc-skeleton/ptc-skeleton.js +139 -139
  228. package/dist/collection/components/ptc-slit-card/ptc-slit-card.js +181 -181
  229. package/dist/collection/components/ptc-social-share/ptc-social-share.js +267 -267
  230. package/dist/collection/components/ptc-spacer/ptc-spacer.css +332 -332
  231. package/dist/collection/components/ptc-spacer/ptc-spacer.js +97 -97
  232. package/dist/collection/components/ptc-span/ptc-span.js +107 -107
  233. package/dist/collection/components/ptc-square-card/ptc-square-card.js +60 -60
  234. package/dist/collection/components/ptc-sticky-icons/ptc-sticky-icons.js +51 -51
  235. package/dist/collection/components/ptc-sticky-section/ptc-sticky-section.js +49 -49
  236. package/dist/collection/components/ptc-sticky-title/ptc-sticky-title.js +89 -89
  237. package/dist/collection/components/ptc-svg-btn/ptc-svg-btn.js +109 -109
  238. package/dist/collection/components/ptc-tab-list/ptc-tab-list.js +214 -214
  239. package/dist/collection/components/ptc-tabs/ptc-tab.js +121 -121
  240. package/dist/collection/components/ptc-tabs/ptc-tabs.js +104 -104
  241. package/dist/collection/components/ptc-text-copy-with-background/ptc-text-copy-with-background.js +218 -218
  242. package/dist/collection/components/ptc-textfield/ptc-textfield.js +489 -489
  243. package/dist/collection/components/ptc-theater-video/ptc-theater-video.js +181 -181
  244. package/dist/collection/components/ptc-theater-video-modal/ptc-theater-video-modal.js +128 -128
  245. package/dist/collection/components/ptc-theater-video-playlist/ptc-theater-video-playlist.js +165 -165
  246. package/dist/collection/components/ptc-title/ptc-title.js +310 -310
  247. package/dist/collection/components/ptc-tooltip/ptc-tooltip.js +361 -361
  248. package/dist/collection/components/ptc-two-column-media/ptc-two-column-media.js +48 -48
  249. package/dist/collection/components/ptc-value-led-card/ptc-value-led-card.js +60 -60
  250. package/dist/collection/components/ptc-value-led-content/ptc-value-led-content.js +18 -18
  251. package/dist/collection/components/ptc-value-led-content-highlight/ptc-value-led-content-highlight.js +18 -18
  252. package/dist/collection/components/ptc-value-led-intro/ptc-value-led-intro.js +42 -42
  253. package/dist/collection/components/ptc-value-led-layout/ptc-value-led-layout.js +156 -156
  254. package/dist/collection/components/ptc-value-led-speed-bump/ptc-value-led-speed-bump.js +97 -97
  255. package/dist/collection/components/ptc-value-prop-card/ptc-value-prop-card.js +117 -117
  256. package/dist/collection/components/subnav/ptc-nav-link/ptc-nav-link.js +131 -131
  257. package/dist/collection/components/subnav/ptc-nav-slider/ptc-nav-slider.js +133 -133
  258. package/dist/collection/components/subnav/ptc-nav-submenu/ptc-nav-submenu.js +121 -121
  259. package/dist/collection/components/subnav/ptc-subnav/ptc-subnav.js +78 -78
  260. package/dist/collection/components/subnav/ptc-subnav-card/ptc-subnav-card.js +151 -151
  261. package/dist/collection/components/tab-content/tab-content.js +84 -84
  262. package/dist/collection/components/tab-header/tab-header.js +183 -183
  263. package/dist/collection/index.js +1 -1
  264. package/dist/collection/media/svg-imgs/Back-arrow.svg +11 -11
  265. package/dist/collection/media/svg-imgs/close.svg +10 -10
  266. package/dist/collection/media/svg-imgs/nav-active-dotslick.svg +16 -16
  267. package/dist/collection/media/svg-imgs/play-button-dark.svg +20 -20
  268. package/dist/collection/media/svg-imgs/ptc-shopping-cart-black.svg +3 -3
  269. package/dist/collection/media/svg-imgs/ptc-shopping-cart-white.svg +3 -3
  270. package/dist/collection/media/svg-imgs/slider-arrow-left.svg +18 -18
  271. package/dist/collection/media/svg-imgs/slider-arrow-right.svg +18 -18
  272. package/dist/collection/media/svg-imgs/union.svg +3 -3
  273. package/dist/collection/stories/Accordian.stories.js +205 -205
  274. package/dist/collection/stories/Announcement.stories.js +64 -64
  275. package/dist/collection/stories/BackgroundImage.stories.js +81 -81
  276. package/dist/collection/stories/Breadcrumb.stories.js +50 -50
  277. package/dist/collection/stories/Button.stories.js +119 -119
  278. package/dist/collection/stories/Card.stories.js +234 -234
  279. package/dist/collection/stories/CardWrapper.stories.js +270 -270
  280. package/dist/collection/stories/Checkbox.stories.js +52 -52
  281. package/dist/collection/stories/Date.stories.js +81 -81
  282. package/dist/collection/stories/Dropdown.stories.js +48 -48
  283. package/dist/collection/stories/DynamicCard.stories.js +68 -68
  284. package/dist/collection/stories/FilterTag.stories.js +73 -73
  285. package/dist/collection/stories/FormCheckbox.stories.js +57 -57
  286. package/dist/collection/stories/Hero.stories.js +119 -119
  287. package/dist/collection/stories/Icon.stories.js +71 -71
  288. package/dist/collection/stories/IconList.stories.js +114 -114
  289. package/dist/collection/stories/IconMinimize.stories.js +40 -40
  290. package/dist/collection/stories/Link.stories.js +107 -107
  291. package/dist/collection/stories/ListItem.stories.js +59 -59
  292. package/dist/collection/stories/MaxWidthContainer.stories.js +45 -45
  293. package/dist/collection/stories/MinimizedHeader.stories.js +37 -37
  294. package/dist/collection/stories/MobileSelect.stories.js +79 -79
  295. package/dist/collection/stories/Modal.stories.js +105 -105
  296. package/dist/collection/stories/Overlay.stories.js +48 -48
  297. package/dist/collection/stories/Pagination.stories.js +101 -101
  298. package/dist/collection/stories/Paragraph.stories.js +95 -95
  299. package/dist/collection/stories/Picture.stories.js +139 -139
  300. package/dist/collection/stories/Quote.stories.js +107 -107
  301. package/dist/collection/stories/ReadMore.stories.js +100 -100
  302. package/dist/collection/stories/Select.stories.js +81 -81
  303. package/dist/collection/stories/SocialShare.stories.js +66 -66
  304. package/dist/collection/stories/Spacer.stories.js +48 -48
  305. package/dist/collection/stories/Span.stories.js +57 -57
  306. package/dist/collection/stories/SvgButton.stories.js +34 -34
  307. package/dist/collection/stories/Tabs.stories.js +213 -213
  308. package/dist/collection/stories/TextCopyWithBackground.stories.js +237 -237
  309. package/dist/collection/stories/Textfield.stories.js +81 -81
  310. package/dist/collection/stories/Title.stories.js +115 -115
  311. package/dist/collection/stories/Tooltip.stories.js +112 -112
  312. package/dist/collection/utils/component.js +3 -3
  313. package/dist/collection/utils/elq-lib.js +417 -417
  314. package/dist/collection/utils/interfaces.js +11 -11
  315. package/dist/collection/utils/utils.js +94 -94
  316. package/dist/collection/utils/validation-messages.js +102 -102
  317. package/dist/custom-elements/index.d.ts +6 -0
  318. package/dist/custom-elements/index.js +8898 -8820
  319. package/dist/esm/author-listing-example.entry.js +232 -232
  320. package/dist/esm/bundle-example.entry.js +43 -43
  321. package/dist/esm/bundle-jumbotron-example.entry.js +39 -39
  322. package/dist/esm/dropdown-item.entry.js +10 -10
  323. package/dist/esm/dynamic-box-bundle.entry.js +25 -25
  324. package/dist/esm/embedded-form_9.entry.js +1467 -1467
  325. package/dist/esm/featured-list.entry.js +90 -90
  326. package/dist/esm/fl-tab-content_3.entry.js +44 -44
  327. package/dist/esm/footer-form.entry.js +55 -55
  328. package/dist/esm/icon-asset.entry.js +42 -42
  329. package/dist/esm/innovator-toggle-container.entry.js +21 -21
  330. package/dist/esm/{interfaces-3cb94654.js → interfaces-4caedd26.js} +9 -9
  331. package/dist/esm/list-item.entry.js +23 -23
  332. package/dist/esm/loader.js +1 -1
  333. package/dist/esm/my-component.entry.js +15 -15
  334. package/dist/esm/polyfills/core-js.js +0 -0
  335. package/dist/esm/polyfills/dom.js +0 -0
  336. package/dist/esm/polyfills/es5-html-element.js +0 -0
  337. package/dist/esm/polyfills/index.js +0 -0
  338. package/dist/esm/polyfills/system.js +0 -0
  339. package/dist/esm/ptc-accordion-item.entry.js +84 -84
  340. package/dist/esm/ptc-accordion.entry.js +39 -39
  341. package/dist/esm/ptc-announcement.entry.js +52 -52
  342. package/dist/esm/ptc-back-to-top.entry.js +71 -71
  343. package/dist/esm/ptc-background-video.entry.js +57 -57
  344. package/dist/esm/ptc-bio-card.entry.js +24 -24
  345. package/dist/esm/ptc-breadcrumb_2.entry.js +132 -132
  346. package/dist/esm/ptc-brightcov-video.entry.js +46 -46
  347. package/dist/esm/ptc-card-bottom_3.entry.js +130 -130
  348. package/dist/esm/ptc-card-content.entry.js +57 -57
  349. package/dist/esm/ptc-card.entry.js +74 -74
  350. package/dist/esm/ptc-case-studies-slider.entry.js +77 -77
  351. package/dist/esm/ptc-checkbox.entry.js +50 -50
  352. package/dist/esm/ptc-collapse-list.entry.js +397 -397
  353. package/dist/esm/ptc-container.entry.js +33 -33
  354. package/dist/esm/ptc-date.entry.js +50 -50
  355. package/dist/esm/ptc-dropdown.entry.js +64 -64
  356. package/dist/esm/ptc-dynamic-card.entry.js +48 -48
  357. package/dist/esm/ptc-ellipsis-dropdown.entry.js +46 -46
  358. package/dist/esm/ptc-embedded-quiz.entry.js +89 -89
  359. package/dist/esm/ptc-featured-list.entry.js +95 -95
  360. package/dist/esm/ptc-filter-dropdown_4.entry.js +277 -277
  361. package/dist/esm/ptc-filter-level-theater.entry.js +66 -66
  362. package/dist/esm/ptc-filter-tag.entry.js +57 -57
  363. package/dist/esm/ptc-form.entry.js +78 -78
  364. package/dist/esm/ptc-hero-footer-cta.entry.js +11 -11
  365. package/dist/esm/ptc-hero.entry.js +18 -18
  366. package/dist/esm/ptc-icon-component.entry.js +60 -60
  367. package/dist/esm/ptc-icon-list.entry.js +21 -21
  368. package/dist/esm/ptc-icon-minimize.entry.js +43 -43
  369. package/dist/esm/ptc-image-download-strip.entry.js +18 -18
  370. package/dist/esm/ptc-img.entry.js +122 -122
  371. package/dist/esm/ptc-link.entry.js +48 -48
  372. package/dist/esm/ptc-list.entry.js +49 -49
  373. package/dist/esm/ptc-media-card.entry.js +58 -58
  374. package/dist/esm/ptc-minimized-nav.entry.js +12 -12
  375. package/dist/esm/ptc-mobile-select.entry.js +62 -62
  376. package/dist/esm/ptc-modal-quiz.entry.js +115 -115
  377. package/dist/esm/ptc-modal.entry.js +158 -158
  378. package/dist/esm/ptc-nav-card.entry.js +36 -36
  379. package/dist/esm/ptc-nav-link.entry.js +36 -36
  380. package/dist/esm/ptc-nav-pills.entry.js +8 -8
  381. package/dist/esm/ptc-nav-slider.entry.js +90 -90
  382. package/dist/esm/ptc-nav-submenu.entry.js +37 -37
  383. package/dist/esm/ptc-news.entry.js +24 -24
  384. package/dist/esm/ptc-overlay.entry.js +23 -23
  385. package/dist/esm/ptc-pagenation.entry.js +306 -306
  386. package/dist/esm/ptc-para.entry.js +51 -51
  387. package/dist/esm/ptc-picture.entry.js +152 -152
  388. package/dist/esm/ptc-podcast-card.entry.js +11 -11
  389. package/dist/esm/ptc-previous-url.entry.js +11 -11
  390. package/dist/esm/ptc-pricing-add-on-card.entry.js +17 -17
  391. package/dist/esm/ptc-pricing-add-on-section.entry.js +38 -38
  392. package/dist/esm/ptc-pricing-block.entry.js +20 -20
  393. package/dist/esm/ptc-pricing-packaging-table.entry.js +359 -359
  394. package/dist/esm/ptc-pricing-tabs.entry.js +124 -124
  395. package/dist/esm/ptc-product-card.entry.js +22 -22
  396. package/dist/esm/ptc-product-category.entry.js +10 -10
  397. package/dist/esm/ptc-product-dropdown.entry.js +69 -69
  398. package/dist/esm/ptc-product-highlight-card.entry.js +12 -12
  399. package/dist/esm/ptc-product-list.entry.js +140 -140
  400. package/dist/esm/ptc-product-sidebar.entry.js +128 -128
  401. package/dist/esm/ptc-progress-bar.entry.js +16 -16
  402. package/dist/esm/ptc-quote.entry.js +24 -24
  403. package/dist/esm/ptc-readmore-char.entry.js +24 -24
  404. package/dist/esm/ptc-readmore.entry.js +82 -82
  405. package/dist/esm/ptc-related-card-rail.entry.js +149 -149
  406. package/dist/esm/ptc-responsive-wrapper.entry.js +54 -54
  407. package/dist/esm/ptc-search-field.entry.js +71 -71
  408. package/dist/esm/ptc-seo-title.entry.js +78 -0
  409. package/dist/esm/ptc-shopping-cart.entry.js +50 -50
  410. package/dist/esm/ptc-slit-card.entry.js +25 -25
  411. package/dist/esm/ptc-span.entry.js +20 -20
  412. package/dist/esm/ptc-square-card.entry.js +10 -10
  413. package/dist/esm/ptc-sticky-icons.entry.js +32 -32
  414. package/dist/esm/ptc-sticky-section.entry.js +30 -30
  415. package/dist/esm/ptc-sticky-title.entry.js +23 -23
  416. package/dist/esm/ptc-subnav-card.entry.js +16 -16
  417. package/dist/esm/ptc-subnav.entry.js +24 -24
  418. package/dist/esm/ptc-svg-btn.entry.js +95 -95
  419. package/dist/esm/ptc-tab-list.entry.js +143 -143
  420. package/dist/esm/ptc-tab.entry.js +20 -20
  421. package/dist/esm/ptc-tabs.entry.js +47 -47
  422. package/dist/esm/ptc-text-copy-with-background.entry.js +44 -44
  423. package/dist/esm/ptc-theater-video-modal.entry.js +81 -81
  424. package/dist/esm/ptc-tooltip.entry.js +96 -96
  425. package/dist/esm/ptc-two-column-media.entry.js +15 -15
  426. package/dist/esm/ptc-value-led-card.entry.js +10 -10
  427. package/dist/esm/ptc-value-led-content-highlight.entry.js +8 -8
  428. package/dist/esm/ptc-value-led-content.entry.js +8 -8
  429. package/dist/esm/ptc-value-led-intro.entry.js +9 -9
  430. package/dist/esm/ptc-value-led-layout.entry.js +103 -103
  431. package/dist/esm/ptc-value-led-speed-bump.entry.js +21 -21
  432. package/dist/esm/ptc-value-prop-card.entry.js +13 -13
  433. package/dist/esm/ptcw-design.js +1 -1
  434. package/dist/esm/sequential-bundle-example.entry.js +108 -108
  435. package/dist/esm/sequential-bundle.entry.js +88 -88
  436. package/dist/esm/tab-content.entry.js +27 -27
  437. package/dist/esm/tab-header.entry.js +65 -65
  438. package/dist/esm/{utils-4cafa40c.js → utils-ff66a908.js} +93 -93
  439. package/dist/ptcw-design/media/brands.svg +1381 -1381
  440. package/dist/ptcw-design/media/designer.svg +489 -489
  441. package/dist/ptcw-design/media/nav-active-dotslick.svg +15 -15
  442. package/dist/ptcw-design/media/regular.svg +463 -463
  443. package/dist/ptcw-design/media/solid.svg +3016 -3016
  444. package/dist/ptcw-design/media/svg-with-js.min.css +4 -4
  445. package/dist/ptcw-design/{p-a5716559.entry.js → p-2c6cce6c.entry.js} +1 -1
  446. package/dist/ptcw-design/{p-6ec80150.entry.js → p-46e3abad.entry.js} +1 -1
  447. package/dist/ptcw-design/{p-028f77a5.entry.js → p-57f91d23.entry.js} +1 -1
  448. package/dist/ptcw-design/{p-af91e74f.entry.js → p-7a8726da.entry.js} +1 -1
  449. package/dist/ptcw-design/{p-64052394.entry.js → p-9415f40e.entry.js} +1 -1
  450. package/dist/ptcw-design/{p-d82dc830.entry.js → p-ab16b22b.entry.js} +1 -1
  451. package/dist/ptcw-design/p-b1015faf.entry.js +1 -0
  452. package/dist/ptcw-design/{p-c382cb39.entry.js → p-c12853b9.entry.js} +1 -1
  453. package/dist/ptcw-design/{p-6c32ca0e.entry.js → p-d2a8372d.entry.js} +1 -1
  454. package/dist/ptcw-design/ptcw-design.esm.js +1 -1
  455. package/dist/types/components/dropdown-item/dropdown-item.d.ts +5 -5
  456. package/dist/types/components/dynamic-box-bundle/dynamic-box-bundle.d.ts +10 -10
  457. package/dist/types/components/icon-asset/icon-asset.d.ts +40 -40
  458. package/dist/types/components/innovator-toggle-container/innovator-toggle-container.d.ts +17 -17
  459. package/dist/types/components/list-item/list-item.d.ts +17 -17
  460. package/dist/types/components/max-width-container/max-width-container.d.ts +16 -16
  461. package/dist/types/components/my-component/my-component.d.ts +16 -16
  462. package/dist/types/components/organism-bundles/author-listing-example/author-listing-example.d.ts +12 -12
  463. package/dist/types/components/organism-bundles/bundle-example/bundle-example.d.ts +14 -14
  464. package/dist/types/components/organism-bundles/bundle-featured-list/featured-list.d.ts +12 -12
  465. package/dist/types/components/organism-bundles/bundle-jumbotron-example/bundle-jumbotron-example.d.ts +5 -5
  466. package/dist/types/components/organism-bundles/form/embedded-form/embedded-form.d.ts +31 -31
  467. package/dist/types/components/organism-bundles/form/footer-form/footer-form.d.ts +14 -14
  468. package/dist/types/components/organism-bundles/form/ptc-form/ptc-form.d.ts +25 -25
  469. package/dist/types/components/organism-bundles/sequential-bundle/sequential-bundle.d.ts +12 -12
  470. package/dist/types/components/organism-bundles/sequential-bundle-example/sequential-bundle-example.d.ts +16 -16
  471. package/dist/types/components/ptc-accordion/ptc-accordion-item/ptc-accordion-item.d.ts +63 -63
  472. package/dist/types/components/ptc-accordion/ptc-accordion.d.ts +17 -17
  473. package/dist/types/components/ptc-announcement/ptc-announcement.d.ts +59 -59
  474. package/dist/types/components/ptc-back-to-top/ptc-back-to-top.d.ts +10 -10
  475. package/dist/types/components/ptc-background-video/ptc-background-video.d.ts +45 -45
  476. package/dist/types/components/ptc-bio-card/ptc-bio-card.d.ts +27 -27
  477. package/dist/types/components/ptc-breadcrumb/ptc-breadcrumb.d.ts +20 -20
  478. package/dist/types/components/ptc-brightcov-video/ptc-brightcov-video.d.ts +6 -6
  479. package/dist/types/components/ptc-button/ptc-button.d.ts +68 -68
  480. package/dist/types/components/ptc-card/ptc-card.d.ts +84 -84
  481. package/dist/types/components/ptc-card-bottom/ptc-card-bottom.d.ts +15 -15
  482. package/dist/types/components/ptc-card-content/ptc-card-content.d.ts +19 -19
  483. package/dist/types/components/ptc-card-wrapper/ptc-card-wrapper.d.ts +30 -30
  484. package/dist/types/components/ptc-case-studies-slider/ptc-case-studies-slider.d.ts +14 -14
  485. package/dist/types/components/ptc-checkbox/ptc-checkbox.d.ts +14 -14
  486. package/dist/types/components/ptc-collapse-list/ptc-collapse-list.d.ts +60 -60
  487. package/dist/types/components/ptc-container/ptc-container.d.ts +13 -13
  488. package/dist/types/components/ptc-data-lookup/ptc-data-lookup.d.ts +27 -27
  489. package/dist/types/components/ptc-date/ptc-date.d.ts +46 -46
  490. package/dist/types/components/ptc-dropdown/ptc-dropdown.d.ts +19 -19
  491. package/dist/types/components/ptc-dynamic-card/ptc-dynamic-card.d.ts +27 -27
  492. package/dist/types/components/ptc-ellipsis-dropdown/ptc-ellipsis-dropdown.d.ts +15 -15
  493. package/dist/types/components/ptc-embedded-quiz/ptc-embedded-quiz.d.ts +21 -21
  494. package/dist/types/components/ptc-featured-list/fl-tab-content/fl-tab-content.d.ts +5 -5
  495. package/dist/types/components/ptc-featured-list/fl-tab-header/fl-tab-header.d.ts +12 -12
  496. package/dist/types/components/ptc-featured-list/fl-tab-image/fl-tab-image.d.ts +5 -5
  497. package/dist/types/components/ptc-featured-list/ptc-featured-list.d.ts +12 -12
  498. package/dist/types/components/ptc-filter-dropdown/ptc-filter-dropdown.d.ts +26 -26
  499. package/dist/types/components/ptc-filter-level-theater/ptc-filter-level-theater.d.ts +17 -17
  500. package/dist/types/components/ptc-filter-tag/ptc-filter-tag.d.ts +17 -17
  501. package/dist/types/components/ptc-form-checkbox/ptc-form-checkbox.d.ts +25 -25
  502. package/dist/types/components/ptc-hero/ptc-hero.d.ts +16 -16
  503. package/dist/types/components/ptc-hero-footer-cta/ptc-hero-footer-cta.d.ts +6 -6
  504. package/dist/types/components/ptc-icon-component/ptc-icon-component.d.ts +17 -17
  505. package/dist/types/components/ptc-icon-list/ptc-icon-list.d.ts +21 -21
  506. package/dist/types/components/ptc-icon-minimize/ptc-icon-minimize.d.ts +12 -12
  507. package/dist/types/components/ptc-image-download-strip/ptc-image-download-strip.d.ts +9 -9
  508. package/dist/types/components/ptc-img/ptc-img.d.ts +55 -55
  509. package/dist/types/components/ptc-jumbotron/ptc-jumbotron.d.ts +26 -26
  510. package/dist/types/components/ptc-link/ptc-link.d.ts +44 -44
  511. package/dist/types/components/ptc-list/ptc-list.d.ts +8 -8
  512. package/dist/types/components/ptc-media-card/ptc-media-card.d.ts +52 -52
  513. package/dist/types/components/ptc-minimized-nav/ptc-minimized-nav.d.ts +7 -7
  514. package/dist/types/components/ptc-mobile-select/ptc-mobile-select.d.ts +36 -36
  515. package/dist/types/components/ptc-modal/ptc-modal.d.ts +76 -76
  516. package/dist/types/components/ptc-modal-quiz/ptc-modal-quiz.d.ts +36 -36
  517. package/dist/types/components/ptc-nav-card/ptc-nav-card.d.ts +46 -46
  518. package/dist/types/components/ptc-nav-pills/ptc-nav-pills.d.ts +3 -3
  519. package/dist/types/components/ptc-news/ptc-news.d.ts +36 -36
  520. package/dist/types/components/ptc-overlay/ptc-overlay.d.ts +21 -21
  521. package/dist/types/components/ptc-pagenation/ptc-pagenation.d.ts +40 -40
  522. package/dist/types/components/ptc-para/ptc-para.d.ts +47 -47
  523. package/dist/types/components/ptc-picture/ptc-picture.d.ts +102 -102
  524. package/dist/types/components/ptc-podcast-card/ptc-podcast-card.d.ts +15 -15
  525. package/dist/types/components/ptc-previous-url/ptc-previous-url.d.ts +9 -9
  526. package/dist/types/components/ptc-pricing-add-on-card/ptc-pricing-add-on-card.d.ts +31 -31
  527. package/dist/types/components/ptc-pricing-add-on-section/ptc-pricing-add-on-section.d.ts +22 -22
  528. package/dist/types/components/ptc-pricing-block/ptc-pricing-block.d.ts +7 -7
  529. package/dist/types/components/ptc-pricing-packaging-table/ptc-pricing-packaging-table.d.ts +87 -87
  530. package/dist/types/components/ptc-pricing-tabs/ptc-pricing-tabs.d.ts +52 -52
  531. package/dist/types/components/ptc-product-card/ptc-product-card.d.ts +37 -37
  532. package/dist/types/components/ptc-product-category/ptc-product-category.d.ts +5 -5
  533. package/dist/types/components/ptc-product-dropdown/ptc-product-dropdown.d.ts +18 -18
  534. package/dist/types/components/ptc-product-highlight-card/ptc-product-highlight-card.d.ts +23 -23
  535. package/dist/types/components/ptc-product-list/ptc-product-list.d.ts +18 -18
  536. package/dist/types/components/ptc-product-sidebar/ptc-product-sidebar.d.ts +31 -31
  537. package/dist/types/components/ptc-progress-bar/ptc-progress-bar.d.ts +5 -5
  538. package/dist/types/components/ptc-quote/ptc-quote.d.ts +29 -29
  539. package/dist/types/components/ptc-readmore/ptc-readmore.d.ts +58 -58
  540. package/dist/types/components/ptc-readmore-char/ptc-readmore-char.d.ts +30 -30
  541. package/dist/types/components/ptc-related-card-rail/ptc-related-card-rail.d.ts +30 -30
  542. package/dist/types/components/ptc-responsive-wrapper/ptc-responsive-wrapper.d.ts +8 -8
  543. package/dist/types/components/ptc-search-field/ptc-search-field.d.ts +23 -23
  544. package/dist/types/components/ptc-select/ptc-select.d.ts +29 -29
  545. package/dist/types/components/ptc-seo-title/ptc-seo-title.d.ts +55 -0
  546. package/dist/types/components/ptc-shopping-cart/ptc-shopping-cart.d.ts +6 -6
  547. package/dist/types/components/ptc-skeleton/ptc-skeleton.d.ts +10 -10
  548. package/dist/types/components/ptc-slit-card/ptc-slit-card.d.ts +36 -36
  549. package/dist/types/components/ptc-social-share/ptc-social-share.d.ts +37 -37
  550. package/dist/types/components/ptc-spacer/ptc-spacer.d.ts +16 -16
  551. package/dist/types/components/ptc-span/ptc-span.d.ts +20 -20
  552. package/dist/types/components/ptc-square-card/ptc-square-card.d.ts +11 -11
  553. package/dist/types/components/ptc-sticky-icons/ptc-sticky-icons.d.ts +7 -7
  554. package/dist/types/components/ptc-sticky-section/ptc-sticky-section.d.ts +9 -9
  555. package/dist/types/components/ptc-sticky-title/ptc-sticky-title.d.ts +8 -8
  556. package/dist/types/components/ptc-svg-btn/ptc-svg-btn.d.ts +20 -20
  557. package/dist/types/components/ptc-tab-list/ptc-tab-list.d.ts +23 -23
  558. package/dist/types/components/ptc-tabs/ptc-tab.d.ts +9 -9
  559. package/dist/types/components/ptc-tabs/ptc-tabs.d.ts +10 -10
  560. package/dist/types/components/ptc-text-copy-with-background/ptc-text-copy-with-background.d.ts +42 -42
  561. package/dist/types/components/ptc-textfield/ptc-textfield.d.ts +35 -35
  562. package/dist/types/components/ptc-theater-video/ptc-theater-video.d.ts +14 -14
  563. package/dist/types/components/ptc-theater-video-modal/ptc-theater-video-modal.d.ts +16 -16
  564. package/dist/types/components/ptc-theater-video-playlist/ptc-theater-video-playlist.d.ts +26 -26
  565. package/dist/types/components/ptc-title/ptc-title.d.ts +54 -54
  566. package/dist/types/components/ptc-tooltip/ptc-tooltip.d.ts +63 -63
  567. package/dist/types/components/ptc-two-column-media/ptc-two-column-media.d.ts +9 -9
  568. package/dist/types/components/ptc-value-led-card/ptc-value-led-card.d.ts +5 -5
  569. package/dist/types/components/ptc-value-led-content/ptc-value-led-content.d.ts +3 -3
  570. package/dist/types/components/ptc-value-led-content-highlight/ptc-value-led-content-highlight.d.ts +3 -3
  571. package/dist/types/components/ptc-value-led-intro/ptc-value-led-intro.d.ts +4 -4
  572. package/dist/types/components/ptc-value-led-layout/ptc-value-led-layout.d.ts +16 -16
  573. package/dist/types/components/ptc-value-led-speed-bump/ptc-value-led-speed-bump.d.ts +10 -10
  574. package/dist/types/components/ptc-value-prop-card/ptc-value-prop-card.d.ts +23 -23
  575. package/dist/types/components/subnav/ptc-nav-link/ptc-nav-link.d.ts +26 -26
  576. package/dist/types/components/subnav/ptc-nav-slider/ptc-nav-slider.d.ts +11 -11
  577. package/dist/types/components/subnav/ptc-nav-submenu/ptc-nav-submenu.d.ts +23 -23
  578. package/dist/types/components/subnav/ptc-subnav/ptc-subnav.d.ts +11 -11
  579. package/dist/types/components/subnav/ptc-subnav-card/ptc-subnav-card.d.ts +31 -31
  580. package/dist/types/components/tab-content/tab-content.d.ts +12 -12
  581. package/dist/types/components/tab-header/tab-header.d.ts +22 -22
  582. package/dist/types/components.d.ts +347 -186
  583. package/dist/types/index.d.ts +1 -1
  584. package/dist/types/utils/component.d.ts +1 -1
  585. package/dist/types/utils/eloqua.d.ts +8 -8
  586. package/dist/types/utils/elq-lib.d.ts +55 -55
  587. package/dist/types/utils/interfaces.d.ts +32 -32
  588. package/dist/types/utils/utils.d.ts +6 -6
  589. package/dist/types/utils/validation-messages.d.ts +102 -102
  590. package/package.json +89 -89
  591. package/readme.md +19 -19
  592. /package/dist/ptcw-design/{p-240733ce.js → p-711bcdad.js} +0 -0
  593. /package/dist/ptcw-design/{p-5c1c23ad.js → p-ff83c1c4.js} +0 -0
@@ -1,417 +1,417 @@
1
- import './eloqua.d.ts';
2
- // Define the ElqLib class
3
- export class ElqLib {
4
- constructor(params) {
5
- this.params = params;
6
- this.url_vars = {};
7
- this.visitor_elq_id = null;
8
- this.field_mappings = [];
9
- this.callback_queue = [];
10
- this.fields_populated = false;
11
- this.user_elq_email = '';
12
- this.user_elq_firstname = '';
13
- this.user_elq_lastname = '';
14
- // Merge defaults with params
15
- const defaults = {
16
- elq_site_id: '',
17
- elq_visitor_lookup_key: '',
18
- elq_recipient_id_lookup_key: '',
19
- elq_contact_lookup_key: '',
20
- elq_field_email_rec_id: 'V_EmailRecipientID',
21
- elq_field_contact_email: 'C_EmailAddress',
22
- elq_field_visitor_email: 'V_Email_Address',
23
- elq_field_visitor_firstname: 'V_First_Name',
24
- elq_field_visitor_lastname: 'V_Last_Name',
25
- notme_link_id: 'not-me-link-id',
26
- notme_fields_class: null,
27
- notme_message: 'Not {name}? Click here.',
28
- notme_message_noname: 'Not your details below? Click here.',
29
- };
30
- this.params = Object.assign(Object.assign({}, defaults), this.params);
31
- this.init();
32
- }
33
- init() {
34
- // Merge defaults with user-provided params if not already done in the constructor
35
- // ...
36
- // Set Eloqua site ID
37
- this.setEloquaSiteId();
38
- // Load Eloqua scripts
39
- this.async_load();
40
- // Store URL variables
41
- this.store_url_vars();
42
- // Store visitor's Eloqua IDgit
43
- this.store_visitor_elq_id();
44
- // init noteme link;
45
- // this.init_notme();
46
- // Set the global Eloqua callback function
47
- window.SetElqContent = this.eloqua_callback.bind(this);
48
- }
49
- setEloquaSiteId() {
50
- if (this.params.elq_site_id) {
51
- ElqLib._elqQ.push(['elqSetSiteId', this.params.elq_site_id]);
52
- ElqLib._elqQ.push(['elqUseFirstPartyCookie', 'tracking.ptc.com']);
53
- ElqLib._elqQ.push(['elqTrackPageView', window.location.href]);
54
- }
55
- }
56
- fire_pageview(url) {
57
- try {
58
- if (typeof url === 'undefined') {
59
- ElqLib._elqQ.push(['elqTrackPageView']);
60
- }
61
- else {
62
- ElqLib._elqQ.push(['elqTrackPageView', url]);
63
- }
64
- console.log('TRACKING: Eloqua pageview fired for URL: ' + (url || 'current page'));
65
- }
66
- catch (e) {
67
- console.log('TRACKING: Could not fire Eloqua pageview: ', e);
68
- }
69
- }
70
- find_eloqua_contact() {
71
- console.log('CONTACT LOOKUP: Attempting to find Eloqua contact...');
72
- // Queue callback action for the return of lookup
73
- this.callback_queue.push(this.handle_visitor_lookup.bind(this));
74
- // Start with a recipient lookup if ID was supplied in URL
75
- if (this.visitor_elq_id !== null) {
76
- this.lookup_visitor_by_recipient_id();
77
- }
78
- else {
79
- // If no visitor ID, attempt to do a visitor lookup with an Eloqua cookie
80
- this.lookup_visitor_by_cookie(); //preference center
81
- this.lookup_contact_by_email();
82
- }
83
- }
84
- add_field_mapping(mapping) {
85
- this.field_mappings.push(mapping);
86
- }
87
- add_queue_action(action) {
88
- this.callback_queue.push(action);
89
- }
90
- store_url_vars() {
91
- // Clear the current url_vars
92
- this.url_vars = {};
93
- // Split the URL by the '?' to get the query string part
94
- const queryString = window.location.search.substring(1);
95
- // Split the query string by '&' to get each key-value pair
96
- queryString.split('&').forEach(paramString => {
97
- // Split the key-value pairs by '=' to separate keys and values
98
- let [key, value] = paramString.split('=');
99
- // Decode URI components to handle URL encoding
100
- key = decodeURIComponent(key);
101
- value = decodeURIComponent(value);
102
- // Store the key-value pair in the url_vars object
103
- this.url_vars[key] = value;
104
- });
105
- // Optionally, log the stored URL variables
106
- console.log('URL variables stored:', this.url_vars);
107
- }
108
- store_visitor_elq_id() {
109
- console.log("INIT: Looking for visitor's Eloqua ID in URL...");
110
- const elqIdParam = this.url_vars['elq'];
111
- if (elqIdParam) {
112
- const elqId = elqIdParam.toUpperCase().replace(/(.{8})(.{4})(.{4})(.{4})(.{12})/, '$1-$2-$3-$4-$5');
113
- this.visitor_elq_id = elqId;
114
- console.log(`INIT: ...visitor Eloqua ID found in URL: ${elqId}`);
115
- }
116
- else {
117
- this.visitor_elq_id = null;
118
- console.log('INIT: ...no visitor Eloqua ID found in URL');
119
- }
120
- }
121
- // private merge(root: any, ...sources: any[]): any {
122
- // sources.forEach(source => {
123
- // for (const key in source) {
124
- // if (source.hasOwnProperty(key)) {
125
- // root[key] = source[key];
126
- // }
127
- // }
128
- // });
129
- // return root;
130
- // }
131
- eloqua_callback() {
132
- console.log('LOOKUP: Eloqua lookup finished');
133
- // Process each action in the callback queue
134
- let actionSucceeded = true;
135
- while (actionSucceeded && this.callback_queue.length > 0) {
136
- const action = this.callback_queue.shift();
137
- if (action) {
138
- console.log(`QUEUE: Executing action`);
139
- actionSucceeded = action(); // Execute the action. It must return a boolean indicating success.
140
- if (actionSucceeded) {
141
- console.log('QUEUE: Action executed successfully, removed from queue');
142
- }
143
- else {
144
- console.log('QUEUE: Action failed, re-adding to queue');
145
- this.callback_queue.unshift(action); // Re-add the action to the front of the queue
146
- break; // Break out of the loop if an action fails
147
- }
148
- }
149
- }
150
- // After processing the queue, update user details or perform other operations
151
- if (actionSucceeded) {
152
- this.update_user_details();
153
- this.populate_mapped_fields();
154
- }
155
- // ...additional code to handle the aftermath of callback processing...
156
- }
157
- lookup_visitor_by_cookie() {
158
- if (this.params.elq_visitor_lookup_key != '') {
159
- ElqLib._elqQ.push(['elqDataLookup', escape(this.params.elq_visitor_lookup_key), '']);
160
- console.log('LOOKUP: Visitor lookup sent using Eloqua cookie');
161
- }
162
- else {
163
- console.log('LOOKUP: A visitor lookup cannot be performed as no lookup key was defined');
164
- }
165
- }
166
- lookup_visitor_by_recipient_id() {
167
- if (this.params.elq_recipient_id_lookup_key != '') {
168
- ElqLib._elqQ.push([
169
- 'elqDataLookup',
170
- escape(this.params.elq_recipient_id_lookup_key),
171
- '<' + this.params.elq_field_email_rec_id + '>' + this.visitor_elq_id + '</' + this.params.elq_field_email_rec_id + '>',
172
- ]);
173
- console.log('LOOKUP: Visitor lookup sent using email recipient id: ' + this.visitor_elq_id);
174
- }
175
- else {
176
- console.log('LOOKUP: A visitor lookup cannot be performed as no lookup key was defined');
177
- }
178
- }
179
- lookup_contact_by_email() {
180
- if (this.params.elq_contact_lookup_key != '') {
181
- ElqLib._elqQ.push([
182
- 'elqDataLookup',
183
- escape(this.params.elq_contact_lookup_key),
184
- '<' + this.params.elq_field_contact_email + '>' + this.user_elq_email + '</' + this.params.elq_field_contact_email + '>',
185
- ]);
186
- console.log('LOOKUP: Contact lookup sent using email address: ' + this.user_elq_email);
187
- }
188
- else {
189
- console.log('LOOKUP: A visitor lookup cannot be performed as no lookup key was defined');
190
- }
191
- }
192
- handle_visitor_lookup() {
193
- //console.log('Contact Email: ' + this.params.elq_field_contact_email)
194
- const email = window.GetElqContentPersonalizationValue(this.params.elq_field_contact_email); //it was elq_field_visitor_email ( V_Email_Address)
195
- if (email) {
196
- console.log(`LOOKUP: Found contact email address: ${email}`);
197
- this.user_elq_email = email.trim();
198
- this.lookup_contact_by_email();
199
- this.callback_queue.push(this.handle_contact_lookup.bind(this));
200
- return true;
201
- }
202
- else {
203
- return false;
204
- }
205
- }
206
- handle_contact_lookup() {
207
- if (window.GetElqContentPersonalizationValue(this.params.elq_field_contact_email) != '') {
208
- console.log('LOOKUP: Found contact email address: ' + window.GetElqContentPersonalizationValue(this.params.elq_field_contact_email));
209
- return true;
210
- }
211
- else {
212
- return false;
213
- }
214
- }
215
- populate_mapped_fields() {
216
- console.log('MAPPING: Starting field mapping');
217
- //debugger;
218
- this.field_mappings.forEach(({ elementId, elqFieldName }) => {
219
- const fieldValue = window.GetElqContentPersonalizationValue(elqFieldName);
220
- if (elementId !== 'contact-country') {
221
- const element = document.getElementById(elementId);
222
- console.log('element ID of field mappings: ' + elementId);
223
- console.log('fieldValue ID of field mappings: ' + fieldValue);
224
- if (element && fieldValue) {
225
- element.value = fieldValue;
226
- //element.style.display = 'none'; // Hide the field.
227
- if (element.closest('ptc-textfield')) {
228
- element.closest('ptc-textfield').style.display = 'none';
229
- element.closest('ptc-textfield').inputValue = fieldValue;
230
- }
231
- else if (element.closest('ptc-select')) {
232
- element.closest('ptc-select').style.display = 'none';
233
- element.closest("ptc-select").selectedValue = fieldValue;
234
- }
235
- this.fields_populated = true;
236
- }
237
- }
238
- else {
239
- const countryEle = document.getElementById(elementId);
240
- if (countryEle && fieldValue) {
241
- countryEle.textContent = fieldValue;
242
- countryEle.closest("ptc-select").selectedValue = fieldValue;
243
- }
244
- // debugger;
245
- if (countryEle.closest('ptc-select')) {
246
- countryEle.closest('ptc-select').style.display = 'none';
247
- }
248
- }
249
- });
250
- console.log('MAPPING: Finished ');
251
- if (this.fields_populated) {
252
- this.update_notme_link();
253
- }
254
- }
255
- update_user_details() {
256
- console.log('displaying user info...');
257
- if (window.GetElqContentPersonalizationValue(this.params.elq_field_contact_email) !== '') {
258
- document
259
- .querySelectorAll('input[type=text], input[type=tel], input[name="phonenumber"], input[name="phonenumbertwo"], input[type=email], select, textarea, span.mdc-select__selected-text')
260
- .forEach((element) => {
261
- if (element.tagName === 'SPAN') {
262
- const spanText = element;
263
- const spanEloquaName = spanText.getAttribute('data-eloqua-name');
264
- if (spanEloquaName !== null) {
265
- const spanElqValue = window.GetElqContentPersonalizationValue(spanEloquaName);
266
- if (spanElqValue !== '' && spanElqValue.length > 0) {
267
- spanText.textContent = spanElqValue;
268
- spanText.closest('ptc-select').defaultValue = spanElqValue;
269
- }
270
- }
271
- }
272
- else if (element.className.includes('intl-tel-input')) {
273
- const telInput = element;
274
- const eloquaName = telInput.getAttribute('data-eloqua-name');
275
- if (eloquaName !== null) {
276
- const elqValue = window.GetElqContentPersonalizationValue(eloquaName);
277
- if (elqValue !== '' && elqValue.length > 0) {
278
- setTimeout(() => {
279
- telInput.placeholder = elqValue;
280
- telInput.value = elqValue;
281
- telInput.closest('ptc-textfield').inputValue = elqValue;
282
- }, 1000);
283
- }
284
- }
285
- }
286
- else {
287
- const input = element;
288
- const eloquaName = input.getAttribute('data-eloqua-name');
289
- if (eloquaName !== null) {
290
- const elqValue = window.GetElqContentPersonalizationValue(eloquaName);
291
- if (elqValue !== '' && elqValue.length > 0) {
292
- input.value = elqValue;
293
- input.closest('ptc-textfield').inputValue = elqValue;
294
- }
295
- }
296
- }
297
- });
298
- }
299
- if (this.user_elq_email == '' && window.GetElqContentPersonalizationValue(this.params.elq_field_visitor_email) != '') {
300
- this.user_elq_email = window.GetElqContentPersonalizationValue(this.params.elq_field_visitor_email);
301
- }
302
- if (this.user_elq_firstname == '' && window.GetElqContentPersonalizationValue(this.params.elq_field_visitor_firstname) != '') {
303
- this.user_elq_firstname = window.GetElqContentPersonalizationValue(this.params.elq_field_visitor_firstname);
304
- }
305
- if (this.user_elq_lastname == '' && window.GetElqContentPersonalizationValue(this.params.elq_field_visitor_lastname) != '') {
306
- this.user_elq_lastname = window.GetElqContentPersonalizationValue(this.params.elq_field_visitor_lastname);
307
- }
308
- }
309
- update_notme_link() {
310
- // Assuming the user's first and last name are available from Eloqua fields
311
- const firstName = window.GetElqContentPersonalizationValue(this.params.elq_field_visitor_firstname);
312
- const lastName = window.GetElqContentPersonalizationValue(this.params.elq_field_visitor_lastname);
313
- const topAdditional = document.getElementById('not-me-additional-top');
314
- const bottomAdditional = document.getElementById('not-me-additional-bottom');
315
- if (topAdditional) {
316
- let message = topAdditional.innerHTML;
317
- console.log('first name: ' + firstName);
318
- if (firstName && lastName) {
319
- message = message.replace('{name}', lastName + ' ' + firstName);
320
- }
321
- else {
322
- message = this.params.notme_message_noname;
323
- }
324
- topAdditional.innerHTML = message;
325
- topAdditional.style.display = 'block';
326
- }
327
- if (bottomAdditional) {
328
- //bottomAdditional.innerHTML="Click the button below to recieve email confirmation.";
329
- bottomAdditional.style.display = 'block';
330
- }
331
- const notMeLinkElement = document.getElementById(this.params.notme_link_id);
332
- if (notMeLinkElement) {
333
- notMeLinkElement.style.display = 'block';
334
- notMeLinkElement.onclick = this.remove_user_details.bind(this);
335
- }
336
- }
337
- // private init_notme(): void{
338
- // const topAdditional = document.getElementById('not-me-additional-top');
339
- // const bottomAdditional = document.getElementById('not-me-additional-bottom');
340
- // console.log("top: " + topAdditional)
341
- // if(topAdditional) topAdditional.style.display = 'none';
342
- // if(bottomAdditional) bottomAdditional.style.display = 'none';
343
- // }
344
- remove_user_details(e) {
345
- e.preventDefault();
346
- this.user_elq_email = '';
347
- this.user_elq_firstname = '';
348
- this.user_elq_lastname = '';
349
- // $('.' + this.params.notme_fields_class).val('');
350
- //const linkDiv = document.getElementById(this.params.notme_link_id);
351
- const topAdditional = document.getElementById('not-me-additional-top');
352
- const bottomAdditional = document.getElementById('not-me-additional-bottom');
353
- //linkDiv.querySelector('a').remove();
354
- topAdditional.style.display = 'none';
355
- bottomAdditional.style.display = 'none';
356
- this.refreshForm();
357
- return false;
358
- }
359
- refreshForm() {
360
- this.field_mappings.forEach(({ elementId }) => {
361
- if (elementId !== 'contact-country') {
362
- const element = document.getElementById(elementId);
363
- if (element) {
364
- console.log('element: ' + element);
365
- element.value = ''; // Reset the value
366
- if (element.closest('ptc-textfield')) {
367
- element.closest('ptc-textfield').style.display = '';
368
- }
369
- else if (element.closest('ptc-select')) {
370
- element.closest('ptc-select').style.display = '';
371
- }
372
- }
373
- }
374
- else {
375
- const countryEle = document.getElementById(elementId);
376
- if (countryEle) {
377
- countryEle.textContent = '';
378
- }
379
- // debugger;
380
- if (countryEle.closest('ptc-select')) {
381
- countryEle.closest('ptc-select').style.display = '';
382
- }
383
- }
384
- });
385
- this.clearEloquaCookie('elq-uid'); // Optionally clear the Eloqua cookie
386
- this.fields_populated = false;
387
- //this.update_notme_link(); // Update the 'Not Me' link if necessary
388
- }
389
- clearEloquaCookie(name) {
390
- document.cookie = name + '=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;';
391
- console.log('cookie cleared');
392
- }
393
- // Private Method to load Eloqua Scripts
394
- async_load() {
395
- const scriptUrl = 'https://img.en25.com/i/elqCfg.min.js';
396
- const scriptElement = document.createElement('script');
397
- scriptElement.type = 'text/javascript';
398
- scriptElement.async = true;
399
- scriptElement.src = scriptUrl;
400
- // Error handling for script loading
401
- scriptElement.onerror = errorEvent => {
402
- console.log(`Error loading script: ${errorEvent}`);
403
- };
404
- // Append the script element to the head of the document, or before the first script tag found
405
- const firstScriptTag = document.getElementsByTagName('script')[0];
406
- if (firstScriptTag && firstScriptTag.parentNode) {
407
- firstScriptTag.parentNode.insertBefore(scriptElement, firstScriptTag);
408
- }
409
- else {
410
- document.head.appendChild(scriptElement);
411
- }
412
- console.log(`Async loading of script ${scriptUrl} initiated.`);
413
- }
414
- }
415
- ElqLib._elqQ = window['_elqQ'] || [];
416
- // Static member initialization
417
- //ElqLib._elqQ = window['_elqQ'] || [];
1
+ import './eloqua.d.ts';
2
+ // Define the ElqLib class
3
+ export class ElqLib {
4
+ constructor(params) {
5
+ this.params = params;
6
+ this.url_vars = {};
7
+ this.visitor_elq_id = null;
8
+ this.field_mappings = [];
9
+ this.callback_queue = [];
10
+ this.fields_populated = false;
11
+ this.user_elq_email = '';
12
+ this.user_elq_firstname = '';
13
+ this.user_elq_lastname = '';
14
+ // Merge defaults with params
15
+ const defaults = {
16
+ elq_site_id: '',
17
+ elq_visitor_lookup_key: '',
18
+ elq_recipient_id_lookup_key: '',
19
+ elq_contact_lookup_key: '',
20
+ elq_field_email_rec_id: 'V_EmailRecipientID',
21
+ elq_field_contact_email: 'C_EmailAddress',
22
+ elq_field_visitor_email: 'V_Email_Address',
23
+ elq_field_visitor_firstname: 'V_First_Name',
24
+ elq_field_visitor_lastname: 'V_Last_Name',
25
+ notme_link_id: 'not-me-link-id',
26
+ notme_fields_class: null,
27
+ notme_message: 'Not {name}? Click here.',
28
+ notme_message_noname: 'Not your details below? Click here.',
29
+ };
30
+ this.params = Object.assign(Object.assign({}, defaults), this.params);
31
+ this.init();
32
+ }
33
+ init() {
34
+ // Merge defaults with user-provided params if not already done in the constructor
35
+ // ...
36
+ // Set Eloqua site ID
37
+ this.setEloquaSiteId();
38
+ // Load Eloqua scripts
39
+ this.async_load();
40
+ // Store URL variables
41
+ this.store_url_vars();
42
+ // Store visitor's Eloqua IDgit
43
+ this.store_visitor_elq_id();
44
+ // init noteme link;
45
+ // this.init_notme();
46
+ // Set the global Eloqua callback function
47
+ window.SetElqContent = this.eloqua_callback.bind(this);
48
+ }
49
+ setEloquaSiteId() {
50
+ if (this.params.elq_site_id) {
51
+ ElqLib._elqQ.push(['elqSetSiteId', this.params.elq_site_id]);
52
+ ElqLib._elqQ.push(['elqUseFirstPartyCookie', 'tracking.ptc.com']);
53
+ ElqLib._elqQ.push(['elqTrackPageView', window.location.href]);
54
+ }
55
+ }
56
+ fire_pageview(url) {
57
+ try {
58
+ if (typeof url === 'undefined') {
59
+ ElqLib._elqQ.push(['elqTrackPageView']);
60
+ }
61
+ else {
62
+ ElqLib._elqQ.push(['elqTrackPageView', url]);
63
+ }
64
+ console.log('TRACKING: Eloqua pageview fired for URL: ' + (url || 'current page'));
65
+ }
66
+ catch (e) {
67
+ console.log('TRACKING: Could not fire Eloqua pageview: ', e);
68
+ }
69
+ }
70
+ find_eloqua_contact() {
71
+ console.log('CONTACT LOOKUP: Attempting to find Eloqua contact...');
72
+ // Queue callback action for the return of lookup
73
+ this.callback_queue.push(this.handle_visitor_lookup.bind(this));
74
+ // Start with a recipient lookup if ID was supplied in URL
75
+ if (this.visitor_elq_id !== null) {
76
+ this.lookup_visitor_by_recipient_id();
77
+ }
78
+ else {
79
+ // If no visitor ID, attempt to do a visitor lookup with an Eloqua cookie
80
+ this.lookup_visitor_by_cookie(); //preference center
81
+ this.lookup_contact_by_email();
82
+ }
83
+ }
84
+ add_field_mapping(mapping) {
85
+ this.field_mappings.push(mapping);
86
+ }
87
+ add_queue_action(action) {
88
+ this.callback_queue.push(action);
89
+ }
90
+ store_url_vars() {
91
+ // Clear the current url_vars
92
+ this.url_vars = {};
93
+ // Split the URL by the '?' to get the query string part
94
+ const queryString = window.location.search.substring(1);
95
+ // Split the query string by '&' to get each key-value pair
96
+ queryString.split('&').forEach(paramString => {
97
+ // Split the key-value pairs by '=' to separate keys and values
98
+ let [key, value] = paramString.split('=');
99
+ // Decode URI components to handle URL encoding
100
+ key = decodeURIComponent(key);
101
+ value = decodeURIComponent(value);
102
+ // Store the key-value pair in the url_vars object
103
+ this.url_vars[key] = value;
104
+ });
105
+ // Optionally, log the stored URL variables
106
+ console.log('URL variables stored:', this.url_vars);
107
+ }
108
+ store_visitor_elq_id() {
109
+ console.log("INIT: Looking for visitor's Eloqua ID in URL...");
110
+ const elqIdParam = this.url_vars['elq'];
111
+ if (elqIdParam) {
112
+ const elqId = elqIdParam.toUpperCase().replace(/(.{8})(.{4})(.{4})(.{4})(.{12})/, '$1-$2-$3-$4-$5');
113
+ this.visitor_elq_id = elqId;
114
+ console.log(`INIT: ...visitor Eloqua ID found in URL: ${elqId}`);
115
+ }
116
+ else {
117
+ this.visitor_elq_id = null;
118
+ console.log('INIT: ...no visitor Eloqua ID found in URL');
119
+ }
120
+ }
121
+ // private merge(root: any, ...sources: any[]): any {
122
+ // sources.forEach(source => {
123
+ // for (const key in source) {
124
+ // if (source.hasOwnProperty(key)) {
125
+ // root[key] = source[key];
126
+ // }
127
+ // }
128
+ // });
129
+ // return root;
130
+ // }
131
+ eloqua_callback() {
132
+ console.log('LOOKUP: Eloqua lookup finished');
133
+ // Process each action in the callback queue
134
+ let actionSucceeded = true;
135
+ while (actionSucceeded && this.callback_queue.length > 0) {
136
+ const action = this.callback_queue.shift();
137
+ if (action) {
138
+ console.log(`QUEUE: Executing action`);
139
+ actionSucceeded = action(); // Execute the action. It must return a boolean indicating success.
140
+ if (actionSucceeded) {
141
+ console.log('QUEUE: Action executed successfully, removed from queue');
142
+ }
143
+ else {
144
+ console.log('QUEUE: Action failed, re-adding to queue');
145
+ this.callback_queue.unshift(action); // Re-add the action to the front of the queue
146
+ break; // Break out of the loop if an action fails
147
+ }
148
+ }
149
+ }
150
+ // After processing the queue, update user details or perform other operations
151
+ if (actionSucceeded) {
152
+ this.update_user_details();
153
+ this.populate_mapped_fields();
154
+ }
155
+ // ...additional code to handle the aftermath of callback processing...
156
+ }
157
+ lookup_visitor_by_cookie() {
158
+ if (this.params.elq_visitor_lookup_key != '') {
159
+ ElqLib._elqQ.push(['elqDataLookup', escape(this.params.elq_visitor_lookup_key), '']);
160
+ console.log('LOOKUP: Visitor lookup sent using Eloqua cookie');
161
+ }
162
+ else {
163
+ console.log('LOOKUP: A visitor lookup cannot be performed as no lookup key was defined');
164
+ }
165
+ }
166
+ lookup_visitor_by_recipient_id() {
167
+ if (this.params.elq_recipient_id_lookup_key != '') {
168
+ ElqLib._elqQ.push([
169
+ 'elqDataLookup',
170
+ escape(this.params.elq_recipient_id_lookup_key),
171
+ '<' + this.params.elq_field_email_rec_id + '>' + this.visitor_elq_id + '</' + this.params.elq_field_email_rec_id + '>',
172
+ ]);
173
+ console.log('LOOKUP: Visitor lookup sent using email recipient id: ' + this.visitor_elq_id);
174
+ }
175
+ else {
176
+ console.log('LOOKUP: A visitor lookup cannot be performed as no lookup key was defined');
177
+ }
178
+ }
179
+ lookup_contact_by_email() {
180
+ if (this.params.elq_contact_lookup_key != '') {
181
+ ElqLib._elqQ.push([
182
+ 'elqDataLookup',
183
+ escape(this.params.elq_contact_lookup_key),
184
+ '<' + this.params.elq_field_contact_email + '>' + this.user_elq_email + '</' + this.params.elq_field_contact_email + '>',
185
+ ]);
186
+ console.log('LOOKUP: Contact lookup sent using email address: ' + this.user_elq_email);
187
+ }
188
+ else {
189
+ console.log('LOOKUP: A visitor lookup cannot be performed as no lookup key was defined');
190
+ }
191
+ }
192
+ handle_visitor_lookup() {
193
+ //console.log('Contact Email: ' + this.params.elq_field_contact_email)
194
+ const email = window.GetElqContentPersonalizationValue(this.params.elq_field_contact_email); //it was elq_field_visitor_email ( V_Email_Address)
195
+ if (email) {
196
+ console.log(`LOOKUP: Found contact email address: ${email}`);
197
+ this.user_elq_email = email.trim();
198
+ this.lookup_contact_by_email();
199
+ this.callback_queue.push(this.handle_contact_lookup.bind(this));
200
+ return true;
201
+ }
202
+ else {
203
+ return false;
204
+ }
205
+ }
206
+ handle_contact_lookup() {
207
+ if (window.GetElqContentPersonalizationValue(this.params.elq_field_contact_email) != '') {
208
+ console.log('LOOKUP: Found contact email address: ' + window.GetElqContentPersonalizationValue(this.params.elq_field_contact_email));
209
+ return true;
210
+ }
211
+ else {
212
+ return false;
213
+ }
214
+ }
215
+ populate_mapped_fields() {
216
+ console.log('MAPPING: Starting field mapping');
217
+ //debugger;
218
+ this.field_mappings.forEach(({ elementId, elqFieldName }) => {
219
+ const fieldValue = window.GetElqContentPersonalizationValue(elqFieldName);
220
+ if (elementId !== 'contact-country') {
221
+ const element = document.getElementById(elementId);
222
+ console.log('element ID of field mappings: ' + elementId);
223
+ console.log('fieldValue ID of field mappings: ' + fieldValue);
224
+ if (element && fieldValue) {
225
+ element.value = fieldValue;
226
+ //element.style.display = 'none'; // Hide the field.
227
+ if (element.closest('ptc-textfield')) {
228
+ element.closest('ptc-textfield').style.display = 'none';
229
+ element.closest('ptc-textfield').inputValue = fieldValue;
230
+ }
231
+ else if (element.closest('ptc-select')) {
232
+ element.closest('ptc-select').style.display = 'none';
233
+ element.closest("ptc-select").selectedValue = fieldValue;
234
+ }
235
+ this.fields_populated = true;
236
+ }
237
+ }
238
+ else {
239
+ const countryEle = document.getElementById(elementId);
240
+ if (countryEle && fieldValue) {
241
+ countryEle.textContent = fieldValue;
242
+ countryEle.closest("ptc-select").selectedValue = fieldValue;
243
+ }
244
+ // debugger;
245
+ if (countryEle.closest('ptc-select')) {
246
+ countryEle.closest('ptc-select').style.display = 'none';
247
+ }
248
+ }
249
+ });
250
+ console.log('MAPPING: Finished ');
251
+ if (this.fields_populated) {
252
+ this.update_notme_link();
253
+ }
254
+ }
255
+ update_user_details() {
256
+ console.log('displaying user info...');
257
+ if (window.GetElqContentPersonalizationValue(this.params.elq_field_contact_email) !== '') {
258
+ document
259
+ .querySelectorAll('input[type=text], input[type=tel], input[name="phonenumber"], input[name="phonenumbertwo"], input[type=email], select, textarea, span.mdc-select__selected-text')
260
+ .forEach((element) => {
261
+ if (element.tagName === 'SPAN') {
262
+ const spanText = element;
263
+ const spanEloquaName = spanText.getAttribute('data-eloqua-name');
264
+ if (spanEloquaName !== null) {
265
+ const spanElqValue = window.GetElqContentPersonalizationValue(spanEloquaName);
266
+ if (spanElqValue !== '' && spanElqValue.length > 0) {
267
+ spanText.textContent = spanElqValue;
268
+ spanText.closest('ptc-select').defaultValue = spanElqValue;
269
+ }
270
+ }
271
+ }
272
+ else if (element.className.includes('intl-tel-input')) {
273
+ const telInput = element;
274
+ const eloquaName = telInput.getAttribute('data-eloqua-name');
275
+ if (eloquaName !== null) {
276
+ const elqValue = window.GetElqContentPersonalizationValue(eloquaName);
277
+ if (elqValue !== '' && elqValue.length > 0) {
278
+ setTimeout(() => {
279
+ telInput.placeholder = elqValue;
280
+ telInput.value = elqValue;
281
+ telInput.closest('ptc-textfield').inputValue = elqValue;
282
+ }, 1000);
283
+ }
284
+ }
285
+ }
286
+ else {
287
+ const input = element;
288
+ const eloquaName = input.getAttribute('data-eloqua-name');
289
+ if (eloquaName !== null) {
290
+ const elqValue = window.GetElqContentPersonalizationValue(eloquaName);
291
+ if (elqValue !== '' && elqValue.length > 0) {
292
+ input.value = elqValue;
293
+ input.closest('ptc-textfield').inputValue = elqValue;
294
+ }
295
+ }
296
+ }
297
+ });
298
+ }
299
+ if (this.user_elq_email == '' && window.GetElqContentPersonalizationValue(this.params.elq_field_visitor_email) != '') {
300
+ this.user_elq_email = window.GetElqContentPersonalizationValue(this.params.elq_field_visitor_email);
301
+ }
302
+ if (this.user_elq_firstname == '' && window.GetElqContentPersonalizationValue(this.params.elq_field_visitor_firstname) != '') {
303
+ this.user_elq_firstname = window.GetElqContentPersonalizationValue(this.params.elq_field_visitor_firstname);
304
+ }
305
+ if (this.user_elq_lastname == '' && window.GetElqContentPersonalizationValue(this.params.elq_field_visitor_lastname) != '') {
306
+ this.user_elq_lastname = window.GetElqContentPersonalizationValue(this.params.elq_field_visitor_lastname);
307
+ }
308
+ }
309
+ update_notme_link() {
310
+ // Assuming the user's first and last name are available from Eloqua fields
311
+ const firstName = window.GetElqContentPersonalizationValue(this.params.elq_field_visitor_firstname);
312
+ const lastName = window.GetElqContentPersonalizationValue(this.params.elq_field_visitor_lastname);
313
+ const topAdditional = document.getElementById('not-me-additional-top');
314
+ const bottomAdditional = document.getElementById('not-me-additional-bottom');
315
+ if (topAdditional) {
316
+ let message = topAdditional.innerHTML;
317
+ console.log('first name: ' + firstName);
318
+ if (firstName && lastName) {
319
+ message = message.replace('{name}', lastName + ' ' + firstName);
320
+ }
321
+ else {
322
+ message = this.params.notme_message_noname;
323
+ }
324
+ topAdditional.innerHTML = message;
325
+ topAdditional.style.display = 'block';
326
+ }
327
+ if (bottomAdditional) {
328
+ //bottomAdditional.innerHTML="Click the button below to recieve email confirmation.";
329
+ bottomAdditional.style.display = 'block';
330
+ }
331
+ const notMeLinkElement = document.getElementById(this.params.notme_link_id);
332
+ if (notMeLinkElement) {
333
+ notMeLinkElement.style.display = 'block';
334
+ notMeLinkElement.onclick = this.remove_user_details.bind(this);
335
+ }
336
+ }
337
+ // private init_notme(): void{
338
+ // const topAdditional = document.getElementById('not-me-additional-top');
339
+ // const bottomAdditional = document.getElementById('not-me-additional-bottom');
340
+ // console.log("top: " + topAdditional)
341
+ // if(topAdditional) topAdditional.style.display = 'none';
342
+ // if(bottomAdditional) bottomAdditional.style.display = 'none';
343
+ // }
344
+ remove_user_details(e) {
345
+ e.preventDefault();
346
+ this.user_elq_email = '';
347
+ this.user_elq_firstname = '';
348
+ this.user_elq_lastname = '';
349
+ // $('.' + this.params.notme_fields_class).val('');
350
+ //const linkDiv = document.getElementById(this.params.notme_link_id);
351
+ const topAdditional = document.getElementById('not-me-additional-top');
352
+ const bottomAdditional = document.getElementById('not-me-additional-bottom');
353
+ //linkDiv.querySelector('a').remove();
354
+ topAdditional.style.display = 'none';
355
+ bottomAdditional.style.display = 'none';
356
+ this.refreshForm();
357
+ return false;
358
+ }
359
+ refreshForm() {
360
+ this.field_mappings.forEach(({ elementId }) => {
361
+ if (elementId !== 'contact-country') {
362
+ const element = document.getElementById(elementId);
363
+ if (element) {
364
+ console.log('element: ' + element);
365
+ element.value = ''; // Reset the value
366
+ if (element.closest('ptc-textfield')) {
367
+ element.closest('ptc-textfield').style.display = '';
368
+ }
369
+ else if (element.closest('ptc-select')) {
370
+ element.closest('ptc-select').style.display = '';
371
+ }
372
+ }
373
+ }
374
+ else {
375
+ const countryEle = document.getElementById(elementId);
376
+ if (countryEle) {
377
+ countryEle.textContent = '';
378
+ }
379
+ // debugger;
380
+ if (countryEle.closest('ptc-select')) {
381
+ countryEle.closest('ptc-select').style.display = '';
382
+ }
383
+ }
384
+ });
385
+ this.clearEloquaCookie('elq-uid'); // Optionally clear the Eloqua cookie
386
+ this.fields_populated = false;
387
+ //this.update_notme_link(); // Update the 'Not Me' link if necessary
388
+ }
389
+ clearEloquaCookie(name) {
390
+ document.cookie = name + '=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;';
391
+ console.log('cookie cleared');
392
+ }
393
+ // Private Method to load Eloqua Scripts
394
+ async_load() {
395
+ const scriptUrl = 'https://img.en25.com/i/elqCfg.min.js';
396
+ const scriptElement = document.createElement('script');
397
+ scriptElement.type = 'text/javascript';
398
+ scriptElement.async = true;
399
+ scriptElement.src = scriptUrl;
400
+ // Error handling for script loading
401
+ scriptElement.onerror = errorEvent => {
402
+ console.log(`Error loading script: ${errorEvent}`);
403
+ };
404
+ // Append the script element to the head of the document, or before the first script tag found
405
+ const firstScriptTag = document.getElementsByTagName('script')[0];
406
+ if (firstScriptTag && firstScriptTag.parentNode) {
407
+ firstScriptTag.parentNode.insertBefore(scriptElement, firstScriptTag);
408
+ }
409
+ else {
410
+ document.head.appendChild(scriptElement);
411
+ }
412
+ console.log(`Async loading of script ${scriptUrl} initiated.`);
413
+ }
414
+ }
415
+ ElqLib._elqQ = window['_elqQ'] || [];
416
+ // Static member initialization
417
+ //ElqLib._elqQ = window['_elqQ'] || [];