@ptcwebops/ptcw-design 1.5.2 → 1.5.5

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 (391) hide show
  1. package/LICENSE +21 -21
  2. package/dist/cjs/bundle-example.cjs.entry.js +30 -30
  3. package/dist/cjs/bundle-jumbotron-example.cjs.entry.js +50 -0
  4. package/dist/cjs/dropdown-item.cjs.entry.js +10 -10
  5. package/dist/cjs/dynamic-box-bundle.cjs.entry.js +25 -25
  6. package/dist/cjs/{bundle-jumbotron-example_14.cjs.entry.js → icon-asset_16.cjs.entry.js} +927 -916
  7. package/dist/cjs/innovator-toggle-container.cjs.entry.js +21 -21
  8. package/dist/cjs/interfaces-0ecd8027.js +15 -0
  9. package/dist/cjs/loader.cjs.js +1 -1
  10. package/dist/cjs/lottie-player.cjs.entry.js +354 -354
  11. package/dist/cjs/max-width-container_3.cjs.entry.js +236 -0
  12. package/dist/cjs/my-component.cjs.entry.js +15 -15
  13. package/dist/cjs/ptc-accordion-item.cjs.entry.js +83 -83
  14. package/dist/cjs/ptc-accordion.cjs.entry.js +35 -35
  15. package/dist/cjs/ptc-announcement.cjs.entry.js +50 -50
  16. package/dist/cjs/ptc-bio-card.cjs.entry.js +24 -24
  17. package/dist/cjs/ptc-card-bottom_3.cjs.entry.js +122 -122
  18. package/dist/cjs/ptc-card-content.cjs.entry.js +57 -57
  19. package/dist/cjs/ptc-card.cjs.entry.js +66 -66
  20. package/dist/cjs/ptc-checkbox.cjs.entry.js +50 -50
  21. package/dist/cjs/ptc-collapse-list.cjs.entry.js +353 -346
  22. package/dist/cjs/ptc-container.cjs.entry.js +33 -33
  23. package/dist/cjs/ptc-date.cjs.entry.js +50 -50
  24. package/dist/cjs/ptc-dropdown.cjs.entry.js +64 -64
  25. package/dist/cjs/ptc-dynamic-card.cjs.entry.js +47 -47
  26. package/dist/cjs/ptc-ellipsis-dropdown.cjs.entry.js +38 -38
  27. package/dist/cjs/ptc-filter-tag.cjs.entry.js +57 -57
  28. package/dist/cjs/ptc-hero-footer-cta.cjs.entry.js +11 -11
  29. package/dist/cjs/ptc-hero.cjs.entry.js +18 -18
  30. package/dist/cjs/ptc-icon-list.cjs.entry.js +21 -21
  31. package/dist/cjs/ptc-icon-minimize.cjs.entry.js +43 -43
  32. package/dist/cjs/ptc-jumbotron.cjs.entry.js +135 -0
  33. package/dist/cjs/ptc-link.cjs.entry.js +35 -35
  34. package/dist/cjs/ptc-list.cjs.entry.js +49 -49
  35. package/dist/cjs/ptc-lottie.cjs.entry.js +10 -10
  36. package/dist/cjs/ptc-media-card.cjs.entry.js +58 -58
  37. package/dist/cjs/ptc-minimized-footer.cjs.entry.js +8 -8
  38. package/dist/cjs/ptc-minimized-header.cjs.entry.js +11 -11
  39. package/dist/cjs/ptc-mobile-select.cjs.entry.js +53 -53
  40. package/dist/cjs/ptc-modal.cjs.entry.js +149 -149
  41. package/dist/cjs/ptc-nav-card.cjs.entry.js +36 -36
  42. package/dist/cjs/ptc-nav-link.cjs.entry.js +36 -36
  43. package/dist/cjs/ptc-nav-slider.cjs.entry.js +83 -83
  44. package/dist/cjs/ptc-nav-submenu.cjs.entry.js +18 -18
  45. package/dist/cjs/ptc-overlay.cjs.entry.js +23 -23
  46. package/dist/cjs/ptc-pagenation.cjs.entry.js +306 -306
  47. package/dist/cjs/ptc-previous-url.cjs.entry.js +11 -11
  48. package/dist/cjs/ptc-pricing-block.cjs.entry.js +20 -20
  49. package/dist/cjs/ptc-pricing-tabs.cjs.entry.js +125 -125
  50. package/dist/cjs/ptc-quote.cjs.entry.js +23 -23
  51. package/dist/cjs/ptc-readmore.cjs.entry.js +73 -73
  52. package/dist/cjs/ptc-responsive-wrapper.cjs.entry.js +54 -54
  53. package/dist/cjs/ptc-search-field.cjs.entry.js +71 -71
  54. package/dist/cjs/ptc-shopping-cart.cjs.entry.js +50 -50
  55. package/dist/cjs/ptc-social-share.cjs.entry.js +59 -59
  56. package/dist/cjs/ptc-span.cjs.entry.js +18 -18
  57. package/dist/cjs/ptc-sticky-icons.cjs.entry.js +32 -32
  58. package/dist/cjs/ptc-sticky-section.cjs.entry.js +27 -27
  59. package/dist/cjs/ptc-subnav-card.cjs.entry.js +15 -15
  60. package/dist/cjs/ptc-subnav.cjs.entry.js +21 -21
  61. package/dist/cjs/ptc-svg-btn.cjs.entry.js +95 -95
  62. package/dist/cjs/ptc-tab-list.cjs.entry.js +125 -125
  63. package/dist/cjs/ptc-tab.cjs.entry.js +20 -20
  64. package/dist/cjs/ptc-tabs.cjs.entry.js +47 -47
  65. package/dist/cjs/ptc-text-copy-with-background.cjs.entry.js +42 -41
  66. package/dist/cjs/ptc-two-column-media.cjs.entry.js +15 -15
  67. package/dist/cjs/ptcw-design.cjs.js +1 -1
  68. package/dist/cjs/sequential-bundle-example.cjs.entry.js +100 -100
  69. package/dist/cjs/sequential-bundle.cjs.entry.js +88 -88
  70. package/dist/cjs/tab-content.cjs.entry.js +27 -27
  71. package/dist/cjs/tab-header.cjs.entry.js +64 -64
  72. package/dist/cjs/{utils-9eb22041.js → utils-416c94fe.js} +90 -90
  73. package/dist/collection/collection-manifest.json +7 -0
  74. package/dist/collection/components/dropdown-item/dropdown-item.js +61 -61
  75. package/dist/collection/components/dynamic-box-bundle/dynamic-box-bundle.js +114 -114
  76. package/dist/collection/components/icon-asset/icon-asset.css +4 -4
  77. package/dist/collection/components/icon-asset/icon-asset.js +199 -199
  78. package/dist/collection/components/icon-asset/media/brands.svg +1381 -1381
  79. package/dist/collection/components/icon-asset/media/designer.svg +397 -397
  80. package/dist/collection/components/icon-asset/media/regular.svg +463 -463
  81. package/dist/collection/components/icon-asset/media/solid.svg +3013 -3013
  82. package/dist/collection/components/icon-asset/media/svg-with-js.min.css +4 -4
  83. package/dist/collection/components/innovator-toggle-container/innovator-toggle-container.js +89 -89
  84. package/dist/collection/components/list-item/list-item.css +15 -0
  85. package/dist/collection/components/list-item/list-item.js +144 -144
  86. package/dist/collection/components/max-width-container/max-width-container.css +11 -11
  87. package/dist/collection/components/max-width-container/max-width-container.js +105 -105
  88. package/dist/collection/components/my-component/my-component.css +3 -3
  89. package/dist/collection/components/my-component/my-component.js +82 -82
  90. package/dist/collection/components/organism-bundles/bundle-example/bundle-example.css +25 -25
  91. package/dist/collection/components/organism-bundles/bundle-example/bundle-example.js +58 -58
  92. package/dist/collection/components/organism-bundles/bundle-jumbotron-example/bundle-jumbotron-example.css +3 -3
  93. package/dist/collection/components/organism-bundles/bundle-jumbotron-example/bundle-jumbotron-example.js +91 -91
  94. package/dist/collection/components/organism-bundles/sequential-bundle/sequential-bundle.js +116 -116
  95. package/dist/collection/components/organism-bundles/sequential-bundle-example/sequential-bundle-example.css +89 -89
  96. package/dist/collection/components/organism-bundles/sequential-bundle-example/sequential-bundle-example.js +152 -152
  97. package/dist/collection/components/ptc-accordion/ptc-accordion-item/ptc-accordion-item.js +287 -287
  98. package/dist/collection/components/ptc-accordion/ptc-accordion.js +78 -78
  99. package/dist/collection/components/ptc-announcement/ptc-announcement.js +237 -237
  100. package/dist/collection/components/ptc-back-to-top/ptc-back-to-top.css +30 -0
  101. package/dist/collection/components/ptc-back-to-top/ptc-back-to-top.js +61 -0
  102. package/dist/collection/components/ptc-background-video/ptc-background-video.js +200 -200
  103. package/dist/collection/components/ptc-bio-card/ptc-bio-card.js +130 -130
  104. package/dist/collection/components/ptc-breadcrumb/ptc-breadcrumb.js +105 -105
  105. package/dist/collection/components/ptc-button/ptc-button.js +283 -283
  106. package/dist/collection/components/ptc-card/ptc-card.js +362 -362
  107. package/dist/collection/components/ptc-card-bottom/ptc-card-bottom.js +116 -116
  108. package/dist/collection/components/ptc-card-content/ptc-card-content.js +212 -212
  109. package/dist/collection/components/ptc-card-wrapper/ptc-card-wrapper.js +214 -214
  110. package/dist/collection/components/ptc-checkbox/ptc-checkbox.js +152 -152
  111. package/dist/collection/components/ptc-collapse-list/ptc-collapse-list.js +593 -586
  112. package/dist/collection/components/ptc-container/ptc-container.js +138 -138
  113. package/dist/collection/components/ptc-date/ptc-date.js +224 -224
  114. package/dist/collection/components/ptc-dropdown/ptc-dropdown.js +162 -162
  115. package/dist/collection/components/ptc-dynamic-card/media/nav-active-dotslick.svg +15 -15
  116. package/dist/collection/components/ptc-dynamic-card/ptc-dynamic-card.js +174 -174
  117. package/dist/collection/components/ptc-ellipsis-dropdown/ptc-ellipsis-dropdown.js +122 -122
  118. package/dist/collection/components/ptc-filter-tag/ptc-filter-tag.js +113 -113
  119. package/dist/collection/components/ptc-hero/ptc-hero.js +86 -86
  120. package/dist/collection/components/ptc-hero-footer-cta/ptc-hero-footer-cta.js +78 -78
  121. package/dist/collection/components/ptc-icon-list/ptc-icon-list.js +127 -127
  122. package/dist/collection/components/ptc-icon-minimize/ptc-icon-minimize.js +119 -119
  123. package/dist/collection/components/ptc-img/ptc-img.js +311 -311
  124. package/dist/collection/components/ptc-jumbotron/ptc-jumbotron.css +33 -12
  125. package/dist/collection/components/ptc-jumbotron/ptc-jumbotron.js +349 -349
  126. package/dist/collection/components/ptc-link/ptc-link.js +209 -209
  127. package/dist/collection/components/ptc-list/ptc-list.js +99 -99
  128. package/dist/collection/components/ptc-lottie/ptc-lottie.css +5 -5
  129. package/dist/collection/components/ptc-lottie/ptc-lottie.js +62 -62
  130. package/dist/collection/components/ptc-media-card/ptc-media-card.js +240 -240
  131. package/dist/collection/components/ptc-minimized-footer/ptc-minimized-footer.js +18 -18
  132. package/dist/collection/components/ptc-minimized-header/ptc-minimized-header.js +81 -81
  133. package/dist/collection/components/ptc-mobile-select/ptc-mobile-select.js +190 -190
  134. package/dist/collection/components/ptc-modal/ptc-modal.js +389 -389
  135. package/dist/collection/components/ptc-nav-card/ptc-nav-card.js +224 -224
  136. package/dist/collection/components/ptc-overlay/ptc-overlay.js +131 -131
  137. package/dist/collection/components/ptc-pagenation/ptc-pagenation.js +573 -573
  138. package/dist/collection/components/ptc-para/ptc-para.js +242 -242
  139. package/dist/collection/components/ptc-picture/ptc-picture.css +7 -1
  140. package/dist/collection/components/ptc-picture/ptc-picture.js +473 -453
  141. package/dist/collection/components/ptc-previous-url/ptc-previous-url.js +78 -78
  142. package/dist/collection/components/ptc-pricing-block/ptc-pricing-block.js +70 -70
  143. package/dist/collection/components/ptc-pricing-tabs/ptc-pricing-tabs.css +33 -12
  144. package/dist/collection/components/ptc-pricing-tabs/ptc-pricing-tabs.js +272 -272
  145. package/dist/collection/components/ptc-product-card/ptc-product-card.css +61 -0
  146. package/dist/collection/components/ptc-product-card/ptc-product-card.js +179 -0
  147. package/dist/collection/components/ptc-product-category/ptc-product-category.css +4 -0
  148. package/dist/collection/components/ptc-product-category/ptc-product-category.js +60 -0
  149. package/dist/collection/components/ptc-product-dropdown/ptc-product-dropdown.css +79 -0
  150. package/dist/collection/components/ptc-product-dropdown/ptc-product-dropdown.js +185 -0
  151. package/dist/collection/components/ptc-product-highlight-card/ptc-product-highlight-card.css +11 -0
  152. package/dist/collection/components/ptc-product-highlight-card/ptc-product-highlight-card.js +96 -0
  153. package/dist/collection/components/ptc-product-list/ptc-product-list.css +23 -0
  154. package/dist/collection/components/ptc-product-list/ptc-product-list.js +171 -0
  155. package/dist/collection/components/ptc-product-sidebar/ptc-product-sidebar.css +150 -0
  156. package/dist/collection/components/ptc-product-sidebar/ptc-product-sidebar.js +237 -0
  157. package/dist/collection/components/ptc-quote/ptc-quote.js +144 -144
  158. package/dist/collection/components/ptc-readmore/ptc-readmore.js +298 -298
  159. package/dist/collection/components/ptc-responsive-wrapper/ptc-responsive-wrapper.css +3 -3
  160. package/dist/collection/components/ptc-responsive-wrapper/ptc-responsive-wrapper.js +65 -65
  161. package/dist/collection/components/ptc-search-field/ptc-search-field.js +247 -247
  162. package/dist/collection/components/ptc-shopping-cart/ptc-shopping-cart.js +97 -97
  163. package/dist/collection/components/ptc-skeleton/ptc-skeleton.js +139 -139
  164. package/dist/collection/components/ptc-social-share/ptc-social-share.js +239 -239
  165. package/dist/collection/components/ptc-spacer/ptc-spacer.css +332 -332
  166. package/dist/collection/components/ptc-spacer/ptc-spacer.js +97 -97
  167. package/dist/collection/components/ptc-span/ptc-span.js +87 -87
  168. package/dist/collection/components/ptc-sticky-icons/ptc-sticky-icons.js +51 -51
  169. package/dist/collection/components/ptc-sticky-section/ptc-sticky-section.js +46 -46
  170. package/dist/collection/components/ptc-svg-btn/ptc-svg-btn.js +109 -109
  171. package/dist/collection/components/ptc-tab-list/ptc-tab-list.js +177 -177
  172. package/dist/collection/components/ptc-tabs/ptc-tab.js +121 -121
  173. package/dist/collection/components/ptc-tabs/ptc-tabs.js +104 -104
  174. package/dist/collection/components/ptc-text-copy-with-background/ptc-text-copy-with-background.js +181 -180
  175. package/dist/collection/components/ptc-title/ptc-title.css +8 -0
  176. package/dist/collection/components/ptc-title/ptc-title.js +310 -310
  177. package/dist/collection/components/ptc-tooltip/ptc-tooltip.css +9 -0
  178. package/dist/collection/components/ptc-tooltip/ptc-tooltip.js +342 -322
  179. package/dist/collection/components/ptc-two-column-media/ptc-two-column-media.js +48 -48
  180. package/dist/collection/components/subnav/ptc-nav-link/ptc-nav-link.js +114 -114
  181. package/dist/collection/components/subnav/ptc-nav-slider/ptc-nav-slider.js +126 -126
  182. package/dist/collection/components/subnav/ptc-nav-submenu/ptc-nav-submenu.js +85 -85
  183. package/dist/collection/components/subnav/ptc-subnav/ptc-subnav.js +47 -47
  184. package/dist/collection/components/subnav/ptc-subnav-card/ptc-subnav-card.js +133 -133
  185. package/dist/collection/components/tab-content/tab-content.js +84 -84
  186. package/dist/collection/components/tab-header/tab-header.js +182 -182
  187. package/dist/collection/index.js +1 -1
  188. package/dist/collection/media/svg-imgs/Back-arrow.svg +11 -11
  189. package/dist/collection/media/svg-imgs/close.svg +10 -10
  190. package/dist/collection/media/svg-imgs/play-button-dark.svg +20 -20
  191. package/dist/collection/media/svg-imgs/ptc-shopping-cart-black.svg +3 -3
  192. package/dist/collection/media/svg-imgs/ptc-shopping-cart-white.svg +3 -3
  193. package/dist/collection/media/svg-imgs/slider-arrow-left.svg +18 -18
  194. package/dist/collection/media/svg-imgs/slider-arrow-right.svg +18 -18
  195. package/dist/collection/media/svg-imgs/union.svg +3 -3
  196. package/dist/collection/utils/component.js +3 -3
  197. package/dist/collection/utils/interfaces.js +11 -11
  198. package/dist/collection/utils/utils.js +92 -92
  199. package/dist/custom-elements/index.d.ts +42 -0
  200. package/dist/custom-elements/index.js +5355 -4903
  201. package/dist/esm/bundle-example.entry.js +30 -30
  202. package/dist/esm/bundle-jumbotron-example.entry.js +46 -0
  203. package/dist/esm/dropdown-item.entry.js +10 -10
  204. package/dist/esm/dynamic-box-bundle.entry.js +25 -25
  205. package/dist/esm/{bundle-jumbotron-example_14.entry.js → icon-asset_16.entry.js} +922 -913
  206. package/dist/esm/innovator-toggle-container.entry.js +21 -21
  207. package/dist/esm/interfaces-c1c73092.js +12 -0
  208. package/dist/esm/loader.js +1 -1
  209. package/dist/esm/lottie-player.entry.js +354 -354
  210. package/dist/esm/max-width-container_3.entry.js +230 -0
  211. package/dist/esm/my-component.entry.js +15 -15
  212. package/dist/esm/polyfills/core-js.js +0 -0
  213. package/dist/esm/polyfills/dom.js +0 -0
  214. package/dist/esm/polyfills/es5-html-element.js +0 -0
  215. package/dist/esm/polyfills/index.js +0 -0
  216. package/dist/esm/polyfills/system.js +0 -0
  217. package/dist/esm/ptc-accordion-item.entry.js +83 -83
  218. package/dist/esm/ptc-accordion.entry.js +35 -35
  219. package/dist/esm/ptc-announcement.entry.js +50 -50
  220. package/dist/esm/ptc-bio-card.entry.js +24 -24
  221. package/dist/esm/ptc-card-bottom_3.entry.js +122 -122
  222. package/dist/esm/ptc-card-content.entry.js +57 -57
  223. package/dist/esm/ptc-card.entry.js +66 -66
  224. package/dist/esm/ptc-checkbox.entry.js +50 -50
  225. package/dist/esm/ptc-collapse-list.entry.js +353 -346
  226. package/dist/esm/ptc-container.entry.js +33 -33
  227. package/dist/esm/ptc-date.entry.js +50 -50
  228. package/dist/esm/ptc-dropdown.entry.js +64 -64
  229. package/dist/esm/ptc-dynamic-card.entry.js +47 -47
  230. package/dist/esm/ptc-ellipsis-dropdown.entry.js +38 -38
  231. package/dist/esm/ptc-filter-tag.entry.js +57 -57
  232. package/dist/esm/ptc-hero-footer-cta.entry.js +11 -11
  233. package/dist/esm/ptc-hero.entry.js +18 -18
  234. package/dist/esm/ptc-icon-list.entry.js +21 -21
  235. package/dist/esm/ptc-icon-minimize.entry.js +43 -43
  236. package/dist/esm/ptc-jumbotron.entry.js +131 -0
  237. package/dist/esm/ptc-link.entry.js +35 -35
  238. package/dist/esm/ptc-list.entry.js +49 -49
  239. package/dist/esm/ptc-lottie.entry.js +10 -10
  240. package/dist/esm/ptc-media-card.entry.js +58 -58
  241. package/dist/esm/ptc-minimized-footer.entry.js +8 -8
  242. package/dist/esm/ptc-minimized-header.entry.js +11 -11
  243. package/dist/esm/ptc-mobile-select.entry.js +53 -53
  244. package/dist/esm/ptc-modal.entry.js +149 -149
  245. package/dist/esm/ptc-nav-card.entry.js +36 -36
  246. package/dist/esm/ptc-nav-link.entry.js +36 -36
  247. package/dist/esm/ptc-nav-slider.entry.js +83 -83
  248. package/dist/esm/ptc-nav-submenu.entry.js +18 -18
  249. package/dist/esm/ptc-overlay.entry.js +23 -23
  250. package/dist/esm/ptc-pagenation.entry.js +306 -306
  251. package/dist/esm/ptc-previous-url.entry.js +11 -11
  252. package/dist/esm/ptc-pricing-block.entry.js +20 -20
  253. package/dist/esm/ptc-pricing-tabs.entry.js +125 -125
  254. package/dist/esm/ptc-quote.entry.js +23 -23
  255. package/dist/esm/ptc-readmore.entry.js +73 -73
  256. package/dist/esm/ptc-responsive-wrapper.entry.js +54 -54
  257. package/dist/esm/ptc-search-field.entry.js +71 -71
  258. package/dist/esm/ptc-shopping-cart.entry.js +50 -50
  259. package/dist/esm/ptc-social-share.entry.js +59 -59
  260. package/dist/esm/ptc-span.entry.js +18 -18
  261. package/dist/esm/ptc-sticky-icons.entry.js +32 -32
  262. package/dist/esm/ptc-sticky-section.entry.js +27 -27
  263. package/dist/esm/ptc-subnav-card.entry.js +15 -15
  264. package/dist/esm/ptc-subnav.entry.js +21 -21
  265. package/dist/esm/ptc-svg-btn.entry.js +95 -95
  266. package/dist/esm/ptc-tab-list.entry.js +125 -125
  267. package/dist/esm/ptc-tab.entry.js +20 -20
  268. package/dist/esm/ptc-tabs.entry.js +47 -47
  269. package/dist/esm/ptc-text-copy-with-background.entry.js +42 -41
  270. package/dist/esm/ptc-two-column-media.entry.js +15 -15
  271. package/dist/esm/ptcw-design.js +1 -1
  272. package/dist/esm/sequential-bundle-example.entry.js +100 -100
  273. package/dist/esm/sequential-bundle.entry.js +88 -88
  274. package/dist/esm/tab-content.entry.js +27 -27
  275. package/dist/esm/tab-header.entry.js +64 -64
  276. package/dist/esm/{utils-38decc43.js → utils-f937097d.js} +90 -90
  277. package/dist/ptcw-design/media/brands.svg +1381 -1381
  278. package/dist/ptcw-design/media/designer.svg +397 -397
  279. package/dist/ptcw-design/media/nav-active-dotslick.svg +15 -15
  280. package/dist/ptcw-design/media/regular.svg +463 -463
  281. package/dist/ptcw-design/media/solid.svg +3013 -3013
  282. package/dist/ptcw-design/media/svg-with-js.min.css +4 -4
  283. package/dist/ptcw-design/p-2414dc2a.entry.js +1 -0
  284. package/dist/ptcw-design/p-50e52c88.js +1 -0
  285. package/dist/ptcw-design/p-6927c111.entry.js +1 -0
  286. package/dist/ptcw-design/p-73ea7065.entry.js +1 -0
  287. package/dist/ptcw-design/{p-4702f4e4.entry.js → p-8a6acf0d.entry.js} +1 -1
  288. package/dist/ptcw-design/p-9379f3b6.entry.js +1 -0
  289. package/dist/ptcw-design/p-a0ead888.entry.js +1 -0
  290. package/dist/ptcw-design/{p-c9bd6b20.entry.js → p-e2c96087.entry.js} +1 -1
  291. package/dist/ptcw-design/{p-469482ba.entry.js → p-ed0c7f10.entry.js} +1 -1
  292. package/dist/ptcw-design/p-f9129612.entry.js +1 -0
  293. package/dist/ptcw-design/ptcw-design.css +2 -2
  294. package/dist/ptcw-design/ptcw-design.esm.js +1 -1
  295. package/dist/types/components/dropdown-item/dropdown-item.d.ts +5 -5
  296. package/dist/types/components/dynamic-box-bundle/dynamic-box-bundle.d.ts +10 -10
  297. package/dist/types/components/icon-asset/icon-asset.d.ts +40 -40
  298. package/dist/types/components/innovator-toggle-container/innovator-toggle-container.d.ts +17 -17
  299. package/dist/types/components/list-item/list-item.d.ts +16 -16
  300. package/dist/types/components/max-width-container/max-width-container.d.ts +11 -11
  301. package/dist/types/components/my-component/my-component.d.ts +16 -16
  302. package/dist/types/components/organism-bundles/bundle-example/bundle-example.d.ts +10 -10
  303. package/dist/types/components/organism-bundles/bundle-jumbotron-example/bundle-jumbotron-example.d.ts +5 -5
  304. package/dist/types/components/organism-bundles/sequential-bundle/sequential-bundle.d.ts +12 -12
  305. package/dist/types/components/organism-bundles/sequential-bundle-example/sequential-bundle-example.d.ts +16 -16
  306. package/dist/types/components/ptc-accordion/ptc-accordion-item/ptc-accordion-item.d.ts +59 -59
  307. package/dist/types/components/ptc-accordion/ptc-accordion.d.ts +13 -13
  308. package/dist/types/components/ptc-announcement/ptc-announcement.d.ts +51 -51
  309. package/dist/types/components/ptc-back-to-top/ptc-back-to-top.d.ts +9 -0
  310. package/dist/types/components/ptc-background-video/ptc-background-video.d.ts +45 -45
  311. package/dist/types/components/ptc-bio-card/ptc-bio-card.d.ts +27 -27
  312. package/dist/types/components/ptc-breadcrumb/ptc-breadcrumb.d.ts +20 -20
  313. package/dist/types/components/ptc-button/ptc-button.d.ts +60 -60
  314. package/dist/types/components/ptc-card/ptc-card.d.ts +71 -71
  315. package/dist/types/components/ptc-card-bottom/ptc-card-bottom.d.ts +15 -15
  316. package/dist/types/components/ptc-card-content/ptc-card-content.d.ts +19 -19
  317. package/dist/types/components/ptc-card-wrapper/ptc-card-wrapper.d.ts +24 -24
  318. package/dist/types/components/ptc-checkbox/ptc-checkbox.d.ts +14 -14
  319. package/dist/types/components/ptc-collapse-list/ptc-collapse-list.d.ts +56 -56
  320. package/dist/types/components/ptc-container/ptc-container.d.ts +13 -13
  321. package/dist/types/components/ptc-date/ptc-date.d.ts +46 -46
  322. package/dist/types/components/ptc-dropdown/ptc-dropdown.d.ts +19 -19
  323. package/dist/types/components/ptc-dynamic-card/ptc-dynamic-card.d.ts +23 -23
  324. package/dist/types/components/ptc-ellipsis-dropdown/ptc-ellipsis-dropdown.d.ts +12 -12
  325. package/dist/types/components/ptc-filter-tag/ptc-filter-tag.d.ts +17 -17
  326. package/dist/types/components/ptc-hero/ptc-hero.d.ts +16 -16
  327. package/dist/types/components/ptc-hero-footer-cta/ptc-hero-footer-cta.d.ts +6 -6
  328. package/dist/types/components/ptc-icon-list/ptc-icon-list.d.ts +21 -21
  329. package/dist/types/components/ptc-icon-minimize/ptc-icon-minimize.d.ts +12 -12
  330. package/dist/types/components/ptc-img/ptc-img.d.ts +55 -55
  331. package/dist/types/components/ptc-jumbotron/ptc-jumbotron.d.ts +25 -25
  332. package/dist/types/components/ptc-link/ptc-link.d.ts +40 -40
  333. package/dist/types/components/ptc-list/ptc-list.d.ts +8 -8
  334. package/dist/types/components/ptc-lottie/ptc-lottie.d.ts +12 -12
  335. package/dist/types/components/ptc-media-card/ptc-media-card.d.ts +52 -52
  336. package/dist/types/components/ptc-minimized-footer/ptc-minimized-footer.d.ts +3 -3
  337. package/dist/types/components/ptc-minimized-header/ptc-minimized-header.d.ts +6 -6
  338. package/dist/types/components/ptc-mobile-select/ptc-mobile-select.d.ts +36 -36
  339. package/dist/types/components/ptc-modal/ptc-modal.d.ts +67 -67
  340. package/dist/types/components/ptc-nav-card/ptc-nav-card.d.ts +46 -46
  341. package/dist/types/components/ptc-overlay/ptc-overlay.d.ts +21 -21
  342. package/dist/types/components/ptc-pagenation/ptc-pagenation.d.ts +40 -40
  343. package/dist/types/components/ptc-para/ptc-para.d.ts +47 -47
  344. package/dist/types/components/ptc-picture/ptc-picture.d.ts +97 -93
  345. package/dist/types/components/ptc-previous-url/ptc-previous-url.d.ts +9 -9
  346. package/dist/types/components/ptc-pricing-block/ptc-pricing-block.d.ts +7 -7
  347. package/dist/types/components/ptc-pricing-tabs/ptc-pricing-tabs.d.ts +52 -52
  348. package/dist/types/components/ptc-product-card/ptc-product-card.d.ts +39 -0
  349. package/dist/types/components/ptc-product-category/ptc-product-category.d.ts +5 -0
  350. package/dist/types/components/ptc-product-dropdown/ptc-product-dropdown.d.ts +18 -0
  351. package/dist/types/components/ptc-product-highlight-card/ptc-product-highlight-card.d.ts +23 -0
  352. package/dist/types/components/ptc-product-list/ptc-product-list.d.ts +17 -0
  353. package/dist/types/components/ptc-product-sidebar/ptc-product-sidebar.d.ts +30 -0
  354. package/dist/types/components/ptc-quote/ptc-quote.d.ts +29 -29
  355. package/dist/types/components/ptc-readmore/ptc-readmore.d.ts +57 -57
  356. package/dist/types/components/ptc-responsive-wrapper/ptc-responsive-wrapper.d.ts +8 -8
  357. package/dist/types/components/ptc-search-field/ptc-search-field.d.ts +23 -23
  358. package/dist/types/components/ptc-shopping-cart/ptc-shopping-cart.d.ts +6 -6
  359. package/dist/types/components/ptc-skeleton/ptc-skeleton.d.ts +10 -10
  360. package/dist/types/components/ptc-social-share/ptc-social-share.d.ts +33 -33
  361. package/dist/types/components/ptc-spacer/ptc-spacer.d.ts +16 -16
  362. package/dist/types/components/ptc-span/ptc-span.d.ts +16 -16
  363. package/dist/types/components/ptc-sticky-icons/ptc-sticky-icons.d.ts +7 -7
  364. package/dist/types/components/ptc-sticky-section/ptc-sticky-section.d.ts +9 -9
  365. package/dist/types/components/ptc-svg-btn/ptc-svg-btn.d.ts +20 -20
  366. package/dist/types/components/ptc-tab-list/ptc-tab-list.d.ts +19 -19
  367. package/dist/types/components/ptc-tabs/ptc-tab.d.ts +9 -9
  368. package/dist/types/components/ptc-tabs/ptc-tabs.d.ts +10 -10
  369. package/dist/types/components/ptc-text-copy-with-background/ptc-text-copy-with-background.d.ts +34 -34
  370. package/dist/types/components/ptc-title/ptc-title.d.ts +54 -54
  371. package/dist/types/components/ptc-tooltip/ptc-tooltip.d.ts +59 -55
  372. package/dist/types/components/ptc-two-column-media/ptc-two-column-media.d.ts +9 -9
  373. package/dist/types/components/subnav/ptc-nav-link/ptc-nav-link.d.ts +21 -21
  374. package/dist/types/components/subnav/ptc-nav-slider/ptc-nav-slider.d.ts +11 -11
  375. package/dist/types/components/subnav/ptc-nav-submenu/ptc-nav-submenu.d.ts +18 -18
  376. package/dist/types/components/subnav/ptc-subnav/ptc-subnav.d.ts +7 -7
  377. package/dist/types/components/subnav/ptc-subnav-card/ptc-subnav-card.d.ts +27 -27
  378. package/dist/types/components/tab-content/tab-content.d.ts +12 -12
  379. package/dist/types/components/tab-header/tab-header.d.ts +22 -22
  380. package/dist/types/components.d.ts +359 -134
  381. package/dist/types/global.d.ts +1072 -1072
  382. package/dist/types/index.d.ts +1 -1
  383. package/dist/types/utils/component.d.ts +1 -1
  384. package/dist/types/utils/interfaces.d.ts +31 -31
  385. package/dist/types/utils/utils.d.ts +5 -5
  386. package/package.json +63 -63
  387. package/readme.md +18 -18
  388. package/dist/ptcw-design/p-1bd6ad59.entry.js +0 -1
  389. package/dist/ptcw-design/p-81bd0113.entry.js +0 -1
  390. package/dist/ptcw-design/p-df275994.entry.js +0 -1
  391. /package/dist/ptcw-design/{p-36665caa.js → p-ea875d9e.js} +0 -0
