cozy-search 0.6.1 → 0.8.0
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/dist/components/AssistantMobile.d.ts +13 -1
- package/dist/components/AssistantMobile.js +20 -13
- package/dist/components/AssistantProvider.js +1 -1
- package/dist/components/Conversations/Sources/SourcesItem.js +29 -3
- package/dist/components/ResultMenu/ResultMenu.d.ts +2 -2
- package/dist/components/ResultMenu/ResultMenu.js +4 -3
- package/dist/components/ResultMenu/ResultMenuContent.js +12 -7
- package/dist/components/ResultMenu/ResultMenuItem.d.ts +3 -2
- package/dist/components/ResultMenu/ResultMenuItem.js +31 -5
- package/dist/components/ResultMenu/styles.styl +3 -0
- package/dist/components/Search/AssistantButton.d.ts +1 -2
- package/dist/components/Search/AssistantButton.js +25 -2
- package/dist/components/Search/AssistantLink.js +4 -1
- package/dist/components/Search/Icons/DocsIcon.d.ts +2 -0
- package/dist/components/Search/Icons/DocsIcon.js +30 -0
- package/dist/components/Search/SearchBarDesktop.js +7 -32
- package/dist/components/Search/SearchBarMobile.js +2 -26
- package/dist/components/Search/getIconForSearchResult.d.ts +1 -1
- package/dist/components/Search/getIconForSearchResult.js +16 -8
- package/dist/components/Search/useFetchResult.js +19 -1
- package/dist/components/Views/AssistantDialog.js +17 -1
- package/dist/components/Views/SearchDialog.js +20 -28
- package/dist/stylesheet.css +3 -0
- package/package.json +2 -2
- package/dist/components/Search/SearchSubmitFab.d.ts +0 -5
- package/dist/components/Search/SearchSubmitFab.js +0 -59
- /package/dist/components/Search/{EncryptedFolderIcon.d.ts → Icons/EncryptedFolderIcon.d.ts} +0 -0
- /package/dist/components/Search/{EncryptedFolderIcon.js → Icons/EncryptedFolderIcon.js} +0 -0
|
@@ -1,2 +1,14 @@
|
|
|
1
|
-
export function AssistantMobile(
|
|
1
|
+
export function AssistantMobile({ componentsProps }: {
|
|
2
|
+
componentsProps: any;
|
|
3
|
+
}): JSX.Element;
|
|
4
|
+
export namespace AssistantMobile {
|
|
5
|
+
namespace propTypes {
|
|
6
|
+
let componentsProps: PropTypes.Requireable<PropTypes.InferProps<{
|
|
7
|
+
SearchBar: PropTypes.Requireable<PropTypes.InferProps<{
|
|
8
|
+
className: PropTypes.Requireable<string>;
|
|
9
|
+
}>>;
|
|
10
|
+
}>>;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
2
13
|
export default AssistantMobile;
|
|
14
|
+
import PropTypes from 'prop-types';
|
|
@@ -7,8 +7,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports.default = exports.AssistantMobile = void 0;
|
|
9
9
|
|
|
10
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
|
+
|
|
10
12
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
11
13
|
|
|
14
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
15
|
+
|
|
12
16
|
var _react = _interopRequireDefault(require("react"));
|
|
13
17
|
|
|
14
18
|
var _reactRouterDom = require("react-router-dom");
|
|
@@ -19,27 +23,25 @@ var _Magnifier = _interopRequireDefault(require("cozy-ui/transpiled/react/Icons/
|
|
|
19
23
|
|
|
20
24
|
var _SearchBar = _interopRequireDefault(require("cozy-ui/transpiled/react/SearchBar"));
|
|
21
25
|
|
|
22
|
-
var _I18n = require("cozy-ui/transpiled/react/providers/I18n");
|
|
23
|
-
|
|
24
26
|
var _useExtendI18n = _interopRequireDefault(require("cozy-ui/transpiled/react/providers/I18n/useExtendI18n"));
|
|
25
27
|
|
|
26
28
|
var _locales = require("../locales");
|
|
27
29
|
|
|
28
|
-
var _helpers = require("./helpers");
|
|
29
|
-
|
|
30
30
|
var styles = {
|
|
31
31
|
"searchBarDesktop--result": "styles__searchBarDesktop--result___2bQQy",
|
|
32
32
|
"suggestionsPlaceholder": "styles__suggestionsPlaceholder___y-vsv",
|
|
33
33
|
"search-bar-icon": "styles__search-bar-icon___1affF"
|
|
34
34
|
};
|
|
35
35
|
|
|
36
|
-
var AssistantMobile = function AssistantMobile() {
|
|
37
|
-
var
|
|
38
|
-
t = _useI18n.t;
|
|
39
|
-
|
|
36
|
+
var AssistantMobile = function AssistantMobile(_ref) {
|
|
37
|
+
var componentsProps = _ref.componentsProps;
|
|
40
38
|
var navigate = (0, _reactRouterDom.useNavigate)();
|
|
39
|
+
|
|
40
|
+
var _useLocation = (0, _reactRouterDom.useLocation)(),
|
|
41
|
+
pathname = _useLocation.pathname;
|
|
42
|
+
|
|
41
43
|
(0, _useExtendI18n.default)(_locales.locales);
|
|
42
|
-
return /*#__PURE__*/_react.default.createElement(_SearchBar.default, {
|
|
44
|
+
return /*#__PURE__*/_react.default.createElement(_SearchBar.default, (0, _extends2.default)({}, componentsProps === null || componentsProps === void 0 ? void 0 : componentsProps.SearchBar, {
|
|
43
45
|
size: "medium",
|
|
44
46
|
icon: /*#__PURE__*/_react.default.createElement(_Icon.default, {
|
|
45
47
|
className: (0, _classnames.default)('u-ml-1 u-mr-half', styles['search-bar-icon']),
|
|
@@ -47,15 +49,20 @@ var AssistantMobile = function AssistantMobile() {
|
|
|
47
49
|
size: 16
|
|
48
50
|
}),
|
|
49
51
|
type: "button",
|
|
50
|
-
label: (0, _helpers.isAssistantEnabled)() ? t('assistant.search.placeholder') : undefined // fallback on SearchBar default
|
|
51
|
-
,
|
|
52
52
|
onClick: function onClick() {
|
|
53
|
-
return navigate(
|
|
53
|
+
return navigate("connected/search?returnPath=".concat(pathname));
|
|
54
54
|
} // FIXME this route is related to home app
|
|
55
55
|
|
|
56
|
-
});
|
|
56
|
+
}));
|
|
57
57
|
};
|
|
58
58
|
|
|
59
59
|
exports.AssistantMobile = AssistantMobile;
|
|
60
|
+
AssistantMobile.propTypes = {
|
|
61
|
+
componentsProps: _propTypes.default.shape({
|
|
62
|
+
SearchBar: _propTypes.default.shape({
|
|
63
|
+
className: _propTypes.default.string
|
|
64
|
+
})
|
|
65
|
+
})
|
|
66
|
+
};
|
|
60
67
|
var _default = AssistantMobile;
|
|
61
68
|
exports.default = _default;
|
|
@@ -27,14 +27,40 @@ var styles = {
|
|
|
27
27
|
"sourcesItem": "styles__sourcesItem___204Zw"
|
|
28
28
|
};
|
|
29
29
|
|
|
30
|
+
var getSlug = function getSlug(file) {
|
|
31
|
+
if ((0, _file.isNote)(file)) {
|
|
32
|
+
return 'notes';
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
if ((0, _file.isDocs)(file)) {
|
|
36
|
+
return 'docs';
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
return 'drive';
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
var getHash = function getHash(file, slug) {
|
|
43
|
+
if (slug === 'notes') {
|
|
44
|
+
return "/n/".concat(file._id);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
if (slug === 'docs') {
|
|
48
|
+
return "/bridge/docs/".concat(file.metadata.externalId);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
return "/folder/".concat(file.dir_id, "/file/").concat(file._id);
|
|
52
|
+
};
|
|
53
|
+
|
|
30
54
|
var SourcesItem = function SourcesItem(_ref) {
|
|
31
55
|
var file = _ref.file;
|
|
32
56
|
var client = (0, _cozyClient.useClient)();
|
|
57
|
+
var slug = getSlug(file);
|
|
58
|
+
var hash = getHash(file, slug);
|
|
33
59
|
var docUrl = (0, _cozyClient.generateWebLink)({
|
|
34
|
-
slug:
|
|
60
|
+
slug: slug,
|
|
35
61
|
cozyUrl: client === null || client === void 0 ? void 0 : client.getStackClient().uri,
|
|
36
62
|
subDomainType: client === null || client === void 0 ? void 0 : client.getInstanceOptions().subdomain,
|
|
37
|
-
hash:
|
|
63
|
+
hash: hash
|
|
38
64
|
});
|
|
39
65
|
return /*#__PURE__*/_react.default.createElement(_ListItem.default, {
|
|
40
66
|
className: styles['sourcesItem'],
|
|
@@ -43,7 +69,7 @@ var SourcesItem = function SourcesItem(_ref) {
|
|
|
43
69
|
target: "_blank",
|
|
44
70
|
button: true
|
|
45
71
|
}, /*#__PURE__*/_react.default.createElement(_ListItemIcon.default, null, /*#__PURE__*/_react.default.createElement(_Icon.default, {
|
|
46
|
-
icon: (0, _getIconForSearchResult.getDriveMimeTypeIcon)(
|
|
72
|
+
icon: (0, _getIconForSearchResult.getDriveMimeTypeIcon)(file),
|
|
47
73
|
size: 32
|
|
48
74
|
})), /*#__PURE__*/_react.default.createElement(_ListItemText.default, {
|
|
49
75
|
primary: file.name,
|
|
@@ -17,13 +17,14 @@ var _ResultMenuContent = _interopRequireDefault(require("./ResultMenuContent"));
|
|
|
17
17
|
|
|
18
18
|
var styles = {
|
|
19
19
|
"resultMenu": "styles__resultMenu___o76q-",
|
|
20
|
-
"resultMenu-inner": "styles__resultMenu-inner___2Lf0d"
|
|
20
|
+
"resultMenu-inner": "styles__resultMenu-inner___2Lf0d",
|
|
21
|
+
"resultMenuItem": "styles__resultMenuItem___3-bLe"
|
|
21
22
|
};
|
|
22
23
|
|
|
23
24
|
var ResultMenu = function ResultMenu(_ref) {
|
|
24
25
|
var anchorRef = _ref.anchorRef,
|
|
25
26
|
listRef = _ref.listRef,
|
|
26
|
-
|
|
27
|
+
onClear = _ref.onClear;
|
|
27
28
|
return /*#__PURE__*/_react.default.createElement(_Popper.default, {
|
|
28
29
|
style: {
|
|
29
30
|
width: anchorRef.current.offsetWidth,
|
|
@@ -39,7 +40,7 @@ var ResultMenu = function ResultMenu(_ref) {
|
|
|
39
40
|
className: styles['resultMenu-inner']
|
|
40
41
|
}, /*#__PURE__*/_react.default.createElement(_ResultMenuContent.default, {
|
|
41
42
|
ref: listRef,
|
|
42
|
-
|
|
43
|
+
onClear: onClear
|
|
43
44
|
}))));
|
|
44
45
|
};
|
|
45
46
|
|
|
@@ -23,13 +23,13 @@ var _ResultMenuItem = _interopRequireDefault(require("./ResultMenuItem"));
|
|
|
23
23
|
|
|
24
24
|
var _SearchProvider = require("../Search/SearchProvider");
|
|
25
25
|
|
|
26
|
-
var _helpers = require("../helpers");
|
|
27
|
-
|
|
28
26
|
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); }
|
|
29
27
|
|
|
30
28
|
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; }
|
|
31
29
|
|
|
32
|
-
var SearchResult = function SearchResult() {
|
|
30
|
+
var SearchResult = function SearchResult(_ref) {
|
|
31
|
+
var onClear = _ref.onClear;
|
|
32
|
+
|
|
33
33
|
var _useSearch = (0, _SearchProvider.useSearch)(),
|
|
34
34
|
isLoading = _useSearch.isLoading,
|
|
35
35
|
results = _useSearch.results,
|
|
@@ -59,24 +59,29 @@ var SearchResult = function SearchResult() {
|
|
|
59
59
|
key: result.id || idx,
|
|
60
60
|
icon: result.icon,
|
|
61
61
|
slug: result.slug,
|
|
62
|
+
url: result.url,
|
|
62
63
|
primaryText: result.primary,
|
|
63
64
|
secondaryText: result.secondary,
|
|
64
65
|
secondaryUrl: result.secondaryUrl,
|
|
65
66
|
query: searchValue,
|
|
66
67
|
highlightQuery: "true",
|
|
67
|
-
selected:
|
|
68
|
-
|
|
68
|
+
selected: selectedIndex === idx,
|
|
69
|
+
onClear: onClear
|
|
69
70
|
});
|
|
70
71
|
});
|
|
71
72
|
};
|
|
72
73
|
|
|
73
|
-
var ResultMenuContent = /*#__PURE__*/(0, _react.forwardRef)(function (
|
|
74
|
+
var ResultMenuContent = /*#__PURE__*/(0, _react.forwardRef)(function (_ref2, ref) {
|
|
75
|
+
var onClear = _ref2.onClear;
|
|
76
|
+
|
|
74
77
|
var _useDataProxy = (0, _cozyDataproxyLib.useDataProxy)(),
|
|
75
78
|
dataProxyServicesAvailable = _useDataProxy.dataProxyServicesAvailable;
|
|
76
79
|
|
|
77
80
|
return /*#__PURE__*/_react.default.createElement(_List.default, {
|
|
78
81
|
ref: ref
|
|
79
|
-
}, dataProxyServicesAvailable && /*#__PURE__*/_react.default.createElement(SearchResult,
|
|
82
|
+
}, dataProxyServicesAvailable && /*#__PURE__*/_react.default.createElement(SearchResult, {
|
|
83
|
+
onClear: onClear
|
|
84
|
+
}));
|
|
80
85
|
});
|
|
81
86
|
ResultMenuContent.displayName = 'ResultMenuContent';
|
|
82
87
|
var _default = ResultMenuContent;
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
export default ResultMenuItem;
|
|
2
|
-
declare function ResultMenuItem({ icon, primaryText, secondaryText, secondaryUrl, slug, selected,
|
|
2
|
+
declare function ResultMenuItem({ icon, url, primaryText, secondaryText, secondaryUrl, slug, selected, query, highlightQuery, onClear }: {
|
|
3
3
|
icon: any;
|
|
4
|
+
url: any;
|
|
4
5
|
primaryText: any;
|
|
5
6
|
secondaryText: any;
|
|
6
7
|
secondaryUrl: any;
|
|
7
8
|
slug: any;
|
|
8
9
|
selected: any;
|
|
9
|
-
onClick: any;
|
|
10
10
|
query: any;
|
|
11
11
|
highlightQuery?: boolean | undefined;
|
|
12
|
+
onClear: any;
|
|
12
13
|
}): JSX.Element;
|
|
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports.default = void 0;
|
|
9
9
|
|
|
10
|
-
var _react =
|
|
10
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
11
11
|
|
|
12
12
|
var _AppIcon = _interopRequireDefault(require("cozy-ui/transpiled/react/AppIcon"));
|
|
13
13
|
|
|
@@ -23,17 +23,29 @@ var _SuggestionItemTextHighlighted = _interopRequireDefault(require("./Suggestio
|
|
|
23
23
|
|
|
24
24
|
var _SuggestionItemTextSecondary = _interopRequireDefault(require("./SuggestionItemTextSecondary"));
|
|
25
25
|
|
|
26
|
+
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); }
|
|
27
|
+
|
|
28
|
+
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; }
|
|
29
|
+
|
|
30
|
+
var styles = {
|
|
31
|
+
"resultMenu": "styles__resultMenu___o76q-",
|
|
32
|
+
"resultMenu-inner": "styles__resultMenu-inner___2Lf0d",
|
|
33
|
+
"resultMenuItem": "styles__resultMenuItem___3-bLe"
|
|
34
|
+
};
|
|
35
|
+
|
|
26
36
|
var ResultMenuItem = function ResultMenuItem(_ref) {
|
|
27
37
|
var icon = _ref.icon,
|
|
38
|
+
url = _ref.url,
|
|
28
39
|
primaryText = _ref.primaryText,
|
|
29
40
|
secondaryText = _ref.secondaryText,
|
|
30
41
|
secondaryUrl = _ref.secondaryUrl,
|
|
31
42
|
slug = _ref.slug,
|
|
32
43
|
selected = _ref.selected,
|
|
33
|
-
onClick = _ref.onClick,
|
|
34
44
|
query = _ref.query,
|
|
35
45
|
_ref$highlightQuery = _ref.highlightQuery,
|
|
36
|
-
highlightQuery = _ref$highlightQuery === void 0 ? false : _ref$highlightQuery
|
|
46
|
+
highlightQuery = _ref$highlightQuery === void 0 ? false : _ref$highlightQuery,
|
|
47
|
+
onClear = _ref.onClear;
|
|
48
|
+
var itemRef = (0, _react.useRef)();
|
|
37
49
|
var iconComponent = icon.type === 'component' ? /*#__PURE__*/_react.default.createElement(_Icon.default, {
|
|
38
50
|
icon: icon.component,
|
|
39
51
|
size: 32
|
|
@@ -50,11 +62,25 @@ var ResultMenuItem = function ResultMenuItem(_ref) {
|
|
|
50
62
|
slug: slug,
|
|
51
63
|
url: secondaryUrl
|
|
52
64
|
}) : secondaryText;
|
|
65
|
+
(0, _react.useEffect)(function () {
|
|
66
|
+
if (selected) {
|
|
67
|
+
var _itemRef$current;
|
|
68
|
+
|
|
69
|
+
itemRef === null || itemRef === void 0 ? void 0 : (_itemRef$current = itemRef.current) === null || _itemRef$current === void 0 ? void 0 : _itemRef$current.scrollIntoView({
|
|
70
|
+
behavior: 'smooth',
|
|
71
|
+
block: 'nearest',
|
|
72
|
+
inline: 'nearest'
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
}, [selected]);
|
|
53
76
|
return /*#__PURE__*/_react.default.createElement(_ListItem.default, {
|
|
54
|
-
|
|
77
|
+
component: "a",
|
|
78
|
+
href: url,
|
|
79
|
+
ref: itemRef,
|
|
55
80
|
size: "small",
|
|
56
81
|
selected: selected,
|
|
57
|
-
|
|
82
|
+
className: styles.resultMenuItem,
|
|
83
|
+
onClick: onClear
|
|
58
84
|
}, /*#__PURE__*/_react.default.createElement(_ListItemIcon.default, null, iconComponent), /*#__PURE__*/_react.default.createElement(_ListItemText.default, {
|
|
59
85
|
primary: primary,
|
|
60
86
|
secondary: secondary
|
|
@@ -9,6 +9,8 @@ exports.AssistantButton = void 0;
|
|
|
9
9
|
|
|
10
10
|
var _react = _interopRequireDefault(require("react"));
|
|
11
11
|
|
|
12
|
+
var _reactRouterDom = require("react-router-dom");
|
|
13
|
+
|
|
12
14
|
var _Icon = _interopRequireDefault(require("cozy-ui/transpiled/react/Icon"));
|
|
13
15
|
|
|
14
16
|
var _IconButton = _interopRequireDefault(require("cozy-ui/transpiled/react/IconButton"));
|
|
@@ -17,9 +19,30 @@ var _InputAdornment = _interopRequireDefault(require("cozy-ui/transpiled/react/I
|
|
|
17
19
|
|
|
18
20
|
var _TwakeAssistantIcon = require("../AssistantIcon/TwakeAssistantIcon");
|
|
19
21
|
|
|
22
|
+
var _AssistantProvider = require("../AssistantProvider");
|
|
23
|
+
|
|
24
|
+
var _helpers = require("../helpers");
|
|
25
|
+
|
|
20
26
|
var AssistantButton = function AssistantButton(_ref) {
|
|
21
|
-
var
|
|
22
|
-
|
|
27
|
+
var size = _ref.size;
|
|
28
|
+
|
|
29
|
+
var _useAssistant = (0, _AssistantProvider.useAssistant)(),
|
|
30
|
+
onAssistantExecute = _useAssistant.onAssistantExecute;
|
|
31
|
+
|
|
32
|
+
var navigate = (0, _reactRouterDom.useNavigate)();
|
|
33
|
+
|
|
34
|
+
var _useLocation = (0, _reactRouterDom.useLocation)(),
|
|
35
|
+
pathname = _useLocation.pathname;
|
|
36
|
+
|
|
37
|
+
var onClick = function onClick() {
|
|
38
|
+
var conversationId = (0, _helpers.makeConversationId)();
|
|
39
|
+
onAssistantExecute({
|
|
40
|
+
value: '',
|
|
41
|
+
conversationId: conversationId
|
|
42
|
+
});
|
|
43
|
+
navigate("assistant/".concat(conversationId, "?returnPath=").concat(pathname));
|
|
44
|
+
};
|
|
45
|
+
|
|
23
46
|
return /*#__PURE__*/_react.default.createElement(_InputAdornment.default, {
|
|
24
47
|
position: "end",
|
|
25
48
|
className: "u-mr-half"
|
|
@@ -27,6 +27,9 @@ var AssistantLink = function AssistantLink(_ref) {
|
|
|
27
27
|
|
|
28
28
|
var navigate = (0, _reactRouterDom.useNavigate)();
|
|
29
29
|
|
|
30
|
+
var _useLocation = (0, _reactRouterDom.useLocation)(),
|
|
31
|
+
pathname = _useLocation.pathname;
|
|
32
|
+
|
|
30
33
|
var openAssistant = function openAssistant() {
|
|
31
34
|
if (!(0, _helpers.isAssistantEnabled)()) return;
|
|
32
35
|
var conversationId = (0, _helpers.makeConversationId)();
|
|
@@ -34,7 +37,7 @@ var AssistantLink = function AssistantLink(_ref) {
|
|
|
34
37
|
value: '',
|
|
35
38
|
conversationId: conversationId
|
|
36
39
|
});
|
|
37
|
-
navigate("assistant/".concat(conversationId));
|
|
40
|
+
navigate("assistant/".concat(conversationId, "?returnPath=").concat(pathname));
|
|
38
41
|
};
|
|
39
42
|
|
|
40
43
|
return /*#__PURE__*/_react.default.createElement(_AssistantProvider.default, null, children({
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = void 0;
|
|
9
|
+
|
|
10
|
+
var _react = _interopRequireDefault(require("react"));
|
|
11
|
+
|
|
12
|
+
// TODO: should be moved in cozy-ui
|
|
13
|
+
var DocsIcon = function DocsIcon() {
|
|
14
|
+
return /*#__PURE__*/_react.default.createElement("svg", {
|
|
15
|
+
viewBox: "0 0 32 33",
|
|
16
|
+
fill: "none",
|
|
17
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
18
|
+
}, /*#__PURE__*/_react.default.createElement("path", {
|
|
19
|
+
d: "M21.6305 29.5812C22.7983 29.2538 23.9166 28.6562 24.6505 27.6003C25.3749 26.5663 25.5789 25.2547 25.5789 23.9925V5.50099C25.5789 5.17358 25.5611 4.84557 25.5216 4.52148C26.1016 4.74961 26.5486 5.12658 26.8626 5.65239C27.2331 6.25024 27.4184 7.03757 27.4184 8.01435V26.7964C27.4184 28.1184 27.0942 29.1078 26.4458 29.7646C25.7974 30.4214 24.8207 30.7498 23.5155 30.7498H16.4209C16.5889 30.7204 16.7574 30.6901 16.9262 30.659C18.4067 30.3944 19.9713 30.0354 21.6185 29.5846L21.6305 29.5812Z",
|
|
20
|
+
fill: "#C9191E"
|
|
21
|
+
}), /*#__PURE__*/_react.default.createElement("path", {
|
|
22
|
+
fillRule: "evenodd",
|
|
23
|
+
clipRule: "evenodd",
|
|
24
|
+
d: "M4.58203 26.405V7.5977C4.58203 6.45251 4.88938 5.58519 5.50408 4.99575C6.1272 4.40631 6.95242 4.08212 7.97972 4.02318C9.49542 3.93055 10.9311 3.80425 12.2868 3.64425C13.6425 3.47584 14.9393 3.28217 16.1771 3.06324C17.4234 2.8443 18.6359 2.60011 19.8148 2.33065C21.0274 2.04435 21.9578 2.1875 22.6062 2.7601C23.2546 3.33269 23.5788 4.24632 23.5788 5.50099V23.9925C23.5788 25.0956 23.3893 25.9166 23.0104 26.4555C22.6315 27.0029 21.9915 27.4028 21.0905 27.6554C19.4906 28.0933 17.9833 28.4386 16.5687 28.6912C15.154 28.9522 13.7731 29.1501 12.4258 29.2848C11.0785 29.4196 9.69751 29.5248 8.28286 29.6006C7.11241 29.668 6.20299 29.4238 5.5546 28.868C4.90622 28.3207 4.58203 27.4997 4.58203 26.405ZM9.20865 11.0124C11.0635 10.8944 12.7632 10.7131 14.3075 10.4683C14.6822 10.4072 15.0564 10.3436 15.4291 10.2776C15.8192 10.2085 16.1013 9.86859 16.1013 9.47337C16.1013 8.96154 15.638 8.57609 15.135 8.66189C14.846 8.71118 14.5555 8.75909 14.2635 8.80562C12.7346 9.04923 11.0452 9.22998 9.19523 9.3477C8.91819 9.36558 8.69776 9.45188 8.55608 9.62391C8.42209 9.78661 8.35645 9.98229 8.35645 10.2053C8.35645 10.4321 8.43296 10.6295 8.58568 10.7918L8.58783 10.7939C8.75336 10.9595 8.96369 11.0311 9.20865 11.0124ZM9.20801 15.206C11.0631 15.088 12.763 14.9066 14.3075 14.6619C15.8588 14.4089 17.3936 14.1138 18.9112 13.7766C19.2191 13.7081 19.4498 13.6003 19.5652 13.433C19.6786 13.2721 19.7347 13.0876 19.7347 12.8832C19.7347 12.6526 19.6469 12.454 19.476 12.2926C19.2921 12.1189 19.0348 12.0784 18.7304 12.1411L18.7285 12.1415C17.2823 12.4694 15.794 12.7553 14.2635 12.9992C12.7346 13.2428 11.0452 13.4235 9.19523 13.5413C8.91819 13.5591 8.69776 13.6454 8.55608 13.8175C8.42276 13.9794 8.35645 14.1705 8.35645 14.3863C8.35645 14.6203 8.43209 14.8223 8.58558 14.9854L8.59 14.9896C8.75499 15.1449 8.96316 15.2155 9.20551 15.2062L9.20801 15.206ZM9.20847 19.3994C11.0634 19.2729 12.7631 19.0874 14.3075 18.8427C15.8589 18.5982 17.3934 18.3073 18.9112 17.97C19.2199 17.9014 19.4508 17.7891 19.566 17.6127C19.6783 17.4529 19.7347 17.2733 19.7347 17.0766C19.7347 16.8461 19.6469 16.6474 19.476 16.4861C19.2921 16.3123 19.0348 16.2718 18.7304 16.3345L18.729 16.3348C17.2827 16.6543 15.7942 16.9361 14.2635 17.18C12.7345 17.4236 11.045 17.6086 9.19495 17.7347C8.91804 17.7526 8.69771 17.8389 8.55608 18.0109C8.42276 18.1728 8.35645 18.3639 8.35645 18.5797C8.35645 18.8137 8.43209 19.0158 8.58558 19.1789L8.59 19.183C8.75499 19.3383 8.96316 19.4089 9.20551 19.3996L9.20847 19.3994ZM14.3075 23.007C12.7632 23.2518 11.0635 23.4331 9.20867 23.5512C8.9637 23.5698 8.75337 23.4982 8.58783 23.3326L8.58572 23.3305C8.433 23.1682 8.35645 22.9708 8.35645 22.7441C8.35645 22.521 8.42209 22.3253 8.55608 22.1626C8.69776 21.9906 8.91827 21.9043 9.19531 21.8864C11.0453 21.7687 12.7346 21.588 14.2635 21.3443C14.5555 21.2978 14.846 21.2499 15.135 21.2006C15.638 21.1148 16.1013 21.5003 16.1013 22.0121C16.1013 22.4073 15.8192 22.7472 15.4291 22.8163C15.0564 22.8823 14.6822 22.9459 14.3075 23.007Z",
|
|
25
|
+
fill: "#000091"
|
|
26
|
+
}));
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
var _default = DocsIcon;
|
|
30
|
+
exports.default = _default;
|
|
@@ -11,8 +11,6 @@ var _classnames = _interopRequireDefault(require("classnames"));
|
|
|
11
11
|
|
|
12
12
|
var _react = _interopRequireWildcard(require("react"));
|
|
13
13
|
|
|
14
|
-
var _reactRouterDom = require("react-router-dom");
|
|
15
|
-
|
|
16
14
|
var _ClickAwayListener = _interopRequireDefault(require("cozy-ui/transpiled/react/ClickAwayListener"));
|
|
17
15
|
|
|
18
16
|
var _Icon = _interopRequireDefault(require("cozy-ui/transpiled/react/Icon"));
|
|
@@ -25,8 +23,6 @@ var _AssistantButton = require("./AssistantButton");
|
|
|
25
23
|
|
|
26
24
|
var _SearchProvider = require("./SearchProvider");
|
|
27
25
|
|
|
28
|
-
var _AssistantProvider = require("../AssistantProvider");
|
|
29
|
-
|
|
30
26
|
var _ResultMenu = _interopRequireDefault(require("../ResultMenu/ResultMenu"));
|
|
31
27
|
|
|
32
28
|
var _helpers = require("../helpers");
|
|
@@ -57,28 +53,9 @@ var SearchBarDesktop = function SearchBarDesktop(_ref) {
|
|
|
57
53
|
selectedIndex = _useSearch.selectedIndex,
|
|
58
54
|
setSelectedIndex = _useSearch.setSelectedIndex;
|
|
59
55
|
|
|
60
|
-
var _useAssistant = (0, _AssistantProvider.useAssistant)(),
|
|
61
|
-
onAssistantExecute = _useAssistant.onAssistantExecute;
|
|
62
|
-
|
|
63
|
-
var navigate = (0, _reactRouterDom.useNavigate)();
|
|
64
56
|
var searchRef = (0, _react.useRef)();
|
|
65
57
|
var listRef = (0, _react.useRef)();
|
|
66
58
|
|
|
67
|
-
var handleClick = function handleClick() {
|
|
68
|
-
if (!(0, _helpers.isAssistantEnabled)()) return;
|
|
69
|
-
var conversationId = (0, _helpers.makeConversationId)();
|
|
70
|
-
onAssistantExecute({
|
|
71
|
-
value: value,
|
|
72
|
-
conversationId: conversationId
|
|
73
|
-
});
|
|
74
|
-
navigate("assistant/".concat(conversationId)); // setTimeout usefull to prevent the field from emptying before the route is changed
|
|
75
|
-
// works because the modal appears on top of the view that carries the input and not instead of it.
|
|
76
|
-
|
|
77
|
-
setTimeout(function () {
|
|
78
|
-
onClear();
|
|
79
|
-
}, 100);
|
|
80
|
-
};
|
|
81
|
-
|
|
82
59
|
var handleKeyDown = function handleKeyDown(ev) {
|
|
83
60
|
var _listRef$current;
|
|
84
61
|
|
|
@@ -116,13 +93,12 @@ var SearchBarDesktop = function SearchBarDesktop(_ref) {
|
|
|
116
93
|
if (ev.key === 'Enter') {
|
|
117
94
|
ev.preventDefault();
|
|
118
95
|
|
|
119
|
-
if (selectedIndex) {
|
|
120
|
-
var _results;
|
|
96
|
+
if (selectedIndex !== undefined) {
|
|
97
|
+
var _results$selectedInde;
|
|
121
98
|
|
|
122
|
-
var onClickFn =
|
|
99
|
+
var onClickFn = results === null || results === void 0 ? void 0 : (_results$selectedInde = results[selectedIndex]) === null || _results$selectedInde === void 0 ? void 0 : _results$selectedInde.onClick;
|
|
100
|
+
onClear();
|
|
123
101
|
onClickFn();
|
|
124
|
-
} else if (value !== '') {
|
|
125
|
-
handleClick();
|
|
126
102
|
}
|
|
127
103
|
}
|
|
128
104
|
};
|
|
@@ -147,10 +123,9 @@ var SearchBarDesktop = function SearchBarDesktop(_ref) {
|
|
|
147
123
|
componentsProps: {
|
|
148
124
|
inputBase: {
|
|
149
125
|
onKeyDown: handleKeyDown,
|
|
150
|
-
endAdornment: (0, _helpers.isAssistantEnabled)()
|
|
151
|
-
onClick: handleClick,
|
|
126
|
+
endAdornment: (0, _helpers.isAssistantEnabled)() && /*#__PURE__*/_react.default.createElement(_AssistantButton.AssistantButton, {
|
|
152
127
|
size: size
|
|
153
|
-
})
|
|
128
|
+
})
|
|
154
129
|
}
|
|
155
130
|
},
|
|
156
131
|
disabledClear: true,
|
|
@@ -160,7 +135,7 @@ var SearchBarDesktop = function SearchBarDesktop(_ref) {
|
|
|
160
135
|
}), searchValue && /*#__PURE__*/_react.default.createElement(_ResultMenu.default, {
|
|
161
136
|
listRef: listRef,
|
|
162
137
|
anchorRef: searchRef,
|
|
163
|
-
|
|
138
|
+
onClear: onClear
|
|
164
139
|
})));
|
|
165
140
|
};
|
|
166
141
|
|
|
@@ -7,20 +7,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports.default = void 0;
|
|
9
9
|
|
|
10
|
-
var _react =
|
|
10
|
+
var _react = _interopRequireDefault(require("react"));
|
|
11
11
|
|
|
12
12
|
var _SearchBar = _interopRequireDefault(require("cozy-ui/transpiled/react/SearchBar"));
|
|
13
13
|
|
|
14
|
-
var _useEventListener = _interopRequireDefault(require("cozy-ui/transpiled/react/hooks/useEventListener"));
|
|
15
|
-
|
|
16
|
-
var _SuggestionsPlaceholder = _interopRequireDefault(require("./SuggestionsPlaceholder"));
|
|
17
|
-
|
|
18
|
-
var _helpers = require("../helpers");
|
|
19
|
-
|
|
20
|
-
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); }
|
|
21
|
-
|
|
22
|
-
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; }
|
|
23
|
-
|
|
24
14
|
var styles = {
|
|
25
15
|
"conversationBar": "styles__conversationBar___2J-Us",
|
|
26
16
|
"conversationBar-input": "styles__conversationBar-input___2DfdZ"
|
|
@@ -30,36 +20,22 @@ var SearchBarMobile = function SearchBarMobile(_ref) {
|
|
|
30
20
|
var value = _ref.value,
|
|
31
21
|
onClear = _ref.onClear,
|
|
32
22
|
onChange = _ref.onChange;
|
|
33
|
-
var inputRef = (0, _react.useRef)(); // to adjust input height for multiline when typing in it
|
|
34
|
-
|
|
35
|
-
(0, _useEventListener.default)(inputRef.current, 'input', function () {
|
|
36
|
-
inputRef.current.style.height = 'auto'; // to resize input when emptying it
|
|
37
|
-
|
|
38
|
-
inputRef.current.style.height = "".concat(inputRef.current.scrollHeight, "px");
|
|
39
|
-
});
|
|
40
23
|
|
|
41
24
|
var handleClear = function handleClear() {
|
|
42
25
|
onClear();
|
|
43
|
-
inputRef.current.style.height = 'auto';
|
|
44
26
|
};
|
|
45
27
|
|
|
46
28
|
return /*#__PURE__*/_react.default.createElement(_SearchBar.default, {
|
|
47
29
|
className: styles['conversationBar'],
|
|
48
30
|
size: "auto",
|
|
49
31
|
icon: null,
|
|
50
|
-
placeholder: (0, _helpers.isAssistantEnabled)() ? ' ' : undefined // if assistant enabled, we set a blank space because we want only the SuggestionsPlaceholder below
|
|
51
|
-
,
|
|
52
32
|
value: value,
|
|
53
33
|
componentsProps: {
|
|
54
34
|
inputBase: {
|
|
55
35
|
inputProps: {
|
|
56
36
|
className: styles['conversationBar-input']
|
|
57
37
|
},
|
|
58
|
-
|
|
59
|
-
autoFocus: true,
|
|
60
|
-
rows: 1,
|
|
61
|
-
multiline: true,
|
|
62
|
-
startAdornment: (0, _helpers.isAssistantEnabled)() && !value && /*#__PURE__*/_react.default.createElement(_SuggestionsPlaceholder.default, null)
|
|
38
|
+
autoFocus: true
|
|
63
39
|
}
|
|
64
40
|
},
|
|
65
41
|
onChange: onChange,
|
|
@@ -7,6 +7,6 @@ export function getIconForSearchResult(searchResult: any): {
|
|
|
7
7
|
component: any;
|
|
8
8
|
app?: undefined;
|
|
9
9
|
};
|
|
10
|
-
export function getDriveMimeTypeIcon(
|
|
10
|
+
export function getDriveMimeTypeIcon(file: import("cozy-client/types/types").IOCozyFile, { isEncrypted }?: {
|
|
11
11
|
isEncrypted?: boolean | undefined;
|
|
12
12
|
} | undefined): import("react").ReactNode;
|
|
@@ -9,6 +9,8 @@ exports.getIconForSearchResult = exports.getDriveMimeTypeIcon = void 0;
|
|
|
9
9
|
|
|
10
10
|
var _get = _interopRequireDefault(require("lodash/get"));
|
|
11
11
|
|
|
12
|
+
var _file = require("cozy-client/dist/models/file");
|
|
13
|
+
|
|
12
14
|
var _Contacts = _interopRequireDefault(require("cozy-ui/transpiled/react/Icons/Contacts"));
|
|
13
15
|
|
|
14
16
|
var _FileTypeAudio = _interopRequireDefault(require("cozy-ui/transpiled/react/Icons/FileTypeAudio"));
|
|
@@ -37,7 +39,9 @@ var _FileTypeVideo = _interopRequireDefault(require("cozy-ui/transpiled/react/Ic
|
|
|
37
39
|
|
|
38
40
|
var _FileTypeZip = _interopRequireDefault(require("cozy-ui/transpiled/react/Icons/FileTypeZip"));
|
|
39
41
|
|
|
40
|
-
var
|
|
42
|
+
var _DocsIcon = _interopRequireDefault(require("./Icons/DocsIcon"));
|
|
43
|
+
|
|
44
|
+
var _EncryptedFolderIcon = _interopRequireDefault(require("./Icons/EncryptedFolderIcon"));
|
|
41
45
|
|
|
42
46
|
var _getFileMimetype = require("./getFileMimetype");
|
|
43
47
|
|
|
@@ -59,7 +63,7 @@ var getIconForSearchResult = function getIconForSearchResult(searchResult) {
|
|
|
59
63
|
if (searchResult.slug === 'drive') {
|
|
60
64
|
return {
|
|
61
65
|
type: 'component',
|
|
62
|
-
component: getDriveMimeTypeIcon(searchResult.doc
|
|
66
|
+
component: getDriveMimeTypeIcon(searchResult.doc)
|
|
63
67
|
};
|
|
64
68
|
}
|
|
65
69
|
|
|
@@ -82,9 +86,7 @@ var getIconForSearchResult = function getIconForSearchResult(searchResult) {
|
|
|
82
86
|
*
|
|
83
87
|
* See source: https://github.com/cozy/cozy-drive/blob/fbe2df67199683b23a40f476ccdacb00ee027459/src/lib/getMimeTypeIcon.js
|
|
84
88
|
*
|
|
85
|
-
* @param {
|
|
86
|
-
* @param {string} name - The name of the file.
|
|
87
|
-
* @param {string} mime - The mime type of the file.
|
|
89
|
+
* @param {import('cozy-client/types/types').IOCozyFile} file - The io.cozy.files .
|
|
88
90
|
* @param {Object} [options] - Additional options.
|
|
89
91
|
* @param {boolean} [options.isEncrypted] - Indicates whether the file is encrypted. Default is false.
|
|
90
92
|
* @returns {import('react').ReactNode} - The icon corresponding to the file's mime type.
|
|
@@ -93,19 +95,25 @@ var getIconForSearchResult = function getIconForSearchResult(searchResult) {
|
|
|
93
95
|
|
|
94
96
|
exports.getIconForSearchResult = getIconForSearchResult;
|
|
95
97
|
|
|
96
|
-
var getDriveMimeTypeIcon = function getDriveMimeTypeIcon(
|
|
97
|
-
var _ref = arguments.length >
|
|
98
|
+
var getDriveMimeTypeIcon = function getDriveMimeTypeIcon(file) {
|
|
99
|
+
var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
|
|
98
100
|
_ref$isEncrypted = _ref.isEncrypted,
|
|
99
101
|
isEncrypted = _ref$isEncrypted === void 0 ? false : _ref$isEncrypted;
|
|
100
102
|
|
|
103
|
+
var isDirectory = file.type === 'directory';
|
|
104
|
+
var name = file.name,
|
|
105
|
+
mime = file.mime;
|
|
106
|
+
|
|
101
107
|
if (isEncrypted) {
|
|
102
108
|
return _EncryptedFolderIcon.default;
|
|
103
109
|
}
|
|
104
110
|
|
|
105
111
|
if (isDirectory) {
|
|
106
112
|
return _FileTypeFolder.default;
|
|
107
|
-
} else if (
|
|
113
|
+
} else if ((0, _file.isNote)(file)) {
|
|
108
114
|
return _FileTypeNote.default;
|
|
115
|
+
} else if ((0, _file.isDocs)(file)) {
|
|
116
|
+
return _DocsIcon.default;
|
|
109
117
|
} else {
|
|
110
118
|
var iconsByMimeType = {
|
|
111
119
|
audio: _FileTypeAudio.default,
|
|
@@ -15,6 +15,10 @@ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/
|
|
|
15
15
|
|
|
16
16
|
var _react = require("react");
|
|
17
17
|
|
|
18
|
+
var _reactRouterDom = require("react-router-dom");
|
|
19
|
+
|
|
20
|
+
var _cozyClient = require("cozy-client");
|
|
21
|
+
|
|
18
22
|
var _cozyDataproxyLib = require("cozy-dataproxy-lib");
|
|
19
23
|
|
|
20
24
|
var _cozyMinilog = _interopRequireDefault(require("cozy-minilog"));
|
|
@@ -96,6 +100,9 @@ var searchWithRetry = /*#__PURE__*/function () {
|
|
|
96
100
|
}();
|
|
97
101
|
|
|
98
102
|
var useFetchResult = function useFetchResult(searchValue) {
|
|
103
|
+
var client = (0, _cozyClient.useClient)();
|
|
104
|
+
var navigate = (0, _reactRouterDom.useNavigate)();
|
|
105
|
+
|
|
99
106
|
var _useState = (0, _react.useState)({
|
|
100
107
|
isLoading: true,
|
|
101
108
|
results: null,
|
|
@@ -143,11 +150,22 @@ var useFetchResult = function useFetchResult(searchValue) {
|
|
|
143
150
|
id: r.doc._id,
|
|
144
151
|
icon: icon,
|
|
145
152
|
slug: r.slug,
|
|
153
|
+
url: r.url,
|
|
146
154
|
secondaryUrl: r.secondaryUrl,
|
|
147
155
|
primary: r.title,
|
|
148
156
|
secondary: r.subTitle,
|
|
149
157
|
onClick: function onClick() {
|
|
150
|
-
|
|
158
|
+
if (r.slug === client.appMetadata.slug) {
|
|
159
|
+
try {
|
|
160
|
+
var url = new URL(r.url);
|
|
161
|
+
var hash = url.hash.replace('#', '');
|
|
162
|
+
navigate(hash);
|
|
163
|
+
} catch (_unused) {
|
|
164
|
+
window.open(r.url);
|
|
165
|
+
}
|
|
166
|
+
} else {
|
|
167
|
+
window.open(r.url);
|
|
168
|
+
}
|
|
151
169
|
}
|
|
152
170
|
};
|
|
153
171
|
});
|
|
@@ -7,6 +7,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports.default = void 0;
|
|
9
9
|
|
|
10
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
|
+
|
|
10
12
|
var _react = _interopRequireDefault(require("react"));
|
|
11
13
|
|
|
12
14
|
var _reactRouterDom = require("react-router-dom");
|
|
@@ -36,11 +38,25 @@ var AssistantDialog = function AssistantDialog() {
|
|
|
36
38
|
|
|
37
39
|
var navigate = (0, _reactRouterDom.useNavigate)();
|
|
38
40
|
|
|
41
|
+
var _useSearchParams = (0, _reactRouterDom.useSearchParams)(),
|
|
42
|
+
_useSearchParams2 = (0, _slicedToArray2.default)(_useSearchParams, 1),
|
|
43
|
+
searchParams = _useSearchParams2[0];
|
|
44
|
+
|
|
39
45
|
var _useParams = (0, _reactRouterDom.useParams)(),
|
|
40
46
|
conversationId = _useParams.conversationId;
|
|
41
47
|
|
|
42
48
|
var onClose = function onClose() {
|
|
43
|
-
|
|
49
|
+
try {
|
|
50
|
+
var returnPath = searchParams.get('returnPath');
|
|
51
|
+
|
|
52
|
+
if (returnPath) {
|
|
53
|
+
navigate(returnPath);
|
|
54
|
+
} else {
|
|
55
|
+
navigate('..');
|
|
56
|
+
}
|
|
57
|
+
} catch (_unused) {
|
|
58
|
+
navigate('..');
|
|
59
|
+
}
|
|
44
60
|
};
|
|
45
61
|
|
|
46
62
|
return /*#__PURE__*/_react.default.createElement(_CozyDialogs.FixedDialog, {
|
|
@@ -7,6 +7,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports.default = void 0;
|
|
9
9
|
|
|
10
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
|
+
|
|
10
12
|
var _react = _interopRequireDefault(require("react"));
|
|
11
13
|
|
|
12
14
|
var _reactRouterDom = require("react-router-dom");
|
|
@@ -19,7 +21,7 @@ var _useExtendI18n = _interopRequireDefault(require("cozy-ui/transpiled/react/pr
|
|
|
19
21
|
|
|
20
22
|
var _locales = require("../../locales");
|
|
21
23
|
|
|
22
|
-
var _AssistantProvider =
|
|
24
|
+
var _AssistantProvider = _interopRequireDefault(require("../AssistantProvider"));
|
|
23
25
|
|
|
24
26
|
var _ResultMenuContent = _interopRequireDefault(require("../ResultMenu/ResultMenuContent"));
|
|
25
27
|
|
|
@@ -27,38 +29,33 @@ var _SearchBar = _interopRequireDefault(require("../Search/SearchBar"));
|
|
|
27
29
|
|
|
28
30
|
var _SearchProvider = _interopRequireWildcard(require("../Search/SearchProvider"));
|
|
29
31
|
|
|
30
|
-
var _SearchSubmitFab = _interopRequireDefault(require("../Search/SearchSubmitFab"));
|
|
31
|
-
|
|
32
|
-
var _helpers = require("../helpers");
|
|
33
|
-
|
|
34
32
|
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); }
|
|
35
33
|
|
|
36
34
|
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; }
|
|
37
35
|
|
|
38
36
|
var SearchDialog = function SearchDialog() {
|
|
39
37
|
(0, _useExtendI18n.default)(_locales.locales);
|
|
40
|
-
|
|
41
|
-
var _useAssistant = (0, _AssistantProvider.useAssistant)(),
|
|
42
|
-
onAssistantExecute = _useAssistant.onAssistantExecute;
|
|
43
|
-
|
|
44
38
|
var navigate = (0, _reactRouterDom.useNavigate)();
|
|
45
39
|
|
|
40
|
+
var _useSearchParams = (0, _reactRouterDom.useSearchParams)(),
|
|
41
|
+
_useSearchParams2 = (0, _slicedToArray2.default)(_useSearchParams, 1),
|
|
42
|
+
searchParams = _useSearchParams2[0];
|
|
43
|
+
|
|
46
44
|
var _useSearch = (0, _SearchProvider.useSearch)(),
|
|
47
45
|
searchValue = _useSearch.searchValue;
|
|
48
46
|
|
|
49
|
-
var
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
value: searchValue,
|
|
53
|
-
conversationId: conversationId
|
|
54
|
-
});
|
|
55
|
-
navigate("../assistant/".concat(conversationId), {
|
|
56
|
-
replace: true
|
|
57
|
-
});
|
|
58
|
-
};
|
|
47
|
+
var onClose = function onClose() {
|
|
48
|
+
try {
|
|
49
|
+
var returnPath = searchParams.get('returnPath');
|
|
59
50
|
|
|
60
|
-
|
|
61
|
-
|
|
51
|
+
if (returnPath) {
|
|
52
|
+
navigate(returnPath);
|
|
53
|
+
} else {
|
|
54
|
+
navigate('..');
|
|
55
|
+
}
|
|
56
|
+
} catch (_unused) {
|
|
57
|
+
navigate('..');
|
|
58
|
+
}
|
|
62
59
|
};
|
|
63
60
|
|
|
64
61
|
return /*#__PURE__*/_react.default.createElement(_CozyDialogs.FixedDialog, {
|
|
@@ -76,13 +73,8 @@ var SearchDialog = function SearchDialog() {
|
|
|
76
73
|
}
|
|
77
74
|
},
|
|
78
75
|
title: /*#__PURE__*/_react.default.createElement(_SearchBar.default, null),
|
|
79
|
-
content:
|
|
80
|
-
|
|
81
|
-
}), (0, _helpers.isAssistantEnabled)() && /*#__PURE__*/_react.default.createElement(_SearchSubmitFab.default, {
|
|
82
|
-
searchValue: searchValue,
|
|
83
|
-
onClick: handleClick
|
|
84
|
-
})),
|
|
85
|
-
onClose: handleClose
|
|
76
|
+
content: searchValue && /*#__PURE__*/_react.default.createElement(_ResultMenuContent.default, null),
|
|
77
|
+
onClose: onClose
|
|
86
78
|
});
|
|
87
79
|
};
|
|
88
80
|
|
package/dist/stylesheet.css
CHANGED
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "cozy-search",
|
|
3
3
|
"description": "UI components about search bar and IA assistant",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.8.0",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Cozy Cloud",
|
|
7
7
|
"url": "https://github.com/cozy"
|
|
@@ -87,5 +87,5 @@
|
|
|
87
87
|
"lint": "cd .. && yarn eslint --ext js,jsx,ts packages/cozy-search"
|
|
88
88
|
},
|
|
89
89
|
"types": "dist/index.d.ts",
|
|
90
|
-
"gitHead": "
|
|
90
|
+
"gitHead": "9cf6ca284745f747492e9cd42d2eb96c5cc9e900"
|
|
91
91
|
}
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.default = void 0;
|
|
9
|
-
|
|
10
|
-
var _react = _interopRequireDefault(require("react"));
|
|
11
|
-
|
|
12
|
-
var _cozyDeviceHelper = require("cozy-device-helper");
|
|
13
|
-
|
|
14
|
-
var _Fab = _interopRequireDefault(require("cozy-ui/transpiled/react/Fab"));
|
|
15
|
-
|
|
16
|
-
var _Icon = _interopRequireDefault(require("cozy-ui/transpiled/react/Icon"));
|
|
17
|
-
|
|
18
|
-
var _Paperplane = _interopRequireDefault(require("cozy-ui/transpiled/react/Icons/Paperplane"));
|
|
19
|
-
|
|
20
|
-
var _I18n = require("cozy-ui/transpiled/react/providers/I18n");
|
|
21
|
-
|
|
22
|
-
var _styles = require("cozy-ui/transpiled/react/styles");
|
|
23
|
-
|
|
24
|
-
var useStyles = (0, _styles.makeStyles)({
|
|
25
|
-
root: {
|
|
26
|
-
right: '1rem',
|
|
27
|
-
bottom: '1rem',
|
|
28
|
-
position: 'fixed',
|
|
29
|
-
marginBottom: function marginBottom(_ref) {
|
|
30
|
-
var immersive = _ref.immersive;
|
|
31
|
-
return immersive ? 'var(--flagship-bottom-height)' : 0;
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
});
|
|
35
|
-
|
|
36
|
-
var SearchSubmitFab = function SearchSubmitFab(_ref2) {
|
|
37
|
-
var searchValue = _ref2.searchValue,
|
|
38
|
-
onClick = _ref2.onClick;
|
|
39
|
-
|
|
40
|
-
var _useI18n = (0, _I18n.useI18n)(),
|
|
41
|
-
t = _useI18n.t;
|
|
42
|
-
|
|
43
|
-
var styles = useStyles({
|
|
44
|
-
immersive: (0, _cozyDeviceHelper.getFlagshipMetadata)().immersive
|
|
45
|
-
});
|
|
46
|
-
return /*#__PURE__*/_react.default.createElement(_Fab.default, {
|
|
47
|
-
"aria-label": t('assistant.search.send'),
|
|
48
|
-
color: "primary",
|
|
49
|
-
size: "medium",
|
|
50
|
-
classes: styles,
|
|
51
|
-
disabled: !searchValue,
|
|
52
|
-
onClick: onClick
|
|
53
|
-
}, /*#__PURE__*/_react.default.createElement(_Icon.default, {
|
|
54
|
-
icon: _Paperplane.default
|
|
55
|
-
}));
|
|
56
|
-
};
|
|
57
|
-
|
|
58
|
-
var _default = SearchSubmitFab;
|
|
59
|
-
exports.default = _default;
|
|
File without changes
|
|
File without changes
|