@ptcwebops/ptcw-design 0.9.2 → 0.9.4
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.
- package/LICENSE +21 -21
- package/dist/cjs/bundle-example.cjs.entry.js +15 -15
- package/dist/cjs/dropdown-item.cjs.entry.js +10 -10
- package/dist/cjs/icon-asset.cjs.entry.js +42 -42
- package/dist/cjs/list-item.cjs.entry.js +19 -19
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/lottie-player.cjs.entry.js +354 -354
- package/dist/cjs/max-width-container.cjs.entry.js +29 -29
- package/dist/cjs/my-component.cjs.entry.js +15 -15
- package/dist/cjs/ptc-accordion-item.cjs.entry.js +83 -83
- package/dist/cjs/ptc-accordion.cjs.entry.js +35 -35
- package/dist/cjs/ptc-announcement.cjs.entry.js +50 -50
- package/dist/cjs/ptc-background-video.cjs.entry.js +16 -16
- package/dist/cjs/ptc-breadcrumb.cjs.entry.js +12 -12
- package/dist/cjs/ptc-button.cjs.entry.js +35 -35
- package/dist/cjs/ptc-card-bottom_3.cjs.entry.js +130 -130
- package/dist/cjs/ptc-card-content.cjs.entry.js +51 -51
- package/dist/cjs/ptc-card_6.cjs.entry.js +441 -441
- package/dist/cjs/ptc-checkbox.cjs.entry.js +33 -33
- package/dist/cjs/ptc-collapse-list.cjs.entry.js +346 -346
- package/dist/cjs/ptc-container.cjs.entry.js +32 -32
- package/dist/cjs/ptc-dropdown.cjs.entry.js +64 -64
- package/dist/cjs/ptc-dynamic-card.cjs.entry.js +46 -46
- package/dist/cjs/ptc-ellipsis-dropdown.cjs.entry.js +38 -38
- package/dist/cjs/ptc-filter-tag.cjs.entry.js +57 -57
- package/dist/cjs/ptc-hero-footer-cta.cjs.entry.js +11 -11
- package/dist/cjs/ptc-hero.cjs.entry.js +18 -18
- package/dist/cjs/ptc-icon-list.cjs.entry.js +21 -21
- package/dist/cjs/ptc-icon-minimize.cjs.entry.js +36 -36
- package/dist/cjs/ptc-link.cjs.entry.js +31 -29
- package/dist/cjs/ptc-list.cjs.entry.js +49 -49
- package/dist/cjs/ptc-lottie.cjs.entry.js +10 -10
- package/dist/cjs/ptc-media-card.cjs.entry.js +24 -24
- package/dist/cjs/ptc-minimized-footer.cjs.entry.js +8 -8
- package/dist/cjs/ptc-minimized-header.cjs.entry.js +11 -11
- package/dist/cjs/ptc-mobile-select.cjs.entry.js +53 -53
- package/dist/cjs/ptc-modal.cjs.entry.js +143 -143
- package/dist/cjs/ptc-nav-card.cjs.entry.js +49 -0
- package/dist/cjs/ptc-overlay.cjs.entry.js +23 -23
- package/dist/cjs/ptc-pagenation.cjs.entry.js +105 -105
- package/dist/cjs/ptc-previous-url.cjs.entry.js +10 -10
- package/dist/cjs/ptc-pricing-block.cjs.entry.js +20 -20
- package/dist/cjs/ptc-pricing-tabs.cjs.entry.js +77 -0
- package/dist/cjs/ptc-quote.cjs.entry.js +23 -23
- package/dist/cjs/ptc-readmore.cjs.entry.js +63 -0
- package/dist/cjs/ptc-responsive-wrapper.cjs.entry.js +54 -54
- package/dist/cjs/ptc-search-field.cjs.entry.js +42 -42
- package/dist/cjs/ptc-shopping-cart.cjs.entry.js +50 -50
- package/dist/cjs/ptc-social-share.cjs.entry.js +59 -59
- package/dist/cjs/ptc-span.cjs.entry.js +18 -18
- package/dist/cjs/ptc-sticky-icons.cjs.entry.js +32 -32
- package/dist/cjs/ptc-svg-btn.cjs.entry.js +73 -73
- package/dist/cjs/ptc-tab-list.cjs.entry.js +125 -125
- package/dist/cjs/ptc-tab.cjs.entry.js +20 -20
- package/dist/cjs/ptc-tabs.cjs.entry.js +47 -47
- package/dist/cjs/ptc-text-copy-with-background.cjs.entry.js +27 -27
- package/dist/cjs/ptc-title.cjs.entry.js +67 -67
- package/dist/cjs/ptc-tooltip.cjs.entry.js +68 -0
- package/dist/cjs/ptc-two-column-media.cjs.entry.js +15 -15
- package/dist/cjs/ptcw-design.cjs.js +1 -1
- package/dist/cjs/tab-content.cjs.entry.js +27 -27
- package/dist/cjs/tab-header.cjs.entry.js +45 -45
- package/dist/cjs/{utils-9eb22041.js → utils-416c94fe.js} +90 -90
- package/dist/collection/collection-manifest.json +2 -1
- package/dist/collection/components/bundle-example/bundle-example.css +5 -5
- package/dist/collection/components/bundle-example/bundle-example.js +32 -32
- package/dist/collection/components/dropdown-item/dropdown-item.js +61 -61
- package/dist/collection/components/icon-asset/icon-asset.css +4 -4
- package/dist/collection/components/icon-asset/icon-asset.js +199 -199
- package/dist/collection/components/icon-asset/media/brands.svg +1381 -1381
- package/dist/collection/components/icon-asset/media/designer.svg +387 -387
- package/dist/collection/components/icon-asset/media/regular.svg +463 -463
- package/dist/collection/components/icon-asset/media/solid.svg +3013 -3013
- package/dist/collection/components/icon-asset/media/svg-with-js.min.css +4 -4
- package/dist/collection/components/list-item/list-item.js +107 -107
- package/dist/collection/components/max-width-container/max-width-container.css +7 -7
- package/dist/collection/components/max-width-container/max-width-container.js +80 -80
- package/dist/collection/components/my-component/my-component.css +3 -3
- package/dist/collection/components/my-component/my-component.js +82 -82
- package/dist/collection/components/ptc-accordion/ptc-accordion-item/ptc-accordion-item.js +287 -287
- package/dist/collection/components/ptc-accordion/ptc-accordion.js +78 -78
- package/dist/collection/components/ptc-announcement/ptc-announcement.js +238 -238
- package/dist/collection/components/ptc-background-video/ptc-background-video.js +102 -102
- package/dist/collection/components/ptc-breadcrumb/ptc-breadcrumb.js +22 -22
- package/dist/collection/components/ptc-button/ptc-button.js +283 -283
- package/dist/collection/components/ptc-card/ptc-card.js +344 -344
- package/dist/collection/components/ptc-card-bottom/ptc-card-bottom.js +116 -116
- package/dist/collection/components/ptc-card-content/ptc-card-content.css +27 -0
- package/dist/collection/components/ptc-card-content/ptc-card-content.js +187 -187
- package/dist/collection/components/ptc-card-wrapper/ptc-card-wrapper.js +197 -197
- package/dist/collection/components/ptc-checkbox/ptc-checkbox.js +118 -118
- package/dist/collection/components/ptc-collapse-list/ptc-collapse-list.js +586 -586
- package/dist/collection/components/ptc-container/ptc-container.js +120 -120
- package/dist/collection/components/ptc-date/ptc-date.js +190 -190
- package/dist/collection/components/ptc-dropdown/ptc-dropdown.js +162 -162
- package/dist/collection/components/ptc-dynamic-card/media/nav-active-dotslick.svg +15 -15
- package/dist/collection/components/ptc-dynamic-card/ptc-dynamic-card.js +182 -182
- package/dist/collection/components/ptc-ellipsis-dropdown/ptc-ellipsis-dropdown.js +122 -122
- package/dist/collection/components/ptc-filter-tag/ptc-filter-tag.js +113 -113
- package/dist/collection/components/ptc-hero/ptc-hero.js +86 -86
- package/dist/collection/components/ptc-hero-footer-cta/ptc-hero-footer-cta.js +78 -78
- package/dist/collection/components/ptc-icon-list/ptc-icon-list.js +127 -127
- package/dist/collection/components/ptc-icon-minimize/ptc-icon-minimize.js +87 -87
- package/dist/collection/components/ptc-img/ptc-img.js +293 -293
- package/dist/collection/components/ptc-link/ptc-link.css +28 -0
- package/dist/collection/components/ptc-link/ptc-link.js +222 -203
- package/dist/collection/components/ptc-list/ptc-list.js +99 -99
- package/dist/collection/components/ptc-lottie/ptc-lottie.css +5 -5
- package/dist/collection/components/ptc-lottie/ptc-lottie.js +62 -62
- package/dist/collection/components/ptc-media-card/ptc-media-card.js +216 -216
- package/dist/collection/components/ptc-minimized-footer/ptc-minimized-footer.js +18 -18
- package/dist/collection/components/ptc-minimized-header/ptc-minimized-header.js +81 -81
- package/dist/collection/components/ptc-mobile-select/ptc-mobile-select.js +190 -190
- package/dist/collection/components/ptc-modal/ptc-modal.js +347 -347
- package/dist/collection/components/ptc-nav-card/ptc-nav-card.css +108 -0
- package/dist/collection/components/ptc-nav-card/ptc-nav-card.js +208 -0
- package/dist/collection/components/ptc-overlay/ptc-overlay.js +131 -131
- package/dist/collection/components/ptc-pagenation/ptc-pagenation.js +322 -322
- package/dist/collection/components/ptc-para/ptc-para.js +224 -224
- package/dist/collection/components/ptc-picture/ptc-picture.js +450 -450
- package/dist/collection/components/ptc-previous-url/ptc-previous-url.js +60 -60
- package/dist/collection/components/ptc-pricing-block/ptc-pricing-block.js +70 -70
- package/dist/collection/components/ptc-pricing-tabs/ptc-pricing-tabs.css +775 -0
- package/dist/collection/components/ptc-pricing-tabs/ptc-pricing-tabs.js +148 -0
- package/dist/collection/components/ptc-quote/ptc-quote.js +144 -144
- package/dist/collection/components/ptc-readmore/ptc-readmore.js +277 -277
- package/dist/collection/components/ptc-responsive-wrapper/ptc-responsive-wrapper.css +3 -3
- package/dist/collection/components/ptc-responsive-wrapper/ptc-responsive-wrapper.js +65 -65
- package/dist/collection/components/ptc-search-field/ptc-search-field.js +140 -140
- package/dist/collection/components/ptc-shopping-cart/ptc-shopping-cart.js +97 -97
- package/dist/collection/components/ptc-skeleton/ptc-skeleton.js +146 -146
- package/dist/collection/components/ptc-social-share/ptc-social-share.js +239 -239
- package/dist/collection/components/ptc-spacer/ptc-spacer.css +332 -332
- package/dist/collection/components/ptc-spacer/ptc-spacer.js +97 -97
- package/dist/collection/components/ptc-span/ptc-span.js +87 -87
- package/dist/collection/components/ptc-sticky-icons/ptc-sticky-icons.js +51 -51
- package/dist/collection/components/ptc-svg-btn/ptc-svg-btn.js +72 -72
- package/dist/collection/components/ptc-tab-list/ptc-tab-list.js +177 -177
- package/dist/collection/components/ptc-tabs/ptc-tab.js +121 -121
- package/dist/collection/components/ptc-tabs/ptc-tabs.js +104 -104
- package/dist/collection/components/ptc-text-copy-with-background/ptc-text-copy-with-background.js +166 -166
- package/dist/collection/components/ptc-title/ptc-title.js +310 -310
- package/dist/collection/components/ptc-tooltip/ptc-tooltip.js +227 -228
- package/dist/collection/components/ptc-two-column-media/ptc-two-column-media.js +48 -48
- package/dist/collection/components/tab-content/tab-content.js +84 -84
- package/dist/collection/components/tab-header/tab-header.js +136 -136
- package/dist/collection/index.js +1 -1
- package/dist/collection/media/svg-imgs/Back-arrow.svg +11 -11
- package/dist/collection/media/svg-imgs/close.svg +10 -10
- package/dist/collection/media/svg-imgs/ptc-shopping-cart-black.svg +3 -3
- package/dist/collection/media/svg-imgs/ptc-shopping-cart-white.svg +3 -3
- package/dist/collection/media/svg-imgs/slider-arrow-left.svg +18 -18
- package/dist/collection/media/svg-imgs/slider-arrow-right.svg +18 -18
- package/dist/collection/media/svg-imgs/union.svg +3 -3
- package/dist/collection/utils/component.js +3 -3
- package/dist/collection/utils/interfaces.js +11 -11
- package/dist/collection/utils/utils.js +92 -92
- package/dist/custom-elements/index.d.ts +10 -4
- package/dist/custom-elements/index.js +3687 -3596
- package/dist/esm/bundle-example.entry.js +15 -15
- package/dist/esm/dropdown-item.entry.js +10 -10
- package/dist/esm/icon-asset.entry.js +42 -42
- package/dist/esm/list-item.entry.js +19 -19
- package/dist/esm/loader.js +1 -1
- package/dist/esm/lottie-player.entry.js +354 -354
- package/dist/esm/max-width-container.entry.js +29 -29
- package/dist/esm/my-component.entry.js +15 -15
- package/dist/esm/polyfills/core-js.js +0 -0
- package/dist/esm/polyfills/dom.js +0 -0
- package/dist/esm/polyfills/es5-html-element.js +0 -0
- package/dist/esm/polyfills/index.js +0 -0
- package/dist/esm/polyfills/system.js +0 -0
- package/dist/esm/ptc-accordion-item.entry.js +83 -83
- package/dist/esm/ptc-accordion.entry.js +35 -35
- package/dist/esm/ptc-announcement.entry.js +50 -50
- package/dist/esm/ptc-background-video.entry.js +16 -16
- package/dist/esm/ptc-breadcrumb.entry.js +12 -12
- package/dist/esm/ptc-button.entry.js +35 -35
- package/dist/esm/ptc-card-bottom_3.entry.js +130 -130
- package/dist/esm/ptc-card-content.entry.js +51 -51
- package/dist/esm/ptc-card_6.entry.js +441 -441
- package/dist/esm/ptc-checkbox.entry.js +33 -33
- package/dist/esm/ptc-collapse-list.entry.js +346 -346
- package/dist/esm/ptc-container.entry.js +32 -32
- package/dist/esm/ptc-dropdown.entry.js +64 -64
- package/dist/esm/ptc-dynamic-card.entry.js +46 -46
- package/dist/esm/ptc-ellipsis-dropdown.entry.js +38 -38
- package/dist/esm/ptc-filter-tag.entry.js +57 -57
- package/dist/esm/ptc-hero-footer-cta.entry.js +11 -11
- package/dist/esm/ptc-hero.entry.js +18 -18
- package/dist/esm/ptc-icon-list.entry.js +21 -21
- package/dist/esm/ptc-icon-minimize.entry.js +36 -36
- package/dist/esm/ptc-link.entry.js +31 -29
- package/dist/esm/ptc-list.entry.js +49 -49
- package/dist/esm/ptc-lottie.entry.js +10 -10
- package/dist/esm/ptc-media-card.entry.js +24 -24
- package/dist/esm/ptc-minimized-footer.entry.js +8 -8
- package/dist/esm/ptc-minimized-header.entry.js +11 -11
- package/dist/esm/ptc-mobile-select.entry.js +53 -53
- package/dist/esm/ptc-modal.entry.js +143 -143
- package/dist/esm/ptc-nav-card.entry.js +45 -0
- package/dist/esm/ptc-overlay.entry.js +23 -23
- package/dist/esm/ptc-pagenation.entry.js +105 -105
- package/dist/esm/ptc-previous-url.entry.js +10 -10
- package/dist/esm/ptc-pricing-block.entry.js +20 -20
- package/dist/esm/ptc-pricing-tabs.entry.js +73 -0
- package/dist/esm/ptc-quote.entry.js +23 -23
- package/dist/esm/ptc-readmore.entry.js +59 -0
- package/dist/esm/ptc-responsive-wrapper.entry.js +54 -54
- package/dist/esm/ptc-search-field.entry.js +42 -42
- package/dist/esm/ptc-shopping-cart.entry.js +50 -50
- package/dist/esm/ptc-social-share.entry.js +59 -59
- package/dist/esm/ptc-span.entry.js +18 -18
- package/dist/esm/ptc-sticky-icons.entry.js +32 -32
- package/dist/esm/ptc-svg-btn.entry.js +73 -73
- package/dist/esm/ptc-tab-list.entry.js +125 -125
- package/dist/esm/ptc-tab.entry.js +20 -20
- package/dist/esm/ptc-tabs.entry.js +47 -47
- package/dist/esm/ptc-text-copy-with-background.entry.js +27 -27
- package/dist/esm/ptc-title.entry.js +67 -67
- package/dist/esm/ptc-tooltip.entry.js +64 -0
- package/dist/esm/ptc-two-column-media.entry.js +15 -15
- package/dist/esm/ptcw-design.js +1 -1
- package/dist/esm/tab-content.entry.js +27 -27
- package/dist/esm/tab-header.entry.js +45 -45
- package/dist/esm/{utils-38decc43.js → utils-f937097d.js} +90 -90
- package/dist/ptcw-design/media/brands.svg +1381 -1381
- package/dist/ptcw-design/media/designer.svg +387 -387
- package/dist/ptcw-design/media/nav-active-dotslick.svg +15 -15
- package/dist/ptcw-design/media/regular.svg +463 -463
- package/dist/ptcw-design/media/solid.svg +3013 -3013
- package/dist/ptcw-design/media/svg-with-js.min.css +4 -4
- package/dist/ptcw-design/p-0d8841a4.entry.js +1 -0
- package/dist/ptcw-design/p-13e70d43.entry.js +1 -0
- package/dist/ptcw-design/p-166d584d.entry.js +1 -0
- package/dist/ptcw-design/p-195dece6.entry.js +1 -0
- package/dist/ptcw-design/{p-8bcb2fab.entry.js → p-32b81dde.entry.js} +1 -1
- package/dist/ptcw-design/{p-b48a3e6f.entry.js → p-45c0076d.entry.js} +1 -1
- package/dist/ptcw-design/{p-fa17a02e.entry.js → p-8d210676.entry.js} +1 -1
- package/dist/ptcw-design/p-b9f12c38.entry.js +1 -0
- package/dist/ptcw-design/{p-9962aa65.entry.js → p-c460476d.entry.js} +1 -1
- package/dist/ptcw-design/p-dd1576c8.entry.js +1 -0
- package/dist/ptcw-design/ptcw-design.css +1 -1
- package/dist/ptcw-design/ptcw-design.esm.js +1 -1
- package/dist/types/components/bundle-example/bundle-example.d.ts +5 -5
- package/dist/types/components/dropdown-item/dropdown-item.d.ts +5 -5
- package/dist/types/components/icon-asset/icon-asset.d.ts +40 -40
- package/dist/types/components/list-item/list-item.d.ts +8 -8
- package/dist/types/components/max-width-container/max-width-container.d.ts +9 -9
- package/dist/types/components/my-component/my-component.d.ts +16 -16
- package/dist/types/components/ptc-accordion/ptc-accordion-item/ptc-accordion-item.d.ts +59 -59
- package/dist/types/components/ptc-accordion/ptc-accordion.d.ts +13 -13
- package/dist/types/components/ptc-announcement/ptc-announcement.d.ts +51 -51
- package/dist/types/components/ptc-background-video/ptc-background-video.d.ts +26 -26
- package/dist/types/components/ptc-breadcrumb/ptc-breadcrumb.d.ts +4 -4
- package/dist/types/components/ptc-button/ptc-button.d.ts +60 -60
- package/dist/types/components/ptc-card/ptc-card.d.ts +67 -67
- package/dist/types/components/ptc-card-bottom/ptc-card-bottom.d.ts +15 -15
- package/dist/types/components/ptc-card-content/ptc-card-content.d.ts +18 -18
- package/dist/types/components/ptc-card-wrapper/ptc-card-wrapper.d.ts +23 -23
- package/dist/types/components/ptc-checkbox/ptc-checkbox.d.ts +11 -11
- package/dist/types/components/ptc-collapse-list/ptc-collapse-list.d.ts +56 -56
- package/dist/types/components/ptc-container/ptc-container.d.ts +12 -12
- package/dist/types/components/ptc-date/ptc-date.d.ts +41 -41
- package/dist/types/components/ptc-dropdown/ptc-dropdown.d.ts +19 -19
- package/dist/types/components/ptc-dynamic-card/ptc-dynamic-card.d.ts +24 -24
- package/dist/types/components/ptc-ellipsis-dropdown/ptc-ellipsis-dropdown.d.ts +12 -12
- package/dist/types/components/ptc-filter-tag/ptc-filter-tag.d.ts +17 -17
- package/dist/types/components/ptc-hero/ptc-hero.d.ts +16 -16
- package/dist/types/components/ptc-hero-footer-cta/ptc-hero-footer-cta.d.ts +6 -6
- package/dist/types/components/ptc-icon-list/ptc-icon-list.d.ts +21 -21
- package/dist/types/components/ptc-icon-minimize/ptc-icon-minimize.d.ts +9 -9
- package/dist/types/components/ptc-img/ptc-img.d.ts +51 -51
- package/dist/types/components/ptc-link/ptc-link.d.ts +44 -40
- package/dist/types/components/ptc-list/ptc-list.d.ts +8 -8
- package/dist/types/components/ptc-lottie/ptc-lottie.d.ts +12 -12
- package/dist/types/components/ptc-media-card/ptc-media-card.d.ts +45 -45
- package/dist/types/components/ptc-minimized-footer/ptc-minimized-footer.d.ts +3 -3
- package/dist/types/components/ptc-minimized-header/ptc-minimized-header.d.ts +6 -6
- package/dist/types/components/ptc-mobile-select/ptc-mobile-select.d.ts +36 -36
- package/dist/types/components/ptc-modal/ptc-modal.d.ts +59 -59
- package/dist/types/components/ptc-nav-card/ptc-nav-card.d.ts +42 -0
- package/dist/types/components/ptc-overlay/ptc-overlay.d.ts +21 -21
- package/dist/types/components/ptc-pagenation/ptc-pagenation.d.ts +27 -27
- package/dist/types/components/ptc-para/ptc-para.d.ts +43 -43
- package/dist/types/components/ptc-picture/ptc-picture.d.ts +93 -93
- package/dist/types/components/ptc-previous-url/ptc-previous-url.d.ts +5 -5
- package/dist/types/components/ptc-pricing-block/ptc-pricing-block.d.ts +7 -7
- package/dist/types/components/ptc-pricing-tabs/ptc-pricing-tabs.d.ts +31 -0
- package/dist/types/components/ptc-quote/ptc-quote.d.ts +29 -29
- package/dist/types/components/ptc-readmore/ptc-readmore.d.ts +56 -56
- package/dist/types/components/ptc-responsive-wrapper/ptc-responsive-wrapper.d.ts +8 -8
- package/dist/types/components/ptc-search-field/ptc-search-field.d.ts +14 -14
- package/dist/types/components/ptc-shopping-cart/ptc-shopping-cart.d.ts +6 -6
- package/dist/types/components/ptc-skeleton/ptc-skeleton.d.ts +10 -10
- package/dist/types/components/ptc-social-share/ptc-social-share.d.ts +33 -33
- package/dist/types/components/ptc-spacer/ptc-spacer.d.ts +16 -16
- package/dist/types/components/ptc-span/ptc-span.d.ts +16 -16
- package/dist/types/components/ptc-sticky-icons/ptc-sticky-icons.d.ts +7 -7
- package/dist/types/components/ptc-svg-btn/ptc-svg-btn.d.ts +12 -12
- package/dist/types/components/ptc-tab-list/ptc-tab-list.d.ts +19 -19
- package/dist/types/components/ptc-tabs/ptc-tab.d.ts +9 -9
- package/dist/types/components/ptc-tabs/ptc-tabs.d.ts +10 -10
- package/dist/types/components/ptc-text-copy-with-background/ptc-text-copy-with-background.d.ts +33 -33
- package/dist/types/components/ptc-title/ptc-title.d.ts +54 -54
- package/dist/types/components/ptc-tooltip/ptc-tooltip.d.ts +42 -42
- package/dist/types/components/ptc-two-column-media/ptc-two-column-media.d.ts +9 -9
- package/dist/types/components/tab-content/tab-content.d.ts +12 -12
- package/dist/types/components/tab-header/tab-header.d.ts +14 -14
- package/dist/types/components.d.ts +227 -121
- package/dist/types/global.d.ts +1072 -1072
- package/dist/types/index.d.ts +1 -1
- package/dist/types/utils/component.d.ts +1 -1
- package/dist/types/utils/interfaces.d.ts +31 -31
- package/dist/types/utils/utils.d.ts +5 -5
- package/package.json +61 -61
- package/readme.md +18 -18
- package/dist/cjs/ptc-pricing-options-component.cjs.entry.js +0 -33
- package/dist/cjs/ptc-readmore_2.cjs.entry.js +0 -125
- package/dist/collection/components/ptc-pricing-options-component/ptc-pricing-options-component.css +0 -56
- package/dist/collection/components/ptc-pricing-options-component/ptc-pricing-options-component.js +0 -39
- package/dist/esm/ptc-pricing-options-component.entry.js +0 -29
- package/dist/esm/ptc-readmore_2.entry.js +0 -120
- package/dist/ptcw-design/p-071b6a69.entry.js +0 -1
- package/dist/ptcw-design/p-30007bf3.entry.js +0 -1
- package/dist/ptcw-design/p-52092387.entry.js +0 -1
- package/dist/ptcw-design/p-6b71e273.entry.js +0 -1
- package/dist/types/components/ptc-pricing-options-component/ptc-pricing-options-component.d.ts +0 -6
- /package/dist/ptcw-design/{p-36665caa.js → p-ea875d9e.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;
|