@shopgate/pwa-ui-material 7.29.9 → 7.30.0-alpha.11

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.
Files changed (48) hide show
  1. package/Accordion/components/AccordionContent/index.js +55 -2
  2. package/Accordion/components/AccordionContent/spec.js +37 -1
  3. package/Accordion/components/AccordionContent/style.js +9 -1
  4. package/Accordion/index.js +100 -2
  5. package/Accordion/spec.js +41 -1
  6. package/Accordion/style.js +47 -1
  7. package/AppBar/components/Below/index.js +26 -2
  8. package/AppBar/components/Center/index.js +26 -2
  9. package/AppBar/components/Field/index.js +48 -3
  10. package/AppBar/components/Field/style.js +14 -1
  11. package/AppBar/components/Icon/index.js +52 -3
  12. package/AppBar/components/Icon/style.js +14 -1
  13. package/AppBar/components/Left/index.js +26 -2
  14. package/AppBar/components/Right/index.js +26 -2
  15. package/AppBar/components/Title/index.js +46 -3
  16. package/AppBar/components/Title/style.js +11 -1
  17. package/AppBar/index.js +91 -3
  18. package/AppBar/style.js +21 -1
  19. package/BaseDialog/components/Buttons/index.js +29 -2
  20. package/BaseDialog/components/Buttons/spec.js +29 -1
  21. package/BaseDialog/components/Content/index.js +23 -2
  22. package/BaseDialog/components/Content/spec.js +18 -1
  23. package/BaseDialog/components/Title/index.js +32 -2
  24. package/BaseDialog/components/Title/spec.js +18 -1
  25. package/BaseDialog/index.js +46 -2
  26. package/BaseDialog/spec.js +44 -1
  27. package/BaseDialog/style.js +64 -1
  28. package/FloatingActionButton/index.js +56 -3
  29. package/FloatingActionButton/style.js +33 -1
  30. package/NavDrawer/components/Divider/index.js +11 -2
  31. package/NavDrawer/components/Divider/spec.js +10 -1
  32. package/NavDrawer/components/Divider/style.js +12 -2
  33. package/NavDrawer/components/Item/index.js +81 -6
  34. package/NavDrawer/components/Item/style.js +49 -1
  35. package/NavDrawer/components/Section/index.js +32 -2
  36. package/NavDrawer/components/Title/index.js +25 -2
  37. package/NavDrawer/components/Title/style.js +8 -1
  38. package/NavDrawer/index.js +145 -10
  39. package/NavDrawer/spec.js +41 -1
  40. package/NavDrawer/style.js +26 -1
  41. package/NavDrawer/transition.js +20 -1
  42. package/SnackBar/index.js +178 -25
  43. package/SnackBar/style.js +64 -2
  44. package/colors.js +4 -1
  45. package/icons/ShareIcon.js +12 -2
  46. package/index.js +5 -1
  47. package/jest.config.js +1 -1
  48. package/package.json +7 -7
