@telefonica/mistica 16.58.0-beta.2 → 16.59.0-beta.1
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/css/mistica.css +1 -1
- package/dist/accordion.css-mistica.js +6 -6
- package/dist/align.css-mistica.js +1 -1
- package/dist/autocomplete.css-mistica.js +1 -1
- package/dist/avatar.css-mistica.js +1 -1
- package/dist/badge.css-mistica.js +1 -1
- package/dist/box.css-mistica.js +13 -13
- package/dist/boxed.css-mistica.js +24 -24
- package/dist/button-group.css-mistica.js +1 -1
- package/dist/button-layout.css-mistica.js +14 -14
- package/dist/button.css-mistica.js +30 -30
- package/dist/callout.css-mistica.js +11 -11
- package/dist/card-internal.css-mistica.js +15 -15
- package/dist/carousel.css-mistica.js +8 -8
- package/dist/checkbox.css-mistica.js +11 -11
- package/dist/chip.css-mistica.js +15 -15
- package/dist/circle.css-mistica.js +1 -1
- package/dist/community/advanced-data-card.css-mistica.js +6 -6
- package/dist/community/blocks.css-mistica.js +1 -1
- package/dist/community/example-component.css-mistica.js +1 -1
- package/dist/counter.css-mistica.js +1 -1
- package/dist/cover-hero.css-mistica.js +2 -2
- package/dist/credit-card-number-field.css-mistica.js +3 -3
- package/dist/date-field.css-mistica.js +1 -1
- package/dist/date-time-picker.css-mistica.js +1 -1
- package/dist/dialog.css-mistica.js +4 -4
- package/dist/divider.css-mistica.js +5 -5
- package/dist/double-field.css-mistica.js +2 -2
- package/dist/drawer.css-mistica.js +1 -1
- package/dist/empty-state-card.css-mistica.js +1 -1
- package/dist/empty-state.css-mistica.js +5 -5
- package/dist/fade-in.css-mistica.js +1 -1
- package/dist/feedback.css-mistica.js +1 -1
- package/dist/file-upload.css-mistica.js +7 -7
- package/dist/fixed-footer-layout.css-mistica.js +2 -2
- package/dist/form.css-mistica.js +1 -1
- package/dist/grid-layout.css-mistica.js +3 -3
- package/dist/grid.css-mistica.js +120 -120
- package/dist/header.css-mistica.js +1 -1
- package/dist/hero.css-mistica.js +2 -2
- package/dist/horizontal-scroll.css-mistica.js +1 -1
- package/dist/icon-button.css-mistica.js +53 -53
- package/dist/icons/icon-chevron.css-mistica.js +2 -2
- package/dist/icons/icon-error.css-mistica.js +1 -1
- package/dist/image.css-mistica.js +2 -2
- package/dist/image.js +31 -30
- package/dist/inline.css-mistica.js +9 -9
- package/dist/list.css-mistica.js +1 -1
- package/dist/loading-bar.css-mistica.js +1 -1
- package/dist/loading-screen.css-mistica.js +4 -4
- package/dist/logo.css-mistica.js +5 -5
- package/dist/menu.css-mistica.js +13 -13
- package/dist/mosaic.css-mistica.js +1 -1
- package/dist/navigation-bar.css-mistica.js +18 -18
- package/dist/navigation-breadcrumbs.css-mistica.js +1 -1
- package/dist/package-version.js +1 -1
- package/dist/pin-field.css-mistica.js +1 -1
- package/dist/popover.css-mistica.js +1 -1
- package/dist/progress-bar.css-mistica.js +6 -6
- package/dist/radio-button.css-mistica.js +19 -19
- package/dist/rating.css-mistica.js +2 -2
- package/dist/responsive-layout.css-mistica.js +6 -6
- package/dist/screen-reader-only.css-mistica.js +1 -1
- package/dist/select.css-mistica.js +15 -15
- package/dist/sheet-action-row.css-mistica.js +1 -1
- package/dist/sheet-common.css-mistica.js +1 -1
- package/dist/sheet-info.css-mistica.js +1 -1
- package/dist/skeletons.css-mistica.js +6 -6
- package/dist/skins/skin-contract.css-mistica.js +684 -684
- package/dist/skip-link.css-mistica.js +1 -1
- package/dist/slider.css-mistica.js +18 -18
- package/dist/snackbar.css-mistica.js +4 -4
- package/dist/spinner.css-mistica.js +1 -1
- package/dist/square.css-mistica.js +1 -1
- package/dist/stack.css-mistica.js +5 -5
- package/dist/stacking-group.css-mistica.js +1 -1
- package/dist/stepper.css-mistica.js +2 -2
- package/dist/switch-component.css-mistica.js +35 -35
- package/dist/table.css-mistica.js +9 -9
- package/dist/tabs.css-mistica.js +17 -17
- package/dist/tag.css-mistica.js +1 -1
- package/dist/text-field-base.css-mistica.js +15 -15
- package/dist/text-field-components.css-mistica.js +3 -3
- package/dist/text-link.css-mistica.js +6 -6
- package/dist/text.css-mistica.js +6 -6
- package/dist/theme-context.css-mistica.js +1 -1
- package/dist/timeline.css-mistica.js +9 -9
- package/dist/timer.css-mistica.js +6 -6
- package/dist/tooltip.css-mistica.js +1 -1
- package/dist/touchable.css-mistica.js +1 -1
- package/dist/utils/aspect-ratio-support.css-mistica.js +2 -2
- package/dist/video.css-mistica.js +1 -1
- package/dist/vivinho-loading-animation/vivinho-loading-animation.css-mistica.js +1 -1
- package/dist-es/accordion.css-mistica.js +6 -6
- package/dist-es/align.css-mistica.js +1 -1
- package/dist-es/autocomplete.css-mistica.js +1 -1
- package/dist-es/avatar.css-mistica.js +1 -1
- package/dist-es/badge.css-mistica.js +1 -1
- package/dist-es/box.css-mistica.js +13 -13
- package/dist-es/boxed.css-mistica.js +23 -23
- package/dist-es/button-group.css-mistica.js +1 -1
- package/dist-es/button-layout.css-mistica.js +14 -14
- package/dist-es/button.css-mistica.js +30 -30
- package/dist-es/callout.css-mistica.js +11 -11
- package/dist-es/card-internal.css-mistica.js +15 -15
- package/dist-es/carousel.css-mistica.js +8 -8
- package/dist-es/checkbox.css-mistica.js +11 -11
- package/dist-es/chip.css-mistica.js +15 -15
- package/dist-es/circle.css-mistica.js +1 -1
- package/dist-es/community/advanced-data-card.css-mistica.js +6 -6
- package/dist-es/community/blocks.css-mistica.js +1 -1
- package/dist-es/community/example-component.css-mistica.js +1 -1
- package/dist-es/counter.css-mistica.js +1 -1
- package/dist-es/cover-hero.css-mistica.js +2 -2
- package/dist-es/credit-card-number-field.css-mistica.js +3 -3
- package/dist-es/date-field.css-mistica.js +1 -1
- package/dist-es/date-time-picker.css-mistica.js +1 -1
- package/dist-es/dialog.css-mistica.js +4 -4
- package/dist-es/divider.css-mistica.js +5 -5
- package/dist-es/double-field.css-mistica.js +2 -2
- package/dist-es/drawer.css-mistica.js +1 -1
- package/dist-es/empty-state-card.css-mistica.js +1 -1
- package/dist-es/empty-state.css-mistica.js +5 -5
- package/dist-es/fade-in.css-mistica.js +1 -1
- package/dist-es/feedback.css-mistica.js +1 -1
- package/dist-es/file-upload.css-mistica.js +7 -7
- package/dist-es/fixed-footer-layout.css-mistica.js +2 -2
- package/dist-es/form.css-mistica.js +1 -1
- package/dist-es/grid-layout.css-mistica.js +3 -3
- package/dist-es/grid.css-mistica.js +120 -120
- package/dist-es/header.css-mistica.js +1 -1
- package/dist-es/hero.css-mistica.js +2 -2
- package/dist-es/horizontal-scroll.css-mistica.js +1 -1
- package/dist-es/icon-button.css-mistica.js +53 -53
- package/dist-es/icons/icon-chevron.css-mistica.js +2 -2
- package/dist-es/icons/icon-error.css-mistica.js +1 -1
- package/dist-es/image.css-mistica.js +2 -2
- package/dist-es/image.js +33 -32
- package/dist-es/inline.css-mistica.js +9 -9
- package/dist-es/list.css-mistica.js +1 -1
- package/dist-es/loading-bar.css-mistica.js +1 -1
- package/dist-es/loading-screen.css-mistica.js +4 -4
- package/dist-es/logo.css-mistica.js +5 -5
- package/dist-es/menu.css-mistica.js +13 -13
- package/dist-es/mosaic.css-mistica.js +1 -1
- package/dist-es/navigation-bar.css-mistica.js +18 -18
- package/dist-es/navigation-breadcrumbs.css-mistica.js +1 -1
- package/dist-es/package-version.js +1 -1
- package/dist-es/pin-field.css-mistica.js +1 -1
- package/dist-es/popover.css-mistica.js +1 -1
- package/dist-es/progress-bar.css-mistica.js +6 -6
- package/dist-es/radio-button.css-mistica.js +19 -19
- package/dist-es/rating.css-mistica.js +2 -2
- package/dist-es/responsive-layout.css-mistica.js +6 -6
- package/dist-es/screen-reader-only.css-mistica.js +1 -1
- package/dist-es/select.css-mistica.js +15 -15
- package/dist-es/sheet-action-row.css-mistica.js +1 -1
- package/dist-es/sheet-common.css-mistica.js +1 -1
- package/dist-es/sheet-info.css-mistica.js +1 -1
- package/dist-es/skeletons.css-mistica.js +6 -6
- package/dist-es/skins/skin-contract.css-mistica.js +684 -684
- package/dist-es/skip-link.css-mistica.js +1 -1
- package/dist-es/slider.css-mistica.js +18 -18
- package/dist-es/snackbar.css-mistica.js +4 -4
- package/dist-es/spinner.css-mistica.js +1 -1
- package/dist-es/square.css-mistica.js +1 -1
- package/dist-es/stack.css-mistica.js +5 -5
- package/dist-es/stacking-group.css-mistica.js +1 -1
- package/dist-es/stepper.css-mistica.js +2 -2
- package/dist-es/style.css +1 -1
- package/dist-es/switch-component.css-mistica.js +35 -35
- package/dist-es/table.css-mistica.js +9 -9
- package/dist-es/tabs.css-mistica.js +17 -17
- package/dist-es/tag.css-mistica.js +1 -1
- package/dist-es/text-field-base.css-mistica.js +15 -15
- package/dist-es/text-field-components.css-mistica.js +3 -3
- package/dist-es/text-link.css-mistica.js +6 -6
- package/dist-es/text.css-mistica.js +6 -6
- package/dist-es/theme-context.css-mistica.js +1 -1
- package/dist-es/timeline.css-mistica.js +9 -9
- package/dist-es/timer.css-mistica.js +6 -6
- package/dist-es/tooltip.css-mistica.js +1 -1
- package/dist-es/touchable.css-mistica.js +1 -1
- package/dist-es/utils/aspect-ratio-support.css-mistica.js +2 -2
- package/dist-es/video.css-mistica.js +1 -1
- package/dist-es/vivinho-loading-animation/vivinho-loading-animation.css-mistica.js +1 -1
- package/doc/llms.md +35 -11
- package/doc/patterns.md +22 -20
- package/package.json +13 -1
- package/src/accordion.css.ts +121 -0
- package/src/accordion.tsx +366 -0
- package/src/align.css.ts +7 -0
- package/src/align.tsx +32 -0
- package/src/autocomplete.css.ts +62 -0
- package/src/autocomplete.tsx +239 -0
- package/src/avatar.css.ts +14 -0
- package/src/avatar.tsx +120 -0
- package/src/badge.css.ts +51 -0
- package/src/badge.tsx +79 -0
- package/src/box.css.ts +51 -0
- package/src/box.tsx +114 -0
- package/src/boxed.css.ts +132 -0
- package/src/boxed.tsx +153 -0
- package/src/button-fixed-footer-layout.tsx +62 -0
- package/src/button-group.css.ts +75 -0
- package/src/button-group.tsx +91 -0
- package/src/button-layout.css.ts +162 -0
- package/src/button-layout.tsx +91 -0
- package/src/button.css.ts +758 -0
- package/src/button.tsx +632 -0
- package/src/callout.css.ts +50 -0
- package/src/callout.tsx +147 -0
- package/src/card-cover.tsx +242 -0
- package/src/card-data.tsx +152 -0
- package/src/card-internal.css.ts +271 -0
- package/src/card-internal.tsx +1724 -0
- package/src/card-media.tsx +157 -0
- package/src/card-naked.tsx +63 -0
- package/src/carousel.css.ts +522 -0
- package/src/carousel.tsx +1300 -0
- package/src/checkbox.css.ts +94 -0
- package/src/checkbox.tsx +192 -0
- package/src/chip.css.ts +204 -0
- package/src/chip.tsx +191 -0
- package/src/circle.css.ts +14 -0
- package/src/circle.tsx +52 -0
- package/src/community/__screenshot_tests__/__image_snapshots__/advanced-data-card-screenshot-test-tsx-advanced-data-card-actions-button-and-link-footer-image-false-1-snap.png +0 -0
- package/src/community/__screenshot_tests__/__image_snapshots__/advanced-data-card-screenshot-test-tsx-advanced-data-card-actions-button-and-link-footer-image-true-1-snap.png +0 -0
- package/src/community/__screenshot_tests__/__image_snapshots__/advanced-data-card-screenshot-test-tsx-advanced-data-card-actions-button-footer-image-false-1-snap.png +0 -0
- package/src/community/__screenshot_tests__/__image_snapshots__/advanced-data-card-screenshot-test-tsx-advanced-data-card-actions-button-footer-image-true-1-snap.png +0 -0
- package/src/community/__screenshot_tests__/__image_snapshots__/advanced-data-card-screenshot-test-tsx-advanced-data-card-actions-link-footer-image-false-1-snap.png +0 -0
- package/src/community/__screenshot_tests__/__image_snapshots__/advanced-data-card-screenshot-test-tsx-advanced-data-card-actions-link-footer-image-true-1-snap.png +0 -0
- package/src/community/__screenshot_tests__/__image_snapshots__/advanced-data-card-screenshot-test-tsx-advanced-data-card-actions-none-footer-image-false-1-snap.png +0 -0
- package/src/community/__screenshot_tests__/__image_snapshots__/advanced-data-card-screenshot-test-tsx-advanced-data-card-actions-none-footer-image-true-1-snap.png +0 -0
- package/src/community/__screenshot_tests__/__image_snapshots__/advanced-data-card-screenshot-test-tsx-advanced-data-card-extras-0-1-snap.png +0 -0
- package/src/community/__screenshot_tests__/__image_snapshots__/advanced-data-card-screenshot-test-tsx-advanced-data-card-extras-1-1-snap.png +0 -0
- package/src/community/__screenshot_tests__/__image_snapshots__/advanced-data-card-screenshot-test-tsx-advanced-data-card-extras-3-1-snap.png +0 -0
- package/src/community/__screenshot_tests__/__image_snapshots__/advanced-data-card-screenshot-test-tsx-advanced-data-card-extras-3-no-divider-1-snap.png +0 -0
- package/src/community/__screenshot_tests__/__image_snapshots__/advanced-data-card-screenshot-test-tsx-advanced-data-card-inside-carousel-1-snap.png +0 -0
- package/src/community/__screenshot_tests__/__image_snapshots__/advanced-data-card-screenshot-test-tsx-advanced-data-card-without-stacking-group-with-top-actions-and-too-long-title-1-snap.png +0 -0
- package/src/community/__screenshot_tests__/__image_snapshots__/blocks-screenshot-test-tsx-blocks-highlighted-value-block-1-snap.png +0 -0
- package/src/community/__screenshot_tests__/__image_snapshots__/blocks-screenshot-test-tsx-blocks-information-block-1-snap.png +0 -0
- package/src/community/__screenshot_tests__/__image_snapshots__/blocks-screenshot-test-tsx-blocks-progress-block-1-snap.png +0 -0
- package/src/community/__screenshot_tests__/__image_snapshots__/blocks-screenshot-test-tsx-blocks-progress-block-2-snap.png +0 -0
- package/src/community/__screenshot_tests__/__image_snapshots__/blocks-screenshot-test-tsx-blocks-row-block-1-snap.png +0 -0
- package/src/community/__screenshot_tests__/__image_snapshots__/blocks-screenshot-test-tsx-blocks-simple-block-1-snap.png +0 -0
- package/src/community/__screenshot_tests__/__image_snapshots__/blocks-screenshot-test-tsx-blocks-value-block-1-snap.png +0 -0
- package/src/community/__screenshot_tests__/advanced-data-card-screenshot-test.tsx +84 -0
- package/src/community/__screenshot_tests__/blocks-screenshot-test.tsx +72 -0
- package/src/community/__stories__/advanced-data-card-carousel-story.tsx +66 -0
- package/src/community/__stories__/advanced-data-card-story.tsx +158 -0
- package/src/community/__stories__/blocks-story.tsx +272 -0
- package/src/community/__stories__/example-component-story.tsx +15 -0
- package/src/community/__stories__/index-story.tsx +154 -0
- package/src/community/__type_tests__/advanced-data-card-type-test.tsx +40 -0
- package/src/community/advanced-data-card.css.ts +271 -0
- package/src/community/advanced-data-card.tsx +431 -0
- package/src/community/blocks.css.ts +12 -0
- package/src/community/blocks.tsx +290 -0
- package/src/community/example-component.css.ts +7 -0
- package/src/community/example-component.tsx +17 -0
- package/src/community/index.tsx +10 -0
- package/src/counter.css.ts +150 -0
- package/src/counter.tsx +215 -0
- package/src/cover-hero-media.tsx +39 -0
- package/src/cover-hero.css.ts +133 -0
- package/src/cover-hero.tsx +262 -0
- package/src/credit-card-expiration-field.tsx +187 -0
- package/src/credit-card-fields.tsx +56 -0
- package/src/credit-card-number-field.css.ts +47 -0
- package/src/credit-card-number-field.tsx +245 -0
- package/src/cvv-field.tsx +169 -0
- package/src/date-field.css.ts +14 -0
- package/src/date-field.tsx +130 -0
- package/src/date-time-field.tsx +141 -0
- package/src/date-time-picker.css.ts +126 -0
- package/src/date-time-picker.tsx +188 -0
- package/src/decimal-field.tsx +160 -0
- package/src/desktop-container-type-context.tsx +15 -0
- package/src/dialog-context.tsx +81 -0
- package/src/dialog.css.ts +155 -0
- package/src/dialog.tsx +423 -0
- package/src/divider.css.ts +10 -0
- package/src/divider.tsx +11 -0
- package/src/double-field.css.ts +33 -0
- package/src/double-field.tsx +71 -0
- package/src/drawer.css.ts +123 -0
- package/src/drawer.tsx +304 -0
- package/src/email-field.tsx +76 -0
- package/src/empty-state-card.css.ts +40 -0
- package/src/empty-state-card.tsx +92 -0
- package/src/empty-state.css.ts +119 -0
- package/src/empty-state.tsx +141 -0
- package/src/fade-in.css.ts +12 -0
- package/src/fade-in.tsx +40 -0
- package/src/feedback.css.ts +119 -0
- package/src/feedback.tsx +432 -0
- package/src/file-upload.css.ts +156 -0
- package/src/file-upload.tsx +612 -0
- package/src/fixed-footer-layout.css.ts +96 -0
- package/src/fixed-footer-layout.tsx +215 -0
- package/src/fixed-to-top.tsx +21 -0
- package/src/focus-trap.tsx +17 -0
- package/src/form-context.tsx +198 -0
- package/src/form.css.ts +5 -0
- package/src/form.tsx +287 -0
- package/src/grid-layout.css.ts +68 -0
- package/src/grid-layout.tsx +201 -0
- package/src/grid.css.ts +203 -0
- package/src/grid.tsx +241 -0
- package/src/header.css.ts +30 -0
- package/src/header.tsx +319 -0
- package/src/hero.css.ts +71 -0
- package/src/hero.tsx +318 -0
- package/src/hooks.tsx +313 -0
- package/src/horizontal-scroll.css.ts +43 -0
- package/src/horizontal-scroll.tsx +18 -0
- package/src/iban-field.tsx +218 -0
- package/src/icon-button.css.ts +561 -0
- package/src/icon-button.tsx +221 -0
- package/src/icons/__stories__/mistica-icons-story.tsx +192 -0
- package/src/icons/icon-amex.tsx +40 -0
- package/src/icons/icon-chevron.css.ts +23 -0
- package/src/icons/icon-chevron.tsx +150 -0
- package/src/icons/icon-cvv-amex.tsx +31 -0
- package/src/icons/icon-cvv-visa-mc.tsx +31 -0
- package/src/icons/icon-error.css.ts +27 -0
- package/src/icons/icon-error.tsx +207 -0
- package/src/icons/icon-info.tsx +86 -0
- package/src/icons/icon-mastercard.tsx +36 -0
- package/src/icons/icon-success-vivo-new.tsx +51 -0
- package/src/icons/icon-success-vivo.tsx +36 -0
- package/src/icons/icon-success.tsx +211 -0
- package/src/icons/icon-visa.tsx +32 -0
- package/src/image.css.ts +48 -0
- package/src/image.tsx +345 -0
- package/src/index.tsx +2466 -0
- package/src/inline.css.ts +131 -0
- package/src/inline.tsx +135 -0
- package/src/integer-field.tsx +93 -0
- package/src/list.css.ts +281 -0
- package/src/list.tsx +963 -0
- package/src/loading-bar.css.ts +69 -0
- package/src/loading-bar.tsx +25 -0
- package/src/loading-screen.css.ts +114 -0
- package/src/loading-screen.tsx +376 -0
- package/src/logo-blau-shell.tsx +30 -0
- package/src/logo-blau.tsx +60 -0
- package/src/logo-common.tsx +29 -0
- package/src/logo-esimflag-shell.tsx +30 -0
- package/src/logo-esimflag.tsx +56 -0
- package/src/logo-movistar-new-shell.tsx +30 -0
- package/src/logo-movistar-new.tsx +85 -0
- package/src/logo-movistar-shell.tsx +30 -0
- package/src/logo-movistar.tsx +63 -0
- package/src/logo-o2-new-shell.tsx +26 -0
- package/src/logo-o2-new.tsx +27 -0
- package/src/logo-o2-shell.tsx +26 -0
- package/src/logo-o2.tsx +27 -0
- package/src/logo-telefonica-shell.tsx +30 -0
- package/src/logo-telefonica.tsx +95 -0
- package/src/logo-tu-shell.tsx +26 -0
- package/src/logo-tu.tsx +28 -0
- package/src/logo-vivo-shell.tsx +30 -0
- package/src/logo-vivo.tsx +53 -0
- package/src/logo.css.ts +33 -0
- package/src/logo.tsx +313 -0
- package/src/master-detail-layout.tsx +28 -0
- package/src/maybe-dismissable.css.ts +37 -0
- package/src/maybe-dismissable.tsx +58 -0
- package/src/media-queries.css.ts +67 -0
- package/src/menu.css.ts +132 -0
- package/src/menu.tsx +468 -0
- package/src/meter.tsx +516 -0
- package/src/modal-context-provider.tsx +45 -0
- package/src/month-field.tsx +124 -0
- package/src/mosaic.css.ts +73 -0
- package/src/mosaic.tsx +205 -0
- package/src/navigation-bar.css.ts +558 -0
- package/src/navigation-bar.tsx +1637 -0
- package/src/navigation-breadcrumbs.css.ts +22 -0
- package/src/navigation-breadcrumbs.tsx +69 -0
- package/src/negative-box.tsx +15 -0
- package/src/nestable-context.tsx +139 -0
- package/src/overlay.tsx +86 -0
- package/src/overscroll-color-context.tsx +141 -0
- package/src/package-version.tsx +2 -0
- package/src/password-field.tsx +126 -0
- package/src/phone-number-field-lite.tsx +265 -0
- package/src/phone-number-field.tsx +171 -0
- package/src/pin-field.css.ts +90 -0
- package/src/pin-field.tsx +346 -0
- package/src/placeholder.tsx +41 -0
- package/src/popover.css.ts +8 -0
- package/src/popover.tsx +85 -0
- package/src/portal.tsx +43 -0
- package/src/progress-bar.css.ts +61 -0
- package/src/progress-bar.tsx +174 -0
- package/src/radio-button.css.ts +174 -0
- package/src/radio-button.tsx +322 -0
- package/src/rating.css.ts +128 -0
- package/src/rating.tsx +351 -0
- package/src/responsive-layout.css.ts +162 -0
- package/src/responsive-layout.tsx +106 -0
- package/src/screen-reader-only.css.ts +27 -0
- package/src/screen-reader-only.tsx +33 -0
- package/src/screen-size-context-provider.tsx +96 -0
- package/src/screen-size-context.tsx +23 -0
- package/src/search-field.tsx +126 -0
- package/src/select.css.ts +226 -0
- package/src/select.tsx +513 -0
- package/src/sheet-action-row.css.ts +33 -0
- package/src/sheet-actions-list.tsx +113 -0
- package/src/sheet-actions.tsx +95 -0
- package/src/sheet-common.css.ts +254 -0
- package/src/sheet-common.tsx +402 -0
- package/src/sheet-info.css.ts +19 -0
- package/src/sheet-info.tsx +127 -0
- package/src/sheet-native.tsx +189 -0
- package/src/sheet-radio-list.tsx +118 -0
- package/src/sheet-root.tsx +127 -0
- package/src/sheet-types.tsx +94 -0
- package/src/sheet-web.tsx +140 -0
- package/src/skeleton-base.tsx +38 -0
- package/src/skeletons.css.ts +56 -0
- package/src/skeletons.tsx +133 -0
- package/src/skins/blau.tsx +724 -0
- package/src/skins/constants.tsx +10 -0
- package/src/skins/defaults.tsx +104 -0
- package/src/skins/esimflag.tsx +728 -0
- package/src/skins/movistar-new.tsx +735 -0
- package/src/skins/movistar.tsx +740 -0
- package/src/skins/o2-new.tsx +731 -0
- package/src/skins/o2.tsx +727 -0
- package/src/skins/skin-contract.css.ts +380 -0
- package/src/skins/telefonica.tsx +768 -0
- package/src/skins/tu.tsx +741 -0
- package/src/skins/types/colors.tsx +286 -0
- package/src/skins/types/index.tsx +153 -0
- package/src/skins/utils.tsx +66 -0
- package/src/skins/vivo-new.tsx +745 -0
- package/src/skins/vivo.tsx +720 -0
- package/src/skip-link.css.ts +34 -0
- package/src/skip-link.tsx +52 -0
- package/src/slider.css.ts +181 -0
- package/src/slider.tsx +384 -0
- package/src/snackbar-context.tsx +98 -0
- package/src/snackbar-native.ts +37 -0
- package/src/snackbar.css.ts +176 -0
- package/src/snackbar.tsx +258 -0
- package/src/spinner.css.ts +66 -0
- package/src/spinner.tsx +136 -0
- package/src/sprinkles.css.ts +83 -0
- package/src/square.css.ts +15 -0
- package/src/square.tsx +55 -0
- package/src/stack.css.ts +44 -0
- package/src/stack.tsx +79 -0
- package/src/stacking-group.css.ts +15 -0
- package/src/stacking-group.tsx +82 -0
- package/src/stepper.css.ts +233 -0
- package/src/stepper.tsx +156 -0
- package/src/switch-component.css.ts +181 -0
- package/src/switch-component.tsx +187 -0
- package/src/tab-focus.tsx +68 -0
- package/src/table-actions-header.tsx +21 -0
- package/src/table-cell-text.tsx +35 -0
- package/src/table.css.ts +297 -0
- package/src/table.tsx +398 -0
- package/src/tabs.css.ts +212 -0
- package/src/tabs.tsx +263 -0
- package/src/tag.css.ts +42 -0
- package/src/tag.tsx +161 -0
- package/src/test-utils/environment/setup-ssr.tsx +10 -0
- package/src/test-utils/fail-test-on-console-error.tsx +22 -0
- package/src/test-utils/index.tsx +341 -0
- package/src/test-utils/setup-ssr-test-env.tsx +13 -0
- package/src/test-utils/ssr.tsx +197 -0
- package/src/text-field-base.css.ts +416 -0
- package/src/text-field-base.tsx +628 -0
- package/src/text-field-components.css.ts +159 -0
- package/src/text-field-components.tsx +225 -0
- package/src/text-field.tsx +118 -0
- package/src/text-link.css.ts +83 -0
- package/src/text-link.tsx +85 -0
- package/src/text-tokens.tsx +708 -0
- package/src/text.css.ts +60 -0
- package/src/text.tsx +516 -0
- package/src/theme-context-provider.tsx +370 -0
- package/src/theme-context.css.ts +3 -0
- package/src/theme-context.tsx +8 -0
- package/src/theme-variant-context.tsx +51 -0
- package/src/theme.tsx +184 -0
- package/src/time-field.tsx +99 -0
- package/src/timeline.css.ts +135 -0
- package/src/timeline.tsx +250 -0
- package/src/timer.css.ts +99 -0
- package/src/timer.tsx +420 -0
- package/src/title.tsx +119 -0
- package/src/tooltip-context-provider.tsx +57 -0
- package/src/tooltip.css.ts +106 -0
- package/src/tooltip.tsx +649 -0
- package/src/touchable.css.ts +56 -0
- package/src/touchable.tsx +355 -0
- package/src/types/font-face.d.ts +47 -0
- package/src/types/libs.d.ts +3 -0
- package/src/utils/__tests__/analytics-test.tsx +35 -0
- package/src/utils/__tests__/browser-test.tsx +28 -0
- package/src/utils/__tests__/dom-test.tsx +23 -0
- package/src/utils/__tests__/helpers-test.tsx +166 -0
- package/src/utils/analytics.tsx +28 -0
- package/src/utils/animation.tsx +201 -0
- package/src/utils/aspect-ratio-support.css.ts +28 -0
- package/src/utils/aspect-ratio-support.tsx +141 -0
- package/src/utils/browser.tsx +9 -0
- package/src/utils/color.tsx +46 -0
- package/src/utils/common.tsx +27 -0
- package/src/utils/credit-card.tsx +46 -0
- package/src/utils/css.tsx +25 -0
- package/src/utils/document-visibility.tsx +52 -0
- package/src/utils/dom.tsx +155 -0
- package/src/utils/environment.tsx +6 -0
- package/src/utils/headings.tsx +18 -0
- package/src/utils/helpers.tsx +182 -0
- package/src/utils/keys.tsx +8 -0
- package/src/utils/locale.tsx +27 -0
- package/src/utils/platform.tsx +94 -0
- package/src/utils/region-code.tsx +1 -0
- package/src/utils/renders-element.tsx +6 -0
- package/src/utils/time.tsx +22 -0
- package/src/utils/types.tsx +19 -0
- package/src/utils/utility-types.tsx +8 -0
- package/src/video.css.ts +11 -0
- package/src/video.tsx +355 -0
- package/src/vivinho-loading-animation/in-lottie.json +402 -0
- package/src/vivinho-loading-animation/index.tsx +90 -0
- package/src/vivinho-loading-animation/out-lottie.json +575 -0
- package/src/vivinho-loading-animation/pulse-lottie.json +551 -0
- package/src/vivinho-loading-animation/vivinho-loading-animation.css.ts +15 -0
- package/src/vivinho-loading-animation/wave-lottie.json +2829 -0
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import {style, keyframes} from '@vanilla-extract/css';
|
|
2
|
+
|
|
3
|
+
const shake = keyframes({
|
|
4
|
+
'10%, 90%': {
|
|
5
|
+
transform: 'translate(3px, 0)',
|
|
6
|
+
},
|
|
7
|
+
'20%, 80%': {
|
|
8
|
+
transform: 'translate(6px, 0)',
|
|
9
|
+
},
|
|
10
|
+
|
|
11
|
+
'30%, 50%, 70%': {
|
|
12
|
+
transform: 'translate(0px, 0)',
|
|
13
|
+
},
|
|
14
|
+
|
|
15
|
+
'40%, 60%': {
|
|
16
|
+
transform: 'translate(8px, 0)',
|
|
17
|
+
},
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
export const outerAnimation = style({
|
|
21
|
+
animation: `${shake} 0.82s cubic-bezier(.36,.07,.19,.97) both`,
|
|
22
|
+
animationDelay: '0.84s',
|
|
23
|
+
});
|
|
24
|
+
export const innerAnimation = style({
|
|
25
|
+
animation: `${shake} 0.82s cubic-bezier(.36,.07,.19,.97) both`,
|
|
26
|
+
animationDelay: '0.8s',
|
|
27
|
+
});
|
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import {getAnimateDrawLineProps, getAnimateFadeInProps} from '../utils/animation';
|
|
4
|
+
import {useTheme} from '../hooks';
|
|
5
|
+
import {O2_SKIN, O2_NEW_SKIN, VIVO_NEW_SKIN} from '../skins/constants';
|
|
6
|
+
import {vars} from '../skins/skin-contract.css';
|
|
7
|
+
import * as styles from './icon-error.css';
|
|
8
|
+
|
|
9
|
+
type Props = {
|
|
10
|
+
size?: number | string;
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
const IconErrorO2 = ({size = 48}: Props): JSX.Element => {
|
|
14
|
+
const {platformOverrides} = useTheme();
|
|
15
|
+
|
|
16
|
+
return (
|
|
17
|
+
<svg role="presentation" width={size} height={size} viewBox="0 0 64 64" overflow="visible">
|
|
18
|
+
<g
|
|
19
|
+
stroke={vars.colors.error}
|
|
20
|
+
fill={vars.colors.error}
|
|
21
|
+
strokeLinecap="round"
|
|
22
|
+
strokeLinejoin="round"
|
|
23
|
+
>
|
|
24
|
+
<g className={styles.outerAnimation}>
|
|
25
|
+
<path
|
|
26
|
+
strokeWidth="2"
|
|
27
|
+
fill="none"
|
|
28
|
+
d="M48.24,57.99c-4.71,2.95-10.27,4.65-16.24,4.65C15.08,62.64,1.36,48.92,1.36,32S15.08,1.36,32,1.36 S62.64,15.08,62.64,32c0,6.11-1.79,11.8-4.87,16.58"
|
|
29
|
+
{...getAnimateDrawLineProps('202', '0.3s', platformOverrides)}
|
|
30
|
+
/>
|
|
31
|
+
<circle
|
|
32
|
+
cx="53.64"
|
|
33
|
+
cy="53.54"
|
|
34
|
+
r="1.06"
|
|
35
|
+
{...getAnimateFadeInProps('0.2s', platformOverrides)}
|
|
36
|
+
/>
|
|
37
|
+
</g>
|
|
38
|
+
<g className={styles.innerAnimation}>
|
|
39
|
+
<line
|
|
40
|
+
strokeWidth="2"
|
|
41
|
+
fill="none"
|
|
42
|
+
x1="32"
|
|
43
|
+
y1="14.86"
|
|
44
|
+
x2="32"
|
|
45
|
+
y2="39.08"
|
|
46
|
+
{...getAnimateDrawLineProps('110', '0.6s', platformOverrides)}
|
|
47
|
+
/>
|
|
48
|
+
<circle
|
|
49
|
+
strokeWidth="0"
|
|
50
|
+
cx="32"
|
|
51
|
+
cy="46.25"
|
|
52
|
+
r="1.72"
|
|
53
|
+
{...getAnimateFadeInProps('0.8s', platformOverrides)}
|
|
54
|
+
/>
|
|
55
|
+
</g>
|
|
56
|
+
</g>
|
|
57
|
+
</svg>
|
|
58
|
+
);
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
const IconErrorO2New = ({size = 48}: Props): JSX.Element => {
|
|
62
|
+
const {platformOverrides} = useTheme();
|
|
63
|
+
|
|
64
|
+
return (
|
|
65
|
+
<svg role="presentation" width={size} height={size} viewBox="0 0 64 64" overflow="visible">
|
|
66
|
+
<g
|
|
67
|
+
stroke={vars.colors.error}
|
|
68
|
+
fill={vars.colors.error}
|
|
69
|
+
strokeLinecap="round"
|
|
70
|
+
strokeLinejoin="round"
|
|
71
|
+
>
|
|
72
|
+
<g className={styles.outerAnimation}>
|
|
73
|
+
<circle
|
|
74
|
+
strokeWidth="4"
|
|
75
|
+
fill="none"
|
|
76
|
+
cx="32"
|
|
77
|
+
cy="32"
|
|
78
|
+
r="30"
|
|
79
|
+
{...getAnimateDrawLineProps('202', '0.3s', platformOverrides)}
|
|
80
|
+
/>
|
|
81
|
+
</g>
|
|
82
|
+
<g className={styles.innerAnimation}>
|
|
83
|
+
<line
|
|
84
|
+
strokeWidth="4"
|
|
85
|
+
fill="none"
|
|
86
|
+
x1="32"
|
|
87
|
+
y1="16.5"
|
|
88
|
+
x2="32"
|
|
89
|
+
y2="39.08"
|
|
90
|
+
{...getAnimateDrawLineProps('110', '0.6s', platformOverrides)}
|
|
91
|
+
/>
|
|
92
|
+
<circle
|
|
93
|
+
strokeWidth="0"
|
|
94
|
+
cx="32"
|
|
95
|
+
cy="47.5"
|
|
96
|
+
r="3"
|
|
97
|
+
{...getAnimateFadeInProps('0.8s', platformOverrides)}
|
|
98
|
+
/>
|
|
99
|
+
</g>
|
|
100
|
+
</g>
|
|
101
|
+
</svg>
|
|
102
|
+
);
|
|
103
|
+
};
|
|
104
|
+
|
|
105
|
+
const IconErrorVivo = ({size = 48}: Props): JSX.Element => {
|
|
106
|
+
const {platformOverrides} = useTheme();
|
|
107
|
+
|
|
108
|
+
return (
|
|
109
|
+
<svg role="presentation" width={size} height={size} viewBox="0 0 64 64" overflow="visible">
|
|
110
|
+
<g
|
|
111
|
+
stroke={vars.colors.error}
|
|
112
|
+
fill="none"
|
|
113
|
+
strokeWidth="2"
|
|
114
|
+
strokeLinecap="round"
|
|
115
|
+
strokeLinejoin="round"
|
|
116
|
+
strokeMiterlimit="10"
|
|
117
|
+
>
|
|
118
|
+
<g className={styles.outerAnimation}>
|
|
119
|
+
<path
|
|
120
|
+
fill="none"
|
|
121
|
+
strokeWidth="2"
|
|
122
|
+
strokeMiterlimit="10"
|
|
123
|
+
d="M 31.9 0.9 C 52.5 0.9 62.9 11.4 62.9 31.9 C 62.9 52.5 52.5 62.9 31.9 62.9 C 11.3 62.9 0.9 52.5 0.9 31.9 C 0.9 11.3 11.3 0.9 31.9 0.9 Z"
|
|
124
|
+
transform="rotate(90 32 32)"
|
|
125
|
+
{...getAnimateDrawLineProps('202', '0.3s', platformOverrides)}
|
|
126
|
+
/>
|
|
127
|
+
</g>
|
|
128
|
+
<g className={styles.innerAnimation}>
|
|
129
|
+
<line
|
|
130
|
+
x1="31.9"
|
|
131
|
+
y1="20.9"
|
|
132
|
+
x2="31.9"
|
|
133
|
+
y2="36.9"
|
|
134
|
+
{...getAnimateDrawLineProps('17', '0.7s', platformOverrides)}
|
|
135
|
+
/>
|
|
136
|
+
<circle
|
|
137
|
+
stroke={vars.colors.error}
|
|
138
|
+
fill={vars.colors.error}
|
|
139
|
+
strokeWidth="1"
|
|
140
|
+
cx="31.9"
|
|
141
|
+
cy="43.9"
|
|
142
|
+
r="1.5"
|
|
143
|
+
{...getAnimateFadeInProps('1s', platformOverrides)}
|
|
144
|
+
/>
|
|
145
|
+
</g>
|
|
146
|
+
</g>
|
|
147
|
+
</svg>
|
|
148
|
+
);
|
|
149
|
+
};
|
|
150
|
+
|
|
151
|
+
const IconErrorDefault = ({size = 48}: Props): JSX.Element => {
|
|
152
|
+
const {platformOverrides} = useTheme();
|
|
153
|
+
|
|
154
|
+
return (
|
|
155
|
+
<svg role="presentation" width={size} height={size} viewBox="0 0 64 64" overflow="visible">
|
|
156
|
+
<g
|
|
157
|
+
stroke={vars.colors.error}
|
|
158
|
+
fill="none"
|
|
159
|
+
strokeWidth="4"
|
|
160
|
+
strokeLinecap="round"
|
|
161
|
+
strokeLinejoin="round"
|
|
162
|
+
strokeMiterlimit="10"
|
|
163
|
+
>
|
|
164
|
+
<g className={styles.outerAnimation}>
|
|
165
|
+
<circle
|
|
166
|
+
fill="none"
|
|
167
|
+
cx="32"
|
|
168
|
+
cy="32"
|
|
169
|
+
r="30"
|
|
170
|
+
{...getAnimateDrawLineProps('202', '0.3s', platformOverrides)}
|
|
171
|
+
/>
|
|
172
|
+
</g>
|
|
173
|
+
<g className={styles.innerAnimation}>
|
|
174
|
+
<path
|
|
175
|
+
d="M32 17.9375V32.9375"
|
|
176
|
+
{...getAnimateDrawLineProps('17', '0.7s', platformOverrides)}
|
|
177
|
+
/>
|
|
178
|
+
<circle
|
|
179
|
+
stroke={vars.colors.error}
|
|
180
|
+
fill={vars.colors.error}
|
|
181
|
+
cx="32"
|
|
182
|
+
cy="45.1289"
|
|
183
|
+
r="1.5"
|
|
184
|
+
{...getAnimateFadeInProps('1s', platformOverrides)}
|
|
185
|
+
/>
|
|
186
|
+
</g>
|
|
187
|
+
</g>
|
|
188
|
+
</svg>
|
|
189
|
+
);
|
|
190
|
+
};
|
|
191
|
+
|
|
192
|
+
const IconError = (props: Props): JSX.Element => {
|
|
193
|
+
const {skinName} = useTheme();
|
|
194
|
+
|
|
195
|
+
switch (skinName) {
|
|
196
|
+
case O2_SKIN:
|
|
197
|
+
return <IconErrorO2 {...props} />;
|
|
198
|
+
case O2_NEW_SKIN:
|
|
199
|
+
return <IconErrorO2New {...props} />;
|
|
200
|
+
case VIVO_NEW_SKIN:
|
|
201
|
+
return <IconErrorVivo {...props} />;
|
|
202
|
+
default:
|
|
203
|
+
return <IconErrorDefault {...props} />;
|
|
204
|
+
}
|
|
205
|
+
};
|
|
206
|
+
|
|
207
|
+
export default IconError;
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import {useTheme} from '../hooks';
|
|
4
|
+
import {O2_SKIN, O2_NEW_SKIN, VIVO_NEW_SKIN} from '../skins/constants';
|
|
5
|
+
import {vars} from '../skins/skin-contract.css';
|
|
6
|
+
|
|
7
|
+
type Props = {
|
|
8
|
+
size?: number | string;
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
const IconInfoO2 = ({size = 48}: Props): JSX.Element => {
|
|
12
|
+
return (
|
|
13
|
+
<svg role="presentation" width={size} height={size} viewBox="0 0 64 64">
|
|
14
|
+
<g
|
|
15
|
+
stroke={vars.colors.brand}
|
|
16
|
+
fill={vars.colors.brand}
|
|
17
|
+
strokeLinecap="round"
|
|
18
|
+
strokeLinejoin="round"
|
|
19
|
+
>
|
|
20
|
+
<path
|
|
21
|
+
fill="none"
|
|
22
|
+
strokeWidth="2"
|
|
23
|
+
d="M48.24,57.99c-4.71,2.95-10.27,4.65-16.24,4.65C15.08,62.64,1.36,48.92,1.36,32S15.08,1.36,32,1.36 S62.64,15.08,62.64,32c0,6.11-1.79,11.8-4.87,16.58"
|
|
24
|
+
/>
|
|
25
|
+
<line fill="none" strokeWidth="2" x1="32" y1="47.96" x2="32" y2="23.74" />
|
|
26
|
+
<circle cx="53.64" cy="53.54" r="1.06" />
|
|
27
|
+
<circle strokeWidth="0" cx="32" cy="16.58" r="1.72" />
|
|
28
|
+
</g>
|
|
29
|
+
</svg>
|
|
30
|
+
);
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
const IconInfoO2New = ({size = 48}: Props): JSX.Element => {
|
|
34
|
+
return (
|
|
35
|
+
<svg role="presentation" width={size} height={size} viewBox="0 0 48 48">
|
|
36
|
+
<g fill={vars.colors.brand}>
|
|
37
|
+
<path d="M24 36.8544C23.0592 36.8544 22.2816 36.0864 22.2816 35.136V18.8544C22.2816 17.9136 23.0496 17.136 24 17.136C24.9408 17.136 25.7184 17.904 25.7184 18.8544V35.136C25.7184 36.0864 24.9408 36.8544 24 36.8544Z" />
|
|
38
|
+
<path d="M24 14.5728C25.1823 14.5728 26.1408 13.6143 26.1408 12.432C26.1408 11.2497 25.1823 10.2912 24 10.2912C22.8177 10.2912 21.8592 11.2497 21.8592 12.432C21.8592 13.6143 22.8177 14.5728 24 14.5728Z" />
|
|
39
|
+
<path d="M0 24C0 37.2 10.8 48 24 48C37.2 48 48 37.2 48 24C48 10.8 37.2 0 24 0C10.8 0 0 10.8 0 24ZM3.4272 24C3.4272 12.6816 12.6816 3.4272 24 3.4272C35.3184 3.4272 44.5728 12.6816 44.5728 24C44.5728 35.3184 35.3184 44.5728 24 44.5728C12.6816 44.5728 3.4272 35.3184 3.4272 24Z" />
|
|
40
|
+
</g>
|
|
41
|
+
</svg>
|
|
42
|
+
);
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
const IconInfoVivo = ({size = 48}: Props): JSX.Element => {
|
|
46
|
+
return (
|
|
47
|
+
<svg role="presentation" width={size} height={size} viewBox="0 0 64 64">
|
|
48
|
+
<g fill={vars.colors.brand}>
|
|
49
|
+
<path
|
|
50
|
+
fillRule="nonzero"
|
|
51
|
+
strokeWidth="0"
|
|
52
|
+
d="M31.991 0c21.24 0 32.01 10.77 32.01 32.01C64 53.235 53.23 64 31.99 64 10.763 64 .001 53.236.001 32.01 0 10.77 10.762 0 31.99 0zm0 2c-20.18 0-29.99 9.816-29.99 30.01C2 52.19 11.81 62 31.99 62c20.192 0 30.01-9.81 30.01-29.99C62 11.815 52.182 2 31.99 2zM32 27a1 1 0 0 1 1 1v16a1 1 0 0 1-2 0V28a1 1 0 0 1 1-1zm0-7.5a1.5 1.5 0 1 1 0 3 1.5 1.5 0 0 1 0-3z"
|
|
53
|
+
/>
|
|
54
|
+
</g>
|
|
55
|
+
</svg>
|
|
56
|
+
);
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
const IconInfoDefault = ({size = 48}: Props): JSX.Element => {
|
|
60
|
+
return (
|
|
61
|
+
<svg role="presentation" width={size} height={size} viewBox="0 0 64 64">
|
|
62
|
+
<g fill={vars.colors.brand}>
|
|
63
|
+
<path d="M32 29.1797C33.0354 29.1797 33.8867 29.9663 33.9893 30.9746L34 31.1797V45.9492C34 47.0538 33.1046 47.9492 32 47.9492C30.8954 47.9492 30 47.0538 30 45.9492V31.1797L30.0107 30.9746C30.1133 29.9663 30.9646 29.1797 32 29.1797Z" />
|
|
64
|
+
<path d="M32 15.5889C33.8127 15.5889 35.2822 17.0584 35.2822 18.8711C35.2822 20.6838 33.8127 22.1533 32 22.1533C30.1873 22.1533 28.7178 20.6838 28.7178 18.8711C28.7178 17.0584 30.1873 15.5889 32 15.5889Z" />
|
|
65
|
+
<path d="M32 0.459961C36.1418 0.459966 40.2428 1.27637 44.0693 2.86133C47.8959 4.44636 51.373 6.76948 54.3018 9.69824C57.2305 12.627 59.5536 16.1041 61.1387 19.9307C62.7236 23.7572 63.54 27.8582 63.54 32C63.54 36.1419 62.7237 40.2437 61.1387 44.0703C59.5537 47.8967 57.2304 51.3732 54.3018 54.3018C51.373 57.2305 47.8959 59.5546 44.0693 61.1396C40.2429 62.7245 36.1417 63.54 32 63.54C27.8581 63.54 23.7563 62.7247 19.9297 61.1396C16.1032 59.5546 12.6269 57.2305 9.69824 54.3018C6.76954 51.3731 4.44538 47.8968 2.86035 44.0703C1.27532 40.2437 0.459966 36.1419 0.459961 32C0.459966 27.8583 1.27549 23.7571 2.86035 19.9307C4.44538 16.1041 6.7695 12.627 9.69824 9.69824C12.6268 6.76965 16.1033 4.44635 19.9297 2.86133C23.7563 1.2763 27.8581 0.459965 32 0.459961ZM32 4.45996C28.3834 4.45996 24.8022 5.17263 21.4609 6.55664C18.1197 7.94065 15.0837 9.96907 12.5264 12.5264C9.96909 15.0837 7.94065 18.1197 6.55664 21.4609C5.17264 24.8022 4.45997 28.3834 4.45996 32C4.45997 35.6166 5.17263 39.1978 6.55664 42.5391C7.94065 45.8803 9.96906 48.9163 12.5264 51.4736C15.0837 54.0309 18.1197 56.0593 21.4609 57.4434C24.8022 58.8274 28.3834 59.54 32 59.54C35.6166 59.54 39.1978 58.8274 42.5391 57.4434C45.8803 56.0594 48.9163 54.0309 51.4736 51.4736C54.0309 48.9163 56.0594 45.8803 57.4434 42.5391C58.8274 39.1978 59.54 35.6166 59.54 32C59.54 28.3834 58.8274 24.8022 57.4434 21.4609C56.0593 18.1197 54.0309 15.0837 51.4736 12.5264C48.9163 9.96906 45.8803 7.94065 42.5391 6.55664C39.1978 5.17263 35.6166 4.45997 32 4.45996Z" />
|
|
66
|
+
</g>
|
|
67
|
+
</svg>
|
|
68
|
+
);
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
const IconInfo = (props: Props): JSX.Element => {
|
|
72
|
+
const {skinName} = useTheme();
|
|
73
|
+
|
|
74
|
+
switch (skinName) {
|
|
75
|
+
case O2_SKIN:
|
|
76
|
+
return <IconInfoO2 {...props} />;
|
|
77
|
+
case O2_NEW_SKIN:
|
|
78
|
+
return <IconInfoO2New {...props} />;
|
|
79
|
+
case VIVO_NEW_SKIN:
|
|
80
|
+
return <IconInfoVivo {...props} />;
|
|
81
|
+
default:
|
|
82
|
+
return <IconInfoDefault {...props} />;
|
|
83
|
+
}
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
export default IconInfo;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
|
|
3
|
+
type Props = {
|
|
4
|
+
role?: string;
|
|
5
|
+
size?: number | string;
|
|
6
|
+
};
|
|
7
|
+
|
|
8
|
+
const IconMastercard = ({role = 'presentation', size = 24}: Props): JSX.Element => (
|
|
9
|
+
<svg width={size} height={size} role={role} viewBox="0 0 20 20" fill="none">
|
|
10
|
+
<g clipPath="url(#clip0_10652_7684)">
|
|
11
|
+
<path
|
|
12
|
+
d="M19 -2H1C-0.656854 -2 -2 -0.656854 -2 1V19C-2 20.6569 -0.656854 22 1 22H19C20.6569 22 22 20.6569 22 19V1C22 -0.656854 20.6569 -2 19 -2Z"
|
|
13
|
+
fill="white"
|
|
14
|
+
/>
|
|
15
|
+
<path
|
|
16
|
+
d="M7.057 14.614C9.57376 14.614 11.614 12.5738 11.614 10.057C11.614 7.54024 9.57376 5.5 7.057 5.5C4.54024 5.5 2.5 7.54024 2.5 10.057C2.5 12.5738 4.54024 14.614 7.057 14.614Z"
|
|
17
|
+
fill="#EA021B"
|
|
18
|
+
/>
|
|
19
|
+
<path
|
|
20
|
+
d="M12.943 14.614C15.4597 14.614 17.5 12.5738 17.5 10.057C17.5 7.54024 15.4597 5.5 12.943 5.5C10.4262 5.5 8.38599 7.54024 8.38599 10.057C8.38599 12.5738 10.4262 14.614 12.943 14.614Z"
|
|
21
|
+
fill="#F79F19"
|
|
22
|
+
/>
|
|
23
|
+
<path
|
|
24
|
+
d="M9.9625 6.54474C11.0058 7.38024 11.671 8.64324 11.671 10.057C11.671 11.4707 11.0058 12.7345 9.9625 13.5692C8.9185 12.7337 8.2525 11.4707 8.2525 10.057C8.2525 8.65974 8.90275 7.40949 9.9265 6.57324L9.9625 6.54474Z"
|
|
25
|
+
fill="#FF5F00"
|
|
26
|
+
/>
|
|
27
|
+
</g>
|
|
28
|
+
<defs>
|
|
29
|
+
<clipPath id="clip0_10652_7684">
|
|
30
|
+
<rect width="20" height="20" fill="white" />
|
|
31
|
+
</clipPath>
|
|
32
|
+
</defs>
|
|
33
|
+
</svg>
|
|
34
|
+
);
|
|
35
|
+
|
|
36
|
+
export default IconMastercard;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import {useTheme} from '../hooks';
|
|
4
|
+
import {getAnimateCircleScaleInProps, getAnimateDrawLineProps} from '../utils/animation';
|
|
5
|
+
|
|
6
|
+
type Props = {
|
|
7
|
+
size?: number | string;
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
const IconSuccessVivoNew = ({size = 48}: Props): JSX.Element => {
|
|
11
|
+
const {platformOverrides} = useTheme();
|
|
12
|
+
const gradientId = React.useId();
|
|
13
|
+
|
|
14
|
+
return (
|
|
15
|
+
<svg role="presentation" width={size} height={size} viewBox="0 0 64 64" fill="none">
|
|
16
|
+
<circle
|
|
17
|
+
cx="32"
|
|
18
|
+
cy="32"
|
|
19
|
+
r="31"
|
|
20
|
+
stroke={`url(#${gradientId})`}
|
|
21
|
+
{...getAnimateCircleScaleInProps('31', platformOverrides)}
|
|
22
|
+
/>
|
|
23
|
+
|
|
24
|
+
<polyline
|
|
25
|
+
fill="none"
|
|
26
|
+
stroke="white"
|
|
27
|
+
strokeWidth="1.5"
|
|
28
|
+
strokeLinecap="round"
|
|
29
|
+
strokeLinejoin="round"
|
|
30
|
+
points="24,32.75 30,39 40.5,24.5"
|
|
31
|
+
{...getAnimateDrawLineProps('44', '0.4s', platformOverrides, '0.5 0 0.83 0.83')}
|
|
32
|
+
/>
|
|
33
|
+
|
|
34
|
+
<defs>
|
|
35
|
+
<linearGradient
|
|
36
|
+
id={gradientId}
|
|
37
|
+
x1="6.66663"
|
|
38
|
+
y1="6.66669"
|
|
39
|
+
x2="58.3441"
|
|
40
|
+
y2="7.98638"
|
|
41
|
+
gradientUnits="userSpaceOnUse"
|
|
42
|
+
>
|
|
43
|
+
<stop stopColor="#E5B9FF" />
|
|
44
|
+
<stop offset="1" stopColor="#FF6ACE" />
|
|
45
|
+
</linearGradient>
|
|
46
|
+
</defs>
|
|
47
|
+
</svg>
|
|
48
|
+
);
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
export default IconSuccessVivoNew;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import {useTheme} from '../hooks';
|
|
4
|
+
import {getAnimateSweepInProps} from '../utils/animation';
|
|
5
|
+
import {useThemeVariant} from '../theme-variant-context';
|
|
6
|
+
import {vars} from '../skins/skin-contract.css';
|
|
7
|
+
|
|
8
|
+
type Props = {
|
|
9
|
+
size?: number | string;
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
const IconSuccessVivo = ({size = 48}: Props): JSX.Element => {
|
|
13
|
+
const themeVariant = useThemeVariant();
|
|
14
|
+
const {platformOverrides} = useTheme();
|
|
15
|
+
|
|
16
|
+
const color =
|
|
17
|
+
themeVariant === 'brand' || themeVariant === 'media'
|
|
18
|
+
? vars.colors.neutralHighBrand
|
|
19
|
+
: themeVariant === 'negative'
|
|
20
|
+
? vars.colors.neutralHighNegative
|
|
21
|
+
: vars.colors.brand;
|
|
22
|
+
|
|
23
|
+
return (
|
|
24
|
+
<svg role="presentation" width={size} height={size} viewBox="0 0 64 64" overflow="visible">
|
|
25
|
+
<g fill={color} stroke={color}>
|
|
26
|
+
<path
|
|
27
|
+
fillRule="nonzero"
|
|
28
|
+
d="M14.8832276,0 C10.2293915,0.0191737965 6.86229932,3.79747692 6.87644677,7.70928648 C6.89025737,11.6228714 9.24614399,14.2258918 11.0573539,15.1980743 C12.084728,15.7491434 11.7559683,16.7408548 11.7559683,16.7408548 C11.7559683,16.7408548 11.5093985,17.7055808 10.4274557,17.44922 C9.3458498,17.1875332 4.10725261,15.8961425 4.10725261,15.8961425 C4.10725261,15.8961425 0.947319469,15.2651826 0.18436791,18.6252129 C-0.579931024,21.9873736 1.196584,23.2652716 2.5001701,23.5816393 C3.80375621,23.8972968 8.2116962,25.0470144 8.2116962,25.0470144 C8.2116962,25.0470144 9.52370341,25.7443725 9.57490369,27.1742406 C9.60656702,28.0203732 9.60825124,28.7209269 8.78163618,29.9800062 C7.95670533,31.2394406 2.82589821,37.6825463 2.82589821,37.6825463 C2.82589821,37.6825463 1.06218326,39.9379529 3.61781834,41.9710855 C6.17345343,44.0045731 7.61110343,43.5309094 9.12824861,41.6575584 C10.6440464,39.7845626 13.6392629,35.862456 13.6392629,35.862456 C13.6392629,35.862456 14.0525704,35.0099322 14.8956908,35.0610623 C15.7388112,35.1136127 15.985381,35.5961532 16.2710247,35.9650713 C16.5580157,36.3339893 20.7318492,41.7285725 21.0164823,42.0786718 C21.297747,42.4326769 22.0782145,43.0806802 22.9364929,43.2042447 C23.7937607,43.3263889 24.7338922,43.1396219 25.3358324,42.6712841 C25.9360883,42.2022363 26.698703,41.5641749 26.9664939,41.1388007 C27.2326007,40.7134265 27.6863295,40.1034157 27.6027922,39.0996319 C27.5182443,38.0986887 27.3144537,37.574605 26.5878813,36.7149798 C25.8613089,35.8564198 21.565538,30.4178079 20.7567756,29.3742563 C20.7567756,29.3742563 20.022119,28.4461025 20.1285616,27.1341177 C20.2353412,25.8192924 20.7874284,25.2334264 21.9495401,24.9067617 C23.1099675,24.5815173 27.6499503,23.3980679 27.6499503,23.3980679 C27.6499503,23.3980679 30.2487014,22.0733006 29.6595614,19.4472006 L29.3210332,18.1046798 C29.3210332,18.1046798 28.7551353,15.0407782 25.0208833,15.989526 C21.2835996,16.9411144 19.2079671,17.5014154 19.2079671,17.5014154 C19.2079671,17.5014154 18.0185711,17.6235596 17.8477912,16.777427 C17.6797061,15.9302293 17.9003389,15.4934928 18.4258155,15.257016 C18.9516289,15.0208942 22.2685313,13.3144263 22.6939652,8.70064277 C23.121757,4.09538091 19.5505374,0 14.9128698,0 L14.8832276,0"
|
|
29
|
+
{...getAnimateSweepInProps('0.2s', platformOverrides)}
|
|
30
|
+
/>
|
|
31
|
+
</g>
|
|
32
|
+
</svg>
|
|
33
|
+
);
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
export default IconSuccessVivo;
|
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import {O2_SKIN, O2_NEW_SKIN, VIVO_NEW_SKIN} from '../skins/constants';
|
|
4
|
+
import {
|
|
5
|
+
getAnimateDrawLineProps,
|
|
6
|
+
getAnimateFadeInProps,
|
|
7
|
+
getAnimateHopInProps,
|
|
8
|
+
mergeProperties,
|
|
9
|
+
} from '../utils/animation';
|
|
10
|
+
import {useTheme} from '../hooks';
|
|
11
|
+
import {vars} from '../skins/skin-contract.css';
|
|
12
|
+
import {useThemeVariant} from '../theme-variant-context';
|
|
13
|
+
|
|
14
|
+
type Props = {
|
|
15
|
+
size?: number | string;
|
|
16
|
+
color?: string;
|
|
17
|
+
skipAnimation?: boolean;
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
const IconSuccessO2 = ({size = 48, color, skipAnimation = false}: Props): JSX.Element => {
|
|
21
|
+
const {platformOverrides} = useTheme();
|
|
22
|
+
|
|
23
|
+
const themeVariant = useThemeVariant();
|
|
24
|
+
const defaultColor =
|
|
25
|
+
themeVariant === 'brand' || themeVariant === 'media'
|
|
26
|
+
? vars.colors.neutralHighBrand
|
|
27
|
+
: themeVariant === 'negative'
|
|
28
|
+
? vars.colors.neutralHighNegative
|
|
29
|
+
: vars.colors.brand;
|
|
30
|
+
|
|
31
|
+
return (
|
|
32
|
+
<svg role="presentation" width={size} height={size} viewBox="0 0 64 64">
|
|
33
|
+
<g
|
|
34
|
+
stroke={color ? undefined : defaultColor}
|
|
35
|
+
fill={color ? undefined : defaultColor}
|
|
36
|
+
strokeLinecap="round"
|
|
37
|
+
strokeLinejoin="round"
|
|
38
|
+
>
|
|
39
|
+
<path
|
|
40
|
+
fill="none"
|
|
41
|
+
strokeWidth="2"
|
|
42
|
+
stroke={color ? color : undefined}
|
|
43
|
+
d="M48.24,57.99c-4.71,2.95-10.27,4.65-16.24,4.65C15.08,62.64,1.36,48.92,1.36,32S15.08,1.36,32,1.36 S62.64,15.08,62.64,32c0,6.11-1.79,11.8-4.87,16.58"
|
|
44
|
+
{...(!skipAnimation && getAnimateDrawLineProps('202', '0.3s', platformOverrides))}
|
|
45
|
+
/>
|
|
46
|
+
<polyline
|
|
47
|
+
fill="none"
|
|
48
|
+
strokeWidth="2"
|
|
49
|
+
stroke={color ? color : undefined}
|
|
50
|
+
points="16.92,30.08 28.68,43.12 50.26,20.22"
|
|
51
|
+
{...(!skipAnimation &&
|
|
52
|
+
mergeProperties(
|
|
53
|
+
getAnimateDrawLineProps('50', '0.6s', platformOverrides),
|
|
54
|
+
getAnimateHopInProps('0.6', platformOverrides)
|
|
55
|
+
))}
|
|
56
|
+
/>
|
|
57
|
+
<circle
|
|
58
|
+
stroke={color ? color : undefined}
|
|
59
|
+
cx="53.64"
|
|
60
|
+
cy="53.54"
|
|
61
|
+
r="1.06"
|
|
62
|
+
{...(!skipAnimation && getAnimateFadeInProps('0.2s', platformOverrides))}
|
|
63
|
+
/>
|
|
64
|
+
</g>
|
|
65
|
+
</svg>
|
|
66
|
+
);
|
|
67
|
+
};
|
|
68
|
+
|
|
69
|
+
const IconSuccessO2New = ({size = 48, color, skipAnimation = false}: Props): JSX.Element => {
|
|
70
|
+
const {platformOverrides} = useTheme();
|
|
71
|
+
|
|
72
|
+
const themeVariant = useThemeVariant();
|
|
73
|
+
const defaultColor =
|
|
74
|
+
themeVariant === 'brand' || themeVariant === 'media'
|
|
75
|
+
? vars.colors.neutralHighBrand
|
|
76
|
+
: themeVariant === 'negative'
|
|
77
|
+
? vars.colors.neutralHighNegative
|
|
78
|
+
: vars.colors.brand;
|
|
79
|
+
|
|
80
|
+
return (
|
|
81
|
+
<svg role="presentation" width={size} height={size} viewBox="0 0 64 64">
|
|
82
|
+
<g
|
|
83
|
+
stroke={color ? undefined : defaultColor}
|
|
84
|
+
fill={color ? undefined : defaultColor}
|
|
85
|
+
strokeLinecap="round"
|
|
86
|
+
strokeWidth="4"
|
|
87
|
+
>
|
|
88
|
+
<circle
|
|
89
|
+
stroke={color ? color : undefined}
|
|
90
|
+
fill="none"
|
|
91
|
+
cx="32"
|
|
92
|
+
cy="32"
|
|
93
|
+
r="30"
|
|
94
|
+
{...(!skipAnimation && getAnimateDrawLineProps('202', '0.3s', platformOverrides))}
|
|
95
|
+
/>
|
|
96
|
+
<polyline
|
|
97
|
+
fill="none"
|
|
98
|
+
stroke={color ? color : undefined}
|
|
99
|
+
points="18,32.67 27.33,42 49.33,20.67"
|
|
100
|
+
{...(!skipAnimation &&
|
|
101
|
+
mergeProperties(
|
|
102
|
+
getAnimateDrawLineProps('50', '0.6s', platformOverrides),
|
|
103
|
+
getAnimateHopInProps('0.6', platformOverrides)
|
|
104
|
+
))}
|
|
105
|
+
/>
|
|
106
|
+
</g>
|
|
107
|
+
</svg>
|
|
108
|
+
);
|
|
109
|
+
};
|
|
110
|
+
|
|
111
|
+
const IconSuccessVivo = ({size = 48, color, skipAnimation = false}: Props): JSX.Element => {
|
|
112
|
+
const {platformOverrides} = useTheme();
|
|
113
|
+
|
|
114
|
+
const themeVariant = useThemeVariant();
|
|
115
|
+
const defaultColor =
|
|
116
|
+
themeVariant === 'brand' || themeVariant === 'media'
|
|
117
|
+
? vars.colors.neutralHighBrand
|
|
118
|
+
: themeVariant === 'negative'
|
|
119
|
+
? vars.colors.neutralHighNegative
|
|
120
|
+
: vars.colors.brand;
|
|
121
|
+
|
|
122
|
+
return (
|
|
123
|
+
<svg role="presentation" width={size} height={size} viewBox="0 0 64 64">
|
|
124
|
+
<g stroke={color ? undefined : defaultColor}>
|
|
125
|
+
<path
|
|
126
|
+
vectorEffect="non-scaling-stroke"
|
|
127
|
+
fill="none"
|
|
128
|
+
stroke={color ? color : undefined}
|
|
129
|
+
strokeWidth="2"
|
|
130
|
+
strokeMiterlimit="10"
|
|
131
|
+
d="M61.4,32c0,19.5-10,29.4-29.4,29.4C12.5,61.4,2.6,51.5,2.6,32S12.5,2.6,32,2.6S61.4,12.5,61.4,32z"
|
|
132
|
+
transform="rotate(90 32 32)"
|
|
133
|
+
{...(!skipAnimation && getAnimateDrawLineProps('202', '0.2s', platformOverrides))}
|
|
134
|
+
/>
|
|
135
|
+
<polyline
|
|
136
|
+
vectorEffect="non-scaling-stroke"
|
|
137
|
+
fill="none"
|
|
138
|
+
stroke={color ? color : undefined}
|
|
139
|
+
strokeWidth="2"
|
|
140
|
+
strokeMiterlimit="10"
|
|
141
|
+
strokeLinecap="round"
|
|
142
|
+
strokeLinejoin="round"
|
|
143
|
+
points="20,34.9 27.4,44.3 45.6,21"
|
|
144
|
+
{...(!skipAnimation &&
|
|
145
|
+
mergeProperties(
|
|
146
|
+
getAnimateDrawLineProps('44', '0.6s', platformOverrides),
|
|
147
|
+
getAnimateHopInProps('0.6s', platformOverrides)
|
|
148
|
+
))}
|
|
149
|
+
/>
|
|
150
|
+
</g>
|
|
151
|
+
</svg>
|
|
152
|
+
);
|
|
153
|
+
};
|
|
154
|
+
|
|
155
|
+
const IconSuccessDefault = ({size = 48, color, skipAnimation = false}: Props): JSX.Element => {
|
|
156
|
+
const {platformOverrides} = useTheme();
|
|
157
|
+
|
|
158
|
+
const themeVariant = useThemeVariant();
|
|
159
|
+
const defaultColor =
|
|
160
|
+
themeVariant === 'brand' || themeVariant === 'media'
|
|
161
|
+
? vars.colors.neutralHighBrand
|
|
162
|
+
: themeVariant === 'negative'
|
|
163
|
+
? vars.colors.neutralHighNegative
|
|
164
|
+
: vars.colors.brand;
|
|
165
|
+
|
|
166
|
+
return (
|
|
167
|
+
<svg role="presentation" width={size} height={size} viewBox="0 0 64 64">
|
|
168
|
+
<g stroke={color ? undefined : defaultColor}>
|
|
169
|
+
<path
|
|
170
|
+
fill="none"
|
|
171
|
+
stroke={color ? color : undefined}
|
|
172
|
+
strokeWidth="4"
|
|
173
|
+
strokeMiterlimit="10"
|
|
174
|
+
d="M4.71002 43.3039C3.22557 39.7201 2.46154 35.879 2.46154 32C2.46154 28.121 3.22557 24.2799 4.71002 20.6961C6.19447 17.1124 8.37025 13.8561 11.1132 11.1132C13.8561 8.37026 17.1124 6.19447 20.6961 4.71002C24.2799 3.22558 28.121 2.46154 32 2.46154C35.879 2.46154 39.7201 3.22558 43.3039 4.71002C46.8877 6.19447 50.1439 8.37026 52.8868 11.1132C55.6297 13.8561 57.8055 17.1124 59.29 20.6961C60.7744 24.2799 61.5385 28.121 61.5385 32C61.5385 35.879 60.7744 39.7201 59.29 43.3039C57.8055 46.8877 55.6297 50.1439 52.8868 52.8868C50.1439 55.6297 46.8877 57.8055 43.3039 59.29C39.7201 60.7744 35.879 61.5385 32 61.5385C28.121 61.5385 24.2799 60.7744 20.6961 59.29C17.1124 57.8055 13.8561 55.6297 11.1132 52.8868C8.37025 50.1439 6.19447 46.8877 4.71002 43.3039Z"
|
|
175
|
+
{...(!skipAnimation && getAnimateDrawLineProps('202', '0.2s', platformOverrides))}
|
|
176
|
+
/>
|
|
177
|
+
<path
|
|
178
|
+
fill="none"
|
|
179
|
+
stroke={color ? color : undefined}
|
|
180
|
+
strokeWidth="4"
|
|
181
|
+
strokeMiterlimit="10"
|
|
182
|
+
strokeLinecap="round"
|
|
183
|
+
strokeLinejoin="round"
|
|
184
|
+
d="M18.8718 32L28.7179 41.8462L45.1282 23.7949"
|
|
185
|
+
{...(!skipAnimation &&
|
|
186
|
+
mergeProperties(
|
|
187
|
+
getAnimateDrawLineProps('44', '0.6s', platformOverrides),
|
|
188
|
+
getAnimateHopInProps('0.6s', platformOverrides)
|
|
189
|
+
))}
|
|
190
|
+
/>
|
|
191
|
+
</g>
|
|
192
|
+
</svg>
|
|
193
|
+
);
|
|
194
|
+
};
|
|
195
|
+
|
|
196
|
+
const IconSuccess = ({size, color, skipAnimation}: Props): JSX.Element => {
|
|
197
|
+
const {skinName} = useTheme();
|
|
198
|
+
|
|
199
|
+
switch (skinName) {
|
|
200
|
+
case O2_SKIN:
|
|
201
|
+
return <IconSuccessO2 size={size} color={color} skipAnimation={skipAnimation} />;
|
|
202
|
+
case O2_NEW_SKIN:
|
|
203
|
+
return <IconSuccessO2New size={size} color={color} skipAnimation={skipAnimation} />;
|
|
204
|
+
case VIVO_NEW_SKIN:
|
|
205
|
+
return <IconSuccessVivo size={size} color={color} skipAnimation={skipAnimation} />;
|
|
206
|
+
default:
|
|
207
|
+
return <IconSuccessDefault size={size} color={color} skipAnimation={skipAnimation} />;
|
|
208
|
+
}
|
|
209
|
+
};
|
|
210
|
+
|
|
211
|
+
export default IconSuccess;
|