@blaze-cms/react-page-builder 0.146.0-alpha.52 → 0.146.0-alpha.56

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 (30) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/lib/components/Button.js +57 -11
  3. package/lib/components/Button.js.map +1 -1
  4. package/lib/components/List/ListFactory.js.map +1 -1
  5. package/lib/components/MenuItem/MenuItemRender.js +19 -10
  6. package/lib/components/MenuItem/MenuItemRender.js.map +1 -1
  7. package/lib/hooks/helpers/StoreImages.js +61 -41
  8. package/lib/hooks/helpers/StoreImages.js.map +1 -1
  9. package/lib/variants/LiveBlogList/LiveBlogList.js +45 -48
  10. package/lib/variants/LiveBlogList/LiveBlogList.js.map +1 -1
  11. package/lib-es/components/Button.js +12 -7
  12. package/lib-es/components/Button.js.map +1 -1
  13. package/lib-es/components/List/ListFactory.js +1 -1
  14. package/lib-es/components/List/ListFactory.js.map +1 -1
  15. package/lib-es/components/MenuItem/MenuItemRender.js +19 -8
  16. package/lib-es/components/MenuItem/MenuItemRender.js.map +1 -1
  17. package/lib-es/hooks/helpers/StoreImages.js +44 -30
  18. package/lib-es/hooks/helpers/StoreImages.js.map +1 -1
  19. package/lib-es/variants/LiveBlogList/LiveBlogList.js +41 -51
  20. package/lib-es/variants/LiveBlogList/LiveBlogList.js.map +1 -1
  21. package/package.json +3 -3
  22. package/src/components/Button.js +13 -9
  23. package/src/components/List/ListFactory.js +1 -1
  24. package/src/components/MenuItem/MenuItemRender.js +21 -11
  25. package/src/hooks/helpers/StoreImages.js +33 -31
  26. package/src/variants/LiveBlogList/LiveBlogList.js +51 -47
  27. package/tests/unit/src/components/MenuItem/MenuItemRender.test.js +25 -2
  28. package/tests/unit/src/components/MenuItem/__snapshots__/MenuItem.test.js.snap +1 -0
  29. package/tests/unit/src/variants/LiveBlogList/LiveBlogList.test.js +121 -0
  30. package/tests/unit/src/variants/LiveBlogList/constants.js +10 -0
package/CHANGELOG.md CHANGED
@@ -3,6 +3,18 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [0.146.0-alpha.56](https://github.com/thebyte9/blaze/compare/v0.146.0-alpha.55...v0.146.0-alpha.56) (2025-07-09)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * add constant to avoid duplication ([07d6742](https://github.com/thebyte9/blaze/commit/07d6742f894ee8e063c17847fbb89559c23c5766))
12
+ * respond to live blog item size changes for laze loaded image, live blog title and global light box fix ([#4730](https://github.com/thebyte9/blaze/issues/4730)) ([5dd38d8](https://github.com/thebyte9/blaze/commit/5dd38d8d9e5983c55d3053d440eb7ab618688920))
13
+
14
+
15
+
16
+
17
+
6
18
  # [0.146.0-alpha.52](https://github.com/thebyte9/blaze/compare/v0.146.0-alpha.51...v0.146.0-alpha.52) (2025-06-12)
7
19
 
8
20
 
@@ -20,10 +20,11 @@ Object.defineProperty(exports, "__esModule", {
20
20
  value: true
21
21
  });
22
22
  exports["default"] = void 0;
23
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
23
24
  require("core-js/modules/es.function.name.js");
24
- require("core-js/modules/es.string.starts-with.js");
25
25
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
26
26
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
27
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
27
28
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
28
29
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
29
30
  var _react = _interopRequireWildcard(require("react"));
@@ -83,16 +84,61 @@ var Button = function Button(props) {
83
84
  if (!text && !icon) return false;
84
85
  return !!(url || (0, _helpers.hasChildren)(children));
85
86
  };
86
- var logout = function logout() {
87
- (0, _coreAuthUi.handleLogout)(client);
88
- if ((0, _helpers.hasChildren)(children)) return setShowChildren(true);
89
- if (!urlToUse) return router.reload();
90
- return urlToUse.startsWith('/') ? router.push('/Resolver', urlToUse) : window.location.href = urlToUse;
91
- };
92
- var handleClick = function handleClick() {
93
- if (isLogoutButton) logout();
94
- if (!url && !isLogoutButton) setShowChildren(!showChildren);
95
- };
87
+ var logout = /*#__PURE__*/function () {
88
+ var _ref = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
89
+ return _regenerator["default"].wrap(function _callee$(_context) {
90
+ while (1) switch (_context.prev = _context.next) {
91
+ case 0:
92
+ _context.next = 2;
93
+ return (0, _coreAuthUi.handleLogout)(client);
94
+ case 2:
95
+ if (!(0, _helpers.hasChildren)(children)) {
96
+ _context.next = 5;
97
+ break;
98
+ }
99
+ setShowChildren(true);
100
+ return _context.abrupt("return");
101
+ case 5:
102
+ if (urlToUse) {
103
+ _context.next = 7;
104
+ break;
105
+ }
106
+ return _context.abrupt("return", router.reload());
107
+ case 7:
108
+ window.location.href = urlToUse;
109
+ case 8:
110
+ case "end":
111
+ return _context.stop();
112
+ }
113
+ }, _callee);
114
+ }));
115
+ return function logout() {
116
+ return _ref.apply(this, arguments);
117
+ };
118
+ }();
119
+ var handleClick = /*#__PURE__*/function () {
120
+ var _ref2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
121
+ return _regenerator["default"].wrap(function _callee2$(_context2) {
122
+ while (1) switch (_context2.prev = _context2.next) {
123
+ case 0:
124
+ if (!isLogoutButton) {
125
+ _context2.next = 3;
126
+ break;
127
+ }
128
+ _context2.next = 3;
129
+ return logout();
130
+ case 3:
131
+ if (!url && !isLogoutButton) setShowChildren(!showChildren);
132
+ case 4:
133
+ case "end":
134
+ return _context2.stop();
135
+ }
136
+ }, _callee2);
137
+ }));
138
+ return function handleClick() {
139
+ return _ref2.apply(this, arguments);
140
+ };
141
+ }();
96
142
  if (!checkIfButtonShouldRender()) return null;
97
143
  var buttonType = !text && icon ? 'icon' : type;
