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