@@ -1,5 +1,58 @@
1
- function _slicedToArray(arr,i){return _arrayWithHoles(arr)||_iterableToArrayLimit(arr,i)||_nonIterableRest();}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance");}function _iterableToArrayLimit(arr,i){var _arr=[];var _n=true;var _d=false;var _e=undefined;try{for(var _i=arr[Symbol.iterator](),_s;!(_n=(_s=_i.next()).done);_n=true){_arr.push(_s.value);if(i&&_arr.length===i)break;}}catch(err){_d=true;_e=err;}finally{try{if(!_n&&_i["return"]!=null)_i["return"]();}finally{if(_d)throw _e;}}return _arr;}function _arrayWithHoles(arr){if(Array.isArray(arr))return arr;}import*as React from'react';import PropTypes from'prop-types';import classnames from'classnames';import{useSpring,animated}from'react-spring';import useMeasure from'react-use/lib/useMeasure';import*as styles from"./style";/**
1
+ import * as React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import classnames from 'classnames';
4
+ import { useSpring, animated } from 'react-spring';
5
+ import { useMeasure } from 'react-use';
6
+ import * as styles from "./style";
7
+
8
+ /**
2
9
  * The accordion content component.
3
10
  * @param {Object} props The component props.
4
11
  * @returns {JSX}
5
- */function AccordionContent(props){var children=props.children,open=props.open,id=props.id,className=props.className;var _React$useState=React.useState(0),_React$useState2=_slicedToArray(_React$useState,2),contentHeight=_React$useState2[0],setContentHeight=_React$useState2[1];var _useMeasure=useMeasure(),_useMeasure2=_slicedToArray(_useMeasure,2),ref=_useMeasure2[0],height=_useMeasure2[1].height;React.useEffect(function(){setContentHeight(height);window.addEventListener('resize',setContentHeight(height));return function(){window.removeEventListener('resize',setContentHeight(height));};},[height]);var expand=useSpring({config:{duration:175,tension:100,friction:20},height:open?contentHeight:0});return React.createElement(animated.div,{className:classnames('ui-material__accordion-content',styles.content),style:expand,id:id,"aria-hidden":!open},React.createElement("div",{ref:ref},React.createElement("div",{className:classnames(styles.contentInner,className)},children)));}AccordionContent.defaultProps={open:false,className:null};export default AccordionContent;
12
+ */
13
+ import { jsx as _jsx } from "react/jsx-runtime";
14
+ function AccordionContent(props) {
15
+ const {
16
+ children,
17
+ open,
18
+ id,
19
+ className
20
+ } = props;
21
+ const [contentHeight, setContentHeight] = React.useState(0);
22
+ const [ref, {
23
+ height
24
+ }] = useMeasure();
25
+ React.useEffect(() => {
26
+ setContentHeight(height);
27
+ window.addEventListener('resize', setContentHeight(height));
28
+ return () => {
29
+ window.removeEventListener('resize', setContentHeight(height));
30
+ };
31
+ }, [height]);
32
+ const expand = useSpring({
33
+ config: {
34
+ duration: 175,
35
+ tension: 100,
36
+ friction: 20
37
+ },
38
+ height: open ? contentHeight : 0
39
+ });
40
+ return /*#__PURE__*/_jsx(animated.div, {
41
+ className: classnames('ui-material__accordion-content', styles.content),
42
+ style: expand,
43
+ id: id,
44
+ "aria-hidden": !open,
45
+ children: /*#__PURE__*/_jsx("div", {
46
+ ref: ref,
47
+ children: /*#__PURE__*/_jsx("div", {
48
+ className: classnames(styles.contentInner, className),
49
+ children: children
50
+ })
51
+ })
52
+ });
53
+ }
54
+ AccordionContent.defaultProps = {
55
+ open: false,
56
+ className: null
57
+ };
58
+ export default AccordionContent;
@@ -1 +1,37 @@
1
- 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);}import React from'react';import{mount}from'enzyme';import AccordionContent from"./index";jest.mock('react-spring',function(){return _extends({},jest.requireActual('react-spring'),{useSpring:jest.fn().mockReturnValue({hook:'useSpring return value'})});});describe('<AccordionContent />',function(){it('should render as closed',function(){var wrapper=mount(React.createElement(AccordionContent,{id:"some-id"},React.createElement("div",{id:"test"},"Some Child")));expect(wrapper.find('#test').text()).toEqual('Some Child');expect(wrapper.find('div').get(0).props['aria-hidden']).toEqual(true);expect(wrapper).toMatchSnapshot();});it('should render as open',function(){var wrapper=mount(React.createElement(AccordionContent,{open:true,id:"some-id"},React.createElement("div",{id:"test"},"Some Child")));expect(wrapper.find('#test').text()).toEqual('Some Child');expect(wrapper.find('div').get(0).props['aria-hidden']).toEqual(false);expect(wrapper).toMatchSnapshot();});});
1
+ import React from 'react';
2
+ import { mount } from 'enzyme';
3
+ import AccordionContent from "./index";
4
+ import { jsx as _jsx } from "react/jsx-runtime";
5
+ jest.mock('react-spring', () => ({
6
+ ...jest.requireActual('react-spring'),
7
+ useSpring: jest.fn().mockReturnValue({
8
+ hook: 'useSpring return value'
9
+ })
10
+ }));
11
+ describe('<AccordionContent />', () => {
12
+ it('should render as closed', () => {
13
+ const wrapper = mount(/*#__PURE__*/_jsx(AccordionContent, {
14
+ id: "some-id",
15
+ children: /*#__PURE__*/_jsx("div", {
16
+ id: "test",
17
+ children: "Some Child"
18
+ })
19
+ }));
20
+ expect(wrapper.find('#test').text()).toEqual('Some Child');
21
+ expect(wrapper.find('div').get(0).props['aria-hidden']).toEqual(true);
22
+ expect(wrapper).toMatchSnapshot();
23
+ });
24
+ it('should render as open', () => {
25
+ const wrapper = mount(/*#__PURE__*/_jsx(AccordionContent, {
26
+ open: true,
27
+ id: "some-id",
28
+ children: /*#__PURE__*/_jsx("div", {
29
+ id: "test",
30
+ children: "Some Child"
31
+ })
32
+ }));
33
+ expect(wrapper.find('#test').text()).toEqual('Some Child');
34
+ expect(wrapper.find('div').get(0).props['aria-hidden']).toEqual(false);
35
+ expect(wrapper).toMatchSnapshot();
36
+ });
37
+ });
@@ -1 +1,9 @@
1
- import{css}from'glamor';export var content=css({overflow:'hidden',willChange:'height'}).toString();export var contentInner=css({padding:'0 16px 16px',overflow:'hidden'}).toString();
1
+ import { css } from 'glamor';
2
+ export const content = css({
3
+ overflow: 'hidden',
4
+ willChange: 'height'
5
+ }).toString();
6
+ export const contentInner = css({
7
+ padding: '0 16px 16px',
8
+ overflow: 'hidden'
9
+ }).toString();
@@ -1,4 +1,14 @@
1
- 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 _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;}import*as React from'react';import PropTypes from'prop-types';import classnames from'classnames';import noop from'lodash/noop';import{AccordionContainer,ChevronIcon}from'@shopgate/engage/components';import{i18n}from'@shopgate/engage/core/helpers';import AccordionContent from"./components/AccordionContent";import*as styles from"./style";/**
1
+ import "core-js/modules/es.string.replace.js";
2
+ import * as React from 'react';
3
+ import PropTypes from 'prop-types';
4
+ import classnames from 'classnames';
5
+ import noop from 'lodash/noop';
6
+ import { AccordionContainer, ChevronIcon } from '@shopgate/engage/components';
7
+ import { i18n } from '@shopgate/engage/core/helpers';
8
+ import AccordionContent from "./components/AccordionContent";
9
+ import * as styles from "./style";
10
+
11
+ /**
2
12
  * Accordion component
3
13
  * @param {Object} props The component props.
4
14
  * @param {Function} props.renderLabel Function that returns a React component used as header label
@@ -16,4 +26,92 @@ function _extends(){_extends=Object.assign||function(target){for(var i=1;i<argum
16
26
  * @param {Function} props.renderAdditionalHeaderContent optional additional content
17
27
  * for the accordion header
18
28
  * @returns {JSX.Element}
19
- */function Accordion(props){var renderLabel=props.renderLabel,handleLabel=props.handleLabel,role=props.role,children=props.children,testId=props.testId,className=props.className,contentClassName=props.contentClassName,chevronClassName=props.chevronClassName,openWithChevron=props.openWithChevron,startOpened=props.startOpened,chevronPosition=props.chevronPosition,renderAdditionalHeaderContent=props.renderAdditionalHeaderContent;if(!renderLabel||!children){return null;}var controlsId=testId?"".concat(testId,"-content").replace(/[^\w\s]/gi,'-').replace(' ','-'):'accordion-content';return React.createElement("div",{className:"ui-material__accordion-container"},React.createElement(AccordionContainer,{open:startOpened},function(_ref){var handleOpen=_ref.handleOpen,handleClose=_ref.handleClose,open=_ref.open;var clickHandlers={onClick:open?handleClose:handleOpen,onKeyDown:open?handleClose:handleOpen,role:role};return React.createElement(React.Fragment,null,React.createElement("div",{className:classnames('ui-material__accordion-title',className,styles.toggle),"data-test-id":testId},React.createElement("div",_extends({},openWithChevron?{}:clickHandlers,{key:"accordion-toggle","aria-expanded":open,"aria-controls":controlsId,"aria-label":handleLabel,className:classnames(styles.labelContainer,_defineProperty({},styles.toggleLeftAligned,chevronPosition==='left'))}),renderLabel({open:open}),React.createElement("div",_extends({className:classnames(styles.chevronContainer,chevronClassName,_defineProperty({},styles.clickable,openWithChevron))},openWithChevron?clickHandlers:{},{"aria-label":i18n.text(open?'favorites.close_list':'favorites.open_list')}),React.createElement(ChevronIcon,{className:open?styles.chevronOpen:styles.chevronClosed}))),renderAdditionalHeaderContent&&React.createElement("div",null,renderAdditionalHeaderContent())),React.createElement(AccordionContent,{open:open,id:controlsId,key:controlsId,className:contentClassName},children));}));}Accordion.defaultProps={children:null,renderAdditionalHeaderContent:null,renderLabel:noop,className:null,contentClassName:null,chevronClassName:null,handleLabel:null,role:'button',testId:null,openWithChevron:false,chevronPosition:'right',startOpened:false};export default Accordion;
29
+ */
30
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
31
+ import { createElement as _createElement } from "react";
32
+ function Accordion(props) {
33
+ const {
34
+ renderLabel,
35
+ handleLabel,
36
+ role,
37
+ children,
38
+ testId,
39
+ className,
40
+ contentClassName,
41
+ chevronClassName,
42
+ openWithChevron,
43
+ startOpened,
44
+ chevronPosition,
45
+ renderAdditionalHeaderContent
46
+ } = props;
47
+ if (!renderLabel || !children) {
48
+ return null;
49
+ }
50
+ const controlsId = testId ? `${testId}-content`.replace(/[^\w\s]/gi, '-').replace(' ', '-') : 'accordion-content';
51
+ return /*#__PURE__*/_jsx("div", {
52
+ className: "ui-material__accordion-container",
53
+ children: /*#__PURE__*/_jsx(AccordionContainer, {
54
+ open: startOpened,
55
+ children: ({
56
+ handleOpen,
57
+ handleClose,
58
+ open
59
+ }) => {
60
+ const clickHandlers = {
61
+ onClick: open ? handleClose : handleOpen,
62
+ onKeyDown: open ? handleClose : handleOpen,
63
+ role
64
+ };
65
+ return /*#__PURE__*/_jsxs(_Fragment, {
66
+ children: [/*#__PURE__*/_jsxs("div", {
67
+ className: classnames('ui-material__accordion-title', className, styles.toggle),
68
+ "data-test-id": testId,
69
+ children: [/*#__PURE__*/_createElement("div", {
70
+ ...(openWithChevron ? {} : clickHandlers),
71
+ key: "accordion-toggle",
72
+ "aria-expanded": open,
73
+ "aria-controls": controlsId,
74
+ "aria-label": handleLabel,
75
+ className: classnames(styles.labelContainer, {
76
+ [styles.toggleLeftAligned]: chevronPosition === 'left'
77
+ })
78
+ }, renderLabel({
79
+ open
80
+ }), /*#__PURE__*/_jsx("div", {
81
+ className: classnames(styles.chevronContainer, chevronClassName, {
82
+ [styles.clickable]: openWithChevron
83
+ }),
84
+ ...(openWithChevron ? clickHandlers : {}),
85
+ "aria-label": i18n.text(open ? 'favorites.close_list' : 'favorites.open_list'),
86
+ children: /*#__PURE__*/_jsx(ChevronIcon, {
87
+ className: open ? styles.chevronOpen : styles.chevronClosed
88
+ })
89
+ })), renderAdditionalHeaderContent && /*#__PURE__*/_jsx("div", {
90
+ children: renderAdditionalHeaderContent()
91
+ })]
92
+ }), /*#__PURE__*/_jsx(AccordionContent, {
93
+ open: open,
94
+ id: controlsId,
95
+ className: contentClassName,
96
+ children: children
97
+ }, controlsId)]
98
+ });
99
+ }
100
+ })
101
+ });
102
+ }
103
+ Accordion.defaultProps = {
104
+ children: null,
105
+ renderAdditionalHeaderContent: null,
106
+ renderLabel: noop,
107
+ className: null,
108
+ contentClassName: null,
109
+ chevronClassName: null,
110
+ handleLabel: null,
111
+ role: 'button',
112
+ testId: null,
113
+ openWithChevron: false,
114
+ chevronPosition: 'right',
115
+ startOpened: false
116
+ };
117
+ export default Accordion;
package/Accordion/spec.js CHANGED
@@ -1 +1,41 @@
1
- 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);}import React from'react';import{mount}from'enzyme';import Accordion from"./index";jest.unmock('@shopgate/pwa-ui-shared');jest.mock('@shopgate/engage/components');jest.mock('react-spring',function(){return _extends({},jest.requireActual('react-spring'),{useSpring:jest.fn().mockReturnValue({hook:'useSpring return value'})});});describe('<Accordion />',function(){beforeEach(function(){jest.clearAllMocks();});it('should render with renderLabel prop and children',function(){var wrapper=mount(React.createElement(Accordion,{renderLabel:function renderLabel(){return React.createElement("div",null);},testId:"Some Thing"},"Some content."));expect(wrapper).toMatchSnapshot();expect(wrapper.find('AccordionContent').exists()).toBe(true);});it('should not render without a renderLabel prop',function(){var wrapper=mount(React.createElement(Accordion,{testId:"Some Thing"}));expect(wrapper).toMatchSnapshot();expect(wrapper.instance()).toEqual(null);});it('should not render without children',function(){var wrapper=mount(React.createElement(Accordion,{renderLabel:function renderLabel(){},testId:"Some Thing"}));expect(wrapper).toMatchSnapshot();expect(wrapper.instance()).toEqual(null);});});
1
+ import React from 'react';
2
+ import { mount } from 'enzyme';
3
+ import Accordion from "./index";
4
+ import { jsx as _jsx } from "react/jsx-runtime";
5
+ jest.unmock('@shopgate/pwa-ui-shared');
6
+ jest.mock('@shopgate/engage/components');
7
+ jest.mock('react-spring', () => ({
8
+ ...jest.requireActual('react-spring'),
9
+ useSpring: jest.fn().mockReturnValue({
10
+ hook: 'useSpring return value'
11
+ })
12
+ }));
13
+ describe('<Accordion />', () => {
14
+ beforeEach(() => {
15
+ jest.clearAllMocks();
16
+ });
17
+ it('should render with renderLabel prop and children', () => {
18
+ const wrapper = mount(/*#__PURE__*/_jsx(Accordion, {
19
+ renderLabel: () => /*#__PURE__*/_jsx("div", {}),
20
+ testId: "Some Thing",
21
+ children: "Some content."
22
+ }));
23
+ expect(wrapper).toMatchSnapshot();
24
+ expect(wrapper.find('AccordionContent').exists()).toBe(true);
25
+ });
26
+ it('should not render without a renderLabel prop', () => {
27
+ const wrapper = mount(/*#__PURE__*/_jsx(Accordion, {
28
+ testId: "Some Thing"
29
+ }));
30
+ expect(wrapper).toMatchSnapshot();
31
+ expect(wrapper.instance()).toEqual(null);
32
+ });
33
+ it('should not render without children', () => {
34
+ const wrapper = mount(/*#__PURE__*/_jsx(Accordion, {
35
+ renderLabel: () => {},
36
+ testId: "Some Thing"
37
+ }));
38
+ expect(wrapper).toMatchSnapshot();
39
+ expect(wrapper.instance()).toEqual(null);
40
+ });
41
+ });
@@ -1 +1,47 @@
1
- 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;}import{css}from'glamor';import{responsiveMediaQuery}from'@shopgate/engage/styles';export var toggle=css({padding:'12px 16px',position:'relative',display:'flex',flexDirection:'row',alignItems:'center',justifyContent:'space-between',gap:12}).toString();export var clickable=css({cursor:'pointer'}).toString();export var toggleLeftAligned=css({flexDirection:'row-reverse'});export var chevronContainer=css(_defineProperty({display:'flex',flexShrink:0,fontSize:'1.5rem'},responsiveMediaQuery('>sm',{webOnly:true}),{backgroundColor:'rgba(0, 0, 0, 0.04)',borderRadius:32,padding:8})).toString();export var labelContainer=css({marginRight:'auto',display:'flex',flex:1,alignItems:'center',justifyContent:'space-between',gap:12});export var chevron=css({transformOrigin:'center center',transition:'transform 250ms cubic-bezier(0.25, 0.1, 0.25, 1)'});export var chevronClosed=css(chevron,{transform:'rotateZ(-90deg)'}).toString();export var chevronOpen=css(chevron,{transform:'rotateZ(90deg)'}).toString();
1
+ import { css } from 'glamor';
2
+ import { responsiveMediaQuery } from '@shopgate/engage/styles';
3
+ export const toggle = css({
4
+ padding: '12px 16px',
5
+ position: 'relative',
6
+ display: 'flex',
7
+ flexDirection: 'row',
8
+ alignItems: 'center',
9
+ justifyContent: 'space-between',
10
+ gap: 12
11
+ }).toString();
12
+ export const clickable = css({
13
+ cursor: 'pointer'
14
+ }).toString();
15
+ export const toggleLeftAligned = css({
16
+ flexDirection: 'row-reverse'
17
+ });
18
+ export const chevronContainer = css({
19
+ display: 'flex',
20
+ flexShrink: 0,
21
+ fontSize: '1.5rem',
22
+ [responsiveMediaQuery('>sm', {
23
+ webOnly: true
24
+ })]: {
25
+ backgroundColor: 'rgba(0, 0, 0, 0.04)',
26
+ borderRadius: 32,
27
+ padding: 8
28
+ }
29
+ }).toString();
30
+ export const labelContainer = css({
31
+ marginRight: 'auto',
32
+ display: 'flex',
33
+ flex: 1,
34
+ alignItems: 'center',
35
+ justifyContent: 'space-between',
36
+ gap: 12
37
+ });
38
+ export const chevron = css({
39
+ transformOrigin: 'center center',
40
+ transition: 'transform 250ms cubic-bezier(0.25, 0.1, 0.25, 1)'
41
+ });
42
+ export const chevronClosed = css(chevron, {
43
+ transform: 'rotateZ(-90deg)'
44
+ }).toString();
45
+ export const chevronOpen = css(chevron, {
46
+ transform: 'rotateZ(90deg)'
47
+ }).toString();
@@ -1,4 +1,28 @@
1
- import React,{Fragment}from'react';import PropTypes from'prop-types';import{Portal}from'@shopgate/pwa-common/components';import{APP_BAR_BELOW,APP_BAR_BELOW_BEFORE,APP_BAR_BELOW_AFTER}from'@shopgate/pwa-common/constants/Portals';/**
1
+ import React, { Fragment } from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import { Portal } from '@shopgate/pwa-common/components';
4
+ import { APP_BAR_BELOW, APP_BAR_BELOW_BEFORE, APP_BAR_BELOW_AFTER } from '@shopgate/pwa-common/constants/Portals';
5
+
6
+ /**
2
7
  * @param {Object} props The component props.
3
8
  * @returns {JSX}
4
- */function Below(_ref){var elements=_ref.elements;return React.createElement(Fragment,{key:"below"},React.createElement(Portal,{name:APP_BAR_BELOW_BEFORE}),React.createElement(Portal,{name:APP_BAR_BELOW},elements),React.createElement(Portal,{name:APP_BAR_BELOW_AFTER}));}Below.defaultProps={elements:null};export default Below;
9
+ */
10
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
11
+ function Below({
12
+ elements
13
+ }) {
14
+ return /*#__PURE__*/_jsxs(Fragment, {
15
+ children: [/*#__PURE__*/_jsx(Portal, {
16
+ name: APP_BAR_BELOW_BEFORE
17
+ }), /*#__PURE__*/_jsx(Portal, {
18
+ name: APP_BAR_BELOW,
19
+ children: elements
20
+ }), /*#__PURE__*/_jsx(Portal, {
21
+ name: APP_BAR_BELOW_AFTER
22
+ })]
23
+ }, "below");
24
+ }
25
+ Below.defaultProps = {
26
+ elements: null
27
+ };
28
+ export default Below;
@@ -1,4 +1,28 @@
1
- import React,{Fragment}from'react';import PropTypes from'prop-types';import{Portal}from'@shopgate/pwa-common/components';import{APP_BAR_CENTER,APP_BAR_CENTER_BEFORE,APP_BAR_CENTER_AFTER}from'@shopgate/pwa-common/constants/Portals';/**
1
+ import React, { Fragment } from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import { Portal } from '@shopgate/pwa-common/components';
4
+ import { APP_BAR_CENTER, APP_BAR_CENTER_BEFORE, APP_BAR_CENTER_AFTER } from '@shopgate/pwa-common/constants/Portals';
5
+
6
+ /**
2
7
  * @param {Object} props The component props.
3
8
  * @returns {JSX}
4
- */function Center(_ref){var elements=_ref.elements;return React.createElement(Fragment,{key:"center"},React.createElement(Portal,{name:APP_BAR_CENTER_BEFORE}),React.createElement(Portal,{name:APP_BAR_CENTER},elements),React.createElement(Portal,{name:APP_BAR_CENTER_AFTER}));}Center.defaultProps={elements:null};export default Center;
9
+ */
10
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
11
+ function Center({
12
+ elements
13
+ }) {
14
+ return /*#__PURE__*/_jsxs(Fragment, {
15
+ children: [/*#__PURE__*/_jsx(Portal, {
16
+ name: APP_BAR_CENTER_BEFORE
17
+ }), /*#__PURE__*/_jsx(Portal, {
18
+ name: APP_BAR_CENTER,
19
+ children: elements
20
+ }), /*#__PURE__*/_jsx(Portal, {
21
+ name: APP_BAR_CENTER_AFTER
22
+ })]
23
+ }, "center");
24
+ }
25
+ Center.defaultProps = {
26
+ elements: null
27
+ };
28
+ export default Center;
@@ -1,5 +1,50 @@
1
- function _typeof(obj){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"){_typeof=function _typeof(obj){return typeof obj;};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;};}return _typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor;}function _callSuper(_this,derived,args){function isNativeReflectConstruct(){if(typeof Reflect==="undefined"||!Reflect.construct)return false;if(Reflect.construct.sham)return false;if(typeof Proxy==="function")return true;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));}catch(e){return false;}}derived=_getPrototypeOf(derived);return _possibleConstructorReturn(_this,isNativeReflectConstruct()?Reflect.construct(derived,args||[],_getPrototypeOf(_this).constructor):derived.apply(_this,args));}function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object"||typeof call==="function")){return call;}return _assertThisInitialized(self);}function _assertThisInitialized(self){if(self===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _getPrototypeOf(o){_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o);};return _getPrototypeOf(o);}function _inherits(subClass,superClass){if(typeof superClass!=="function"&&superClass!==null){throw new TypeError("Super expression must either be null or a function");}subClass.prototype=Object.create(superClass&&superClass.prototype,{constructor:{value:subClass,writable:true,configurable:true}});if(superClass)_setPrototypeOf(subClass,superClass);}function _setPrototypeOf(o,p){_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(o,p){o.__proto__=p;return o;};return _setPrototypeOf(o,p);}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;}import React,{PureComponent}from'react';import PropTypes from'prop-types';import styles from"./style";/**
1
+ import _inheritsLoose from "@babel/runtime/helpers/inheritsLoose";
2
+ import React, { PureComponent } from 'react';
3
+ import PropTypes from 'prop-types';
4
+ import styles from "./style";
5
+
6
+ /**
2
7
  * The AppBarField component.
3
- */var AppBarField=/*#__PURE__*/function(_PureComponent){function AppBarField(){_classCallCheck(this,AppBarField);return _callSuper(this,AppBarField,arguments);}_inherits(AppBarField,_PureComponent);return _createClass(AppBarField,[{key:"render",value:/**
8
+ */
9
+ import { jsx as _jsx } from "react/jsx-runtime";
10
+ let AppBarField = /*#__PURE__*/function (_PureComponent) {
11
+ function AppBarField() {
12
+ return _PureComponent.apply(this, arguments) || this;
13
+ }
14
+ _inheritsLoose(AppBarField, _PureComponent);
15
+ var _proto = AppBarField.prototype;
16
+ /**
4
17
  * @returns {JSX}
5
- */function render(){var _this$props=this.props,fieldRef=_this$props.fieldRef,onChange=_this$props.onChange,onSubmit=_this$props.onSubmit;var _this$context$i18n=this.context.i18n(),__=_this$context$i18n.__;return React.createElement("form",{className:styles.form,onSubmit:onSubmit},React.createElement("input",{className:styles.field,onChange:onChange,placeholder:__('search.placeholder'),ref:fieldRef,"data-test-id":"searchInput"}));}}]);}(PureComponent);_defineProperty(AppBarField,"defaultProps",{fieldRef:null,onChange:null,onSubmit:null});_defineProperty(AppBarField,"contextTypes",{i18n:PropTypes.func});export default AppBarField;
18
+ */
19
+ _proto.render = function render() {
20
+ const {
21
+ fieldRef,
22
+ onChange,
23
+ onSubmit
24
+ } = this.props;
25
+ const {
26
+ __
27
+ } = this.context.i18n();
28
+ return /*#__PURE__*/_jsx("form", {
29
+ className: styles.form,
30
+ onSubmit: onSubmit,
31
+ children: /*#__PURE__*/_jsx("input", {
32
+ className: styles.field,
33
+ onChange: onChange,
34
+ placeholder: __('search.placeholder'),
35
+ ref: fieldRef,
36
+ "data-test-id": "searchInput"
37
+ })
38
+ });
39
+ };
40
+ return AppBarField;
41
+ }(PureComponent);
42
+ AppBarField.defaultProps = {
43
+ fieldRef: null,
44
+ onChange: null,
45
+ onSubmit: null
46
+ };
47
+ AppBarField.contextTypes = {
48
+ i18n: PropTypes.func
49
+ };
50
+ export default AppBarField;
@@ -1 +1,14 @@
1
- import{css}from'glamor';var form=css({display:'flex',flexGrow:1});var field=css({outline:0,padding:'0 16px',width:'100%'});export default{form:form,field:field};
1
+ import { css } from 'glamor';
2
+ const form = css({
3
+ display: 'flex',
4
+ flexGrow: 1
5
+ });
6
+ const field = css({
7
+ outline: 0,
8
+ padding: '0 16px',
9
+ width: '100%'
10
+ });
11
+ export default {
12
+ form,
13
+ field
14
+ };
@@ -1,5 +1,54 @@
1
- function _typeof(obj){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"){_typeof=function _typeof(obj){return typeof obj;};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;};}return _typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor;}function _callSuper(_this,derived,args){function isNativeReflectConstruct(){if(typeof Reflect==="undefined"||!Reflect.construct)return false;if(Reflect.construct.sham)return false;if(typeof Proxy==="function")return true;try{return!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));}catch(e){return false;}}derived=_getPrototypeOf(derived);return _possibleConstructorReturn(_this,isNativeReflectConstruct()?Reflect.construct(derived,args||[],_getPrototypeOf(_this).constructor):derived.apply(_this,args));}function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object"||typeof call==="function")){return call;}return _assertThisInitialized(self);}function _assertThisInitialized(self){if(self===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _getPrototypeOf(o){_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o);};return _getPrototypeOf(o);}function _inherits(subClass,superClass){if(typeof superClass!=="function"&&superClass!==null){throw new TypeError("Super expression must either be null or a function");}subClass.prototype=Object.create(superClass&&superClass.prototype,{constructor:{value:subClass,writable:true,configurable:true}});if(superClass)_setPrototypeOf(subClass,superClass);}function _setPrototypeOf(o,p){_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(o,p){o.__proto__=p;return o;};return _setPrototypeOf(o,p);}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;}import React,{PureComponent}from'react';import PropTypes from'prop-types';import styles from"./style";/**
1
+ import _inheritsLoose from "@babel/runtime/helpers/inheritsLoose";
2
+ import React, { PureComponent } from 'react';
3
+ import PropTypes from 'prop-types';
4
+ import styles from "./style";
5
+
6
+ /**
2
7
  * The AppBarIcon component.
3
- */var AppBarIcon=/*#__PURE__*/function(_PureComponent){function AppBarIcon(){_classCallCheck(this,AppBarIcon);return _callSuper(this,AppBarIcon,arguments);}_inherits(AppBarIcon,_PureComponent);return _createClass(AppBarIcon,[{key:"render",value:/**
8
+ */
9
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
+ let AppBarIcon = /*#__PURE__*/function (_PureComponent) {
11
+ function AppBarIcon() {
12
+ return _PureComponent.apply(this, arguments) || this;
13
+ }
14
+ _inheritsLoose(AppBarIcon, _PureComponent);
15
+ var _proto = AppBarIcon.prototype;
16
+ /**
4
17
  * @returns {JSX}
5
- */function render(){var _this$props=this.props,background=_this$props.background,Badge=_this$props.badge,color=_this$props.color,Icon=_this$props.icon,onClick=_this$props.onClick,testId=_this$props.testId,ariaHidden=_this$props['aria-hidden'],ariaLabel=_this$props['aria-label'];return React.createElement("button",{className:styles,onClick:onClick,style:{background:background,color:color},"data-test-id":testId,"aria-hidden":ariaHidden,"aria-label":ariaLabel,type:"button"},React.createElement(Icon,null),Badge&&React.createElement(Badge,null));}}]);}(PureComponent);_defineProperty(AppBarIcon,"defaultProps",{'aria-hidden':null,'aria-label':null,background:'inherit',badge:null,color:'inherit',testId:null});export default AppBarIcon;
18
+ */
19
+ _proto.render = function render() {
20
+ const {
21
+ background,
22
+ badge: Badge,
23
+ color,
24
+ icon: Icon,
25
+ onClick,
26
+ testId,
27
+ 'aria-hidden': ariaHidden,
28
+ 'aria-label': ariaLabel
29
+ } = this.props;
30
+ return /*#__PURE__*/_jsxs("button", {
31
+ className: styles,
32
+ onClick: onClick,
33
+ style: {
34
+ background,
35
+ color
36
+ },
37
+ "data-test-id": testId,
38
+ "aria-hidden": ariaHidden,
39
+ "aria-label": ariaLabel,
40
+ type: "button",
41
+ children: [/*#__PURE__*/_jsx(Icon, {}), Badge && /*#__PURE__*/_jsx(Badge, {})]
42
+ });
43
+ };
44
+ return AppBarIcon;
45
+ }(PureComponent);
46
+ AppBarIcon.defaultProps = {
47
+ 'aria-hidden': null,
48
+ 'aria-label': null,
49
+ background: 'inherit',
50
+ badge: null,
51
+ color: 'inherit',
52
+ testId: null
53
+ };
54
+ export default AppBarIcon;
@@ -1 +1,14 @@
1
- import{css}from'glamor';export default css({color:'inherit',display:'flex',flexShrink:0,fontSize:24,height:56,justifyContent:'center',alignItems:'center',outline:0,padding:0,position:'relative',width:56});
1
+ import { css } from 'glamor';
2
+ export default css({
3
+ color: 'inherit',
4
+ display: 'flex',
5
+ flexShrink: 0,
6
+ fontSize: 24,
7
+ height: 56,
8
+ justifyContent: 'center',
9
+ alignItems: 'center',
10
+ outline: 0,
11
+ padding: 0,
12
+ position: 'relative',
13
+ width: 56
14
+ });
@@ -1,4 +1,28 @@
1
- import React,{Fragment}from'react';import PropTypes from'prop-types';import{Portal}from'@shopgate/pwa-common/components';import{APP_BAR_LEFT,APP_BAR_LEFT_BEFORE,APP_BAR_LEFT_AFTER}from'@shopgate/pwa-common/constants/Portals';/**
1
+ import React, { Fragment } from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import { Portal } from '@shopgate/pwa-common/components';
4
+ import { APP_BAR_LEFT, APP_BAR_LEFT_BEFORE, APP_BAR_LEFT_AFTER } from '@shopgate/pwa-common/constants/Portals';
5
+
6
+ /**
2
7
  * @param {Object} props The component props.
3
8
  * @returns {JSX}
4
- */function Left(_ref){var elements=_ref.elements;return React.createElement(Fragment,{key:"left"},React.createElement(Portal,{name:APP_BAR_LEFT_BEFORE}),React.createElement(Portal,{name:APP_BAR_LEFT},elements),React.createElement(Portal,{name:APP_BAR_LEFT_AFTER}));}Left.defaultProps={elements:null};export default Left;
9
+ */
10
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
11
+ function Left({
12
+ elements
13
+ }) {
14
+ return /*#__PURE__*/_jsxs(Fragment, {
15
+ children: [/*#__PURE__*/_jsx(Portal, {
16
+ name: APP_BAR_LEFT_BEFORE
17
+ }), /*#__PURE__*/_jsx(Portal, {
18
+ name: APP_BAR_LEFT,
19
+ children: elements
20
+ }), /*#__PURE__*/_jsx(Portal, {
21
+ name: APP_BAR_LEFT_AFTER
22
+ })]
23
+ }, "left");
24
+ }
25
+ Left.defaultProps = {
26
+ elements: null
27
+ };
28
+ export default Left;
@@ -1,4 +1,28 @@
1
- import React,{Fragment}from'react';import PropTypes from'prop-types';import{Portal}from'@shopgate/pwa-common/components';import{APP_BAR_RIGHT,APP_BAR_RIGHT_BEFORE,APP_BAR_RIGHT_AFTER}from'@shopgate/pwa-common/constants/Portals';/**
1
+ import React, { Fragment } from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import { Portal } from '@shopgate/pwa-common/components';
4
+ import { APP_BAR_RIGHT, APP_BAR_RIGHT_BEFORE, APP_BAR_RIGHT_AFTER } from '@shopgate/pwa-common/constants/Portals';
5
+
6
+ /**
2
7
  * @param {Object} props The component props.
3
8
  * @returns {JSX}
4
- */function Right(_ref){var elements=_ref.elements;return React.createElement(Fragment,{key:"right"},React.createElement(Portal,{name:APP_BAR_RIGHT_BEFORE}),React.createElement(Portal,{name:APP_BAR_RIGHT},elements),React.createElement(Portal,{name:APP_BAR_RIGHT_AFTER}));}Right.defaultProps={elements:null};export default Right;
9
+ */
10
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
11
+ function Right({
12
+ elements
13
+ }) {
14
+ return /*#__PURE__*/_jsxs(Fragment, {
15
+ children: [/*#__PURE__*/_jsx(Portal, {
16
+ name: APP_BAR_RIGHT_BEFORE
17
+ }), /*#__PURE__*/_jsx(Portal, {
18
+ name: APP_BAR_RIGHT,
19
+ children: elements
20
+ }), /*#__PURE__*/_jsx(Portal, {
21
+ name: APP_BAR_RIGHT_AFTER
22
+ })]
23
+ }, "right");
24
+ }
25
+ Right.defaultProps = {
26
+ elements: null
27
+ };
28
+ export default Right;