@ptcwebops/ptcw-design 3.4.0 → 3.4.2

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 (613) 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.cjs.entry.js +103 -103
  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_4.cjs.entry.js +272 -272
  12. package/dist/cjs/innovator-toggle-container.cjs.entry.js +21 -21
  13. package/dist/cjs/{interfaces-574e6df7.js → interfaces-0ecd8027.js} +9 -9
  14. package/dist/cjs/list-item.cjs.entry.js +24 -24
  15. package/dist/cjs/max-width-container.cjs.entry.js +43 -43
  16. package/dist/cjs/my-component.cjs.entry.js +15 -15
  17. package/dist/cjs/ptc-accordion-item.cjs.entry.js +85 -85
  18. package/dist/cjs/ptc-accordion.cjs.entry.js +39 -39
  19. package/dist/cjs/ptc-back-to-top.cjs.entry.js +71 -71
  20. package/dist/cjs/ptc-background-video.cjs.entry.js +57 -57
  21. package/dist/cjs/ptc-bio-card.cjs.entry.js +24 -24
  22. package/dist/cjs/ptc-breadcrumb_2.cjs.entry.js +132 -132
  23. package/dist/cjs/ptc-brightcov-video.cjs.entry.js +46 -46
  24. package/dist/cjs/ptc-button.cjs.entry.js +64 -64
  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 +75 -75
  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-data-lookup.cjs.entry.js +509 -509
  33. package/dist/cjs/ptc-date.cjs.entry.js +50 -50
  34. package/dist/cjs/ptc-dropdown.cjs.entry.js +64 -64
  35. package/dist/cjs/ptc-dynamic-card.cjs.entry.js +48 -48
  36. package/dist/cjs/ptc-ellipsis-dropdown.cjs.entry.js +46 -46
  37. package/dist/cjs/ptc-embedded-quiz.cjs.entry.js +89 -89
  38. package/dist/cjs/ptc-featured-list.cjs.entry.js +95 -95
  39. package/dist/cjs/ptc-filter-dropdown_4.cjs.entry.js +281 -281
  40. package/dist/cjs/ptc-filter-level-theater.cjs.entry.js +66 -66
  41. package/dist/cjs/ptc-filter-tag.cjs.entry.js +57 -57
  42. package/dist/cjs/ptc-form-checkbox_3.cjs.entry.js +698 -698
  43. package/dist/cjs/ptc-form.cjs.entry.js +78 -78
  44. package/dist/cjs/ptc-hero-footer-cta.cjs.entry.js +11 -11
  45. package/dist/cjs/ptc-hero.cjs.entry.js +18 -18
  46. package/dist/cjs/ptc-icon-component.cjs.entry.js +60 -60
  47. package/dist/cjs/ptc-icon-list.cjs.entry.js +21 -21
  48. package/dist/cjs/ptc-icon-minimize.cjs.entry.js +43 -43
  49. package/dist/cjs/ptc-image-download-strip.cjs.entry.js +18 -18
  50. package/dist/cjs/ptc-img.cjs.entry.js +122 -122
  51. package/dist/cjs/ptc-link.cjs.entry.js +79 -79
  52. package/dist/cjs/ptc-list.cjs.entry.js +49 -49
  53. package/dist/cjs/ptc-media-card.cjs.entry.js +51 -51
  54. package/dist/cjs/ptc-minimized-nav.cjs.entry.js +12 -12
  55. package/dist/cjs/ptc-mobile-select.cjs.entry.js +62 -62
  56. package/dist/cjs/ptc-modal-quiz.cjs.entry.js +115 -115
  57. package/dist/cjs/ptc-modal.cjs.entry.js +158 -158
  58. package/dist/cjs/ptc-nav-card.cjs.entry.js +36 -36
  59. package/dist/cjs/ptc-nav-link.cjs.entry.js +36 -36
  60. package/dist/cjs/ptc-nav-pills.cjs.entry.js +8 -8
  61. package/dist/cjs/ptc-nav-slider.cjs.entry.js +90 -90
  62. package/dist/cjs/ptc-nav-submenu.cjs.entry.js +37 -37
  63. package/dist/cjs/ptc-news.cjs.entry.js +24 -24
  64. package/dist/cjs/ptc-overlay.cjs.entry.js +23 -23
  65. package/dist/cjs/ptc-pagenation.cjs.entry.js +306 -306
  66. package/dist/cjs/ptc-para.cjs.entry.js +59 -59
  67. package/dist/cjs/ptc-picture.cjs.entry.js +152 -152
  68. package/dist/cjs/ptc-podcast-card.cjs.entry.js +11 -11
  69. package/dist/cjs/ptc-previous-url.cjs.entry.js +11 -11
  70. package/dist/cjs/ptc-pricing-add-on-card.cjs.entry.js +17 -17
  71. package/dist/cjs/ptc-pricing-add-on-section.cjs.entry.js +39 -39
  72. package/dist/cjs/ptc-pricing-block.cjs.entry.js +20 -20
  73. package/dist/cjs/ptc-pricing-packaging-table.cjs.entry.js +359 -359
  74. package/dist/cjs/ptc-pricing-tabs.cjs.entry.js +124 -124
  75. package/dist/cjs/ptc-product-card.cjs.entry.js +22 -22
  76. package/dist/cjs/ptc-product-category.cjs.entry.js +10 -10
  77. package/dist/cjs/ptc-product-dropdown.cjs.entry.js +69 -69
  78. package/dist/cjs/ptc-product-highlight-card.cjs.entry.js +12 -12
  79. package/dist/cjs/ptc-product-list.cjs.entry.js +140 -140
  80. package/dist/cjs/ptc-product-sidebar.cjs.entry.js +128 -128
  81. package/dist/cjs/ptc-progress-bar.cjs.entry.js +16 -16
  82. package/dist/cjs/ptc-quote.cjs.entry.js +24 -24
  83. package/dist/cjs/ptc-readmore-char.cjs.entry.js +24 -24
  84. package/dist/cjs/ptc-related-card-rail.cjs.entry.js +149 -149
  85. package/dist/cjs/ptc-responsive-wrapper.cjs.entry.js +54 -54
  86. package/dist/cjs/ptc-search-field.cjs.entry.js +71 -71
  87. package/dist/cjs/ptc-seo-title.cjs.entry.js +71 -71
  88. package/dist/cjs/ptc-shopping-cart.cjs.entry.js +50 -50
  89. package/dist/cjs/ptc-slit-card.cjs.entry.js +25 -25
  90. package/dist/cjs/ptc-spacer.cjs.entry.js +27 -27
  91. package/dist/cjs/ptc-span.cjs.entry.js +20 -20
  92. package/dist/cjs/ptc-square-card.cjs.entry.js +10 -10
  93. package/dist/cjs/ptc-sticky-icons.cjs.entry.js +32 -32
  94. package/dist/cjs/ptc-sticky-section.cjs.entry.js +30 -30
  95. package/dist/cjs/ptc-sticky-title.cjs.entry.js +23 -23
  96. package/dist/cjs/ptc-subnav-card.cjs.entry.js +16 -16
  97. package/dist/cjs/ptc-subnav.cjs.entry.js +24 -24
  98. package/dist/cjs/ptc-svg-btn.cjs.entry.js +95 -95
  99. package/dist/cjs/ptc-tab-list.cjs.entry.js +143 -143
  100. package/dist/cjs/ptc-tab.cjs.entry.js +20 -20
  101. package/dist/cjs/ptc-tabs.cjs.entry.js +47 -47
  102. package/dist/cjs/ptc-text-copy-with-background.cjs.entry.js +44 -44
  103. package/dist/cjs/ptc-theater-video-modal.cjs.entry.js +81 -81
  104. package/dist/cjs/ptc-title.cjs.entry.js +88 -88
  105. package/dist/cjs/ptc-two-column-media.cjs.entry.js +15 -15
  106. package/dist/cjs/ptc-value-led-card.cjs.entry.js +10 -10
  107. package/dist/cjs/ptc-value-led-content-highlight.cjs.entry.js +8 -8
  108. package/dist/cjs/ptc-value-led-content.cjs.entry.js +8 -8
  109. package/dist/cjs/ptc-value-led-intro.cjs.entry.js +10 -10
  110. package/dist/cjs/ptc-value-led-layout.cjs.entry.js +195 -195
  111. package/dist/cjs/ptc-value-led-speed-bump.cjs.entry.js +21 -21
  112. package/dist/cjs/ptc-value-prop-card.cjs.entry.js +13 -13
  113. package/dist/cjs/ptc-white-paper.cjs.entry.js +102 -102
  114. package/dist/cjs/sequential-bundle-example.cjs.entry.js +108 -108
  115. package/dist/cjs/sequential-bundle.cjs.entry.js +88 -88
  116. package/dist/cjs/tab-content.cjs.entry.js +27 -27
  117. package/dist/cjs/tab-header.cjs.entry.js +65 -65
  118. package/dist/cjs/{utils-83c6d7a7.js → utils-e5a5f1bb.js} +115 -115
  119. package/dist/collection/components/dropdown-item/dropdown-item.js +61 -61
  120. package/dist/collection/components/dynamic-box-bundle/dynamic-box-bundle.js +114 -114
  121. package/dist/collection/components/icon-asset/icon-asset.css +4 -4
  122. package/dist/collection/components/icon-asset/icon-asset.js +199 -199
  123. package/dist/collection/components/icon-asset/media/brands.svg +1381 -1381
  124. package/dist/collection/components/icon-asset/media/designer.svg +489 -489
  125. package/dist/collection/components/icon-asset/media/regular.svg +463 -463
  126. package/dist/collection/components/icon-asset/media/solid.svg +3016 -3016
  127. package/dist/collection/components/icon-asset/media/svg-with-js.min.css +4 -4
  128. package/dist/collection/components/innovator-toggle-container/innovator-toggle-container.js +89 -89
  129. package/dist/collection/components/list-item/list-item.js +182 -182
  130. package/dist/collection/components/max-width-container/max-width-container.css +11 -11
  131. package/dist/collection/components/max-width-container/max-width-container.js +146 -146
  132. package/dist/collection/components/my-component/my-component.css +3 -3
  133. package/dist/collection/components/my-component/my-component.js +82 -82
  134. package/dist/collection/components/organism-bundles/author-listing-example/author-listing-example.css +69 -69
  135. package/dist/collection/components/organism-bundles/author-listing-example/author-listing-example.js +282 -282
  136. package/dist/collection/components/organism-bundles/bundle-example/bundle-example.css +25 -25
  137. package/dist/collection/components/organism-bundles/bundle-example/bundle-example.js +79 -79
  138. package/dist/collection/components/organism-bundles/bundle-featured-list/featured-list.css +219 -219
  139. package/dist/collection/components/organism-bundles/bundle-featured-list/featured-list.js +122 -122
  140. package/dist/collection/components/organism-bundles/bundle-jumbotron-example/bundle-jumbotron-example.css +3 -3
  141. package/dist/collection/components/organism-bundles/bundle-jumbotron-example/bundle-jumbotron-example.js +91 -91
  142. package/dist/collection/components/organism-bundles/form/embedded-form/embedded-form.js +120 -120
  143. package/dist/collection/components/organism-bundles/form/footer-form/footer-form.js +72 -72
  144. package/dist/collection/components/organism-bundles/form/ptc-form/ptc-form.css +13 -13
  145. package/dist/collection/components/organism-bundles/form/ptc-form/ptc-form.js +94 -94
  146. package/dist/collection/components/organism-bundles/sequential-bundle/sequential-bundle.js +116 -116
  147. package/dist/collection/components/organism-bundles/sequential-bundle-example/sequential-bundle-example.css +93 -93
  148. package/dist/collection/components/organism-bundles/sequential-bundle-example/sequential-bundle-example.js +160 -160
  149. package/dist/collection/components/ptc-accordion/ptc-accordion-item/ptc-accordion-item.js +324 -324
  150. package/dist/collection/components/ptc-accordion/ptc-accordion.js +100 -100
  151. package/dist/collection/components/ptc-announcement/ptc-announcement.js +274 -274
  152. package/dist/collection/components/ptc-back-to-top/ptc-back-to-top.js +97 -97
  153. package/dist/collection/components/ptc-background-video/ptc-background-video.js +200 -200
  154. package/dist/collection/components/ptc-bio-card/ptc-bio-card.js +130 -130
  155. package/dist/collection/components/ptc-breadcrumb/ptc-breadcrumb.js +105 -105
  156. package/dist/collection/components/ptc-brightcov-video/ptc-brightcov-video.js +79 -79
  157. package/dist/collection/components/ptc-button/ptc-button.js +399 -399
  158. package/dist/collection/components/ptc-card/ptc-card.css +5 -5
  159. package/dist/collection/components/ptc-card/ptc-card.js +439 -439
  160. package/dist/collection/components/ptc-card-bottom/ptc-card-bottom.js +116 -116
  161. package/dist/collection/components/ptc-card-content/ptc-card-content.js +212 -212
  162. package/dist/collection/components/ptc-card-wrapper/ptc-card-wrapper.js +253 -253
  163. package/dist/collection/components/ptc-case-studies-slider/ptc-case-studies-slider.js +91 -91
  164. package/dist/collection/components/ptc-checkbox/ptc-checkbox.js +152 -152
  165. package/dist/collection/components/ptc-collapse-list/ptc-collapse-list.js +639 -639
  166. package/dist/collection/components/ptc-container/ptc-container.js +138 -138
  167. package/dist/collection/components/ptc-data-lookup/ptc-data-lookup.js +379 -379
  168. package/dist/collection/components/ptc-date/ptc-date.js +224 -224
  169. package/dist/collection/components/ptc-dropdown/ptc-dropdown.js +162 -162
  170. package/dist/collection/components/ptc-dynamic-card/media/nav-active-dotslick.svg +15 -15
  171. package/dist/collection/components/ptc-dynamic-card/ptc-dynamic-card.js +192 -192
  172. package/dist/collection/components/ptc-ellipsis-dropdown/ptc-ellipsis-dropdown.js +137 -137
  173. package/dist/collection/components/ptc-embedded-quiz/ptc-embedded-quiz.js +146 -146
  174. package/dist/collection/components/ptc-featured-list/fl-tab-content/fl-tab-content.js +61 -61
  175. package/dist/collection/components/ptc-featured-list/fl-tab-header/fl-tab-header.js +114 -114
  176. package/dist/collection/components/ptc-featured-list/fl-tab-image/fl-tab-image.js +61 -61
  177. package/dist/collection/components/ptc-featured-list/ptc-featured-list.js +128 -128
  178. package/dist/collection/components/ptc-filter-dropdown/ptc-filter-dropdown.css +4 -4
  179. package/dist/collection/components/ptc-filter-dropdown/ptc-filter-dropdown.js +145 -145
  180. package/dist/collection/components/ptc-filter-level-theater/ptc-filter-level-theater.js +124 -124
  181. package/dist/collection/components/ptc-filter-tag/ptc-filter-tag.js +113 -113
  182. package/dist/collection/components/ptc-form-checkbox/ptc-form-checkbox.js +284 -284
  183. package/dist/collection/components/ptc-hero/ptc-hero.js +86 -86
  184. package/dist/collection/components/ptc-hero-footer-cta/ptc-hero-footer-cta.js +78 -78
  185. package/dist/collection/components/ptc-icon-component/ptc-icon-component.js +87 -87
  186. package/dist/collection/components/ptc-icon-list/ptc-icon-list.js +127 -127
  187. package/dist/collection/components/ptc-icon-minimize/ptc-icon-minimize.js +119 -119
  188. package/dist/collection/components/ptc-image-download-strip/ptc-image-download-strip.js +51 -51
  189. package/dist/collection/components/ptc-img/ptc-img.js +311 -311
  190. package/dist/collection/components/ptc-jumbotron/ptc-jumbotron.js +355 -355
  191. package/dist/collection/components/ptc-link/ptc-link.js +288 -288
  192. package/dist/collection/components/ptc-list/ptc-list.js +99 -99
  193. package/dist/collection/components/ptc-media-card/ptc-media-card.js +233 -233
  194. package/dist/collection/components/ptc-minimized-nav/ptc-minimized-nav.js +100 -100
  195. package/dist/collection/components/ptc-mobile-select/ptc-mobile-select.js +199 -199
  196. package/dist/collection/components/ptc-modal/ptc-modal.js +433 -433
  197. package/dist/collection/components/ptc-modal-quiz/ptc-modal-quiz.js +191 -191
  198. package/dist/collection/components/ptc-nav-card/ptc-nav-card.js +224 -224
  199. package/dist/collection/components/ptc-nav-pills/ptc-nav-pills.js +18 -18
  200. package/dist/collection/components/ptc-news/ptc-news.js +176 -176
  201. package/dist/collection/components/ptc-overlay/ptc-overlay.js +131 -131
  202. package/dist/collection/components/ptc-pagenation/ptc-pagenation.js +573 -573
  203. package/dist/collection/components/ptc-para/ptc-para.js +268 -268
  204. package/dist/collection/components/ptc-picture/ptc-picture.js +500 -500
  205. package/dist/collection/components/ptc-podcast-card/ptc-podcast-card.js +78 -78
  206. package/dist/collection/components/ptc-previous-url/ptc-previous-url.js +78 -78
  207. package/dist/collection/components/ptc-pricing-add-on-card/ptc-pricing-add-on-card.js +139 -139
  208. package/dist/collection/components/ptc-pricing-add-on-section/ptc-pricing-add-on-section.js +94 -94
  209. package/dist/collection/components/ptc-pricing-block/ptc-pricing-block.js +70 -70
  210. package/dist/collection/components/ptc-pricing-packaging-table/ptc-pricing-packaging-table.js +501 -501
  211. package/dist/collection/components/ptc-pricing-tabs/ptc-pricing-tabs.js +272 -272
  212. package/dist/collection/components/ptc-product-card/ptc-product-card.js +162 -162
  213. package/dist/collection/components/ptc-product-category/ptc-product-category.js +60 -60
  214. package/dist/collection/components/ptc-product-dropdown/ptc-product-dropdown.js +185 -185
  215. package/dist/collection/components/ptc-product-highlight-card/ptc-product-highlight-card.js +96 -96
  216. package/dist/collection/components/ptc-product-list/ptc-product-list.js +194 -194
  217. package/dist/collection/components/ptc-product-sidebar/ptc-product-sidebar.js +252 -252
  218. package/dist/collection/components/ptc-progress-bar/ptc-progress-bar.js +42 -42
  219. package/dist/collection/components/ptc-quote/ptc-quote.js +145 -145
  220. package/dist/collection/components/ptc-readmore/ptc-readmore.js +326 -326
  221. package/dist/collection/components/ptc-readmore-char/ptc-readmore-char.js +133 -133
  222. package/dist/collection/components/ptc-related-card-rail/ptc-related-card-rail.js +190 -190
  223. package/dist/collection/components/ptc-responsive-wrapper/ptc-responsive-wrapper.css +3 -3
  224. package/dist/collection/components/ptc-responsive-wrapper/ptc-responsive-wrapper.js +65 -65
  225. package/dist/collection/components/ptc-search-field/ptc-search-field.js +247 -247
  226. package/dist/collection/components/ptc-select/ptc-select.js +555 -555
  227. package/dist/collection/components/ptc-seo-title/ptc-seo-title.js +314 -314
  228. package/dist/collection/components/ptc-shopping-cart/ptc-shopping-cart.js +97 -97
  229. package/dist/collection/components/ptc-skeleton/ptc-skeleton.js +139 -139
  230. package/dist/collection/components/ptc-slit-card/ptc-slit-card.js +181 -181
  231. package/dist/collection/components/ptc-social-share/ptc-social-share.js +267 -267
  232. package/dist/collection/components/ptc-spacer/ptc-spacer.css +332 -332
  233. package/dist/collection/components/ptc-spacer/ptc-spacer.js +97 -97
  234. package/dist/collection/components/ptc-span/ptc-span.js +107 -107
  235. package/dist/collection/components/ptc-square-card/ptc-square-card.js +60 -60
  236. package/dist/collection/components/ptc-sticky-icons/ptc-sticky-icons.js +51 -51
  237. package/dist/collection/components/ptc-sticky-section/ptc-sticky-section.js +49 -49
  238. package/dist/collection/components/ptc-sticky-title/ptc-sticky-title.js +89 -89
  239. package/dist/collection/components/ptc-svg-btn/ptc-svg-btn.js +109 -109
  240. package/dist/collection/components/ptc-tab-list/ptc-tab-list.js +214 -214
  241. package/dist/collection/components/ptc-tabs/ptc-tab.js +121 -121
  242. package/dist/collection/components/ptc-tabs/ptc-tabs.js +104 -104
  243. package/dist/collection/components/ptc-text-copy-with-background/ptc-text-copy-with-background.js +218 -218
  244. package/dist/collection/components/ptc-textfield/ptc-textfield.js +525 -525
  245. package/dist/collection/components/ptc-theater-video/ptc-theater-video.css +4 -4
  246. package/dist/collection/components/ptc-theater-video/ptc-theater-video.js +181 -181
  247. package/dist/collection/components/ptc-theater-video-modal/ptc-theater-video-modal.js +128 -128
  248. package/dist/collection/components/ptc-theater-video-playlist/ptc-theater-video-playlist.js +165 -165
  249. package/dist/collection/components/ptc-title/ptc-title.js +349 -349
  250. package/dist/collection/components/ptc-tooltip/ptc-tooltip.js +361 -361
  251. package/dist/collection/components/ptc-two-column-media/ptc-two-column-media.js +48 -48
  252. package/dist/collection/components/ptc-value-led-card/ptc-value-led-card.js +60 -60
  253. package/dist/collection/components/ptc-value-led-content/ptc-value-led-content.js +18 -18
  254. package/dist/collection/components/ptc-value-led-content-highlight/ptc-value-led-content-highlight.js +18 -18
  255. package/dist/collection/components/ptc-value-led-intro/ptc-value-led-intro.css +2 -2
  256. package/dist/collection/components/ptc-value-led-intro/ptc-value-led-intro.js +42 -42
  257. package/dist/collection/components/ptc-value-led-layout/ptc-value-led-layout.css +1 -1
  258. package/dist/collection/components/ptc-value-led-layout/ptc-value-led-layout.js +270 -270
  259. package/dist/collection/components/ptc-value-led-speed-bump/ptc-value-led-speed-bump.js +97 -97
  260. package/dist/collection/components/ptc-value-prop-card/ptc-value-prop-card.js +117 -117
  261. package/dist/collection/components/ptc-white-paper/ptc-white-paper.js +206 -206
  262. package/dist/collection/components/subnav/ptc-nav-link/ptc-nav-link.js +131 -131
  263. package/dist/collection/components/subnav/ptc-nav-slider/ptc-nav-slider.js +133 -133
  264. package/dist/collection/components/subnav/ptc-nav-submenu/ptc-nav-submenu.js +121 -121
  265. package/dist/collection/components/subnav/ptc-subnav/ptc-subnav.js +78 -78
  266. package/dist/collection/components/subnav/ptc-subnav-card/ptc-subnav-card.js +151 -151
  267. package/dist/collection/components/tab-content/tab-content.js +84 -84
  268. package/dist/collection/components/tab-header/tab-header.js +183 -183
  269. package/dist/collection/index.js +1 -1
  270. package/dist/collection/media/svg-imgs/Back-arrow.svg +11 -11
  271. package/dist/collection/media/svg-imgs/close.svg +10 -10
  272. package/dist/collection/media/svg-imgs/nav-active-dotslick.svg +16 -16
  273. package/dist/collection/media/svg-imgs/play-button-dark.svg +20 -20
  274. package/dist/collection/media/svg-imgs/ptc-shopping-cart-black.svg +3 -3
  275. package/dist/collection/media/svg-imgs/ptc-shopping-cart-white.svg +3 -3
  276. package/dist/collection/media/svg-imgs/slider-arrow-left.svg +18 -18
  277. package/dist/collection/media/svg-imgs/slider-arrow-right.svg +18 -18
  278. package/dist/collection/media/svg-imgs/union.svg +3 -3
  279. package/dist/collection/stories/Accordian.stories.js +205 -205
  280. package/dist/collection/stories/Announcement.stories.js +64 -64
  281. package/dist/collection/stories/BackgroundImage.stories.js +81 -81
  282. package/dist/collection/stories/Breadcrumb.stories.js +50 -50
  283. package/dist/collection/stories/Button.stories.js +119 -119
  284. package/dist/collection/stories/Card.stories.js +234 -234
  285. package/dist/collection/stories/CardWrapper.stories.js +270 -270
  286. package/dist/collection/stories/Checkbox.stories.js +52 -52
  287. package/dist/collection/stories/Date.stories.js +81 -81
  288. package/dist/collection/stories/Dropdown.stories.js +48 -48
  289. package/dist/collection/stories/DynamicCard.stories.js +68 -68
  290. package/dist/collection/stories/FilterTag.stories.js +73 -73
  291. package/dist/collection/stories/FormCheckbox.stories.js +57 -57
  292. package/dist/collection/stories/Hero.stories.js +119 -119
  293. package/dist/collection/stories/Icon.stories.js +71 -71
  294. package/dist/collection/stories/IconList.stories.js +114 -114
  295. package/dist/collection/stories/IconMinimize.stories.js +40 -40
  296. package/dist/collection/stories/Link.stories.js +107 -107
  297. package/dist/collection/stories/ListItem.stories.js +59 -59
  298. package/dist/collection/stories/MaxWidthContainer.stories.js +45 -45
  299. package/dist/collection/stories/MinimizedHeader.stories.js +37 -37
  300. package/dist/collection/stories/MobileSelect.stories.js +79 -79
  301. package/dist/collection/stories/Modal.stories.js +105 -105
  302. package/dist/collection/stories/Overlay.stories.js +48 -48
  303. package/dist/collection/stories/Pagination.stories.js +101 -101
  304. package/dist/collection/stories/Paragraph.stories.js +95 -95
  305. package/dist/collection/stories/Picture.stories.js +139 -139
  306. package/dist/collection/stories/Quote.stories.js +107 -107
  307. package/dist/collection/stories/ReadMore.stories.js +100 -100
  308. package/dist/collection/stories/Select.stories.js +81 -81
  309. package/dist/collection/stories/SocialShare.stories.js +66 -66
  310. package/dist/collection/stories/Spacer.stories.js +48 -48
  311. package/dist/collection/stories/Span.stories.js +57 -57
  312. package/dist/collection/stories/SvgButton.stories.js +34 -34
  313. package/dist/collection/stories/Tabs.stories.js +213 -213
  314. package/dist/collection/stories/TextCopyWithBackground.stories.js +237 -237
  315. package/dist/collection/stories/Textfield.stories.js +81 -81
  316. package/dist/collection/stories/Title.stories.js +115 -115
  317. package/dist/collection/stories/Tooltip.stories.js +112 -112
  318. package/dist/collection/utils/component.js +3 -3
  319. package/dist/collection/utils/elq-lib.js +417 -417
  320. package/dist/collection/utils/interfaces.js +11 -11
  321. package/dist/collection/utils/utils.js +116 -116
  322. package/dist/collection/utils/validation-messages.js +102 -102
  323. package/dist/custom-elements/index.js +9211 -9211
  324. package/dist/esm/author-listing-example.entry.js +232 -232
  325. package/dist/esm/bundle-example.entry.js +43 -43
  326. package/dist/esm/bundle-jumbotron-example.entry.js +39 -39
  327. package/dist/esm/dropdown-item.entry.js +10 -10
  328. package/dist/esm/dynamic-box-bundle.entry.js +25 -25
  329. package/dist/esm/embedded-form.entry.js +103 -103
  330. package/dist/esm/featured-list.entry.js +90 -90
  331. package/dist/esm/fl-tab-content_3.entry.js +44 -44
  332. package/dist/esm/footer-form.entry.js +55 -55
  333. package/dist/esm/icon-asset_4.entry.js +272 -272
  334. package/dist/esm/innovator-toggle-container.entry.js +21 -21
  335. package/dist/esm/{interfaces-4caedd26.js → interfaces-3cb94654.js} +9 -9
  336. package/dist/esm/list-item.entry.js +24 -24
  337. package/dist/esm/max-width-container.entry.js +43 -43
  338. package/dist/esm/my-component.entry.js +15 -15
  339. package/dist/esm/polyfills/core-js.js +0 -0
  340. package/dist/esm/polyfills/dom.js +0 -0
  341. package/dist/esm/polyfills/es5-html-element.js +0 -0
  342. package/dist/esm/polyfills/index.js +0 -0
  343. package/dist/esm/polyfills/system.js +0 -0
  344. package/dist/esm/ptc-accordion-item.entry.js +85 -85
  345. package/dist/esm/ptc-accordion.entry.js +39 -39
  346. package/dist/esm/ptc-back-to-top.entry.js +71 -71
  347. package/dist/esm/ptc-background-video.entry.js +57 -57
  348. package/dist/esm/ptc-bio-card.entry.js +24 -24
  349. package/dist/esm/ptc-breadcrumb_2.entry.js +132 -132
  350. package/dist/esm/ptc-brightcov-video.entry.js +46 -46
  351. package/dist/esm/ptc-button.entry.js +64 -64
  352. package/dist/esm/ptc-card-bottom_3.entry.js +130 -130
  353. package/dist/esm/ptc-card-content.entry.js +57 -57
  354. package/dist/esm/ptc-card.entry.js +75 -75
  355. package/dist/esm/ptc-case-studies-slider.entry.js +77 -77
  356. package/dist/esm/ptc-checkbox.entry.js +50 -50
  357. package/dist/esm/ptc-collapse-list.entry.js +397 -397
  358. package/dist/esm/ptc-container.entry.js +33 -33
  359. package/dist/esm/ptc-data-lookup.entry.js +509 -509
  360. package/dist/esm/ptc-date.entry.js +50 -50
  361. package/dist/esm/ptc-dropdown.entry.js +64 -64
  362. package/dist/esm/ptc-dynamic-card.entry.js +48 -48
  363. package/dist/esm/ptc-ellipsis-dropdown.entry.js +46 -46
  364. package/dist/esm/ptc-embedded-quiz.entry.js +89 -89
  365. package/dist/esm/ptc-featured-list.entry.js +95 -95
  366. package/dist/esm/ptc-filter-dropdown_4.entry.js +281 -281
  367. package/dist/esm/ptc-filter-level-theater.entry.js +66 -66
  368. package/dist/esm/ptc-filter-tag.entry.js +57 -57
  369. package/dist/esm/ptc-form-checkbox_3.entry.js +698 -698
  370. package/dist/esm/ptc-form.entry.js +78 -78
  371. package/dist/esm/ptc-hero-footer-cta.entry.js +11 -11
  372. package/dist/esm/ptc-hero.entry.js +18 -18
  373. package/dist/esm/ptc-icon-component.entry.js +60 -60
  374. package/dist/esm/ptc-icon-list.entry.js +21 -21
  375. package/dist/esm/ptc-icon-minimize.entry.js +43 -43
  376. package/dist/esm/ptc-image-download-strip.entry.js +18 -18
  377. package/dist/esm/ptc-img.entry.js +122 -122
  378. package/dist/esm/ptc-link.entry.js +79 -79
  379. package/dist/esm/ptc-list.entry.js +49 -49
  380. package/dist/esm/ptc-media-card.entry.js +51 -51
  381. package/dist/esm/ptc-minimized-nav.entry.js +12 -12
  382. package/dist/esm/ptc-mobile-select.entry.js +62 -62
  383. package/dist/esm/ptc-modal-quiz.entry.js +115 -115
  384. package/dist/esm/ptc-modal.entry.js +158 -158
  385. package/dist/esm/ptc-nav-card.entry.js +36 -36
  386. package/dist/esm/ptc-nav-link.entry.js +36 -36
  387. package/dist/esm/ptc-nav-pills.entry.js +8 -8
  388. package/dist/esm/ptc-nav-slider.entry.js +90 -90
  389. package/dist/esm/ptc-nav-submenu.entry.js +37 -37
  390. package/dist/esm/ptc-news.entry.js +24 -24
  391. package/dist/esm/ptc-overlay.entry.js +23 -23
  392. package/dist/esm/ptc-pagenation.entry.js +306 -306
  393. package/dist/esm/ptc-para.entry.js +59 -59
  394. package/dist/esm/ptc-picture.entry.js +152 -152
  395. package/dist/esm/ptc-podcast-card.entry.js +11 -11
  396. package/dist/esm/ptc-previous-url.entry.js +11 -11
  397. package/dist/esm/ptc-pricing-add-on-card.entry.js +17 -17
  398. package/dist/esm/ptc-pricing-add-on-section.entry.js +39 -39
  399. package/dist/esm/ptc-pricing-block.entry.js +20 -20
  400. package/dist/esm/ptc-pricing-packaging-table.entry.js +359 -359
  401. package/dist/esm/ptc-pricing-tabs.entry.js +124 -124
  402. package/dist/esm/ptc-product-card.entry.js +22 -22
  403. package/dist/esm/ptc-product-category.entry.js +10 -10
  404. package/dist/esm/ptc-product-dropdown.entry.js +69 -69
  405. package/dist/esm/ptc-product-highlight-card.entry.js +12 -12
  406. package/dist/esm/ptc-product-list.entry.js +140 -140
  407. package/dist/esm/ptc-product-sidebar.entry.js +128 -128
  408. package/dist/esm/ptc-progress-bar.entry.js +16 -16
  409. package/dist/esm/ptc-quote.entry.js +24 -24
  410. package/dist/esm/ptc-readmore-char.entry.js +24 -24
  411. package/dist/esm/ptc-related-card-rail.entry.js +149 -149
  412. package/dist/esm/ptc-responsive-wrapper.entry.js +54 -54
  413. package/dist/esm/ptc-search-field.entry.js +71 -71
  414. package/dist/esm/ptc-seo-title.entry.js +71 -71
  415. package/dist/esm/ptc-shopping-cart.entry.js +50 -50
  416. package/dist/esm/ptc-slit-card.entry.js +25 -25
  417. package/dist/esm/ptc-spacer.entry.js +27 -27
  418. package/dist/esm/ptc-span.entry.js +20 -20
  419. package/dist/esm/ptc-square-card.entry.js +10 -10
  420. package/dist/esm/ptc-sticky-icons.entry.js +32 -32
  421. package/dist/esm/ptc-sticky-section.entry.js +30 -30
  422. package/dist/esm/ptc-sticky-title.entry.js +23 -23
  423. package/dist/esm/ptc-subnav-card.entry.js +16 -16
  424. package/dist/esm/ptc-subnav.entry.js +24 -24
  425. package/dist/esm/ptc-svg-btn.entry.js +95 -95
  426. package/dist/esm/ptc-tab-list.entry.js +143 -143
  427. package/dist/esm/ptc-tab.entry.js +20 -20
  428. package/dist/esm/ptc-tabs.entry.js +47 -47
  429. package/dist/esm/ptc-text-copy-with-background.entry.js +44 -44
  430. package/dist/esm/ptc-theater-video-modal.entry.js +81 -81
  431. package/dist/esm/ptc-title.entry.js +88 -88
  432. package/dist/esm/ptc-two-column-media.entry.js +15 -15
  433. package/dist/esm/ptc-value-led-card.entry.js +10 -10
  434. package/dist/esm/ptc-value-led-content-highlight.entry.js +8 -8
  435. package/dist/esm/ptc-value-led-content.entry.js +8 -8
  436. package/dist/esm/ptc-value-led-intro.entry.js +10 -10
  437. package/dist/esm/ptc-value-led-layout.entry.js +195 -195
  438. package/dist/esm/ptc-value-led-speed-bump.entry.js +21 -21
  439. package/dist/esm/ptc-value-prop-card.entry.js +13 -13
  440. package/dist/esm/ptc-white-paper.entry.js +102 -102
  441. package/dist/esm/sequential-bundle-example.entry.js +108 -108
  442. package/dist/esm/sequential-bundle.entry.js +88 -88
  443. package/dist/esm/tab-content.entry.js +27 -27
  444. package/dist/esm/tab-header.entry.js +65 -65
  445. package/dist/esm/{utils-ec03e51e.js → utils-984415da.js} +115 -115
  446. package/dist/ptcw-design/media/brands.svg +1381 -1381
  447. package/dist/ptcw-design/media/designer.svg +489 -489
  448. package/dist/ptcw-design/media/nav-active-dotslick.svg +15 -15
  449. package/dist/ptcw-design/media/regular.svg +463 -463
  450. package/dist/ptcw-design/media/solid.svg +3016 -3016
  451. package/dist/ptcw-design/media/svg-with-js.min.css +4 -4
  452. package/dist/ptcw-design/{p-3a291b61.entry.js → p-017d2640.entry.js} +1 -1
  453. package/dist/ptcw-design/{p-f5051648.entry.js → p-188bb3ee.entry.js} +1 -1
  454. package/dist/ptcw-design/{p-499565e9.entry.js → p-1d0a3a8c.entry.js} +1 -1
  455. package/dist/ptcw-design/p-27eaab9c.entry.js +1 -0
  456. package/dist/ptcw-design/{p-f3feb0d1.entry.js → p-2b6e3b8e.entry.js} +1 -1
  457. package/dist/ptcw-design/{p-93643ffd.entry.js → p-3b449f73.entry.js} +1 -1
  458. package/dist/ptcw-design/{p-73429b0c.entry.js → p-3ddcc5d9.entry.js} +1 -1
  459. package/dist/ptcw-design/p-54b4f87f.entry.js +1 -0
  460. package/dist/ptcw-design/p-570147ae.entry.js +1 -0
  461. package/dist/ptcw-design/{p-9a908785.entry.js → p-60b7ec2e.entry.js} +1 -1
  462. package/dist/ptcw-design/{p-c1bd1b09.entry.js → p-7a7d5274.entry.js} +1 -1
  463. package/dist/ptcw-design/{p-f2e2cf72.entry.js → p-a260fcb8.entry.js} +1 -1
  464. package/dist/ptcw-design/{p-f3f647db.entry.js → p-ac1af1bf.entry.js} +1 -1
  465. package/dist/ptcw-design/{p-874f8abe.entry.js → p-b9c64260.entry.js} +1 -1
  466. package/dist/ptcw-design/{p-50972a48.entry.js → p-cbe2a6b3.entry.js} +1 -1
  467. package/dist/ptcw-design/{p-7da8c09a.entry.js → p-db6f16d0.entry.js} +1 -1
  468. package/dist/ptcw-design/{p-4f34e6c8.entry.js → p-ef886da0.entry.js} +1 -1
  469. package/dist/ptcw-design/ptcw-design.css +1 -1
  470. package/dist/ptcw-design/ptcw-design.esm.js +1 -1
  471. package/dist/types/components/dropdown-item/dropdown-item.d.ts +5 -5
  472. package/dist/types/components/dynamic-box-bundle/dynamic-box-bundle.d.ts +10 -10
  473. package/dist/types/components/icon-asset/icon-asset.d.ts +40 -40
  474. package/dist/types/components/innovator-toggle-container/innovator-toggle-container.d.ts +17 -17
  475. package/dist/types/components/list-item/list-item.d.ts +18 -18
  476. package/dist/types/components/max-width-container/max-width-container.d.ts +16 -16
  477. package/dist/types/components/my-component/my-component.d.ts +16 -16
  478. package/dist/types/components/organism-bundles/author-listing-example/author-listing-example.d.ts +12 -12
  479. package/dist/types/components/organism-bundles/bundle-example/bundle-example.d.ts +14 -14
  480. package/dist/types/components/organism-bundles/bundle-featured-list/featured-list.d.ts +12 -12
  481. package/dist/types/components/organism-bundles/bundle-jumbotron-example/bundle-jumbotron-example.d.ts +5 -5
  482. package/dist/types/components/organism-bundles/form/embedded-form/embedded-form.d.ts +31 -31
  483. package/dist/types/components/organism-bundles/form/footer-form/footer-form.d.ts +14 -14
  484. package/dist/types/components/organism-bundles/form/ptc-form/ptc-form.d.ts +25 -25
  485. package/dist/types/components/organism-bundles/sequential-bundle/sequential-bundle.d.ts +12 -12
  486. package/dist/types/components/organism-bundles/sequential-bundle-example/sequential-bundle-example.d.ts +16 -16
  487. package/dist/types/components/ptc-accordion/ptc-accordion-item/ptc-accordion-item.d.ts +65 -65
  488. package/dist/types/components/ptc-accordion/ptc-accordion.d.ts +17 -17
  489. package/dist/types/components/ptc-announcement/ptc-announcement.d.ts +59 -59
  490. package/dist/types/components/ptc-back-to-top/ptc-back-to-top.d.ts +10 -10
  491. package/dist/types/components/ptc-background-video/ptc-background-video.d.ts +45 -45
  492. package/dist/types/components/ptc-bio-card/ptc-bio-card.d.ts +27 -27
  493. package/dist/types/components/ptc-breadcrumb/ptc-breadcrumb.d.ts +20 -20
  494. package/dist/types/components/ptc-brightcov-video/ptc-brightcov-video.d.ts +6 -6
  495. package/dist/types/components/ptc-button/ptc-button.d.ts +77 -77
  496. package/dist/types/components/ptc-card/ptc-card.d.ts +84 -84
  497. package/dist/types/components/ptc-card-bottom/ptc-card-bottom.d.ts +15 -15
  498. package/dist/types/components/ptc-card-content/ptc-card-content.d.ts +19 -19
  499. package/dist/types/components/ptc-card-wrapper/ptc-card-wrapper.d.ts +30 -30
  500. package/dist/types/components/ptc-case-studies-slider/ptc-case-studies-slider.d.ts +14 -14
  501. package/dist/types/components/ptc-checkbox/ptc-checkbox.d.ts +14 -14
  502. package/dist/types/components/ptc-collapse-list/ptc-collapse-list.d.ts +60 -60
  503. package/dist/types/components/ptc-container/ptc-container.d.ts +13 -13
  504. package/dist/types/components/ptc-data-lookup/ptc-data-lookup.d.ts +27 -27
  505. package/dist/types/components/ptc-date/ptc-date.d.ts +46 -46
  506. package/dist/types/components/ptc-dropdown/ptc-dropdown.d.ts +19 -19
  507. package/dist/types/components/ptc-dynamic-card/ptc-dynamic-card.d.ts +27 -27
  508. package/dist/types/components/ptc-ellipsis-dropdown/ptc-ellipsis-dropdown.d.ts +15 -15
  509. package/dist/types/components/ptc-embedded-quiz/ptc-embedded-quiz.d.ts +21 -21
  510. package/dist/types/components/ptc-featured-list/fl-tab-content/fl-tab-content.d.ts +5 -5
  511. package/dist/types/components/ptc-featured-list/fl-tab-header/fl-tab-header.d.ts +12 -12
  512. package/dist/types/components/ptc-featured-list/fl-tab-image/fl-tab-image.d.ts +5 -5
  513. package/dist/types/components/ptc-featured-list/ptc-featured-list.d.ts +12 -12
  514. package/dist/types/components/ptc-filter-dropdown/ptc-filter-dropdown.d.ts +26 -26
  515. package/dist/types/components/ptc-filter-level-theater/ptc-filter-level-theater.d.ts +17 -17
  516. package/dist/types/components/ptc-filter-tag/ptc-filter-tag.d.ts +17 -17
  517. package/dist/types/components/ptc-form-checkbox/ptc-form-checkbox.d.ts +26 -26
  518. package/dist/types/components/ptc-hero/ptc-hero.d.ts +16 -16
  519. package/dist/types/components/ptc-hero-footer-cta/ptc-hero-footer-cta.d.ts +6 -6
  520. package/dist/types/components/ptc-icon-component/ptc-icon-component.d.ts +17 -17
  521. package/dist/types/components/ptc-icon-list/ptc-icon-list.d.ts +21 -21
  522. package/dist/types/components/ptc-icon-minimize/ptc-icon-minimize.d.ts +12 -12
  523. package/dist/types/components/ptc-image-download-strip/ptc-image-download-strip.d.ts +9 -9
  524. package/dist/types/components/ptc-img/ptc-img.d.ts +55 -55
  525. package/dist/types/components/ptc-jumbotron/ptc-jumbotron.d.ts +26 -26
  526. package/dist/types/components/ptc-link/ptc-link.d.ts +51 -51
  527. package/dist/types/components/ptc-list/ptc-list.d.ts +8 -8
  528. package/dist/types/components/ptc-media-card/ptc-media-card.d.ts +52 -52
  529. package/dist/types/components/ptc-minimized-nav/ptc-minimized-nav.d.ts +7 -7
  530. package/dist/types/components/ptc-mobile-select/ptc-mobile-select.d.ts +36 -36
  531. package/dist/types/components/ptc-modal/ptc-modal.d.ts +76 -76
  532. package/dist/types/components/ptc-modal-quiz/ptc-modal-quiz.d.ts +36 -36
  533. package/dist/types/components/ptc-nav-card/ptc-nav-card.d.ts +46 -46
  534. package/dist/types/components/ptc-nav-pills/ptc-nav-pills.d.ts +3 -3
  535. package/dist/types/components/ptc-news/ptc-news.d.ts +36 -36
  536. package/dist/types/components/ptc-overlay/ptc-overlay.d.ts +21 -21
  537. package/dist/types/components/ptc-pagenation/ptc-pagenation.d.ts +40 -40
  538. package/dist/types/components/ptc-para/ptc-para.d.ts +52 -52
  539. package/dist/types/components/ptc-picture/ptc-picture.d.ts +102 -102
  540. package/dist/types/components/ptc-podcast-card/ptc-podcast-card.d.ts +15 -15
  541. package/dist/types/components/ptc-previous-url/ptc-previous-url.d.ts +9 -9
  542. package/dist/types/components/ptc-pricing-add-on-card/ptc-pricing-add-on-card.d.ts +31 -31
  543. package/dist/types/components/ptc-pricing-add-on-section/ptc-pricing-add-on-section.d.ts +26 -26
  544. package/dist/types/components/ptc-pricing-block/ptc-pricing-block.d.ts +7 -7
  545. package/dist/types/components/ptc-pricing-packaging-table/ptc-pricing-packaging-table.d.ts +87 -87
  546. package/dist/types/components/ptc-pricing-tabs/ptc-pricing-tabs.d.ts +52 -52
  547. package/dist/types/components/ptc-product-card/ptc-product-card.d.ts +37 -37
  548. package/dist/types/components/ptc-product-category/ptc-product-category.d.ts +5 -5
  549. package/dist/types/components/ptc-product-dropdown/ptc-product-dropdown.d.ts +18 -18
  550. package/dist/types/components/ptc-product-highlight-card/ptc-product-highlight-card.d.ts +23 -23
  551. package/dist/types/components/ptc-product-list/ptc-product-list.d.ts +18 -18
  552. package/dist/types/components/ptc-product-sidebar/ptc-product-sidebar.d.ts +31 -31
  553. package/dist/types/components/ptc-progress-bar/ptc-progress-bar.d.ts +5 -5
  554. package/dist/types/components/ptc-quote/ptc-quote.d.ts +29 -29
  555. package/dist/types/components/ptc-readmore/ptc-readmore.d.ts +58 -58
  556. package/dist/types/components/ptc-readmore-char/ptc-readmore-char.d.ts +30 -30
  557. package/dist/types/components/ptc-related-card-rail/ptc-related-card-rail.d.ts +30 -30
  558. package/dist/types/components/ptc-responsive-wrapper/ptc-responsive-wrapper.d.ts +8 -8
  559. package/dist/types/components/ptc-search-field/ptc-search-field.d.ts +23 -23
  560. package/dist/types/components/ptc-select/ptc-select.d.ts +29 -29
  561. package/dist/types/components/ptc-seo-title/ptc-seo-title.d.ts +55 -55
  562. package/dist/types/components/ptc-shopping-cart/ptc-shopping-cart.d.ts +6 -6
  563. package/dist/types/components/ptc-skeleton/ptc-skeleton.d.ts +10 -10
  564. package/dist/types/components/ptc-slit-card/ptc-slit-card.d.ts +36 -36
  565. package/dist/types/components/ptc-social-share/ptc-social-share.d.ts +37 -37
  566. package/dist/types/components/ptc-spacer/ptc-spacer.d.ts +16 -16
  567. package/dist/types/components/ptc-span/ptc-span.d.ts +20 -20
  568. package/dist/types/components/ptc-square-card/ptc-square-card.d.ts +11 -11
  569. package/dist/types/components/ptc-sticky-icons/ptc-sticky-icons.d.ts +7 -7
  570. package/dist/types/components/ptc-sticky-section/ptc-sticky-section.d.ts +9 -9
  571. package/dist/types/components/ptc-sticky-title/ptc-sticky-title.d.ts +8 -8
  572. package/dist/types/components/ptc-svg-btn/ptc-svg-btn.d.ts +20 -20
  573. package/dist/types/components/ptc-tab-list/ptc-tab-list.d.ts +23 -23
  574. package/dist/types/components/ptc-tabs/ptc-tab.d.ts +9 -9
  575. package/dist/types/components/ptc-tabs/ptc-tabs.d.ts +10 -10
  576. package/dist/types/components/ptc-text-copy-with-background/ptc-text-copy-with-background.d.ts +42 -42
  577. package/dist/types/components/ptc-textfield/ptc-textfield.d.ts +36 -36
  578. package/dist/types/components/ptc-theater-video/ptc-theater-video.d.ts +14 -14
  579. package/dist/types/components/ptc-theater-video-modal/ptc-theater-video-modal.d.ts +16 -16
  580. package/dist/types/components/ptc-theater-video-playlist/ptc-theater-video-playlist.d.ts +26 -26
  581. package/dist/types/components/ptc-title/ptc-title.d.ts +61 -61
  582. package/dist/types/components/ptc-tooltip/ptc-tooltip.d.ts +63 -63
  583. package/dist/types/components/ptc-two-column-media/ptc-two-column-media.d.ts +9 -9
  584. package/dist/types/components/ptc-value-led-card/ptc-value-led-card.d.ts +5 -5
  585. package/dist/types/components/ptc-value-led-content/ptc-value-led-content.d.ts +3 -3
  586. package/dist/types/components/ptc-value-led-content-highlight/ptc-value-led-content-highlight.d.ts +3 -3
  587. package/dist/types/components/ptc-value-led-intro/ptc-value-led-intro.d.ts +4 -4
  588. package/dist/types/components/ptc-value-led-layout/ptc-value-led-layout.d.ts +25 -25
  589. package/dist/types/components/ptc-value-led-speed-bump/ptc-value-led-speed-bump.d.ts +10 -10
  590. package/dist/types/components/ptc-value-prop-card/ptc-value-prop-card.d.ts +23 -23
  591. package/dist/types/components/ptc-white-paper/ptc-white-paper.d.ts +41 -41
  592. package/dist/types/components/subnav/ptc-nav-link/ptc-nav-link.d.ts +26 -26
  593. package/dist/types/components/subnav/ptc-nav-slider/ptc-nav-slider.d.ts +11 -11
  594. package/dist/types/components/subnav/ptc-nav-submenu/ptc-nav-submenu.d.ts +23 -23
  595. package/dist/types/components/subnav/ptc-subnav/ptc-subnav.d.ts +11 -11
  596. package/dist/types/components/subnav/ptc-subnav-card/ptc-subnav-card.d.ts +31 -31
  597. package/dist/types/components/tab-content/tab-content.d.ts +12 -12
  598. package/dist/types/components/tab-header/tab-header.d.ts +22 -22
  599. package/dist/types/components.d.ts +236 -236
  600. package/dist/types/index.d.ts +1 -1
  601. package/dist/types/utils/component.d.ts +1 -1
  602. package/dist/types/utils/eloqua.d.ts +8 -8
  603. package/dist/types/utils/elq-lib.d.ts +55 -55
  604. package/dist/types/utils/interfaces.d.ts +32 -32
  605. package/dist/types/utils/utils.d.ts +8 -8
  606. package/dist/types/utils/validation-messages.d.ts +102 -102
  607. package/package.json +89 -89
  608. package/readme.md +19 -19
  609. package/dist/ptcw-design/p-4986e194.entry.js +0 -1
  610. package/dist/ptcw-design/p-9fdc5250.entry.js +0 -1
  611. package/dist/ptcw-design/p-acc71f4b.entry.js +0 -1
  612. /package/dist/ptcw-design/{p-711bcdad.js → p-240733ce.js} +0 -0
  613. /package/dist/ptcw-design/{p-40bd4f0a.js → p-9f7ced2b.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').selectedValue = 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').selectedValue = 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'] || [];