@automattic/onboarding 1.0.0
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/README.md +20 -0
- package/dist/cjs/action-buttons/index.js +50 -0
- package/dist/cjs/action-buttons/index.js.map +1 -0
- package/dist/cjs/action-buttons/style.scss +108 -0
- package/dist/cjs/cart/create-cart-manager-client.js +30 -0
- package/dist/cjs/cart/create-cart-manager-client.js.map +1 -0
- package/dist/cjs/cart/index.js +239 -0
- package/dist/cjs/cart/index.js.map +1 -0
- package/dist/cjs/confetti/index.js +8 -0
- package/dist/cjs/confetti/index.js.map +1 -0
- package/dist/cjs/feature-icon/index.js +19 -0
- package/dist/cjs/feature-icon/index.js.map +1 -0
- package/dist/cjs/flow-progress/index.js +14 -0
- package/dist/cjs/flow-progress/index.js.map +1 -0
- package/dist/cjs/flow-progress/style.scss +5 -0
- package/dist/cjs/flow-progress/use-flow-progress.js +92 -0
- package/dist/cjs/flow-progress/use-flow-progress.js.map +1 -0
- package/dist/cjs/hooray/index.js +12 -0
- package/dist/cjs/hooray/index.js.map +1 -0
- package/dist/cjs/hooray/style.scss +66 -0
- package/dist/cjs/index.js +54 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/intent-screen/index.js +11 -0
- package/dist/cjs/intent-screen/index.js.map +1 -0
- package/dist/cjs/mshots-image/index.js +234 -0
- package/dist/cjs/mshots-image/index.js.map +1 -0
- package/dist/cjs/mshots-image/style.scss +43 -0
- package/dist/cjs/navigator/hooks/index.js +6 -0
- package/dist/cjs/navigator/hooks/index.js.map +1 -0
- package/dist/cjs/navigator/hooks/use-navigator-listener.js +16 -0
- package/dist/cjs/navigator/hooks/use-navigator-listener.js.map +1 -0
- package/dist/cjs/navigator/index.js +18 -0
- package/dist/cjs/navigator/index.js.map +1 -0
- package/dist/cjs/navigator/navigator-buttons/index.js +23 -0
- package/dist/cjs/navigator/navigator-buttons/index.js.map +1 -0
- package/dist/cjs/navigator/navigator-buttons/style.scss +47 -0
- package/dist/cjs/navigator/navigator-header/index.js +13 -0
- package/dist/cjs/navigator/navigator-header/index.js.map +1 -0
- package/dist/cjs/navigator/navigator-header/style.scss +45 -0
- package/dist/cjs/navigator/navigator-item-group/index.js +10 -0
- package/dist/cjs/navigator/navigator-item-group/index.js.map +1 -0
- package/dist/cjs/navigator/navigator-item-group/style.scss +28 -0
- package/dist/cjs/navigator/navigator-listener/index.js +9 -0
- package/dist/cjs/navigator/navigator-listener/index.js.map +1 -0
- package/dist/cjs/navigator/navigator-screen/index.js +16 -0
- package/dist/cjs/navigator/navigator-screen/index.js.map +1 -0
- package/dist/cjs/navigator/navigator-screens/hooks/index.js +8 -0
- package/dist/cjs/navigator/navigator-screens/hooks/index.js.map +1 -0
- package/dist/cjs/navigator/navigator-screens/hooks/use-navigator-buttons.js +17 -0
- package/dist/cjs/navigator/navigator-screens/hooks/use-navigator-buttons.js.map +1 -0
- package/dist/cjs/navigator/navigator-screens/hooks/use-navigator-screens.js +14 -0
- package/dist/cjs/navigator/navigator-screens/hooks/use-navigator-screens.js.map +1 -0
- package/dist/cjs/navigator/navigator-screens/index.js +9 -0
- package/dist/cjs/navigator/navigator-screens/index.js.map +1 -0
- package/dist/cjs/navigator/navigator-screens/navigator-screens.js +18 -0
- package/dist/cjs/navigator/navigator-screens/navigator-screens.js.map +1 -0
- package/dist/cjs/navigator/navigator-screens/navigator-screens.scss +60 -0
- package/dist/cjs/navigator/navigator-screens/types.js +3 -0
- package/dist/cjs/navigator/navigator-screens/types.js.map +1 -0
- package/dist/cjs/notice/index.js +12 -0
- package/dist/cjs/notice/index.js.map +1 -0
- package/dist/cjs/notice/style.scss +19 -0
- package/dist/cjs/progress/index.js +11 -0
- package/dist/cjs/progress/index.js.map +1 -0
- package/dist/cjs/progress/style.scss +34 -0
- package/dist/cjs/select-card-checkbox/index.js +17 -0
- package/dist/cjs/select-card-checkbox/index.js.map +1 -0
- package/dist/cjs/select-card-checkbox/style.scss +30 -0
- package/dist/cjs/select-card-radio/index.js +21 -0
- package/dist/cjs/select-card-radio/index.js.map +1 -0
- package/dist/cjs/select-card-radio/style.scss +44 -0
- package/dist/cjs/select-items/index.js +13 -0
- package/dist/cjs/select-items/index.js.map +1 -0
- package/dist/cjs/select-items/style.scss +96 -0
- package/dist/cjs/select-items-alt/index.js +14 -0
- package/dist/cjs/select-items-alt/index.js.map +1 -0
- package/dist/cjs/select-items-alt/style.scss +72 -0
- package/dist/cjs/sensei-logo/index.js +8 -0
- package/dist/cjs/sensei-logo/index.js.map +1 -0
- package/dist/cjs/setup-tailored-site-after-creation.js +109 -0
- package/dist/cjs/setup-tailored-site-after-creation.js.map +1 -0
- package/dist/cjs/step-container/index.js +65 -0
- package/dist/cjs/step-container/index.js.map +1 -0
- package/dist/cjs/step-container/style.scss +304 -0
- package/dist/cjs/step-navigation-link/index.js +35 -0
- package/dist/cjs/step-navigation-link/index.js.map +1 -0
- package/dist/cjs/step-navigation-link/style.scss +42 -0
- package/dist/cjs/titles/index.js +13 -0
- package/dist/cjs/titles/index.js.map +1 -0
- package/dist/cjs/titles/styles.scss +29 -0
- package/dist/cjs/upload-and-set-site-logo.js +32 -0
- package/dist/cjs/upload-and-set-site-logo.js.map +1 -0
- package/dist/cjs/utils/contrastChecker.js +38 -0
- package/dist/cjs/utils/contrastChecker.js.map +1 -0
- package/dist/cjs/utils/domain-suggester.js +113 -0
- package/dist/cjs/utils/domain-suggester.js.map +1 -0
- package/dist/cjs/utils/flows.js +218 -0
- package/dist/cjs/utils/flows.js.map +1 -0
- package/dist/cjs/utils/index.js +13 -0
- package/dist/cjs/utils/index.js.map +1 -0
- package/dist/cjs/utils/is-domain.js +22 -0
- package/dist/cjs/utils/is-domain.js.map +1 -0
- package/dist/cjs/utils/use-data-loss-warning.js +20 -0
- package/dist/cjs/utils/use-data-loss-warning.js.map +1 -0
- package/dist/cjs/videopress-logo/index.js +8 -0
- package/dist/cjs/videopress-logo/index.js.map +1 -0
- package/dist/esm/action-buttons/index.js +42 -0
- package/dist/esm/action-buttons/index.js.map +1 -0
- package/dist/esm/action-buttons/style.scss +108 -0
- package/dist/esm/cart/create-cart-manager-client.js +27 -0
- package/dist/esm/cart/create-cart-manager-client.js.map +1 -0
- package/dist/esm/cart/index.js +229 -0
- package/dist/esm/cart/index.js.map +1 -0
- package/dist/esm/confetti/index.js +6 -0
- package/dist/esm/confetti/index.js.map +1 -0
- package/dist/esm/feature-icon/index.js +16 -0
- package/dist/esm/feature-icon/index.js.map +1 -0
- package/dist/esm/flow-progress/index.js +12 -0
- package/dist/esm/flow-progress/index.js.map +1 -0
- package/dist/esm/flow-progress/style.scss +5 -0
- package/dist/esm/flow-progress/use-flow-progress.js +88 -0
- package/dist/esm/flow-progress/use-flow-progress.js.map +1 -0
- package/dist/esm/hooray/index.js +9 -0
- package/dist/esm/hooray/index.js.map +1 -0
- package/dist/esm/hooray/style.scss +66 -0
- package/dist/esm/index.js +22 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/intent-screen/index.js +8 -0
- package/dist/esm/intent-screen/index.js.map +1 -0
- package/dist/esm/mshots-image/index.js +229 -0
- package/dist/esm/mshots-image/index.js.map +1 -0
- package/dist/esm/mshots-image/style.scss +43 -0
- package/dist/esm/navigator/hooks/index.js +2 -0
- package/dist/esm/navigator/hooks/index.js.map +1 -0
- package/dist/esm/navigator/hooks/use-navigator-listener.js +14 -0
- package/dist/esm/navigator/hooks/use-navigator-listener.js.map +1 -0
- package/dist/esm/navigator/index.js +8 -0
- package/dist/esm/navigator/index.js.map +1 -0
- package/dist/esm/navigator/navigator-buttons/index.js +17 -0
- package/dist/esm/navigator/navigator-buttons/index.js.map +1 -0
- package/dist/esm/navigator/navigator-buttons/style.scss +47 -0
- package/dist/esm/navigator/navigator-header/index.js +11 -0
- package/dist/esm/navigator/navigator-header/index.js.map +1 -0
- package/dist/esm/navigator/navigator-header/style.scss +45 -0
- package/dist/esm/navigator/navigator-item-group/index.js +8 -0
- package/dist/esm/navigator/navigator-item-group/index.js.map +1 -0
- package/dist/esm/navigator/navigator-item-group/style.scss +28 -0
- package/dist/esm/navigator/navigator-listener/index.js +7 -0
- package/dist/esm/navigator/navigator-listener/index.js.map +1 -0
- package/dist/esm/navigator/navigator-screen/index.js +14 -0
- package/dist/esm/navigator/navigator-screen/index.js.map +1 -0
- package/dist/esm/navigator/navigator-screens/hooks/index.js +3 -0
- package/dist/esm/navigator/navigator-screens/hooks/index.js.map +1 -0
- package/dist/esm/navigator/navigator-screens/hooks/use-navigator-buttons.js +14 -0
- package/dist/esm/navigator/navigator-screens/hooks/use-navigator-buttons.js.map +1 -0
- package/dist/esm/navigator/navigator-screens/hooks/use-navigator-screens.js +11 -0
- package/dist/esm/navigator/navigator-screens/hooks/use-navigator-screens.js.map +1 -0
- package/dist/esm/navigator/navigator-screens/index.js +4 -0
- package/dist/esm/navigator/navigator-screens/index.js.map +1 -0
- package/dist/esm/navigator/navigator-screens/navigator-screens.js +15 -0
- package/dist/esm/navigator/navigator-screens/navigator-screens.js.map +1 -0
- package/dist/esm/navigator/navigator-screens/navigator-screens.scss +60 -0
- package/dist/esm/navigator/navigator-screens/types.js +2 -0
- package/dist/esm/navigator/navigator-screens/types.js.map +1 -0
- package/dist/esm/notice/index.js +9 -0
- package/dist/esm/notice/index.js.map +1 -0
- package/dist/esm/notice/style.scss +19 -0
- package/dist/esm/progress/index.js +8 -0
- package/dist/esm/progress/index.js.map +1 -0
- package/dist/esm/progress/style.scss +34 -0
- package/dist/esm/select-card-checkbox/index.js +14 -0
- package/dist/esm/select-card-checkbox/index.js.map +1 -0
- package/dist/esm/select-card-checkbox/style.scss +30 -0
- package/dist/esm/select-card-radio/index.js +15 -0
- package/dist/esm/select-card-radio/index.js.map +1 -0
- package/dist/esm/select-card-radio/style.scss +44 -0
- package/dist/esm/select-items/index.js +10 -0
- package/dist/esm/select-items/index.js.map +1 -0
- package/dist/esm/select-items/style.scss +96 -0
- package/dist/esm/select-items-alt/index.js +11 -0
- package/dist/esm/select-items-alt/index.js.map +1 -0
- package/dist/esm/select-items-alt/style.scss +72 -0
- package/dist/esm/sensei-logo/index.js +6 -0
- package/dist/esm/sensei-logo/index.js.map +1 -0
- package/dist/esm/setup-tailored-site-after-creation.js +103 -0
- package/dist/esm/setup-tailored-site-after-creation.js.map +1 -0
- package/dist/esm/step-container/index.js +62 -0
- package/dist/esm/step-container/index.js.map +1 -0
- package/dist/esm/step-container/style.scss +304 -0
- package/dist/esm/step-navigation-link/index.js +32 -0
- package/dist/esm/step-navigation-link/index.js.map +1 -0
- package/dist/esm/step-navigation-link/style.scss +42 -0
- package/dist/esm/titles/index.js +7 -0
- package/dist/esm/titles/index.js.map +1 -0
- package/dist/esm/titles/styles.scss +29 -0
- package/dist/esm/upload-and-set-site-logo.js +27 -0
- package/dist/esm/upload-and-set-site-logo.js.map +1 -0
- package/dist/esm/utils/contrastChecker.js +33 -0
- package/dist/esm/utils/contrastChecker.js.map +1 -0
- package/dist/esm/utils/domain-suggester.js +108 -0
- package/dist/esm/utils/domain-suggester.js.map +1 -0
- package/dist/esm/utils/flows.js +179 -0
- package/dist/esm/utils/flows.js.map +1 -0
- package/dist/esm/utils/index.js +6 -0
- package/dist/esm/utils/index.js.map +1 -0
- package/dist/esm/utils/is-domain.js +18 -0
- package/dist/esm/utils/is-domain.js.map +1 -0
- package/dist/esm/utils/use-data-loss-warning.js +16 -0
- package/dist/esm/utils/use-data-loss-warning.js.map +1 -0
- package/dist/esm/videopress-logo/index.js +6 -0
- package/dist/esm/videopress-logo/index.js.map +1 -0
- package/dist/styles/base-styles.scss +7 -0
- package/dist/styles/mixins.scss +262 -0
- package/dist/styles/variables.scss +26 -0
- package/dist/styles/z-index.scss +41 -0
- package/dist/tsconfig-cjs.tsbuildinfo +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/types/action-buttons/index.d.ts +17 -0
- package/dist/types/action-buttons/index.d.ts.map +1 -0
- package/dist/types/cart/create-cart-manager-client.d.ts +3 -0
- package/dist/types/cart/create-cart-manager-client.d.ts.map +1 -0
- package/dist/types/cart/index.d.ts +47 -0
- package/dist/types/cart/index.d.ts.map +1 -0
- package/dist/types/confetti/index.d.ts +6 -0
- package/dist/types/confetti/index.d.ts.map +1 -0
- package/dist/types/feature-icon/index.d.ts +9 -0
- package/dist/types/feature-icon/index.d.ts.map +1 -0
- package/dist/types/flow-progress/index.d.ts +9 -0
- package/dist/types/flow-progress/index.d.ts.map +1 -0
- package/dist/types/flow-progress/use-flow-progress.d.ts +11 -0
- package/dist/types/flow-progress/use-flow-progress.d.ts.map +1 -0
- package/dist/types/hooray/index.d.ts +10 -0
- package/dist/types/hooray/index.d.ts.map +1 -0
- package/dist/types/index.d.ts +25 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/intent-screen/index.d.ts +12 -0
- package/dist/types/intent-screen/index.d.ts.map +1 -0
- package/dist/types/mshots-image/index.d.ts +21 -0
- package/dist/types/mshots-image/index.d.ts.map +1 -0
- package/dist/types/navigator/hooks/index.d.ts +3 -0
- package/dist/types/navigator/hooks/index.d.ts.map +1 -0
- package/dist/types/navigator/hooks/use-navigator-listener.d.ts +4 -0
- package/dist/types/navigator/hooks/use-navigator-listener.d.ts.map +1 -0
- package/dist/types/navigator/index.d.ts +8 -0
- package/dist/types/navigator/index.d.ts.map +1 -0
- package/dist/types/navigator/navigator-buttons/index.d.ts +17 -0
- package/dist/types/navigator/navigator-buttons/index.d.ts.map +1 -0
- package/dist/types/navigator/navigator-header/index.d.ts +12 -0
- package/dist/types/navigator/navigator-header/index.d.ts.map +1 -0
- package/dist/types/navigator/navigator-item-group/index.d.ts +9 -0
- package/dist/types/navigator/navigator-item-group/index.d.ts.map +1 -0
- package/dist/types/navigator/navigator-listener/index.d.ts +7 -0
- package/dist/types/navigator/navigator-listener/index.d.ts.map +1 -0
- package/dist/types/navigator/navigator-screen/index.d.ts +11 -0
- package/dist/types/navigator/navigator-screen/index.d.ts.map +1 -0
- package/dist/types/navigator/navigator-screens/hooks/index.d.ts +3 -0
- package/dist/types/navigator/navigator-screens/hooks/index.d.ts.map +1 -0
- package/dist/types/navigator/navigator-screens/hooks/use-navigator-buttons.d.ts +4 -0
- package/dist/types/navigator/navigator-screens/hooks/use-navigator-buttons.d.ts.map +1 -0
- package/dist/types/navigator/navigator-screens/hooks/use-navigator-screens.d.ts +4 -0
- package/dist/types/navigator/navigator-screens/hooks/use-navigator-screens.d.ts.map +1 -0
- package/dist/types/navigator/navigator-screens/index.d.ts +4 -0
- package/dist/types/navigator/navigator-screens/index.d.ts.map +1 -0
- package/dist/types/navigator/navigator-screens/navigator-screens.d.ts +12 -0
- package/dist/types/navigator/navigator-screens/navigator-screens.d.ts.map +1 -0
- package/dist/types/navigator/navigator-screens/types.d.ts +17 -0
- package/dist/types/navigator/navigator-screens/types.d.ts.map +1 -0
- package/dist/types/notice/index.d.ts +7 -0
- package/dist/types/notice/index.d.ts.map +1 -0
- package/dist/types/progress/index.d.ts +10 -0
- package/dist/types/progress/index.d.ts.map +1 -0
- package/dist/types/select-card-checkbox/index.d.ts +11 -0
- package/dist/types/select-card-checkbox/index.d.ts.map +1 -0
- package/dist/types/select-card-radio/index.d.ts +22 -0
- package/dist/types/select-card-radio/index.d.ts.map +1 -0
- package/dist/types/select-items/index.d.ts +25 -0
- package/dist/types/select-items/index.d.ts.map +1 -0
- package/dist/types/select-items-alt/index.d.ts +19 -0
- package/dist/types/select-items-alt/index.d.ts.map +1 -0
- package/dist/types/sensei-logo/index.d.ts +8 -0
- package/dist/types/sensei-logo/index.d.ts.map +1 -0
- package/dist/types/setup-tailored-site-after-creation.d.ts +8 -0
- package/dist/types/setup-tailored-site-after-creation.d.ts.map +1 -0
- package/dist/types/step-container/index.d.ts +45 -0
- package/dist/types/step-container/index.d.ts.map +1 -0
- package/dist/types/step-navigation-link/index.d.ts +18 -0
- package/dist/types/step-navigation-link/index.d.ts.map +1 -0
- package/dist/types/titles/index.d.ts +12 -0
- package/dist/types/titles/index.d.ts.map +1 -0
- package/dist/types/upload-and-set-site-logo.d.ts +13 -0
- package/dist/types/upload-and-set-site-logo.d.ts.map +1 -0
- package/dist/types/utils/contrastChecker.d.ts +17 -0
- package/dist/types/utils/contrastChecker.d.ts.map +1 -0
- package/dist/types/utils/domain-suggester.d.ts +15 -0
- package/dist/types/utils/domain-suggester.d.ts.map +1 -0
- package/dist/types/utils/flows.d.ts +89 -0
- package/dist/types/utils/flows.d.ts.map +1 -0
- package/dist/types/utils/index.d.ts +6 -0
- package/dist/types/utils/index.d.ts.map +1 -0
- package/dist/types/utils/is-domain.d.ts +2 -0
- package/dist/types/utils/is-domain.d.ts.map +1 -0
- package/dist/types/utils/use-data-loss-warning.d.ts +2 -0
- package/dist/types/utils/use-data-loss-warning.d.ts.map +1 -0
- package/dist/types/videopress-logo/index.d.ts +8 -0
- package/dist/types/videopress-logo/index.d.ts.map +1 -0
- package/jest.config.js +5 -0
- package/package.json +63 -0
- package/src/action-buttons/index.tsx +113 -0
- package/src/action-buttons/style.scss +108 -0
- package/src/cart/create-cart-manager-client.ts +34 -0
- package/src/cart/index.tsx +375 -0
- package/src/cart/test/index.ts +172 -0
- package/src/confetti/index.tsx +95 -0
- package/src/feature-icon/index.tsx +102 -0
- package/src/flow-progress/index.tsx +22 -0
- package/src/flow-progress/style.scss +5 -0
- package/src/flow-progress/use-flow-progress.ts +108 -0
- package/src/hooray/index.tsx +34 -0
- package/src/hooray/style.scss +66 -0
- package/src/index.ts +36 -0
- package/src/intent-screen/README.md +12 -0
- package/src/intent-screen/index.tsx +26 -0
- package/src/intent-screen/test/index.tsx +197 -0
- package/src/mshots-image/index.tsx +368 -0
- package/src/mshots-image/style.scss +43 -0
- package/src/mshots-image/test/mshots-image.tsx +5 -0
- package/src/navigator/hooks/index.tsx +2 -0
- package/src/navigator/hooks/use-navigator-listener.tsx +18 -0
- package/src/navigator/index.ts +7 -0
- package/src/navigator/navigator-buttons/index.tsx +58 -0
- package/src/navigator/navigator-buttons/style.scss +47 -0
- package/src/navigator/navigator-header/index.tsx +40 -0
- package/src/navigator/navigator-header/style.scss +45 -0
- package/src/navigator/navigator-item-group/index.tsx +23 -0
- package/src/navigator/navigator-item-group/style.scss +28 -0
- package/src/navigator/navigator-listener/index.tsx +12 -0
- package/src/navigator/navigator-screen/index.tsx +24 -0
- package/src/navigator/navigator-screens/hooks/index.tsx +2 -0
- package/src/navigator/navigator-screens/hooks/use-navigator-buttons.tsx +32 -0
- package/src/navigator/navigator-screens/hooks/use-navigator-screens.tsx +57 -0
- package/src/navigator/navigator-screens/index.ts +3 -0
- package/src/navigator/navigator-screens/navigator-screens.scss +60 -0
- package/src/navigator/navigator-screens/navigator-screens.tsx +41 -0
- package/src/navigator/navigator-screens/types.ts +15 -0
- package/src/notice/index.tsx +16 -0
- package/src/notice/style.scss +19 -0
- package/src/progress/index.tsx +23 -0
- package/src/progress/style.scss +34 -0
- package/src/select-card-checkbox/index.tsx +38 -0
- package/src/select-card-checkbox/style.scss +30 -0
- package/src/select-card-radio/index.tsx +64 -0
- package/src/select-card-radio/style.scss +44 -0
- package/src/select-card-radio/test/index.tsx +50 -0
- package/src/select-items/README.md +13 -0
- package/src/select-items/index.tsx +90 -0
- package/src/select-items/style.scss +96 -0
- package/src/select-items-alt/README.md +13 -0
- package/src/select-items-alt/index.tsx +61 -0
- package/src/select-items-alt/style.scss +72 -0
- package/src/sensei-logo/index.tsx +30 -0
- package/src/setup-tailored-site-after-creation.ts +149 -0
- package/src/step-container/index.tsx +251 -0
- package/src/step-container/style.scss +304 -0
- package/src/step-navigation-link/index.tsx +71 -0
- package/src/step-navigation-link/style.scss +42 -0
- package/src/titles/index.tsx +36 -0
- package/src/titles/styles.scss +29 -0
- package/src/types.d.ts +1 -0
- package/src/upload-and-set-site-logo.ts +38 -0
- package/src/utils/contrastChecker.ts +52 -0
- package/src/utils/domain-suggester.ts +126 -0
- package/src/utils/flows.ts +232 -0
- package/src/utils/index.ts +5 -0
- package/src/utils/is-domain.ts +18 -0
- package/src/utils/test/domain-suggester.ts +87 -0
- package/src/utils/use-data-loss-warning.ts +17 -0
- package/src/videopress-logo/index.tsx +36 -0
- package/styles/base-styles.scss +7 -0
- package/styles/mixins.scss +262 -0
- package/styles/variables.scss +26 -0
- package/styles/z-index.scss +41 -0
- package/tsconfig-cjs.json +7 -0
- package/tsconfig.json +15 -0
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
@import "@wordpress/base-styles/breakpoints";
|
|
2
|
+
@import "@wordpress/base-styles/mixins";
|
|
3
|
+
|
|
4
|
+
.onboarding-hooray {
|
|
5
|
+
text-align: center;
|
|
6
|
+
|
|
7
|
+
svg {
|
|
8
|
+
max-width: 350px;
|
|
9
|
+
margin-bottom: -20px;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.onboarding-title {
|
|
13
|
+
font-size: 3rem;
|
|
14
|
+
color: var(--studio-gray-100);
|
|
15
|
+
margin-bottom: 0.75rem;
|
|
16
|
+
|
|
17
|
+
@media (max-width: 1080px) {
|
|
18
|
+
line-height: 1;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
.onboarding-subtitle {
|
|
23
|
+
color: var(--studio-gray-50);
|
|
24
|
+
margin-bottom: 1.5em;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.components-button.action-buttons__next {
|
|
28
|
+
min-width: 100px;
|
|
29
|
+
padding: 10px 24px !important;
|
|
30
|
+
margin: 0 0.75em 0.75em 0.75em;
|
|
31
|
+
border-radius: 4px;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.onboarding-hooray__animate {
|
|
36
|
+
.onboarding-title {
|
|
37
|
+
animation: hooray-fade 0.9s ease-in-out, hooray-jump 0.8s cubic-bezier(0.21, 0.19, 0.24, 0.99);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
.onboarding-subtitle,
|
|
41
|
+
.components-button.action-buttons__next.is-primary {
|
|
42
|
+
opacity: 0;
|
|
43
|
+
animation: hooray-fade 0.9s ease-in-out 0.8s forwards, hooray-jump 0.8s cubic-bezier(0.21, 0.19, 0.24, 0.99) 0.8s forwards;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
@keyframes hooray-fade {
|
|
49
|
+
from {
|
|
50
|
+
opacity: 0;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
to {
|
|
54
|
+
opacity: 1;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
@keyframes hooray-jump {
|
|
59
|
+
from {
|
|
60
|
+
transform: translateY(20px);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
to {
|
|
64
|
+
transform: none;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export { Title, SubTitle } from './titles';
|
|
2
|
+
export { useFlowProgress } from './flow-progress/use-flow-progress';
|
|
3
|
+
export { default as ActionButtons, BackButton, NextButton, SkipButton, ArrowButton, } from './action-buttons';
|
|
4
|
+
export { createSiteWithCart, addPlanToCart, addProductsToCart, replaceProductsInCart, setThemeOnSite, } from './cart';
|
|
5
|
+
export { setupSiteAfterCreation, base64ImageToBlob } from './setup-tailored-site-after-creation';
|
|
6
|
+
export { uploadAndSetSiteLogo } from './upload-and-set-site-logo';
|
|
7
|
+
export { default as FeatureIcon } from './feature-icon';
|
|
8
|
+
export { default as Progress } from './progress';
|
|
9
|
+
export { default as Hooray } from './hooray';
|
|
10
|
+
export { default as Confetti } from './confetti';
|
|
11
|
+
export { default as IntentScreen } from './intent-screen';
|
|
12
|
+
export { default as SelectItems } from './select-items';
|
|
13
|
+
export { default as SelectItemsAlt } from './select-items-alt';
|
|
14
|
+
export { default as StepContainer } from './step-container';
|
|
15
|
+
export { default as StepNavigationLink } from './step-navigation-link';
|
|
16
|
+
export { default as MShotsImage } from './mshots-image';
|
|
17
|
+
export * from './navigator';
|
|
18
|
+
export { default as Notice } from './notice';
|
|
19
|
+
export { default as SelectCardCheckbox } from './select-card-checkbox';
|
|
20
|
+
export * from './utils';
|
|
21
|
+
export * from './select-card-radio';
|
|
22
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EACN,OAAO,IAAI,aAAa,EACxB,UAAU,EACV,UAAU,EACV,UAAU,EACV,WAAW,GACX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACN,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,qBAAqB,EACrB,cAAc,GACd,MAAM,QAAQ,CAAC;AAChB,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACjG,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACxD,cAAc,aAAa,CAAC;AAC5B,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACvE,cAAc,SAAS,CAAC;AACxB,cAAc,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import SelectItems from '../select-items';
|
|
3
|
+
import SelectItemsAlt from '../select-items-alt';
|
|
4
|
+
const IntentScreen = ({ intents, intentsAlt, onSelect, preventWidows, }) => {
|
|
5
|
+
return (_jsxs(_Fragment, { children: [_jsx(SelectItems, { items: intents, onSelect: onSelect, preventWidows: preventWidows }), _jsx(SelectItemsAlt, { items: intentsAlt, onSelect: onSelect })] }));
|
|
6
|
+
};
|
|
7
|
+
export default IntentScreen;
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/intent-screen/index.tsx"],"names":[],"mappings":";AACA,OAAO,WAA2B,MAAM,iBAAiB,CAAC;AAC1D,OAAO,cAAiC,MAAM,qBAAqB,CAAC;AASpE,MAAM,YAAY,GAAG,CAAsB,EAC1C,OAAO,EACP,UAAU,EACV,QAAQ,EACR,aAAa,GACD,EAAG,EAAE;IACjB,OAAO,CACN,8BACC,KAAC,WAAW,IAAC,KAAK,EAAG,OAAO,EAAG,QAAQ,EAAG,QAAQ,EAAG,aAAa,EAAG,aAAa,GAAK,EACvF,KAAC,cAAc,IAAC,KAAK,EAAG,UAAU,EAAG,QAAQ,EAAG,QAAQ,GAAK,IAC3D,CACH,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { addQueryArgs } from '@wordpress/url';
|
|
3
|
+
import clsx from 'clsx';
|
|
4
|
+
import debugFactory from 'debug';
|
|
5
|
+
import { useState, useEffect, useRef } from 'react';
|
|
6
|
+
import './style.scss';
|
|
7
|
+
const debug = debugFactory('design-picker:mshots-image');
|
|
8
|
+
export function mshotsUrl(targetUrl, options, count = 0) {
|
|
9
|
+
const mshotsUrl = 'https://s0.wp.com/mshots/v1/';
|
|
10
|
+
const mshotsRequest = addQueryArgs(mshotsUrl + encodeURIComponent(targetUrl), {
|
|
11
|
+
...options,
|
|
12
|
+
count,
|
|
13
|
+
});
|
|
14
|
+
return mshotsRequest;
|
|
15
|
+
}
|
|
16
|
+
const MAXTRIES = 10;
|
|
17
|
+
// This custom react hook returns null while the image is loading and the page
|
|
18
|
+
// (not image) URL once loading is complete.
|
|
19
|
+
//
|
|
20
|
+
// It also triggers a re-render (via setState()) when the value changes, so just
|
|
21
|
+
// check that the requested URL matches the returned URL.
|
|
22
|
+
//
|
|
23
|
+
// Note the loading may occur immediately if the image is already available, or
|
|
24
|
+
// may take several seconds if mshots has to generate and cache new images.
|
|
25
|
+
//
|
|
26
|
+
// The calling code doesn't need to worry about the details except that you'll
|
|
27
|
+
// want some sort of loading display.
|
|
28
|
+
//
|
|
29
|
+
// Inspired by https://stackoverflow.com/a/60458593
|
|
30
|
+
const useMshotsImg = (src, options, imgRef) => {
|
|
31
|
+
const [loadedImg, setLoadedImg] = useState(null);
|
|
32
|
+
const [count, setCount] = useState(0);
|
|
33
|
+
const previousSrc = useRef(src);
|
|
34
|
+
const timeoutIdRef = useRef();
|
|
35
|
+
const previousImg = useRef(null);
|
|
36
|
+
const previousOptions = useRef();
|
|
37
|
+
// Oddly, we need to assign to current here after ref creation in order to
|
|
38
|
+
// pass the equivalence check and avoid a spurious reset
|
|
39
|
+
previousOptions.current = options;
|
|
40
|
+
// Note: Mshots doesn't care about the "count" param, but it is important
|
|
41
|
+
// to browser caching. Getting this wrong looks like the url resolving
|
|
42
|
+
// before the image is ready.
|
|
43
|
+
useEffect(() => {
|
|
44
|
+
// If there's been a "props" change we need to reset everything:
|
|
45
|
+
if (options !== previousOptions.current ||
|
|
46
|
+
(src !== previousSrc.current && imgRef.current)) {
|
|
47
|
+
// Make sure an old image can't trigger a spurious state update
|
|
48
|
+
debug('resetting mShotsUrl request');
|
|
49
|
+
if (src !== previousSrc.current) {
|
|
50
|
+
debug('src changed\nfrom', previousSrc.current, '\nto', src);
|
|
51
|
+
}
|
|
52
|
+
if (options !== previousOptions.current) {
|
|
53
|
+
debug('options changed\nfrom', previousOptions.current, '\nto', options);
|
|
54
|
+
}
|
|
55
|
+
if (previousImg.current && previousImg.current.onload) {
|
|
56
|
+
previousImg.current.onload = null;
|
|
57
|
+
if (timeoutIdRef.current) {
|
|
58
|
+
clearTimeout(timeoutIdRef.current);
|
|
59
|
+
timeoutIdRef.current = undefined;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
setCount(0);
|
|
63
|
+
if (previousImg.current !== imgRef.current) {
|
|
64
|
+
previousImg.current = imgRef.current;
|
|
65
|
+
}
|
|
66
|
+
previousOptions.current = options;
|
|
67
|
+
previousSrc.current = src;
|
|
68
|
+
}
|
|
69
|
+
const srcUrl = mshotsUrl(src, options, count);
|
|
70
|
+
if (imgRef.current) {
|
|
71
|
+
imgRef.current.onload = () => {
|
|
72
|
+
// Detect default image (Don't request a 400x300 image).
|
|
73
|
+
//
|
|
74
|
+
// If this turns out to be a problem, it might help to know that the
|
|
75
|
+
// http request status for the default is a 307. Unfortunately we
|
|
76
|
+
// don't get the request through an img element so we'd need to
|
|
77
|
+
// take a completely different approach using ajax.
|
|
78
|
+
if (imgRef.current?.naturalWidth !== 400 || imgRef.current?.naturalHeight !== 300) {
|
|
79
|
+
setLoadedImg(src);
|
|
80
|
+
}
|
|
81
|
+
else if (count < MAXTRIES) {
|
|
82
|
+
// Only refresh 10 times
|
|
83
|
+
// Triggers a target.src change with increasing timeouts
|
|
84
|
+
timeoutIdRef.current = window.setTimeout(() => setCount((count) => count + 1), count * 500);
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
imgRef.current.src = srcUrl;
|
|
88
|
+
}
|
|
89
|
+
return () => {
|
|
90
|
+
if (imgRef.current && imgRef.current.onload) {
|
|
91
|
+
imgRef.current.onload = null;
|
|
92
|
+
}
|
|
93
|
+
if (previousImg.current && previousImg.current.onload) {
|
|
94
|
+
previousImg.current.onload = null;
|
|
95
|
+
}
|
|
96
|
+
clearTimeout(timeoutIdRef.current);
|
|
97
|
+
};
|
|
98
|
+
}, [src, count, options, imgRef]);
|
|
99
|
+
return loadedImg;
|
|
100
|
+
};
|
|
101
|
+
// Temporary for A/B test.
|
|
102
|
+
const useMshotsImgTreatment = (src, options) => {
|
|
103
|
+
const [loadedImg, setLoadedImg] = useState();
|
|
104
|
+
const [count, setCount] = useState(0);
|
|
105
|
+
const previousSrc = useRef(src);
|
|
106
|
+
const imgRef = useRef();
|
|
107
|
+
const timeoutIdRef = useRef();
|
|
108
|
+
const previousImg = useRef();
|
|
109
|
+
const previousOptions = useRef();
|
|
110
|
+
// Oddly, we need to assign to current here after ref creation in order to
|
|
111
|
+
// pass the equivalence check and avoid a spurious reset
|
|
112
|
+
previousOptions.current = options;
|
|
113
|
+
// Note: Mshots doesn't care about the "count" param, but it is important
|
|
114
|
+
// to browser caching. Getting this wrong looks like the url resolving
|
|
115
|
+
// before the image is ready.
|
|
116
|
+
useEffect(() => {
|
|
117
|
+
// If there's been a "props" change we need to reset everything:
|
|
118
|
+
if (options !== previousOptions.current ||
|
|
119
|
+
(src !== previousSrc.current && imgRef.current)) {
|
|
120
|
+
// Make sure an old image can't trigger a spurious state update
|
|
121
|
+
debug('resetting mShotsUrl request');
|
|
122
|
+
if (src !== previousSrc.current) {
|
|
123
|
+
debug('src changed\nfrom', previousSrc.current, '\nto', src);
|
|
124
|
+
}
|
|
125
|
+
if (options !== previousOptions.current) {
|
|
126
|
+
debug('options changed\nfrom', previousOptions.current, '\nto', options);
|
|
127
|
+
}
|
|
128
|
+
if (previousImg.current && previousImg.current.onload) {
|
|
129
|
+
previousImg.current.onload = null;
|
|
130
|
+
if (timeoutIdRef.current) {
|
|
131
|
+
clearTimeout(timeoutIdRef.current);
|
|
132
|
+
timeoutIdRef.current = undefined;
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
setLoadedImg(undefined);
|
|
136
|
+
setCount(0);
|
|
137
|
+
previousImg.current = imgRef.current;
|
|
138
|
+
previousOptions.current = options;
|
|
139
|
+
previousSrc.current = src;
|
|
140
|
+
}
|
|
141
|
+
const srcUrl = mshotsUrl(src, options, count);
|
|
142
|
+
const newImage = new Image();
|
|
143
|
+
newImage.onload = () => {
|
|
144
|
+
// Detect default image (Don't request a 400x300 image).
|
|
145
|
+
//
|
|
146
|
+
// If this turns out to be a problem, it might help to know that the
|
|
147
|
+
// http request status for the default is a 307. Unfortunately we
|
|
148
|
+
// don't get the request through an img element so we'd need to
|
|
149
|
+
// take a completely different approach using ajax.
|
|
150
|
+
if (newImage.naturalWidth !== 400 || newImage.naturalHeight !== 300) {
|
|
151
|
+
// Note we're using the naked object here, not the ref, because
|
|
152
|
+
// this is the callback on the image itself. We'd never want
|
|
153
|
+
// the image to finish loading and set some other image.
|
|
154
|
+
setLoadedImg(newImage);
|
|
155
|
+
}
|
|
156
|
+
else if (count < MAXTRIES) {
|
|
157
|
+
// Only refresh 10 times
|
|
158
|
+
// Triggers a target.src change with increasing timeouts
|
|
159
|
+
timeoutIdRef.current = window.setTimeout(() => setCount((count) => count + 1), count * 500);
|
|
160
|
+
}
|
|
161
|
+
};
|
|
162
|
+
newImage.src = srcUrl;
|
|
163
|
+
imgRef.current = newImage;
|
|
164
|
+
return () => {
|
|
165
|
+
if (imgRef.current && imgRef.current.onload) {
|
|
166
|
+
imgRef.current.onload = null;
|
|
167
|
+
}
|
|
168
|
+
clearTimeout(timeoutIdRef.current);
|
|
169
|
+
};
|
|
170
|
+
}, [src, count, options]);
|
|
171
|
+
return loadedImg;
|
|
172
|
+
};
|
|
173
|
+
const MShotsImageControl = ({ url, 'aria-labelledby': labelledby, alt, options, scrollable = false, }) => {
|
|
174
|
+
const imgRef = useRef(null);
|
|
175
|
+
const currentlyLoadedUrl = useMshotsImg(url, options, imgRef);
|
|
176
|
+
const src = imgRef.current?.src || '';
|
|
177
|
+
const visible = src && url === currentlyLoadedUrl;
|
|
178
|
+
const backgroundImage = src && `url( ${src} )`;
|
|
179
|
+
const animationScrollSpeedInPixelsPerSecond = 400;
|
|
180
|
+
const animationDuration = (imgRef.current?.naturalHeight || 600) / animationScrollSpeedInPixelsPerSecond;
|
|
181
|
+
const scrollableStyles = {
|
|
182
|
+
backgroundImage,
|
|
183
|
+
transition: `background-position ${animationDuration}s`,
|
|
184
|
+
};
|
|
185
|
+
const style = {
|
|
186
|
+
...(scrollable ? scrollableStyles : {}),
|
|
187
|
+
};
|
|
188
|
+
const className = clsx('mshots-image__container', scrollable && 'hover-scroll', visible ? 'mshots-image-visible' : 'mshots-image__loader');
|
|
189
|
+
if (options?.oldHighResImageLoading) {
|
|
190
|
+
return scrollable ? (_jsx("div", { className: className, style: style, "aria-labelledby": labelledby, children: _jsx("img", { ref: imgRef, className: "mshots-dummy-image", "aria-hidden": "true", alt: "" }) })) : (_jsx("img", { ref: imgRef, className, style, src, alt, "aria-labelledby": labelledby, alt: alt }));
|
|
191
|
+
} // else, prettier doesn't like having an else after a return
|
|
192
|
+
return scrollable ? (_jsx("div", { className: className, style: style, "aria-labelledby": labelledby, children: _jsx("img", { ref: imgRef, loading: "lazy", className: "mshots-dummy-image", "aria-hidden": "true", alt: "" }) })) : (_jsx("img", { loading: "lazy", ref: imgRef, className, style, src, alt, "aria-labelledby": labelledby, alt: alt }));
|
|
193
|
+
};
|
|
194
|
+
// Temporary for A/B test.
|
|
195
|
+
const MShotsImageTreatment = ({ url, 'aria-labelledby': labelledby, alt, options, scrollable = false, }) => {
|
|
196
|
+
const maybeImage = useMshotsImgTreatment(url, options);
|
|
197
|
+
const src = maybeImage?.src || '';
|
|
198
|
+
const visible = !!src;
|
|
199
|
+
const backgroundImage = maybeImage?.src && `url( ${maybeImage?.src} )`;
|
|
200
|
+
const animationScrollSpeedInPixelsPerSecond = 400;
|
|
201
|
+
const animationDuration = (maybeImage?.naturalHeight || 600) / animationScrollSpeedInPixelsPerSecond;
|
|
202
|
+
const scrollableStyles = {
|
|
203
|
+
backgroundImage,
|
|
204
|
+
transition: `background-position ${animationDuration}s`,
|
|
205
|
+
};
|
|
206
|
+
const style = {
|
|
207
|
+
...(scrollable ? scrollableStyles : {}),
|
|
208
|
+
};
|
|
209
|
+
const className = clsx('mshots-image__container', scrollable && 'hover-scroll', visible ? 'mshots-image-visible' : 'mshots-image__loader');
|
|
210
|
+
// The "! visible" here is only to dodge a particularly specific css
|
|
211
|
+
// rule effecting the placeholder while loading static images:
|
|
212
|
+
// '.design-picker .design-picker__image-frame img { ..., height: auto }'
|
|
213
|
+
return scrollable || !visible ? (_jsx("div", { className: className, style: style, "aria-labelledby": labelledby })) : (_jsx("img", { className, style, src, alt, "aria-labelledby": labelledby, alt: alt }));
|
|
214
|
+
};
|
|
215
|
+
// For hover-scroll, we use a div with a background image (rather than an img element)
|
|
216
|
+
// in order to use transitions between `top` and `bottom` on the
|
|
217
|
+
// `background-position` property.
|
|
218
|
+
// The "normal" top & bottom properties are problematic individually because we
|
|
219
|
+
// don't know how big the images will be, and using both gets the
|
|
220
|
+
// right positions but with no transition (as they're different properties).
|
|
221
|
+
const MShotsImage = ({ url, 'aria-labelledby': labelledby, alt, options, scrollable = false, }) => {
|
|
222
|
+
// Return MShotsImageControl or MShotsImageTreatment depending on options.oldHighResImageLoading
|
|
223
|
+
if (options?.oldHighResImageLoading) {
|
|
224
|
+
return (_jsx(MShotsImageTreatment, { url: url, "aria-labelledby": labelledby, alt: alt, options: options, scrollable: scrollable }));
|
|
225
|
+
}
|
|
226
|
+
return (_jsx(MShotsImageControl, { url: url, "aria-labelledby": labelledby, alt: alt, options: options, scrollable: scrollable }));
|
|
227
|
+
};
|
|
228
|
+
export default MShotsImage;
|
|
229
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mshots-image/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
@import "../../styles/mixins";
|
|
2
|
+
|
|
3
|
+
.mshots-image__loader {
|
|
4
|
+
@include onboarding-placeholder();
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
.mshots-image__container {
|
|
8
|
+
height: 100%;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.hover-scroll {
|
|
12
|
+
background-size: 100%;
|
|
13
|
+
background-position: top;
|
|
14
|
+
background-repeat: no-repeat;
|
|
15
|
+
margin-left: auto;
|
|
16
|
+
margin-right: auto;
|
|
17
|
+
|
|
18
|
+
&:hover {
|
|
19
|
+
background-position: bottom;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.mshots-image-visible {
|
|
24
|
+
animation: fadein 300ms;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
// Increase specificity by repeating class name.
|
|
28
|
+
.mshots-dummy-image.mshots-dummy-image {
|
|
29
|
+
position: absolute;
|
|
30
|
+
display: block;
|
|
31
|
+
visibility: hidden;
|
|
32
|
+
height: 0;
|
|
33
|
+
width: 0;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
@keyframes fadein {
|
|
37
|
+
from {
|
|
38
|
+
opacity: 0;
|
|
39
|
+
}
|
|
40
|
+
to {
|
|
41
|
+
opacity: 1;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/navigator/hooks/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,0BAA0B,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { __experimentalUseNavigator as useNavigator } from '@wordpress/components';
|
|
2
|
+
import { useEffect, useRef } from 'react';
|
|
3
|
+
const useNavigatorListener = (onNavigatorPathChange) => {
|
|
4
|
+
const { location } = useNavigator();
|
|
5
|
+
const previousPathRef = useRef('');
|
|
6
|
+
useEffect(() => {
|
|
7
|
+
if (location.path && location.path !== previousPathRef.current) {
|
|
8
|
+
onNavigatorPathChange?.(location.path);
|
|
9
|
+
previousPathRef.current = location.path;
|
|
10
|
+
}
|
|
11
|
+
}, [location.path, onNavigatorPathChange]);
|
|
12
|
+
};
|
|
13
|
+
export default useNavigatorListener;
|
|
14
|
+
//# sourceMappingURL=use-navigator-listener.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-navigator-listener.js","sourceRoot":"","sources":["../../../../src/navigator/hooks/use-navigator-listener.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,IAAI,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACnF,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAI1C,MAAM,oBAAoB,GAAG,CAAE,qBAA6C,EAAG,EAAE;IAChF,MAAM,EAAE,QAAQ,EAAE,GAAG,YAAY,EAAE,CAAC;IACpC,MAAM,eAAe,GAAG,MAAM,CAAE,EAAE,CAAE,CAAC;IAErC,SAAS,CAAE,GAAG,EAAE;QACf,IAAK,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,KAAK,eAAe,CAAC,OAAO,EAAG,CAAC;YAClE,qBAAqB,EAAE,CAAE,QAAQ,CAAC,IAAI,CAAE,CAAC;YACzC,eAAe,CAAC,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC;QACzC,CAAC;IACF,CAAC,EAAE,CAAE,QAAQ,CAAC,IAAI,EAAE,qBAAqB,CAAE,CAAE,CAAC;AAC/C,CAAC,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export * from './hooks';
|
|
2
|
+
export { NavigatorButtonAsItem, NavigatorItem } from './navigator-buttons';
|
|
3
|
+
export { default as NavigatorHeader } from './navigator-header';
|
|
4
|
+
export { default as NavigatorItemGroup } from './navigator-item-group';
|
|
5
|
+
export { default as NavigatorListener } from './navigator-listener';
|
|
6
|
+
export { default as NavigatorScreen } from './navigator-screen';
|
|
7
|
+
export * from './navigator-screens';
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/navigator/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAChE,cAAc,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { __experimentalNavigatorButton as NavigatorButton, __experimentalHStack as HStack, __experimentalItem as Item, FlexItem, } from '@wordpress/components';
|
|
3
|
+
import { isRTL } from '@wordpress/i18n';
|
|
4
|
+
import { Icon, chevronLeft, chevronRight, check } from '@wordpress/icons';
|
|
5
|
+
import clsx from 'clsx';
|
|
6
|
+
import './style.scss';
|
|
7
|
+
export function NavigatorItem({ icon, checked, active, children, ...props }) {
|
|
8
|
+
const content = icon ? (_jsxs(HStack, { justify: "flex-start", children: [_jsx(Icon, { className: "navigator-item__icon", icon: checked ? check : icon, size: 24 }), _jsx(FlexItem, { className: "navigator-item__text", display: "flex", isBlock: true, children: children })] })) : (_jsx(FlexItem, { display: "flex", isBlock: true, children: children }));
|
|
9
|
+
const forwardIcon = isRTL() ? chevronLeft : chevronRight;
|
|
10
|
+
return (_jsx(Item, { ...props, className: clsx('navigator-item', {
|
|
11
|
+
'navigator-item--active': active,
|
|
12
|
+
}), children: _jsxs(HStack, { justify: "space-between", children: [content, _jsx(Icon, { icon: forwardIcon, size: 24 })] }) }));
|
|
13
|
+
}
|
|
14
|
+
export const NavigatorButtonAsItem = ({ ...props }) => {
|
|
15
|
+
return _jsx(NavigatorButton, { as: NavigatorItem, ...props });
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/navigator/navigator-buttons/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EACN,6BAA6B,IAAI,eAAe,EAChD,oBAAoB,IAAI,MAAM,EAC9B,kBAAkB,IAAI,IAAI,EAC1B,QAAQ,GACR,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,cAAc,CAAC;AAetB,MAAM,UAAU,aAAa,CAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAsB;IAC/F,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CACtB,MAAC,MAAM,IAAC,OAAO,EAAC,YAAY,aAC3B,KAAC,IAAI,IAAC,SAAS,EAAC,sBAAsB,EAAC,IAAI,EAAG,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAG,IAAI,EAAG,EAAE,GAAK,EACrF,KAAC,QAAQ,IAAC,SAAS,EAAC,sBAAsB,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,kBAC9D,QAAQ,GACA,IACH,CACT,CAAC,CAAC,CAAC,CACH,KAAC,QAAQ,IAAC,OAAO,EAAC,MAAM,EAAC,OAAO,kBAC7B,QAAQ,GACA,CACX,CAAC;IAEF,MAAM,WAAW,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC;IAEzD,OAAO,CACN,KAAC,IAAI,OACC,KAAK,EACV,SAAS,EAAG,IAAI,CAAE,gBAAgB,EAAE;YACnC,wBAAwB,EAAE,MAAM;SAChC,CAAE,YAEH,MAAC,MAAM,IAAC,OAAO,EAAC,eAAe,aAC5B,OAAO,EACT,KAAC,IAAI,IAAC,IAAI,EAAG,WAAW,EAAG,IAAI,EAAG,EAAE,GAAK,IACjC,GACH,CACP,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAE,EAAE,GAAG,KAAK,EAA8B,EAAG,EAAE;IACnF,OAAO,KAAC,eAAe,IAAC,EAAE,EAAG,aAAa,KAAQ,KAAK,GAAK,CAAC;AAC9D,CAAC,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
@import "@automattic/typography/styles/fonts";
|
|
2
|
+
|
|
3
|
+
.components-item.navigator-item {
|
|
4
|
+
height: 44px;
|
|
5
|
+
line-height: 44px;
|
|
6
|
+
padding: 0 5px 0 8px;
|
|
7
|
+
margin: 0 -5px 0 -8px;
|
|
8
|
+
font-size: $font-body-small;
|
|
9
|
+
font-weight: 400;
|
|
10
|
+
letter-spacing: -0.15px;
|
|
11
|
+
color: var(--studio-gray-100);
|
|
12
|
+
border: none;
|
|
13
|
+
background: transparent;
|
|
14
|
+
cursor: pointer;
|
|
15
|
+
|
|
16
|
+
svg {
|
|
17
|
+
flex-shrink: 0;
|
|
18
|
+
fill: currentColor;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
&:hover,
|
|
22
|
+
&:focus-visible {
|
|
23
|
+
color: var(--studio-blue-50);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
&:focus {
|
|
27
|
+
box-shadow: none;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
&:focus-visible {
|
|
31
|
+
border-color: var(--color-primary);
|
|
32
|
+
box-shadow: 0 0 0 2px var(--color-primary-light);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
&:active {
|
|
36
|
+
background-color: var(--studio-blue-0);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
.navigator-item__text {
|
|
40
|
+
padding-left: 1px;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
&--active {
|
|
44
|
+
background-color: var(--studio-blue-0);
|
|
45
|
+
color: var(--studio-blue-50);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Button, Gridicon } from '@automattic/components';
|
|
3
|
+
import { __experimentalHStack as HStack, __experimentalNavigatorBackButton as NavigatorBackButton, } from '@wordpress/components';
|
|
4
|
+
import { useTranslate } from 'i18n-calypso';
|
|
5
|
+
import './style.scss';
|
|
6
|
+
const NavigatorHeader = ({ title, description, hideBack, onBack }) => {
|
|
7
|
+
const translate = useTranslate();
|
|
8
|
+
return (_jsxs("div", { className: "navigator-header", children: [_jsxs(HStack, { className: "navigator-header__heading", spacing: 2, justify: "flex-start", children: [!hideBack && (_jsx(NavigatorBackButton, { as: Button, title: translate('Back'), borderless: true, "aria-label": translate('Navigate to the previous view'), onClick: onBack, children: _jsx(Gridicon, { icon: "chevron-left", size: 16 }) })), _jsx("h2", { children: title })] }), description && _jsx("p", { className: "navigator-header__description", children: description })] }));
|
|
9
|
+
};
|
|
10
|
+
export default NavigatorHeader;
|
|
11
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/navigator/navigator-header/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EACN,oBAAoB,IAAI,MAAM,EAC9B,iCAAiC,IAAI,mBAAmB,GACxD,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAmB,MAAM,cAAc,CAAC;AAC7D,OAAO,cAAc,CAAC;AAStB,MAAM,eAAe,GAAG,CAAE,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAS,EAAG,EAAE;IAC7E,MAAM,SAAS,GAAG,YAAY,EAAE,CAAC;IAEjC,OAAO,CACN,eAAK,SAAS,EAAC,kBAAkB,aAChC,MAAC,MAAM,IAAC,SAAS,EAAC,2BAA2B,EAAC,OAAO,EAAG,CAAC,EAAG,OAAO,EAAC,YAAY,aAC7E,CAAE,QAAQ,IAAI,CACf,KAAC,mBAAmB,IACnB,EAAE,EAAG,MAAM,EACX,KAAK,EAAG,SAAS,CAAE,MAAM,CAAE,EAC3B,UAAU,sBACG,SAAS,CAAE,+BAA+B,CAAE,EACzD,OAAO,EAAG,MAAM,YAEhB,KAAC,QAAQ,IAAC,IAAI,EAAC,cAAc,EAAC,IAAI,EAAG,EAAE,GAAK,GACvB,CACtB,EACD,uBAAM,KAAK,GAAO,IACV,EACP,WAAW,IAAI,YAAG,SAAS,EAAC,+BAA+B,YAAG,WAAW,GAAM,IAC5E,CACN,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,eAAe,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
@import "@wordpress/base-styles/breakpoints";
|
|
2
|
+
@import "@wordpress/base-styles/mixins";
|
|
3
|
+
@import "@automattic/typography/styles/fonts";
|
|
4
|
+
|
|
5
|
+
.navigator-header {
|
|
6
|
+
display: none;
|
|
7
|
+
margin-bottom: 30px;
|
|
8
|
+
|
|
9
|
+
@include break-large {
|
|
10
|
+
display: block;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.navigator-header__heading {
|
|
15
|
+
margin-bottom: 8px;
|
|
16
|
+
color: var(--color-neutral-100);
|
|
17
|
+
text-wrap: pretty;
|
|
18
|
+
|
|
19
|
+
h2 {
|
|
20
|
+
font-family: Recoleta, sans-serif;
|
|
21
|
+
font-style: normal;
|
|
22
|
+
font-weight: 400;
|
|
23
|
+
font-size: $font-title-large;
|
|
24
|
+
line-height: 40px;
|
|
25
|
+
letter-spacing: -0.32px;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.button.is-borderless .gridicon {
|
|
29
|
+
top: 4px;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.premium-badge {
|
|
33
|
+
margin-inline-start: 2px;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.navigator-header__description {
|
|
38
|
+
font-size: $font-body-small;
|
|
39
|
+
font-weight: 400;
|
|
40
|
+
line-height: 20px;
|
|
41
|
+
letter-spacing: -0.15px;
|
|
42
|
+
color: var(--color-neutral-60);
|
|
43
|
+
margin: 0;
|
|
44
|
+
text-wrap: pretty;
|
|
45
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { __experimentalVStack as VStack, __experimentalItemGroup as ItemGroup, } from '@wordpress/components';
|
|
3
|
+
import './style.scss';
|
|
4
|
+
const NavigatorItemGroup = ({ children, title }) => {
|
|
5
|
+
return (_jsx("section", { className: "navigator-item-group", children: _jsxs(VStack, { direction: "column", justify: "flex-start", alignment: "stretch", children: [title && _jsx("h3", { className: "navigator-item-group__title", children: title }), _jsx(ItemGroup, { children: children })] }) }));
|
|
6
|
+
};
|
|
7
|
+
export default NavigatorItemGroup;
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/navigator/navigator-item-group/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EACN,oBAAoB,IAAI,MAAM,EAC9B,uBAAuB,IAAI,SAAS,GACpC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,cAAc,CAAC;AAOtB,MAAM,kBAAkB,GAAG,CAAE,EAAE,QAAQ,EAAE,KAAK,EAAS,EAAG,EAAE;IAC3D,OAAO,CACN,kBAAS,SAAS,EAAC,sBAAsB,YACxC,MAAC,MAAM,IAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAC,YAAY,EAAC,SAAS,EAAC,SAAS,aAChE,KAAK,IAAI,aAAI,SAAS,EAAC,6BAA6B,YAAG,KAAK,GAAO,EACrE,KAAC,SAAS,cAAG,QAAQ,GAAc,IAC3B,GACA,CACV,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
@import "@automattic/typography/styles/fonts";
|
|
2
|
+
|
|
3
|
+
.navigator-item-group {
|
|
4
|
+
flex-shrink: 0;
|
|
5
|
+
|
|
6
|
+
.components-item-group > div[role="listitem"] {
|
|
7
|
+
display: flex;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.navigator-item {
|
|
11
|
+
flex-grow: 1;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
&:nth-child(1 of &):nth-last-child(1 of &) {
|
|
15
|
+
.navigator-item-group__title {
|
|
16
|
+
display: none;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.navigator-item-group__title {
|
|
22
|
+
color: var(--color-neutral-100);
|
|
23
|
+
font-size: $font-body-small;
|
|
24
|
+
font-weight: 500;
|
|
25
|
+
letter-spacing: -0.15px;
|
|
26
|
+
line-height: 1.4;
|
|
27
|
+
margin-bottom: 8px;
|
|
28
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/navigator/navigator-listener/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAyB,MAAM,UAAU,CAAC;AAMvE,MAAM,iBAAiB,GAAG,CAAE,EAAE,qBAAqB,EAAS,EAAG,EAAE;IAChE,oBAAoB,CAAE,qBAAqB,CAAE,CAAC;IAC9C,OAAO,IAAI,CAAC;AACb,CAAC,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { __experimentalNavigatorScreen as BaseNavigatorScreen, __experimentalUseNavigator as useNavigator, } from '@wordpress/components';
|
|
3
|
+
/**
|
|
4
|
+
* A wrapper of the NavigatorScreen to support matching the path partially.
|
|
5
|
+
*/
|
|
6
|
+
const NavigatorScreen = ({ partialMatch, ...props }) => {
|
|
7
|
+
const { location } = useNavigator();
|
|
8
|
+
if (partialMatch && location.path?.startsWith(props.path)) {
|
|
9
|
+
return props.children;
|
|
10
|
+
}
|
|
11
|
+
return _jsx(BaseNavigatorScreen, { ...props });
|
|
12
|
+
};
|
|
13
|
+
export default NavigatorScreen;
|
|
14
|
+
//# sourceMappingURL=index.js.map
|