@blaze-cms/react-page-builder 0.123.0-alpha.5 → 0.123.0-alpha.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -0
- package/lib/components/Menu/Menu.js +12 -16
- package/lib/components/Menu/Menu.js.map +1 -1
- package/lib/components/SearchContent/index.js +4 -12
- package/lib/components/SearchContent/index.js.map +1 -1
- package/lib-es/components/Menu/Menu.js +12 -16
- package/lib-es/components/Menu/Menu.js.map +1 -1
- package/lib-es/components/SearchContent/index.js +3 -11
- package/lib-es/components/SearchContent/index.js.map +1 -1
- package/package.json +2 -2
- package/src/components/Menu/Menu.js +14 -14
- package/src/components/SearchContent/index.js +3 -14
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,14 @@
|
|
|
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.123.0-alpha.6](https://github.com/thebyte9/blaze/compare/v0.123.0-alpha.5...v0.123.0-alpha.6) (2022-03-26)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @blaze-cms/react-page-builder
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
6
14
|
# [0.123.0-alpha.5](https://github.com/thebyte9/blaze/compare/v0.123.0-alpha.4...v0.123.0-alpha.5) (2022-03-26)
|
|
7
15
|
|
|
8
16
|
**Note:** Version bump only for package @blaze-cms/react-page-builder
|
|
@@ -43,7 +43,7 @@ var _constants = require("../../constants");
|
|
|
43
43
|
|
|
44
44
|
var _SearchContent = _interopRequireDefault(require("../SearchContent"));
|
|
45
45
|
|
|
46
|
-
var _excluded = ["children", "collapse", "modifier", "mobileMenuModifier", "mobileMenuChildrenModifier", "mobileIconAlignment", "mobileButtonModifier", "hamburgerIconModifier", "
|
|
46
|
+
var _excluded = ["children", "collapse", "modifier", "mobileMenuModifier", "mobileMenuChildrenModifier", "mobileIconAlignment", "mobileButtonModifier", "hamburgerIconModifier", "searchInputAlignment", "searchInputWrapperMobile", "searchInputWrapperDesktop", "logoOnMobile", "logoOnDesktop", "logoOnMobileUrl", "logoOnMobileAlt", "logoOnMobileModifier", "logoOnDesktopModifier", "closeIconModifier", "entity"];
|
|
47
47
|
|
|
48
48
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
49
49
|
|
|
@@ -58,8 +58,7 @@ var Menu = function Menu(_ref) {
|
|
|
58
58
|
mobileIconAlignment = _ref.mobileIconAlignment,
|
|
59
59
|
mobileButtonModifier = _ref.mobileButtonModifier,
|
|
60
60
|
hamburgerIconModifier = _ref.hamburgerIconModifier,
|
|
61
|
-
|
|
62
|
-
searchInputAlignmentDesktop = _ref.searchInputAlignmentDesktop,
|
|
61
|
+
searchInputAlignment = _ref.searchInputAlignment,
|
|
63
62
|
searchInputWrapperMobile = _ref.searchInputWrapperMobile,
|
|
64
63
|
searchInputWrapperDesktop = _ref.searchInputWrapperDesktop,
|
|
65
64
|
logoOnMobile = _ref.logoOnMobile,
|
|
@@ -97,14 +96,7 @@ var Menu = function Menu(_ref) {
|
|
|
97
96
|
className: closeIconModifier
|
|
98
97
|
}) : /*#__PURE__*/_react["default"].createElement(_md.MdMenu, {
|
|
99
98
|
className: hamburgerIconModifier
|
|
100
|
-
}))), /*#__PURE__*/_react["default"].createElement(
|
|
101
|
-
searchInputWrapperMobile: searchInputWrapperMobile,
|
|
102
|
-
searchInputWrapperDesktop: searchInputWrapperDesktop,
|
|
103
|
-
searchInputAlignmentDesktop: searchInputAlignmentDesktop,
|
|
104
|
-
searchInputAlignmentMobile: searchInputAlignmentMobile,
|
|
105
|
-
entity: entity,
|
|
106
|
-
isMobile: isMobile
|
|
107
|
-
}))), logoOnMobile && /*#__PURE__*/_react["default"].createElement("a", {
|
|
99
|
+
}))))), logoOnMobile && /*#__PURE__*/_react["default"].createElement("a", {
|
|
108
100
|
href: "/"
|
|
109
101
|
}, /*#__PURE__*/_react["default"].createElement("img", {
|
|
110
102
|
src: logoOnMobileUrl,
|
|
@@ -121,7 +113,13 @@ var Menu = function Menu(_ref) {
|
|
|
121
113
|
src: logoOnMobileUrl,
|
|
122
114
|
alt: logoOnMobileAlt,
|
|
123
115
|
className: logoOnDesktopModifier
|
|
124
|
-
})), children
|
|
116
|
+
})), children, searchInputAlignment === 'right' && /*#__PURE__*/_react["default"].createElement("li", null, /*#__PURE__*/_react["default"].createElement(_SearchContent["default"], {
|
|
117
|
+
searchInputWrapperMobile: searchInputWrapperMobile,
|
|
118
|
+
searchInputWrapperDesktop: searchInputWrapperDesktop,
|
|
119
|
+
searchInputAlignment: searchInputAlignment,
|
|
120
|
+
entity: entity,
|
|
121
|
+
isMobile: isMobile
|
|
122
|
+
})))));
|
|
125
123
|
};
|
|
126
124
|
|
|
127
125
|
Menu.propTypes = {
|
|
@@ -140,8 +138,7 @@ Menu.propTypes = {
|
|
|
140
138
|
modifier: _propTypes["default"].string,
|
|
141
139
|
mobileIconAlignment: _propTypes["default"].string,
|
|
142
140
|
entity: _propTypes["default"].string,
|
|
143
|
-
|
|
144
|
-
searchInputAlignmentDesktop: _propTypes["default"].string,
|
|
141
|
+
searchInputAlignment: _propTypes["default"].string,
|
|
145
142
|
searchInputWrapperMobile: _propTypes["default"].string,
|
|
146
143
|
searchInputWrapperDesktop: _propTypes["default"].string,
|
|
147
144
|
children: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].node), _propTypes["default"].node])
|
|
@@ -157,8 +154,7 @@ Menu.defaultProps = {
|
|
|
157
154
|
mobileIconAlignment: '',
|
|
158
155
|
mobileMenuModifier: '',
|
|
159
156
|
mobileMenuChildrenModifier: '',
|
|
160
|
-
|
|
161
|
-
searchInputAlignmentDesktop: '',
|
|
157
|
+
searchInputAlignment: 'right',
|
|
162
158
|
searchInputWrapperMobile: '',
|
|
163
159
|
searchInputWrapperDesktop: '',
|
|
164
160
|
modifier: '',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/Menu/Menu.js"],"names":["Menu","children","collapse","modifier","mobileMenuModifier","mobileMenuChildrenModifier","mobileIconAlignment","mobileButtonModifier","hamburgerIconModifier","
|
|
1
|
+
{"version":3,"sources":["../../../src/components/Menu/Menu.js"],"names":["Menu","children","collapse","modifier","mobileMenuModifier","mobileMenuChildrenModifier","mobileIconAlignment","mobileButtonModifier","hamburgerIconModifier","searchInputAlignment","searchInputWrapperMobile","searchInputWrapperDesktop","logoOnMobile","logoOnDesktop","logoOnMobileUrl","logoOnMobileAlt","logoOnMobileModifier","logoOnDesktopModifier","closeIconModifier","entity","rest","isMobile","showMobileMenu","setShowMobileMenu","shouldDisplayCollapsed","mobileButtonClass","HIDDEN","shouldDisplayChildren","childrenDesktopModifier","childrenMobileModifier","isMobileMenuExpanded","propTypes","PropTypes","bool","isRequired","string","oneOfType","arrayOf","node","defaultProps"],"mappings":"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","sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport BlazeButton from '@blaze-react/button';\nimport { MdMenu, MdClose } from 'react-icons/md';\nimport { useCheckMobileScreen } from '../../hooks';\nimport { HIDDEN } from '../../constants';\nimport SearchContent from '../SearchContent';\n\nconst Menu = ({\n children,\n collapse,\n modifier,\n mobileMenuModifier,\n mobileMenuChildrenModifier,\n mobileIconAlignment,\n mobileButtonModifier,\n hamburgerIconModifier,\n searchInputAlignment,\n searchInputWrapperMobile,\n searchInputWrapperDesktop,\n logoOnMobile,\n logoOnDesktop,\n logoOnMobileUrl,\n logoOnMobileAlt,\n logoOnMobileModifier,\n logoOnDesktopModifier,\n\n closeIconModifier,\n entity,\n ...rest\n}) => {\n const isMobile = useCheckMobileScreen();\n const [showMobileMenu, setShowMobileMenu] = useState(false);\n\n const shouldDisplayCollapsed = collapse && isMobile;\n const mobileButtonClass = shouldDisplayCollapsed && isMobile ? mobileButtonModifier : HIDDEN;\n const shouldDisplayChildren = shouldDisplayCollapsed ? showMobileMenu : true;\n const childrenDesktopModifier =\n shouldDisplayChildren && !isMobile ? modifier : `${modifier} ${HIDDEN}`;\n\n const childrenMobileModifier =\n shouldDisplayChildren && isMobile ? `${mobileMenuChildrenModifier}` : ` ${HIDDEN}`;\n\n const isMobileMenuExpanded = showMobileMenu ? `${mobileMenuModifier}` : '';\n\n return (\n <>\n {collapse && (\n <div className=\"menu--mobile-wrapper\">\n <div\n className={`flex w-screen z-50 justify-${mobileIconAlignment} ${isMobileMenuExpanded}`}>\n <BlazeButton\n className={mobileButtonClass}\n onClick={() => setShowMobileMenu(!showMobileMenu)}>\n <i>\n {showMobileMenu ? (\n <MdClose className={closeIconModifier} />\n ) : (\n <MdMenu className={hamburgerIconModifier} />\n )}\n </i>\n </BlazeButton>\n </div>\n </div>\n )}\n {logoOnMobile && (\n <a href=\"/\">\n <img src={logoOnMobileUrl} alt={logoOnMobileAlt} className={logoOnMobileModifier} />\n </a>\n )}\n\n <div className=\"menu--desktop-wrapper\">\n <ul className={isMobile ? childrenMobileModifier : childrenDesktopModifier}>\n {logoOnDesktop && (\n <a href=\"/\" className=\"\">\n <img src={logoOnMobileUrl} alt={logoOnMobileAlt} className={logoOnDesktopModifier} />\n </a>\n )}\n {children}\n {searchInputAlignment === 'right' && (\n <li>\n <SearchContent\n searchInputWrapperMobile={searchInputWrapperMobile}\n searchInputWrapperDesktop={searchInputWrapperDesktop}\n searchInputAlignment={searchInputAlignment}\n entity={entity}\n isMobile={isMobile}\n />\n </li>\n )}\n </ul>\n </div>\n </>\n );\n};\n\nMenu.propTypes = {\n collapse: PropTypes.bool.isRequired,\n logoOnMobile: PropTypes.bool.isRequired,\n logoOnDesktop: PropTypes.bool.isRequired,\n logoOnMobileUrl: PropTypes.string,\n logoOnMobileAlt: PropTypes.string,\n logoOnMobileModifier: PropTypes.string,\n logoOnDesktopModifier: PropTypes.string,\n hamburgerIconModifier: PropTypes.string,\n closeIconModifier: PropTypes.string,\n mobileButtonModifier: PropTypes.string,\n mobileMenuModifier: PropTypes.string,\n mobileMenuChildrenModifier: PropTypes.string,\n modifier: PropTypes.string,\n mobileIconAlignment: PropTypes.string,\n entity: PropTypes.string,\n searchInputAlignment: PropTypes.string,\n searchInputWrapperMobile: PropTypes.string,\n searchInputWrapperDesktop: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node])\n};\n\nMenu.defaultProps = {\n logoOnMobileUrl: '',\n logoOnMobileAlt: '',\n logoOnMobileModifier: '',\n logoOnDesktopModifier: '',\n hamburgerIconModifier: '',\n closeIconModifier: '',\n mobileButtonModifier: '',\n mobileIconAlignment: '',\n mobileMenuModifier: '',\n mobileMenuChildrenModifier: '',\n searchInputAlignment: 'right',\n searchInputWrapperMobile: '',\n searchInputWrapperDesktop: '',\n modifier: '',\n entity: 'PublishedPage',\n children: []\n};\n\nexport default Menu;\n"],"file":"Menu.js"}
|
|
@@ -58,9 +58,7 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
58
58
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
59
59
|
|
|
60
60
|
var SearchContent = function SearchContent(_ref) {
|
|
61
|
-
var
|
|
62
|
-
searchInputAlignmentDesktop = _ref.searchInputAlignmentDesktop,
|
|
63
|
-
entity = _ref.entity,
|
|
61
|
+
var entity = _ref.entity,
|
|
64
62
|
searchInputWrapperMobile = _ref.searchInputWrapperMobile,
|
|
65
63
|
searchInputWrapperDesktop = _ref.searchInputWrapperDesktop,
|
|
66
64
|
isMobile = _ref.isMobile;
|
|
@@ -76,9 +74,6 @@ var SearchContent = function SearchContent(_ref) {
|
|
|
76
74
|
setSearchTerm = _useState4[1];
|
|
77
75
|
|
|
78
76
|
var router = (0, _router.useRouter)();
|
|
79
|
-
var alignmentModifier = ''; // if (searchInputAlignmentMobile && searchInputAlignmentMobile !== '') {
|
|
80
|
-
// alignmentModifier = searchInputAlignmentMobile === 'left' ? 'left-6' : 'right-16';
|
|
81
|
-
// }
|
|
82
77
|
|
|
83
78
|
var capitalize = function capitalize(s) {
|
|
84
79
|
if (typeof s !== 'string') return '';
|
|
@@ -179,7 +174,7 @@ var SearchContent = function SearchContent(_ref) {
|
|
|
179
174
|
type: "text",
|
|
180
175
|
name: "search",
|
|
181
176
|
value: "",
|
|
182
|
-
className: "disabled:bg-white block bg-white w-full rounded-
|
|
177
|
+
className: "disabled:bg-white block bg-white w-full rounded-none border-white py-2 pl-5 pr-3 placeholder:italic placeholder:text-gray-400 focus:outline-none sm:text-sm"
|
|
183
178
|
})))) : /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("div", {
|
|
184
179
|
className: "".concat(isMobile ? searchInputWrapperMobile : searchInputWrapperDesktop)
|
|
185
180
|
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
@@ -203,7 +198,7 @@ var SearchContent = function SearchContent(_ref) {
|
|
|
203
198
|
onChange: function onChange(e) {
|
|
204
199
|
return setSearchTerm(e.target.value);
|
|
205
200
|
},
|
|
206
|
-
className: "block
|
|
201
|
+
className: "block w-full rounded-full rounded-white py-2 pl-3 pr-3 placeholder:italic placeholder:text-slate-400 focus:outline-none sm:text-sm",
|
|
207
202
|
placeholder: "Search for anything...",
|
|
208
203
|
onBlur: function onBlur() {
|
|
209
204
|
if (!searchTerm || searchTerm === '') setCollapsed(true);
|
|
@@ -220,16 +215,13 @@ var SearchContent = function SearchContent(_ref) {
|
|
|
220
215
|
};
|
|
221
216
|
|
|
222
217
|
SearchContent.propTypes = {
|
|
223
|
-
searchInputAlignmentMobile: _propTypes["default"].string,
|
|
224
|
-
searchInputAlignmentDesktop: _propTypes["default"].string,
|
|
225
218
|
searchInputWrapperMobile: _propTypes["default"].string,
|
|
226
219
|
searchInputWrapperDesktop: _propTypes["default"].string,
|
|
227
220
|
isMobile: _propTypes["default"].bool,
|
|
228
221
|
entity: _propTypes["default"].string.isRequired
|
|
229
222
|
};
|
|
230
223
|
SearchContent.defaultProps = {
|
|
231
|
-
|
|
232
|
-
searchInputAlignmentDesktop: '',
|
|
224
|
+
searchInputAlignment: '',
|
|
233
225
|
searchInputWrapperMobile: '',
|
|
234
226
|
searchInputWrapperDesktop: '',
|
|
235
227
|
isMobile: false
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/SearchContent/index.js"],"names":["SearchContent","searchInputAlignmentMobile","searchInputAlignmentDesktop","entity","searchInputWrapperMobile","searchInputWrapperDesktop","isMobile","collapsed","setCollapsed","searchTerm","setSearchTerm","router","alignmentModifier","capitalize","s","charAt","toUpperCase","slice","split","a","b","entityName","rawQueryStringified","JSON","stringify","size","query","bool","should","match","docType","minimum_should_match","gql","variables","offset","limit","loading","error","data","handleClick","e","url","preventDefault","push","renderResults","searchPublishedContent","results","map","name","searchResultsMessage","target","value","propTypes","PropTypes","string","isRequired","defaultProps"],"mappings":"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","sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { gql, useQuery } from '@apollo/client';\nimport { useRouter } from 'next/router';\nimport { getPublishedContent } from '../../application/query';\nimport BlazeLink from '../BlazeLink';\n\nconst SearchContent = ({\n searchInputAlignmentMobile,\n searchInputAlignmentDesktop,\n entity,\n searchInputWrapperMobile,\n searchInputWrapperDesktop,\n isMobile\n}) => {\n const [collapsed, setCollapsed] = useState(true);\n const [searchTerm, setSearchTerm] = useState(null);\n const router = useRouter();\n\n const alignmentModifier = '';\n\n // if (searchInputAlignmentMobile && searchInputAlignmentMobile !== '') {\n // alignmentModifier = searchInputAlignmentMobile === 'left' ? 'left-6' : 'right-16';\n // }\n\n const capitalize = s => {\n if (typeof s !== 'string') return '';\n return s.charAt(0).toUpperCase() + s.slice(1);\n };\n\n const [a, b] = entity.split('_');\n\n const entityName = capitalize(a) + capitalize(b);\n\n const rawQueryStringified = JSON.stringify({\n size: 0,\n query: {\n bool: {\n should: [\n {\n match: {\n docType: entity\n }\n }\n ],\n minimum_should_match: 1\n }\n }\n });\n\n const query = gql`\n ${getPublishedContent(entityName)}\n `;\n\n const { loading, error, data } = useQuery(query, {\n variables: { rawQueryStringified, offset: 0, limit: 5 }\n });\n\n if (loading) return null;\n if (error) return `Error! ${error}`;\n\n const handleClick = (e, url) => {\n e.preventDefault();\n router.push(url);\n };\n\n const renderResults = () => {\n // eslint-disable-next-line no-undef\n const { results } = data?.searchPublishedContent;\n\n if (results && searchTerm && searchTerm !== '') {\n return results.map(({ name, url }) => {\n if (name.match(searchTerm)) {\n return (\n <BlazeLink href={url} onClick={e => handleClick(e, url)}>\n {name}\n </BlazeLink>\n );\n }\n\n return null;\n });\n }\n\n return [];\n };\n\n const searchResultsMessage = searchTerm ? `Search results for: ${searchTerm}` : '';\n\n return collapsed ? (\n <div className={isMobile ? searchInputWrapperMobile : searchInputWrapperDesktop}>\n <div className=\"w-11 mx-auto\">\n <label className=\"relative block\">\n <span className=\"absolute inset-y-0 right-3 flex items-center pl-2 cursor-pointer\">\n <svg className=\"h-5 w-5 fill-slate-300\" viewBox=\"0 0 20 20\">\n <path\n fillRule=\"evenodd\"\n d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\"\n clipRule=\"evenodd\"\n />\n </svg>\n </span>\n <span className=\"sr-only\">Search</span>\n <input\n onFocus={() => setCollapsed(false)}\n onChange={e => setSearchTerm(e.target.value)}\n type=\"text\"\n name=\"search\"\n value=\"\"\n className=\"disabled:bg-white block bg-white w-full rounded-full py-2 pl-5 pr-3 placeholder:italic placeholder:text-gray-400 focus:outline-none sm:text-sm\"\n />\n </label>\n </div>\n </div>\n ) : (\n <>\n <div className={`${isMobile ? searchInputWrapperMobile : searchInputWrapperDesktop}`}>\n <div className=\"w-96 mx-auto rounded-3xl\">\n <label className=\"relative block\">\n <span className=\"absolute inset-y-0 right-3 flex items-center pl-2\">\n <svg className=\"h-5 w-5 fill-slate-300\" viewBox=\"0 0 20 20\">\n <path\n fillRule=\"evenodd\"\n d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\"\n clipRule=\"evenodd\"\n />\n </svg>\n </span>\n <span className=\"sr-only\">Search</span>\n <input\n type=\"text\"\n name=\"search\"\n onChange={e => setSearchTerm(e.target.value)}\n className=\"block bg-white w-full rounded-full py-2 pl-3 pr-3 placeholder:italic placeholder:text-slate-400 focus:outline-none sm:text-sm\"\n placeholder=\"Search for anything...\"\n onBlur={() => {\n if (!searchTerm || searchTerm === '') setCollapsed(true);\n }}\n />\n </label>\n </div>\n {data &&\n searchResultsMessage !== '' && (\n <div className=\"bg-white ml-1 mr-1 rounded rounded-lg relative top-0 flex flex-col z-50 border-2 border-gray-50\">\n <div className=\"text-sm pt-2\">{searchResultsMessage}</div>\n\n <div className=\"text-left px-4 py-2\">\n <div className=\"text-bold\">{renderResults()}</div>\n </div>\n </div>\n )}\n </div>\n </>\n );\n};\n\nSearchContent.propTypes = {\n searchInputAlignmentMobile: PropTypes.string,\n searchInputAlignmentDesktop: PropTypes.string,\n searchInputWrapperMobile: PropTypes.string,\n searchInputWrapperDesktop: PropTypes.string,\n isMobile: PropTypes.bool,\n entity: PropTypes.string.isRequired\n};\n\nSearchContent.defaultProps = {\n searchInputAlignmentMobile: '',\n searchInputAlignmentDesktop: '',\n searchInputWrapperMobile: '',\n searchInputWrapperDesktop: '',\n isMobile: false\n};\n\nexport default SearchContent;\n"],"file":"index.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/SearchContent/index.js"],"names":["SearchContent","entity","searchInputWrapperMobile","searchInputWrapperDesktop","isMobile","collapsed","setCollapsed","searchTerm","setSearchTerm","router","capitalize","s","charAt","toUpperCase","slice","split","a","b","entityName","rawQueryStringified","JSON","stringify","size","query","bool","should","match","docType","minimum_should_match","gql","variables","offset","limit","loading","error","data","handleClick","e","url","preventDefault","push","renderResults","searchPublishedContent","results","map","name","searchResultsMessage","target","value","propTypes","PropTypes","string","isRequired","defaultProps","searchInputAlignment"],"mappings":"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","sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { gql, useQuery } from '@apollo/client';\nimport { useRouter } from 'next/router';\nimport { getPublishedContent } from '../../application/query';\nimport BlazeLink from '../BlazeLink';\n\nconst SearchContent = ({\n entity,\n searchInputWrapperMobile,\n searchInputWrapperDesktop,\n isMobile\n}) => {\n const [collapsed, setCollapsed] = useState(true);\n const [searchTerm, setSearchTerm] = useState(null);\n const router = useRouter();\n\n const capitalize = s => {\n if (typeof s !== 'string') return '';\n return s.charAt(0).toUpperCase() + s.slice(1);\n };\n\n const [a, b] = entity.split('_');\n\n const entityName = capitalize(a) + capitalize(b);\n\n const rawQueryStringified = JSON.stringify({\n size: 0,\n query: {\n bool: {\n should: [\n {\n match: {\n docType: entity\n }\n }\n ],\n minimum_should_match: 1\n }\n }\n });\n\n const query = gql`\n ${getPublishedContent(entityName)}\n `;\n\n const { loading, error, data } = useQuery(query, {\n variables: { rawQueryStringified, offset: 0, limit: 5 }\n });\n\n if (loading) return null;\n if (error) return `Error! ${error}`;\n\n const handleClick = (e, url) => {\n e.preventDefault();\n router.push(url);\n };\n\n const renderResults = () => {\n // eslint-disable-next-line no-undef\n const { results } = data?.searchPublishedContent;\n\n if (results && searchTerm && searchTerm !== '') {\n return results.map(({ name, url }) => {\n if (name.match(searchTerm)) {\n return (\n <BlazeLink href={url} onClick={e => handleClick(e, url)}>\n {name}\n </BlazeLink>\n );\n }\n\n return null;\n });\n }\n\n return [];\n };\n\n const searchResultsMessage = searchTerm ? `Search results for: ${searchTerm}` : '';\n\n return collapsed ? (\n <div className={isMobile ? searchInputWrapperMobile : searchInputWrapperDesktop}>\n <div className=\"w-11 mx-auto\">\n <label className=\"relative block\">\n <span className=\"absolute inset-y-0 right-3 flex items-center pl-2 cursor-pointer\">\n <svg className=\"h-5 w-5 fill-slate-300\" viewBox=\"0 0 20 20\">\n <path\n fillRule=\"evenodd\"\n d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\"\n clipRule=\"evenodd\"\n />\n </svg>\n </span>\n <span className=\"sr-only\">Search</span>\n <input\n onFocus={() => setCollapsed(false)}\n onChange={e => setSearchTerm(e.target.value)}\n type=\"text\"\n name=\"search\"\n value=\"\"\n className=\"disabled:bg-white block bg-white w-full rounded-none border-white py-2 pl-5 pr-3 placeholder:italic placeholder:text-gray-400 focus:outline-none sm:text-sm\"\n />\n </label>\n </div>\n </div>\n ) : (\n <>\n <div className={`${isMobile ? searchInputWrapperMobile : searchInputWrapperDesktop}`}>\n <div className=\"w-96 mx-auto rounded-3xl\">\n <label className=\"relative block\">\n <span className=\"absolute inset-y-0 right-3 flex items-center pl-2\">\n <svg className=\"h-5 w-5 fill-slate-300\" viewBox=\"0 0 20 20\">\n <path\n fillRule=\"evenodd\"\n d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\"\n clipRule=\"evenodd\"\n />\n </svg>\n </span>\n <span className=\"sr-only\">Search</span>\n <input\n type=\"text\"\n name=\"search\"\n onChange={e => setSearchTerm(e.target.value)}\n className=\"block w-full rounded-full rounded-white py-2 pl-3 pr-3 placeholder:italic placeholder:text-slate-400 focus:outline-none sm:text-sm\"\n placeholder=\"Search for anything...\"\n onBlur={() => {\n if (!searchTerm || searchTerm === '') setCollapsed(true);\n }}\n />\n </label>\n </div>\n {data &&\n searchResultsMessage !== '' && (\n <div className=\"bg-white ml-1 mr-1 rounded rounded-lg relative top-0 flex flex-col z-50 border-2 border-gray-50\">\n <div className=\"text-sm pt-2\">{searchResultsMessage}</div>\n\n <div className=\"text-left px-4 py-2\">\n <div className=\"text-bold\">{renderResults()}</div>\n </div>\n </div>\n )}\n </div>\n </>\n );\n};\n\nSearchContent.propTypes = {\n searchInputWrapperMobile: PropTypes.string,\n searchInputWrapperDesktop: PropTypes.string,\n isMobile: PropTypes.bool,\n entity: PropTypes.string.isRequired\n};\n\nSearchContent.defaultProps = {\n searchInputAlignment: '',\n searchInputWrapperMobile: '',\n searchInputWrapperDesktop: '',\n isMobile: false\n};\n\nexport default SearchContent;\n"],"file":"index.js"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
|
|
2
|
-
const _excluded = ["children", "collapse", "modifier", "mobileMenuModifier", "mobileMenuChildrenModifier", "mobileIconAlignment", "mobileButtonModifier", "hamburgerIconModifier", "
|
|
2
|
+
const _excluded = ["children", "collapse", "modifier", "mobileMenuModifier", "mobileMenuChildrenModifier", "mobileIconAlignment", "mobileButtonModifier", "hamburgerIconModifier", "searchInputAlignment", "searchInputWrapperMobile", "searchInputWrapperDesktop", "logoOnMobile", "logoOnDesktop", "logoOnMobileUrl", "logoOnMobileAlt", "logoOnMobileModifier", "logoOnDesktopModifier", "closeIconModifier", "entity"];
|
|
3
3
|
import React, { useState } from 'react';
|
|
4
4
|
import PropTypes from 'prop-types';
|
|
5
5
|
import BlazeButton from '@blaze-react/button';
|
|
@@ -18,8 +18,7 @@ const Menu = _ref => {
|
|
|
18
18
|
mobileIconAlignment,
|
|
19
19
|
mobileButtonModifier,
|
|
20
20
|
hamburgerIconModifier,
|
|
21
|
-
|
|
22
|
-
searchInputAlignmentDesktop,
|
|
21
|
+
searchInputAlignment,
|
|
23
22
|
searchInputWrapperMobile,
|
|
24
23
|
searchInputWrapperDesktop,
|
|
25
24
|
logoOnMobile,
|
|
@@ -52,14 +51,7 @@ const Menu = _ref => {
|
|
|
52
51
|
className: closeIconModifier
|
|
53
52
|
}) : /*#__PURE__*/React.createElement(MdMenu, {
|
|
54
53
|
className: hamburgerIconModifier
|
|
55
|
-
}))), /*#__PURE__*/React.createElement(
|
|
56
|
-
searchInputWrapperMobile: searchInputWrapperMobile,
|
|
57
|
-
searchInputWrapperDesktop: searchInputWrapperDesktop,
|
|
58
|
-
searchInputAlignmentDesktop: searchInputAlignmentDesktop,
|
|
59
|
-
searchInputAlignmentMobile: searchInputAlignmentMobile,
|
|
60
|
-
entity: entity,
|
|
61
|
-
isMobile: isMobile
|
|
62
|
-
}))), logoOnMobile && /*#__PURE__*/React.createElement("a", {
|
|
54
|
+
}))))), logoOnMobile && /*#__PURE__*/React.createElement("a", {
|
|
63
55
|
href: "/"
|
|
64
56
|
}, /*#__PURE__*/React.createElement("img", {
|
|
65
57
|
src: logoOnMobileUrl,
|
|
@@ -76,7 +68,13 @@ const Menu = _ref => {
|
|
|
76
68
|
src: logoOnMobileUrl,
|
|
77
69
|
alt: logoOnMobileAlt,
|
|
78
70
|
className: logoOnDesktopModifier
|
|
79
|
-
})), children
|
|
71
|
+
})), children, searchInputAlignment === 'right' && /*#__PURE__*/React.createElement("li", null, /*#__PURE__*/React.createElement(SearchContent, {
|
|
72
|
+
searchInputWrapperMobile: searchInputWrapperMobile,
|
|
73
|
+
searchInputWrapperDesktop: searchInputWrapperDesktop,
|
|
74
|
+
searchInputAlignment: searchInputAlignment,
|
|
75
|
+
entity: entity,
|
|
76
|
+
isMobile: isMobile
|
|
77
|
+
})))));
|
|
80
78
|
};
|
|
81
79
|
|
|
82
80
|
Menu.propTypes = {
|
|
@@ -95,8 +93,7 @@ Menu.propTypes = {
|
|
|
95
93
|
modifier: PropTypes.string,
|
|
96
94
|
mobileIconAlignment: PropTypes.string,
|
|
97
95
|
entity: PropTypes.string,
|
|
98
|
-
|
|
99
|
-
searchInputAlignmentDesktop: PropTypes.string,
|
|
96
|
+
searchInputAlignment: PropTypes.string,
|
|
100
97
|
searchInputWrapperMobile: PropTypes.string,
|
|
101
98
|
searchInputWrapperDesktop: PropTypes.string,
|
|
102
99
|
children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node])
|
|
@@ -112,8 +109,7 @@ Menu.defaultProps = {
|
|
|
112
109
|
mobileIconAlignment: '',
|
|
113
110
|
mobileMenuModifier: '',
|
|
114
111
|
mobileMenuChildrenModifier: '',
|
|
115
|
-
|
|
116
|
-
searchInputAlignmentDesktop: '',
|
|
112
|
+
searchInputAlignment: 'right',
|
|
117
113
|
searchInputWrapperMobile: '',
|
|
118
114
|
searchInputWrapperDesktop: '',
|
|
119
115
|
modifier: '',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/Menu/Menu.js"],"names":["React","useState","PropTypes","BlazeButton","MdMenu","MdClose","useCheckMobileScreen","HIDDEN","SearchContent","Menu","children","collapse","modifier","mobileMenuModifier","mobileMenuChildrenModifier","mobileIconAlignment","mobileButtonModifier","hamburgerIconModifier","
|
|
1
|
+
{"version":3,"sources":["../../../src/components/Menu/Menu.js"],"names":["React","useState","PropTypes","BlazeButton","MdMenu","MdClose","useCheckMobileScreen","HIDDEN","SearchContent","Menu","children","collapse","modifier","mobileMenuModifier","mobileMenuChildrenModifier","mobileIconAlignment","mobileButtonModifier","hamburgerIconModifier","searchInputAlignment","searchInputWrapperMobile","searchInputWrapperDesktop","logoOnMobile","logoOnDesktop","logoOnMobileUrl","logoOnMobileAlt","logoOnMobileModifier","logoOnDesktopModifier","closeIconModifier","entity","rest","isMobile","showMobileMenu","setShowMobileMenu","shouldDisplayCollapsed","mobileButtonClass","shouldDisplayChildren","childrenDesktopModifier","childrenMobileModifier","isMobileMenuExpanded","propTypes","bool","isRequired","string","oneOfType","arrayOf","node","defaultProps"],"mappings":";;AAAA,OAAOA,KAAP,IAAgBC,QAAhB,QAAgC,OAAhC;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,WAAP,MAAwB,qBAAxB;AACA,SAASC,MAAT,EAAiBC,OAAjB,QAAgC,gBAAhC;AACA,SAASC,oBAAT,QAAqC,aAArC;AACA,SAASC,MAAT,QAAuB,iBAAvB;AACA,OAAOC,aAAP,MAA0B,kBAA1B;;AAEA,MAAMC,IAAI,GAAG,QAsBP;AAAA,MAtBQ;AACZC,IAAAA,QADY;AAEZC,IAAAA,QAFY;AAGZC,IAAAA,QAHY;AAIZC,IAAAA,kBAJY;AAKZC,IAAAA,0BALY;AAMZC,IAAAA,mBANY;AAOZC,IAAAA,oBAPY;AAQZC,IAAAA,qBARY;AASZC,IAAAA,oBATY;AAUZC,IAAAA,wBAVY;AAWZC,IAAAA,yBAXY;AAYZC,IAAAA,YAZY;AAaZC,IAAAA,aAbY;AAcZC,IAAAA,eAdY;AAeZC,IAAAA,eAfY;AAgBZC,IAAAA,oBAhBY;AAiBZC,IAAAA,qBAjBY;AAmBZC,IAAAA,iBAnBY;AAoBZC,IAAAA;AApBY,GAsBR;AAAA,MADDC,IACC;;AACJ,QAAMC,QAAQ,GAAGxB,oBAAoB,EAArC;AACA,QAAM,CAACyB,cAAD,EAAiBC,iBAAjB,IAAsC/B,QAAQ,CAAC,KAAD,CAApD;AAEA,QAAMgC,sBAAsB,GAAGtB,QAAQ,IAAImB,QAA3C;AACA,QAAMI,iBAAiB,GAAGD,sBAAsB,IAAIH,QAA1B,GAAqCd,oBAArC,GAA4DT,MAAtF;AACA,QAAM4B,qBAAqB,GAAGF,sBAAsB,GAAGF,cAAH,GAAoB,IAAxE;AACA,QAAMK,uBAAuB,GAC3BD,qBAAqB,IAAI,CAACL,QAA1B,GAAqClB,QAArC,GAAiD,GAAEA,QAAS,IAAGL,MAAO,EADxE;AAGA,QAAM8B,sBAAsB,GAC1BF,qBAAqB,IAAIL,QAAzB,GAAqC,GAAEhB,0BAA2B,EAAlE,GAAuE,IAAGP,MAAO,EADnF;AAGA,QAAM+B,oBAAoB,GAAGP,cAAc,GAAI,GAAElB,kBAAmB,EAAzB,GAA6B,EAAxE;AAEA,sBACE,0CACGF,QAAQ,iBACP;AAAK,IAAA,SAAS,EAAC;AAAf,kBACE;AACE,IAAA,SAAS,EAAG,8BAA6BI,mBAAoB,IAAGuB,oBAAqB;AADvF,kBAEE,oBAAC,WAAD;AACE,IAAA,SAAS,EAAEJ,iBADb;AAEE,IAAA,OAAO,EAAE,MAAMF,iBAAiB,CAAC,CAACD,cAAF;AAFlC,kBAGE,+BACGA,cAAc,gBACb,oBAAC,OAAD;AAAS,IAAA,SAAS,EAAEJ;AAApB,IADa,gBAGb,oBAAC,MAAD;AAAQ,IAAA,SAAS,EAAEV;AAAnB,IAJJ,CAHF,CAFF,CADF,CAFJ,EAmBGI,YAAY,iBACX;AAAG,IAAA,IAAI,EAAC;AAAR,kBACE;AAAK,IAAA,GAAG,EAAEE,eAAV;AAA2B,IAAA,GAAG,EAAEC,eAAhC;AAAiD,IAAA,SAAS,EAAEC;AAA5D,IADF,CApBJ,eAyBE;AAAK,IAAA,SAAS,EAAC;AAAf,kBACE;AAAI,IAAA,SAAS,EAAEK,QAAQ,GAAGO,sBAAH,GAA4BD;AAAnD,KACGd,aAAa,iBACZ;AAAG,IAAA,IAAI,EAAC,GAAR;AAAY,IAAA,SAAS,EAAC;AAAtB,kBACE;AAAK,IAAA,GAAG,EAAEC,eAAV;AAA2B,IAAA,GAAG,EAAEC,eAAhC;AAAiD,IAAA,SAAS,EAAEE;AAA5D,IADF,CAFJ,EAMGhB,QANH,EAOGQ,oBAAoB,KAAK,OAAzB,iBACC,6CACE,oBAAC,aAAD;AACE,IAAA,wBAAwB,EAAEC,wBAD5B;AAEE,IAAA,yBAAyB,EAAEC,yBAF7B;AAGE,IAAA,oBAAoB,EAAEF,oBAHxB;AAIE,IAAA,MAAM,EAAEU,MAJV;AAKE,IAAA,QAAQ,EAAEE;AALZ,IADF,CARJ,CADF,CAzBF,CADF;AAiDD,CAtFD;;AAwFArB,IAAI,CAAC8B,SAAL,GAAiB;AACf5B,EAAAA,QAAQ,EAAET,SAAS,CAACsC,IAAV,CAAeC,UADV;AAEfpB,EAAAA,YAAY,EAAEnB,SAAS,CAACsC,IAAV,CAAeC,UAFd;AAGfnB,EAAAA,aAAa,EAAEpB,SAAS,CAACsC,IAAV,CAAeC,UAHf;AAIflB,EAAAA,eAAe,EAAErB,SAAS,CAACwC,MAJZ;AAKflB,EAAAA,eAAe,EAAEtB,SAAS,CAACwC,MALZ;AAMfjB,EAAAA,oBAAoB,EAAEvB,SAAS,CAACwC,MANjB;AAOfhB,EAAAA,qBAAqB,EAAExB,SAAS,CAACwC,MAPlB;AAQfzB,EAAAA,qBAAqB,EAAEf,SAAS,CAACwC,MARlB;AASff,EAAAA,iBAAiB,EAAEzB,SAAS,CAACwC,MATd;AAUf1B,EAAAA,oBAAoB,EAAEd,SAAS,CAACwC,MAVjB;AAWf7B,EAAAA,kBAAkB,EAAEX,SAAS,CAACwC,MAXf;AAYf5B,EAAAA,0BAA0B,EAAEZ,SAAS,CAACwC,MAZvB;AAaf9B,EAAAA,QAAQ,EAAEV,SAAS,CAACwC,MAbL;AAcf3B,EAAAA,mBAAmB,EAAEb,SAAS,CAACwC,MAdhB;AAefd,EAAAA,MAAM,EAAE1B,SAAS,CAACwC,MAfH;AAgBfxB,EAAAA,oBAAoB,EAAEhB,SAAS,CAACwC,MAhBjB;AAiBfvB,EAAAA,wBAAwB,EAAEjB,SAAS,CAACwC,MAjBrB;AAkBftB,EAAAA,yBAAyB,EAAElB,SAAS,CAACwC,MAlBtB;AAmBfhC,EAAAA,QAAQ,EAAER,SAAS,CAACyC,SAAV,CAAoB,CAACzC,SAAS,CAAC0C,OAAV,CAAkB1C,SAAS,CAAC2C,IAA5B,CAAD,EAAoC3C,SAAS,CAAC2C,IAA9C,CAApB;AAnBK,CAAjB;AAsBApC,IAAI,CAACqC,YAAL,GAAoB;AAClBvB,EAAAA,eAAe,EAAE,EADC;AAElBC,EAAAA,eAAe,EAAE,EAFC;AAGlBC,EAAAA,oBAAoB,EAAE,EAHJ;AAIlBC,EAAAA,qBAAqB,EAAE,EAJL;AAKlBT,EAAAA,qBAAqB,EAAE,EALL;AAMlBU,EAAAA,iBAAiB,EAAE,EAND;AAOlBX,EAAAA,oBAAoB,EAAE,EAPJ;AAQlBD,EAAAA,mBAAmB,EAAE,EARH;AASlBF,EAAAA,kBAAkB,EAAE,EATF;AAUlBC,EAAAA,0BAA0B,EAAE,EAVV;AAWlBI,EAAAA,oBAAoB,EAAE,OAXJ;AAYlBC,EAAAA,wBAAwB,EAAE,EAZR;AAalBC,EAAAA,yBAAyB,EAAE,EAbT;AAclBR,EAAAA,QAAQ,EAAE,EAdQ;AAelBgB,EAAAA,MAAM,EAAE,eAfU;AAgBlBlB,EAAAA,QAAQ,EAAE;AAhBQ,CAApB;AAmBA,eAAeD,IAAf","sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport BlazeButton from '@blaze-react/button';\nimport { MdMenu, MdClose } from 'react-icons/md';\nimport { useCheckMobileScreen } from '../../hooks';\nimport { HIDDEN } from '../../constants';\nimport SearchContent from '../SearchContent';\n\nconst Menu = ({\n children,\n collapse,\n modifier,\n mobileMenuModifier,\n mobileMenuChildrenModifier,\n mobileIconAlignment,\n mobileButtonModifier,\n hamburgerIconModifier,\n searchInputAlignment,\n searchInputWrapperMobile,\n searchInputWrapperDesktop,\n logoOnMobile,\n logoOnDesktop,\n logoOnMobileUrl,\n logoOnMobileAlt,\n logoOnMobileModifier,\n logoOnDesktopModifier,\n\n closeIconModifier,\n entity,\n ...rest\n}) => {\n const isMobile = useCheckMobileScreen();\n const [showMobileMenu, setShowMobileMenu] = useState(false);\n\n const shouldDisplayCollapsed = collapse && isMobile;\n const mobileButtonClass = shouldDisplayCollapsed && isMobile ? mobileButtonModifier : HIDDEN;\n const shouldDisplayChildren = shouldDisplayCollapsed ? showMobileMenu : true;\n const childrenDesktopModifier =\n shouldDisplayChildren && !isMobile ? modifier : `${modifier} ${HIDDEN}`;\n\n const childrenMobileModifier =\n shouldDisplayChildren && isMobile ? `${mobileMenuChildrenModifier}` : ` ${HIDDEN}`;\n\n const isMobileMenuExpanded = showMobileMenu ? `${mobileMenuModifier}` : '';\n\n return (\n <>\n {collapse && (\n <div className=\"menu--mobile-wrapper\">\n <div\n className={`flex w-screen z-50 justify-${mobileIconAlignment} ${isMobileMenuExpanded}`}>\n <BlazeButton\n className={mobileButtonClass}\n onClick={() => setShowMobileMenu(!showMobileMenu)}>\n <i>\n {showMobileMenu ? (\n <MdClose className={closeIconModifier} />\n ) : (\n <MdMenu className={hamburgerIconModifier} />\n )}\n </i>\n </BlazeButton>\n </div>\n </div>\n )}\n {logoOnMobile && (\n <a href=\"/\">\n <img src={logoOnMobileUrl} alt={logoOnMobileAlt} className={logoOnMobileModifier} />\n </a>\n )}\n\n <div className=\"menu--desktop-wrapper\">\n <ul className={isMobile ? childrenMobileModifier : childrenDesktopModifier}>\n {logoOnDesktop && (\n <a href=\"/\" className=\"\">\n <img src={logoOnMobileUrl} alt={logoOnMobileAlt} className={logoOnDesktopModifier} />\n </a>\n )}\n {children}\n {searchInputAlignment === 'right' && (\n <li>\n <SearchContent\n searchInputWrapperMobile={searchInputWrapperMobile}\n searchInputWrapperDesktop={searchInputWrapperDesktop}\n searchInputAlignment={searchInputAlignment}\n entity={entity}\n isMobile={isMobile}\n />\n </li>\n )}\n </ul>\n </div>\n </>\n );\n};\n\nMenu.propTypes = {\n collapse: PropTypes.bool.isRequired,\n logoOnMobile: PropTypes.bool.isRequired,\n logoOnDesktop: PropTypes.bool.isRequired,\n logoOnMobileUrl: PropTypes.string,\n logoOnMobileAlt: PropTypes.string,\n logoOnMobileModifier: PropTypes.string,\n logoOnDesktopModifier: PropTypes.string,\n hamburgerIconModifier: PropTypes.string,\n closeIconModifier: PropTypes.string,\n mobileButtonModifier: PropTypes.string,\n mobileMenuModifier: PropTypes.string,\n mobileMenuChildrenModifier: PropTypes.string,\n modifier: PropTypes.string,\n mobileIconAlignment: PropTypes.string,\n entity: PropTypes.string,\n searchInputAlignment: PropTypes.string,\n searchInputWrapperMobile: PropTypes.string,\n searchInputWrapperDesktop: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node])\n};\n\nMenu.defaultProps = {\n logoOnMobileUrl: '',\n logoOnMobileAlt: '',\n logoOnMobileModifier: '',\n logoOnDesktopModifier: '',\n hamburgerIconModifier: '',\n closeIconModifier: '',\n mobileButtonModifier: '',\n mobileIconAlignment: '',\n mobileMenuModifier: '',\n mobileMenuChildrenModifier: '',\n searchInputAlignment: 'right',\n searchInputWrapperMobile: '',\n searchInputWrapperDesktop: '',\n modifier: '',\n entity: 'PublishedPage',\n children: []\n};\n\nexport default Menu;\n"],"file":"Menu.js"}
|
|
@@ -6,8 +6,6 @@ import { getPublishedContent } from '../../application/query';
|
|
|
6
6
|
import BlazeLink from '../BlazeLink';
|
|
7
7
|
|
|
8
8
|
const SearchContent = ({
|
|
9
|
-
searchInputAlignmentMobile,
|
|
10
|
-
searchInputAlignmentDesktop,
|
|
11
9
|
entity,
|
|
12
10
|
searchInputWrapperMobile,
|
|
13
11
|
searchInputWrapperDesktop,
|
|
@@ -16,9 +14,6 @@ const SearchContent = ({
|
|
|
16
14
|
const [collapsed, setCollapsed] = useState(true);
|
|
17
15
|
const [searchTerm, setSearchTerm] = useState(null);
|
|
18
16
|
const router = useRouter();
|
|
19
|
-
const alignmentModifier = ''; // if (searchInputAlignmentMobile && searchInputAlignmentMobile !== '') {
|
|
20
|
-
// alignmentModifier = searchInputAlignmentMobile === 'left' ? 'left-6' : 'right-16';
|
|
21
|
-
// }
|
|
22
17
|
|
|
23
18
|
const capitalize = s => {
|
|
24
19
|
if (typeof s !== 'string') return '';
|
|
@@ -111,7 +106,7 @@ const SearchContent = ({
|
|
|
111
106
|
type: "text",
|
|
112
107
|
name: "search",
|
|
113
108
|
value: "",
|
|
114
|
-
className: "disabled:bg-white block bg-white w-full rounded-
|
|
109
|
+
className: "disabled:bg-white block bg-white w-full rounded-none border-white py-2 pl-5 pr-3 placeholder:italic placeholder:text-gray-400 focus:outline-none sm:text-sm"
|
|
115
110
|
})))) : /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
|
|
116
111
|
className: `${isMobile ? searchInputWrapperMobile : searchInputWrapperDesktop}`
|
|
117
112
|
}, /*#__PURE__*/React.createElement("div", {
|
|
@@ -133,7 +128,7 @@ const SearchContent = ({
|
|
|
133
128
|
type: "text",
|
|
134
129
|
name: "search",
|
|
135
130
|
onChange: e => setSearchTerm(e.target.value),
|
|
136
|
-
className: "block
|
|
131
|
+
className: "block w-full rounded-full rounded-white py-2 pl-3 pr-3 placeholder:italic placeholder:text-slate-400 focus:outline-none sm:text-sm",
|
|
137
132
|
placeholder: "Search for anything...",
|
|
138
133
|
onBlur: () => {
|
|
139
134
|
if (!searchTerm || searchTerm === '') setCollapsed(true);
|
|
@@ -150,16 +145,13 @@ const SearchContent = ({
|
|
|
150
145
|
};
|
|
151
146
|
|
|
152
147
|
SearchContent.propTypes = {
|
|
153
|
-
searchInputAlignmentMobile: PropTypes.string,
|
|
154
|
-
searchInputAlignmentDesktop: PropTypes.string,
|
|
155
148
|
searchInputWrapperMobile: PropTypes.string,
|
|
156
149
|
searchInputWrapperDesktop: PropTypes.string,
|
|
157
150
|
isMobile: PropTypes.bool,
|
|
158
151
|
entity: PropTypes.string.isRequired
|
|
159
152
|
};
|
|
160
153
|
SearchContent.defaultProps = {
|
|
161
|
-
|
|
162
|
-
searchInputAlignmentDesktop: '',
|
|
154
|
+
searchInputAlignment: '',
|
|
163
155
|
searchInputWrapperMobile: '',
|
|
164
156
|
searchInputWrapperDesktop: '',
|
|
165
157
|
isMobile: false
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/SearchContent/index.js"],"names":["React","useState","PropTypes","gql","useQuery","useRouter","getPublishedContent","BlazeLink","SearchContent","searchInputAlignmentMobile","searchInputAlignmentDesktop","entity","searchInputWrapperMobile","searchInputWrapperDesktop","isMobile","collapsed","setCollapsed","searchTerm","setSearchTerm","router","alignmentModifier","capitalize","s","charAt","toUpperCase","slice","a","b","split","entityName","rawQueryStringified","JSON","stringify","size","query","bool","should","match","docType","minimum_should_match","loading","error","data","variables","offset","limit","handleClick","e","url","preventDefault","push","renderResults","results","searchPublishedContent","map","name","searchResultsMessage","target","value","propTypes","string","isRequired","defaultProps"],"mappings":"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","sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { gql, useQuery } from '@apollo/client';\nimport { useRouter } from 'next/router';\nimport { getPublishedContent } from '../../application/query';\nimport BlazeLink from '../BlazeLink';\n\nconst SearchContent = ({\n searchInputAlignmentMobile,\n searchInputAlignmentDesktop,\n entity,\n searchInputWrapperMobile,\n searchInputWrapperDesktop,\n isMobile\n}) => {\n const [collapsed, setCollapsed] = useState(true);\n const [searchTerm, setSearchTerm] = useState(null);\n const router = useRouter();\n\n const alignmentModifier = '';\n\n // if (searchInputAlignmentMobile && searchInputAlignmentMobile !== '') {\n // alignmentModifier = searchInputAlignmentMobile === 'left' ? 'left-6' : 'right-16';\n // }\n\n const capitalize = s => {\n if (typeof s !== 'string') return '';\n return s.charAt(0).toUpperCase() + s.slice(1);\n };\n\n const [a, b] = entity.split('_');\n\n const entityName = capitalize(a) + capitalize(b);\n\n const rawQueryStringified = JSON.stringify({\n size: 0,\n query: {\n bool: {\n should: [\n {\n match: {\n docType: entity\n }\n }\n ],\n minimum_should_match: 1\n }\n }\n });\n\n const query = gql`\n ${getPublishedContent(entityName)}\n `;\n\n const { loading, error, data } = useQuery(query, {\n variables: { rawQueryStringified, offset: 0, limit: 5 }\n });\n\n if (loading) return null;\n if (error) return `Error! ${error}`;\n\n const handleClick = (e, url) => {\n e.preventDefault();\n router.push(url);\n };\n\n const renderResults = () => {\n // eslint-disable-next-line no-undef\n const { results } = data?.searchPublishedContent;\n\n if (results && searchTerm && searchTerm !== '') {\n return results.map(({ name, url }) => {\n if (name.match(searchTerm)) {\n return (\n <BlazeLink href={url} onClick={e => handleClick(e, url)}>\n {name}\n </BlazeLink>\n );\n }\n\n return null;\n });\n }\n\n return [];\n };\n\n const searchResultsMessage = searchTerm ? `Search results for: ${searchTerm}` : '';\n\n return collapsed ? (\n <div className={isMobile ? searchInputWrapperMobile : searchInputWrapperDesktop}>\n <div className=\"w-11 mx-auto\">\n <label className=\"relative block\">\n <span className=\"absolute inset-y-0 right-3 flex items-center pl-2 cursor-pointer\">\n <svg className=\"h-5 w-5 fill-slate-300\" viewBox=\"0 0 20 20\">\n <path\n fillRule=\"evenodd\"\n d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\"\n clipRule=\"evenodd\"\n />\n </svg>\n </span>\n <span className=\"sr-only\">Search</span>\n <input\n onFocus={() => setCollapsed(false)}\n onChange={e => setSearchTerm(e.target.value)}\n type=\"text\"\n name=\"search\"\n value=\"\"\n className=\"disabled:bg-white block bg-white w-full rounded-full py-2 pl-5 pr-3 placeholder:italic placeholder:text-gray-400 focus:outline-none sm:text-sm\"\n />\n </label>\n </div>\n </div>\n ) : (\n <>\n <div className={`${isMobile ? searchInputWrapperMobile : searchInputWrapperDesktop}`}>\n <div className=\"w-96 mx-auto rounded-3xl\">\n <label className=\"relative block\">\n <span className=\"absolute inset-y-0 right-3 flex items-center pl-2\">\n <svg className=\"h-5 w-5 fill-slate-300\" viewBox=\"0 0 20 20\">\n <path\n fillRule=\"evenodd\"\n d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\"\n clipRule=\"evenodd\"\n />\n </svg>\n </span>\n <span className=\"sr-only\">Search</span>\n <input\n type=\"text\"\n name=\"search\"\n onChange={e => setSearchTerm(e.target.value)}\n className=\"block bg-white w-full rounded-full py-2 pl-3 pr-3 placeholder:italic placeholder:text-slate-400 focus:outline-none sm:text-sm\"\n placeholder=\"Search for anything...\"\n onBlur={() => {\n if (!searchTerm || searchTerm === '') setCollapsed(true);\n }}\n />\n </label>\n </div>\n {data &&\n searchResultsMessage !== '' && (\n <div className=\"bg-white ml-1 mr-1 rounded rounded-lg relative top-0 flex flex-col z-50 border-2 border-gray-50\">\n <div className=\"text-sm pt-2\">{searchResultsMessage}</div>\n\n <div className=\"text-left px-4 py-2\">\n <div className=\"text-bold\">{renderResults()}</div>\n </div>\n </div>\n )}\n </div>\n </>\n );\n};\n\nSearchContent.propTypes = {\n searchInputAlignmentMobile: PropTypes.string,\n searchInputAlignmentDesktop: PropTypes.string,\n searchInputWrapperMobile: PropTypes.string,\n searchInputWrapperDesktop: PropTypes.string,\n isMobile: PropTypes.bool,\n entity: PropTypes.string.isRequired\n};\n\nSearchContent.defaultProps = {\n searchInputAlignmentMobile: '',\n searchInputAlignmentDesktop: '',\n searchInputWrapperMobile: '',\n searchInputWrapperDesktop: '',\n isMobile: false\n};\n\nexport default SearchContent;\n"],"file":"index.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/SearchContent/index.js"],"names":["React","useState","PropTypes","gql","useQuery","useRouter","getPublishedContent","BlazeLink","SearchContent","entity","searchInputWrapperMobile","searchInputWrapperDesktop","isMobile","collapsed","setCollapsed","searchTerm","setSearchTerm","router","capitalize","s","charAt","toUpperCase","slice","a","b","split","entityName","rawQueryStringified","JSON","stringify","size","query","bool","should","match","docType","minimum_should_match","loading","error","data","variables","offset","limit","handleClick","e","url","preventDefault","push","renderResults","results","searchPublishedContent","map","name","searchResultsMessage","target","value","propTypes","string","isRequired","defaultProps","searchInputAlignment"],"mappings":"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","sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { gql, useQuery } from '@apollo/client';\nimport { useRouter } from 'next/router';\nimport { getPublishedContent } from '../../application/query';\nimport BlazeLink from '../BlazeLink';\n\nconst SearchContent = ({\n entity,\n searchInputWrapperMobile,\n searchInputWrapperDesktop,\n isMobile\n}) => {\n const [collapsed, setCollapsed] = useState(true);\n const [searchTerm, setSearchTerm] = useState(null);\n const router = useRouter();\n\n const capitalize = s => {\n if (typeof s !== 'string') return '';\n return s.charAt(0).toUpperCase() + s.slice(1);\n };\n\n const [a, b] = entity.split('_');\n\n const entityName = capitalize(a) + capitalize(b);\n\n const rawQueryStringified = JSON.stringify({\n size: 0,\n query: {\n bool: {\n should: [\n {\n match: {\n docType: entity\n }\n }\n ],\n minimum_should_match: 1\n }\n }\n });\n\n const query = gql`\n ${getPublishedContent(entityName)}\n `;\n\n const { loading, error, data } = useQuery(query, {\n variables: { rawQueryStringified, offset: 0, limit: 5 }\n });\n\n if (loading) return null;\n if (error) return `Error! ${error}`;\n\n const handleClick = (e, url) => {\n e.preventDefault();\n router.push(url);\n };\n\n const renderResults = () => {\n // eslint-disable-next-line no-undef\n const { results } = data?.searchPublishedContent;\n\n if (results && searchTerm && searchTerm !== '') {\n return results.map(({ name, url }) => {\n if (name.match(searchTerm)) {\n return (\n <BlazeLink href={url} onClick={e => handleClick(e, url)}>\n {name}\n </BlazeLink>\n );\n }\n\n return null;\n });\n }\n\n return [];\n };\n\n const searchResultsMessage = searchTerm ? `Search results for: ${searchTerm}` : '';\n\n return collapsed ? (\n <div className={isMobile ? searchInputWrapperMobile : searchInputWrapperDesktop}>\n <div className=\"w-11 mx-auto\">\n <label className=\"relative block\">\n <span className=\"absolute inset-y-0 right-3 flex items-center pl-2 cursor-pointer\">\n <svg className=\"h-5 w-5 fill-slate-300\" viewBox=\"0 0 20 20\">\n <path\n fillRule=\"evenodd\"\n d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\"\n clipRule=\"evenodd\"\n />\n </svg>\n </span>\n <span className=\"sr-only\">Search</span>\n <input\n onFocus={() => setCollapsed(false)}\n onChange={e => setSearchTerm(e.target.value)}\n type=\"text\"\n name=\"search\"\n value=\"\"\n className=\"disabled:bg-white block bg-white w-full rounded-none border-white py-2 pl-5 pr-3 placeholder:italic placeholder:text-gray-400 focus:outline-none sm:text-sm\"\n />\n </label>\n </div>\n </div>\n ) : (\n <>\n <div className={`${isMobile ? searchInputWrapperMobile : searchInputWrapperDesktop}`}>\n <div className=\"w-96 mx-auto rounded-3xl\">\n <label className=\"relative block\">\n <span className=\"absolute inset-y-0 right-3 flex items-center pl-2\">\n <svg className=\"h-5 w-5 fill-slate-300\" viewBox=\"0 0 20 20\">\n <path\n fillRule=\"evenodd\"\n d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\"\n clipRule=\"evenodd\"\n />\n </svg>\n </span>\n <span className=\"sr-only\">Search</span>\n <input\n type=\"text\"\n name=\"search\"\n onChange={e => setSearchTerm(e.target.value)}\n className=\"block w-full rounded-full rounded-white py-2 pl-3 pr-3 placeholder:italic placeholder:text-slate-400 focus:outline-none sm:text-sm\"\n placeholder=\"Search for anything...\"\n onBlur={() => {\n if (!searchTerm || searchTerm === '') setCollapsed(true);\n }}\n />\n </label>\n </div>\n {data &&\n searchResultsMessage !== '' && (\n <div className=\"bg-white ml-1 mr-1 rounded rounded-lg relative top-0 flex flex-col z-50 border-2 border-gray-50\">\n <div className=\"text-sm pt-2\">{searchResultsMessage}</div>\n\n <div className=\"text-left px-4 py-2\">\n <div className=\"text-bold\">{renderResults()}</div>\n </div>\n </div>\n )}\n </div>\n </>\n );\n};\n\nSearchContent.propTypes = {\n searchInputWrapperMobile: PropTypes.string,\n searchInputWrapperDesktop: PropTypes.string,\n isMobile: PropTypes.bool,\n entity: PropTypes.string.isRequired\n};\n\nSearchContent.defaultProps = {\n searchInputAlignment: '',\n searchInputWrapperMobile: '',\n searchInputWrapperDesktop: '',\n isMobile: false\n};\n\nexport default SearchContent;\n"],"file":"index.js"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@blaze-cms/react-page-builder",
|
|
3
|
-
"version": "0.123.0-alpha.
|
|
3
|
+
"version": "0.123.0-alpha.6",
|
|
4
4
|
"description": "Blaze react page builder",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"module": "lib-es/index.js",
|
|
@@ -84,5 +84,5 @@
|
|
|
84
84
|
"lib/*",
|
|
85
85
|
"lib-es/*"
|
|
86
86
|
],
|
|
87
|
-
"gitHead": "
|
|
87
|
+
"gitHead": "1fb4fde4f48af60930ae4c836c68dc58bac6cbe3"
|
|
88
88
|
}
|
|
@@ -15,8 +15,7 @@ const Menu = ({
|
|
|
15
15
|
mobileIconAlignment,
|
|
16
16
|
mobileButtonModifier,
|
|
17
17
|
hamburgerIconModifier,
|
|
18
|
-
|
|
19
|
-
searchInputAlignmentDesktop,
|
|
18
|
+
searchInputAlignment,
|
|
20
19
|
searchInputWrapperMobile,
|
|
21
20
|
searchInputWrapperDesktop,
|
|
22
21
|
logoOnMobile,
|
|
@@ -61,14 +60,6 @@ const Menu = ({
|
|
|
61
60
|
)}
|
|
62
61
|
</i>
|
|
63
62
|
</BlazeButton>
|
|
64
|
-
<SearchContent
|
|
65
|
-
searchInputWrapperMobile={searchInputWrapperMobile}
|
|
66
|
-
searchInputWrapperDesktop={searchInputWrapperDesktop}
|
|
67
|
-
searchInputAlignmentDesktop={searchInputAlignmentDesktop}
|
|
68
|
-
searchInputAlignmentMobile={searchInputAlignmentMobile}
|
|
69
|
-
entity={entity}
|
|
70
|
-
isMobile={isMobile}
|
|
71
|
-
/>
|
|
72
63
|
</div>
|
|
73
64
|
</div>
|
|
74
65
|
)}
|
|
@@ -86,6 +77,17 @@ const Menu = ({
|
|
|
86
77
|
</a>
|
|
87
78
|
)}
|
|
88
79
|
{children}
|
|
80
|
+
{searchInputAlignment === 'right' && (
|
|
81
|
+
<li>
|
|
82
|
+
<SearchContent
|
|
83
|
+
searchInputWrapperMobile={searchInputWrapperMobile}
|
|
84
|
+
searchInputWrapperDesktop={searchInputWrapperDesktop}
|
|
85
|
+
searchInputAlignment={searchInputAlignment}
|
|
86
|
+
entity={entity}
|
|
87
|
+
isMobile={isMobile}
|
|
88
|
+
/>
|
|
89
|
+
</li>
|
|
90
|
+
)}
|
|
89
91
|
</ul>
|
|
90
92
|
</div>
|
|
91
93
|
</>
|
|
@@ -108,8 +110,7 @@ Menu.propTypes = {
|
|
|
108
110
|
modifier: PropTypes.string,
|
|
109
111
|
mobileIconAlignment: PropTypes.string,
|
|
110
112
|
entity: PropTypes.string,
|
|
111
|
-
|
|
112
|
-
searchInputAlignmentDesktop: PropTypes.string,
|
|
113
|
+
searchInputAlignment: PropTypes.string,
|
|
113
114
|
searchInputWrapperMobile: PropTypes.string,
|
|
114
115
|
searchInputWrapperDesktop: PropTypes.string,
|
|
115
116
|
children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node])
|
|
@@ -126,8 +127,7 @@ Menu.defaultProps = {
|
|
|
126
127
|
mobileIconAlignment: '',
|
|
127
128
|
mobileMenuModifier: '',
|
|
128
129
|
mobileMenuChildrenModifier: '',
|
|
129
|
-
|
|
130
|
-
searchInputAlignmentDesktop: '',
|
|
130
|
+
searchInputAlignment: 'right',
|
|
131
131
|
searchInputWrapperMobile: '',
|
|
132
132
|
searchInputWrapperDesktop: '',
|
|
133
133
|
modifier: '',
|
|
@@ -6,8 +6,6 @@ import { getPublishedContent } from '../../application/query';
|
|
|
6
6
|
import BlazeLink from '../BlazeLink';
|
|
7
7
|
|
|
8
8
|
const SearchContent = ({
|
|
9
|
-
searchInputAlignmentMobile,
|
|
10
|
-
searchInputAlignmentDesktop,
|
|
11
9
|
entity,
|
|
12
10
|
searchInputWrapperMobile,
|
|
13
11
|
searchInputWrapperDesktop,
|
|
@@ -17,12 +15,6 @@ const SearchContent = ({
|
|
|
17
15
|
const [searchTerm, setSearchTerm] = useState(null);
|
|
18
16
|
const router = useRouter();
|
|
19
17
|
|
|
20
|
-
const alignmentModifier = '';
|
|
21
|
-
|
|
22
|
-
// if (searchInputAlignmentMobile && searchInputAlignmentMobile !== '') {
|
|
23
|
-
// alignmentModifier = searchInputAlignmentMobile === 'left' ? 'left-6' : 'right-16';
|
|
24
|
-
// }
|
|
25
|
-
|
|
26
18
|
const capitalize = s => {
|
|
27
19
|
if (typeof s !== 'string') return '';
|
|
28
20
|
return s.charAt(0).toUpperCase() + s.slice(1);
|
|
@@ -107,7 +99,7 @@ const SearchContent = ({
|
|
|
107
99
|
type="text"
|
|
108
100
|
name="search"
|
|
109
101
|
value=""
|
|
110
|
-
className="disabled:bg-white block bg-white w-full rounded-
|
|
102
|
+
className="disabled:bg-white block bg-white w-full rounded-none border-white py-2 pl-5 pr-3 placeholder:italic placeholder:text-gray-400 focus:outline-none sm:text-sm"
|
|
111
103
|
/>
|
|
112
104
|
</label>
|
|
113
105
|
</div>
|
|
@@ -131,7 +123,7 @@ const SearchContent = ({
|
|
|
131
123
|
type="text"
|
|
132
124
|
name="search"
|
|
133
125
|
onChange={e => setSearchTerm(e.target.value)}
|
|
134
|
-
className="block
|
|
126
|
+
className="block w-full rounded-full rounded-white py-2 pl-3 pr-3 placeholder:italic placeholder:text-slate-400 focus:outline-none sm:text-sm"
|
|
135
127
|
placeholder="Search for anything..."
|
|
136
128
|
onBlur={() => {
|
|
137
129
|
if (!searchTerm || searchTerm === '') setCollapsed(true);
|
|
@@ -155,8 +147,6 @@ const SearchContent = ({
|
|
|
155
147
|
};
|
|
156
148
|
|
|
157
149
|
SearchContent.propTypes = {
|
|
158
|
-
searchInputAlignmentMobile: PropTypes.string,
|
|
159
|
-
searchInputAlignmentDesktop: PropTypes.string,
|
|
160
150
|
searchInputWrapperMobile: PropTypes.string,
|
|
161
151
|
searchInputWrapperDesktop: PropTypes.string,
|
|
162
152
|
isMobile: PropTypes.bool,
|
|
@@ -164,8 +154,7 @@ SearchContent.propTypes = {
|
|
|
164
154
|
};
|
|
165
155
|
|
|
166
156
|
SearchContent.defaultProps = {
|
|
167
|
-
|
|
168
|
-
searchInputAlignmentDesktop: '',
|
|
157
|
+
searchInputAlignment: '',
|
|
169
158
|
searchInputWrapperMobile: '',
|
|
170
159
|
searchInputWrapperDesktop: '',
|
|
171
160
|
isMobile: false
|