98
144
  var modifiers = (0, _utils.getClassModifiers)(buttonType, _objectSpread({
@@ -1 +1 @@
1
- {"version":3,"file":"Button.js","names":["_react","_interopRequireWildcard","require","_reactCookie","_router","_classnames","_interopRequireDefault","_button","_coreAuthUi","_client","_propTypes","_utilsHandlebars","_ClickWrapper","_BlazeLink","_HOC","_utils","_constants","_helpers","_excluded","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","Button","props","type","text","url","icon","name","style","children","clickAction","childSeoVisibility","afterClickText","parent","otherProps","_objectWithoutProperties2","client","useApolloClient","router","useRouter","isLogoutButton","LOGOUT","_useCookies","useCookies","_useCookies2","_slicedToArray2","cookies","blazeCookie","blaze_auth","_useState","useState","_useState2","showChildren","setShowChildren","_useStringTemplate","useStringTemplate","_useStringTemplate$da","data","textToUse","afterClickTextToUse","urlToUse","useEffect","asPath","checkIfButtonShouldRender","hasChildren","logout","handleLogout","reload","startsWith","window","location","href","handleClick","buttonType","modifiers","getClassModifiers","currentProps","title","DynamicButton","BlazeLink","BlazeButton","updateChildrensParent","itemId","itemEntity","renderedChildren","renderChildren","onClose","_getClickWrapperOptio","getClickWrapperOptions","shouldUseClickWrapper","wrapperProps","Wrapper","ClickWrapper","Fragment","contentClassName","classnames","createElement","className","_extends2","onClick","propTypes","PropTypes","object","string","size","bool","oneOfType","arrayOf","node","defaultProps","_default","exports","withTitle"],"sources":["../../src/components/Button.js"],"sourcesContent":["import React, { useState, Fragment, useEffect } from 'react';\nimport { useCookies } from 'react-cookie';\nimport { useRouter } from 'next/router';\nimport classnames from 'classnames';\nimport BlazeButton from '@blaze-react/button';\nimport { handleLogout } from '@blaze-cms/core-auth-ui';\nimport { useApolloClient } from '@apollo/client';\nimport PropTypes, { bool, string } from 'prop-types';\nimport { useStringTemplate } from '@blaze-cms/utils-handlebars';\nimport ClickWrapper from './ClickWrapper';\nimport BlazeLink from './BlazeLink';\nimport { withTitle } from '../HOC';\nimport { getClassModifiers } from '../utils';\nimport { LOGOUT } from '../constants';\nimport {\n renderChildren,\n updateChildrensParent,\n hasChildren,\n getClickWrapperOptions\n} from '../helpers';\n\nconst Button = props => {\n const {\n type,\n text,\n url,\n icon,\n name,\n style,\n children,\n clickAction,\n childSeoVisibility,\n afterClickText,\n parent,\n ...otherProps\n } = props;\n const client = useApolloClient();\n const router = useRouter();\n const isLogoutButton = clickAction === LOGOUT;\n const [cookies] = useCookies();\n const { blaze_auth: blazeCookie } = cookies;\n const [showChildren, setShowChildren] = useState(false);\n const {\n data: [textToUse, afterClickTextToUse, urlToUse]\n } = useStringTemplate(parent, [text, afterClickText, url]);\n\n useEffect(\n () => {\n setShowChildren(false);\n },\n [router.asPath]\n );\n\n const checkIfButtonShouldRender = () => {\n if (isLogoutButton) return !!blazeCookie;\n if (!text && !icon) return false;\n return !!(url || hasChildren(children));\n };\n\n const logout = () => {\n handleLogout(client);\n if (hasChildren(children)) return setShowChildren(true);\n\n if (!urlToUse) return router.reload();\n\n return urlToUse.startsWith('/')\n ? router.push('/Resolver', urlToUse)\n : (window.location.href = urlToUse);\n };\n\n const handleClick = () => {\n if (isLogoutButton) logout();\n if (!url && !isLogoutButton) setShowChildren(!showChildren);\n };\n\n if (!checkIfButtonShouldRender()) return null;\n\n const buttonType = !text && icon ? 'icon' : type;\n const modifiers = getClassModifiers(buttonType, { icon, style, ...otherProps });\n const currentProps = url ? { href: urlToUse, title: name } : { name };\n const DynamicButton = url && !isLogoutButton ? BlazeLink : BlazeButton;\n updateChildrensParent(children, parent.itemId, parent.itemEntity);\n\n const renderedChildren = renderChildren(children, { onClose: handleClick });\n const { shouldUseClickWrapper, wrapperProps } = getClickWrapperOptions(children, props);\n const Wrapper = shouldUseClickWrapper ? ClickWrapper : Fragment;\n\n const contentClassName = classnames('button__content', {\n 'button__content--show': showChildren\n });\n\n return (\n <Wrapper {...wrapperProps}>\n {childSeoVisibility && <div className={contentClassName}>{renderedChildren}</div>}\n {!childSeoVisibility && showChildren && renderedChildren}\n <DynamicButton className={modifiers} onClick={handleClick} {...currentProps}>\n {icon && <i className={icon} />}\n {showChildren ? afterClickTextToUse : textToUse}\n </DynamicButton>\n </Wrapper>\n );\n};\n\nButton.propTypes = {\n parent: PropTypes.object,\n clickAction: PropTypes.string,\n text: PropTypes.string,\n afterClickText: string,\n name: PropTypes.string,\n type: PropTypes.string,\n url: PropTypes.string,\n size: PropTypes.string,\n icon: PropTypes.string,\n style: PropTypes.string,\n childSeoVisibility: bool,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node])\n};\n\nButton.defaultProps = {\n parent: {},\n clickAction: '',\n text: '',\n afterClickText: '',\n name: '',\n type: '',\n url: null,\n size: '',\n icon: '',\n style: '',\n children: [],\n childSeoVisibility: false\n};\n\nexport default withTitle(Button);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Button.js","names":["_react","_interopRequireWildcard","require","_reactCookie","_router","_classnames","_interopRequireDefault","_button","_coreAuthUi","_client","_propTypes","_utilsHandlebars","_ClickWrapper","_BlazeLink","_HOC","_utils","_constants","_helpers","_excluded","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","Button","props","type","text","url","icon","name","style","children","clickAction","childSeoVisibility","afterClickText","parent","otherProps","_objectWithoutProperties2","client","useApolloClient","router","useRouter","isLogoutButton","LOGOUT","_useCookies","useCookies","_useCookies2","_slicedToArray2","cookies","blazeCookie","blaze_auth","_useState","useState","_useState2","showChildren","setShowChildren","_useStringTemplate","useStringTemplate","_useStringTemplate$da","data","textToUse","afterClickTextToUse","urlToUse","useEffect","asPath","checkIfButtonShouldRender","hasChildren","logout","_ref","_asyncToGenerator2","_regenerator","mark","_callee","wrap","_callee$","_context","prev","next","handleLogout","abrupt","reload","window","location","href","stop","handleClick","_ref2","_callee2","_callee2$","_context2","buttonType","modifiers","getClassModifiers","currentProps","title","DynamicButton","BlazeLink","BlazeButton","updateChildrensParent","itemId","itemEntity","renderedChildren","renderChildren","onClose","_getClickWrapperOptio","getClickWrapperOptions","shouldUseClickWrapper","wrapperProps","Wrapper","ClickWrapper","Fragment","contentClassName","classnames","createElement","className","_extends2","onClick","propTypes","PropTypes","object","string","size","bool","oneOfType","arrayOf","node","defaultProps","_default","exports","withTitle"],"sources":["../../src/components/Button.js"],"sourcesContent":["import React, { useState, Fragment, useEffect } from 'react';\nimport { useCookies } from 'react-cookie';\nimport { useRouter } from 'next/router';\nimport classnames from 'classnames';\nimport BlazeButton from '@blaze-react/button';\nimport { handleLogout } from '@blaze-cms/core-auth-ui';\nimport { useApolloClient } from '@apollo/client';\nimport PropTypes, { bool, string } from 'prop-types';\nimport { useStringTemplate } from '@blaze-cms/utils-handlebars';\nimport ClickWrapper from './ClickWrapper';\nimport BlazeLink from './BlazeLink';\nimport { withTitle } from '../HOC';\nimport { getClassModifiers } from '../utils';\nimport { LOGOUT } from '../constants';\nimport {\n renderChildren,\n updateChildrensParent,\n hasChildren,\n getClickWrapperOptions\n} from '../helpers';\n\nconst Button = props => {\n const {\n type,\n text,\n url,\n icon,\n name,\n style,\n children,\n clickAction,\n childSeoVisibility,\n afterClickText,\n parent,\n ...otherProps\n } = props;\n const client = useApolloClient();\n const router = useRouter();\n const isLogoutButton = clickAction === LOGOUT;\n const [cookies] = useCookies();\n const { blaze_auth: blazeCookie } = cookies;\n const [showChildren, setShowChildren] = useState(false);\n const {\n data: [textToUse, afterClickTextToUse, urlToUse]\n } = useStringTemplate(parent, [text, afterClickText, url]);\n\n useEffect(\n () => {\n setShowChildren(false);\n },\n [router.asPath]\n );\n\n const checkIfButtonShouldRender = () => {\n if (isLogoutButton) return !!blazeCookie;\n if (!text && !icon) return false;\n return !!(url || hasChildren(children));\n };\n\n const logout = async () => {\n await handleLogout(client);\n\n if (hasChildren(children)) {\n setShowChildren(true);\n return;\n }\n\n if (!urlToUse) {\n return router.reload();\n }\n\n window.location.href = urlToUse;\n };\n\n const handleClick = async () => {\n if (isLogoutButton) await logout();\n if (!url && !isLogoutButton) setShowChildren(!showChildren);\n };\n\n if (!checkIfButtonShouldRender()) return null;\n\n const buttonType = !text && icon ? 'icon' : type;\n const modifiers = getClassModifiers(buttonType, { icon, style, ...otherProps });\n const currentProps = url ? { href: urlToUse, title: name } : { name };\n const DynamicButton = url && !isLogoutButton ? BlazeLink : BlazeButton;\n updateChildrensParent(children, parent.itemId, parent.itemEntity);\n\n const renderedChildren = renderChildren(children, { onClose: handleClick });\n const { shouldUseClickWrapper, wrapperProps } = getClickWrapperOptions(children, props);\n const Wrapper = shouldUseClickWrapper ? ClickWrapper : Fragment;\n\n const contentClassName = classnames('button__content', {\n 'button__content--show': showChildren\n });\n\n return (\n <Wrapper {...wrapperProps}>\n {childSeoVisibility && <div className={contentClassName}>{renderedChildren}</div>}\n {!childSeoVisibility && showChildren && renderedChildren}\n <DynamicButton className={modifiers} onClick={handleClick} {...currentProps}>\n {icon && <i className={icon} />}\n {showChildren ? afterClickTextToUse : textToUse}\n </DynamicButton>\n </Wrapper>\n );\n};\n\nButton.propTypes = {\n parent: PropTypes.object,\n clickAction: PropTypes.string,\n text: PropTypes.string,\n afterClickText: string,\n name: PropTypes.string,\n type: PropTypes.string,\n url: PropTypes.string,\n size: PropTypes.string,\n icon: PropTypes.string,\n style: PropTypes.string,\n childSeoVisibility: bool,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node])\n};\n\nButton.defaultProps = {\n parent: {},\n clickAction: '',\n text: '',\n afterClickText: '',\n name: '',\n type: '',\n url: null,\n size: '',\n icon: '',\n style: '',\n children: [],\n childSeoVisibility: false\n};\n\nexport default withTitle(Button);\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"ListFactory.js","names":["_react","_interopRequireWildcard","require","_client","_queryString","_propTypes","_interopRequireDefault","_router","_nextjsComponents","_query","_ListBuilder","_constants","_helpers","_helpers2","_helpers3","_hooks","_constants2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","VariantContext","exports","React","createContext","ListFactory","props","legacyEntity","entity","entities","parent","name","filterByProperty","filterBy","omitWrappers","type","defaultSortBy","sortby","defaultSort","sort","allSearchFilters","filterOperator","operator","sortProperties","itemListName","VariantComponent","_useContext","useContext","MainContext","isPreview","router","useRouter","asPath","parsedQuery","replace","_getListSpecificSearc","getListSpecificSearchFilter","_getListSpecificSearc2","_slicedToArray2","searchFilter","hasListSpecificFilters","_parseUrl","parseUrl","query","url","_parseUrl$query","_parseUrl$query2","queryItemListId","itemListId","updatedQuery","getListQuery","isTextSearchFilterApplied","search_term","getSearchFilterType","TEXT_SEARCH","querySort","querySortBy","_getSortProps","getSortProps","sortbyFilters","updatedSortProperties","getItemListId","parentEntity","itemEntity","parentId","itemId","updatedParentEntity","getUnpublishedEntityName","paginationIndex","getPaginationIndex","azFilter","getAzQueryFilter","entitiesToUse","_entitiesToUse","filterEntity","_useGetEntitySchemasA","useGetEntitySchemasAsObj","concat","_toConsumableArray2","_useGetEntitySchemasA2","data","mainSchemas","schemasLoading","loading","schemasError","error","_mainSchemas$updatedP","currentSchema","_mainSchemas$filterEn","filterEntitySchema","_useGetEntitySchemasA3","getRequiredSchemas","_useGetEntitySchemasA4","requiredSchema","requiredSchemaLoading","requiredSchemaError","inheritedFilters","getInheritedFilters","queryProps","getQueryProps","_ref","_ref$actions","actions","getAction","getPublished","_useQuery","useQuery","generateSingleItemQuery","variables","id","skip","ID","_useQuery$data","_useQuery$data2","_useQuery$data2$entit","entityData","itemQueryError","itemQueryLoading","_useQuery2","getItemList","_useQuery2$data","itemListData","itemListError","itemListLoading","hasRequiredItemListDetails","errorsToCheck","_checkForError","checkForError","hasErr","errMsg","itemListIds","getItemListIds","isCard","includes","FULL","isAZ","AZ_LIST_TYPE","genericProps","getGenericProps","_getSearchFilterType","_getSearchFilterType2","textFilter","shouldApplyTextFilter","propsToDisplay","getElasticsearchOperator","AND_OPERATOR","valuesText","buildSearchValuesText","_getQueryFilters","getQueryFilters","valuesAnd","valuesOr","searchValues","searchValuesText","searchValuesCheckboxSelectRange","searchValuesCheckboxOr","listProps","createElement","Provider","value","propTypes","PropTypes","object","isRequired","string","array","bool","func","defaultProps","AND","_default"],"sources":["../../../src/components/List/ListFactory.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport { useQuery } from '@apollo/client';\nimport { parseUrl } from 'query-string';\nimport PropTypes from 'prop-types';\nimport { useRouter } from 'next/router';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { generateSingleItemQuery, getItemList } from '../../application/query';\nimport ListBuilder from './ListBuilder';\nimport { AZ_LIST_TYPE } from './constants';\nimport {\n getAzQueryFilter,\n getSortProps,\n hasRequiredItemListDetails,\n getListSpecificSearchFilter,\n getListQuery\n} from './helpers';\nimport {\n getGenericProps,\n getRequiredSchemas,\n checkForError,\n getUnpublishedEntityName,\n getPaginationIndex,\n getSearchFilterType,\n getElasticsearchOperator,\n buildSearchValuesText,\n getQueryFilters,\n getInheritedFilters,\n getQueryProps\n} from '../../helpers';\nimport { getItemListId, getItemListIds } from '../ItemList/helpers';\nimport { useGetEntitySchemasAsObj } from '../../hooks';\nimport { AND_OPERATOR, TEXT_SEARCH, ID, AND, FULL } from '../../constants';\n\nexport const VariantContext = React.createContext(null);\n\nconst ListFactory = props => {\n const {\n entity: legacyEntity,\n entities,\n parent,\n name,\n filterByProperty,\n filterBy,\n omitWrappers,\n type,\n sortby: defaultSortBy,\n sort: defaultSort,\n allSearchFilters,\n operator: filterOperator,\n sortProperties,\n itemListName,\n VariantComponent // extracted from props\n } = props;\n const { isPreview } = useContext(MainContext);\n const router = useRouter();\n const { asPath } = router;\n const parsedQuery = asPath.replace(/%5D/g, ']').replace(/%5B/g, '[');\n const [searchFilter, hasListSpecificFilters] = getListSpecificSearchFilter(\n allSearchFilters,\n name\n );\n const { query, url, query: { itemListId: queryItemListId } = {} } = parseUrl(parsedQuery);\n const updatedQuery = getListQuery(query, hasListSpecificFilters, name);\n const isTextSearchFilterApplied = !!(\n updatedQuery.search_term &&\n searchFilter &&\n getSearchFilterType(searchFilter, TEXT_SEARCH).length\n );\n\n const { sort: querySort, sortby: querySortBy } = updatedQuery;\n\n const { sortbyFilters, updatedSortProperties } = getSortProps({\n querySort,\n sortProperties,\n defaultSort,\n querySortBy,\n defaultSortBy,\n isTextSearchFilterApplied\n });\n\n const itemListId = getItemListId(itemListName, queryItemListId);\n const { itemEntity: parentEntity, itemId: parentId } = parent;\n const updatedParentEntity = getUnpublishedEntityName(parentEntity);\n const paginationIndex = getPaginationIndex(updatedQuery, name);\n const azFilter = getAzQueryFilter(updatedQuery, name);\n\n const entitiesToUse = entities && entities.length ? entities : [legacyEntity];\n const [filterEntity] = entitiesToUse;\n const {\n data: mainSchemas = {},\n loading: schemasLoading,\n error: schemasError\n } = useGetEntitySchemasAsObj([updatedParentEntity, ...entitiesToUse]);\n\n const {\n [updatedParentEntity]: currentSchema = {},\n [filterEntity]: filterEntitySchema = {}\n } = mainSchemas;\n\n const {\n data: requiredSchema = {},\n loading: requiredSchemaLoading,\n error: requiredSchemaError\n } = useGetEntitySchemasAsObj(\n getRequiredSchemas([...filterByProperty, ...sortbyFilters], filterEntitySchema),\n schemasLoading\n );\n const inheritedFilters = getInheritedFilters(filterBy, filterByProperty);\n const queryProps = getQueryProps(inheritedFilters, currentSchema, filterEntitySchema);\n const { actions = {} } = currentSchema || {};\n const getAction = isPreview ? actions.get : actions.getPublished;\n\n const {\n data: { entityData = {} } = {},\n error: itemQueryError,\n loading: itemQueryLoading\n } = useQuery(generateSingleItemQuery(getAction, queryProps), {\n variables: { id: parentId },\n skip: schemasLoading || (!inheritedFilters.length && queryProps === ID)\n });\n\n const { data: itemListData = {}, error: itemListError, loading: itemListLoading } = useQuery(\n getItemList,\n {\n variables: { id: itemListId },\n skip: !itemListId\n }\n );\n\n if (!hasRequiredItemListDetails({ itemListName, router, itemListId, queryItemListId })) return '';\n\n const errorsToCheck = [schemasError, requiredSchemaError, itemQueryError, itemListError];\n const { hasErr, errMsg } = checkForError(errorsToCheck);\n\n if (requiredSchemaLoading || schemasLoading || itemQueryLoading || itemListLoading) return '';\n if (hasErr) return errMsg;\n\n const itemListIds = getItemListIds(itemListData);\n const isCard = !type.includes(FULL);\n const isAZ = type.includes(AZ_LIST_TYPE);\n const genericProps = getGenericProps(props);\n const [textFilter] = getSearchFilterType(searchFilter, TEXT_SEARCH);\n const shouldApplyTextFilter = textFilter && textFilter.propsToDisplay.length;\n const operator = shouldApplyTextFilter ? getElasticsearchOperator(textFilter) : AND_OPERATOR;\n const valuesText = shouldApplyTextFilter\n ? buildSearchValuesText(textFilter, updatedQuery, name)\n : [];\n const { valuesAnd, valuesOr } = getQueryFilters(searchFilter, updatedQuery, name);\n\n const searchValues = {\n searchValuesText: valuesText,\n searchValuesCheckboxSelectRange: valuesAnd,\n searchValuesCheckboxOr: valuesOr\n };\n const listProps = {\n ...props,\n ...genericProps,\n query: updatedQuery,\n url,\n isCard,\n isAZ,\n router,\n sort: null,\n sortby: null,\n sortProperties: updatedSortProperties,\n azFilter,\n searchValues,\n filterEntitySchema,\n requiredSchema,\n currentSchema,\n omitWrappers,\n operator,\n paginationIndex,\n entityData,\n inheritedFilters,\n filterOperator,\n itemListIds,\n entities: entitiesToUse,\n mainSchemas\n };\n\n return (\n <VariantContext.Provider value={VariantComponent}>\n <ListBuilder {...listProps} />\n </VariantContext.Provider>\n );\n};\n\nListFactory.propTypes = {\n parent: PropTypes.object.isRequired,\n type: PropTypes.string.isRequired,\n entity: PropTypes.string,\n entities: PropTypes.array,\n filterBy: PropTypes.array,\n filterByProperty: PropTypes.array,\n omitWrappers: PropTypes.bool,\n operator: PropTypes.string,\n name: PropTypes.string,\n sortby: PropTypes.array,\n sort: PropTypes.string,\n allSearchFilters: PropTypes.array,\n sortProperties: PropTypes.array,\n itemListName: PropTypes.string,\n VariantComponent: PropTypes.func\n};\n\nListFactory.defaultProps = {\n entity: '',\n entities: [],\n filterBy: [],\n filterByProperty: [],\n omitWrappers: false,\n name: '',\n sortby: [],\n sortProperties: [],\n sort: '',\n operator: AND,\n allSearchFilters: [],\n itemListName: '',\n VariantComponent: null\n};\n\nexport default ListFactory;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ListFactory.js","names":["_react","_interopRequireWildcard","require","_client","_queryString","_propTypes","_interopRequireDefault","_router","_nextjsComponents","_query","_ListBuilder","_constants","_helpers","_helpers2","_helpers3","_hooks","_constants2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","VariantContext","exports","React","createContext","ListFactory","props","legacyEntity","entity","entities","parent","name","filterByProperty","filterBy","omitWrappers","type","defaultSortBy","sortby","defaultSort","sort","allSearchFilters","filterOperator","operator","sortProperties","itemListName","VariantComponent","_useContext","useContext","MainContext","isPreview","router","useRouter","asPath","parsedQuery","replace","_getListSpecificSearc","getListSpecificSearchFilter","_getListSpecificSearc2","_slicedToArray2","searchFilter","hasListSpecificFilters","_parseUrl","parseUrl","query","url","_parseUrl$query","_parseUrl$query2","queryItemListId","itemListId","updatedQuery","getListQuery","isTextSearchFilterApplied","search_term","getSearchFilterType","TEXT_SEARCH","querySort","querySortBy","_getSortProps","getSortProps","sortbyFilters","updatedSortProperties","getItemListId","parentEntity","itemEntity","parentId","itemId","updatedParentEntity","getUnpublishedEntityName","paginationIndex","getPaginationIndex","azFilter","getAzQueryFilter","entitiesToUse","_entitiesToUse","filterEntity","_useGetEntitySchemasA","useGetEntitySchemasAsObj","concat","_toConsumableArray2","_useGetEntitySchemasA2","data","mainSchemas","schemasLoading","loading","schemasError","error","_mainSchemas$updatedP","currentSchema","_mainSchemas$filterEn","filterEntitySchema","_useGetEntitySchemasA3","getRequiredSchemas","_useGetEntitySchemasA4","requiredSchema","requiredSchemaLoading","requiredSchemaError","inheritedFilters","getInheritedFilters","queryProps","getQueryProps","_ref","_ref$actions","actions","getAction","getPublished","_useQuery","useQuery","generateSingleItemQuery","variables","id","skip","ID","_useQuery$data","_useQuery$data2","_useQuery$data2$entit","entityData","itemQueryError","itemQueryLoading","_useQuery2","getItemList","_useQuery2$data","itemListData","itemListError","itemListLoading","hasRequiredItemListDetails","errorsToCheck","_checkForError","checkForError","hasErr","errMsg","itemListIds","getItemListIds","isCard","includes","FULL","isAZ","AZ_LIST_TYPE","genericProps","getGenericProps","_getSearchFilterType","_getSearchFilterType2","textFilter","shouldApplyTextFilter","propsToDisplay","getElasticsearchOperator","AND_OPERATOR","valuesText","buildSearchValuesText","_getQueryFilters","getQueryFilters","valuesAnd","valuesOr","searchValues","searchValuesText","searchValuesCheckboxSelectRange","searchValuesCheckboxOr","listProps","createElement","Provider","value","propTypes","PropTypes","object","isRequired","string","array","bool","func","defaultProps","AND","_default"],"sources":["../../../src/components/List/ListFactory.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport { useQuery } from '@apollo/client';\nimport { parseUrl } from 'query-string';\nimport PropTypes from 'prop-types';\nimport { useRouter } from 'next/router';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { generateSingleItemQuery, getItemList } from '../../application/query';\nimport ListBuilder from './ListBuilder';\nimport { AZ_LIST_TYPE } from './constants';\nimport {\n getAzQueryFilter,\n getSortProps,\n hasRequiredItemListDetails,\n getListSpecificSearchFilter,\n getListQuery\n} from './helpers';\nimport {\n getGenericProps,\n getRequiredSchemas,\n checkForError,\n getUnpublishedEntityName,\n getPaginationIndex,\n getSearchFilterType,\n getElasticsearchOperator,\n buildSearchValuesText,\n getQueryFilters,\n getInheritedFilters,\n getQueryProps\n} from '../../helpers';\nimport { getItemListId, getItemListIds } from '../ItemList/helpers';\nimport { useGetEntitySchemasAsObj } from '../../hooks';\nimport { AND_OPERATOR, TEXT_SEARCH, ID, AND, FULL } from '../../constants';\n\nexport const VariantContext = React.createContext(null);\n\nconst ListFactory = props => {\n const {\n entity: legacyEntity,\n entities,\n parent,\n name,\n filterByProperty,\n filterBy,\n omitWrappers,\n type,\n sortby: defaultSortBy,\n sort: defaultSort,\n allSearchFilters,\n operator: filterOperator,\n sortProperties,\n itemListName,\n VariantComponent\n } = props;\n const { isPreview } = useContext(MainContext);\n const router = useRouter();\n const { asPath } = router;\n const parsedQuery = asPath.replace(/%5D/g, ']').replace(/%5B/g, '[');\n const [searchFilter, hasListSpecificFilters] = getListSpecificSearchFilter(\n allSearchFilters,\n name\n );\n const { query, url, query: { itemListId: queryItemListId } = {} } = parseUrl(parsedQuery);\n const updatedQuery = getListQuery(query, hasListSpecificFilters, name);\n const isTextSearchFilterApplied = !!(\n updatedQuery.search_term &&\n searchFilter &&\n getSearchFilterType(searchFilter, TEXT_SEARCH).length\n );\n\n const { sort: querySort, sortby: querySortBy } = updatedQuery;\n\n const { sortbyFilters, updatedSortProperties } = getSortProps({\n querySort,\n sortProperties,\n defaultSort,\n querySortBy,\n defaultSortBy,\n isTextSearchFilterApplied\n });\n\n const itemListId = getItemListId(itemListName, queryItemListId);\n const { itemEntity: parentEntity, itemId: parentId } = parent;\n const updatedParentEntity = getUnpublishedEntityName(parentEntity);\n const paginationIndex = getPaginationIndex(updatedQuery, name);\n const azFilter = getAzQueryFilter(updatedQuery, name);\n\n const entitiesToUse = entities && entities.length ? entities : [legacyEntity];\n const [filterEntity] = entitiesToUse;\n const {\n data: mainSchemas = {},\n loading: schemasLoading,\n error: schemasError\n } = useGetEntitySchemasAsObj([updatedParentEntity, ...entitiesToUse]);\n\n const {\n [updatedParentEntity]: currentSchema = {},\n [filterEntity]: filterEntitySchema = {}\n } = mainSchemas;\n\n const {\n data: requiredSchema = {},\n loading: requiredSchemaLoading,\n error: requiredSchemaError\n } = useGetEntitySchemasAsObj(\n getRequiredSchemas([...filterByProperty, ...sortbyFilters], filterEntitySchema),\n schemasLoading\n );\n const inheritedFilters = getInheritedFilters(filterBy, filterByProperty);\n const queryProps = getQueryProps(inheritedFilters, currentSchema, filterEntitySchema);\n const { actions = {} } = currentSchema || {};\n const getAction = isPreview ? actions.get : actions.getPublished;\n\n const {\n data: { entityData = {} } = {},\n error: itemQueryError,\n loading: itemQueryLoading\n } = useQuery(generateSingleItemQuery(getAction, queryProps), {\n variables: { id: parentId },\n skip: schemasLoading || (!inheritedFilters.length && queryProps === ID)\n });\n\n const { data: itemListData = {}, error: itemListError, loading: itemListLoading } = useQuery(\n getItemList,\n {\n variables: { id: itemListId },\n skip: !itemListId\n }\n );\n\n if (!hasRequiredItemListDetails({ itemListName, router, itemListId, queryItemListId })) return '';\n\n const errorsToCheck = [schemasError, requiredSchemaError, itemQueryError, itemListError];\n const { hasErr, errMsg } = checkForError(errorsToCheck);\n\n if (requiredSchemaLoading || schemasLoading || itemQueryLoading || itemListLoading) return '';\n if (hasErr) return errMsg;\n\n const itemListIds = getItemListIds(itemListData);\n const isCard = !type.includes(FULL);\n const isAZ = type.includes(AZ_LIST_TYPE);\n const genericProps = getGenericProps(props);\n const [textFilter] = getSearchFilterType(searchFilter, TEXT_SEARCH);\n const shouldApplyTextFilter = textFilter && textFilter.propsToDisplay.length;\n const operator = shouldApplyTextFilter ? getElasticsearchOperator(textFilter) : AND_OPERATOR;\n const valuesText = shouldApplyTextFilter\n ? buildSearchValuesText(textFilter, updatedQuery, name)\n : [];\n const { valuesAnd, valuesOr } = getQueryFilters(searchFilter, updatedQuery, name);\n\n const searchValues = {\n searchValuesText: valuesText,\n searchValuesCheckboxSelectRange: valuesAnd,\n searchValuesCheckboxOr: valuesOr\n };\n const listProps = {\n ...props,\n ...genericProps,\n query: updatedQuery,\n url,\n isCard,\n isAZ,\n router,\n sort: null,\n sortby: null,\n sortProperties: updatedSortProperties,\n azFilter,\n searchValues,\n filterEntitySchema,\n requiredSchema,\n currentSchema,\n omitWrappers,\n operator,\n paginationIndex,\n entityData,\n inheritedFilters,\n filterOperator,\n itemListIds,\n entities: entitiesToUse,\n mainSchemas\n };\n\n return (\n <VariantContext.Provider value={VariantComponent}>\n <ListBuilder {...listProps} />\n </VariantContext.Provider>\n );\n};\n\nListFactory.propTypes = {\n parent: PropTypes.object.isRequired,\n type: PropTypes.string.isRequired,\n entity: PropTypes.string,\n entities: PropTypes.array,\n filterBy: PropTypes.array,\n filterByProperty: PropTypes.array,\n omitWrappers: PropTypes.bool,\n operator: PropTypes.string,\n name: PropTypes.string,\n sortby: PropTypes.array,\n sort: PropTypes.string,\n allSearchFilters: PropTypes.array,\n sortProperties: PropTypes.array,\n itemListName: PropTypes.string,\n VariantComponent: PropTypes.func\n};\n\nListFactory.defaultProps = {\n entity: '',\n entities: [],\n filterBy: [],\n filterByProperty: [],\n omitWrappers: false,\n name: '',\n sortby: [],\n sortProperties: [],\n sort: '',\n operator: AND,\n allSearchFilters: [],\n itemListName: '',\n VariantComponent: null\n};\n\nexport default ListFactory;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,YAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAC,sBAAA,CAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAL,OAAA;AACA,IAAAM,iBAAA,GAAAN,OAAA;AACA,IAAAO,MAAA,GAAAP,OAAA;AACA,IAAAQ,YAAA,GAAAJ,sBAAA,CAAAJ,OAAA;AACA,IAAAS,UAAA,GAAAT,OAAA;AACA,IAAAU,QAAA,GAAAV,OAAA;AAOA,IAAAW,SAAA,GAAAX,OAAA;AAaA,IAAAY,SAAA,GAAAZ,OAAA;AACA,IAAAa,MAAA,GAAAb,OAAA;AACA,IAAAc,WAAA,GAAAd,OAAA;AAA2E,SAAAe,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAjB,wBAAAiB,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,gBAAAK,OAAA,CAAAL,CAAA,0BAAAA,CAAA,sBAAAA,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,cAAAR,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAY,QAAApB,CAAA,EAAAE,CAAA,QAAAC,CAAA,GAAAQ,MAAA,CAAAU,IAAA,CAAArB,CAAA,OAAAW,MAAA,CAAAW,qBAAA,QAAAC,CAAA,GAAAZ,MAAA,CAAAW,qBAAA,CAAAtB,CAAA,GAAAE,CAAA,KAAAqB,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAtB,CAAA,WAAAS,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAE,CAAA,EAAAuB,UAAA,OAAAtB,CAAA,CAAAuB,IAAA,CAAAC,KAAA,CAAAxB,CAAA,EAAAoB,CAAA,YAAApB,CAAA;AAAA,SAAAyB,cAAA5B,CAAA,aAAAE,CAAA,MAAAA,CAAA,GAAA2B,SAAA,CAAAC,MAAA,EAAA5B,CAAA,UAAAC,CAAA,WAAA0B,SAAA,CAAA3B,CAAA,IAAA2B,SAAA,CAAA3B,CAAA,QAAAA,CAAA,OAAAkB,OAAA,CAAAT,MAAA,CAAAR,CAAA,OAAA4B,OAAA,WAAA7B,CAAA,QAAA8B,gBAAA,aAAAhC,CAAA,EAAAE,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAS,MAAA,CAAAsB,yBAAA,GAAAtB,MAAA,CAAAuB,gBAAA,CAAAlC,CAAA,EAAAW,MAAA,CAAAsB,yBAAA,CAAA9B,CAAA,KAAAiB,OAAA,CAAAT,MAAA,CAAAR,CAAA,GAAA4B,OAAA,WAAA7B,CAAA,IAAAS,MAAA,CAAAC,cAAA,CAAAZ,CAAA,EAAAE,CAAA,EAAAS,MAAA,CAAAE,wBAAA,CAAAV,CAAA,EAAAD,CAAA,iBAAAF,CAAA;AAEpE,IAAMmC,cAAc,GAAAC,OAAA,CAAAD,cAAA,gBAAGE,iBAAK,CAACC,aAAa,CAAC,IAAI,CAAC;AAEvD,IAAMC,WAAW,GAAG,SAAdA,WAAWA,CAAGC,KAAK,EAAI;EAC3B,IACUC,YAAY,GAelBD,KAAK,CAfPE,MAAM;IACNC,QAAQ,GAcNH,KAAK,CAdPG,QAAQ;IACRC,MAAM,GAaJJ,KAAK,CAbPI,MAAM;IACNC,IAAI,GAYFL,KAAK,CAZPK,IAAI;IACJC,gBAAgB,GAWdN,KAAK,CAXPM,gBAAgB;IAChBC,QAAQ,GAUNP,KAAK,CAVPO,QAAQ;IACRC,YAAY,GASVR,KAAK,CATPQ,YAAY;IACZC,IAAI,GAQFT,KAAK,CARPS,IAAI;IACIC,aAAa,GAOnBV,KAAK,CAPPW,MAAM;IACAC,WAAW,GAMfZ,KAAK,CANPa,IAAI;IACJC,gBAAgB,GAKdd,KAAK,CALPc,gBAAgB;IACNC,cAAc,GAItBf,KAAK,CAJPgB,QAAQ;IACRC,cAAc,GAGZjB,KAAK,CAHPiB,cAAc;IACdC,YAAY,GAEVlB,KAAK,CAFPkB,YAAY;IACZC,gBAAgB,GACdnB,KAAK,CADPmB,gBAAgB;EAElB,IAAAC,WAAA,GAAsB,IAAAC,iBAAU,EAACC,6BAAW,CAAC;IAArCC,SAAS,GAAAH,WAAA,CAATG,SAAS;EACjB,IAAMC,MAAM,GAAG,IAAAC,iBAAS,EAAC,CAAC;EAC1B,IAAQC,MAAM,GAAKF,MAAM,CAAjBE,MAAM;EACd,IAAMC,WAAW,GAAGD,MAAM,CAACE,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAACA,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;EACpE,IAAAC,qBAAA,GAA+C,IAAAC,oCAA2B,EACxEhB,gBAAgB,EAChBT,IACF,CAAC;IAAA0B,sBAAA,OAAAC,eAAA,aAAAH,qBAAA;IAHMI,YAAY,GAAAF,sBAAA;IAAEG,sBAAsB,GAAAH,sBAAA;EAI3C,IAAAI,SAAA,GAAoE,IAAAC,qBAAQ,EAACT,WAAW,CAAC;IAAjFU,KAAK,GAAAF,SAAA,CAALE,KAAK;IAAEC,GAAG,GAAAH,SAAA,CAAHG,GAAG;IAAAC,eAAA,GAAAJ,SAAA,CAAEE,KAAK;IAAAG,gBAAA,GAAAD,eAAA,cAAoC,CAAC,CAAC,GAAAA,eAAA;IAAtBE,eAAe,GAAAD,gBAAA,CAA3BE,UAAU;EACvC,IAAMC,YAAY,GAAG,IAAAC,qBAAY,EAACP,KAAK,EAAEH,sBAAsB,EAAE7B,IAAI,CAAC;EACtE,IAAMwC,yBAAyB,GAAG,CAAC,EACjCF,YAAY,CAACG,WAAW,IACxBb,YAAY,IACZ,IAAAc,6BAAmB,EAACd,YAAY,EAAEe,uBAAW,CAAC,CAAC1D,MAAM,CACtD;EAED,IAAc2D,SAAS,GAA0BN,YAAY,CAArD9B,IAAI;IAAqBqC,WAAW,GAAKP,YAAY,CAApChC,MAAM;EAE/B,IAAAwC,aAAA,GAAiD,IAAAC,qBAAY,EAAC;MAC5DH,SAAS,EAATA,SAAS;MACThC,cAAc,EAAdA,cAAc;MACdL,WAAW,EAAXA,WAAW;MACXsC,WAAW,EAAXA,WAAW;MACXxC,aAAa,EAAbA,aAAa;MACbmC,yBAAyB,EAAzBA;IACF,CAAC,CAAC;IAPMQ,aAAa,GAAAF,aAAA,CAAbE,aAAa;IAAEC,qBAAqB,GAAAH,aAAA,CAArBG,qBAAqB;EAS5C,IAAMZ,UAAU,GAAG,IAAAa,uBAAa,EAACrC,YAAY,EAAEuB,eAAe,CAAC;EAC/D,IAAoBe,YAAY,GAAuBpD,MAAM,CAArDqD,UAAU;IAAwBC,QAAQ,GAAKtD,MAAM,CAA3BuD,MAAM;EACxC,IAAMC,mBAAmB,GAAG,IAAAC,kCAAwB,EAACL,YAAY,CAAC;EAClE,IAAMM,eAAe,GAAG,IAAAC,4BAAkB,EAACpB,YAAY,EAAEtC,IAAI,CAAC;EAC9D,IAAM2D,QAAQ,GAAG,IAAAC,yBAAgB,EAACtB,YAAY,EAAEtC,IAAI,CAAC;EAErD,IAAM6D,aAAa,GAAG/D,QAAQ,IAAIA,QAAQ,CAACb,MAAM,GAAGa,QAAQ,GAAG,CAACF,YAAY,CAAC;EAC7E,IAAAkE,cAAA,OAAAnC,eAAA,aAAuBkC,aAAa;IAA7BE,YAAY,GAAAD,cAAA;EACnB,IAAAE,qBAAA,GAII,IAAAC,+BAAwB,GAAEV,mBAAmB,EAAAW,MAAA,KAAAC,mBAAA,aAAKN,aAAa,EAAC,CAAC;IAAAO,sBAAA,GAAAJ,qBAAA,CAHnEK,IAAI;IAAEC,WAAW,GAAAF,sBAAA,cAAG,CAAC,CAAC,GAAAA,sBAAA;IACbG,cAAc,GAAAP,qBAAA,CAAvBQ,OAAO;IACAC,YAAY,GAAAT,qBAAA,CAAnBU,KAAK;EAGP,IAAAC,qBAAA,GAGIL,WAAW,CAFZf,mBAAmB;IAAGqB,aAAa,GAAAD,qBAAA,cAAG,CAAC,CAAC,GAAAA,qBAAA;IAAAE,qBAAA,GAEvCP,WAAW,CADZP,YAAY;IAAGe,kBAAkB,GAAAD,qBAAA,cAAG,CAAC,CAAC,GAAAA,qBAAA;EAGzC,IAAAE,sBAAA,GAII,IAAAd,+BAAwB,EAC1B,IAAAe,4BAAkB,KAAAd,MAAA,KAAAC,mBAAA,aAAKlE,gBAAgB,OAAAkE,mBAAA,aAAKnB,aAAa,IAAG8B,kBAAkB,CAAC,EAC/EP,cACF,CAAC;IAAAU,sBAAA,GAAAF,sBAAA,CANCV,IAAI;IAAEa,cAAc,GAAAD,sBAAA,cAAG,CAAC,CAAC,GAAAA,sBAAA;IAChBE,qBAAqB,GAAAJ,sBAAA,CAA9BP,OAAO;IACAY,mBAAmB,GAAAL,sBAAA,CAA1BL,KAAK;EAKP,IAAMW,gBAAgB,GAAG,IAAAC,6BAAmB,EAACpF,QAAQ,EAAED,gBAAgB,CAAC;EACxE,IAAMsF,UAAU,GAAG,IAAAC,uBAAa,EAACH,gBAAgB,EAAET,aAAa,EAAEE,kBAAkB,CAAC;EACrF,IAAAW,IAAA,GAAyBb,aAAa,IAAI,CAAC,CAAC;IAAAc,YAAA,GAAAD,IAAA,CAApCE,OAAO;IAAPA,OAAO,GAAAD,YAAA,cAAG,CAAC,CAAC,GAAAA,YAAA;EACpB,IAAME,SAAS,GAAG1E,SAAS,GAAGyE,OAAO,CAACjI,GAAG,GAAGiI,OAAO,CAACE,YAAY;EAEhE,IAAAC,SAAA,GAII,IAAAC,gBAAQ,EAAC,IAAAC,8BAAuB,EAACJ,SAAS,EAAEL,UAAU,CAAC,EAAE;MAC3DU,SAAS,EAAE;QAAEC,EAAE,EAAE7C;MAAS,CAAC;MAC3B8C,IAAI,EAAE5B,cAAc,IAAK,CAACc,gBAAgB,CAACpG,MAAM,IAAIsG,UAAU,KAAKa;IACtE,CAAC,CAAC;IAAAC,cAAA,GAAAP,SAAA,CANAzB,IAAI;IAAAiC,eAAA,GAAAD,cAAA,cAAwB,CAAC,CAAC,GAAAA,cAAA;IAAAE,qBAAA,GAAAD,eAAA,CAAtBE,UAAU;IAAVA,UAAU,GAAAD,qBAAA,cAAG,CAAC,CAAC,GAAAA,qBAAA;IAChBE,cAAc,GAAAX,SAAA,CAArBpB,KAAK;IACIgC,gBAAgB,GAAAZ,SAAA,CAAzBtB,OAAO;EAMT,IAAAmC,UAAA,GAAoF,IAAAZ,gBAAQ,EAC1Fa,kBAAW,EACX;MACEX,SAAS,EAAE;QAAEC,EAAE,EAAE7D;MAAW,CAAC;MAC7B8D,IAAI,EAAE,CAAC9D;IACT,CACF,CAAC;IAAAwE,eAAA,GAAAF,UAAA,CANOtC,IAAI;IAAEyC,YAAY,GAAAD,eAAA,cAAG,CAAC,CAAC,GAAAA,eAAA;IAASE,aAAa,GAAAJ,UAAA,CAApBjC,KAAK;IAA0BsC,eAAe,GAAAL,UAAA,CAAxBnC,OAAO;EAQ9D,IAAI,CAAC,IAAAyC,mCAA0B,EAAC;IAAEpG,YAAY,EAAZA,YAAY;IAAEM,MAAM,EAANA,MAAM;IAAEkB,UAAU,EAAVA,UAAU;IAAED,eAAe,EAAfA;EAAgB,CAAC,CAAC,EAAE,OAAO,EAAE;EAEjG,IAAM8E,aAAa,GAAG,CAACzC,YAAY,EAAEW,mBAAmB,EAAEqB,cAAc,EAAEM,aAAa,CAAC;EACxF,IAAAI,cAAA,GAA2B,IAAAC,uBAAa,EAACF,aAAa,CAAC;IAA/CG,MAAM,GAAAF,cAAA,CAANE,MAAM;IAAEC,MAAM,GAAAH,cAAA,CAANG,MAAM;EAEtB,IAAInC,qBAAqB,IAAIZ,cAAc,IAAImC,gBAAgB,IAAIM,eAAe,EAAE,OAAO,EAAE;EAC7F,IAAIK,MAAM,EAAE,OAAOC,MAAM;EAEzB,IAAMC,WAAW,GAAG,IAAAC,wBAAc,EAACV,YAAY,CAAC;EAChD,IAAMW,MAAM,GAAG,CAACrH,IAAI,CAACsH,QAAQ,CAACC,gBAAI,CAAC;EACnC,IAAMC,IAAI,GAAGxH,IAAI,CAACsH,QAAQ,CAACG,uBAAY,CAAC;EACxC,IAAMC,YAAY,GAAG,IAAAC,yBAAe,EAACpI,KAAK,CAAC;EAC3C,IAAAqI,oBAAA,GAAqB,IAAAtF,6BAAmB,EAACd,YAAY,EAAEe,uBAAW,CAAC;IAAAsF,qBAAA,OAAAtG,eAAA,aAAAqG,oBAAA;IAA5DE,UAAU,GAAAD,qBAAA;EACjB,IAAME,qBAAqB,GAAGD,UAAU,IAAIA,UAAU,CAACE,cAAc,CAACnJ,MAAM;EAC5E,IAAM0B,QAAQ,GAAGwH,qBAAqB,GAAG,IAAAE,kCAAwB,EAACH,UAAU,CAAC,GAAGI,wBAAY;EAC5F,IAAMC,UAAU,GAAGJ,qBAAqB,GACpC,IAAAK,+BAAqB,EAACN,UAAU,EAAE5F,YAAY,EAAEtC,IAAI,CAAC,GACrD,EAAE;EACN,IAAAyI,gBAAA,GAAgC,IAAAC,yBAAe,EAAC9G,YAAY,EAAEU,YAAY,EAAEtC,IAAI,CAAC;IAAzE2I,SAAS,GAAAF,gBAAA,CAATE,SAAS;IAAEC,QAAQ,GAAAH,gBAAA,CAARG,QAAQ;EAE3B,IAAMC,YAAY,GAAG;IACnBC,gBAAgB,EAAEP,UAAU;IAC5BQ,+BAA+B,EAAEJ,SAAS;IAC1CK,sBAAsB,EAAEJ;EAC1B,CAAC;EACD,IAAMK,SAAS,GAAAlK,aAAA,CAAAA,aAAA,CAAAA,aAAA,KACVY,KAAK,GACLmI,YAAY;IACf9F,KAAK,EAAEM,YAAY;IACnBL,GAAG,EAAHA,GAAG;IACHwF,MAAM,EAANA,MAAM;IACNG,IAAI,EAAJA,IAAI;IACJzG,MAAM,EAANA,MAAM;IACNX,IAAI,EAAE,IAAI;IACVF,MAAM,EAAE,IAAI;IACZM,cAAc,EAAEqC,qBAAqB;IACrCU,QAAQ,EAARA,QAAQ;IACRkF,YAAY,EAAZA,YAAY;IACZ/D,kBAAkB,EAAlBA,kBAAkB;IAClBI,cAAc,EAAdA,cAAc;IACdN,aAAa,EAAbA,aAAa;IACbzE,YAAY,EAAZA,YAAY;IACZQ,QAAQ,EAARA,QAAQ;IACR8C,eAAe,EAAfA,eAAe;IACf+C,UAAU,EAAVA,UAAU;IACVnB,gBAAgB,EAAhBA,gBAAgB;IAChB3E,cAAc,EAAdA,cAAc;IACd6G,WAAW,EAAXA,WAAW;IACXzH,QAAQ,EAAE+D,aAAa;IACvBS,WAAW,EAAXA;EAAW,EACZ;EAED,oBACErI,MAAA,YAAAiN,aAAA,CAAC5J,cAAc,CAAC6J,QAAQ;IAACC,KAAK,EAAEtI;EAAiB,gBAC/C7E,MAAA,YAAAiN,aAAA,CAACvM,YAAA,WAAW,EAAKsM,SAAY,CACN,CAAC;AAE9B,CAAC;AAEDvJ,WAAW,CAAC2J,SAAS,GAAG;EACtBtJ,MAAM,EAAEuJ,qBAAS,CAACC,MAAM,CAACC,UAAU;EACnCpJ,IAAI,EAAEkJ,qBAAS,CAACG,MAAM,CAACD,UAAU;EACjC3J,MAAM,EAAEyJ,qBAAS,CAACG,MAAM;EACxB3J,QAAQ,EAAEwJ,qBAAS,CAACI,KAAK;EACzBxJ,QAAQ,EAAEoJ,qBAAS,CAACI,KAAK;EACzBzJ,gBAAgB,EAAEqJ,qBAAS,CAACI,KAAK;EACjCvJ,YAAY,EAAEmJ,qBAAS,CAACK,IAAI;EAC5BhJ,QAAQ,EAAE2I,qBAAS,CAACG,MAAM;EAC1BzJ,IAAI,EAAEsJ,qBAAS,CAACG,MAAM;EACtBnJ,MAAM,EAAEgJ,qBAAS,CAACI,KAAK;EACvBlJ,IAAI,EAAE8I,qBAAS,CAACG,MAAM;EACtBhJ,gBAAgB,EAAE6I,qBAAS,CAACI,KAAK;EACjC9I,cAAc,EAAE0I,qBAAS,CAACI,KAAK;EAC/B7I,YAAY,EAAEyI,qBAAS,CAACG,MAAM;EAC9B3I,gBAAgB,EAAEwI,qBAAS,CAACM;AAC9B,CAAC;AAEDlK,WAAW,CAACmK,YAAY,GAAG;EACzBhK,MAAM,EAAE,EAAE;EACVC,QAAQ,EAAE,EAAE;EACZI,QAAQ,EAAE,EAAE;EACZD,gBAAgB,EAAE,EAAE;EACpBE,YAAY,EAAE,KAAK;EACnBH,IAAI,EAAE,EAAE;EACRM,MAAM,EAAE,EAAE;EACVM,cAAc,EAAE,EAAE;EAClBJ,IAAI,EAAE,EAAE;EACRG,QAAQ,EAAEmJ,eAAG;EACbrJ,gBAAgB,EAAE,EAAE;EACpBI,YAAY,EAAE,EAAE;EAChBC,gBAAgB,EAAE;AACpB,CAAC;AAAC,IAAAiJ,QAAA,GAAAxK,OAAA,cAEaG,WAAW","ignoreList":[]}
@@ -50,8 +50,11 @@ var MenuItemRender = function MenuItemRender(_ref) {
50
50
  var router = (0, _router.useRouter)();
51
51
  var isHoverEvent = eventType === _constants.HOVER;
52
52
  var childrenDisplayClass = displayChildren ? '' : _constants.HIDDEN;
53
+ var hasValidChildren = (0, _helpers.hasChildren)(children);
53
54
  (0, _react.useEffect)(function () {
54
- if (!showMobileMenu) setDisplayChildren(false);
55
+ if (!showMobileMenu) {
56
+ setDisplayChildren(false);
57
+ }
55
58
  }, [showMobileMenu]);
56
59
  (0, _react.useEffect)(function () {
57
60
  if (isHoverEvent) {
@@ -70,24 +73,30 @@ var MenuItemRender = function MenuItemRender(_ref) {
70
73
  }
71
74
  }
72
75
  };
73
- var hasValidChildren = (0, _helpers.hasChildren)(children);
76
+ var handleMobileClick = function handleMobileClick() {
77
+ if (!urlToUse && hasValidChildren) {
78
+ setDisplayChildren(!displayChildren);
79
+ }
80
+ };
74
81
  return /*#__PURE__*/_react["default"].createElement("li", {
75
82
  className: modifier,
76
83
  onMouseEnter: handleItemEvent,
77
84
  onMouseLeave: handleItemEvent
78
85
  }, /*#__PURE__*/_react["default"].createElement("div", {
79
- className: "menu--item--link"
86
+ className: "menu--item--link",
87
+ onClick: handleMobileClick,
88
+ role: !urlToUse && hasValidChildren ? 'button' : undefined,
89
+ tabIndex: !urlToUse && hasValidChildren ? 0 : undefined
80
90
  }, urlToUse ? /*#__PURE__*/_react["default"].createElement(_BlazeLink["default"], {
81
91
  href: urlToUse
82
- }, textToUse) : /*#__PURE__*/_react["default"].createElement("span", {
83
- role: "button",
84
- onClick: handleItemEvent
85
- }, textToUse), hasValidChildren && /*#__PURE__*/_react["default"].createElement("i", {
92
+ }, textToUse) : /*#__PURE__*/_react["default"].createElement("span", null, textToUse), hasValidChildren && /*#__PURE__*/_react["default"].createElement("i", {
86
93
  role: "button",
87
94
  className: "menu--item--link--icon",
88
- onClick: function onClick() {
89
- return setDisplayChildren(!displayChildren);
90
- }
95
+ onClick: function onClick(e) {
96
+ e.stopPropagation();
97
+ setDisplayChildren(!displayChildren);
98
+ },
99
+ tabIndex: 0
91
100
  }, displayChildren ? /*#__PURE__*/_react["default"].createElement(_fa.FaChevronUp, null) : /*#__PURE__*/_react["default"].createElement(_fa.FaChevronDown, null))), hasValidChildren && /*#__PURE__*/_react["default"].createElement("div", {
92
101
  className: "menu--item-children ".concat(childrenDisplayClass)
93
102
  }, children));
@@ -1 +1 @@
1
- {"version":3,"file":"MenuItemRender.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_fa","_router","_utilsHandlebars","_constants","_helpers","_BlazeLink","_MenuContext","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","MenuItemRender","_ref","children","eventType","text","modifier","url","parent","_useState","useState","_useState2","_slicedToArray2","displayChildren","setDisplayChildren","_useContext","useContext","MenuContext","showMobileMenu","_useStringTemplate","useStringTemplate","loadingText","loading","_useStringTemplate$da","data","textToUse","_useStringTemplate2","injectHelperIntoTemplate","loadingUrl","_useStringTemplate2$d","urlToUse","router","useRouter","isHoverEvent","HOVER","childrenDisplayClass","HIDDEN","useEffect","asPath","handleItemEvent","_ref2","type","MOUSE_ENTER","MOUSE_LEAVE","hasValidChildren","hasChildren","createElement","className","onMouseEnter","onMouseLeave","href","role","onClick","FaChevronUp","FaChevronDown","concat","propTypes","PropTypes","string","isRequired","object","oneOfType","arrayOf","node","defaultProps","_default","exports"],"sources":["../../../src/components/MenuItem/MenuItemRender.js"],"sourcesContent":["import React, { useState, useContext, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { FaChevronDown, FaChevronUp } from 'react-icons/fa';\nimport { useRouter } from 'next/router';\nimport { useStringTemplate } from '@blaze-cms/utils-handlebars';\nimport { HOVER, MOUSE_ENTER, MOUSE_LEAVE, HIDDEN } from '../../constants';\nimport { hasChildren } from '../../helpers';\nimport BlazeLink from '../BlazeLink';\nimport MenuContext from '../Menu/MenuContext';\nimport { injectHelperIntoTemplate } from './helpers';\n\nconst MenuItemRender = ({ children, eventType, text, modifier, url, parent }) => {\n const [displayChildren, setDisplayChildren] = useState(false);\n const { showMobileMenu } = useContext(MenuContext);\n const {\n loading: loadingText,\n data: [textToUse]\n } = useStringTemplate(parent, [text]);\n const {\n loading: loadingUrl,\n data: [urlToUse]\n } = useStringTemplate(parent, [injectHelperIntoTemplate(url, 'url_encode')]);\n\n const router = useRouter();\n const isHoverEvent = eventType === HOVER;\n const childrenDisplayClass = displayChildren ? '' : HIDDEN;\n\n useEffect(\n () => {\n if (!showMobileMenu) setDisplayChildren(false);\n },\n [showMobileMenu]\n );\n\n useEffect(\n () => {\n if (isHoverEvent) {\n setDisplayChildren(false);\n }\n },\n [router.asPath, isHoverEvent]\n );\n\n if (loadingUrl || loadingText) return '';\n\n const handleItemEvent = ({ type }) => {\n if (isHoverEvent) {\n if (type === MOUSE_ENTER) {\n setDisplayChildren(true);\n }\n if (type === MOUSE_LEAVE) {\n setDisplayChildren(false);\n }\n }\n };\n\n const hasValidChildren = hasChildren(children);\n\n return (\n <li className={modifier} onMouseEnter={handleItemEvent} onMouseLeave={handleItemEvent}>\n <div className=\"menu--item--link\">\n {urlToUse ? (\n <BlazeLink href={urlToUse}>{textToUse}</BlazeLink>\n ) : (\n <span role=\"button\" onClick={handleItemEvent}>\n {textToUse}\n </span>\n )}\n {hasValidChildren && (\n <i\n role=\"button\"\n className=\"menu--item--link--icon\"\n onClick={() => setDisplayChildren(!displayChildren)}>\n {displayChildren ? <FaChevronUp /> : <FaChevronDown />}\n </i>\n )}\n </div>\n\n {hasValidChildren && (\n <div className={`menu--item-children ${childrenDisplayClass}`}>{children}</div>\n )}\n </li>\n );\n};\n\nMenuItemRender.propTypes = {\n modifier: PropTypes.string,\n text: PropTypes.string,\n url: PropTypes.string,\n eventType: PropTypes.string.isRequired,\n parent: PropTypes.object,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node])\n};\n\nMenuItemRender.defaultProps = {\n url: '',\n modifier: '',\n text: '',\n children: null,\n parent: {}\n};\n\nexport default MenuItemRender;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"MenuItemRender.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_fa","_router","_utilsHandlebars","_constants","_helpers","_BlazeLink","_MenuContext","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","MenuItemRender","_ref","children","eventType","text","modifier","url","parent","_useState","useState","_useState2","_slicedToArray2","displayChildren","setDisplayChildren","_useContext","useContext","MenuContext","showMobileMenu","_useStringTemplate","useStringTemplate","loadingText","loading","_useStringTemplate$da","data","textToUse","_useStringTemplate2","injectHelperIntoTemplate","loadingUrl","_useStringTemplate2$d","urlToUse","router","useRouter","isHoverEvent","HOVER","childrenDisplayClass","HIDDEN","hasValidChildren","hasChildren","useEffect","asPath","handleItemEvent","_ref2","type","MOUSE_ENTER","MOUSE_LEAVE","handleMobileClick","createElement","className","onMouseEnter","onMouseLeave","onClick","role","undefined","tabIndex","href","stopPropagation","FaChevronUp","FaChevronDown","concat","propTypes","PropTypes","string","isRequired","object","oneOfType","arrayOf","node","defaultProps","_default","exports"],"sources":["../../../src/components/MenuItem/MenuItemRender.js"],"sourcesContent":["import React, { useState, useContext, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { FaChevronDown, FaChevronUp } from 'react-icons/fa';\nimport { useRouter } from 'next/router';\nimport { useStringTemplate } from '@blaze-cms/utils-handlebars';\nimport { HOVER, MOUSE_ENTER, MOUSE_LEAVE, HIDDEN } from '../../constants';\nimport { hasChildren } from '../../helpers';\nimport BlazeLink from '../BlazeLink';\nimport MenuContext from '../Menu/MenuContext';\nimport { injectHelperIntoTemplate } from './helpers';\n\nconst MenuItemRender = ({ children, eventType, text, modifier, url, parent }) => {\n const [displayChildren, setDisplayChildren] = useState(false);\n const { showMobileMenu } = useContext(MenuContext);\n const {\n loading: loadingText,\n data: [textToUse]\n } = useStringTemplate(parent, [text]);\n const {\n loading: loadingUrl,\n data: [urlToUse]\n } = useStringTemplate(parent, [injectHelperIntoTemplate(url, 'url_encode')]);\n\n const router = useRouter();\n const isHoverEvent = eventType === HOVER;\n const childrenDisplayClass = displayChildren ? '' : HIDDEN;\n const hasValidChildren = hasChildren(children);\n\n useEffect(\n () => {\n if (!showMobileMenu) {\n setDisplayChildren(false);\n }\n },\n [showMobileMenu]\n );\n\n useEffect(\n () => {\n if (isHoverEvent) {\n setDisplayChildren(false);\n }\n },\n [router.asPath, isHoverEvent]\n );\n\n if (loadingUrl || loadingText) return '';\n\n const handleItemEvent = ({ type }) => {\n if (isHoverEvent) {\n if (type === MOUSE_ENTER) {\n setDisplayChildren(true);\n }\n if (type === MOUSE_LEAVE) {\n setDisplayChildren(false);\n }\n }\n };\n\n const handleMobileClick = () => {\n if (!urlToUse && hasValidChildren) {\n setDisplayChildren(!displayChildren);\n }\n };\n\n return (\n <li className={modifier} onMouseEnter={handleItemEvent} onMouseLeave={handleItemEvent}>\n <div\n className=\"menu--item--link\"\n onClick={handleMobileClick}\n role={!urlToUse && hasValidChildren ? 'button' : undefined}\n tabIndex={!urlToUse && hasValidChildren ? 0 : undefined}>\n {urlToUse ? <BlazeLink href={urlToUse}>{textToUse}</BlazeLink> : <span>{textToUse}</span>}\n\n {hasValidChildren && (\n <i\n role=\"button\"\n className=\"menu--item--link--icon\"\n onClick={e => {\n e.stopPropagation();\n setDisplayChildren(!displayChildren);\n }}\n tabIndex={0}>\n {displayChildren ? <FaChevronUp /> : <FaChevronDown />}\n </i>\n )}\n </div>\n\n {hasValidChildren && (\n <div className={`menu--item-children ${childrenDisplayClass}`}>{children}</div>\n )}\n </li>\n );\n};\n\nMenuItemRender.propTypes = {\n modifier: PropTypes.string,\n text: PropTypes.string,\n url: PropTypes.string,\n eventType: PropTypes.string.isRequired,\n parent: PropTypes.object,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node])\n};\n\nMenuItemRender.defaultProps = {\n url: '',\n modifier: '',\n text: '',\n children: null,\n parent: {}\n};\n\nexport default MenuItemRender;\n"],"mappings":"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","ignoreList":[]}
@@ -7,65 +7,85 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports["default"] = void 0;
9
9
  require("core-js/modules/es.array.concat.js");
10
- require("core-js/modules/es.array.filter.js");
11
10
  require("core-js/modules/es.array.find-index.js");
12
- require("core-js/modules/es.array.index-of.js");
11
+ require("core-js/modules/es.array.from.js");
12
+ require("core-js/modules/es.array.is-array.js");
13
+ require("core-js/modules/es.array.iterator.js");
13
14
  require("core-js/modules/es.array.map.js");
15
+ require("core-js/modules/es.map.js");
14
16
  require("core-js/modules/es.object.to-string.js");
17
+ require("core-js/modules/es.string.iterator.js");
18
+ require("core-js/modules/es.weak-map.js");
19
+ require("core-js/modules/web.dom-collections.iterator.js");
20
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
15
21
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
16
22
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
17
23
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
24
+ function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
25
+ function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
26
+ function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
27
+ function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
28
+ function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); }
29
+ var _images = /*#__PURE__*/new WeakMap();
30
+ var _pageBuilderID = /*#__PURE__*/new WeakMap();
31
+ var _handlers = /*#__PURE__*/new WeakMap();
18
32
  var StoreImages = /*#__PURE__*/function () {
19
33
  function StoreImages() {
20
34
  var _this = this;
21
35
  (0, _classCallCheck2["default"])(this, StoreImages);
22
- (0, _defineProperty2["default"])(this, "removeDuplicated", function (images, key) {
23
- _this.images = images.map(function (item) {
24
- return item[key];
25
- }).map(function (item, index, _final) {
26
- return _final.indexOf(item) === index && index;
27
- }).filter(function (item) {
28
- return images[item];
29
- }).map(function (item) {
30
- return images[item];
31
- });
36
+ _classPrivateFieldInitSpec(this, _images, []);
37
+ _classPrivateFieldInitSpec(this, _pageBuilderID, null);
38
+ _classPrivateFieldInitSpec(this, _handlers, {
39
+ toggleModal: function toggleModal() {},
40
+ onSelect: function onSelect() {}
41
+ });
42
+ (0, _defineProperty2["default"])(this, "toggleModal", function () {
43
+ _classPrivateFieldGet(_handlers, _this).toggleModal();
32
44
  });
33
45
  (0, _defineProperty2["default"])(this, "handleSelectedImage", function (imageId) {
34
- var index = _this.images.findIndex(function (image) {
35
- return image.imageId === imageId;
46
+ var idx = _classPrivateFieldGet(_images, _this).findIndex(function (img) {
47
+ return img.imageId === imageId;
36
48
  });
37
- if (index !== -1) {
38
- _this.setSelectedImage(index);
39
- }
40
- });
41
- (0, _defineProperty2["default"])(this, "setHandlers", function (_ref) {
42
- var _ref$toggleModal = _ref.toggleModal,
43
- toggleModal = _ref$toggleModal === void 0 ? _this.toggleModal : _ref$toggleModal,
44
- _ref$setSelectedImage = _ref.setSelectedImage,
45
- setSelectedImage = _ref$setSelectedImage === void 0 ? _this.setSelectedImage : _ref$setSelectedImage;
46
- _this.toggleModal = toggleModal;
47
- _this.setSelectedImage = setSelectedImage;
48
- });
49
- (0, _defineProperty2["default"])(this, "addImages", function (images) {
50
- var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
51
- if (!images.length) return _this.images;
52
- var pageBuilderID = options.pageBuilderID;
53
- if (pageBuilderID !== _this.id) {
54
- _this.resetImages();
55
- _this.id = pageBuilderID;
56
- }
57
- _this.removeDuplicated(_this.images.concat(images), 'imageId');
58
- return _this.images;
49
+ if (idx !== -1) _classPrivateFieldGet(_handlers, _this).onSelect(idx);
59
50
  });
60
- this.images = [];
61
- this.id = null;
62
- this.toggleModal = function () {};
63
- this.setSelectedImage = function () {};
64
51
  }
65
52
  (0, _createClass2["default"])(StoreImages, [{
53
+ key: "images",
54
+ get: function get() {
55
+ return (0, _toConsumableArray2["default"])(_classPrivateFieldGet(_images, this));
56
+ }
57
+ }, {
66
58
  key: "resetImages",
67
59
  value: function resetImages() {
68
- this.images = [];
60
+ _classPrivateFieldSet(_images, this, []);
61
+ }
62
+ }, {
63
+ key: "setHandlers",
64
+ value: function setHandlers(_ref) {
65
+ var toggleModal = _ref.toggleModal,
66
+ setSelectedImage = _ref.setSelectedImage;
67
+ if (typeof toggleModal === 'function') _classPrivateFieldGet(_handlers, this).toggleModal = toggleModal;
68
+ if (typeof setSelectedImage === 'function') _classPrivateFieldGet(_handlers, this).onSelect = setSelectedImage;
69
+ }
70
+ }, {
71
+ key: "addImages",
72
+ value: function addImages(newImages) {
73
+ var _ref2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
74
+ pageBuilderID = _ref2.pageBuilderID;
75
+ var handlers = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
76
+ if (!Array.isArray(newImages) || newImages.length === 0) {
77
+ return this.images;
78
+ }
79
+ if (pageBuilderID != null && pageBuilderID !== _classPrivateFieldGet(_pageBuilderID, this)) {
80
+ this.resetImages();
81
+ _classPrivateFieldSet(_pageBuilderID, this, pageBuilderID);
82
+ }
83
+ var merged = _classPrivateFieldGet(_images, this).concat(newImages);
84
+ _classPrivateFieldSet(_images, this, Array.from(new Map(merged.map(function (img) {
85
+ return [img.imageId, img];
86
+ })).values()));
87
+ this.setHandlers(handlers);
88
+ return this.images;
69
89
  }
70
90
  }]);
71
91
  return StoreImages;
@@ -1 +1 @@
1
- {"version":3,"file":"StoreImages.js","names":["StoreImages","_this","_classCallCheck2","_defineProperty2","images","key","map","item","index","final","indexOf","filter","imageId","findIndex","image","setSelectedImage","_ref","_ref$toggleModal","toggleModal","_ref$setSelectedImage","options","arguments","length","undefined","pageBuilderID","id","resetImages","removeDuplicated","concat","_createClass2","value","_default","exports"],"sources":["../../../src/hooks/helpers/StoreImages.js"],"sourcesContent":["class StoreImages {\n constructor() {\n this.images = [];\n this.id = null;\n this.toggleModal = () => {};\n this.setSelectedImage = () => {};\n }\n\n resetImages() {\n this.images = [];\n }\n\n removeDuplicated = (images, key) => {\n this.images = images\n .map(item => item[key])\n .map((item, index, final) => final.indexOf(item) === index && index)\n .filter(item => images[item])\n .map(item => images[item]);\n };\n\n handleSelectedImage = imageId => {\n const index = this.images.findIndex(image => image.imageId === imageId);\n if (index !== -1) {\n this.setSelectedImage(index);\n }\n };\n\n setHandlers = ({ toggleModal = this.toggleModal, setSelectedImage = this.setSelectedImage }) => {\n this.toggleModal = toggleModal;\n this.setSelectedImage = setSelectedImage;\n };\n\n addImages = (images, options = {}) => {\n if (!images.length) return this.images;\n\n const { pageBuilderID } = options;\n\n if (pageBuilderID !== this.id) {\n this.resetImages();\n this.id = pageBuilderID;\n }\n\n this.removeDuplicated(this.images.concat(images), 'imageId');\n\n return this.images;\n };\n}\n\nexport default new StoreImages();\n"],"mappings":";;;;;;;;;;;;;;;;;IAAMA,WAAW;EACf,SAAAA,YAAA,EAAc;IAAA,IAAAC,KAAA;IAAA,IAAAC,gBAAA,mBAAAF,WAAA;IAAA,IAAAG,gBAAA,uCAWK,UAACC,MAAM,EAAEC,GAAG,EAAK;MAClCJ,KAAI,CAACG,MAAM,GAAGA,MAAM,CACjBE,GAAG,CAAC,UAAAC,IAAI;QAAA,OAAIA,IAAI,CAACF,GAAG,CAAC;MAAA,EAAC,CACtBC,GAAG,CAAC,UAACC,IAAI,EAAEC,KAAK,EAAEC,MAAK;QAAA,OAAKA,MAAK,CAACC,OAAO,CAACH,IAAI,CAAC,KAAKC,KAAK,IAAIA,KAAK;MAAA,EAAC,CACnEG,MAAM,CAAC,UAAAJ,IAAI;QAAA,OAAIH,MAAM,CAACG,IAAI,CAAC;MAAA,EAAC,CAC5BD,GAAG,CAAC,UAAAC,IAAI;QAAA,OAAIH,MAAM,CAACG,IAAI,CAAC;MAAA,EAAC;IAC9B,CAAC;IAAA,IAAAJ,gBAAA,0CAEqB,UAAAS,OAAO,EAAI;MAC/B,IAAMJ,KAAK,GAAGP,KAAI,CAACG,MAAM,CAACS,SAAS,CAAC,UAAAC,KAAK;QAAA,OAAIA,KAAK,CAACF,OAAO,KAAKA,OAAO;MAAA,EAAC;MACvE,IAAIJ,KAAK,KAAK,CAAC,CAAC,EAAE;QAChBP,KAAI,CAACc,gBAAgB,CAACP,KAAK,CAAC;MAC9B;IACF,CAAC;IAAA,IAAAL,gBAAA,kCAEa,UAAAa,IAAA,EAAkF;MAAA,IAAAC,gBAAA,GAAAD,IAAA,CAA/EE,WAAW;QAAXA,WAAW,GAAAD,gBAAA,cAAGhB,KAAI,CAACiB,WAAW,GAAAD,gBAAA;QAAAE,qBAAA,GAAAH,IAAA,CAAED,gBAAgB;QAAhBA,gBAAgB,GAAAI,qBAAA,cAAGlB,KAAI,CAACc,gBAAgB,GAAAI,qBAAA;MACvFlB,KAAI,CAACiB,WAAW,GAAGA,WAAW;MAC9BjB,KAAI,CAACc,gBAAgB,GAAGA,gBAAgB;IAC1C,CAAC;IAAA,IAAAZ,gBAAA,gCAEW,UAACC,MAAM,EAAmB;MAAA,IAAjBgB,OAAO,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;MAC/B,IAAI,CAACjB,MAAM,CAACkB,MAAM,EAAE,OAAOrB,KAAI,CAACG,MAAM;MAEtC,IAAQoB,aAAa,GAAKJ,OAAO,CAAzBI,aAAa;MAErB,IAAIA,aAAa,KAAKvB,KAAI,CAACwB,EAAE,EAAE;QAC7BxB,KAAI,CAACyB,WAAW,CAAC,CAAC;QAClBzB,KAAI,CAACwB,EAAE,GAAGD,aAAa;MACzB;MAEAvB,KAAI,CAAC0B,gBAAgB,CAAC1B,KAAI,CAACG,MAAM,CAACwB,MAAM,CAACxB,MAAM,CAAC,EAAE,SAAS,CAAC;MAE5D,OAAOH,KAAI,CAACG,MAAM;IACpB,CAAC;IA3CC,IAAI,CAACA,MAAM,GAAG,EAAE;IAChB,IAAI,CAACqB,EAAE,GAAG,IAAI;IACd,IAAI,CAACP,WAAW,GAAG,YAAM,CAAC,CAAC;IAC3B,IAAI,CAACH,gBAAgB,GAAG,YAAM,CAAC,CAAC;EAClC;EAAC,IAAAc,aAAA,aAAA7B,WAAA;IAAAK,GAAA;IAAAyB,KAAA,EAED,SAAAJ,YAAA,EAAc;MACZ,IAAI,CAACtB,MAAM,GAAG,EAAE;IAClB;EAAC;EAAA,OAAAJ,WAAA;AAAA;AAAA,IAAA+B,QAAA,GAAAC,OAAA,cAsCY,IAAIhC,WAAW,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"StoreImages.js","names":["StoreImages","_this","_classCallCheck2","_classPrivateFieldInitSpec","_images","_pageBuilderID","_handlers","toggleModal","onSelect","_defineProperty2","_classPrivateFieldGet","imageId","idx","findIndex","img","_createClass2","key","get","_toConsumableArray2","value","resetImages","_classPrivateFieldSet","setHandlers","_ref","setSelectedImage","addImages","newImages","_ref2","arguments","length","undefined","pageBuilderID","handlers","Array","isArray","images","merged","concat","from","Map","map","values","_default","exports"],"sources":["../../../src/hooks/helpers/StoreImages.js"],"sourcesContent":["class StoreImages {\n #images = [];\n\n #pageBuilderID = null;\n\n #handlers = {\n toggleModal: () => {},\n onSelect: () => {}\n };\n\n get images() {\n return [...this.#images];\n }\n\n resetImages() {\n this.#images = [];\n }\n\n setHandlers({ toggleModal, setSelectedImage }) {\n if (typeof toggleModal === 'function') this.#handlers.toggleModal = toggleModal;\n if (typeof setSelectedImage === 'function') this.#handlers.onSelect = setSelectedImage;\n }\n\n addImages(newImages, { pageBuilderID } = {}, handlers = {}) {\n if (!Array.isArray(newImages) || newImages.length === 0) {\n return this.images;\n }\n\n if (pageBuilderID != null && pageBuilderID !== this.#pageBuilderID) {\n this.resetImages();\n this.#pageBuilderID = pageBuilderID;\n }\n\n const merged = this.#images.concat(newImages);\n this.#images = Array.from(new Map(merged.map(img => [img.imageId, img])).values());\n\n this.setHandlers(handlers);\n return this.images;\n }\n\n toggleModal = () => {\n this.#handlers.toggleModal();\n };\n\n handleSelectedImage = imageId => {\n const idx = this.#images.findIndex(img => img.imageId === imageId);\n if (idx !== -1) this.#handlers.onSelect(idx);\n };\n}\n\nexport default new StoreImages();\n"],"mappings":"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","ignoreList":[]}