@@ -16411,360 +16411,360 @@ var PlayMode;
16411
16411
 
16412
16412
  const lottiePlayerCss = ":host{--lottie-player-toolbar-height:35px;--lottie-player-toolbar-background-color:transparent;--lottie-player-toolbar-icon-color:#999;--lottie-player-toolbar-icon-hover-color:#222;--lottie-player-toolbar-icon-active-color:#555;--lottie-player-seeker-track-color:#CCC;--lottie-player-seeker-thumb-color:rgba(0, 107, 120, 0.8);display:block;width:100%;height:100%}.main{box-sizing:border-box;display:inline-grid;grid-auto-columns:auto;grid-template-rows:auto;position:relative;height:inherit;width:inherit}.main.controls{grid-template-rows:1fr var(--lottie-player-toolbar-height)}.animation{overflow:hidden;height:calc(1fr - var(--lottie-player-toolbar-height))}.toolbar{display:grid;grid-template-columns:32px 32px 1fr 32px 32px;align-items:center;justify-items:center;background-color:var(--lottie-player-toolbar-background-color)}.toolbar button{cursor:pointer;fill:var(--lottie-player-toolbar-icon-color);display:flex;background:none;border:0;padding:0;outline:none;height:100%}.toolbar button:hover{fill:var(--lottie-player-toolbar-icon-hover-color)}.toolbar button.active{fill:var(--lottie-player-toolbar-icon-active-color)}.toolbar button.disabled svg{display:none}.toolbar a{filter:grayscale(100%);display:flex;transition:filter .5s, opacity 0.5s;opacity:0.4;height:100%;align-items:center}.toolbar a:hover{filter:none;display:flex;opacity:1}.seeker{-webkit-appearance:none;width:95%;outline:none}.seeker::-webkit-slider-runnable-track{width:100%;height:5px;cursor:pointer;background:var(--lottie-player-seeker-track-color);border-radius:3px}.seeker::-webkit-slider-thumb{height:15px;width:15px;border-radius:50%;background:var(--lottie-player-seeker-thumb-color);cursor:pointer;-webkit-appearance:none;margin-top:-5px}.seeker:focus::-webkit-slider-runnable-track{background:#999}.seeker::-moz-range-track{width:100%;height:5px;cursor:pointer;background:var(--lottie-player-seeker-track-color);border-radius:3px}.seeker::-moz-range-thumb{height:15px;width:15px;border-radius:50%;background:var(--lottie-player-seeker-thumb-color);cursor:pointer}.seeker::-ms-track{width:100%;height:5px;cursor:pointer;background:transparent;border-color:transparent;color:transparent}.seeker::-ms-fill-lower{background:var(--lottie-player-seeker-track-color);border-radius:3px}.seeker::-ms-fill-upper{background:var(--lottie-player-seeker-track-color);border-radius:3px}.seeker::-ms-thumb{border:0;height:15px;width:15px;border-radius:50%;background:var(--lottie-player-seeker-thumb-color);cursor:pointer}.seeker:focus::-ms-fill-lower{background:var(--lottie-player-seeker-track-color)}.seeker:focus::-ms-fill-upper{background:var(--lottie-player-seeker-track-color)}.error{display:flex;justify-content:center;height:100%;align-items:center}";
