@bigbinary/neeto-commons-frontend 3.0.6 → 3.0.9
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/cjs/configs/babel.js +50 -0
- package/cjs/configs/eslint/globals.js +14 -0
- package/cjs/configs/eslint/helpers/index.js +74 -0
- package/cjs/configs/eslint/imports/enforced.js +29 -0
- package/cjs/configs/eslint/imports/order.js +65 -0
- package/cjs/configs/eslint/index.js +171 -0
- package/cjs/configs/eslint/overrides.js +30 -0
- package/cjs/configs/eslint/promise.js +8 -0
- package/cjs/configs/eslint/react.js +92 -0
- package/cjs/configs/nanos/eslint/imports/order.js +25 -0
- package/cjs/configs/nanos/eslint/index.js +28 -0
- package/cjs/configs/nanos/tailwind.js +11 -0
- package/cjs/configs/nanos/webpack/resolve.js +48 -0
- package/cjs/configs/nextjs/eslint/imports/order.js +25 -0
- package/cjs/configs/nextjs/eslint/index.js +22 -0
- package/cjs/configs/nextjs/webpack/resolve.js +1 -0
- package/cjs/configs/prettier.js +16 -0
- package/cjs/configs/scripts/dead-code-eliminator/constants.js +12 -0
- package/cjs/configs/scripts/dead-code-eliminator/index.js +266 -0
- package/cjs/configs/scripts/getPkgTranslations.js +45 -0
- package/cjs/configs/scripts/jsdoc-builder/constants.mjs +42 -0
- package/cjs/configs/scripts/jsdoc-builder/index.mjs +67 -0
- package/cjs/configs/scripts/jsdoc-builder/utils.mjs +219 -0
- package/cjs/configs/scripts/remove-unused-translation-keys/constants.js +11 -0
- package/cjs/configs/scripts/remove-unused-translation-keys/index.js +186 -0
- package/cjs/configs/tailwind.js +13 -0
- package/cjs/configs/webpack/helpers/customize-default-rules.js +54 -0
- package/cjs/configs/webpack/index.js +58 -0
- package/cjs/configs/webpack/resolve.js +53 -0
- package/cjs/configs/webpack/rules.js +34 -0
- package/{constants.cjs.js → cjs/constants/index.js} +11 -10
- package/cjs/constants/index.js.map +1 -0
- package/cjs/cypress-configs/initializer.js +32 -0
- package/cjs/cypress-configs/plugins.js +105 -0
- package/cjs/cypress-configs/resolve.js +17 -0
- package/cjs/cypress-configs/webpack.config.js +19 -0
- package/cjs/cypress-utils/commands.js +276 -0
- package/cjs/cypress-utils/commands.js.map +1 -0
- package/cjs/cypress-utils/constants/index.js +14 -0
- package/cjs/cypress-utils/constants/index.js.map +1 -0
- package/cjs/cypress-utils/constants/routes.js +40 -0
- package/cjs/cypress-utils/constants/routes.js.map +1 -0
- package/cjs/cypress-utils/constants/selectors/common.js +103 -0
- package/cjs/cypress-utils/constants/selectors/common.js.map +1 -0
- package/cjs/cypress-utils/constants/selectors/editor.js +29 -0
- package/cjs/cypress-utils/constants/selectors/editor.js.map +1 -0
- package/cjs/cypress-utils/constants/selectors/ipRestriction.js +19 -0
- package/cjs/cypress-utils/constants/selectors/ipRestriction.js.map +1 -0
- package/cjs/cypress-utils/constants/selectors/login.js +21 -0
- package/cjs/cypress-utils/constants/selectors/login.js.map +1 -0
- package/cjs/cypress-utils/constants/selectors/member.js +65 -0
- package/cjs/cypress-utils/constants/selectors/member.js.map +1 -0
- package/cjs/cypress-utils/constants/selectors/navigation.js +28 -0
- package/cjs/cypress-utils/constants/selectors/navigation.js.map +1 -0
- package/cjs/cypress-utils/constants/selectors/roles.js +24 -0
- package/cjs/cypress-utils/constants/selectors/roles.js.map +1 -0
- package/cjs/cypress-utils/constants/selectors/signUp.js +23 -0
- package/cjs/cypress-utils/constants/selectors/signUp.js.map +1 -0
- package/cjs/cypress-utils/constants/selectors/tags.js +31 -0
- package/cjs/cypress-utils/constants/selectors/tags.js.map +1 -0
- package/cjs/cypress-utils/constants/texts/common.js +40 -0
- package/cjs/cypress-utils/constants/texts/common.js.map +1 -0
- package/cjs/cypress-utils/constants/texts/member.js +68 -0
- package/cjs/cypress-utils/constants/texts/member.js.map +1 -0
- package/cjs/cypress-utils/constants/texts/navigation.js +24 -0
- package/cjs/cypress-utils/constants/texts/navigation.js.map +1 -0
- package/cjs/cypress-utils/constants/texts/roles.js +25 -0
- package/cjs/cypress-utils/constants/texts/roles.js.map +1 -0
- package/cjs/cypress-utils/constants/texts/signUp.js +14 -0
- package/cjs/cypress-utils/constants/texts/signUp.js.map +1 -0
- package/cjs/cypress-utils/constants/texts/tags.js +28 -0
- package/cjs/cypress-utils/constants/texts/tags.js.map +1 -0
- package/cjs/cypress-utils/fixtures/fake.js +177 -0
- package/cjs/cypress-utils/fixtures/fake.js.map +1 -0
- package/cjs/cypress-utils/index.js +226 -0
- package/cjs/cypress-utils/index.js.map +1 -0
- package/cjs/cypress-utils/utils/authentication.js +45 -0
- package/cjs/cypress-utils/utils/authentication.js.map +1 -0
- package/cjs/cypress-utils/utils/common.js +92 -0
- package/cjs/cypress-utils/utils/common.js.map +1 -0
- package/cjs/cypress-utils/utils/date.js +28 -0
- package/cjs/cypress-utils/utils/date.js.map +1 -0
- package/cjs/cypress-utils/utils/email.js +165 -0
- package/cjs/cypress-utils/utils/email.js.map +1 -0
- package/cjs/cypress-utils/utils/member.js +352 -0
- package/cjs/cypress-utils/utils/member.js.map +1 -0
- package/cjs/cypress-utils/utils/navigation.js +208 -0
- package/cjs/cypress-utils/utils/navigation.js.map +1 -0
- package/cjs/cypress-utils/utils/organization.js +109 -0
- package/cjs/cypress-utils/utils/organization.js.map +1 -0
- package/cjs/cypress-utils/utils/validation.js +17 -0
- package/cjs/cypress-utils/utils/validation.js.map +1 -0
- package/cjs/initializers/axios/index.js +199 -0
- package/cjs/initializers/axios/index.js.map +1 -0
- package/cjs/initializers/axios/paramsSerializer.js +27 -0
- package/cjs/initializers/axios/paramsSerializer.js.map +1 -0
- package/cjs/initializers/constants.js +23 -0
- package/cjs/initializers/constants.js.map +1 -0
- package/cjs/initializers/globalProps.js +15 -0
- package/cjs/initializers/globalProps.js.map +1 -0
- package/cjs/initializers/i18n.js +74 -0
- package/cjs/initializers/i18n.js.map +1 -0
- package/cjs/initializers/index.js +51 -0
- package/cjs/initializers/index.js.map +1 -0
- package/cjs/initializers/logger.js +17 -0
- package/cjs/initializers/logger.js.map +1 -0
- package/cjs/initializers/reactDevTools.js +26 -0
- package/cjs/initializers/reactDevTools.js.map +1 -0
- package/cjs/initializers/utils/customFormatters.js +52 -0
- package/cjs/initializers/utils/customFormatters.js.map +1 -0
- package/cjs/initializers/utils/customPostProcessors.js +21 -0
- package/cjs/initializers/utils/customPostProcessors.js.map +1 -0
- package/cjs/initializers/utils.js +37 -0
- package/cjs/initializers/utils.js.map +1 -0
- package/cjs/react-utils/BrowserPushNotifications/devices.js +26 -0
- package/cjs/react-utils/BrowserPushNotifications/devices.js.map +1 -0
- package/cjs/react-utils/BrowserPushNotifications/index.js +19 -0
- package/cjs/react-utils/BrowserPushNotifications/index.js.map +1 -0
- package/cjs/react-utils/BrowserPushNotifications/pushHelper.js +116 -0
- package/cjs/react-utils/BrowserPushNotifications/pushHelper.js.map +1 -0
- package/cjs/react-utils/BrowserPushNotifications/registerServiceWorker.js +146 -0
- package/cjs/react-utils/BrowserPushNotifications/registerServiceWorker.js.map +1 -0
- package/cjs/react-utils/HoneybadgerErrorBoundary/FallbackComponent.js +153 -0
- package/cjs/react-utils/HoneybadgerErrorBoundary/FallbackComponent.js.map +1 -0
- package/cjs/react-utils/HoneybadgerErrorBoundary/constants.js +9 -0
- package/cjs/react-utils/HoneybadgerErrorBoundary/constants.js.map +1 -0
- package/cjs/react-utils/HoneybadgerErrorBoundary/index.js +59 -0
- package/cjs/react-utils/HoneybadgerErrorBoundary/index.js.map +1 -0
- package/cjs/react-utils/HoneybadgerErrorBoundary/utils.js +17 -0
- package/cjs/react-utils/HoneybadgerErrorBoundary/utils.js.map +1 -0
- package/cjs/react-utils/PrivateRoute.js +80 -0
- package/cjs/react-utils/PrivateRoute.js.map +1 -0
- package/cjs/react-utils/constants/constants.js +11 -0
- package/cjs/react-utils/constants/constants.js.map +1 -0
- package/cjs/react-utils/constants/index.js +28 -0
- package/cjs/react-utils/constants/index.js.map +1 -0
- package/cjs/react-utils/constants/query.js +11 -0
- package/cjs/react-utils/constants/query.js.map +1 -0
- package/cjs/react-utils/index.js +242 -0
- package/cjs/react-utils/index.js.map +1 -0
- package/cjs/react-utils/metaClick.js +16 -0
- package/cjs/react-utils/metaClick.js.map +1 -0
- package/cjs/react-utils/useDebounce.js +28 -0
- package/cjs/react-utils/useDebounce.js.map +1 -0
- package/cjs/react-utils/useDisplayErrorPage.js +23 -0
- package/cjs/react-utils/useDisplayErrorPage.js.map +1 -0
- package/cjs/react-utils/useFetchNeetoApps/apis/neeto_apps.js +17 -0
- package/cjs/react-utils/useFetchNeetoApps/apis/neeto_apps.js.map +1 -0
- package/cjs/react-utils/useFetchNeetoApps/index.js +14 -0
- package/cjs/react-utils/useFetchNeetoApps/index.js.map +1 -0
- package/cjs/react-utils/useFetchNeetoApps/useFetchNeetoApps.js +27 -0
- package/cjs/react-utils/useFetchNeetoApps/useFetchNeetoApps.js.map +1 -0
- package/cjs/react-utils/useFieldSubmit.js +33 -0
- package/cjs/react-utils/useFieldSubmit.js.map +1 -0
- package/cjs/react-utils/useFuncDebounce.js +27 -0
- package/cjs/react-utils/useFuncDebounce.js.map +1 -0
- package/cjs/react-utils/useHotKeys/constants.js +36 -0
- package/cjs/react-utils/useHotKeys/constants.js.map +1 -0
- package/cjs/react-utils/useHotKeys/index.js +14 -0
- package/cjs/react-utils/useHotKeys/index.js.map +1 -0
- package/cjs/react-utils/useHotKeys/useHotKeys.js +65 -0
- package/cjs/react-utils/useHotKeys/useHotKeys.js.map +1 -0
- package/cjs/react-utils/useHotKeys/utils.js +37 -0
- package/cjs/react-utils/useHotKeys/utils.js.map +1 -0
- package/cjs/react-utils/useIsElementVisibleInDom/index.js +14 -0
- package/cjs/react-utils/useIsElementVisibleInDom/index.js.map +1 -0
- package/cjs/react-utils/useIsElementVisibleInDom/useForceUpdate.js +23 -0
- package/cjs/react-utils/useIsElementVisibleInDom/useForceUpdate.js.map +1 -0
- package/cjs/react-utils/useIsElementVisibleInDom/useIsElementVisibleInDom.js +34 -0
- package/cjs/react-utils/useIsElementVisibleInDom/useIsElementVisibleInDom.js.map +1 -0
- package/cjs/react-utils/useKeyboardShortcutsPaneState.js +36 -0
- package/cjs/react-utils/useKeyboardShortcutsPaneState.js.map +1 -0
- package/cjs/react-utils/useLocalStorage.js +39 -0
- package/cjs/react-utils/useLocalStorage.js.map +1 -0
- package/cjs/react-utils/useMutationWithInvalidation.js +33 -0
- package/cjs/react-utils/useMutationWithInvalidation.js.map +1 -0
- package/cjs/react-utils/useOnClickOutside.js +32 -0
- package/cjs/react-utils/useOnClickOutside.js.map +1 -0
- package/cjs/react-utils/usePersistedQuery.js +59 -0
- package/cjs/react-utils/usePersistedQuery.js.map +1 -0
- package/cjs/react-utils/usePrevious.js +17 -0
- package/cjs/react-utils/usePrevious.js.map +1 -0
- package/cjs/react-utils/useQueryParams.js +15 -0
- package/cjs/react-utils/useQueryParams.js.map +1 -0
- package/cjs/react-utils/useRegisterNavigationCheckpoint.js +43 -0
- package/cjs/react-utils/useRegisterNavigationCheckpoint.js.map +1 -0
- package/cjs/react-utils/useStateWithDependency.js +23 -0
- package/cjs/react-utils/useStateWithDependency.js.map +1 -0
- package/cjs/react-utils/useTimer.js +51 -0
- package/cjs/react-utils/useTimer.js.map +1 -0
- package/cjs/react-utils/useUpdateEffect.js +21 -0
- package/cjs/react-utils/useUpdateEffect.js.map +1 -0
- package/cjs/react-utils/withImmutableActions.js +29 -0
- package/cjs/react-utils/withImmutableActions.js.map +1 -0
- package/cjs/react-utils/withT.js +14 -0
- package/cjs/react-utils/withT.js.map +1 -0
- package/cjs/react-utils/withTitle.js +44 -0
- package/cjs/react-utils/withTitle.js.map +1 -0
- package/cjs/utils/axios.js +17 -0
- package/cjs/utils/axios.js.map +1 -0
- package/cjs/utils/createSubscription.js +22 -0
- package/cjs/utils/createSubscription.js.map +1 -0
- package/cjs/utils/currencyFormat.js +50 -0
- package/cjs/utils/currencyFormat.js.map +1 -0
- package/cjs/utils/datetime.js +69 -0
- package/cjs/utils/datetime.js.map +1 -0
- package/cjs/utils/general.js +193 -0
- package/cjs/utils/general.js.map +1 -0
- package/cjs/utils/index.js +72 -0
- package/cjs/utils/index.js.map +1 -0
- package/cjs/utils/permissions.js +25 -0
- package/cjs/utils/permissions.js.map +1 -0
- package/configs/scripts/getPkgTranslations.js +1 -1
- package/configs/scripts/jsdoc-builder/constants.mjs +1 -1
- package/configs/scripts/jsdoc-builder/index.mjs +1 -1
- package/configs/webpack/rules.js +2 -1
- package/constants/index.js +13 -0
- package/constants/index.js.map +1 -0
- package/cypress-utils/commands.js +268 -0
- package/cypress-utils/commands.js.map +1 -0
- package/cypress-utils/constants/index.js +7 -0
- package/cypress-utils/constants/index.js.map +1 -0
- package/cypress-utils/constants/routes.js +33 -0
- package/cypress-utils/constants/routes.js.map +1 -0
- package/cypress-utils/constants/selectors/common.js +94 -0
- package/cypress-utils/constants/selectors/common.js.map +1 -0
- package/cypress-utils/constants/selectors/editor.js +22 -0
- package/cypress-utils/constants/selectors/editor.js.map +1 -0
- package/cypress-utils/constants/selectors/ipRestriction.js +12 -0
- package/cypress-utils/constants/selectors/ipRestriction.js.map +1 -0
- package/cypress-utils/constants/selectors/login.js +14 -0
- package/cypress-utils/constants/selectors/login.js.map +1 -0
- package/cypress-utils/constants/selectors/member.js +56 -0
- package/cypress-utils/constants/selectors/member.js.map +1 -0
- package/cypress-utils/constants/selectors/navigation.js +20 -0
- package/cypress-utils/constants/selectors/navigation.js.map +1 -0
- package/cypress-utils/constants/selectors/roles.js +17 -0
- package/cypress-utils/constants/selectors/roles.js.map +1 -0
- package/cypress-utils/constants/selectors/signUp.js +16 -0
- package/cypress-utils/constants/selectors/signUp.js.map +1 -0
- package/cypress-utils/constants/selectors/tags.js +23 -0
- package/cypress-utils/constants/selectors/tags.js.map +1 -0
- package/cypress-utils/constants/texts/common.js +33 -0
- package/cypress-utils/constants/texts/common.js.map +1 -0
- package/cypress-utils/constants/texts/member.js +59 -0
- package/cypress-utils/constants/texts/member.js.map +1 -0
- package/cypress-utils/constants/texts/navigation.js +16 -0
- package/cypress-utils/constants/texts/navigation.js.map +1 -0
- package/cypress-utils/constants/texts/roles.js +18 -0
- package/cypress-utils/constants/texts/roles.js.map +1 -0
- package/cypress-utils/constants/texts/signUp.js +7 -0
- package/cypress-utils/constants/texts/signUp.js.map +1 -0
- package/cypress-utils/constants/texts/tags.js +21 -0
- package/cypress-utils/constants/texts/tags.js.map +1 -0
- package/cypress-utils/fixtures/fake.js +171 -0
- package/cypress-utils/fixtures/fake.js.map +1 -0
- package/cypress-utils/index.js +21 -0
- package/cypress-utils/index.js.map +1 -0
- package/cypress-utils/utils/authentication.js +38 -0
- package/cypress-utils/utils/authentication.js.map +1 -0
- package/cypress-utils/utils/common.js +75 -0
- package/cypress-utils/utils/common.js.map +1 -0
- package/cypress-utils/utils/date.js +20 -0
- package/cypress-utils/utils/date.js.map +1 -0
- package/cypress-utils/utils/email.js +156 -0
- package/cypress-utils/utils/email.js.map +1 -0
- package/cypress-utils/utils/member.js +344 -0
- package/cypress-utils/utils/member.js.map +1 -0
- package/cypress-utils/utils/navigation.js +200 -0
- package/cypress-utils/utils/navigation.js.map +1 -0
- package/cypress-utils/utils/organization.js +102 -0
- package/cypress-utils/utils/organization.js.map +1 -0
- package/cypress-utils/utils/validation.js +10 -0
- package/cypress-utils/utils/validation.js.map +1 -0
- package/initializers/axios/index.js +192 -0
- package/initializers/axios/index.js.map +1 -0
- package/initializers/axios/paramsSerializer.js +18 -0
- package/initializers/axios/paramsSerializer.js.map +1 -0
- package/initializers/constants.js +13 -0
- package/initializers/constants.js.map +1 -0
- package/initializers/globalProps.js +8 -0
- package/initializers/globalProps.js.map +1 -0
- package/initializers/i18n.js +67 -0
- package/initializers/i18n.js.map +1 -0
- package/initializers/index.js +28 -0
- package/initializers/index.js.map +1 -0
- package/initializers/logger.js +10 -0
- package/initializers/logger.js.map +1 -0
- package/initializers/reactDevTools.js +19 -0
- package/initializers/reactDevTools.js.map +1 -0
- package/initializers/utils/customFormatters.js +43 -0
- package/initializers/utils/customFormatters.js.map +1 -0
- package/initializers/utils/customPostProcessors.js +14 -0
- package/initializers/utils/customPostProcessors.js.map +1 -0
- package/initializers/utils.js +29 -0
- package/initializers/utils.js.map +1 -0
- package/package.json +51 -158
- package/pure.d.ts +384 -0
- package/react-utils/BrowserPushNotifications/devices.js +18 -0
- package/react-utils/BrowserPushNotifications/devices.js.map +1 -0
- package/react-utils/BrowserPushNotifications/index.js +1 -0
- package/react-utils/BrowserPushNotifications/index.js.map +1 -0
- package/react-utils/BrowserPushNotifications/pushHelper.js +107 -0
- package/react-utils/BrowserPushNotifications/pushHelper.js.map +1 -0
- package/react-utils/BrowserPushNotifications/registerServiceWorker.js +137 -0
- package/react-utils/BrowserPushNotifications/registerServiceWorker.js.map +1 -0
- package/react-utils/HoneybadgerErrorBoundary/FallbackComponent.js +144 -0
- package/react-utils/HoneybadgerErrorBoundary/FallbackComponent.js.map +1 -0
- package/react-utils/HoneybadgerErrorBoundary/constants.js +1 -0
- package/react-utils/HoneybadgerErrorBoundary/constants.js.map +1 -0
- package/react-utils/HoneybadgerErrorBoundary/index.js +52 -0
- package/react-utils/HoneybadgerErrorBoundary/index.js.map +1 -0
- package/react-utils/HoneybadgerErrorBoundary/utils.js +9 -0
- package/react-utils/HoneybadgerErrorBoundary/utils.js.map +1 -0
- package/react-utils/PrivateRoute.js +72 -0
- package/react-utils/PrivateRoute.js.map +1 -0
- package/react-utils/constants/constants.js +3 -0
- package/react-utils/constants/constants.js.map +1 -0
- package/react-utils/constants/index.js +3 -0
- package/react-utils/constants/index.js.map +1 -0
- package/react-utils/constants/query.js +4 -0
- package/react-utils/constants/query.js.map +1 -0
- package/react-utils/index.js +33 -0
- package/react-utils/index.js.map +1 -0
- package/react-utils/metaClick.js +8 -0
- package/react-utils/metaClick.js.map +1 -0
- package/react-utils/useDebounce.js +20 -0
- package/react-utils/useDebounce.js.map +1 -0
- package/react-utils/useDisplayErrorPage.js +15 -0
- package/react-utils/useDisplayErrorPage.js.map +1 -0
- package/react-utils/useFetchNeetoApps/apis/neeto_apps.js +9 -0
- package/react-utils/useFetchNeetoApps/apis/neeto_apps.js.map +1 -0
- package/react-utils/useFetchNeetoApps/index.js +1 -0
- package/react-utils/useFetchNeetoApps/index.js.map +1 -0
- package/react-utils/useFetchNeetoApps/useFetchNeetoApps.js +19 -0
- package/react-utils/useFetchNeetoApps/useFetchNeetoApps.js.map +1 -0
- package/react-utils/useFieldSubmit.js +26 -0
- package/react-utils/useFieldSubmit.js.map +1 -0
- package/react-utils/useFuncDebounce.js +20 -0
- package/react-utils/useFuncDebounce.js.map +1 -0
- package/react-utils/useHotKeys/constants.js +25 -0
- package/react-utils/useHotKeys/constants.js.map +1 -0
- package/react-utils/useHotKeys/index.js +1 -0
- package/react-utils/useHotKeys/index.js.map +1 -0
- package/react-utils/useHotKeys/useHotKeys.js +57 -0
- package/react-utils/useHotKeys/useHotKeys.js.map +1 -0
- package/react-utils/useHotKeys/utils.js +29 -0
- package/react-utils/useHotKeys/utils.js.map +1 -0
- package/react-utils/useIsElementVisibleInDom/index.js +1 -0
- package/react-utils/useIsElementVisibleInDom/index.js.map +1 -0
- package/react-utils/useIsElementVisibleInDom/useForceUpdate.js +15 -0
- package/react-utils/useIsElementVisibleInDom/useForceUpdate.js.map +1 -0
- package/react-utils/useIsElementVisibleInDom/useIsElementVisibleInDom.js +26 -0
- package/react-utils/useIsElementVisibleInDom/useIsElementVisibleInDom.js.map +1 -0
- package/react-utils/useKeyboardShortcutsPaneState.js +29 -0
- package/react-utils/useKeyboardShortcutsPaneState.js.map +1 -0
- package/react-utils/useLocalStorage.js +31 -0
- package/react-utils/useLocalStorage.js.map +1 -0
- package/react-utils/useMutationWithInvalidation.js +25 -0
- package/react-utils/useMutationWithInvalidation.js.map +1 -0
- package/react-utils/useOnClickOutside.js +25 -0
- package/react-utils/useOnClickOutside.js.map +1 -0
- package/react-utils/usePersistedQuery.js +51 -0
- package/react-utils/usePersistedQuery.js.map +1 -0
- package/react-utils/usePrevious.js +10 -0
- package/react-utils/usePrevious.js.map +1 -0
- package/react-utils/useQueryParams.js +8 -0
- package/react-utils/useQueryParams.js.map +1 -0
- package/react-utils/useRegisterNavigationCheckpoint.js +35 -0
- package/react-utils/useRegisterNavigationCheckpoint.js.map +1 -0
- package/react-utils/useStateWithDependency.js +15 -0
- package/react-utils/useStateWithDependency.js.map +1 -0
- package/react-utils/useTimer.js +43 -0
- package/react-utils/useTimer.js.map +1 -0
- package/react-utils/useUpdateEffect.js +14 -0
- package/react-utils/useUpdateEffect.js.map +1 -0
- package/react-utils/withImmutableActions.js +22 -0
- package/react-utils/withImmutableActions.js.map +1 -0
- package/react-utils/withT.js +7 -0
- package/react-utils/withT.js.map +1 -0
- package/react-utils/withTitle.js +36 -0
- package/react-utils/withTitle.js.map +1 -0
- package/react-utils.d.ts +14 -2
- package/translations/en.json +100 -0
- package/utils/axios.js +10 -0
- package/utils/axios.js.map +1 -0
- package/utils/createSubscription.js +15 -0
- package/utils/createSubscription.js.map +1 -0
- package/utils/currencyFormat.js +42 -0
- package/utils/currencyFormat.js.map +1 -0
- package/utils/datetime.js +60 -0
- package/utils/datetime.js.map +1 -0
- package/utils/general.js +172 -0
- package/utils/general.js.map +1 -0
- package/utils/index.js +7 -0
- package/utils/index.js.map +1 -0
- package/utils/permissions.js +16 -0
- package/utils/permissions.js.map +1 -0
- package/utils.d.ts +18 -2
- package/README.md +0 -173
- package/constants.cjs.js.map +0 -1
- package/constants.js +0 -15
- package/constants.js.map +0 -1
- package/cypress-utils.cjs.js +0 -1819
- package/cypress-utils.cjs.js.map +0 -1
- package/cypress-utils.js +0 -1773
- package/cypress-utils.js.map +0 -1
- package/initializers.cjs.js +0 -2648
- package/initializers.cjs.js.map +0 -1
- package/initializers.js +0 -2634
- package/initializers.js.map +0 -1
- package/react-utils.cjs.js +0 -4915
- package/react-utils.cjs.js.map +0 -1
- package/react-utils.js +0 -4860
- package/react-utils.js.map +0 -1
- package/utils.cjs.js +0 -1280
- package/utils.cjs.js.map +0 -1
- package/utils.js +0 -1248
- package/utils.js.map +0 -1
- /package/{src → cjs}/translations/en.json +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"navigation.js","names":["_routes","require","_common","_navigation","_common2","_navigation2","verifyTabMenu","_ref","tabSelector","_ref$alias","alias","_ref$requestCount","requestCount","cy","interceptApi","get","click","waitForMultipleRequest","concat","verifyAttribute","selector","attr","value","clickOnHelpSubTab","tabText","openProfileOrHelpCenter","helpIconSelectors","helpButton","subTabLink","whatsNewButton","count","should","invoke","verifyHelpDocumentationLink","_ref2","articleTitle","_ref2$requestCount","clickByRemoveTargetAttr","documentationButton","commonSelectors","articlePageTitle","timeout","go","verifyKeyboardShortcutsPane","keyboardShortcutButton","helpIconTexts","keyboardShortcuts","keyboardShortcutPaneHeading","keyboardShortcutPaneCrossIcon","verifyWhatsNewTab","whatsNewHeading","whatsNew","openWhatsNewPane","whatsNewWidgetInfo","whatsNewWidgetCloseButton","last","waitForChatWidget","timeOut","arguments","length","undefined","defaultWait","ifNotExist","chatWidgetSelectors","widgetIframe","wait","navigationUtils","chatButton","liveChat","verifyChatWithUsTab","_ref3","_ref3$requestCount","interceptNonVersionedApi","url","requestApis","allChatPath","times","withinIframe","chatWidgetHomeCard","force","widgetSubmitButton","chatBubbleMessage","chatCloseButton","verifyMyProfileTab","_ref4","_ref4$requestCount","profileSelectors","tab","logoutLink","myProfileButton","profileTexts","myProfile","globalState","then","subdomainName","window","win","stub","as","callsFake","newUrl","location","href","myProfilePath","heading","profileSettings","verifyOrganizationTab","organizationSettingsButton","myOrganization","settingsPath","commonTexts","settings","_ref5","_ref5$count","_ref5$timeout","exports"],"sources":["../../../../src/cypress-utils/utils/navigation.js"],"sourcesContent":["/* eslint-disable xss/no-location-href-assign */\nimport { requestApis } from \"../constants/routes\";\nimport {\n commonSelectors,\n profileSelectors,\n} from \"../constants/selectors/common\";\nimport {\n chatWidgetSelectors,\n helpIconSelectors,\n} from \"../constants/selectors/navigation\";\nimport { commonTexts } from \"../constants/texts/common\";\nimport { helpIconTexts, profileTexts } from \"../constants/texts/navigation\";\n\nconst verifyTabMenu = ({\n tabSelector,\n alias = \"fetchData\",\n requestCount = 1,\n}) => {\n requestCount && cy.interceptApi(alias, requestCount);\n cy.get(tabSelector).click();\n requestCount && cy.waitForMultipleRequest(`@${alias}`, requestCount);\n cy.verifyAttribute({ selector: tabSelector, attr: \"class\", value: \"active\" });\n};\n\nconst clickOnHelpSubTab = (tabSelector, tabText) => {\n openProfileOrHelpCenter({\n tabSelector: helpIconSelectors.helpButton,\n subTabLink: helpIconSelectors.whatsNewButton,\n count: 5,\n });\n cy.get(tabSelector).should(\"have.text\", tabText).invoke(\"click\");\n};\n\nconst verifyHelpDocumentationLink = ({\n articleTitle,\n alias,\n requestCount = 3,\n}) => {\n openProfileOrHelpCenter({\n tabSelector: helpIconSelectors.helpButton,\n subTabLink: helpIconSelectors.whatsNewButton,\n count: 5,\n });\n cy.clickByRemoveTargetAttr(helpIconSelectors.documentationButton);\n\n cy.get(commonSelectors.articlePageTitle, { timeout: 10000 }).should(\n \"have.text\",\n articleTitle\n );\n cy.interceptApi(alias, requestCount);\n cy.go(\"back\");\n cy.waitForMultipleRequest(`@${alias}`, requestCount);\n};\n\nconst verifyKeyboardShortcutsPane = () => {\n clickOnHelpSubTab(\n helpIconSelectors.keyboardShortcutButton,\n helpIconTexts.keyboardShortcuts\n );\n\n cy.get(helpIconSelectors.keyboardShortcutPaneHeading).should(\n \"have.text\",\n helpIconTexts.keyboardShortcuts\n );\n cy.get(helpIconSelectors.keyboardShortcutPaneCrossIcon).click();\n};\n\nconst verifyWhatsNewTab = whatsNewHeading => {\n openProfileOrHelpCenter({\n tabSelector: helpIconSelectors.helpButton,\n subTabLink: helpIconSelectors.whatsNewButton,\n count: 5,\n });\n\n cy.get(helpIconSelectors.whatsNewButton).should(\n \"contain.text\",\n helpIconTexts.whatsNew\n );\n openWhatsNewPane();\n cy.get(helpIconSelectors.whatsNewWidgetInfo).should(\n \"have.text\",\n whatsNewHeading\n );\n cy.get(helpIconSelectors.whatsNewWidgetCloseButton).last().click();\n cy.get(helpIconSelectors.whatsNewWidgetInfo).should(\"not.exist\");\n};\n\nconst waitForChatWidget = (timeOut = 10, defaultWait = 500) => {\n if (timeOut === 0) return;\n cy.ifNotExist(chatWidgetSelectors.widgetIframe, () => {\n // eslint-disable-next-line cypress/no-unnecessary-waiting\n cy.wait(defaultWait);\n navigationUtils.clickOnHelpSubTab(\n helpIconSelectors.chatButton,\n helpIconTexts.liveChat\n );\n\n cy.ifNotExist(chatWidgetSelectors.widgetIframe, () => {\n waitForChatWidget(timeOut - 1);\n });\n });\n};\n\nconst verifyChatWithUsTab = ({ alias, requestCount = 3 }) => {\n requestCount &&\n cy.interceptNonVersionedApi({\n url: requestApis.allChatPath,\n alias,\n times: requestCount,\n });\n clickOnHelpSubTab(helpIconSelectors.chatButton, helpIconTexts.liveChat);\n requestCount && cy.waitForMultipleRequest(`@${alias}`, requestCount);\n\n waitForChatWidget();\n\n cy.withinIframe(chatWidgetSelectors.widgetIframe, () => {\n requestCount &&\n cy.interceptNonVersionedApi({\n url: requestApis.allChatPath,\n alias,\n times: requestCount,\n });\n\n cy.get(chatWidgetSelectors.chatWidgetHomeCard, { timeout: 10000 }).click({\n force: true,\n });\n requestCount && cy.wait(`@${alias}`, requestCount);\n requestCount &&\n cy.interceptNonVersionedApi({\n url: requestApis.allChatPath,\n alias,\n times: requestCount,\n });\n cy.get(chatWidgetSelectors.widgetSubmitButton).click();\n requestCount && cy.waitForMultipleRequest(`@${alias}`, requestCount);\n cy.get(chatWidgetSelectors.chatBubbleMessage).should(\"be.visible\");\n });\n cy.get(chatWidgetSelectors.chatCloseButton).click();\n cy.get(chatWidgetSelectors.widgetIframe).should(\"not.exist\");\n};\n\nconst verifyMyProfileTab = ({ alias, requestCount = 2 }) => {\n openProfileOrHelpCenter({\n tabSelector: profileSelectors.tab,\n subTabLink: profileSelectors.logoutLink,\n count: 5,\n });\n\n cy.get(profileSelectors.myProfileButton).should(\n \"have.text\",\n profileTexts.myProfile\n );\n\n cy.globalState(\"subdomainName\").then(subdomainName => {\n cy.window().then(win => {\n cy.stub(win, \"open\")\n .as(alias)\n .callsFake(newUrl => (win.location.href = newUrl));\n });\n cy.get(profileSelectors.myProfileButton).invoke(\"click\");\n cy.get(`@${alias}`).should(\"be.called\");\n cy.url().should(\"include\", requestApis.myProfilePath(subdomainName));\n });\n\n cy.get(commonSelectors.heading).should(\n \"have.text\",\n profileTexts.profileSettings\n );\n\n cy.globalState(\"subdomainName\").then(subdomainName =>\n cy.url().should(\"include\", requestApis.myProfilePath(subdomainName))\n );\n\n cy.interceptApi(alias, requestCount);\n cy.go(\"back\");\n cy.waitForMultipleRequest(`@${alias}`, requestCount);\n};\n\nconst verifyOrganizationTab = () => {\n openProfileOrHelpCenter({\n tabSelector: profileSelectors.tab,\n subTabLink: profileSelectors.logoutLink,\n count: 5,\n });\n\n cy.get(profileSelectors.organizationSettingsButton).should(\n \"have.text\",\n profileTexts.myOrganization\n );\n\n cy.globalState(\"subdomainName\").then(subdomainName => {\n cy.window().then(win => {\n cy.stub(win, \"open\")\n .as(\"navigateToSettings\")\n .callsFake(newUrl => (win.location.href = newUrl));\n });\n cy.get(profileSelectors.organizationSettingsButton).invoke(\"click\");\n cy.get(\"@navigateToSettings\").should(\"be.called\");\n cy.url().should(\"include\", requestApis.settingsPath(subdomainName));\n });\n\n cy.get(commonSelectors.heading).should(\"have.text\", commonTexts.settings);\n cy.globalState(\"subdomainName\").then(subdomainName =>\n cy.url().should(\"include\", requestApis.settingsPath(subdomainName))\n );\n};\n\nconst openProfileOrHelpCenter = ({\n tabSelector,\n subTabLink,\n count = 1,\n timeout = 2000,\n}) => {\n if (count === 0) return;\n cy.get(tabSelector).click();\n cy.ifNotExist(subTabLink, () => {\n cy.wait(timeout); // eslint-disable-line cypress/no-unnecessary-waiting\n openProfileOrHelpCenter(count - 1);\n });\n};\n\nconst openWhatsNewPane = (count = 7, timeout = 2000) => {\n if (count === 0) return;\n cy.get(helpIconSelectors.whatsNewButton).invoke(\"click\");\n cy.ifNotExist(helpIconSelectors.whatsNewWidgetInfo, () => {\n cy.wait(timeout); // eslint-disable-line cypress/no-unnecessary-waiting\n openWhatsNewPane(count - 1);\n });\n};\n\nexport const navigationUtils = {\n verifyTabMenu,\n clickOnHelpSubTab,\n verifyHelpDocumentationLink,\n verifyKeyboardShortcutsPane,\n verifyWhatsNewTab,\n verifyChatWithUsTab,\n verifyMyProfileTab,\n verifyOrganizationTab,\n openProfileOrHelpCenter,\n openWhatsNewPane,\n};\n"],"mappings":"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"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.createOrganization = void 0;
|
|
7
|
+
var _common = require("./common");
|
|
8
|
+
var _routes = require("../constants/routes");
|
|
9
|
+
var _common2 = require("../constants/selectors/common");
|
|
10
|
+
var _signUp = require("../constants/selectors/signUp");
|
|
11
|
+
var _signUp2 = require("../constants/texts/signUp");
|
|
12
|
+
var extractSubdomainFromError = function extractSubdomainFromError(inputString) {
|
|
13
|
+
var regex = /cypresstest[a-zA-Z0-9-]+/g;
|
|
14
|
+
var matches = inputString.match(regex);
|
|
15
|
+
return matches[1];
|
|
16
|
+
};
|
|
17
|
+
var updateSubdomainIfExists = function updateSubdomainIfExists(appName) {
|
|
18
|
+
cy.ifExist(_signUp.signUpSelectors.subdomainError, function () {
|
|
19
|
+
cy.get(_signUp.signUpSelectors.subdomainError).invoke("text").then(function (text) {
|
|
20
|
+
cy.intercept({
|
|
21
|
+
url: _routes.requestApis.subdomainAvailability,
|
|
22
|
+
times: 1
|
|
23
|
+
}).as("subdomainRequest");
|
|
24
|
+
var newOrganizationName = extractSubdomainFromError(text);
|
|
25
|
+
cy.clearAndType(_signUp.signUpSelectors.subdomainNameTextField, newOrganizationName);
|
|
26
|
+
cy.wait("@subdomainRequest");
|
|
27
|
+
cy.ifNotExist(_signUp.signUpSelectors.subdomainError, function () {
|
|
28
|
+
cy.task("updateGlobalState", {
|
|
29
|
+
key: "subdomainName",
|
|
30
|
+
value: newOrganizationName
|
|
31
|
+
});
|
|
32
|
+
cy.task("updateGlobalState", {
|
|
33
|
+
key: "businessName",
|
|
34
|
+
value: newOrganizationName
|
|
35
|
+
});
|
|
36
|
+
var newBaseUrl = "https://".concat(newOrganizationName, ".").concat(appName, ".").concat(_common.env.tld);
|
|
37
|
+
Cypress.config("baseUrl", newBaseUrl);
|
|
38
|
+
cy.clearAndType(_signUp.signUpSelectors.organizationNameTextField, newOrganizationName);
|
|
39
|
+
});
|
|
40
|
+
});
|
|
41
|
+
cy.ifExist(_signUp.signUpSelectors.subdomainError, function () {
|
|
42
|
+
return updateSubdomainIfExists(appName);
|
|
43
|
+
});
|
|
44
|
+
});
|
|
45
|
+
};
|
|
46
|
+
var createOrganization = function createOrganization(_ref) {
|
|
47
|
+
var email = _ref.email,
|
|
48
|
+
businessName = _ref.businessName,
|
|
49
|
+
subdomainName = _ref.subdomainName,
|
|
50
|
+
firstName = _ref.firstName,
|
|
51
|
+
lastName = _ref.lastName,
|
|
52
|
+
appName = _ref.appName;
|
|
53
|
+
var isMailosaurEmail = email.includes("mailosaur");
|
|
54
|
+
var defaultOtp = "123456";
|
|
55
|
+
var appNameInLowerCase = appName.toLowerCase();
|
|
56
|
+
var isNeetoAuth = appNameInLowerCase === "neetoauth";
|
|
57
|
+
var authUrl = "https://app.neetoauth.".concat(_common.env.tld, "/signups/new");
|
|
58
|
+
isNeetoAuth ? cy.visit(authUrl) : cy.visit("".concat(authUrl, "?redirect_uri=").concat(appNameInLowerCase, ".").concat(_common.env.tld));
|
|
59
|
+
cy.clearAndType(_signUp.signUpSelectors.emailTextField, email);
|
|
60
|
+
cy.intercept({
|
|
61
|
+
url: _routes.requestApis.signUp,
|
|
62
|
+
times: 2
|
|
63
|
+
}).as("signupRequest");
|
|
64
|
+
cy.get(_signUp.signUpSelectors.submitButton).click();
|
|
65
|
+
cy.wait("@signupRequest");
|
|
66
|
+
if (isMailosaurEmail) {
|
|
67
|
+
cy.getEmailContent({
|
|
68
|
+
sentTo: email,
|
|
69
|
+
subject: _signUp2.signUpTexts.loginCode
|
|
70
|
+
}).then(function (emailBody) {
|
|
71
|
+
var otp = emailBody.html.codes[0].value;
|
|
72
|
+
cy.get(_signUp.signUpSelectors.otpTextBox).type(otp);
|
|
73
|
+
});
|
|
74
|
+
} else cy.get(_signUp.signUpSelectors.otpTextBox).type(defaultOtp);
|
|
75
|
+
cy.wait("@signupRequest");
|
|
76
|
+
cy.intercept({
|
|
77
|
+
url: _routes.requestApis.subdomainAvailability,
|
|
78
|
+
times: 1
|
|
79
|
+
}).as("subdomainRequest");
|
|
80
|
+
cy.clearAndType(_signUp.signUpSelectors.organizationNameTextField, businessName);
|
|
81
|
+
cy.clearAndType(_signUp.signUpSelectors.subdomainNameTextField, subdomainName);
|
|
82
|
+
cy.wait("@subdomainRequest");
|
|
83
|
+
updateSubdomainIfExists(appNameInLowerCase);
|
|
84
|
+
cy.intercept({
|
|
85
|
+
url: _routes.requestApis.signUp,
|
|
86
|
+
times: 1
|
|
87
|
+
}).as("signupRequest");
|
|
88
|
+
cy.intercept({
|
|
89
|
+
url: _routes.requestApis.countries,
|
|
90
|
+
times: 1
|
|
91
|
+
}).as("fetchCountries");
|
|
92
|
+
cy.get(_signUp.signUpSelectors.organizationSubmitButton).click();
|
|
93
|
+
cy.wait("@signupRequest");
|
|
94
|
+
cy.url({
|
|
95
|
+
timeout: 15000
|
|
96
|
+
}).should("include", _signUp2.signUpTexts.profile);
|
|
97
|
+
cy.wait("@fetchCountries");
|
|
98
|
+
cy.clearAndType(_signUp.signUpSelectors.firstNameTextField, firstName);
|
|
99
|
+
cy.clearAndType(_signUp.signUpSelectors.lastNameTextField, lastName);
|
|
100
|
+
cy.get(_common2.commonSelectors.checkbox).click();
|
|
101
|
+
cy.intercept({
|
|
102
|
+
url: _routes.requestApis.signUp,
|
|
103
|
+
times: 1
|
|
104
|
+
}).as("setupProfile");
|
|
105
|
+
cy.get(_signUp.signUpSelectors.profileSubmitButton).click();
|
|
106
|
+
cy.wait("@setupProfile");
|
|
107
|
+
};
|
|
108
|
+
exports.createOrganization = createOrganization;
|
|
109
|
+
//# sourceMappingURL=organization.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"organization.js","names":["_common","require","_routes","_common2","_signUp","_signUp2","extractSubdomainFromError","inputString","regex","matches","match","updateSubdomainIfExists","appName","cy","ifExist","signUpSelectors","subdomainError","get","invoke","then","text","intercept","url","requestApis","subdomainAvailability","times","as","newOrganizationName","clearAndType","subdomainNameTextField","wait","ifNotExist","task","key","value","newBaseUrl","concat","env","tld","Cypress","config","organizationNameTextField","createOrganization","_ref","email","businessName","subdomainName","firstName","lastName","isMailosaurEmail","includes","defaultOtp","appNameInLowerCase","toLowerCase","isNeetoAuth","authUrl","visit","emailTextField","signUp","submitButton","click","getEmailContent","sentTo","subject","signUpTexts","loginCode","emailBody","otp","html","codes","otpTextBox","type","countries","organizationSubmitButton","timeout","should","profile","firstNameTextField","lastNameTextField","commonSelectors","checkbox","profileSubmitButton","exports"],"sources":["../../../../src/cypress-utils/utils/organization.js"],"sourcesContent":["import { env } from \"./common\";\n\nimport { requestApis } from \"../constants/routes\";\nimport { commonSelectors } from \"../constants/selectors/common\";\nimport { signUpSelectors } from \"../constants/selectors/signUp\";\nimport { signUpTexts } from \"../constants/texts/signUp\";\n\nconst extractSubdomainFromError = inputString => {\n const regex = /cypresstest[a-zA-Z0-9-]+/g;\n const matches = inputString.match(regex);\n\n return matches[1];\n};\n\nconst updateSubdomainIfExists = appName => {\n cy.ifExist(signUpSelectors.subdomainError, () => {\n cy.get(signUpSelectors.subdomainError)\n .invoke(\"text\")\n .then(text => {\n cy.intercept({ url: requestApis.subdomainAvailability, times: 1 }).as(\n \"subdomainRequest\"\n );\n const newOrganizationName = extractSubdomainFromError(text);\n cy.clearAndType(\n signUpSelectors.subdomainNameTextField,\n newOrganizationName\n );\n cy.wait(\"@subdomainRequest\");\n\n cy.ifNotExist(signUpSelectors.subdomainError, () => {\n cy.task(\"updateGlobalState\", {\n key: \"subdomainName\",\n value: newOrganizationName,\n });\n\n cy.task(\"updateGlobalState\", {\n key: \"businessName\",\n value: newOrganizationName,\n });\n const newBaseUrl = `https://${newOrganizationName}.${appName}.${env.tld}`;\n Cypress.config(\"baseUrl\", newBaseUrl);\n cy.clearAndType(\n signUpSelectors.organizationNameTextField,\n newOrganizationName\n );\n });\n });\n\n cy.ifExist(signUpSelectors.subdomainError, () =>\n updateSubdomainIfExists(appName)\n );\n });\n};\n\nexport const createOrganization = ({\n email,\n businessName,\n subdomainName,\n firstName,\n lastName,\n appName,\n}) => {\n const isMailosaurEmail = email.includes(\"mailosaur\");\n const defaultOtp = \"123456\";\n const appNameInLowerCase = appName.toLowerCase();\n const isNeetoAuth = appNameInLowerCase === \"neetoauth\";\n const authUrl = `https://app.neetoauth.${env.tld}/signups/new`;\n isNeetoAuth\n ? cy.visit(authUrl)\n : cy.visit(`${authUrl}?redirect_uri=${appNameInLowerCase}.${env.tld}`);\n cy.clearAndType(signUpSelectors.emailTextField, email);\n cy.intercept({ url: requestApis.signUp, times: 2 }).as(\"signupRequest\");\n cy.get(signUpSelectors.submitButton).click();\n cy.wait(\"@signupRequest\");\n if (isMailosaurEmail) {\n cy.getEmailContent({ sentTo: email, subject: signUpTexts.loginCode }).then(\n emailBody => {\n const otp = emailBody.html.codes[0].value;\n cy.get(signUpSelectors.otpTextBox).type(otp);\n }\n );\n } else cy.get(signUpSelectors.otpTextBox).type(defaultOtp);\n\n cy.wait(\"@signupRequest\");\n cy.intercept({ url: requestApis.subdomainAvailability, times: 1 }).as(\n \"subdomainRequest\"\n );\n cy.clearAndType(signUpSelectors.organizationNameTextField, businessName);\n cy.clearAndType(signUpSelectors.subdomainNameTextField, subdomainName);\n cy.wait(\"@subdomainRequest\");\n updateSubdomainIfExists(appNameInLowerCase);\n\n cy.intercept({ url: requestApis.signUp, times: 1 }).as(\"signupRequest\");\n cy.intercept({ url: requestApis.countries, times: 1 }).as(\"fetchCountries\");\n cy.get(signUpSelectors.organizationSubmitButton).click();\n cy.wait(\"@signupRequest\");\n cy.url({ timeout: 15000 }).should(\"include\", signUpTexts.profile);\n cy.wait(\"@fetchCountries\");\n cy.clearAndType(signUpSelectors.firstNameTextField, firstName);\n cy.clearAndType(signUpSelectors.lastNameTextField, lastName);\n cy.get(commonSelectors.checkbox).click();\n cy.intercept({ url: requestApis.signUp, times: 1 }).as(\"setupProfile\");\n cy.get(signUpSelectors.profileSubmitButton).click();\n cy.wait(\"@setupProfile\");\n};\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AAEA,IAAMK,yBAAyB,GAAG,SAA5BA,yBAAyBA,CAAGC,WAAW,EAAI;EAC/C,IAAMC,KAAK,GAAG,2BAA2B;EACzC,IAAMC,OAAO,GAAGF,WAAW,CAACG,KAAK,CAACF,KAAK,CAAC;EAExC,OAAOC,OAAO,CAAC,CAAC,CAAC;AACnB,CAAC;AAED,IAAME,uBAAuB,GAAG,SAA1BA,uBAAuBA,CAAGC,OAAO,EAAI;EACzCC,EAAE,CAACC,OAAO,CAACC,uBAAe,CAACC,cAAc,EAAE,YAAM;IAC/CH,EAAE,CAACI,GAAG,CAACF,uBAAe,CAACC,cAAc,CAAC,CACnCE,MAAM,CAAC,MAAM,CAAC,CACdC,IAAI,CAAC,UAAAC,IAAI,EAAI;MACZP,EAAE,CAACQ,SAAS,CAAC;QAAEC,GAAG,EAAEC,mBAAW,CAACC,qBAAqB;QAAEC,KAAK,EAAE;MAAE,CAAC,CAAC,CAACC,EAAE,CACnE,kBAAkB,CACnB;MACD,IAAMC,mBAAmB,GAAGrB,yBAAyB,CAACc,IAAI,CAAC;MAC3DP,EAAE,CAACe,YAAY,CACbb,uBAAe,CAACc,sBAAsB,EACtCF,mBAAmB,CACpB;MACDd,EAAE,CAACiB,IAAI,CAAC,mBAAmB,CAAC;MAE5BjB,EAAE,CAACkB,UAAU,CAAChB,uBAAe,CAACC,cAAc,EAAE,YAAM;QAClDH,EAAE,CAACmB,IAAI,CAAC,mBAAmB,EAAE;UAC3BC,GAAG,EAAE,eAAe;UACpBC,KAAK,EAAEP;QACT,CAAC,CAAC;QAEFd,EAAE,CAACmB,IAAI,CAAC,mBAAmB,EAAE;UAC3BC,GAAG,EAAE,cAAc;UACnBC,KAAK,EAAEP;QACT,CAAC,CAAC;QACF,IAAMQ,UAAU,cAAAC,MAAA,CAAcT,mBAAmB,OAAAS,MAAA,CAAIxB,OAAO,OAAAwB,MAAA,CAAIC,WAAG,CAACC,GAAG,CAAE;QACzEC,OAAO,CAACC,MAAM,CAAC,SAAS,EAAEL,UAAU,CAAC;QACrCtB,EAAE,CAACe,YAAY,CACbb,uBAAe,CAAC0B,yBAAyB,EACzCd,mBAAmB,CACpB;MACH,CAAC,CAAC;IACJ,CAAC,CAAC;IAEJd,EAAE,CAACC,OAAO,CAACC,uBAAe,CAACC,cAAc,EAAE;MAAA,OACzCL,uBAAuB,CAACC,OAAO,CAAC;IAAA,EACjC;EACH,CAAC,CAAC;AACJ,CAAC;AAEM,IAAM8B,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAAC,IAAA,EAOzB;EAAA,IANJC,KAAK,GAAAD,IAAA,CAALC,KAAK;IACLC,YAAY,GAAAF,IAAA,CAAZE,YAAY;IACZC,aAAa,GAAAH,IAAA,CAAbG,aAAa;IACbC,SAAS,GAAAJ,IAAA,CAATI,SAAS;IACTC,QAAQ,GAAAL,IAAA,CAARK,QAAQ;IACRpC,OAAO,GAAA+B,IAAA,CAAP/B,OAAO;EAEP,IAAMqC,gBAAgB,GAAGL,KAAK,CAACM,QAAQ,CAAC,WAAW,CAAC;EACpD,IAAMC,UAAU,GAAG,QAAQ;EAC3B,IAAMC,kBAAkB,GAAGxC,OAAO,CAACyC,WAAW,EAAE;EAChD,IAAMC,WAAW,GAAGF,kBAAkB,KAAK,WAAW;EACtD,IAAMG,OAAO,4BAAAnB,MAAA,CAA4BC,WAAG,CAACC,GAAG,iBAAc;EAC9DgB,WAAW,GACPzC,EAAE,CAAC2C,KAAK,CAACD,OAAO,CAAC,GACjB1C,EAAE,CAAC2C,KAAK,IAAApB,MAAA,CAAImB,OAAO,oBAAAnB,MAAA,CAAiBgB,kBAAkB,OAAAhB,MAAA,CAAIC,WAAG,CAACC,GAAG,EAAG;EACxEzB,EAAE,CAACe,YAAY,CAACb,uBAAe,CAAC0C,cAAc,EAAEb,KAAK,CAAC;EACtD/B,EAAE,CAACQ,SAAS,CAAC;IAAEC,GAAG,EAAEC,mBAAW,CAACmC,MAAM;IAAEjC,KAAK,EAAE;EAAE,CAAC,CAAC,CAACC,EAAE,CAAC,eAAe,CAAC;EACvEb,EAAE,CAACI,GAAG,CAACF,uBAAe,CAAC4C,YAAY,CAAC,CAACC,KAAK,EAAE;EAC5C/C,EAAE,CAACiB,IAAI,CAAC,gBAAgB,CAAC;EACzB,IAAImB,gBAAgB,EAAE;IACpBpC,EAAE,CAACgD,eAAe,CAAC;MAAEC,MAAM,EAAElB,KAAK;MAAEmB,OAAO,EAAEC,oBAAW,CAACC;IAAU,CAAC,CAAC,CAAC9C,IAAI,CACxE,UAAA+C,SAAS,EAAI;MACX,IAAMC,GAAG,GAAGD,SAAS,CAACE,IAAI,CAACC,KAAK,CAAC,CAAC,CAAC,CAACnC,KAAK;MACzCrB,EAAE,CAACI,GAAG,CAACF,uBAAe,CAACuD,UAAU,CAAC,CAACC,IAAI,CAACJ,GAAG,CAAC;IAC9C,CAAC,CACF;EACH,CAAC,MAAMtD,EAAE,CAACI,GAAG,CAACF,uBAAe,CAACuD,UAAU,CAAC,CAACC,IAAI,CAACpB,UAAU,CAAC;EAE1DtC,EAAE,CAACiB,IAAI,CAAC,gBAAgB,CAAC;EACzBjB,EAAE,CAACQ,SAAS,CAAC;IAAEC,GAAG,EAAEC,mBAAW,CAACC,qBAAqB;IAAEC,KAAK,EAAE;EAAE,CAAC,CAAC,CAACC,EAAE,CACnE,kBAAkB,CACnB;EACDb,EAAE,CAACe,YAAY,CAACb,uBAAe,CAAC0B,yBAAyB,EAAEI,YAAY,CAAC;EACxEhC,EAAE,CAACe,YAAY,CAACb,uBAAe,CAACc,sBAAsB,EAAEiB,aAAa,CAAC;EACtEjC,EAAE,CAACiB,IAAI,CAAC,mBAAmB,CAAC;EAC5BnB,uBAAuB,CAACyC,kBAAkB,CAAC;EAE3CvC,EAAE,CAACQ,SAAS,CAAC;IAAEC,GAAG,EAAEC,mBAAW,CAACmC,MAAM;IAAEjC,KAAK,EAAE;EAAE,CAAC,CAAC,CAACC,EAAE,CAAC,eAAe,CAAC;EACvEb,EAAE,CAACQ,SAAS,CAAC;IAAEC,GAAG,EAAEC,mBAAW,CAACiD,SAAS;IAAE/C,KAAK,EAAE;EAAE,CAAC,CAAC,CAACC,EAAE,CAAC,gBAAgB,CAAC;EAC3Eb,EAAE,CAACI,GAAG,CAACF,uBAAe,CAAC0D,wBAAwB,CAAC,CAACb,KAAK,EAAE;EACxD/C,EAAE,CAACiB,IAAI,CAAC,gBAAgB,CAAC;EACzBjB,EAAE,CAACS,GAAG,CAAC;IAAEoD,OAAO,EAAE;EAAM,CAAC,CAAC,CAACC,MAAM,CAAC,SAAS,EAAEX,oBAAW,CAACY,OAAO,CAAC;EACjE/D,EAAE,CAACiB,IAAI,CAAC,iBAAiB,CAAC;EAC1BjB,EAAE,CAACe,YAAY,CAACb,uBAAe,CAAC8D,kBAAkB,EAAE9B,SAAS,CAAC;EAC9DlC,EAAE,CAACe,YAAY,CAACb,uBAAe,CAAC+D,iBAAiB,EAAE9B,QAAQ,CAAC;EAC5DnC,EAAE,CAACI,GAAG,CAAC8D,wBAAe,CAACC,QAAQ,CAAC,CAACpB,KAAK,EAAE;EACxC/C,EAAE,CAACQ,SAAS,CAAC;IAAEC,GAAG,EAAEC,mBAAW,CAACmC,MAAM;IAAEjC,KAAK,EAAE;EAAE,CAAC,CAAC,CAACC,EAAE,CAAC,cAAc,CAAC;EACtEb,EAAE,CAACI,GAAG,CAACF,uBAAe,CAACkE,mBAAmB,CAAC,CAACrB,KAAK,EAAE;EACnD/C,EAAE,CAACiB,IAAI,CAAC,eAAe,CAAC;AAC1B,CAAC;AAACoD,OAAA,CAAAxC,kBAAA,GAAAA,kBAAA"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.verifyCrossSiteScript = void 0;
|
|
7
|
+
var _common = require("../constants/selectors/common");
|
|
8
|
+
var _common2 = require("../constants/texts/common");
|
|
9
|
+
var verifyCrossSiteScript = function verifyCrossSiteScript(inputSelector, submitSelector) {
|
|
10
|
+
cy.interceptApi("searchRequest");
|
|
11
|
+
cy.clearAndType(inputSelector, _common2.commonTexts.crossSiteScript);
|
|
12
|
+
submitSelector && cy.get(submitSelector).click();
|
|
13
|
+
cy.wait("@searchRequest");
|
|
14
|
+
cy.get(_common.commonSelectors.windowAlert).should("not.exist");
|
|
15
|
+
};
|
|
16
|
+
exports.verifyCrossSiteScript = verifyCrossSiteScript;
|
|
17
|
+
//# sourceMappingURL=validation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.js","names":["_common","require","_common2","verifyCrossSiteScript","inputSelector","submitSelector","cy","interceptApi","clearAndType","commonTexts","crossSiteScript","get","click","wait","commonSelectors","windowAlert","should","exports"],"sources":["../../../../src/cypress-utils/utils/validation.js"],"sourcesContent":["import { commonSelectors } from \"../constants/selectors/common\";\nimport { commonTexts } from \"../constants/texts/common\";\n\nexport const verifyCrossSiteScript = (inputSelector, submitSelector) => {\n cy.interceptApi(\"searchRequest\");\n cy.clearAndType(inputSelector, commonTexts.crossSiteScript);\n submitSelector && cy.get(submitSelector).click();\n cy.wait(\"@searchRequest\");\n cy.get(commonSelectors.windowAlert).should(\"not.exist\");\n};\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAEO,IAAME,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAIC,aAAa,EAAEC,cAAc,EAAK;EACtEC,EAAE,CAACC,YAAY,CAAC,eAAe,CAAC;EAChCD,EAAE,CAACE,YAAY,CAACJ,aAAa,EAAEK,oBAAW,CAACC,eAAe,CAAC;EAC3DL,cAAc,IAAIC,EAAE,CAACK,GAAG,CAACN,cAAc,CAAC,CAACO,KAAK,EAAE;EAChDN,EAAE,CAACO,IAAI,CAAC,gBAAgB,CAAC;EACzBP,EAAE,CAACK,GAAG,CAACG,uBAAe,CAACC,WAAW,CAAC,CAACC,MAAM,CAAC,WAAW,CAAC;AACzD,CAAC;AAACC,OAAA,CAAAd,qBAAA,GAAAA,qBAAA"}
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = initializeAxios;
|
|
8
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
9
|
+
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
10
|
+
var _axios = _interopRequireDefault(require("axios"));
|
|
11
|
+
var _i18next = _interopRequireDefault(require("i18next"));
|
|
12
|
+
var _neetoCist = require("@bigbinary/neeto-cist");
|
|
13
|
+
var _reactUtils = require("@bigbinary/neeto-commons-frontend/react-utils");
|
|
14
|
+
var _utils = require("@bigbinary/neeto-commons-frontend/utils");
|
|
15
|
+
var _neetoui = require("@bigbinary/neetoui");
|
|
16
|
+
var _ramda = require("ramda");
|
|
17
|
+
var _paramsSerializer = _interopRequireDefault(require("./paramsSerializer"));
|
|
18
|
+
var _constants = require("../constants");
|
|
19
|
+
var shouldNot = function shouldNot(skip) {
|
|
20
|
+
return (0, _typeof2["default"])(skip) === "object" || !skip;
|
|
21
|
+
};
|
|
22
|
+
var shouldShowToastr = function shouldShowToastr(response) {
|
|
23
|
+
return typeof response === "string" || (0, _typeof2["default"])(response) === "object" && ((response === null || response === void 0 ? void 0 : response.notice) || (response === null || response === void 0 ? void 0 : response.noticeCode));
|
|
24
|
+
};
|
|
25
|
+
var setAuthHeaders = function setAuthHeaders() {
|
|
26
|
+
var _document$querySelect, _axios$defaults$heade;
|
|
27
|
+
// @ts-ignore
|
|
28
|
+
_axios["default"].defaults.headers = (_axios$defaults$heade = {}, (0, _defineProperty2["default"])(_axios$defaults$heade, _constants.HEADERS_KEYS.accept, "application/json"), (0, _defineProperty2["default"])(_axios$defaults$heade, _constants.HEADERS_KEYS.contentType, "application/json"), (0, _defineProperty2["default"])(_axios$defaults$heade, _constants.HEADERS_KEYS.xCsrfToken, (_document$querySelect = document.querySelector('[name="csrf-token"]')) === null || _document$querySelect === void 0 ? void 0 : _document$querySelect.getAttribute("content")), _axios$defaults$heade);
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
// pipe function from ramda doesn't accept array of functions.
|
|
32
|
+
// We can't use spread operator too. So this is a workaround.
|
|
33
|
+
var createPipe = function createPipe(functions) {
|
|
34
|
+
return function (data) {
|
|
35
|
+
return functions.reduce(function (acc, fn) {
|
|
36
|
+
return fn(acc);
|
|
37
|
+
}, data);
|
|
38
|
+
};
|
|
39
|
+
};
|
|
40
|
+
var transformResponseKeysToCamelCase = function transformResponseKeysToCamelCase(response) {
|
|
41
|
+
var _response$config$tran = response.config.transformResponseCase,
|
|
42
|
+
transformResponseCase = _response$config$tran === void 0 ? true : _response$config$tran;
|
|
43
|
+
if (response.data && transformResponseCase) {
|
|
44
|
+
response.data = (0, _neetoCist.keysToCamelCase)(response.data);
|
|
45
|
+
}
|
|
46
|
+
return response;
|
|
47
|
+
};
|
|
48
|
+
var transformErrorKeysToCamelCase = function transformErrorKeysToCamelCase(error) {
|
|
49
|
+
var _error$config, _error$response;
|
|
50
|
+
var _ref = (_error$config = error.config) !== null && _error$config !== void 0 ? _error$config : {},
|
|
51
|
+
_ref$transformRespons = _ref.transformResponseCase,
|
|
52
|
+
transformResponseCase = _ref$transformRespons === void 0 ? true : _ref$transformRespons;
|
|
53
|
+
if ((_error$response = error.response) !== null && _error$response !== void 0 && _error$response.data && transformResponseCase) {
|
|
54
|
+
error.response.data = (0, _neetoCist.keysToCamelCase)(error.response.data);
|
|
55
|
+
}
|
|
56
|
+
return error;
|
|
57
|
+
};
|
|
58
|
+
var showSuccessToastr = function showSuccessToastr(response) {
|
|
59
|
+
var _response$config$show = response.config.showToastr,
|
|
60
|
+
showToastr = _response$config$show === void 0 ? true : _response$config$show;
|
|
61
|
+
if (!showToastr) return response;
|
|
62
|
+
if ((0, _neetoCist.matches)({
|
|
63
|
+
showThumbsUpToastr: true
|
|
64
|
+
}, response.data)) {
|
|
65
|
+
// @ts-ignore
|
|
66
|
+
_neetoui.Toastr.success("", {
|
|
67
|
+
icon: "👍",
|
|
68
|
+
className: "w-20"
|
|
69
|
+
});
|
|
70
|
+
} else if ((0, _neetoCist.matches)({
|
|
71
|
+
noticeCode: "thumbs_up"
|
|
72
|
+
}, response.data)) {
|
|
73
|
+
// @ts-ignore
|
|
74
|
+
_neetoui.Toastr.success("", {
|
|
75
|
+
icon: "👍",
|
|
76
|
+
className: "w-20"
|
|
77
|
+
});
|
|
78
|
+
} else if (shouldShowToastr(response.data)) {
|
|
79
|
+
_neetoui.Toastr.success(response.data);
|
|
80
|
+
}
|
|
81
|
+
return response;
|
|
82
|
+
};
|
|
83
|
+
var pullDataFromResponse = function pullDataFromResponse(response) {
|
|
84
|
+
var _response$config$incl = response.config.includeMetadataInResponse,
|
|
85
|
+
includeMetadataInResponse = _response$config$incl === void 0 ? false : _response$config$incl;
|
|
86
|
+
return includeMetadataInResponse ? response : response.data;
|
|
87
|
+
};
|
|
88
|
+
var buildSuccessResponseHandler = function buildSuccessResponseHandler(skip) {
|
|
89
|
+
var interceptors = [];
|
|
90
|
+
if (!(skip !== null && skip !== void 0 && skip.transformCase)) interceptors.push(transformResponseKeysToCamelCase);
|
|
91
|
+
if (!(skip !== null && skip !== void 0 && skip.showToastr)) interceptors.push(showSuccessToastr);
|
|
92
|
+
if (!(skip !== null && skip !== void 0 && skip.pullDataFromResponse)) interceptors.push(pullDataFromResponse);
|
|
93
|
+
return createPipe(interceptors);
|
|
94
|
+
};
|
|
95
|
+
var handleUnauthorizedErrorResponse = function handleUnauthorizedErrorResponse(error) {
|
|
96
|
+
var _error$response2, _error$config2;
|
|
97
|
+
if (((_error$response2 = error.response) === null || _error$response2 === void 0 ? void 0 : _error$response2.status) !== 401) return error;
|
|
98
|
+
(0, _utils.resetAuthTokens)();
|
|
99
|
+
var _ref2 = (_error$config2 = error.config) !== null && _error$config2 !== void 0 ? _error$config2 : {},
|
|
100
|
+
_ref2$redirectOnError = _ref2.redirectOnError,
|
|
101
|
+
redirectOnError = _ref2$redirectOnError === void 0 ? true : _ref2$redirectOnError;
|
|
102
|
+
if (redirectOnError) {
|
|
103
|
+
setTimeout(function () {
|
|
104
|
+
var redirectTo = window.location.pathname === "/login" ? "/login" : "/login?redirect_uri=".concat(encodeURIComponent(window.location.href));
|
|
105
|
+
// eslint-disable-next-line xss/no-location-href-assign
|
|
106
|
+
window.location.href = redirectTo;
|
|
107
|
+
}, 300);
|
|
108
|
+
}
|
|
109
|
+
return error;
|
|
110
|
+
};
|
|
111
|
+
var showErrorToastr = function showErrorToastr(error) {
|
|
112
|
+
var _error$config3, _error$response3;
|
|
113
|
+
var _ref3 = (_error$config3 = error.config) !== null && _error$config3 !== void 0 ? _error$config3 : {},
|
|
114
|
+
_ref3$showToastr = _ref3.showToastr,
|
|
115
|
+
showToastr = _ref3$showToastr === void 0 ? true : _ref3$showToastr;
|
|
116
|
+
if (!showToastr) return error;
|
|
117
|
+
if (error.message === "Network Error") {
|
|
118
|
+
// @ts-ignore
|
|
119
|
+
_neetoui.Toastr.error(_i18next["default"].t("neetoCommons.toastr.error.networkError"));
|
|
120
|
+
} else if (![403, 404].includes((_error$response3 = error.response) === null || _error$response3 === void 0 ? void 0 : _error$response3.status) && !_axios["default"].isCancel(error)) {
|
|
121
|
+
// we already display a page in case of 403 & 404 and we don't want to show a toastr for cancelled requests.
|
|
122
|
+
_neetoui.Toastr.error(error);
|
|
123
|
+
}
|
|
124
|
+
return error;
|
|
125
|
+
};
|
|
126
|
+
var getUrlPathName = function getUrlPathName(url) {
|
|
127
|
+
try {
|
|
128
|
+
return new URL(url).pathname;
|
|
129
|
+
} catch (_unused) {
|
|
130
|
+
return url;
|
|
131
|
+
}
|
|
132
|
+
};
|
|
133
|
+
var handle404ErrorResponse = function handle404ErrorResponse(error) {
|
|
134
|
+
var _error$config4, _error$response4;
|
|
135
|
+
var _ref4 = (_error$config4 = error.config) !== null && _error$config4 !== void 0 ? _error$config4 : {},
|
|
136
|
+
_ref4$show404ErrorPag = _ref4.show404ErrorPage,
|
|
137
|
+
show404ErrorPage = _ref4$show404ErrorPag === void 0 ? true : _ref4$show404ErrorPag,
|
|
138
|
+
_ref4$show403ErrorPag = _ref4.show403ErrorPage,
|
|
139
|
+
show403ErrorPage = _ref4$show403ErrorPag === void 0 ? true : _ref4$show403ErrorPag;
|
|
140
|
+
var status = (_error$response4 = error.response) === null || _error$response4 === void 0 ? void 0 : _error$response4.status;
|
|
141
|
+
if (status === 404 && show404ErrorPage || status === 403 && show403ErrorPage) {
|
|
142
|
+
var _error$request;
|
|
143
|
+
var fullUrl = ((_error$request = error.request) === null || _error$request === void 0 ? void 0 : _error$request.responseURL) || error.config.url;
|
|
144
|
+
_reactUtils.useErrorDisplayStore.setState({
|
|
145
|
+
showErrorPage: true,
|
|
146
|
+
statusCode: status,
|
|
147
|
+
failedApiUrl: fullUrl,
|
|
148
|
+
failedApiPath: getUrlPathName(fullUrl)
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
return error;
|
|
152
|
+
};
|
|
153
|
+
var buildErrorResponseHandler = function buildErrorResponseHandler(skip) {
|
|
154
|
+
var interceptors = [];
|
|
155
|
+
if (!(skip !== null && skip !== void 0 && skip.transformCase)) interceptors.push(transformErrorKeysToCamelCase);
|
|
156
|
+
if (!(skip !== null && skip !== void 0 && skip.show404ErrorPage)) interceptors.push(handle404ErrorResponse);
|
|
157
|
+
if (!(skip !== null && skip !== void 0 && skip.logoutOn401)) interceptors.push(handleUnauthorizedErrorResponse);
|
|
158
|
+
if (!(skip !== null && skip !== void 0 && skip.showToastr)) interceptors.push(showErrorToastr);
|
|
159
|
+
interceptors.push(Promise.reject.bind(Promise));
|
|
160
|
+
return createPipe(interceptors);
|
|
161
|
+
};
|
|
162
|
+
var cleanupCredentialsForCrossOrigin = function cleanupCredentialsForCrossOrigin(request) {
|
|
163
|
+
if (!request.url.includes("://")) return request;
|
|
164
|
+
if (request.url.includes(window.location.hostname)) return request;
|
|
165
|
+
return (0, _ramda.evolve)({
|
|
166
|
+
headers: (0, _ramda.omit)((0, _ramda.values)(_constants.HEADERS_KEYS))
|
|
167
|
+
})(request);
|
|
168
|
+
};
|
|
169
|
+
var transformDataToSnakeCase = function transformDataToSnakeCase(request) {
|
|
170
|
+
var _request$transformReq = request.transformRequestCase,
|
|
171
|
+
transformRequestCase = _request$transformReq === void 0 ? true : _request$transformReq;
|
|
172
|
+
if (!transformRequestCase) return request;
|
|
173
|
+
return (0, _ramda.evolve)({
|
|
174
|
+
data: _neetoCist.serializeKeysToSnakeCase,
|
|
175
|
+
params: _neetoCist.serializeKeysToSnakeCase
|
|
176
|
+
}, request);
|
|
177
|
+
};
|
|
178
|
+
var addRequestInterceptors = function addRequestInterceptors(skip) {
|
|
179
|
+
if (!(skip !== null && skip !== void 0 && skip.cleanCredentialsForCrossOrigin)) {
|
|
180
|
+
_axios["default"].interceptors.request.use(cleanupCredentialsForCrossOrigin);
|
|
181
|
+
}
|
|
182
|
+
if (!(skip !== null && skip !== void 0 && skip.transformCase)) {
|
|
183
|
+
_axios["default"].interceptors.request.use(transformDataToSnakeCase);
|
|
184
|
+
}
|
|
185
|
+
};
|
|
186
|
+
var addResponseInterceptors = function addResponseInterceptors(skip) {
|
|
187
|
+
_axios["default"].interceptors.response.use(buildSuccessResponseHandler(skip), buildErrorResponseHandler(skip));
|
|
188
|
+
};
|
|
189
|
+
var registerIntercepts = function registerIntercepts(skip) {
|
|
190
|
+
if (shouldNot(skip === null || skip === void 0 ? void 0 : skip.request)) addRequestInterceptors(skip === null || skip === void 0 ? void 0 : skip.request);
|
|
191
|
+
if (shouldNot(skip === null || skip === void 0 ? void 0 : skip.response)) addResponseInterceptors(skip === null || skip === void 0 ? void 0 : skip.response);
|
|
192
|
+
};
|
|
193
|
+
function initializeAxios(skip) {
|
|
194
|
+
if (!(skip !== null && skip !== void 0 && skip.baseURL)) _axios["default"].defaults.baseURL = "/";
|
|
195
|
+
if (!(skip !== null && skip !== void 0 && skip.authHeaders)) setAuthHeaders();
|
|
196
|
+
if (!(skip !== null && skip !== void 0 && skip.paramsSerializer)) (0, _paramsSerializer["default"])();
|
|
197
|
+
if (shouldNot(skip === null || skip === void 0 ? void 0 : skip.interceptors)) registerIntercepts(skip === null || skip === void 0 ? void 0 : skip.interceptors);
|
|
198
|
+
}
|
|
199
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["_axios","_interopRequireDefault","require","_i18next","_neetoCist","_reactUtils","_utils","_neetoui","_ramda","_paramsSerializer","_constants","shouldNot","skip","_typeof2","shouldShowToastr","response","notice","noticeCode","setAuthHeaders","_document$querySelect","_axios$defaults$heade","axios","defaults","headers","_defineProperty2","HEADERS_KEYS","accept","contentType","xCsrfToken","document","querySelector","getAttribute","createPipe","functions","data","reduce","acc","fn","transformResponseKeysToCamelCase","_response$config$tran","config","transformResponseCase","keysToCamelCase","transformErrorKeysToCamelCase","error","_error$config","_error$response","_ref","_ref$transformRespons","showSuccessToastr","_response$config$show","showToastr","matches","showThumbsUpToastr","Toastr","success","icon","className","pullDataFromResponse","_response$config$incl","includeMetadataInResponse","buildSuccessResponseHandler","interceptors","transformCase","push","handleUnauthorizedErrorResponse","_error$response2","_error$config2","status","resetAuthTokens","_ref2","_ref2$redirectOnError","redirectOnError","setTimeout","redirectTo","window","location","pathname","concat","encodeURIComponent","href","showErrorToastr","_error$config3","_error$response3","_ref3","_ref3$showToastr","message","i18next","t","includes","isCancel","getUrlPathName","url","URL","_unused","handle404ErrorResponse","_error$config4","_error$response4","_ref4","_ref4$show404ErrorPag","show404ErrorPage","_ref4$show403ErrorPag","show403ErrorPage","_error$request","fullUrl","request","responseURL","useErrorDisplayStore","setState","showErrorPage","statusCode","failedApiUrl","failedApiPath","buildErrorResponseHandler","logoutOn401","Promise","reject","bind","cleanupCredentialsForCrossOrigin","hostname","evolve","omit","values","transformDataToSnakeCase","_request$transformReq","transformRequestCase","serializeKeysToSnakeCase","params","addRequestInterceptors","cleanCredentialsForCrossOrigin","use","addResponseInterceptors","registerIntercepts","initializeAxios","baseURL","authHeaders","paramsSerializer","setParamsSerializer"],"sources":["../../../../src/initializers/axios/index.js"],"sourcesContent":["import axios from \"axios\";\nimport i18next from \"i18next\";\nimport { keysToCamelCase, matches, serializeKeysToSnakeCase } from \"neetocist\";\nimport { useErrorDisplayStore } from \"neetocommons/react-utils\";\nimport { resetAuthTokens } from \"neetocommons/utils\";\nimport { Toastr } from \"neetoui\";\nimport { evolve, omit, values } from \"ramda\";\n\nimport setParamsSerializer from \"./paramsSerializer\";\n\nimport { HEADERS_KEYS } from \"../constants\";\n\nconst shouldNot = skip => typeof skip === \"object\" || !skip;\n\nconst shouldShowToastr = response =>\n typeof response === \"string\" ||\n (typeof response === \"object\" && (response?.notice || response?.noticeCode));\n\nconst setAuthHeaders = () => {\n // @ts-ignore\n axios.defaults.headers = {\n [HEADERS_KEYS.accept]: \"application/json\",\n [HEADERS_KEYS.contentType]: \"application/json\",\n [HEADERS_KEYS.xCsrfToken]: document\n .querySelector('[name=\"csrf-token\"]')\n ?.getAttribute(\"content\"),\n };\n};\n\n// pipe function from ramda doesn't accept array of functions.\n// We can't use spread operator too. So this is a workaround.\nconst createPipe = functions => data =>\n functions.reduce((acc, fn) => fn(acc), data);\n\nconst transformResponseKeysToCamelCase = response => {\n const { transformResponseCase = true } = response.config;\n\n if (response.data && transformResponseCase) {\n response.data = keysToCamelCase(response.data);\n }\n\n return response;\n};\n\nconst transformErrorKeysToCamelCase = error => {\n const { transformResponseCase = true } = error.config ?? {};\n\n if (error.response?.data && transformResponseCase) {\n error.response.data = keysToCamelCase(error.response.data);\n }\n\n return error;\n};\n\nconst showSuccessToastr = response => {\n const { showToastr = true } = response.config;\n if (!showToastr) return response;\n\n if (matches({ showThumbsUpToastr: true }, response.data)) {\n // @ts-ignore\n Toastr.success(\"\", { icon: \"👍\", className: \"w-20\" });\n } else if (matches({ noticeCode: \"thumbs_up\" }, response.data)) {\n // @ts-ignore\n Toastr.success(\"\", { icon: \"👍\", className: \"w-20\" });\n } else if (shouldShowToastr(response.data)) {\n Toastr.success(response.data);\n }\n\n return response;\n};\n\nconst pullDataFromResponse = response => {\n const { includeMetadataInResponse = false } = response.config;\n\n return includeMetadataInResponse ? response : response.data;\n};\n\nconst buildSuccessResponseHandler = skip => {\n const interceptors = [];\n if (!skip?.transformCase) interceptors.push(transformResponseKeysToCamelCase);\n\n if (!skip?.showToastr) interceptors.push(showSuccessToastr);\n\n if (!skip?.pullDataFromResponse) interceptors.push(pullDataFromResponse);\n\n return createPipe(interceptors);\n};\n\nconst handleUnauthorizedErrorResponse = error => {\n if (error.response?.status !== 401) return error;\n\n resetAuthTokens();\n\n const { redirectOnError = true } = error.config ?? {};\n if (redirectOnError) {\n setTimeout(() => {\n const redirectTo =\n window.location.pathname === \"/login\"\n ? \"/login\"\n : `/login?redirect_uri=${encodeURIComponent(window.location.href)}`;\n // eslint-disable-next-line xss/no-location-href-assign\n window.location.href = redirectTo;\n }, 300);\n }\n\n return error;\n};\n\nconst showErrorToastr = error => {\n const { showToastr = true } = error.config ?? {};\n if (!showToastr) return error;\n\n if (error.message === \"Network Error\") {\n // @ts-ignore\n Toastr.error(i18next.t(\"neetoCommons.toastr.error.networkError\"));\n } else if (\n ![403, 404].includes(error.response?.status) &&\n !axios.isCancel(error)\n ) {\n // we already display a page in case of 403 & 404 and we don't want to show a toastr for cancelled requests.\n Toastr.error(error);\n }\n\n return error;\n};\n\nconst getUrlPathName = url => {\n try {\n return new URL(url).pathname;\n } catch {\n return url;\n }\n};\n\nconst handle404ErrorResponse = error => {\n const { show404ErrorPage = true, show403ErrorPage = true } =\n error.config ?? {};\n\n const status = error.response?.status;\n if (\n (status === 404 && show404ErrorPage) ||\n (status === 403 && show403ErrorPage)\n ) {\n const fullUrl = error.request?.responseURL || error.config.url;\n useErrorDisplayStore.setState({\n showErrorPage: true,\n statusCode: status,\n failedApiUrl: fullUrl,\n failedApiPath: getUrlPathName(fullUrl),\n });\n }\n\n return error;\n};\n\nconst buildErrorResponseHandler = skip => {\n const interceptors = [];\n if (!skip?.transformCase) interceptors.push(transformErrorKeysToCamelCase);\n\n if (!skip?.show404ErrorPage) interceptors.push(handle404ErrorResponse);\n\n if (!skip?.logoutOn401) interceptors.push(handleUnauthorizedErrorResponse);\n\n if (!skip?.showToastr) interceptors.push(showErrorToastr);\n\n interceptors.push(Promise.reject.bind(Promise));\n\n return createPipe(interceptors);\n};\n\nconst cleanupCredentialsForCrossOrigin = request => {\n if (!request.url.includes(\"://\")) return request;\n\n if (request.url.includes(window.location.hostname)) return request;\n\n return evolve({ headers: omit(values(HEADERS_KEYS)) })(request);\n};\n\nconst transformDataToSnakeCase = request => {\n const { transformRequestCase = true } = request;\n\n if (!transformRequestCase) return request;\n\n return evolve(\n { data: serializeKeysToSnakeCase, params: serializeKeysToSnakeCase },\n request\n );\n};\n\nconst addRequestInterceptors = skip => {\n if (!skip?.cleanCredentialsForCrossOrigin) {\n axios.interceptors.request.use(cleanupCredentialsForCrossOrigin);\n }\n\n if (!skip?.transformCase) {\n axios.interceptors.request.use(transformDataToSnakeCase);\n }\n};\n\nconst addResponseInterceptors = skip => {\n axios.interceptors.response.use(\n buildSuccessResponseHandler(skip),\n buildErrorResponseHandler(skip)\n );\n};\n\nconst registerIntercepts = skip => {\n if (shouldNot(skip?.request)) addRequestInterceptors(skip?.request);\n\n if (shouldNot(skip?.response)) addResponseInterceptors(skip?.response);\n};\n\nexport default function initializeAxios(skip) {\n if (!skip?.baseURL) axios.defaults.baseURL = \"/\";\n\n if (!skip?.authHeaders) setAuthHeaders();\n\n if (!skip?.paramsSerializer) setParamsSerializer();\n\n if (shouldNot(skip?.interceptors)) registerIntercepts(skip?.interceptors);\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = void 0;
|
|
8
|
+
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
9
|
+
var _axios = _interopRequireDefault(require("axios"));
|
|
10
|
+
var _qs = _interopRequireDefault(require("qs"));
|
|
11
|
+
var _ramda = require("ramda");
|
|
12
|
+
/* eslint-disable @bigbinary/neeto/use-snake-case-for-api-connector-filename */
|
|
13
|
+
|
|
14
|
+
var setParamsSerializer = function setParamsSerializer() {
|
|
15
|
+
_axios["default"].defaults.paramsSerializer = function (params) {
|
|
16
|
+
var modifiedParams = (0, _ramda.map)(function checkObject(value) {
|
|
17
|
+
if (Array.isArray(value)) return (0, _ramda.map)(checkObject, value);else if (value && (0, _typeof2["default"])(value) === "object") return JSON.stringify(value);
|
|
18
|
+
return value;
|
|
19
|
+
}, params);
|
|
20
|
+
return _qs["default"].stringify(modifiedParams, {
|
|
21
|
+
arrayFormat: "brackets"
|
|
22
|
+
});
|
|
23
|
+
};
|
|
24
|
+
};
|
|
25
|
+
var _default = setParamsSerializer;
|
|
26
|
+
exports["default"] = _default;
|
|
27
|
+
//# sourceMappingURL=paramsSerializer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paramsSerializer.js","names":["_axios","_interopRequireDefault","require","_qs","_ramda","setParamsSerializer","axios","defaults","paramsSerializer","params","modifiedParams","map","checkObject","value","Array","isArray","_typeof2","JSON","stringify","qs","arrayFormat","_default","exports"],"sources":["../../../../src/initializers/axios/paramsSerializer.js"],"sourcesContent":["/* eslint-disable @bigbinary/neeto/use-snake-case-for-api-connector-filename */\nimport axios from \"axios\";\nimport qs from \"qs\";\nimport { map } from \"ramda\";\n\nconst setParamsSerializer = () => {\n axios.defaults.paramsSerializer = function (params) {\n const modifiedParams = map(function checkObject(value) {\n if (Array.isArray(value)) return map(checkObject, value);\n else if (value && typeof value === \"object\") return JSON.stringify(value);\n\n return value;\n }, params);\n\n return qs.stringify(modifiedParams, { arrayFormat: \"brackets\" });\n };\n};\n\nexport default setParamsSerializer;\n"],"mappings":";;;;;;;;AACA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,GAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AAHA;;AAKA,IAAMG,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAA,EAAS;EAChCC,iBAAK,CAACC,QAAQ,CAACC,gBAAgB,GAAG,UAAUC,MAAM,EAAE;IAClD,IAAMC,cAAc,GAAG,IAAAC,UAAG,EAAC,SAASC,WAAWA,CAACC,KAAK,EAAE;MACrD,IAAIC,KAAK,CAACC,OAAO,CAACF,KAAK,CAAC,EAAE,OAAO,IAAAF,UAAG,EAACC,WAAW,EAAEC,KAAK,CAAC,CAAC,KACpD,IAAIA,KAAK,IAAI,IAAAG,QAAA,aAAOH,KAAK,MAAK,QAAQ,EAAE,OAAOI,IAAI,CAACC,SAAS,CAACL,KAAK,CAAC;MAEzE,OAAOA,KAAK;IACd,CAAC,EAAEJ,MAAM,CAAC;IAEV,OAAOU,cAAE,CAACD,SAAS,CAACR,cAAc,EAAE;MAAEU,WAAW,EAAE;IAAW,CAAC,CAAC;EAClE,CAAC;AACH,CAAC;AAAC,IAAAC,QAAA,GAEahB,mBAAmB;AAAAiB,OAAA,cAAAD,QAAA"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.LOWERCASED = exports.LIST_FORMATS = exports.HEADERS_KEYS = exports.FORMATS = void 0;
|
|
7
|
+
var HEADERS_KEYS = {
|
|
8
|
+
xCsrfToken: "X-CSRF-TOKEN",
|
|
9
|
+
contentType: "Content-Type",
|
|
10
|
+
accept: "Accept"
|
|
11
|
+
};
|
|
12
|
+
exports.HEADERS_KEYS = HEADERS_KEYS;
|
|
13
|
+
var LOWERCASED = "__LOWERCASED__";
|
|
14
|
+
exports.LOWERCASED = LOWERCASED;
|
|
15
|
+
var FORMATS = {
|
|
16
|
+
boldList: "boldList",
|
|
17
|
+
list: "list",
|
|
18
|
+
anyCase: "anyCase"
|
|
19
|
+
};
|
|
20
|
+
exports.FORMATS = FORMATS;
|
|
21
|
+
var LIST_FORMATS = [FORMATS.boldList, FORMATS.list];
|
|
22
|
+
exports.LIST_FORMATS = LIST_FORMATS;
|
|
23
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","names":["HEADERS_KEYS","xCsrfToken","contentType","accept","exports","LOWERCASED","FORMATS","boldList","list","anyCase","LIST_FORMATS"],"sources":["../../../src/initializers/constants.js"],"sourcesContent":["export const HEADERS_KEYS = {\n xCsrfToken: \"X-CSRF-TOKEN\",\n contentType: \"Content-Type\",\n accept: \"Accept\",\n};\n\nexport const LOWERCASED = \"__LOWERCASED__\";\n\nexport const FORMATS = {\n boldList: \"boldList\",\n list: \"list\",\n anyCase: \"anyCase\",\n};\nexport const LIST_FORMATS = [FORMATS.boldList, FORMATS.list];\n"],"mappings":";;;;;;AAAO,IAAMA,YAAY,GAAG;EAC1BC,UAAU,EAAE,cAAc;EAC1BC,WAAW,EAAE,cAAc;EAC3BC,MAAM,EAAE;AACV,CAAC;AAACC,OAAA,CAAAJ,YAAA,GAAAA,YAAA;AAEK,IAAMK,UAAU,GAAG,gBAAgB;AAACD,OAAA,CAAAC,UAAA,GAAAA,UAAA;AAEpC,IAAMC,OAAO,GAAG;EACrBC,QAAQ,EAAE,UAAU;EACpBC,IAAI,EAAE,MAAM;EACZC,OAAO,EAAE;AACX,CAAC;AAACL,OAAA,CAAAE,OAAA,GAAAA,OAAA;AACK,IAAMI,YAAY,GAAG,CAACJ,OAAO,CAACC,QAAQ,EAAED,OAAO,CAACE,IAAI,CAAC;AAACJ,OAAA,CAAAM,YAAA,GAAAA,YAAA"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports["default"] = initializeGlobalProps;
|
|
7
|
+
var _neetoCist = require("@bigbinary/neeto-cist");
|
|
8
|
+
/* eslint-disable @bigbinary/neeto/no-globalProps-reassignment */
|
|
9
|
+
|
|
10
|
+
function initializeGlobalProps() {
|
|
11
|
+
var _document$getElements, _document$getElements2;
|
|
12
|
+
window.globalProps = (0, _neetoCist.keysToCamelCase)(JSON.parse(((_document$getElements = document.getElementsByClassName("root-container")[0]) === null || _document$getElements === void 0 ? void 0 : (_document$getElements2 = _document$getElements.dataset) === null || _document$getElements2 === void 0 ? void 0 : _document$getElements2.reactProps) || "{}"));
|
|
13
|
+
(0, _neetoCist.deepFreezeObject)(window.globalProps);
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=globalProps.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"globalProps.js","names":["_neetoCist","require","initializeGlobalProps","_document$getElements","_document$getElements2","window","globalProps","keysToCamelCase","JSON","parse","document","getElementsByClassName","dataset","reactProps","deepFreezeObject"],"sources":["../../../src/initializers/globalProps.js"],"sourcesContent":["/* eslint-disable @bigbinary/neeto/no-globalProps-reassignment */\nimport { keysToCamelCase, deepFreezeObject } from \"neetocist\";\n\nexport default function initializeGlobalProps() {\n window.globalProps = keysToCamelCase(\n JSON.parse(\n document.getElementsByClassName(\"root-container\")[0]?.dataset\n ?.reactProps || \"{}\"\n )\n );\n\n deepFreezeObject(window.globalProps);\n}\n"],"mappings":";;;;;;AACA,IAAAA,UAAA,GAAAC,OAAA;AADA;;AAGe,SAASC,qBAAqBA,CAAA,EAAG;EAAA,IAAAC,qBAAA,EAAAC,sBAAA;EAC9CC,MAAM,CAACC,WAAW,GAAG,IAAAC,0BAAe,EAClCC,IAAI,CAACC,KAAK,CACR,EAAAN,qBAAA,GAAAO,QAAQ,CAACC,sBAAsB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,cAAAR,qBAAA,wBAAAC,sBAAA,GAApDD,qBAAA,CAAsDS,OAAO,cAAAR,sBAAA,uBAA7DA,sBAAA,CACIS,UAAU,KAAI,IAAI,CACvB,CACF;EAED,IAAAC,2BAAgB,EAACT,MAAM,CAACC,WAAW,CAAC;AACtC"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.taxonomies = exports["default"] = void 0;
|
|
8
|
+
var _i18next = _interopRequireDefault(require("i18next"));
|
|
9
|
+
var _i18nextBrowserLanguagedetector = _interopRequireDefault(require("i18next-browser-languagedetector"));
|
|
10
|
+
var _ramda = require("ramda");
|
|
11
|
+
var _reactI18next = require("react-i18next");
|
|
12
|
+
var _constants = require("./constants");
|
|
13
|
+
var _utils = require("./utils");
|
|
14
|
+
var _customFormatters = require("./utils/customFormatters");
|
|
15
|
+
var _customPostProcessors = require("./utils/customPostProcessors");
|
|
16
|
+
var _en = _interopRequireDefault(require("../translations/en.json"));
|
|
17
|
+
// eslint-disable-next-line import/no-mutable-exports
|
|
18
|
+
var taxonomies = {};
|
|
19
|
+
exports.taxonomies = taxonomies;
|
|
20
|
+
var initializeI18n = function initializeI18n(hostTranslations) {
|
|
21
|
+
var _window$globalProps;
|
|
22
|
+
// eslint-disable-next-line no-undef
|
|
23
|
+
var packageTranslations = preval.require("../configs/scripts/getPkgTranslations.js");
|
|
24
|
+
var commonsTranslations = {
|
|
25
|
+
en: {
|
|
26
|
+
translation: _en["default"]
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
var resources = [hostTranslations, commonsTranslations, packageTranslations].reduce(_ramda.mergeDeepLeft);
|
|
30
|
+
var defaultTaxonomyKeys = Object.keys(resources.en.translation.taxonomyDefaultLabels || {});
|
|
31
|
+
var defaultTaxonomies = Object.fromEntries(defaultTaxonomyKeys.map(function (key) {
|
|
32
|
+
return [key, {
|
|
33
|
+
singular: null,
|
|
34
|
+
plural: null
|
|
35
|
+
}];
|
|
36
|
+
}));
|
|
37
|
+
var hostTaxonomies = ((_window$globalProps = window.globalProps) === null || _window$globalProps === void 0 ? void 0 : _window$globalProps.taxonomies) || {};
|
|
38
|
+
exports.taxonomies = taxonomies = (0, _utils.replaceNullValuesWithGetter)((0, _ramda.mergeDeepLeft)(hostTaxonomies, defaultTaxonomies));
|
|
39
|
+
_i18next["default"].use(_i18nextBrowserLanguagedetector["default"]).use(_reactI18next.initReactI18next).use(_customPostProcessors.sentenceCaseProcessor).init({
|
|
40
|
+
resources: resources,
|
|
41
|
+
fallbackLng: "en",
|
|
42
|
+
interpolation: {
|
|
43
|
+
defaultVariables: {
|
|
44
|
+
taxonomies: taxonomies
|
|
45
|
+
},
|
|
46
|
+
escapeValue: false,
|
|
47
|
+
skipOnVariables: false,
|
|
48
|
+
alwaysFormat: true,
|
|
49
|
+
format: function format(value, _format, lng, options) {
|
|
50
|
+
var newValue = value;
|
|
51
|
+
if (_constants.LIST_FORMATS.includes(_format)) {
|
|
52
|
+
newValue = (0, _customFormatters.listFormatter)({
|
|
53
|
+
value: newValue,
|
|
54
|
+
format: _format,
|
|
55
|
+
lng: lng,
|
|
56
|
+
options: options
|
|
57
|
+
});
|
|
58
|
+
return newValue;
|
|
59
|
+
}
|
|
60
|
+
return (0, _customFormatters.lowerCaseDynamicTextFormatter)(newValue, _format);
|
|
61
|
+
}
|
|
62
|
+
},
|
|
63
|
+
postProcess: [_customPostProcessors.sentenceCaseProcessor.name],
|
|
64
|
+
detection: {
|
|
65
|
+
order: ["querystring", "cookie", "navigator", "path"],
|
|
66
|
+
caches: ["cookie"],
|
|
67
|
+
lookupQuerystring: "lang",
|
|
68
|
+
lookupCookie: "lang"
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
};
|
|
72
|
+
var _default = initializeI18n;
|
|
73
|
+
exports["default"] = _default;
|
|
74
|
+
//# sourceMappingURL=i18n.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"i18n.js","names":["_i18next","_interopRequireDefault","require","_i18nextBrowserLanguagedetector","_ramda","_reactI18next","_constants","_utils","_customFormatters","_customPostProcessors","_en","taxonomies","exports","initializeI18n","hostTranslations","_window$globalProps","packageTranslations","preval","commonsTranslations","en","translation","commonsEn","resources","reduce","mergeDeepLeft","defaultTaxonomyKeys","Object","keys","taxonomyDefaultLabels","defaultTaxonomies","fromEntries","map","key","singular","plural","hostTaxonomies","window","globalProps","replaceNullValuesWithGetter","i18n","use","LanguageDetector","initReactI18next","sentenceCaseProcessor","init","fallbackLng","interpolation","defaultVariables","escapeValue","skipOnVariables","alwaysFormat","format","value","lng","options","newValue","LIST_FORMATS","includes","listFormatter","lowerCaseDynamicTextFormatter","postProcess","name","detection","order","caches","lookupQuerystring","lookupCookie","_default"],"sources":["../../../src/initializers/i18n.js"],"sourcesContent":["import i18n from \"i18next\";\nimport LanguageDetector from \"i18next-browser-languagedetector\";\nimport { mergeDeepLeft } from \"ramda\";\nimport { initReactI18next } from \"react-i18next\";\n\nimport { LIST_FORMATS } from \"./constants\";\nimport { replaceNullValuesWithGetter } from \"./utils\";\nimport {\n listFormatter,\n lowerCaseDynamicTextFormatter,\n} from \"./utils/customFormatters\";\nimport { sentenceCaseProcessor } from \"./utils/customPostProcessors\";\n\nimport commonsEn from \"../translations/en.json\";\n\n// eslint-disable-next-line import/no-mutable-exports\nlet taxonomies = {};\n\nconst initializeI18n = hostTranslations => {\n // eslint-disable-next-line no-undef\n const packageTranslations = preval.require(\n \"../configs/scripts/getPkgTranslations.js\"\n );\n\n const commonsTranslations = { en: { translation: commonsEn } };\n\n const resources = [\n hostTranslations,\n commonsTranslations,\n packageTranslations,\n ].reduce(mergeDeepLeft);\n\n const defaultTaxonomyKeys = Object.keys(\n resources.en.translation.taxonomyDefaultLabels || {}\n );\n\n const defaultTaxonomies = Object.fromEntries(\n defaultTaxonomyKeys.map(key => [key, { singular: null, plural: null }])\n );\n\n const hostTaxonomies = window.globalProps?.taxonomies || {};\n\n taxonomies = replaceNullValuesWithGetter(\n mergeDeepLeft(hostTaxonomies, defaultTaxonomies)\n );\n\n i18n\n .use(LanguageDetector)\n .use(initReactI18next)\n .use(sentenceCaseProcessor)\n .init({\n resources,\n fallbackLng: \"en\",\n interpolation: {\n defaultVariables: { taxonomies },\n escapeValue: false,\n skipOnVariables: false,\n alwaysFormat: true,\n format: (value, format, lng, options) => {\n let newValue = value;\n\n if (LIST_FORMATS.includes(format)) {\n newValue = listFormatter({ value: newValue, format, lng, options });\n\n return newValue;\n }\n\n return lowerCaseDynamicTextFormatter(newValue, format);\n },\n },\n postProcess: [sentenceCaseProcessor.name],\n detection: {\n order: [\"querystring\", \"cookie\", \"navigator\", \"path\"],\n caches: [\"cookie\"],\n lookupQuerystring: \"lang\",\n lookupCookie: \"lang\",\n },\n });\n};\n\nexport { taxonomies };\n\nexport default initializeI18n;\n"],"mappings":"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"}
|