@bigbinary/neeto-molecules 4.1.0-beta1 → 4.1.1
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/AuditLogs.js +193 -63
- package/dist/AuditLogs.js.map +1 -1
- package/dist/Breadcrumbs.js +40 -24
- package/dist/Breadcrumbs.js.map +1 -1
- package/dist/BrowserSupport.js +17 -8
- package/dist/BrowserSupport.js.map +1 -1
- package/dist/Builder.js +16 -23
- package/dist/Builder.js.map +1 -1
- package/dist/CalendarView.js +35 -11
- package/dist/CalendarView.js.map +1 -1
- package/dist/CardLayout.js +0 -1
- package/dist/CardLayout.js.map +1 -1
- package/dist/{Chevron-Dtxc2piW.js → Chevron-DOz710Ei.js} +23 -20
- package/dist/Chevron-DOz710Ei.js.map +1 -0
- package/dist/Codeblock.js +3 -5
- package/dist/Codeblock.js.map +1 -1
- package/dist/{Columns-CsOYfWFt.js → Columns-D51hN86M.js} +8 -9
- package/dist/Columns-D51hN86M.js.map +1 -0
- package/dist/Columns.js +1 -1
- package/dist/ConfigurePageSidebar.js +3 -3
- package/dist/ConfigurePageSidebar.js.map +1 -1
- package/dist/ConfirmationModal.js +2 -2
- package/dist/ConfirmationModal.js.map +1 -1
- package/dist/CopyToClipboardButton.js +12 -7
- package/dist/CopyToClipboardButton.js.map +1 -1
- package/dist/DeleteArchiveModal.js +5 -7
- package/dist/DeleteArchiveModal.js.map +1 -1
- package/dist/DeviceIncompatibilityMessage.js +0 -1
- package/dist/DeviceIncompatibilityMessage.js.map +1 -1
- package/dist/DocumentEditor.js +3 -3
- package/dist/DocumentEditor.js.map +1 -1
- package/dist/DynamicVariables.js +5 -7
- package/dist/DynamicVariables.js.map +1 -1
- package/dist/EmailForm.js +107 -124
- package/dist/EmailForm.js.map +1 -1
- package/dist/EmailPreview.js +90 -73
- package/dist/EmailPreview.js.map +1 -1
- package/dist/EmojiPicker.js +6 -1
- package/dist/EmojiPicker.js.map +1 -1
- package/dist/EmojiReactions.js +1 -1
- package/dist/EmojiReactions.js.map +1 -1
- package/dist/ErrorPage.js +7 -5
- package/dist/ErrorPage.js.map +1 -1
- package/dist/FileUpload.js +14 -14
- package/dist/FileUpload.js.map +1 -1
- package/dist/FinderModal.js +61 -74
- package/dist/FinderModal.js.map +1 -1
- package/dist/FloatingActionMenu.js +233 -190
- package/dist/FloatingActionMenu.js.map +1 -1
- package/dist/Header.js +2 -4
- package/dist/Header.js.map +1 -1
- package/dist/HelpPopover.js +2 -6
- package/dist/HelpPopover.js.map +1 -1
- package/dist/IconPicker.js +2 -3
- package/dist/IconPicker.js.map +1 -1
- package/dist/InlineInput.js +6 -2
- package/dist/InlineInput.js.map +1 -1
- package/dist/Insights.js +3 -6
- package/dist/Insights.js.map +1 -1
- package/dist/IntegrationCard.js +10 -12
- package/dist/IntegrationCard.js.map +1 -1
- package/dist/IpRestriction.js +11 -13
- package/dist/IpRestriction.js.map +1 -1
- package/dist/KeyboardShortcuts.js +3 -4
- package/dist/KeyboardShortcuts.js.map +1 -1
- package/dist/LoginPage.js +4 -9
- package/dist/LoginPage.js.map +1 -1
- package/dist/MadeWith.js +1 -2
- package/dist/MadeWith.js.map +1 -1
- package/dist/MenuBar.js +10 -8
- package/dist/MenuBar.js.map +1 -1
- package/dist/Metadata.js +5 -8
- package/dist/Metadata.js.map +1 -1
- package/dist/MobilePreviewHeader.js +1 -1
- package/dist/MobilePreviewHeader.js.map +1 -1
- package/dist/MoreDropdown.js +1 -2
- package/dist/MoreDropdown.js.map +1 -1
- package/dist/NavigationHeader.js +4 -8
- package/dist/NavigationHeader.js.map +1 -1
- package/dist/NeetoWidget.js +2 -3
- package/dist/NeetoWidget.js.map +1 -1
- package/dist/Onboarding.js +2 -10
- package/dist/Onboarding.js.map +1 -1
- package/dist/OptionFields.js +6 -22
- package/dist/OptionFields.js.map +1 -1
- package/dist/PageLoader.js +1 -1
- package/dist/PageLoader.js.map +1 -1
- package/dist/PhoneNumber.js +0 -1
- package/dist/PhoneNumber.js.map +1 -1
- package/dist/ProductEmbed.js +35 -36
- package/dist/ProductEmbed.js.map +1 -1
- package/dist/PublishBlock.js +11 -22
- package/dist/PublishBlock.js.map +1 -1
- package/dist/PublishYourItem.js +2 -2
- package/dist/PublishYourItem.js.map +1 -1
- package/dist/Rename.js +18 -17
- package/dist/Rename.js.map +1 -1
- package/dist/Schedule.js +120 -69
- package/dist/Schedule.js.map +1 -1
- package/dist/SendToFields.js +31 -23
- package/dist/SendToFields.js.map +1 -1
- package/dist/SessionEnvironment.js +2 -8
- package/dist/SessionEnvironment.js.map +1 -1
- package/dist/Settings.js +8 -9
- package/dist/Settings.js.map +1 -1
- package/dist/ShareRecordingPane.js +69 -52
- package/dist/ShareRecordingPane.js.map +1 -1
- package/dist/ShareViaEmail.js +6 -9
- package/dist/ShareViaEmail.js.map +1 -1
- package/dist/ShareViaLink.js +6 -22
- package/dist/ShareViaLink.js.map +1 -1
- package/dist/Sidebar.js +24 -20
- package/dist/Sidebar.js.map +1 -1
- package/dist/StatusDropdown.js +7 -10
- package/dist/StatusDropdown.js.map +1 -1
- package/dist/StickyRibbonsContainer.js +3 -3
- package/dist/StickyRibbonsContainer.js.map +1 -1
- package/dist/SubHeader.js +12 -15
- package/dist/SubHeader.js.map +1 -1
- package/dist/Taxonomy.js +4 -6
- package/dist/Taxonomy.js.map +1 -1
- package/dist/ToggleFeatureCard.js +18 -24
- package/dist/ToggleFeatureCard.js.map +1 -1
- package/dist/VersionHistory.js +1 -3
- package/dist/VersionHistory.js.map +1 -1
- package/dist/cjs/AuditLogs.js +190 -60
- package/dist/cjs/AuditLogs.js.map +1 -1
- package/dist/cjs/Breadcrumbs.js +40 -24
- package/dist/cjs/Breadcrumbs.js.map +1 -1
- package/dist/cjs/BrowserSupport.js +17 -8
- package/dist/cjs/BrowserSupport.js.map +1 -1
- package/dist/cjs/Builder.js +16 -23
- package/dist/cjs/Builder.js.map +1 -1
- package/dist/cjs/CalendarView.js +35 -11
- package/dist/cjs/CalendarView.js.map +1 -1
- package/dist/cjs/CardLayout.js +0 -1
- package/dist/cjs/CardLayout.js.map +1 -1
- package/dist/cjs/{Chevron-DzdbGPJI.js → Chevron-brQURuT5.js} +23 -20
- package/dist/cjs/Chevron-brQURuT5.js.map +1 -0
- package/dist/cjs/Codeblock.js +3 -5
- package/dist/cjs/Codeblock.js.map +1 -1
- package/dist/cjs/{Columns-DHPNrFgq.js → Columns-7xltEL2z.js} +8 -9
- package/dist/cjs/Columns-7xltEL2z.js.map +1 -0
- package/dist/cjs/Columns.js +1 -1
- package/dist/cjs/ConfigurePageSidebar.js +3 -3
- package/dist/cjs/ConfigurePageSidebar.js.map +1 -1
- package/dist/cjs/ConfirmationModal.js +2 -2
- package/dist/cjs/ConfirmationModal.js.map +1 -1
- package/dist/cjs/CopyToClipboardButton.js +11 -6
- package/dist/cjs/CopyToClipboardButton.js.map +1 -1
- package/dist/cjs/DeleteArchiveModal.js +5 -7
- package/dist/cjs/DeleteArchiveModal.js.map +1 -1
- package/dist/cjs/DeviceIncompatibilityMessage.js +0 -1
- package/dist/cjs/DeviceIncompatibilityMessage.js.map +1 -1
- package/dist/cjs/DocumentEditor.js +3 -3
- package/dist/cjs/DocumentEditor.js.map +1 -1
- package/dist/cjs/DynamicVariables.js +5 -7
- package/dist/cjs/DynamicVariables.js.map +1 -1
- package/dist/cjs/EmailForm.js +105 -122
- package/dist/cjs/EmailForm.js.map +1 -1
- package/dist/cjs/EmailPreview.js +108 -73
- package/dist/cjs/EmailPreview.js.map +1 -1
- package/dist/cjs/EmojiPicker.js +6 -1
- package/dist/cjs/EmojiPicker.js.map +1 -1
- package/dist/cjs/EmojiReactions.js +1 -1
- package/dist/cjs/EmojiReactions.js.map +1 -1
- package/dist/cjs/ErrorPage.js +7 -5
- package/dist/cjs/ErrorPage.js.map +1 -1
- package/dist/cjs/FileUpload.js +13 -13
- package/dist/cjs/FileUpload.js.map +1 -1
- package/dist/cjs/FinderModal.js +59 -72
- package/dist/cjs/FinderModal.js.map +1 -1
- package/dist/cjs/FloatingActionMenu.js +232 -189
- package/dist/cjs/FloatingActionMenu.js.map +1 -1
- package/dist/cjs/Header.js +2 -4
- package/dist/cjs/Header.js.map +1 -1
- package/dist/cjs/HelpPopover.js +2 -6
- package/dist/cjs/HelpPopover.js.map +1 -1
- package/dist/cjs/IconPicker.js +2 -3
- package/dist/cjs/IconPicker.js.map +1 -1
- package/dist/cjs/InlineInput.js +6 -2
- package/dist/cjs/InlineInput.js.map +1 -1
- package/dist/cjs/Insights.js +3 -6
- package/dist/cjs/Insights.js.map +1 -1
- package/dist/cjs/IntegrationCard.js +9 -11
- package/dist/cjs/IntegrationCard.js.map +1 -1
- package/dist/cjs/IpRestriction.js +11 -13
- package/dist/cjs/IpRestriction.js.map +1 -1
- package/dist/cjs/KeyboardShortcuts.js +3 -4
- package/dist/cjs/KeyboardShortcuts.js.map +1 -1
- package/dist/cjs/LoginPage.js +4 -9
- package/dist/cjs/LoginPage.js.map +1 -1
- package/dist/cjs/MadeWith.js +1 -2
- package/dist/cjs/MadeWith.js.map +1 -1
- package/dist/cjs/MenuBar.js +10 -8
- package/dist/cjs/MenuBar.js.map +1 -1
- package/dist/cjs/Metadata.js +5 -8
- package/dist/cjs/Metadata.js.map +1 -1
- package/dist/cjs/MobilePreviewHeader.js +1 -1
- package/dist/cjs/MobilePreviewHeader.js.map +1 -1
- package/dist/cjs/MoreDropdown.js +1 -2
- package/dist/cjs/MoreDropdown.js.map +1 -1
- package/dist/cjs/NavigationHeader.js +4 -8
- package/dist/cjs/NavigationHeader.js.map +1 -1
- package/dist/cjs/NeetoWidget.js +2 -3
- package/dist/cjs/NeetoWidget.js.map +1 -1
- package/dist/cjs/Onboarding.js +2 -10
- package/dist/cjs/Onboarding.js.map +1 -1
- package/dist/cjs/OptionFields.js +6 -22
- package/dist/cjs/OptionFields.js.map +1 -1
- package/dist/cjs/PageLoader.js +1 -1
- package/dist/cjs/PageLoader.js.map +1 -1
- package/dist/cjs/PhoneNumber.js +0 -1
- package/dist/cjs/PhoneNumber.js.map +1 -1
- package/dist/cjs/ProductEmbed.js +35 -36
- package/dist/cjs/ProductEmbed.js.map +1 -1
- package/dist/cjs/PublishBlock.js +11 -22
- package/dist/cjs/PublishBlock.js.map +1 -1
- package/dist/cjs/PublishYourItem.js +2 -2
- package/dist/cjs/PublishYourItem.js.map +1 -1
- package/dist/cjs/Rename.js +18 -17
- package/dist/cjs/Rename.js.map +1 -1
- package/dist/cjs/Schedule.js +119 -68
- package/dist/cjs/Schedule.js.map +1 -1
- package/dist/cjs/SendToFields.js +31 -23
- package/dist/cjs/SendToFields.js.map +1 -1
- package/dist/cjs/SessionEnvironment.js +2 -8
- package/dist/cjs/SessionEnvironment.js.map +1 -1
- package/dist/cjs/Settings.js +8 -9
- package/dist/cjs/Settings.js.map +1 -1
- package/dist/cjs/ShareRecordingPane.js +68 -51
- package/dist/cjs/ShareRecordingPane.js.map +1 -1
- package/dist/cjs/ShareViaEmail.js +6 -9
- package/dist/cjs/ShareViaEmail.js.map +1 -1
- package/dist/cjs/ShareViaLink.js +6 -22
- package/dist/cjs/ShareViaLink.js.map +1 -1
- package/dist/cjs/Sidebar.js +24 -20
- package/dist/cjs/Sidebar.js.map +1 -1
- package/dist/cjs/StatusDropdown.js +6 -9
- package/dist/cjs/StatusDropdown.js.map +1 -1
- package/dist/cjs/StickyRibbonsContainer.js +3 -3
- package/dist/cjs/StickyRibbonsContainer.js.map +1 -1
- package/dist/cjs/SubHeader.js +12 -15
- package/dist/cjs/SubHeader.js.map +1 -1
- package/dist/cjs/Taxonomy.js +4 -6
- package/dist/cjs/Taxonomy.js.map +1 -1
- package/dist/cjs/ToggleFeatureCard.js +17 -23
- package/dist/cjs/ToggleFeatureCard.js.map +1 -1
- package/dist/cjs/VersionHistory.js +1 -3
- package/dist/cjs/VersionHistory.js.map +1 -1
- package/package.json +5 -5
- package/src/translations/ar.json +52 -14
- package/src/translations/bg.json +52 -14
- package/src/translations/ca.json +53 -15
- package/src/translations/cs.json +52 -14
- package/src/translations/da.json +52 -14
- package/src/translations/de.json +52 -14
- package/src/translations/en.json +51 -15
- package/src/translations/es-MX.json +53 -15
- package/src/translations/es.json +52 -14
- package/src/translations/et.json +52 -14
- package/src/translations/fi.json +53 -15
- package/src/translations/fil.json +53 -15
- package/src/translations/fr.json +52 -14
- package/src/translations/he.json +52 -14
- package/src/translations/hi.json +52 -14
- package/src/translations/hr.json +53 -15
- package/src/translations/id.json +53 -15
- package/src/translations/it.json +53 -15
- package/src/translations/ja.json +53 -15
- package/src/translations/ko.json +52 -14
- package/src/translations/nl.json +53 -15
- package/src/translations/pl.json +53 -15
- package/src/translations/pt-BR.json +53 -15
- package/src/translations/pt.json +53 -15
- package/src/translations/ro.json +53 -15
- package/src/translations/ru.json +51 -13
- package/src/translations/sk.json +52 -14
- package/src/translations/sl.json +52 -14
- package/src/translations/sv.json +53 -15
- package/src/translations/th.json +53 -15
- package/src/translations/tr.json +53 -15
- package/src/translations/uk.json +51 -13
- package/src/translations/vi.json +50 -12
- package/src/translations/zh-CN.json +50 -12
- package/src/translations/zh-TW.json +50 -12
- package/types/EmailForm.d.ts +5 -3
- package/types/FinderModal.d.ts +0 -8
- package/types/IntegrationCard.d.ts +1 -1
- package/types/Rename.d.ts +2 -0
- package/types/Settings.d.ts +2 -2
- package/types/ShareViaLink.d.ts +2 -2
- package/types/SubHeader.d.ts +2 -2
- package/types/ToggleFeatureCard.d.ts +3 -3
- package/dist/Chevron-Dtxc2piW.js.map +0 -1
- package/dist/Columns-CsOYfWFt.js.map +0 -1
- package/dist/cjs/Chevron-DzdbGPJI.js.map +0 -1
- package/dist/cjs/Columns-DHPNrFgq.js.map +0 -1
package/dist/FinderModal.js
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
2
2
|
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
|
|
3
3
|
import React__default, { useRef } from 'react';
|
|
4
|
-
import { isNotPresent, humanize, noop } from '@bigbinary/neeto-cist';
|
|
4
|
+
import { isNotEmpty, isNotPresent, humanize, noop } from '@bigbinary/neeto-cist';
|
|
5
5
|
import useHotkeys from '@bigbinary/neeto-hotkeys';
|
|
6
6
|
import Modal from '@bigbinary/neetoui/Modal';
|
|
7
|
-
import {
|
|
8
|
-
import classnames from 'classnames';
|
|
7
|
+
import { isEmpty, prop } from 'ramda';
|
|
9
8
|
import Typography from '@bigbinary/neetoui/Typography';
|
|
10
9
|
import NoData from '@bigbinary/neetoui/NoData';
|
|
11
10
|
import Tag from '@bigbinary/neetoui/Tag';
|
|
@@ -29,22 +28,20 @@ import '@bigbinary/neetoui/Input';
|
|
|
29
28
|
import '@bigbinary/neeto-commons-frontend/utils';
|
|
30
29
|
|
|
31
30
|
var _excluded$1 = ["to", "children"];
|
|
32
|
-
function ownKeys$
|
|
33
|
-
function _objectSpread$
|
|
31
|
+
function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
32
|
+
function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
34
33
|
var Link = function Link(_ref) {
|
|
35
34
|
var to = _ref.to,
|
|
36
35
|
children = _ref.children,
|
|
37
36
|
rest = _objectWithoutProperties(_ref, _excluded$1);
|
|
38
37
|
var url = new URL(to);
|
|
39
38
|
url.host = "";
|
|
40
|
-
return /*#__PURE__*/jsx(Link$1, _objectSpread$
|
|
39
|
+
return /*#__PURE__*/jsx(Link$1, _objectSpread$1(_objectSpread$1({}, rest), {}, {
|
|
41
40
|
to: "".concat(url.pathname).concat(url.search),
|
|
42
41
|
children: children
|
|
43
42
|
}));
|
|
44
43
|
};
|
|
45
44
|
|
|
46
|
-
function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
47
|
-
function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
48
45
|
var minMax = function minMax(number) {
|
|
49
46
|
var max = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : Number.POSITIVE_INFINITY;
|
|
50
47
|
var min = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
|
|
@@ -79,19 +76,6 @@ var filterAndHighlightContent = function filterAndHighlightContent(bodyContent,
|
|
|
79
76
|
}, index);
|
|
80
77
|
});
|
|
81
78
|
};
|
|
82
|
-
var flattenData = function flattenData(data) {
|
|
83
|
-
if (!data) return [];
|
|
84
|
-
if (Array.isArray(data)) return data;
|
|
85
|
-
var result = [];
|
|
86
|
-
Object.keys(data).forEach(function (key) {
|
|
87
|
-
data[key].forEach(function (item) {
|
|
88
|
-
result.push(_objectSpread$1(_objectSpread$1({}, item), {}, {
|
|
89
|
-
category: key
|
|
90
|
-
}));
|
|
91
|
-
});
|
|
92
|
-
});
|
|
93
|
-
return result;
|
|
94
|
-
};
|
|
95
79
|
var createStylePalette = function createStylePalette(values) {
|
|
96
80
|
var assignedStyles = {};
|
|
97
81
|
var styleIndex = 0;
|
|
@@ -108,17 +92,18 @@ var getStyle = createStylePalette(["primary", "info", "success", "secondary", "w
|
|
|
108
92
|
var ModalBody = function ModalBody(_ref) {
|
|
109
93
|
var containerRef = _ref.containerRef,
|
|
110
94
|
data = _ref.data,
|
|
111
|
-
iconComponentMap = _ref.iconComponentMap,
|
|
112
95
|
onClose = _ref.onClose,
|
|
113
96
|
loading = _ref.loading,
|
|
114
97
|
searchTerm = _ref.searchTerm;
|
|
115
98
|
var _useTranslation = useTranslation(),
|
|
116
99
|
t = _useTranslation.t;
|
|
117
|
-
var
|
|
118
|
-
|
|
100
|
+
var categoryGroups = Object.keys(data).filter(function (key) {
|
|
101
|
+
return isNotEmpty(data[key]);
|
|
102
|
+
});
|
|
103
|
+
var isDataEmpty = isNotPresent(data) || isEmpty(categoryGroups);
|
|
119
104
|
if (isDataEmpty && !loading) {
|
|
120
105
|
return /*#__PURE__*/jsx(Modal.Body, {
|
|
121
|
-
className: "neeto-molecules-finder-modal__body flex h-96 items-center justify-center overflow-y-auto px-
|
|
106
|
+
className: "neeto-molecules-finder-modal__body flex h-96 items-center justify-center overflow-y-auto px-3 py-5",
|
|
122
107
|
children: /*#__PURE__*/jsx(NoData, {
|
|
123
108
|
description: t("neetoMolecules.finderModal.noDataDesc"),
|
|
124
109
|
title: t("neetoMolecules.finderModal.noDataTitle")
|
|
@@ -126,50 +111,53 @@ var ModalBody = function ModalBody(_ref) {
|
|
|
126
111
|
});
|
|
127
112
|
}
|
|
128
113
|
return /*#__PURE__*/jsx(Modal.Body, {
|
|
129
|
-
className: "neeto-molecules-finder-modal__body h-96 overflow-y-auto px-
|
|
114
|
+
className: "neeto-molecules-finder-modal__body h-96 overflow-y-auto px-3 py-4",
|
|
130
115
|
children: /*#__PURE__*/jsx("div", {
|
|
131
|
-
className: "flex flex-col
|
|
116
|
+
className: "flex flex-col",
|
|
132
117
|
ref: containerRef,
|
|
133
|
-
children:
|
|
134
|
-
|
|
135
|
-
var
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
118
|
+
children: categoryGroups.map(function (category, categoryIndex) {
|
|
119
|
+
var items = data[category];
|
|
120
|
+
var shouldShowCategoryDivider = categoryIndex < categoryGroups.length - 1;
|
|
121
|
+
return /*#__PURE__*/jsxs("div", {
|
|
122
|
+
children: [items.map(function (item) {
|
|
123
|
+
var nameContent = htmlToText(item.name);
|
|
124
|
+
var bodyContent = htmlToText(item.body);
|
|
125
|
+
var filteredBodyContent = filterAndHighlightContent(bodyContent, searchTerm);
|
|
126
|
+
return /*#__PURE__*/jsx(Link, {
|
|
127
|
+
className: "neeto-molecules-search-result-item hover:neeto-ui-bg-accent-100 focus:neeto-ui-bg-accent-100 neeto-ui-rounded-lg flex w-full cursor-pointer items-center gap-2 px-3 py-2.5 text-xs transition-all duration-300",
|
|
128
|
+
to: item.url,
|
|
129
|
+
onClick: onClose,
|
|
130
|
+
children: /*#__PURE__*/jsxs("div", {
|
|
131
|
+
className: "line-clamp-1 flex flex-col gap-1",
|
|
132
|
+
children: [/*#__PURE__*/jsxs("div", {
|
|
133
|
+
className: "flex items-start gap-2",
|
|
134
|
+
children: [nameContent && /*#__PURE__*/jsx(Typography, {
|
|
135
|
+
className: "neeto-ui-text-black",
|
|
136
|
+
weight: "semibold",
|
|
137
|
+
children: highlightMatch(nameContent, searchTerm)
|
|
138
|
+
}), category && /*#__PURE__*/jsx(Tag, {
|
|
139
|
+
className: "mt-1",
|
|
140
|
+
size: "small",
|
|
141
|
+
style: getStyle(category),
|
|
142
|
+
type: "solid",
|
|
143
|
+
children: humanize(category)
|
|
144
|
+
})]
|
|
145
|
+
}), bodyContent && /*#__PURE__*/jsx(Typography, {
|
|
146
|
+
className: "neeto-ui-text-gray-600 truncate text-xs",
|
|
147
|
+
children: filteredBodyContent || bodyContent
|
|
148
|
+
})]
|
|
149
|
+
})
|
|
150
|
+
}, "".concat(category, "-").concat(item.id));
|
|
151
|
+
}), shouldShowCategoryDivider && /*#__PURE__*/jsx("hr", {
|
|
152
|
+
className: "neeto-ui-border-gray-300 mx-3 my-3 border-t"
|
|
165
153
|
})]
|
|
166
|
-
},
|
|
154
|
+
}, category);
|
|
167
155
|
})
|
|
168
156
|
})
|
|
169
157
|
});
|
|
170
158
|
};
|
|
171
159
|
|
|
172
|
-
var css = ".neeto-molecules-finder-modal__search .neeto-ui-input--naked input{padding-inline-start:4px}.neeto-molecules-finder-modal-backdrop{grid-template-columns:100%}.neeto-molecules-finder-modal-backdrop .neeto-ui-modal__wrapper.neeto-molecules-finder-modal{margin-inline-end:auto;margin-inline-start:auto;max-width:740px;width:100%}.neeto-molecules-finder-matched-tag{background-color:#fbe48f!important}.neeto-molecules-finder-modal__footer{--neeto-ui-modal-footer-bg:rgb(var(--neeto-ui-white))}";
|
|
160
|
+
var css = ".neeto-molecules-finder-modal__search .neeto-ui-input--naked input{padding-inline-start:4px}.neeto-molecules-finder-modal-backdrop{grid-template-columns:100%}.neeto-molecules-finder-modal-backdrop .neeto-ui-modal__wrapper.neeto-molecules-finder-modal{margin-inline-end:auto;margin-inline-start:auto;max-width:740px;width:100%}.neeto-molecules-finder-matched-tag{background-color:#fbe48f!important;border-radius:var(--neeto-ui-rounded-sm);padding:0 .5px 2px}.neeto-molecules-finder-modal__footer{--neeto-ui-modal-footer-bg:rgb(var(--neeto-ui-white))}.neeto-molecules-finder-modal__header{--neeto-ui-input-prefix-suffix-icon-size:1.25rem;--neeto-ui-input-font-size:1rem}.neeto-molecules-finder-modal__body{--neeto-ui-tag-padding-x:0.625rem;--neeto-ui-tag-padding-y:0.125rem}";
|
|
173
161
|
n(css,{});
|
|
174
162
|
|
|
175
163
|
var ModalFooter = function ModalFooter(_ref) {
|
|
@@ -187,10 +175,10 @@ var ModalFooter = function ModalFooter(_ref) {
|
|
|
187
175
|
}, {
|
|
188
176
|
label: t("neetoMolecules.common.actions.move"),
|
|
189
177
|
keys: [/*#__PURE__*/jsx(Up, {
|
|
190
|
-
className: "neeto-ui-text-gray-
|
|
178
|
+
className: "neeto-ui-text-gray-600",
|
|
191
179
|
size: 12
|
|
192
180
|
}, "up"), /*#__PURE__*/jsx(Down, {
|
|
193
|
-
className: "neeto-ui-text-gray-
|
|
181
|
+
className: "neeto-ui-text-gray-600",
|
|
194
182
|
size: 12
|
|
195
183
|
}, "down")],
|
|
196
184
|
isVisible: true
|
|
@@ -200,21 +188,22 @@ var ModalFooter = function ModalFooter(_ref) {
|
|
|
200
188
|
isVisible: true
|
|
201
189
|
}];
|
|
202
190
|
return /*#__PURE__*/jsx(Modal.Footer, {
|
|
203
|
-
className: "neeto-ui-border-gray-300 neeto-molecules-finder-modal__footer border-t px-
|
|
191
|
+
className: "neeto-ui-border-gray-300 neeto-molecules-finder-modal__footer border-t px-6 py-4",
|
|
204
192
|
children: /*#__PURE__*/jsx("div", {
|
|
205
|
-
className: "neeto-ui-text-xxs flex items-center
|
|
193
|
+
className: "neeto-ui-text-xxs flex items-center gap-4",
|
|
206
194
|
children: shortcuts.filter(prop("isVisible")).map(function (_ref2, index) {
|
|
207
195
|
var label = _ref2.label,
|
|
208
196
|
keys = _ref2.keys;
|
|
209
197
|
return /*#__PURE__*/jsxs("div", {
|
|
210
198
|
className: "flex items-center gap-1",
|
|
211
199
|
children: [/*#__PURE__*/jsx(Typography, {
|
|
200
|
+
className: "neeto-ui-text-gray-600",
|
|
212
201
|
component: "span",
|
|
213
202
|
style: "nano",
|
|
214
203
|
children: label
|
|
215
204
|
}), keys.map(function (key, index) {
|
|
216
205
|
return /*#__PURE__*/jsx(Typography, {
|
|
217
|
-
className: "neeto-ui-bg-gray-200 neeto-ui-rounded-sm
|
|
206
|
+
className: "neeto-ui-bg-gray-200 neeto-ui-rounded-sm neeto-ui-text-gray-600 px-1.5 py-1",
|
|
218
207
|
component: "span",
|
|
219
208
|
style: "nano",
|
|
220
209
|
children: key
|
|
@@ -229,16 +218,16 @@ var ModalFooter = function ModalFooter(_ref) {
|
|
|
229
218
|
var ModalHeader = withT(function (_ref) {
|
|
230
219
|
var t = _ref.t,
|
|
231
220
|
enableAdvancedSearch = _ref.enableAdvancedSearch,
|
|
232
|
-
loading = _ref.loading,
|
|
233
221
|
onSearch = _ref.onSearch,
|
|
234
|
-
onGoToAdvanced = _ref.onGoToAdvanced
|
|
222
|
+
onGoToAdvanced = _ref.onGoToAdvanced,
|
|
223
|
+
loading = _ref.loading;
|
|
235
224
|
return /*#__PURE__*/jsx(Modal.Header, {
|
|
236
|
-
className: "neeto-molecules-finder-modal__header neeto-ui-border-gray-
|
|
225
|
+
className: "neeto-molecules-finder-modal__header neeto-ui-border-gray-300 border-b px-0 py-0",
|
|
237
226
|
children: /*#__PURE__*/jsx(Search, {
|
|
238
227
|
onSearch: onSearch,
|
|
239
228
|
nakedInput: true,
|
|
240
229
|
autoComplete: "off",
|
|
241
|
-
className: "neeto-molecules-finder-modal__search px-
|
|
230
|
+
className: "neeto-molecules-finder-modal__search px-6 py-3",
|
|
242
231
|
name: "term",
|
|
243
232
|
placeholder: t("neetoMolecules.common.actions.search"),
|
|
244
233
|
suffix: /*#__PURE__*/jsxs("div", {
|
|
@@ -252,7 +241,7 @@ var ModalHeader = withT(function (_ref) {
|
|
|
252
241
|
className: "ms-3 whitespace-nowrap",
|
|
253
242
|
label: t("neetoMolecules.finderModal.advancedSearch"),
|
|
254
243
|
size: "small",
|
|
255
|
-
style: "
|
|
244
|
+
style: "tertiary",
|
|
256
245
|
onClick: onGoToAdvanced
|
|
257
246
|
})]
|
|
258
247
|
})
|
|
@@ -260,14 +249,13 @@ var ModalHeader = withT(function (_ref) {
|
|
|
260
249
|
});
|
|
261
250
|
});
|
|
262
251
|
|
|
263
|
-
var _excluded = ["enableAdvancedSearch", "data", "
|
|
252
|
+
var _excluded = ["enableAdvancedSearch", "data", "isFetching", "isOpen", "searchTerm", "setSearchTerm", "onClose", "onGoToAdvanced"];
|
|
264
253
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
265
254
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
266
255
|
var FinderModal = function FinderModal(_ref) {
|
|
267
256
|
var _ref$enableAdvancedSe = _ref.enableAdvancedSearch,
|
|
268
257
|
enableAdvancedSearch = _ref$enableAdvancedSe === void 0 ? true : _ref$enableAdvancedSe,
|
|
269
258
|
data = _ref.data,
|
|
270
|
-
iconComponentMap = _ref.iconComponentMap,
|
|
271
259
|
isFetching = _ref.isFetching,
|
|
272
260
|
isOpen = _ref.isOpen,
|
|
273
261
|
searchTerm = _ref.searchTerm,
|
|
@@ -317,7 +305,6 @@ var FinderModal = function FinderModal(_ref) {
|
|
|
317
305
|
}), /*#__PURE__*/jsx(ModalBody, {
|
|
318
306
|
containerRef: containerRef,
|
|
319
307
|
data: data,
|
|
320
|
-
iconComponentMap: iconComponentMap,
|
|
321
308
|
onClose: onClose,
|
|
322
309
|
searchTerm: searchTerm,
|
|
323
310
|
loading: isFetching
|
package/dist/FinderModal.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FinderModal.js","sources":["../src/components/FinderModal/Link.jsx","../src/components/FinderModal/utils.jsx","../src/components/FinderModal/Body.jsx","../src/components/FinderModal/Footer.jsx","../src/components/FinderModal/Header.jsx","../src/components/FinderModal/index.jsx"],"sourcesContent":["import { Link as RRDLink } from \"react-router-dom\";\n\nconst Link = ({ to, children, ...rest }) => {\n const url = new URL(to);\n url.host = \"\";\n\n return (\n <RRDLink {...rest} to={`${url.pathname}${url.search}`}>\n {children}\n </RRDLink>\n );\n};\n\nexport default Link;\n","import React from \"react\";\n\nexport const minMax = (number, max = Number.POSITIVE_INFINITY, min = 0) =>\n Math.min(max, Math.max(min, number));\n\nexport const htmlToText = html => {\n if (!html) return null;\n\n const tmp = document.createElement(\"div\");\n tmp.innerHTML = html;\n\n return tmp.textContent || tmp.innerText || \"\";\n};\n\nexport const highlightMatch = (text, searchTerm) => {\n if (!searchTerm) return text;\n\n const regex = new RegExp(`(${searchTerm})`, \"gi\");\n\n return text.split(regex).map((part, index) =>\n part?.toLowerCase() === searchTerm.toLowerCase() ? (\n <span className=\"neeto-molecules-finder-matched-tag\" key={index}>\n {part}\n </span>\n ) : (\n part\n )\n );\n};\n\nexport const filterAndHighlightContent = (bodyContent, searchTerm) => {\n if (!searchTerm) return bodyContent;\n\n if (!bodyContent) return null;\n\n return bodyContent\n .split(/(.{1,130}(?:\\s|$))/g)\n .filter(line => line.trim())\n .filter(line => line.toLowerCase().includes(searchTerm.toLowerCase()))\n .map((line, index) => (\n <React.Fragment key={index}>\n {highlightMatch(line, searchTerm)}\n <br />\n </React.Fragment>\n ));\n};\n\nexport const flattenData = data => {\n if (!data) return [];\n\n if (Array.isArray(data)) return data;\n\n const result = [];\n Object.keys(data).forEach(key => {\n data[key].forEach(item => {\n result.push({ ...item, category: key });\n });\n });\n\n return result;\n};\n\nexport const createStylePalette = values => {\n const assignedStyles = {};\n let styleIndex = 0;\n\n return key => {\n if (assignedStyles[key]) return assignedStyles[key];\n const style = values[styleIndex];\n styleIndex = (styleIndex + 1) % values.length;\n assignedStyles[key] = style;\n\n return style;\n };\n};\n","import classNames from \"classnames\";\nimport { humanize, isNotPresent } from \"neetocist\";\nimport { Modal, Typography, NoData, Tag } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Link from \"./Link\";\nimport {\n htmlToText,\n highlightMatch,\n filterAndHighlightContent,\n flattenData,\n createStylePalette,\n} from \"./utils\";\n\nconst getStyle = createStylePalette([\n \"primary\",\n \"info\",\n \"success\",\n \"secondary\",\n \"warning\",\n]);\n\nconst ModalBody = ({\n containerRef,\n data,\n iconComponentMap,\n onClose,\n loading,\n searchTerm,\n}) => {\n const { t } = useTranslation();\n\n const flattenedData = flattenData(data);\n const isDataEmpty = isNotPresent(flattenedData);\n\n if (isDataEmpty && !loading) {\n return (\n <Modal.Body className=\"neeto-molecules-finder-modal__body flex h-96 items-center justify-center overflow-y-auto px-4 py-6\">\n <NoData\n description={t(\"neetoMolecules.finderModal.noDataDesc\")}\n title={t(\"neetoMolecules.finderModal.noDataTitle\")}\n />\n </Modal.Body>\n );\n }\n\n return (\n <Modal.Body className=\"neeto-molecules-finder-modal__body h-96 overflow-y-auto px-4 py-6\">\n <div className=\"flex flex-col gap-y-2\" ref={containerRef}>\n {flattenedData.map(item => {\n if (isNotPresent(item.category)) return null;\n\n const Icon =\n iconComponentMap[item.category] || iconComponentMap.default;\n\n const nameContent = htmlToText(item.name);\n const bodyContent = htmlToText(item.body);\n\n const filteredBodyContent = filterAndHighlightContent(\n bodyContent,\n searchTerm\n );\n\n return (\n <Link\n className=\"neeto-molecules-search-result-item hover:neeto-ui-bg-accent-100 focus:neeto-ui-bg-accent-100 neeto-ui-rounded flex w-full cursor-pointer items-center gap-2 p-2 text-xs\"\n key={item.id}\n to={item.url}\n onClick={onClose}\n >\n <Icon className=\"neeto-ui-text-gray-500 min-w-fit\" size={16} />\n <div className=\"line-clamp-1 flex flex-col\">\n <div className=\"flex items-center gap-2\">\n {nameContent && (\n <Typography className=\"neeto-ui-text-black text-sm font-medium\">\n {highlightMatch(nameContent, searchTerm)}\n </Typography>\n )}\n <Tag size=\"small\" style={getStyle(item.category)}>\n {humanize(item.category)}\n </Tag>\n </div>\n {bodyContent && (\n <Typography\n className={classNames(\"truncate\", {\n \"neeto-ui-text-gray-600 text-xs\": nameContent,\n \"neeto-ui-text-black text-sm font-medium\": !nameContent,\n })}\n >\n {filteredBodyContent || bodyContent}\n </Typography>\n )}\n </div>\n </Link>\n );\n })}\n </div>\n </Modal.Body>\n );\n};\n\nexport default ModalBody;\n","import { Down, Up } from \"neetoicons\";\nimport { Modal, Typography } from \"neetoui\";\nimport { prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nconst ModalFooter = ({ enableAdvancedSearch }) => {\n const { t } = useTranslation();\n\n const shortcuts = [\n {\n label: t(\"neetoMolecules.finderModal.advancedSearch\"),\n keys: [\"Cmd/Ctrl\", \"Return\"],\n isVisible: enableAdvancedSearch,\n },\n {\n label: t(\"neetoMolecules.common.actions.open\"),\n keys: [\"Return\"],\n isVisible: true,\n },\n {\n label: t(\"neetoMolecules.common.actions.move\"),\n keys: [\n <Up className=\"neeto-ui-text-gray-800\" key=\"up\" size={12} />,\n <Down className=\"neeto-ui-text-gray-800\" key=\"down\" size={12} />,\n ],\n isVisible: true,\n },\n {\n label: t(\"neetoMolecules.common.actions.close\"),\n keys: [\"Esc\"],\n isVisible: true,\n },\n ];\n\n return (\n <Modal.Footer className=\"neeto-ui-border-gray-300 neeto-molecules-finder-modal__footer border-t px-4 py-3\">\n <div className=\"neeto-ui-text-xxs flex items-center justify-end gap-4\">\n {shortcuts.filter(prop(\"isVisible\")).map(({ label, keys }, index) => (\n <div className=\"flex items-center gap-1\" key={index}>\n <Typography component=\"span\" style=\"nano\">\n {label}\n </Typography>\n {keys.map((key, index) => (\n <Typography\n className=\"neeto-ui-bg-gray-200 neeto-ui-rounded-sm p-1\"\n component=\"span\"\n key={index}\n style=\"nano\"\n >\n {key}\n </Typography>\n ))}\n </div>\n ))}\n </div>\n </Modal.Footer>\n );\n};\n\nexport default ModalFooter;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Button, Modal, Spinner } from \"neetoui\";\n\nimport Search from \"components/Search\";\n\nconst ModalHeader = withT(\n ({ t, enableAdvancedSearch, loading, onSearch, onGoToAdvanced }) => (\n <Modal.Header className=\"neeto-molecules-finder-modal__header neeto-ui-border-gray-200 border-b px-0 py-0\">\n <Search\n {...{ onSearch }}\n nakedInput\n autoComplete=\"off\"\n className=\"neeto-molecules-finder-modal__search px-3 py-1.5\"\n name=\"term\"\n placeholder={t(\"neetoMolecules.common.actions.search\")}\n suffix={\n <div className=\"ms-3 flex items-center\">\n <div className=\"h-4 w-4 flex-shrink-0\">\n {loading && <Spinner size=\"small\" />}\n </div>\n {enableAdvancedSearch && (\n <Button\n className=\"ms-3 whitespace-nowrap\"\n label={t(\"neetoMolecules.finderModal.advancedSearch\")}\n size=\"small\"\n style=\"secondary\"\n onClick={onGoToAdvanced}\n />\n )}\n </div>\n }\n />\n </Modal.Header>\n )\n);\n\nexport default ModalHeader;\n","import { useRef } from \"react\";\n\nimport { noop } from \"neetocist\";\nimport useHotkeys from \"neetohotkeys\";\nimport { Modal } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { isEmpty } from \"ramda\";\n\nimport ModalBody from \"./Body\";\nimport \"./finder-modal.scss\";\nimport ModalFooter from \"./Footer\";\nimport ModalHeader from \"./Header\";\nimport { minMax } from \"./utils\";\n\nconst FinderModal = ({\n enableAdvancedSearch = true,\n data,\n iconComponentMap,\n isFetching,\n isOpen,\n searchTerm,\n setSearchTerm,\n onClose,\n onGoToAdvanced = noop,\n ...props\n}) => {\n const containerRef = useRef();\n const mutables = useRef({ focusIndex: -1 }).current;\n\n const onFocusChange = offset => {\n const container = containerRef.current;\n if (!container) return;\n\n const nodes = container.querySelectorAll(\n \"a.neeto-molecules-search-result-item\"\n );\n\n if (isEmpty(nodes)) return;\n\n mutables.focusIndex = minMax(\n mutables.focusIndex + offset,\n nodes.length - 1\n );\n\n const targetNode = nodes[mutables.focusIndex];\n if (targetNode) {\n targetNode.focus();\n }\n };\n\n useHotkeys(\n [\"up\", \"down\"],\n event => {\n event.preventDefault();\n if (event.code === \"ArrowUp\") onFocusChange(-1);\n else if (event.code === \"ArrowDown\") onFocusChange(1);\n },\n { mode: \"global\", enabled: isOpen }\n );\n\n useHotkeys([\"ctrl+enter\", \"command+enter\"], onGoToAdvanced, {\n mode: \"global\",\n enabled: isOpen && enableAdvancedSearch,\n });\n\n return (\n <Modal\n {...{ isOpen, onClose }}\n closeButton={false}\n {...props}\n backdropClassName=\"neeto-molecules-finder-modal-backdrop py-10 px-4\"\n className=\"neeto-molecules-finder-modal\"\n >\n <ModalHeader\n {...{ enableAdvancedSearch, onGoToAdvanced }}\n loading={isFetching}\n onSearch={setSearchTerm}\n />\n <ModalBody\n {...{ containerRef, data, iconComponentMap, onClose, searchTerm }}\n loading={isFetching}\n />\n <ModalFooter {...{ enableAdvancedSearch }} />\n </Modal>\n );\n};\n\nFinderModal.propTypes = {\n /*\n Boolean to indicate decide whether to show advanced search button or not\n */\n enableAdvancedSearch: PropTypes.bool,\n /*\n Data to be displayed in the modal. Can be an array of items with category property,\n or an object with category keys containing arrays of items.\n */\n data: PropTypes.oneOfType([\n PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string,\n url: PropTypes.string,\n body: PropTypes.string,\n name: PropTypes.string,\n category: PropTypes.string,\n })\n ),\n PropTypes.objectOf(\n PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string,\n url: PropTypes.string,\n body: PropTypes.string,\n name: PropTypes.string,\n })\n )\n ),\n ]),\n /*\n Icon component map to render icons for each section\n */\n iconComponentMap: PropTypes.objectOf(PropTypes.elementType),\n /*\n Boolean to indicate whether data is being fetched or not\n */\n isFetching: PropTypes.bool,\n /*\n Boolean to indicate whether modal is open or not\n */\n isOpen: PropTypes.bool,\n /*\n Term used for search\n */\n searchTerm: PropTypes.string,\n /*\n Function to set search term\n */\n setSearchTerm: PropTypes.func,\n /*\n Function to close the modal\n */\n onClose: PropTypes.func,\n /*\n Function to execute when user clicks on advanced search button\n */\n onGoToAdvanced: PropTypes.func,\n};\n\nexport default FinderModal;\n"],"names":["Link","_ref","to","children","rest","_objectWithoutProperties","_excluded","url","URL","host","_jsx","RRDLink","_objectSpread","concat","pathname","search","minMax","number","max","arguments","length","undefined","Number","POSITIVE_INFINITY","min","Math","htmlToText","html","tmp","document","createElement","innerHTML","textContent","innerText","highlightMatch","text","searchTerm","regex","RegExp","split","map","part","index","toLowerCase","className","filterAndHighlightContent","bodyContent","filter","line","trim","includes","_jsxs","React","Fragment","flattenData","data","Array","isArray","result","Object","keys","forEach","key","item","push","category","createStylePalette","values","assignedStyles","styleIndex","style","getStyle","ModalBody","containerRef","iconComponentMap","onClose","loading","_useTranslation","useTranslation","t","flattenedData","isDataEmpty","isNotPresent","Modal","Body","NoData","description","title","ref","Icon","nameContent","name","body","filteredBodyContent","onClick","size","Typography","Tag","humanize","classNames","id","ModalFooter","enableAdvancedSearch","shortcuts","label","isVisible","Up","Down","Footer","prop","_ref2","component","ModalHeader","withT","onSearch","onGoToAdvanced","Header","Search","nakedInput","autoComplete","placeholder","suffix","Spinner","Button","FinderModal","_ref$enableAdvancedSe","isFetching","isOpen","setSearchTerm","_ref$onGoToAdvanced","noop","props","useRef","mutables","focusIndex","current","onFocusChange","offset","container","nodes","querySelectorAll","isEmpty","targetNode","focus","useHotkeys","event","preventDefault","code","mode","enabled","closeButton","backdropClassName"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FinderModal.js","sources":["../src/components/FinderModal/Link.jsx","../src/components/FinderModal/utils.jsx","../src/components/FinderModal/Body.jsx","../src/components/FinderModal/Footer.jsx","../src/components/FinderModal/Header.jsx","../src/components/FinderModal/index.jsx"],"sourcesContent":["import { Link as RRDLink } from \"react-router-dom\";\n\nconst Link = ({ to, children, ...rest }) => {\n const url = new URL(to);\n url.host = \"\";\n\n return (\n <RRDLink {...rest} to={`${url.pathname}${url.search}`}>\n {children}\n </RRDLink>\n );\n};\n\nexport default Link;\n","import React from \"react\";\n\nexport const minMax = (number, max = Number.POSITIVE_INFINITY, min = 0) =>\n Math.min(max, Math.max(min, number));\n\nexport const htmlToText = html => {\n if (!html) return null;\n\n const tmp = document.createElement(\"div\");\n tmp.innerHTML = html;\n\n return tmp.textContent || tmp.innerText || \"\";\n};\n\nexport const highlightMatch = (text, searchTerm) => {\n if (!searchTerm) return text;\n\n const regex = new RegExp(`(${searchTerm})`, \"gi\");\n\n return text.split(regex).map((part, index) =>\n part?.toLowerCase() === searchTerm.toLowerCase() ? (\n <span className=\"neeto-molecules-finder-matched-tag\" key={index}>\n {part}\n </span>\n ) : (\n part\n )\n );\n};\n\nexport const filterAndHighlightContent = (bodyContent, searchTerm) => {\n if (!searchTerm) return bodyContent;\n\n if (!bodyContent) return null;\n\n return bodyContent\n .split(/(.{1,130}(?:\\s|$))/g)\n .filter(line => line.trim())\n .filter(line => line.toLowerCase().includes(searchTerm.toLowerCase()))\n .map((line, index) => (\n <React.Fragment key={index}>\n {highlightMatch(line, searchTerm)}\n <br />\n </React.Fragment>\n ));\n};\n\nexport const flattenData = data => {\n if (!data) return [];\n\n if (Array.isArray(data)) return data;\n\n const result = [];\n Object.keys(data).forEach(key => {\n data[key].forEach(item => {\n result.push({ ...item, category: key });\n });\n });\n\n return result;\n};\n\nexport const createStylePalette = values => {\n const assignedStyles = {};\n let styleIndex = 0;\n\n return key => {\n if (assignedStyles[key]) return assignedStyles[key];\n const style = values[styleIndex];\n styleIndex = (styleIndex + 1) % values.length;\n assignedStyles[key] = style;\n\n return style;\n };\n};\n","import { humanize, isNotEmpty, isNotPresent } from \"neetocist\";\nimport { Modal, Typography, NoData, Tag } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Link from \"./Link\";\nimport {\n htmlToText,\n highlightMatch,\n filterAndHighlightContent,\n createStylePalette,\n} from \"./utils\";\n\nconst getStyle = createStylePalette([\n \"primary\",\n \"info\",\n \"success\",\n \"secondary\",\n \"warning\",\n]);\n\nconst ModalBody = ({ containerRef, data, onClose, loading, searchTerm }) => {\n const { t } = useTranslation();\n\n const categoryGroups = Object.keys(data).filter(key => isNotEmpty(data[key]));\n const isDataEmpty = isNotPresent(data) || isEmpty(categoryGroups);\n\n if (isDataEmpty && !loading) {\n return (\n <Modal.Body className=\"neeto-molecules-finder-modal__body flex h-96 items-center justify-center overflow-y-auto px-3 py-5\">\n <NoData\n description={t(\"neetoMolecules.finderModal.noDataDesc\")}\n title={t(\"neetoMolecules.finderModal.noDataTitle\")}\n />\n </Modal.Body>\n );\n }\n\n return (\n <Modal.Body className=\"neeto-molecules-finder-modal__body h-96 overflow-y-auto px-3 py-4\">\n <div className=\"flex flex-col\" ref={containerRef}>\n {categoryGroups.map((category, categoryIndex) => {\n const items = data[category];\n const shouldShowCategoryDivider =\n categoryIndex < categoryGroups.length - 1;\n\n return (\n <div key={category}>\n {items.map(item => {\n const nameContent = htmlToText(item.name);\n const bodyContent = htmlToText(item.body);\n\n const filteredBodyContent = filterAndHighlightContent(\n bodyContent,\n searchTerm\n );\n\n return (\n <Link\n className=\"neeto-molecules-search-result-item hover:neeto-ui-bg-accent-100 focus:neeto-ui-bg-accent-100 neeto-ui-rounded-lg flex w-full cursor-pointer items-center gap-2 px-3 py-2.5 text-xs transition-all duration-300\"\n key={`${category}-${item.id}`}\n to={item.url}\n onClick={onClose}\n >\n <div className=\"line-clamp-1 flex flex-col gap-1\">\n <div className=\"flex items-start gap-2\">\n {nameContent && (\n <Typography\n className=\"neeto-ui-text-black\"\n weight=\"semibold\"\n >\n {highlightMatch(nameContent, searchTerm)}\n </Typography>\n )}\n {category && (\n <Tag\n className=\"mt-1\"\n size=\"small\"\n style={getStyle(category)}\n type=\"solid\"\n >\n {humanize(category)}\n </Tag>\n )}\n </div>\n {bodyContent && (\n <Typography className=\"neeto-ui-text-gray-600 truncate text-xs\">\n {filteredBodyContent || bodyContent}\n </Typography>\n )}\n </div>\n </Link>\n );\n })}\n {shouldShowCategoryDivider && (\n <hr className=\"neeto-ui-border-gray-300 mx-3 my-3 border-t\" />\n )}\n </div>\n );\n })}\n </div>\n </Modal.Body>\n );\n};\n\nexport default ModalBody;\n","import { Down, Up } from \"neetoicons\";\nimport { Modal, Typography } from \"neetoui\";\nimport { prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nconst ModalFooter = ({ enableAdvancedSearch }) => {\n const { t } = useTranslation();\n\n const shortcuts = [\n {\n label: t(\"neetoMolecules.finderModal.advancedSearch\"),\n keys: [\"Cmd/Ctrl\", \"Return\"],\n isVisible: enableAdvancedSearch,\n },\n {\n label: t(\"neetoMolecules.common.actions.open\"),\n keys: [\"Return\"],\n isVisible: true,\n },\n {\n label: t(\"neetoMolecules.common.actions.move\"),\n keys: [\n <Up className=\"neeto-ui-text-gray-600\" key=\"up\" size={12} />,\n <Down className=\"neeto-ui-text-gray-600\" key=\"down\" size={12} />,\n ],\n isVisible: true,\n },\n {\n label: t(\"neetoMolecules.common.actions.close\"),\n keys: [\"Esc\"],\n isVisible: true,\n },\n ];\n\n return (\n <Modal.Footer className=\"neeto-ui-border-gray-300 neeto-molecules-finder-modal__footer border-t px-6 py-4\">\n <div className=\"neeto-ui-text-xxs flex items-center gap-4\">\n {shortcuts.filter(prop(\"isVisible\")).map(({ label, keys }, index) => (\n <div className=\"flex items-center gap-1\" key={index}>\n <Typography\n className=\"neeto-ui-text-gray-600\"\n component=\"span\"\n style=\"nano\"\n >\n {label}\n </Typography>\n {keys.map((key, index) => (\n <Typography\n className=\"neeto-ui-bg-gray-200 neeto-ui-rounded-sm neeto-ui-text-gray-600 px-1.5 py-1\"\n component=\"span\"\n key={index}\n style=\"nano\"\n >\n {key}\n </Typography>\n ))}\n </div>\n ))}\n </div>\n </Modal.Footer>\n );\n};\n\nexport default ModalFooter;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Button, Modal, Spinner } from \"neetoui\";\n\nimport Search from \"components/Search\";\n\nconst ModalHeader = withT(\n ({ t, enableAdvancedSearch, onSearch, onGoToAdvanced, loading }) => (\n <Modal.Header className=\"neeto-molecules-finder-modal__header neeto-ui-border-gray-300 border-b px-0 py-0\">\n <Search\n {...{ onSearch }}\n nakedInput\n autoComplete=\"off\"\n className=\"neeto-molecules-finder-modal__search px-6 py-3\"\n name=\"term\"\n placeholder={t(\"neetoMolecules.common.actions.search\")}\n suffix={\n <div className=\"ms-3 flex items-center\">\n <div className=\"h-4 w-4 flex-shrink-0\">\n {loading && <Spinner size=\"small\" />}\n </div>\n {enableAdvancedSearch && (\n <Button\n className=\"ms-3 whitespace-nowrap\"\n label={t(\"neetoMolecules.finderModal.advancedSearch\")}\n size=\"small\"\n style=\"tertiary\"\n onClick={onGoToAdvanced}\n />\n )}\n </div>\n }\n />\n </Modal.Header>\n )\n);\n\nexport default ModalHeader;\n","import { useRef } from \"react\";\n\nimport { noop } from \"neetocist\";\nimport useHotkeys from \"neetohotkeys\";\nimport { Modal } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { isEmpty } from \"ramda\";\n\nimport ModalBody from \"./Body\";\nimport \"./finder-modal.scss\";\nimport ModalFooter from \"./Footer\";\nimport ModalHeader from \"./Header\";\nimport { minMax } from \"./utils\";\n\nconst FinderModal = ({\n enableAdvancedSearch = true,\n data,\n isFetching,\n isOpen,\n searchTerm,\n setSearchTerm,\n onClose,\n onGoToAdvanced = noop,\n ...props\n}) => {\n const containerRef = useRef();\n const mutables = useRef({ focusIndex: -1 }).current;\n\n const onFocusChange = offset => {\n const container = containerRef.current;\n if (!container) return;\n\n const nodes = container.querySelectorAll(\n \"a.neeto-molecules-search-result-item\"\n );\n\n if (isEmpty(nodes)) return;\n\n mutables.focusIndex = minMax(\n mutables.focusIndex + offset,\n nodes.length - 1\n );\n\n const targetNode = nodes[mutables.focusIndex];\n if (targetNode) {\n targetNode.focus();\n }\n };\n\n useHotkeys(\n [\"up\", \"down\"],\n event => {\n event.preventDefault();\n if (event.code === \"ArrowUp\") onFocusChange(-1);\n else if (event.code === \"ArrowDown\") onFocusChange(1);\n },\n { mode: \"global\", enabled: isOpen }\n );\n\n useHotkeys([\"ctrl+enter\", \"command+enter\"], onGoToAdvanced, {\n mode: \"global\",\n enabled: isOpen && enableAdvancedSearch,\n });\n\n return (\n <Modal\n {...{ isOpen, onClose }}\n closeButton={false}\n {...props}\n backdropClassName=\"neeto-molecules-finder-modal-backdrop py-10 px-4\"\n className=\"neeto-molecules-finder-modal\"\n >\n <ModalHeader\n {...{ enableAdvancedSearch, onGoToAdvanced }}\n loading={isFetching}\n onSearch={setSearchTerm}\n />\n <ModalBody\n {...{ containerRef, data, onClose, searchTerm }}\n loading={isFetching}\n />\n <ModalFooter {...{ enableAdvancedSearch }} />\n </Modal>\n );\n};\n\nFinderModal.propTypes = {\n /*\n Boolean to indicate decide whether to show advanced search button or not\n */\n enableAdvancedSearch: PropTypes.bool,\n /*\n Data to be displayed in the modal\n */\n data: PropTypes.objectOf(\n PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string,\n url: PropTypes.string,\n body: PropTypes.string,\n name: PropTypes.string,\n })\n )\n ),\n /*\n Boolean to indicate whether data is being fetched or not\n */\n isFetching: PropTypes.bool,\n /*\n Boolean to indicate whether modal is open or not\n */\n isOpen: PropTypes.bool,\n /*\n Term used for search\n */\n searchTerm: PropTypes.string,\n /*\n Function to set search term\n */\n setSearchTerm: PropTypes.func,\n /*\n Function to close the modal\n */\n onClose: PropTypes.func,\n /*\n Function to execute when user clicks on advanced search button\n */\n onGoToAdvanced: PropTypes.func,\n};\n\nexport default FinderModal;\n"],"names":["Link","_ref","to","children","rest","_objectWithoutProperties","_excluded","url","URL","host","_jsx","RRDLink","_objectSpread","concat","pathname","search","minMax","number","max","arguments","length","undefined","Number","POSITIVE_INFINITY","min","Math","htmlToText","html","tmp","document","createElement","innerHTML","textContent","innerText","highlightMatch","text","searchTerm","regex","RegExp","split","map","part","index","toLowerCase","className","filterAndHighlightContent","bodyContent","filter","line","trim","includes","_jsxs","React","Fragment","createStylePalette","values","assignedStyles","styleIndex","key","style","getStyle","ModalBody","containerRef","data","onClose","loading","_useTranslation","useTranslation","t","categoryGroups","Object","keys","isNotEmpty","isDataEmpty","isNotPresent","isEmpty","Modal","Body","NoData","description","title","ref","category","categoryIndex","items","shouldShowCategoryDivider","item","nameContent","name","body","filteredBodyContent","onClick","Typography","weight","Tag","size","type","humanize","id","ModalFooter","enableAdvancedSearch","shortcuts","label","isVisible","Up","Down","Footer","prop","_ref2","component","ModalHeader","withT","onSearch","onGoToAdvanced","Header","Search","nakedInput","autoComplete","placeholder","suffix","Spinner","Button","FinderModal","_ref$enableAdvancedSe","isFetching","isOpen","setSearchTerm","_ref$onGoToAdvanced","noop","props","useRef","mutables","focusIndex","current","onFocusChange","offset","container","nodes","querySelectorAll","targetNode","focus","useHotkeys","event","preventDefault","code","mode","enabled","closeButton","backdropClassName"],"mappings":"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"}
|