16413
16413
 
16414
- const LottiePlayer = class {
16415
- constructor(hostRef) {
16416
- registerInstance(this, hostRef);
16417
- this.error = createEvent(this, "error", 7);
16418
- this.frame = createEvent(this, "frame", 7);
16419
- this.complete = createEvent(this, "complete", 7);
16420
- this.looped = createEvent(this, "looped", 7);
16421
- this.ready = createEvent(this, "ready", 7);
16422
- this.loaded = createEvent(this, "loaded", 7);
16423
- this.playing = createEvent(this, "playing", 7);
16424
- this.paused = createEvent(this, "paused", 7);
16425
- this.stopped = createEvent(this, "stopped", 7);
16426
- this.freezed = createEvent(this, "freezed", 7);
16427
- /**
16428
- * Play mode.
16429
- */
16430
- this.mode = PlayMode.Normal;
16431
- /**
16432
- * Autoplay animation on load
16433
- */
16434
- this.autoplay = false;
16435
- /**
16436
- * Background color.
16437
- */
16438
- this.background = 'transparent';
16439
- /**
16440
- * Show controls.
16441
- */
16442
- this.controls = false;
16443
- /**
16444
- * Direction of animation
16445
- */
16446
- this.direction = 1;
16447
- /**
16448
- * Whether to play on mouse hover
16449
- */
16450
- this.hover = false;
16451
- /**
16452
- * Whether to loop animation
16453
- */
16454
- this.loop = false;
16455
- /**
16456
- * Renderer to use.
16457
- */
16458
- this.renderer = 'svg';
16459
- /**
16460
- * Animation speed.
16461
- */
16462
- this.speed = 1;
16463
- /**
16464
- * Player state.
16465
- */
16466
- this.currentState = PlayerState.Loading;
16467
- this.intermission = 1;
16468
- this._counter = 0;
16469
- }
16470
- componentDidLoad() {
16471
- // Add intersection observer for detecting component being out-of-view.
16472
- if ('IntersectionObserver' in window) {
16473
- this._io = new IntersectionObserver((entries) => {
16474
- if (entries[0].isIntersecting) {
16475
- if (this.currentState === PlayerState.Frozen) {
16476
- this.play();
16477
- }
16478
- }
16479
- else if (this.currentState === PlayerState.Playing) {
16480
- this.freeze();
16481
- }
16482
- });
16483
- this._io.observe(this.container);
16484
- }
16485
- // Add listener for Visibility API's change event.
16486
- if (typeof document.hidden !== 'undefined') {
16487
- document.addEventListener('visibilitychange', () => this.onVisibilityChange());
16488
- }
16489
- // Setup lottie player
16490
- if (this.src) {
16491
- this.load(this.src);
16492
- }
16493
- }
16494
- load(src) {
16495
- const options = {
16496
- container: this.container,
16497
- loop: false,
16498
- autoplay: false,
16499
- renderer: this.renderer,
16500
- rendererSettings: {
16501
- scaleMode: 'noScale',
16502
- clearCanvas: false,
16503
- progressiveLoad: true,
16504
- hideOnTransparent: true,
16505
- },
16506
- };
16507
- try {
16508
- const srcParsed = parseSrc(src);
16509
- const srcAttrib = typeof srcParsed === 'string' ? 'path' : 'animationData';
16510
- // Clear previous animation, if any
16511
- if (this._lottie) {
16512
- this._lottie.destroy();
16513
- }
16514
- // Initialize lottie player and load animation
16515
- this._lottie = lottie_svg.loadAnimation(Object.assign(Object.assign({}, options), { [srcAttrib]: srcParsed }));
16516
- }
16517
- catch (err) {
16518
- this.currentState = PlayerState.Error;
16519
- this.error.emit();
16520
- return;
16521
- }
16522
- if (this._lottie) {
16523
- // Calculate and save the current progress of the animation
16524
- this._lottie.addEventListener('enterFrame', () => {
16525
- this.seeker = (this._lottie.currentFrame / this._lottie.totalFrames) * 100;
16526
- this.frame.emit({
16527
- frame: this._lottie.currentFrame,
16528
- seeker: this.seeker
16529
- });
16530
- });
16531
- // Handle animation play complete
16532
- this._lottie.addEventListener('complete', () => {
16533
- if (this.currentState !== PlayerState.Playing) {
16534
- this.complete.emit();
16535
- return;
16536
- }
16537
- if (!this.loop || (this.count && this._counter >= this.count)) {
16538
- this.complete.emit();
16539
- return;
16540
- }
16541
- if (this.mode === PlayMode.Bounce) {
16542
- if (this.count) {
16543
- this._counter += 0.5;
16544
- }
16545
- setTimeout(() => {
16546
- this.looped.emit();
16547
- if (this.currentState === PlayerState.Playing) {
16548
- this._lottie.setDirection(this._lottie.playDirection * -1);
16549
- this._lottie.play();
16550
- }
16551
- }, this.intermission);
16552
- }
16553
- else {
16554
- if (this.count) {
16555
- this._counter += 1;
16556
- }
16557
- window.setTimeout(() => {
16558
- this.looped.emit();
16559
- if (this.currentState === PlayerState.Playing) {
16560
- this._lottie.stop();
16561
- this._lottie.play();
16562
- }
16563
- }, this.intermission);
16564
- }
16565
- });
16566
- // Handle lottie-web ready event
16567
- this._lottie.addEventListener('DOMLoaded', () => {
16568
- this.ready.emit();
16569
- });
16570
- // Handle animation data load complete
16571
- this._lottie.addEventListener('data_ready', () => {
16572
- this.loaded.emit();
16573
- });
16574
- // Set error state when animation load fail event triggers
16575
- this._lottie.addEventListener('data_failed', () => {
16576
- this.currentState = PlayerState.Error;
16577
- this.error.emit();
16578
- });
16579
- // Set handlers to auto play animation on hover if enabled
16580
- this.container.addEventListener('mouseenter', () => {
16581
- if (this.hover && this.currentState !== PlayerState.Playing) {
16582
- this.play();
16583
- }
16584
- });
16585
- this.container.addEventListener('mouseleave', () => {
16586
- if (this.hover && this.currentState === PlayerState.Playing) {
16587
- this.stop();
16588
- }
16589
- });
16590
- // Set initial playback speed and direction
16591
- this.setSpeed(this.speed);
16592
- this.setDirection(this.direction);
16593
- // Start playing if autoplay is enabled
16594
- if (this.autoplay) {
16595
- this.play();
16596
- }
16597
- }
16598
- }
16599
- /**
16600
- * Start playing animation.
16601
- */
16602
- async play() {
16603
- if (!this._lottie) {
16604
- return;
16605
- }
16606
- this._lottie.play();
16607
- this.currentState = PlayerState.Playing;
16608
- this.playing.emit();
16609
- }
16610
- /**
16611
- * Stop playing animation.
16612
- */
16613
- async pause() {
16614
- if (!this._lottie) {
16615
- return;
16616
- }
16617
- this._lottie.pause();
16618
- this.currentState = PlayerState.Paused;
16619
- this.paused.emit();
16620
- }
16621
- /**
16622
- * Stops animation play.
16623
- */
16624
- async stop() {
16625
- if (!this._lottie) {
16626
- return;
16627
- }
16628
- this._counter = 0;
16629
- this._lottie.stop();
16630
- this.currentState = PlayerState.Stopped;
16631
- this.stopped.emit();
16632
- }
16633
- /**
16634
- * Seek to a given frame.
16635
- */
16636
- async seek(value) {
16637
- if (!this._lottie) {
16638
- return;
16639
- }
16640
- // Extract frame number from either number or percentage value
16641
- const matches = value.toString().match(/^([0-9]+)(%?)$/);
16642
- if (!matches) {
16643
- return;
16644
- }
16645
- // Calculate and set the frame number
16646
- const frame = matches[2] === '%'
16647
- ? this._lottie.totalFrames * Number(matches[1]) / 100
16648
- : matches[1];
16649
- // Set seeker to new frame number
16650
- this.seeker = frame;
16651
- // Send lottie player to the new frame
16652
- if (this.currentState === PlayerState.Playing) {
16653
- this._lottie.goToAndPlay(frame, true);
16654
- }
16655
- else {
16656
- this._lottie.goToAndStop(frame, true);
16657
- this._lottie.pause();
16658
- }
16659
- }
16660
- /**
16661
- * Freeze animation play.
16662
- * This internal state pauses animation and is used to differentiate between
16663
- * user requested pauses and component instigated pauses.
16664
- */
16665
- freeze() {
16666
- if (!this._lottie) {
16667
- return;
16668
- }
16669
- this.currentState = PlayerState.Frozen;
16670
- this.freezed.emit();
16671
- }
16672
- async getLottie() {
16673
- return this._lottie;
16674
- }
16675
- /**
16676
- * Sets animation play speed
16677
- * @param value Playback speed.
16678
- */
16679
- async setSpeed(value = 1) {
16680
- if (!this._lottie) {
16681
- return;
16682
- }
16683
- this._lottie.setSpeed(value);
16684
- }
16685
- /**
16686
- * Animation play direction.
16687
- * @param value Direction values.
16688
- */
16689
- async setDirection(value) {
16690
- if (!this._lottie) {
16691
- return;
16692
- }
16693
- this._lottie.setDirection(value);
16694
- }
16695
- /**
16696
- * Sets the looping of the animation.
16697
- *
16698
- * @param value Whether to enable looping. Boolean true enables looping.
16699
- */
16700
- async setLooping(value) {
16701
- if (this._lottie) {
16702
- this.loop = value;
16703
- this._lottie.loop = value;
16704
- }
16705
- }
16706
- /**
16707
- * Toggle playing state.
16708
- */
16709
- async togglePlay() {
16710
- return this.currentState === PlayerState.Playing
16711
- ? this.pause()
16712
- : this.play();
16713
- }
16714
- /**
16715
- * Toggles animation looping.
16716
- */
16717
- async toggleLooping() {
16718
- this.setLooping(!this.loop);
16719
- }
16720
- renderButtonIcon(isPlaying) {
16721
- if (isPlaying) {
16722
- return (h("svg", { width: "24", height: "24" }, h("path", { d: "M14.016 5.016H18v13.969h-3.984V5.016zM6 18.984V5.015h3.984v13.969H6z" })));
16723
- }
16724
- return (h("svg", { width: "24", height: "24" }, h("path", { d: "M8.016 5.016L18.985 12 8.016 18.984V5.015z" })));
16725
- }
16726
- renderControls() {
16727
- const isPlaying = this.currentState === PlayerState.Playing;
16728
- const isPaused = this.currentState === PlayerState.Paused;
16729
- const isStopped = this.currentState === PlayerState.Stopped;
16730
- return (h("div", { class: 'toolbar' }, h("button", { class: {
16731
- active: isPlaying || isPaused
16732
- }, onClick: () => this.togglePlay() }, this.renderButtonIcon(isPlaying)), h("button", { class: {
16733
- active: isStopped
16734
- }, onClick: () => this.stop() }, h("svg", { width: "24", height: "24" }, h("path", { d: "M6 6h12v12H6V6z" }))), h("input", { class: "seeker", type: "range", min: "0", step: "1", max: "100", value: this.seeker, onInput: e => this.handleSeekChange(e), onMouseDown: () => { this._prevState = this.currentState; this.freeze(); }, onMouseUp: () => { this._prevState === PlayerState.Playing && this.play(); } }), h("button", { class: {
16735
- 'active': this.loop
16736
- }, onClick: () => this.toggleLooping() }, h("svg", { width: "24", height: "24" }, h("path", { d: "M17.016 17.016v-4.031h1.969v6h-12v3l-3.984-3.984 3.984-3.984v3h10.031zM6.984 6.984v4.031H5.015v-6h12v-3l3.984 3.984-3.984 3.984v-3H6.984z" }))), h("a", { href: "https://www.lottiefiles.com/", target: "_blank" }, h("svg", { width: "24", height: "24", viewBox: "0 0 320 320", "fill-rule": "nonzero" }, h("rect", { fill: "#adadad", x: ".5", y: ".5", width: "100%", height: "100%", rx: "26.73" }), h("path", { d: "M251.304 65.44a16.55 16.55 0 0 1 13.927 18.789c-1.333 9.04-9.73 15.292-18.762 13.954-15.992-2.37-39.95 22.534-66.77 73.74-34.24 65.37-66.113 96.517-99.667 94.032-9.102-.674-15.93-8.612-15.258-17.723s8.592-15.96 17.695-15.286c16.57 1.227 40.908-24.737 67.97-76.4 34.46-65.79 66.764-96.157 100.866-91.105z", fill: "#fff" })))));
16737
- }
16738
- render() {
16739
- return (h("div", { class: {
16740
- main: true,
16741
- controls: this.controls
16742
- } }, h("div", { class: "animation", style: {
16743
- background: this.background
16744
- }, ref: ref => this.container = ref }, this.currentState === PlayerState.Error ? h("div", { class: "error" }, "\u26A0\uFE0F") : undefined), this.controls ? this.renderControls() : undefined));
16745
- }
16746
- /**
16747
- * Handle visibility change events.
16748
- */
16749
- onVisibilityChange() {
16750
- if (document.hidden === true && this.currentState === PlayerState.Playing) {
16751
- this.freeze();
16752
- }
16753
- else if (this.currentState === PlayerState.Frozen) {
16754
- this.play();
16755
- }
16756
- }
16757
- /**
16758
- * Handles click and drag actions on the progress track.
16759
- */
16760
- handleSeekChange(e) {
16761
- if (!this._lottie || isNaN(e.target.value)) {
16762
- return;
16763
- }
16764
- const frame = ((e.target.value / 100) * this._lottie.totalFrames);
16765
- this.seek(frame);
16766
- }
16767
- };
16414
+ const LottiePlayer = class {
16415
+ constructor(hostRef) {
16416
+ registerInstance(this, hostRef);
16417
+ this.error = createEvent(this, "error", 7);
16418
+ this.frame = createEvent(this, "frame", 7);
16419
+ this.complete = createEvent(this, "complete", 7);
16420
+ this.looped = createEvent(this, "looped", 7);
16421
+ this.ready = createEvent(this, "ready", 7);
16422
+ this.loaded = createEvent(this, "loaded", 7);
16423
+ this.playing = createEvent(this, "playing", 7);
16424
+ this.paused = createEvent(this, "paused", 7);
16425
+ this.stopped = createEvent(this, "stopped", 7);
16426
+ this.freezed = createEvent(this, "freezed", 7);
16427
+ /**
16428
+ * Play mode.
16429
+ */
16430
+ this.mode = PlayMode.Normal;
16431
+ /**
16432
+ * Autoplay animation on load
16433
+ */
16434
+ this.autoplay = false;
16435
+ /**
16436
+ * Background color.
16437
+ */
16438
+ this.background = 'transparent';
16439
+ /**
16440
+ * Show controls.
16441
+ */
16442
+ this.controls = false;
16443
+ /**
16444
+ * Direction of animation
16445
+ */
16446
+ this.direction = 1;
16447
+ /**
16448
+ * Whether to play on mouse hover
16449
+ */
16450
+ this.hover = false;
16451
+ /**
16452
+ * Whether to loop animation
16453
+ */
16454
+ this.loop = false;
16455
+ /**
16456
+ * Renderer to use.
16457
+ */
16458
+ this.renderer = 'svg';
16459
+ /**
16460
+ * Animation speed.
16461
+ */
16462
+ this.speed = 1;
16463
+ /**
16464
+ * Player state.
16465
+ */
16466
+ this.currentState = PlayerState.Loading;
16467
+ this.intermission = 1;
16468
+ this._counter = 0;
16469
+ }
16470
+ componentDidLoad() {
16471
+ // Add intersection observer for detecting component being out-of-view.
16472
+ if ('IntersectionObserver' in window) {
16473
+ this._io = new IntersectionObserver((entries) => {
16474
+ if (entries[0].isIntersecting) {
16475
+ if (this.currentState === PlayerState.Frozen) {
16476
+ this.play();
16477
+ }
16478
+ }
16479
+ else if (this.currentState === PlayerState.Playing) {
16480
+ this.freeze();
16481
+ }
16482
+ });
16483
+ this._io.observe(this.container);
16484
+ }
16485
+ // Add listener for Visibility API's change event.
16486
+ if (typeof document.hidden !== 'undefined') {
16487
+ document.addEventListener('visibilitychange', () => this.onVisibilityChange());
16488
+ }
16489
+ // Setup lottie player
16490
+ if (this.src) {
16491
+ this.load(this.src);
16492
+ }
16493
+ }
16494
+ load(src) {
16495
+ const options = {
16496
+ container: this.container,
16497
+ loop: false,
16498
+ autoplay: false,
16499
+ renderer: this.renderer,
16500
+ rendererSettings: {
16501
+ scaleMode: 'noScale',
16502
+ clearCanvas: false,
16503
+ progressiveLoad: true,
16504
+ hideOnTransparent: true,
16505
+ },
16506
+ };
16507
+ try {
16508
+ const srcParsed = parseSrc(src);
16509
+ const srcAttrib = typeof srcParsed === 'string' ? 'path' : 'animationData';
16510
+ // Clear previous animation, if any
16511
+ if (this._lottie) {
16512
+ this._lottie.destroy();
16513
+ }
16514
+ // Initialize lottie player and load animation
16515
+ this._lottie = lottie_svg.loadAnimation(Object.assign(Object.assign({}, options), { [srcAttrib]: srcParsed }));
16516
+ }
16517
+ catch (err) {
16518
+ this.currentState = PlayerState.Error;
16519
+ this.error.emit();
16520
+ return;
16521
+ }
16522
+ if (this._lottie) {
16523
+ // Calculate and save the current progress of the animation
16524
+ this._lottie.addEventListener('enterFrame', () => {
16525
+ this.seeker = (this._lottie.currentFrame / this._lottie.totalFrames) * 100;
16526
+ this.frame.emit({
16527
+ frame: this._lottie.currentFrame,
16528
+ seeker: this.seeker
16529
+ });
16530
+ });
16531
+ // Handle animation play complete
16532
+ this._lottie.addEventListener('complete', () => {
16533
+ if (this.currentState !== PlayerState.Playing) {
16534
+ this.complete.emit();
16535
+ return;
16536
+ }
16537
+ if (!this.loop || (this.count && this._counter >= this.count)) {
16538
+ this.complete.emit();
16539
+ return;
16540
+ }
16541
+ if (this.mode === PlayMode.Bounce) {
16542
+ if (this.count) {
16543
+ this._counter += 0.5;
16544
+ }
16545
+ setTimeout(() => {
16546
+ this.looped.emit();
16547
+ if (this.currentState === PlayerState.Playing) {
16548
+ this._lottie.setDirection(this._lottie.playDirection * -1);
16549
+ this._lottie.play();
16550
+ }
16551
+ }, this.intermission);
16552
+ }
16553
+ else {
16554
+ if (this.count) {
16555
+ this._counter += 1;
16556
+ }
16557
+ window.setTimeout(() => {
16558
+ this.looped.emit();
16559
+ if (this.currentState === PlayerState.Playing) {
16560
+ this._lottie.stop();
16561
+ this._lottie.play();
16562
+ }
16563
+ }, this.intermission);
16564
+ }
16565
+ });
16566
+ // Handle lottie-web ready event
16567
+ this._lottie.addEventListener('DOMLoaded', () => {
16568
+ this.ready.emit();
16569
+ });
16570
+ // Handle animation data load complete
16571
+ this._lottie.addEventListener('data_ready', () => {
16572
+ this.loaded.emit();
16573
+ });
16574
+ // Set error state when animation load fail event triggers
16575
+ this._lottie.addEventListener('data_failed', () => {
16576
+ this.currentState = PlayerState.Error;
16577
+ this.error.emit();
16578
+ });
16579
+ // Set handlers to auto play animation on hover if enabled
16580
+ this.container.addEventListener('mouseenter', () => {
16581
+ if (this.hover && this.currentState !== PlayerState.Playing) {
16582
+ this.play();
16583
+ }
16584
+ });
16585
+ this.container.addEventListener('mouseleave', () => {
16586
+ if (this.hover && this.currentState === PlayerState.Playing) {
16587
+ this.stop();
16588
+ }
16589
+ });
16590
+ // Set initial playback speed and direction
16591
+ this.setSpeed(this.speed);
16592
+ this.setDirection(this.direction);
16593
+ // Start playing if autoplay is enabled
16594
+ if (this.autoplay) {
16595
+ this.play();
16596
+ }
16597
+ }
16598
+ }
16599
+ /**
16600
+ * Start playing animation.
16601
+ */
16602
+ async play() {
16603
+ if (!this._lottie) {
16604
+ return;
16605
+ }
16606
+ this._lottie.play();
16607
+ this.currentState = PlayerState.Playing;
16608
+ this.playing.emit();
16609
+ }
16610
+ /**
16611
+ * Stop playing animation.
16612
+ */
16613
+ async pause() {
16614
+ if (!this._lottie) {
16615
+ return;
16616
+ }
16617
+ this._lottie.pause();
16618
+ this.currentState = PlayerState.Paused;
16619
+ this.paused.emit();
16620
+ }
16621
+ /**
16622
+ * Stops animation play.
16623
+ */
16624
+ async stop() {
16625
+ if (!this._lottie) {
16626
+ return;
16627
+ }
16628
+ this._counter = 0;
16629
+ this._lottie.stop();
16630
+ this.currentState = PlayerState.Stopped;
16631
+ this.stopped.emit();
16632
+ }
16633
+ /**
16634
+ * Seek to a given frame.
16635
+ */
16636
+ async seek(value) {
16637
+ if (!this._lottie) {
16638
+ return;
16639
+ }
16640
+ // Extract frame number from either number or percentage value
16641
+ const matches = value.toString().match(/^([0-9]+)(%?)$/);
16642
+ if (!matches) {
16643
+ return;
16644
+ }
16645
+ // Calculate and set the frame number
16646
+ const frame = matches[2] === '%'
16647
+ ? this._lottie.totalFrames * Number(matches[1]) / 100
16648
+ : matches[1];
16649
+ // Set seeker to new frame number
16650
+ this.seeker = frame;
16651
+ // Send lottie player to the new frame
16652
+ if (this.currentState === PlayerState.Playing) {
16653
+ this._lottie.goToAndPlay(frame, true);
16654
+ }
16655
+ else {
16656
+ this._lottie.goToAndStop(frame, true);
16657
+ this._lottie.pause();
16658
+ }
16659
+ }
16660
+ /**
16661
+ * Freeze animation play.
16662
+ * This internal state pauses animation and is used to differentiate between
16663
+ * user requested pauses and component instigated pauses.
16664
+ */
16665
+ freeze() {
16666
+ if (!this._lottie) {
16667
+ return;
16668
+ }
16669
+ this.currentState = PlayerState.Frozen;
16670
+ this.freezed.emit();
16671
+ }
16672
+ async getLottie() {
16673
+ return this._lottie;
16674
+ }
16675
+ /**
16676
+ * Sets animation play speed
16677
+ * @param value Playback speed.
16678
+ */
16679
+ async setSpeed(value = 1) {
16680
+ if (!this._lottie) {
16681
+ return;
16682
+ }
16683
+ this._lottie.setSpeed(value);
16684
+ }
16685
+ /**
16686
+ * Animation play direction.
16687
+ * @param value Direction values.
16688
+ */
16689
+ async setDirection(value) {
16690
+ if (!this._lottie) {
16691
+ return;
16692
+ }
16693
+ this._lottie.setDirection(value);
16694
+ }
16695
+ /**
16696
+ * Sets the looping of the animation.
16697
+ *
16698
+ * @param value Whether to enable looping. Boolean true enables looping.
16699
+ */
16700
+ async setLooping(value) {
16701
+ if (this._lottie) {
16702
+ this.loop = value;
16703
+ this._lottie.loop = value;
16704
+ }
16705
+ }
16706
+ /**
16707
+ * Toggle playing state.
16708
+ */
16709
+ async togglePlay() {
16710
+ return this.currentState === PlayerState.Playing
16711
+ ? this.pause()
16712
+ : this.play();
16713
+ }
16714
+ /**
16715
+ * Toggles animation looping.
16716
+ */
16717
+ async toggleLooping() {
16718
+ this.setLooping(!this.loop);
16719
+ }
16720
+ renderButtonIcon(isPlaying) {
16721
+ if (isPlaying) {
16722
+ return (h("svg", { width: "24", height: "24" }, h("path", { d: "M14.016 5.016H18v13.969h-3.984V5.016zM6 18.984V5.015h3.984v13.969H6z" })));
16723
+ }
16724
+ return (h("svg", { width: "24", height: "24" }, h("path", { d: "M8.016 5.016L18.985 12 8.016 18.984V5.015z" })));
16725
+ }
16726
+ renderControls() {
16727
+ const isPlaying = this.currentState === PlayerState.Playing;
16728
+ const isPaused = this.currentState === PlayerState.Paused;
16729
+ const isStopped = this.currentState === PlayerState.Stopped;
16730
+ return (h("div", { class: 'toolbar' }, h("button", { class: {
16731
+ active: isPlaying || isPaused
16732
+ }, onClick: () => this.togglePlay() }, this.renderButtonIcon(isPlaying)), h("button", { class: {
16733
+ active: isStopped
16734
+ }, onClick: () => this.stop() }, h("svg", { width: "24", height: "24" }, h("path", { d: "M6 6h12v12H6V6z" }))), h("input", { class: "seeker", type: "range", min: "0", step: "1", max: "100", value: this.seeker, onInput: e => this.handleSeekChange(e), onMouseDown: () => { this._prevState = this.currentState; this.freeze(); }, onMouseUp: () => { this._prevState === PlayerState.Playing && this.play(); } }), h("button", { class: {
16735
+ 'active': this.loop
16736
+ }, onClick: () => this.toggleLooping() }, h("svg", { width: "24", height: "24" }, h("path", { d: "M17.016 17.016v-4.031h1.969v6h-12v3l-3.984-3.984 3.984-3.984v3h10.031zM6.984 6.984v4.031H5.015v-6h12v-3l3.984 3.984-3.984 3.984v-3H6.984z" }))), h("a", { href: "https://www.lottiefiles.com/", target: "_blank" }, h("svg", { width: "24", height: "24", viewBox: "0 0 320 320", "fill-rule": "nonzero" }, h("rect", { fill: "#adadad", x: ".5", y: ".5", width: "100%", height: "100%", rx: "26.73" }), h("path", { d: "M251.304 65.44a16.55 16.55 0 0 1 13.927 18.789c-1.333 9.04-9.73 15.292-18.762 13.954-15.992-2.37-39.95 22.534-66.77 73.74-34.24 65.37-66.113 96.517-99.667 94.032-9.102-.674-15.93-8.612-15.258-17.723s8.592-15.96 17.695-15.286c16.57 1.227 40.908-24.737 67.97-76.4 34.46-65.79 66.764-96.157 100.866-91.105z", fill: "#fff" })))));
16737
+ }
16738
+ render() {
16739
+ return (h("div", { class: {
16740
+ main: true,
16741
+ controls: this.controls
16742
+ } }, h("div", { class: "animation", style: {
16743
+ background: this.background
16744
+ }, ref: ref => this.container = ref }, this.currentState === PlayerState.Error ? h("div", { class: "error" }, "\u26A0\uFE0F") : undefined), this.controls ? this.renderControls() : undefined));
16745
+ }
16746
+ /**
16747
+ * Handle visibility change events.
16748
+ */
16749
+ onVisibilityChange() {
16750
+ if (document.hidden === true && this.currentState === PlayerState.Playing) {
16751
+ this.freeze();
16752
+ }
16753
+ else if (this.currentState === PlayerState.Frozen) {
16754
+ this.play();
16755
+ }
16756
+ }
16757
+ /**
16758
+ * Handles click and drag actions on the progress track.
16759
+ */
16760
+ handleSeekChange(e) {
16761
+ if (!this._lottie || isNaN(e.target.value)) {
16762
+ return;
16763
+ }
16764
+ const frame = ((e.target.value / 100) * this._lottie.totalFrames);
16765
+ this.seek(frame);
16766
+ }
16767
+ };
16768
16768
  LottiePlayer.style = lottiePlayerCss;
16769
16769
 
16770
16770
  export { LottiePlayer as lottie_player };