@shopgate/pwa-common 6.23.0-beta.1 → 6.23.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/I18n/components/Translate/index.js +11 -7
- package/components/Modal/index.js +1 -1
- package/components/Modal/style.js +1 -1
- package/components/Widgets/index.js +1 -1
- package/constants/Configuration.js +1 -1
- package/constants/Portals.js +2 -2
- package/helpers/i18n/getTranslator.js +9 -3
- package/package.json +3 -3
- package/selectors/client.js +3 -2
- package/streams/main.js +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var _excluded=["string","children","params","className","role"];function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key];}}}return target;};return _extends.apply(this,arguments);}function _objectWithoutProperties(source,excluded){if(source==null)return{};var target=_objectWithoutPropertiesLoose(source,excluded);var key,i;if(Object.getOwnPropertySymbols){var sourceSymbolKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceSymbolKeys.length;i++){key=sourceSymbolKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key];}}return target;}function _objectWithoutPropertiesLoose(source,excluded){if(source==null)return{};var target={};var sourceKeys=Object.keys(source);var key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;target[key]=source[key];}return target;}import React from'react';import PropTypes from'prop-types';import{logger}from'@shopgate/pwa-core';import{i18n}from'@shopgate/engage/core';/**
|
|
1
|
+
var _excluded=["string","children","params","className","role","acceptPlainTextWithPlaceholders"];function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key];}}}return target;};return _extends.apply(this,arguments);}function _objectWithoutProperties(source,excluded){if(source==null)return{};var target=_objectWithoutPropertiesLoose(source,excluded);var key,i;if(Object.getOwnPropertySymbols){var sourceSymbolKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceSymbolKeys.length;i++){key=sourceSymbolKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key];}}return target;}function _objectWithoutPropertiesLoose(source,excluded){if(source==null)return{};var target={};var sourceKeys=Object.keys(source);var key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;target[key]=source[key];}return target;}import React from'react';import PropTypes from'prop-types';import{logger}from'@shopgate/pwa-core';import{i18n}from'@shopgate/engage/core';/**
|
|
2
2
|
* Returns a translation and replaces placeholder with children output.
|
|
3
3
|
* It is possible to either pass JSX components or plain strings as replacement for
|
|
4
4
|
* the translation keys.
|
|
@@ -6,12 +6,16 @@ var _excluded=["string","children","params","className","role"];function _define
|
|
|
6
6
|
* and pass the JSX nodes as children.
|
|
7
7
|
* @param {Object} props The component props.
|
|
8
8
|
* @param {Object} props.string The string to translate.
|
|
9
|
-
* @param {
|
|
9
|
+
* @param {Object} [props.params] Object with translation placeholder replacements
|
|
10
|
+
* @param {Array} [props.children] Children to use as placeholders. Must be one of the components
|
|
10
11
|
* provided by I18n.
|
|
11
|
-
* @param {string} props.className Additional classes to append to the translated wrapper element.
|
|
12
|
-
* @
|
|
13
|
-
|
|
12
|
+
* @param {string} [props.className] Additional classes to append to the translated wrapper element.
|
|
13
|
+
* @param {string} [props.role] Optional aria role
|
|
14
|
+
* @param {boolean} [acceptPlainTextWithPlaceholders=false] When set to TRUE, the component can
|
|
15
|
+
* also handle human readable texts that contain text replacement placeholders.
|
|
16
|
+
* @returns {JSX.Element} The translated string as JSX component.
|
|
17
|
+
*/var Translate=function Translate(_ref){var string=_ref.string,children=_ref.children,params=_ref.params,className=_ref.className,role=_ref.role,acceptPlainTextWithPlaceholders=_ref.acceptPlainTextWithPlaceholders,rest=_objectWithoutProperties(_ref,_excluded);if(typeof string!=='string'||string.length===0){return string;}if(!i18n.ready){return/*#__PURE__*/React.createElement("span",_extends({className:className,role:role},rest),string);}// When the input string is malformed, rather return the original string then raising an error.
|
|
14
18
|
var formatted=string;try{// First replace every occurrence of a translation key with a separator.
|
|
15
19
|
var separator='__%S%__';var childrenArray=React.Children.toArray(children);var values=childrenArray.reduce(function(obj,child){return child.props&&child.props.forKey?_extends({},obj,_defineProperty({},child.props.forKey,separator)):obj;},_extends({},params));// Split the tokenized string at the separators.
|
|
16
|
-
var stringParts=i18n.text(string,values).split(separator);// Create a new array containing the separated chunks of the text and merge the substitutions.
|
|
17
|
-
formatted=stringParts.reduce(function(result,text,index){return[].concat(result,[text,childrenArray[index]]);},[]);}catch(e){logger.error('i18n error for string %s',string,e);}return/*#__PURE__*/React.createElement("span",_extends({className:className,role:role},rest),formatted);};Translate.defaultProps={children:null,className:null,params:{},role:null};export default Translate;
|
|
20
|
+
var stringParts=i18n.text(string,values,{acceptPlainTextWithPlaceholders:acceptPlainTextWithPlaceholders}).split(separator);// Create a new array containing the separated chunks of the text and merge the substitutions.
|
|
21
|
+
formatted=stringParts.reduce(function(result,text,index){return[].concat(result,[text,childrenArray[index]]);},[]);}catch(e){logger.error('i18n error for string %s',string,e);}return/*#__PURE__*/React.createElement("span",_extends({className:className,role:role},rest),formatted);};Translate.defaultProps={children:null,className:null,params:{},role:null,acceptPlainTextWithPlaceholders:false};export default Translate;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from'react';import PropTypes from'prop-types';import Portal from'react-portal';import classNames from'classnames';import styles from"./style";/**
|
|
2
2
|
* The Modal component.
|
|
3
3
|
* @param {Object} props The component props.
|
|
4
|
-
* @returns {JSX}
|
|
4
|
+
* @returns {JSX.Element}
|
|
5
5
|
*/var Modal=function Modal(_ref){var children=_ref.children,classes=_ref.classes;return/*#__PURE__*/React.createElement(Portal,{isOpened:true},/*#__PURE__*/React.createElement("div",{className:classNames(styles.container,classes===null||classes===void 0?void 0:classes.container,'common__modal')},/*#__PURE__*/React.createElement("div",{className:classNames(styles.layout,classes===null||classes===void 0?void 0:classes.layout)},/*#__PURE__*/React.createElement("div",{className:classNames(styles.content,classes===null||classes===void 0?void 0:classes.content)},children))));};Modal.defaultProps={children:null,classes:{container:'',layout:'',content:''}};export default Modal;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{css}from'glamor';var container=css({position:'fixed',top:0,bottom:0,left:0,right:0,overflow:'hidden',zIndex:2000}).toString();var layout=css({display:'flex',flexDirection:'column',alignItems:'center',justifyContent:'center',height:'100%'}).toString();var content=css({
|
|
1
|
+
import{css}from'glamor';var container=css({position:'fixed',top:0,bottom:0,left:0,right:0,overflow:'hidden',zIndex:2000}).toString();var layout=css({display:'flex',flexDirection:'column',alignItems:'center',justifyContent:'center',height:'100%'}).toString();var content=css({paddingTop:'var(--safe-area-inset-top)',paddingBottom:'var(--safe-area-inset-bottom)',overflowY:'scroll',position:'relative'}).toString();export default{container:container,layout:layout,content:content};
|
|
@@ -28,7 +28,7 @@ function _typeof(obj){"@babel/helpers - typeof";return _typeof="function"==typeo
|
|
|
28
28
|
*/},{key:"doAutoRerender",value:function doAutoRerender(){this.forceUpdate();this.startAutoRerender();}/**
|
|
29
29
|
* Create array of elements from widget configuration.
|
|
30
30
|
* @returns {Array} Array of JSX elements.
|
|
31
|
-
*/},{key:"createArrayOfElements",value:function createArrayOfElements(){var _this$props=this.props,_this$props$widgets=_this$props.widgets,widgets=_this$props$widgets===void 0?[]:_this$props$widgets,components=_this$props.components;return widgets.filter(function(widget){return shouldShowWidget(widget.settings);}).map(function(widget,index){if(!components[widget.type]&&widget.type!==WIDGET_GRID_TYPE){return null;}var key="w".concat(index);if(widget.type===WIDGET_GRID_TYPE){// If it's a grid just create it and pass the child widgets.
|
|
31
|
+
*/},{key:"createArrayOfElements",value:function createArrayOfElements(){var _this$props=this.props,_this$props$widgets=_this$props.widgets,widgets=_this$props$widgets===void 0?[]:_this$props$widgets,components=_this$props.components;return widgets.filter(function(widget){return shouldShowWidget(widget.settings);}).map(function(widget,index){if(!components[widget.type]&&widget.type!==WIDGET_GRID_TYPE){return null;}var key="w".concat((widget===null||widget===void 0?void 0:widget.id)||index);if(widget.type===WIDGET_GRID_TYPE){// If it's a grid just create it and pass the child widgets.
|
|
32
32
|
return createGridWrapper(key,widget.settings.widgets,components);}if(widget.height){// If it has a definite height wrap the widget in a grid.
|
|
33
33
|
return createGridWrapper(key,[_extends({},widget,{col:0,row:0,width:GRID_COLUMNS})],components);}// In all other cases just create and return the widget component.
|
|
34
34
|
return/*#__PURE__*/React.createElement(components[widget.type],_extends({},widget,{key:key}));});}/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export var APP_PLATFORM=Symbol('APP_PLATFORM');export var RESET_APP_REDUCERS=Symbol('RESET_APP_REDUCERS');export var DEFAULT_PRODUCTS_FETCH_PARAMS=Symbol('DEFAULT_PRODUCTS_FETCH_PARAMS');export var TAB_BAR_PATTERNS_BLACK_LIST=Symbol('TAB_BAR_PATTERNS_BLACK_LIST');
|
|
1
|
+
export var APP_PLATFORM=Symbol('APP_PLATFORM');export var RESET_APP_REDUCERS=Symbol('RESET_APP_REDUCERS');export var DEFAULT_PRODUCTS_FETCH_PARAMS=Symbol('DEFAULT_PRODUCTS_FETCH_PARAMS');export var TAB_BAR_PATTERNS_BLACK_LIST=Symbol('TAB_BAR_PATTERNS_BLACK_LIST');export var CONFIGURATION_COLLECTION_KEY_BASE_URL='CONFIGURATION_COLLECTION_KEY_BASE_URL';
|
package/constants/Portals.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
// FEATURES
|
|
2
2
|
var APP='app';var APP_BAR='app-bar';var VIEW='view';var PAGE='page';var NAV_MENU='nav-menu';var NO_RESULTS='no-results';var USER_MENU='user-menu';var FORM='form';// CONTENTS
|
|
3
|
-
var GLOBALS='globals';var ROUTES='routes';var FOOTER='footer';var CONTENT='content';var QUICK_LINKS='quick-links';var HOME='home';var LOGIN='login';var SCANNER='scanner';var REGISTER_LINK='register-link';var TERMS='terms';var PRIVACY='privacy';var IMPRINT='imprint';var STORE_INFORMATION='store-information';var STORE_INFORMATION_MORE='store-information-more';var STORE_INFORMATION_ABOUT='store-information-about';var MY_ACCOUNT='my-account';var LOGOUT='logout';var CONTAINER='container';var DEFAULT='default';var BACK='back';var CLOSE='close';var SIMPLE='simple';var CART_BUTTON='cart-button';// POSITIONS
|
|
4
|
-
export var BEFORE='before';export var AFTER='after';export var LEFT='left';export var CENTER='center';export var RIGHT='right';export var BELOW='below';export var APP_GLOBALS="".concat(APP,".").concat(GLOBALS);export var APP_ROUTES="".concat(APP,".").concat(ROUTES);export var APP_FOOTER_CONTENT_BEFORE="".concat(APP,".").concat(FOOTER,".").concat(CONTENT,".").concat(BEFORE);export var APP_FOOTER_CONTENT_AFTER="".concat(APP,".").concat(FOOTER,".").concat(CONTENT,".").concat(AFTER);export var VIEW_CONTENT_BEFORE="".concat(VIEW,".").concat(CONTENT,".").concat(BEFORE);export var VIEW_CONTENT="".concat(VIEW,".").concat(CONTENT);export var VIEW_CONTENT_AFTER="".concat(VIEW,".").concat(CONTENT,".").concat(AFTER);export var PAGE_CONTENT_BEFORE="".concat(PAGE,".").concat(CONTENT,".").concat(BEFORE);export var PAGE_CONTENT="".concat(PAGE,".").concat(CONTENT);export var PAGE_CONTENT_AFTER="".concat(PAGE,".").concat(CONTENT,".").concat(AFTER);export var PAGE_LOGIN_BEFORE="".concat(PAGE,".").concat(LOGIN,".").concat(BEFORE);export var PAGE_LOGIN="".concat(PAGE,".").concat(LOGIN);export var PAGE_LOGIN_AFTER="".concat(PAGE,".").concat(LOGIN,".").concat(AFTER);export var PAGE_LOGIN_FORM_BEFORE="".concat(PAGE,".").concat(LOGIN,".").concat(FORM,".").concat(BEFORE);export var PAGE_LOGIN_FORM="".concat(PAGE,".").concat(LOGIN,".").concat(FORM);export var PAGE_LOGIN_FORM_AFTER="".concat(PAGE,".").concat(LOGIN,".").concat(FORM,".").concat(AFTER);export var PAGE_LOGIN_REGISTER_LINK_BEFORE="".concat(PAGE,".").concat(LOGIN,".").concat(REGISTER_LINK,".").concat(BEFORE);export var PAGE_LOGIN_REGISTER_LINK="".concat(PAGE,".").concat(LOGIN,".").concat(REGISTER_LINK);export var PAGE_LOGIN_REGISTER_LINK_AFTER="".concat(PAGE,".").concat(LOGIN,".").concat(REGISTER_LINK,".").concat(AFTER);export var NAV_MENU_CONTENT_BEFORE="".concat(NAV_MENU,".").concat(CONTENT,".").concat(BEFORE);export var NAV_MENU_CONTENT_AFTER="".concat(NAV_MENU,".").concat(CONTENT,".").concat(AFTER);export var NAV_MENU_HOME_BEFORE="".concat(NAV_MENU,".").concat(HOME,".").concat(BEFORE);export var NAV_MENU_HOME="".concat(NAV_MENU,".").concat(HOME);export var NAV_MENU_HOME_AFTER="".concat(NAV_MENU,".").concat(HOME,".").concat(AFTER);export var NAV_MENU_QUICK_LINKS="".concat(NAV_MENU,".").concat(QUICK_LINKS);export var NAV_MENU_QUICK_LINKS_BEFORE="".concat(NAV_MENU,".").concat(QUICK_LINKS,".").concat(BEFORE);export var NAV_MENU_QUICK_LINKS_AFTER="".concat(NAV_MENU,".").concat(QUICK_LINKS,".").concat(AFTER);export var NAV_MENU_SCANNER_BEFORE="".concat(NAV_MENU,".").concat(SCANNER,".").concat(BEFORE);export var NAV_MENU_SCANNER="".concat(NAV_MENU,".").concat(SCANNER);export var NAV_MENU_SCANNER_AFTER="".concat(NAV_MENU,".").concat(SCANNER,".").concat(AFTER);export var NAV_MENU_TERMS_BEFORE="".concat(NAV_MENU,".").concat(TERMS,".").concat(BEFORE);export var NAV_MENU_TERMS="".concat(NAV_MENU,".").concat(TERMS);export var NAV_MENU_TERMS_AFTER="".concat(NAV_MENU,".").concat(TERMS,".").concat(AFTER);export var NAV_MENU_PRIVACY_BEFORE="".concat(NAV_MENU,".").concat(PRIVACY,".").concat(BEFORE);export var NAV_MENU_PRIVACY="".concat(NAV_MENU,".").concat(PRIVACY);export var NAV_MENU_PRIVACY_AFTER="".concat(NAV_MENU,".").concat(PRIVACY,".").concat(AFTER);export var NAV_MENU_IMPRINT_BEFORE="".concat(NAV_MENU,".").concat(IMPRINT,".").concat(BEFORE);export var NAV_MENU_IMPRINT="".concat(NAV_MENU,".").concat(IMPRINT);export var NAV_MENU_IMPRINT_AFTER="".concat(NAV_MENU,".").concat(IMPRINT,".").concat(AFTER);export var NAV_MENU_STORE_INFORMATION_BEFORE="".concat(NAV_MENU,".").concat(STORE_INFORMATION,".").concat(BEFORE);export var NAV_MENU_STORE_INFORMATION="".concat(NAV_MENU,".").concat(STORE_INFORMATION);export var NAV_MENU_STORE_INFORMATION_AFTER="".concat(NAV_MENU,".").concat(STORE_INFORMATION,".").concat(AFTER);export var NAV_MENU_STORE_INFORMATION_MORE_BEFORE="".concat(NAV_MENU,".").concat(STORE_INFORMATION_MORE,".").concat(BEFORE);export var NAV_MENU_STORE_INFORMATION_MORE="".concat(NAV_MENU,".").concat(STORE_INFORMATION_MORE);export var NAV_MENU_STORE_INFORMATION_MORE_AFTER="".concat(NAV_MENU,".").concat(STORE_INFORMATION_MORE,".").concat(AFTER);export var NAV_MENU_STORE_INFORMATION_ABOUT_BEFORE="".concat(NAV_MENU,".").concat(STORE_INFORMATION_ABOUT,".").concat(BEFORE);export var NAV_MENU_STORE_INFORMATION_ABOUT="".concat(NAV_MENU,".").concat(STORE_INFORMATION_ABOUT);export var NAV_MENU_STORE_INFORMATION_ABOUT_AFTER="".concat(NAV_MENU,".").concat(STORE_INFORMATION_ABOUT,".").concat(AFTER);export var NAV_MENU_MY_ACCOUNT_BEFORE="".concat(NAV_MENU,".").concat(MY_ACCOUNT,".").concat(BEFORE);export var NAV_MENU_MY_ACCOUNT="".concat(NAV_MENU,".").concat(MY_ACCOUNT);export var NAV_MENU_MY_ACCOUNT_AFTER="".concat(NAV_MENU,".").concat(MY_ACCOUNT,".").concat(AFTER);export var NAV_MENU_LOGOUT_BEFORE="".concat(NAV_MENU,".").concat(LOGOUT,".").concat(BEFORE);export var NAV_MENU_LOGOUT="".concat(NAV_MENU,".").concat(LOGOUT);export var NAV_MENU_LOGOUT_AFTER="".concat(NAV_MENU,".").concat(LOGOUT,".").concat(AFTER);export var NO_RESULTS_CONTENT_BEFORE="".concat(NO_RESULTS,".").concat(CONTENT,".").concat(BEFORE);export var NO_RESULTS_CONTENT="".concat(NO_RESULTS,".").concat(CONTENT);export var NO_RESULTS_CONTENT_AFTER="".concat(NO_RESULTS,".").concat(CONTENT,".").concat(AFTER);export var USER_MENU_CONTAINER_BEFORE="".concat(USER_MENU,".").concat(CONTAINER,".").concat(BEFORE);export var USER_MENU_CONTAINER="".concat(USER_MENU,".").concat(CONTAINER);export var USER_MENU_CONTAINER_AFTER="".concat(USER_MENU,".").concat(CONTAINER,".").concat(AFTER);export var APP_BAR_DEFAULT_BEFORE="".concat(APP_BAR,".").concat(DEFAULT,".").concat(BEFORE);export var APP_BAR_DEFAULT="".concat(APP_BAR,".").concat(DEFAULT);export var APP_BAR_DEFAULT_AFTER="".concat(APP_BAR,".").concat(DEFAULT,".").concat(AFTER);export var APP_BAR_BACK_BEFORE="".concat(APP_BAR,".").concat(BACK,".").concat(BEFORE);export var APP_BAR_BACK="".concat(APP_BAR,".").concat(BACK);export var APP_BAR_BACK_AFTER="".concat(APP_BAR,".").concat(BACK,".").concat(AFTER);export var APP_BAR_CLOSE_BEFORE="".concat(APP_BAR,".").concat(CLOSE,".").concat(BEFORE);export var APP_BAR_CLOSE="".concat(APP_BAR,".").concat(CLOSE);export var APP_BAR_CLOSE_AFTER="".concat(APP_BAR,".").concat(CLOSE,".").concat(AFTER);export var APP_BAR_SIMPLE_BEFORE="".concat(APP_BAR,".").concat(SIMPLE,".").concat(BEFORE);export var APP_BAR_SIMPLE="".concat(APP_BAR,".").concat(SIMPLE);export var APP_BAR_SIMPLE_AFTER="".concat(APP_BAR,".").concat(SIMPLE,".").concat(AFTER);export var APP_BAR_LEFT="".concat(APP_BAR,".").concat(LEFT);export var APP_BAR_LEFT_BEFORE="".concat(APP_BAR,".").concat(LEFT,".").concat(BEFORE);export var APP_BAR_LEFT_AFTER="".concat(APP_BAR,".").concat(LEFT,".").concat(AFTER);export var APP_BAR_CENTER="".concat(APP_BAR,".").concat(CENTER);export var APP_BAR_CENTER_BEFORE="".concat(APP_BAR,".").concat(CENTER,".").concat(BEFORE);export var APP_BAR_CENTER_AFTER="".concat(APP_BAR,".").concat(CENTER,".").concat(AFTER);export var APP_BAR_RIGHT="".concat(APP_BAR,".").concat(RIGHT);export var APP_BAR_RIGHT_BEFORE="".concat(APP_BAR,".").concat(RIGHT,".").concat(BEFORE);export var APP_BAR_RIGHT_AFTER="".concat(APP_BAR,".").concat(RIGHT,".").concat(AFTER);export var APP_BAR_BELOW="".concat(APP_BAR,".").concat(BELOW);export var APP_BAR_BELOW_BEFORE="".concat(APP_BAR,".").concat(BELOW,".").concat(BEFORE);export var APP_BAR_BELOW_AFTER="".concat(APP_BAR,".").concat(BELOW,".").concat(AFTER);export var APP_BAR_CART_BUTTON="".concat(APP_BAR,".").concat(CART_BUTTON);export var APP_BAR_CART_BUTTON_BEFORE="".concat(APP_BAR,".").concat(CART_BUTTON,".").concat(BEFORE);export var APP_BAR_CART_BUTTON_AFTER="".concat(APP_BAR,".").concat(CART_BUTTON,".").concat(AFTER);
|
|
3
|
+
var GLOBALS='globals';var ROUTES='routes';var FOOTER='footer';var CONTENT='content';var QUICK_LINKS='quick-links';var HOME='home';var LOGIN='login';var SCANNER='scanner';var REGISTER_LINK='register-link';var TERMS='terms';var PRIVACY='privacy';var PRIVACY_SETTINGS='privacy-settings';var IMPRINT='imprint';var STORE_INFORMATION='store-information';var STORE_INFORMATION_MORE='store-information-more';var STORE_INFORMATION_ABOUT='store-information-about';var MY_ACCOUNT='my-account';var LOGOUT='logout';var CONTAINER='container';var DEFAULT='default';var BACK='back';var CLOSE='close';var SIMPLE='simple';var CART_BUTTON='cart-button';var ITEMS='items';// POSITIONS
|
|
4
|
+
export var BEFORE='before';export var AFTER='after';export var LEFT='left';export var CENTER='center';export var RIGHT='right';export var BELOW='below';export var APP_GLOBALS="".concat(APP,".").concat(GLOBALS);export var APP_ROUTES="".concat(APP,".").concat(ROUTES);export var APP_FOOTER_CONTENT_BEFORE="".concat(APP,".").concat(FOOTER,".").concat(CONTENT,".").concat(BEFORE);export var APP_FOOTER_CONTENT_AFTER="".concat(APP,".").concat(FOOTER,".").concat(CONTENT,".").concat(AFTER);export var VIEW_CONTENT_BEFORE="".concat(VIEW,".").concat(CONTENT,".").concat(BEFORE);export var VIEW_CONTENT="".concat(VIEW,".").concat(CONTENT);export var VIEW_CONTENT_AFTER="".concat(VIEW,".").concat(CONTENT,".").concat(AFTER);export var PAGE_CONTENT_BEFORE="".concat(PAGE,".").concat(CONTENT,".").concat(BEFORE);export var PAGE_CONTENT="".concat(PAGE,".").concat(CONTENT);export var PAGE_CONTENT_AFTER="".concat(PAGE,".").concat(CONTENT,".").concat(AFTER);export var PAGE_LOGIN_BEFORE="".concat(PAGE,".").concat(LOGIN,".").concat(BEFORE);export var PAGE_LOGIN="".concat(PAGE,".").concat(LOGIN);export var PAGE_LOGIN_AFTER="".concat(PAGE,".").concat(LOGIN,".").concat(AFTER);export var PAGE_LOGIN_FORM_BEFORE="".concat(PAGE,".").concat(LOGIN,".").concat(FORM,".").concat(BEFORE);export var PAGE_LOGIN_FORM="".concat(PAGE,".").concat(LOGIN,".").concat(FORM);export var PAGE_LOGIN_FORM_AFTER="".concat(PAGE,".").concat(LOGIN,".").concat(FORM,".").concat(AFTER);export var PAGE_LOGIN_REGISTER_LINK_BEFORE="".concat(PAGE,".").concat(LOGIN,".").concat(REGISTER_LINK,".").concat(BEFORE);export var PAGE_LOGIN_REGISTER_LINK="".concat(PAGE,".").concat(LOGIN,".").concat(REGISTER_LINK);export var PAGE_LOGIN_REGISTER_LINK_AFTER="".concat(PAGE,".").concat(LOGIN,".").concat(REGISTER_LINK,".").concat(AFTER);export var NAV_MENU_CONTENT_BEFORE="".concat(NAV_MENU,".").concat(CONTENT,".").concat(BEFORE);export var NAV_MENU_CONTENT_AFTER="".concat(NAV_MENU,".").concat(CONTENT,".").concat(AFTER);export var NAV_MENU_HOME_BEFORE="".concat(NAV_MENU,".").concat(HOME,".").concat(BEFORE);export var NAV_MENU_HOME="".concat(NAV_MENU,".").concat(HOME);export var NAV_MENU_HOME_AFTER="".concat(NAV_MENU,".").concat(HOME,".").concat(AFTER);export var NAV_MENU_QUICK_LINKS="".concat(NAV_MENU,".").concat(QUICK_LINKS);export var NAV_MENU_QUICK_LINKS_BEFORE="".concat(NAV_MENU,".").concat(QUICK_LINKS,".").concat(BEFORE);export var NAV_MENU_QUICK_LINKS_AFTER="".concat(NAV_MENU,".").concat(QUICK_LINKS,".").concat(AFTER);export var NAV_MENU_QUICK_LINKS_ITEMS="".concat(NAV_MENU,".").concat(QUICK_LINKS,".").concat(ITEMS);export var NAV_MENU_QUICK_LINKS_ITEMS_BEFORE="".concat(NAV_MENU,".").concat(QUICK_LINKS,".").concat(ITEMS,".").concat(BEFORE);export var NAV_MENU_QUICK_LINKS_ITEMS_AFTER="".concat(NAV_MENU,".").concat(QUICK_LINKS,".").concat(ITEMS,".").concat(AFTER);export var NAV_MENU_SCANNER_BEFORE="".concat(NAV_MENU,".").concat(SCANNER,".").concat(BEFORE);export var NAV_MENU_SCANNER="".concat(NAV_MENU,".").concat(SCANNER);export var NAV_MENU_SCANNER_AFTER="".concat(NAV_MENU,".").concat(SCANNER,".").concat(AFTER);export var NAV_MENU_TERMS_BEFORE="".concat(NAV_MENU,".").concat(TERMS,".").concat(BEFORE);export var NAV_MENU_TERMS="".concat(NAV_MENU,".").concat(TERMS);export var NAV_MENU_TERMS_AFTER="".concat(NAV_MENU,".").concat(TERMS,".").concat(AFTER);export var NAV_MENU_PRIVACY_BEFORE="".concat(NAV_MENU,".").concat(PRIVACY,".").concat(BEFORE);export var NAV_MENU_PRIVACY="".concat(NAV_MENU,".").concat(PRIVACY);export var NAV_MENU_PRIVACY_AFTER="".concat(NAV_MENU,".").concat(PRIVACY,".").concat(AFTER);export var NAV_MENU_PRIVACY_SETTINGS_BEFORE="".concat(NAV_MENU,".").concat(PRIVACY_SETTINGS,".").concat(BEFORE);export var NAV_MENU_PRIVACY_SETTINGS="".concat(NAV_MENU,".").concat(PRIVACY_SETTINGS);export var NAV_MENU_PRIVACY_SETTINGS_AFTER="".concat(NAV_MENU,".").concat(PRIVACY_SETTINGS,".").concat(AFTER);export var NAV_MENU_IMPRINT_BEFORE="".concat(NAV_MENU,".").concat(IMPRINT,".").concat(BEFORE);export var NAV_MENU_IMPRINT="".concat(NAV_MENU,".").concat(IMPRINT);export var NAV_MENU_IMPRINT_AFTER="".concat(NAV_MENU,".").concat(IMPRINT,".").concat(AFTER);export var NAV_MENU_STORE_INFORMATION_BEFORE="".concat(NAV_MENU,".").concat(STORE_INFORMATION,".").concat(BEFORE);export var NAV_MENU_STORE_INFORMATION="".concat(NAV_MENU,".").concat(STORE_INFORMATION);export var NAV_MENU_STORE_INFORMATION_AFTER="".concat(NAV_MENU,".").concat(STORE_INFORMATION,".").concat(AFTER);export var NAV_MENU_STORE_INFORMATION_MORE_BEFORE="".concat(NAV_MENU,".").concat(STORE_INFORMATION_MORE,".").concat(BEFORE);export var NAV_MENU_STORE_INFORMATION_MORE="".concat(NAV_MENU,".").concat(STORE_INFORMATION_MORE);export var NAV_MENU_STORE_INFORMATION_MORE_AFTER="".concat(NAV_MENU,".").concat(STORE_INFORMATION_MORE,".").concat(AFTER);export var NAV_MENU_STORE_INFORMATION_ABOUT_BEFORE="".concat(NAV_MENU,".").concat(STORE_INFORMATION_ABOUT,".").concat(BEFORE);export var NAV_MENU_STORE_INFORMATION_ABOUT="".concat(NAV_MENU,".").concat(STORE_INFORMATION_ABOUT);export var NAV_MENU_STORE_INFORMATION_ABOUT_AFTER="".concat(NAV_MENU,".").concat(STORE_INFORMATION_ABOUT,".").concat(AFTER);export var NAV_MENU_MY_ACCOUNT_BEFORE="".concat(NAV_MENU,".").concat(MY_ACCOUNT,".").concat(BEFORE);export var NAV_MENU_MY_ACCOUNT="".concat(NAV_MENU,".").concat(MY_ACCOUNT);export var NAV_MENU_MY_ACCOUNT_AFTER="".concat(NAV_MENU,".").concat(MY_ACCOUNT,".").concat(AFTER);export var NAV_MENU_LOGOUT_BEFORE="".concat(NAV_MENU,".").concat(LOGOUT,".").concat(BEFORE);export var NAV_MENU_LOGOUT="".concat(NAV_MENU,".").concat(LOGOUT);export var NAV_MENU_LOGOUT_AFTER="".concat(NAV_MENU,".").concat(LOGOUT,".").concat(AFTER);export var NO_RESULTS_CONTENT_BEFORE="".concat(NO_RESULTS,".").concat(CONTENT,".").concat(BEFORE);export var NO_RESULTS_CONTENT="".concat(NO_RESULTS,".").concat(CONTENT);export var NO_RESULTS_CONTENT_AFTER="".concat(NO_RESULTS,".").concat(CONTENT,".").concat(AFTER);export var USER_MENU_CONTAINER_BEFORE="".concat(USER_MENU,".").concat(CONTAINER,".").concat(BEFORE);export var USER_MENU_CONTAINER="".concat(USER_MENU,".").concat(CONTAINER);export var USER_MENU_CONTAINER_AFTER="".concat(USER_MENU,".").concat(CONTAINER,".").concat(AFTER);export var APP_BAR_DEFAULT_BEFORE="".concat(APP_BAR,".").concat(DEFAULT,".").concat(BEFORE);export var APP_BAR_DEFAULT="".concat(APP_BAR,".").concat(DEFAULT);export var APP_BAR_DEFAULT_AFTER="".concat(APP_BAR,".").concat(DEFAULT,".").concat(AFTER);export var APP_BAR_BACK_BEFORE="".concat(APP_BAR,".").concat(BACK,".").concat(BEFORE);export var APP_BAR_BACK="".concat(APP_BAR,".").concat(BACK);export var APP_BAR_BACK_AFTER="".concat(APP_BAR,".").concat(BACK,".").concat(AFTER);export var APP_BAR_CLOSE_BEFORE="".concat(APP_BAR,".").concat(CLOSE,".").concat(BEFORE);export var APP_BAR_CLOSE="".concat(APP_BAR,".").concat(CLOSE);export var APP_BAR_CLOSE_AFTER="".concat(APP_BAR,".").concat(CLOSE,".").concat(AFTER);export var APP_BAR_SIMPLE_BEFORE="".concat(APP_BAR,".").concat(SIMPLE,".").concat(BEFORE);export var APP_BAR_SIMPLE="".concat(APP_BAR,".").concat(SIMPLE);export var APP_BAR_SIMPLE_AFTER="".concat(APP_BAR,".").concat(SIMPLE,".").concat(AFTER);export var APP_BAR_LEFT="".concat(APP_BAR,".").concat(LEFT);export var APP_BAR_LEFT_BEFORE="".concat(APP_BAR,".").concat(LEFT,".").concat(BEFORE);export var APP_BAR_LEFT_AFTER="".concat(APP_BAR,".").concat(LEFT,".").concat(AFTER);export var APP_BAR_CENTER="".concat(APP_BAR,".").concat(CENTER);export var APP_BAR_CENTER_BEFORE="".concat(APP_BAR,".").concat(CENTER,".").concat(BEFORE);export var APP_BAR_CENTER_AFTER="".concat(APP_BAR,".").concat(CENTER,".").concat(AFTER);export var APP_BAR_RIGHT="".concat(APP_BAR,".").concat(RIGHT);export var APP_BAR_RIGHT_BEFORE="".concat(APP_BAR,".").concat(RIGHT,".").concat(BEFORE);export var APP_BAR_RIGHT_AFTER="".concat(APP_BAR,".").concat(RIGHT,".").concat(AFTER);export var APP_BAR_BELOW="".concat(APP_BAR,".").concat(BELOW);export var APP_BAR_BELOW_BEFORE="".concat(APP_BAR,".").concat(BELOW,".").concat(BEFORE);export var APP_BAR_BELOW_AFTER="".concat(APP_BAR,".").concat(BELOW,".").concat(AFTER);export var APP_BAR_CART_BUTTON="".concat(APP_BAR,".").concat(CART_BUTTON);export var APP_BAR_CART_BUTTON_BEFORE="".concat(APP_BAR,".").concat(CART_BUTTON,".").concat(BEFORE);export var APP_BAR_CART_BUTTON_AFTER="".concat(APP_BAR,".").concat(CART_BUTTON,".").concat(AFTER);
|
|
@@ -10,14 +10,20 @@ import{default as getPath}from'lodash/get';import messageCache from"./messageCac
|
|
|
10
10
|
* @param {Object} locales A locales object.
|
|
11
11
|
* @param {string} langCode A language code.
|
|
12
12
|
* @param {string} key A translation key.
|
|
13
|
+
* @param {Object} options Additional options for the translator
|
|
14
|
+
* @param {boolean} [options.acceptPlainTextWithPlaceholders = false] When set to TRUE, the
|
|
15
|
+
* translator can also handle human readable texts that contain text replacement placeholders.
|
|
13
16
|
* @returns {IntlMessageFormat}
|
|
14
|
-
*/var getMessageFromCache=function getMessageFromCache(locales,langCode,key){var hash="".concat(langCode,"_").concat(key);// Check if a cached instance already exists.
|
|
15
|
-
if(messageCache[hash]){return messageCache[hash];}var message=getPath(locales,key);if(typeof message!=='string'||message.length===0){return pureReturn(key);}// Prevent the app from crashing when strings (like product names) don't comply with the format
|
|
17
|
+
*/var getMessageFromCache=function getMessageFromCache(locales,langCode,key){var options=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{};var _options$acceptPlainT=options.acceptPlainTextWithPlaceholders,acceptPlainTextWithPlaceholders=_options$acceptPlainT===void 0?false:_options$acceptPlainT;var hash="".concat(langCode,"_").concat(key,"_").concat(acceptPlainTextWithPlaceholders?1:0);// Check if a cached instance already exists.
|
|
18
|
+
if(messageCache[hash]){return messageCache[hash];}var message=getPath(locales,key,acceptPlainTextWithPlaceholders?key:undefined);if(typeof message!=='string'||message.length===0){return pureReturn(key);}// Prevent the app from crashing when strings (like product names) don't comply with the format
|
|
16
19
|
try{messageCache[hash]=new IntlMessageFormat(message,langCode,getPath(locales,'formats'));}catch(e){messageCache[hash]=pureReturn(key);}return messageCache[hash];};/**
|
|
17
20
|
* Get a translation for a given key.
|
|
18
21
|
* @param {Object} locales A locales object.
|
|
19
22
|
* @param {string} langCode A language code.
|
|
20
23
|
* @param {string} key A translation key.
|
|
21
24
|
* @param {Object} [args] Arguments for the translation.
|
|
25
|
+
* @param {Object} options Additional options for the translator
|
|
26
|
+
* @param {boolean} [options.acceptPlainTextWithPlaceholders = false] When set to TRUE, the
|
|
27
|
+
* translator can also handle human readable texts that contain text replacement placeholders.
|
|
22
28
|
* @returns {string}
|
|
23
|
-
*/var translate=function translate(locales,langCode,key){var args=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{};return getMessageFromCache(locales,langCode,key).format(args);};export default curry(translate);
|
|
29
|
+
*/var translate=function translate(locales,langCode,key){var args=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{};var options=arguments.length>4&&arguments[4]!==undefined?arguments[4]:{};return getMessageFromCache(locales,langCode,key,options).format(args);};export default curry(translate);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@shopgate/pwa-common",
|
|
3
|
-
"version": "6.23.0-beta.
|
|
3
|
+
"version": "6.23.0-beta.2",
|
|
4
4
|
"description": "Common library for the Shopgate Connect PWA.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "Shopgate <support@shopgate.com>",
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
],
|
|
17
17
|
"dependencies": {
|
|
18
18
|
"@sentry/browser": "^4.6.3",
|
|
19
|
-
"@shopgate/pwa-benchmark": "6.23.0-beta.
|
|
19
|
+
"@shopgate/pwa-benchmark": "6.23.0-beta.2",
|
|
20
20
|
"@virtuous/conductor": "~2.4.0",
|
|
21
21
|
"@virtuous/react-conductor": "~2.4.0",
|
|
22
22
|
"@virtuous/redux-persister": "1.1.0-beta.7",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"url-search-params": "^0.10.0"
|
|
45
45
|
},
|
|
46
46
|
"devDependencies": {
|
|
47
|
-
"@shopgate/pwa-core": "6.23.0-beta.
|
|
47
|
+
"@shopgate/pwa-core": "6.23.0-beta.2",
|
|
48
48
|
"lodash": "^4.17.4",
|
|
49
49
|
"prop-types": "~15.7.2",
|
|
50
50
|
"react": "~16.12.0",
|
package/selectors/client.js
CHANGED
|
@@ -44,8 +44,9 @@ import{createSelector}from'reselect';import{hasSGJavaScriptBridge}from'@shopgate
|
|
|
44
44
|
* Checks if the currently stored lib version is one that supports the scanner.
|
|
45
45
|
* @param {Object} state The application state.
|
|
46
46
|
* @returns {boolean}
|
|
47
|
-
*/export var hasScannerSupport=createSelector(getClientInformation,getDeviceInformation,isIos,function(clientInformation,deviceInformation,deviceIsIos){// scanner is
|
|
48
|
-
|
|
47
|
+
*/export var hasScannerSupport=createSelector(getClientInformation,getDeviceInformation,isIos,function(clientInformation,deviceInformation,deviceIsIos){var _ref4=deviceInformation||{},type=_ref4.type;var isIpad=type===TYPE_TABLET&&deviceIsIos;if(isVersionAtLeast('11.0.0',clientInformation.appVersion)){// scanner is supported on all apps based on the react-native based apps
|
|
48
|
+
return true;}// scanner is not supported on iPads with the not react-native based app
|
|
49
|
+
return isVersionAtLeast(SCANNER_MIN_APP_LIB_VERSION,clientInformation.libVersion)&&!isIpad;});/**
|
|
49
50
|
* Determines page insets for the current device
|
|
50
51
|
* @param {Object} state The application state.
|
|
51
52
|
* @returns {Object}
|
package/streams/main.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{Observable}from'rxjs/Observable';import'rxjs/add/observable/from';import'rxjs/add/operator/buffer';import'rxjs/add/operator/bufferTime';import'rxjs/add/operator/filter';import'rxjs/add/operator/first';import'rxjs/add/operator/map';import'rxjs/add/operator/merge';import'rxjs/add/operator/mergeMap';import'rxjs/add/operator/delay';import'rxjs/add/operator/zip';import'rxjs/add/operator/do';import'rxjs/add/operator/shareReplay';import'rxjs/add/operator/distinctUntilChanged';import'rxjs/add/operator/debounceTime';import'rxjs/add/operator/switchMap';import'rxjs/add/operator/withLatestFrom';import'rxjs/add/operator/startWith';import{mainSubject}from"../store/middelwares/streams";/**
|
|
1
|
+
import{Observable}from'rxjs/Observable';import'rxjs/add/observable/from';import'rxjs/add/operator/buffer';import'rxjs/add/operator/bufferTime';import'rxjs/add/operator/filter';import'rxjs/add/operator/first';import'rxjs/add/operator/map';import'rxjs/add/operator/merge';import'rxjs/add/operator/mergeMap';import'rxjs/add/operator/delay';import'rxjs/add/operator/zip';import'rxjs/add/operator/do';import'rxjs/add/operator/shareReplay';import'rxjs/add/operator/distinctUntilChanged';import'rxjs/add/operator/pairwise';import'rxjs/add/operator/debounceTime';import'rxjs/add/operator/switchMap';import'rxjs/add/operator/withLatestFrom';import'rxjs/add/operator/startWith';import{mainSubject}from"../store/middelwares/streams";/**
|
|
2
2
|
* Gets triggered on every redux action that is dispatched.
|
|
3
3
|
* @type {Observable}
|
|
4
4
|
*/export var main$=Observable.from(mainSubject);if(window.Cypress){window.main$=main$;}
|