@addev-be/ui 2.0.0 → 2.1.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/auth/LoginForm.js +7 -5
- package/dist/components/auth/PasswordRecoveryForm.js +6 -5
- package/dist/components/data/DataGrid/DataGridColumnsModal/hooks.js +2 -2
- package/dist/components/data/DataGrid/DataGridFilterMenu/FilterValuesScroller.js +2 -2
- package/dist/components/data/DataGrid/DataGridFilterMenu/hooks.js +2 -2
- package/dist/components/data/DataGrid/DataGridFilterMenu/index.js +4 -4
- package/dist/components/data/DataGrid/DataGridHeaderCell.js +4 -4
- package/dist/components/data/DataGrid/DataGridToolbar.js +3 -3
- package/dist/components/data/DataGrid/FilterModalContent/index.js +5 -4
- package/dist/components/data/DataGrid/helpers/columns.js +3 -3
- package/dist/components/data/DataGrid/hooks/useDataGridSettings.js +2 -2
- package/dist/components/data/DataGrid/hooks/useRefreshModal.js +2 -2
- package/dist/components/data/SqlRequestForeignList/index.js +4 -4
- package/dist/components/data/SqlRequestForeignList/types.d.ts +1 -1
- package/dist/components/data/SqlRequestGrid/filters/FiltersSidebar.js +2 -2
- package/dist/components/data/SqlRequestGrid/index.js +2 -2
- package/dist/components/data/VirtualScroller/hooks.js +2 -2
- package/dist/components/forms/Form/FormGroup.d.ts +1 -1
- package/dist/components/forms/Form/styles.d.ts +1 -1
- package/dist/components/forms/IconButton.d.ts +1 -1
- package/dist/components/forms/NumberInput.js +3 -3
- package/dist/components/layout/Dropdown/index.js +2 -2
- package/dist/components/layout/Flexbox.d.ts +1 -1
- package/dist/components/layout/Loading/index.js +2 -2
- package/dist/components/layout/Modal/index.js +2 -2
- package/dist/components/layout/Modal/styles.d.ts +1 -1
- package/dist/components/search/HighlightedText.js +3 -3
- package/dist/components/search/QuickSearchBar.d.ts +1 -1
- package/dist/components/search/QuickSearchBar.js +6 -6
- package/dist/components/search/types.d.ts +1 -1
- package/dist/components/ui/Avatar/index.d.ts +1 -1
- package/dist/components/ui/Message/styles.d.ts +1 -1
- package/dist/components/ui/TabsView/styles.d.ts +1 -1
- package/dist/components/ui/TabsView/types.d.ts +1 -1
- package/dist/config/index.d.ts +1 -4
- package/dist/helpers/styled/space.d.ts +8 -8
- package/dist/index.d.ts +85 -7
- package/dist/index.js +85 -8
- package/dist/providers/AuthenticationProvider/index.d.ts +1 -1
- package/dist/providers/AuthenticationProvider/index.js +11 -10
- package/dist/providers/LoadingProvider/index.js +2 -2
- package/dist/providers/ThemeProvider/index.d.ts +8 -4
- package/dist/providers/ThemeProvider/index.js +49 -19
- package/dist/providers/TrackingProvider/index.js +2 -2
- package/dist/providers/UiProviders/index.js +1 -1
- package/dist/services/hooks.js +2 -2
- package/package.json +2 -2
- package/src/components/auth/LoginForm.tsx +5 -3
- package/src/components/auth/PasswordRecoveryForm.tsx +4 -3
- package/src/components/data/DataGrid/DataGridColumnsModal/hooks.tsx +1 -1
- package/src/components/data/DataGrid/DataGridFilterMenu/FilterValuesScroller.tsx +1 -1
- package/src/components/data/DataGrid/DataGridFilterMenu/hooks.tsx +1 -1
- package/src/components/data/DataGrid/DataGridFilterMenu/index.tsx +1 -1
- package/src/components/data/DataGrid/DataGridHeaderCell.tsx +2 -2
- package/src/components/data/DataGrid/DataGridToolbar.tsx +2 -2
- package/src/components/data/DataGrid/FilterModalContent/index.tsx +3 -1
- package/src/components/data/DataGrid/helpers/columns.tsx +1 -1
- package/src/components/data/DataGrid/hooks/useDataGridSettings.ts +1 -1
- package/src/components/data/DataGrid/hooks/useRefreshModal.tsx +1 -1
- package/src/components/data/SqlRequestForeignList/index.tsx +2 -2
- package/src/components/data/SqlRequestForeignList/types.ts +1 -1
- package/src/components/data/SqlRequestGrid/filters/FiltersSidebar.tsx +1 -1
- package/src/components/data/SqlRequestGrid/index.tsx +1 -1
- package/src/components/data/VirtualScroller/hooks.ts +1 -1
- package/src/components/forms/Form/FormGroup.tsx +1 -1
- package/src/components/forms/Form/styles.ts +1 -1
- package/src/components/forms/IconButton.tsx +1 -1
- package/src/components/forms/NumberInput.tsx +1 -1
- package/src/components/layout/Dropdown/index.tsx +1 -1
- package/src/components/layout/Flexbox.ts +1 -1
- package/src/components/layout/Loading/index.tsx +1 -1
- package/src/components/layout/Modal/index.tsx +1 -1
- package/src/components/layout/Modal/styles.ts +1 -1
- package/src/components/search/HighlightedText.tsx +1 -1
- package/src/components/search/QuickSearchBar.tsx +3 -3
- package/src/components/search/types.ts +1 -1
- package/src/components/ui/Avatar/index.tsx +1 -1
- package/src/components/ui/Message/index.tsx +1 -1
- package/src/components/ui/Message/styles.ts +1 -1
- package/src/components/ui/TabsView/styles.ts +4 -1
- package/src/components/ui/TabsView/types.ts +4 -1
- package/src/config/index.ts +2 -6
- package/src/helpers/styled/space.ts +4 -1
- package/src/index.ts +97 -9
- package/src/providers/AuthenticationProvider/index.tsx +3 -3
- package/src/providers/LoadingProvider/index.tsx +1 -1
- package/src/providers/ThemeProvider/index.ts +65 -4
- package/src/providers/TrackingProvider/index.tsx +1 -1
- package/src/providers/UiProviders/index.tsx +1 -1
- package/src/services/hooks.ts +1 -1
- package/tsconfig.tsbuildinfo +1 -1
- package/src/components/auth/index.ts +0 -4
- package/src/components/data/index.ts +0 -16
- package/src/components/forms/index.ts +0 -9
- package/src/components/index.ts +0 -6
- package/src/components/layout/index.ts +0 -7
- package/src/components/search/index.ts +0 -9
- package/src/components/ui/index.ts +0 -7
- package/src/helpers/index.ts +0 -5
- package/src/hooks/index.ts +0 -7
- package/src/providers/ThemeProvider/ThemeProvider.ts +0 -66
- package/src/providers/index.ts +0 -9
- package/src/services/index.ts +0 -21
|
@@ -2,13 +2,15 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.LoginForm = void 0;
|
|
4
4
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
-
var forms_1 = require("../forms");
|
|
6
|
-
var ui_1 = require("../ui");
|
|
7
5
|
var react_1 = require("react");
|
|
8
6
|
var react_router_dom_1 = require("react-router-dom");
|
|
7
|
+
var Button_1 = require("../forms/Button");
|
|
8
|
+
var Card_1 = require("../ui/Card");
|
|
9
9
|
var styles_1 = require("./styles");
|
|
10
|
+
var styles_2 = require("../forms/styles");
|
|
11
|
+
var Message_1 = require("../ui/Message");
|
|
10
12
|
var VerticalLabel_1 = require("../forms/VerticalLabel");
|
|
11
|
-
var
|
|
13
|
+
var hooks_1 = require("../../providers/hooks");
|
|
12
14
|
var LoginForm = function () {
|
|
13
15
|
var _a = (0, react_1.useState)(localStorage.getItem('username') || ''), username = _a[0], setUsername = _a[1];
|
|
14
16
|
var _b = (0, react_1.useState)(''), password = _b[0], setPassword = _b[1];
|
|
@@ -16,7 +18,7 @@ var LoginForm = function () {
|
|
|
16
18
|
var _d = (0, react_1.useState)(''), error = _d[0], setError = _d[1];
|
|
17
19
|
var usernameInputRef = (0, react_1.useRef)(null);
|
|
18
20
|
var passwordInputRef = (0, react_1.useRef)(null);
|
|
19
|
-
var login = (0,
|
|
21
|
+
var login = (0, hooks_1.useAuthentication)().login;
|
|
20
22
|
var onLoginClicked = (0, react_1.useCallback)(function () {
|
|
21
23
|
setError('');
|
|
22
24
|
setIsLoading(true);
|
|
@@ -43,6 +45,6 @@ var LoginForm = function () {
|
|
|
43
45
|
}, []);
|
|
44
46
|
if (isLoading)
|
|
45
47
|
return (0, jsx_runtime_1.jsx)("div", { children: "Chargement..." });
|
|
46
|
-
return ((0, jsx_runtime_1.jsx)(
|
|
48
|
+
return ((0, jsx_runtime_1.jsx)(Card_1.Card, { children: (0, jsx_runtime_1.jsxs)(styles_1.FormContainer, { children: [(0, jsx_runtime_1.jsx)(VerticalLabel_1.StackedLabel, { label: "Adresse e-mail / Nom d'utilisateur", children: (0, jsx_runtime_1.jsx)(styles_2.Input, { ref: usernameInputRef, type: "email", autoComplete: "email", required: true, value: username, onChange: function (e) { return setUsername(e.target.value); } }) }), (0, jsx_runtime_1.jsx)(VerticalLabel_1.StackedLabel, { label: "Mot de passe", children: (0, jsx_runtime_1.jsx)(styles_2.Input, { ref: passwordInputRef, type: "password", autoComplete: "current-password", required: true, value: password, onChange: function (e) { return setPassword(e.target.value); } }) }), error && (0, jsx_runtime_1.jsx)(Message_1.Message, { type: "error", children: error }), (0, jsx_runtime_1.jsx)(Button_1.Button, { "$color": "primary", onClick: onLoginClicked, children: "Se connecter" }), (0, jsx_runtime_1.jsx)(react_router_dom_1.Link, { to: "/recover", children: "Mot de passe oubli\u00E9 ?" })] }) }));
|
|
47
49
|
};
|
|
48
50
|
exports.LoginForm = LoginForm;
|
|
@@ -2,23 +2,24 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.PasswordRecoveryForm = void 0;
|
|
4
4
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
-
var forms_1 = require("../forms");
|
|
6
5
|
var react_1 = require("react");
|
|
7
|
-
var
|
|
6
|
+
var Button_1 = require("../forms/Button");
|
|
7
|
+
var Card_1 = require("../ui/Card");
|
|
8
8
|
var styles_1 = require("./styles");
|
|
9
|
+
var styles_2 = require("../forms/styles");
|
|
9
10
|
var react_router_dom_1 = require("react-router-dom");
|
|
10
11
|
var Message_1 = require("../ui/Message");
|
|
11
12
|
var VerticalLabel_1 = require("../forms/VerticalLabel");
|
|
12
|
-
var
|
|
13
|
+
var hooks_1 = require("../../providers/hooks");
|
|
13
14
|
var PasswordRecoveryForm = function () {
|
|
14
15
|
var _a = (0, react_1.useState)(''), email = _a[0], setEmail = _a[1];
|
|
15
16
|
var _b = (0, react_1.useState)(false), isSubmitted = _b[0], setIsSubmitted = _b[1];
|
|
16
|
-
var sendRecoveryKey = (0,
|
|
17
|
+
var sendRecoveryKey = (0, hooks_1.useAuthentication)().sendRecoveryKey;
|
|
17
18
|
var onSubmitClicked = (0, react_1.useCallback)(function () {
|
|
18
19
|
sendRecoveryKey(email).then(function () {
|
|
19
20
|
setIsSubmitted(true);
|
|
20
21
|
});
|
|
21
22
|
}, [email, sendRecoveryKey]);
|
|
22
|
-
return ((0, jsx_runtime_1.jsx)(
|
|
23
|
+
return ((0, jsx_runtime_1.jsx)(Card_1.Card, { children: (0, jsx_runtime_1.jsx)(styles_1.FormContainer, { children: isSubmitted ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(Message_1.Message, { type: "success", children: "Un e-mail de r\u00E9initialisation de mot de passe vous a \u00E9t\u00E9 envoy\u00E9." }), (0, jsx_runtime_1.jsx)(react_router_dom_1.Link, { to: "/", children: "Retour" })] })) : ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(VerticalLabel_1.StackedLabel, { label: "Adresse e-mail", children: (0, jsx_runtime_1.jsx)(styles_2.Input, { type: "email", autoComplete: "email", required: true, value: email, onChange: function (e) { return setEmail(e.target.value); } }) }), (0, jsx_runtime_1.jsx)(Button_1.Button, { "$color": "primary", onClick: onSubmitClicked, children: "Envoyer un lien de r\u00E9cup\u00E9ration" })] })) }) }));
|
|
23
24
|
};
|
|
24
25
|
exports.PasswordRecoveryForm = PasswordRecoveryForm;
|
|
@@ -4,7 +4,7 @@ exports.useDataGridColumnsModal = void 0;
|
|
|
4
4
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
var lodash_1 = require("lodash");
|
|
6
6
|
var react_1 = require("react");
|
|
7
|
-
var
|
|
7
|
+
var Button_1 = require("../../../forms/Button");
|
|
8
8
|
var _1 = require(".");
|
|
9
9
|
var Modal_1 = require("../../../layout/Modal");
|
|
10
10
|
var useDataGridColumnsModal = function (context) {
|
|
@@ -31,7 +31,7 @@ var useDataGridColumnsModal = function (context) {
|
|
|
31
31
|
closeModal();
|
|
32
32
|
}, [currentColumns, closeModal, saveSettings, setSettings]);
|
|
33
33
|
var modal = (0, react_1.useMemo)(function () {
|
|
34
|
-
return isVisible ? ((0, jsx_runtime_1.jsxs)(Modal_1.Modal, { "$width": 600, "$height": 400, children: [(0, jsx_runtime_1.jsx)(Modal_1.Modal.Header, { children: "Param\u00E8tres des colonnes" }), (0, jsx_runtime_1.jsx)(Modal_1.Modal.Content, { children: (0, jsx_runtime_1.jsx)(_1.DataGridColumnsEditor, { columns: currentColumns, onColumnsChanged: setCurrentColumns }) }), (0, jsx_runtime_1.jsxs)(Modal_1.Modal.Footer, { children: [(0, jsx_runtime_1.jsx)(
|
|
34
|
+
return isVisible ? ((0, jsx_runtime_1.jsxs)(Modal_1.Modal, { "$width": 600, "$height": 400, children: [(0, jsx_runtime_1.jsx)(Modal_1.Modal.Header, { children: "Param\u00E8tres des colonnes" }), (0, jsx_runtime_1.jsx)(Modal_1.Modal.Content, { children: (0, jsx_runtime_1.jsx)(_1.DataGridColumnsEditor, { columns: currentColumns, onColumnsChanged: setCurrentColumns }) }), (0, jsx_runtime_1.jsxs)(Modal_1.Modal.Footer, { children: [(0, jsx_runtime_1.jsx)(Button_1.Button, { onClick: closeModal, children: "Annuler" }), (0, jsx_runtime_1.jsx)(Button_1.Button, { "$color": "primary", style: { marginLeft: 'auto' }, onClick: onApplyClicked, children: "Appliquer" })] })] })) : null;
|
|
35
35
|
}, [closeModal, currentColumns, isVisible, onApplyClicked]);
|
|
36
36
|
return { openModal: openModal, closeModal: closeModal, modal: modal };
|
|
37
37
|
};
|
|
@@ -59,7 +59,7 @@ var styles = __importStar(require("./styles"));
|
|
|
59
59
|
var helpers_1 = require("../helpers");
|
|
60
60
|
var react_1 = require("react");
|
|
61
61
|
var lodash_1 = require("lodash");
|
|
62
|
-
var
|
|
62
|
+
var useElementSize_1 = require("../../../../hooks/useElementSize");
|
|
63
63
|
var CheckboxTemplate = function (_a) {
|
|
64
64
|
var selectedValues = _a.selectedValues, value = _a.value, index = _a.index, style = _a.style, onToggle = _a.onToggle;
|
|
65
65
|
var checked = (0, react_1.useMemo)(function () { return value.values.every(function (v) { return selectedValues.includes(v); }); }, [selectedValues, value.values]);
|
|
@@ -68,7 +68,7 @@ var CheckboxTemplate = function (_a) {
|
|
|
68
68
|
var FilterValuesScroller = function (_a) {
|
|
69
69
|
var values = _a.values, _b = _a.rowHeight, rowHeight = _b === void 0 ? styles.DEFAULT_FILTER_ROW_HEIGHT : _b, onRangeChange = _a.onRangeChange, onToggle = _a.onToggle, _c = _a.formatter, formatter = _c === void 0 ? helpers_1.defaultRendererAndFormatter : _c, _d = _a.renderer, renderer = _d === void 0 ? helpers_1.defaultRendererAndFormatter : _d, _e = _a.selectedValues, selectedValues = _e === void 0 ? [] : _e, groups = _a.groups;
|
|
70
70
|
var scrollableRef = (0, react_1.useRef)(null);
|
|
71
|
-
var height = (0,
|
|
71
|
+
var height = (0, useElementSize_1.useElementSize)(scrollableRef.current).height;
|
|
72
72
|
var tolerance = 20;
|
|
73
73
|
var _f = (0, react_1.useState)(0), scrollTop = _f[0], setScrollTop = _f[1];
|
|
74
74
|
var index = Math.floor(scrollTop / rowHeight);
|
|
@@ -15,7 +15,7 @@ exports.useFilterModal = void 0;
|
|
|
15
15
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
16
16
|
var Icons_1 = require("../../../../Icons");
|
|
17
17
|
var react_1 = require("react");
|
|
18
|
-
var
|
|
18
|
+
var Button_1 = require("../../../forms/Button");
|
|
19
19
|
var FilterModalContent_1 = require("../FilterModalContent");
|
|
20
20
|
var Modal_1 = require("../../../layout/Modal");
|
|
21
21
|
var hooks_1 = require("../hooks");
|
|
@@ -45,7 +45,7 @@ var useFilterModal = function (_a) {
|
|
|
45
45
|
var onCancelClicked = (0, react_1.useCallback)(function () {
|
|
46
46
|
closeModal();
|
|
47
47
|
}, [closeModal]);
|
|
48
|
-
var modal = isVisible ? ((0, jsx_runtime_1.jsxs)(Modal_1.Modal, { children: [(0, jsx_runtime_1.jsxs)(Modal_1.Modal.Header, { children: ["Filtrer \"", column.name, "\""] }), (0, jsx_runtime_1.jsxs)(Modal_1.Modal.ContentWithIcon, { children: [(0, jsx_runtime_1.jsx)(Icons_1.FilterIcon, { fill: "var(--color-primary-400)" }), (0, jsx_runtime_1.jsx)(FilterModalContent_1.FilterModalContent, { filter: currentFilter, onFilterChanged: setCurrentFilter })] }), (0, jsx_runtime_1.jsxs)(Modal_1.Modal.Buttons, { children: [(0, jsx_runtime_1.jsx)(
|
|
48
|
+
var modal = isVisible ? ((0, jsx_runtime_1.jsxs)(Modal_1.Modal, { children: [(0, jsx_runtime_1.jsxs)(Modal_1.Modal.Header, { children: ["Filtrer \"", column.name, "\""] }), (0, jsx_runtime_1.jsxs)(Modal_1.Modal.ContentWithIcon, { children: [(0, jsx_runtime_1.jsx)(Icons_1.FilterIcon, { fill: "var(--color-primary-400)" }), (0, jsx_runtime_1.jsx)(FilterModalContent_1.FilterModalContent, { filter: currentFilter, onFilterChanged: setCurrentFilter })] }), (0, jsx_runtime_1.jsxs)(Modal_1.Modal.Buttons, { children: [(0, jsx_runtime_1.jsx)(Button_1.Button, { "$color": "danger", icon: Icons_1.FilterSlashIcon, onClick: onClearClicked, children: "Supprimer" }), (0, jsx_runtime_1.jsx)(Button_1.Button, { style: { marginLeft: 'auto' }, "$color": "primary", icon: Icons_1.FilterIcon, onClick: onApplyClicked, children: "Filtrer" }), (0, jsx_runtime_1.jsx)(Button_1.Button, { onClick: onCancelClicked, children: "Annuler" })] })] })) : null;
|
|
49
49
|
return { openModal: openModal, closeModal: closeModal, modal: modal };
|
|
50
50
|
};
|
|
51
51
|
exports.useFilterModal = useFilterModal;
|
|
@@ -74,8 +74,8 @@ var lodash_1 = require("lodash");
|
|
|
74
74
|
var react_1 = require("react");
|
|
75
75
|
var ContextMenu_1 = require("../../../ui/ContextMenu");
|
|
76
76
|
var FilterValuesScroller_1 = require("./FilterValuesScroller");
|
|
77
|
-
var
|
|
78
|
-
var
|
|
77
|
+
var styles_1 = require("../../../forms/styles");
|
|
78
|
+
var styles_2 = require("../../../ui/ContextMenu/styles");
|
|
79
79
|
var helpers_2 = require("./helpers");
|
|
80
80
|
var hooks_1 = require("./hooks");
|
|
81
81
|
var sortAsc = {
|
|
@@ -221,9 +221,9 @@ var DataGridFilterMenu = function (_a) {
|
|
|
221
221
|
return ((0, jsx_runtime_1.jsxs)(ContextMenu_1.ContextMenu.Item, { onClick: function () { return showFooter(key); }, children: [(0, jsx_runtime_1.jsx)(TotalIcon, {}), key in footerFunctionsTexts
|
|
222
222
|
? footerFunctionsTexts[key]
|
|
223
223
|
: key] }, key));
|
|
224
|
-
}), (0, jsx_runtime_1.jsx)(ContextMenu_1.ContextMenu.Divider, {}), (0, jsx_runtime_1.jsxs)(ContextMenu_1.ContextMenu.Item, { onClick: hideFooter, disabled: !isFooterVisible, children: [(0, jsx_runtime_1.jsx)(Icons_1.TableFooterSlashIcon, {}), "Masquer le total"] })] })] }), (0, jsx_runtime_1.jsx)(ContextMenu_1.ContextMenu.Divider, {})] }))] })), (0, jsx_runtime_1.jsxs)(ContextMenu_1.ContextMenu.Item, { onClick: openModal, children: [(0, jsx_runtime_1.jsx)(Icons_1.FilterIcon, {}), "Filtrer ..."] }), (0, jsx_runtime_1.jsxs)(ContextMenu_1.ContextMenu.Item, { "$color": "danger", onClick: clearFilter, disabled: !hasFilters, children: [(0, jsx_runtime_1.jsx)(Icons_1.FilterSlashIcon, {}), "Supprimer le filtre"] }), (0, jsx_runtime_1.jsx)(ContextMenu_1.ContextMenu.Divider, {}), (0, jsx_runtime_1.jsxs)(styles.InputContainer, { children: [(0, jsx_runtime_1.jsx)(Icons_1.MagnifierIcon, {}), (0, jsx_runtime_1.jsx)(
|
|
224
|
+
}), (0, jsx_runtime_1.jsx)(ContextMenu_1.ContextMenu.Divider, {}), (0, jsx_runtime_1.jsxs)(ContextMenu_1.ContextMenu.Item, { onClick: hideFooter, disabled: !isFooterVisible, children: [(0, jsx_runtime_1.jsx)(Icons_1.TableFooterSlashIcon, {}), "Masquer le total"] })] })] }), (0, jsx_runtime_1.jsx)(ContextMenu_1.ContextMenu.Divider, {})] }))] })), (0, jsx_runtime_1.jsxs)(ContextMenu_1.ContextMenu.Item, { onClick: openModal, children: [(0, jsx_runtime_1.jsx)(Icons_1.FilterIcon, {}), "Filtrer ..."] }), (0, jsx_runtime_1.jsxs)(ContextMenu_1.ContextMenu.Item, { "$color": "danger", onClick: clearFilter, disabled: !hasFilters, children: [(0, jsx_runtime_1.jsx)(Icons_1.FilterSlashIcon, {}), "Supprimer le filtre"] }), (0, jsx_runtime_1.jsx)(ContextMenu_1.ContextMenu.Divider, {}), (0, jsx_runtime_1.jsxs)(styles.InputContainer, { children: [(0, jsx_runtime_1.jsx)(Icons_1.MagnifierIcon, {}), (0, jsx_runtime_1.jsx)(styles_1.Input, { ref: textFilterInputRef, type: "text", name: "search", id: "search", placeholder: "Rechercher ...", value: textFilter, onChange: function (e) { return setTextFilter(e.target.value); } })] }), (0, jsx_runtime_1.jsx)(styles.CheckboxesContainer, { children: checkboxesComponent })] }));
|
|
225
225
|
if (!contextMenu) {
|
|
226
|
-
return (0, jsx_runtime_1.jsx)(
|
|
226
|
+
return (0, jsx_runtime_1.jsx)(styles_2.MenuContainer, { children: content });
|
|
227
227
|
}
|
|
228
228
|
return (0, jsx_runtime_1.jsx)(ContextMenu_1.ContextMenu, { children: content });
|
|
229
229
|
};
|
|
@@ -40,14 +40,14 @@ var styles = __importStar(require("./styles"));
|
|
|
40
40
|
var react_1 = require("react");
|
|
41
41
|
var Icons_1 = require("../../../Icons");
|
|
42
42
|
var DataGridFilterMenu_1 = require("./DataGridFilterMenu");
|
|
43
|
-
var
|
|
43
|
+
var Dropdown_1 = require("../../layout/Dropdown");
|
|
44
44
|
var IconButton_1 = require("../../forms/IconButton");
|
|
45
45
|
var hooks_1 = require("./hooks");
|
|
46
|
-
var
|
|
46
|
+
var hooks_2 = require("../../../providers/hooks");
|
|
47
47
|
var DataGridHeaderCell = function (_a) {
|
|
48
48
|
var _b, _c;
|
|
49
49
|
var columnKey = _a.columnKey, column = _a.column, context = _a.context;
|
|
50
|
-
var getElementScreenRect = (0,
|
|
50
|
+
var getElementScreenRect = (0, hooks_2.useUi)().getElementScreenRect;
|
|
51
51
|
var contextValue = (0, hooks_1.useDataGridContext)(context);
|
|
52
52
|
var _d = contextValue.filters, filters = _d === void 0 ? {} : _d, headerColor = contextValue.headerColor, resizingColumnKey = contextValue.resizingColumnKey, startResizing = contextValue.startResizing;
|
|
53
53
|
var filterButtonRef = (0, react_1.useRef)(null);
|
|
@@ -63,7 +63,7 @@ var DataGridHeaderCell = function (_a) {
|
|
|
63
63
|
var filterButtonRect = getElementScreenRect(filterButtonRef.current);
|
|
64
64
|
filterButtonRect.x += window.scrollX;
|
|
65
65
|
filterButtonRect.y += window.scrollY;
|
|
66
|
-
return ((0, jsx_runtime_1.jsx)(
|
|
66
|
+
return ((0, jsx_runtime_1.jsx)(Dropdown_1.Dropdown, { "$sourceRect": filterButtonRect, onClose: function () { return setIsFilterDropdownVisible(false); }, "$width": 320, "$height": [350, 500], "$autoPositionX": true, children: (0, jsx_runtime_1.jsx)(DataGridFilterMenu_1.DataGridFilterMenu, { column: column, context: context, onClose: function () { return setIsFilterDropdownVisible(false); } }) }));
|
|
67
67
|
}, [
|
|
68
68
|
column,
|
|
69
69
|
columnKey,
|
|
@@ -74,8 +74,8 @@ var jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
74
74
|
var styles = __importStar(require("./styles"));
|
|
75
75
|
var Icons_1 = require("../../../Icons");
|
|
76
76
|
var react_1 = require("react");
|
|
77
|
-
var
|
|
78
|
-
var
|
|
77
|
+
var Button_1 = require("../../forms/Button");
|
|
78
|
+
var Loading_1 = require("../../layout/Loading");
|
|
79
79
|
var hooks_1 = require("./DataGridColumnsModal/hooks");
|
|
80
80
|
var hooks_2 = require("./hooks");
|
|
81
81
|
var useRefreshModal_1 = require("./hooks/useRefreshModal");
|
|
@@ -136,6 +136,6 @@ var DataGridToolbar = function (_a) {
|
|
|
136
136
|
return [2 /*return*/];
|
|
137
137
|
});
|
|
138
138
|
}); }, [addedRows.length, doRefresh, openRefreshModal, updatedRows.length]);
|
|
139
|
-
return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [modal, refreshModal, (0, jsx_runtime_1.jsxs)(styles.DataGridToolsRow, { children: [(0, jsx_runtime_1.jsx)(styles.DataGridToolsRowHeaderContent, { children: headerContent }), (0, jsx_runtime_1.jsxs)(styles.DataGridToolsRowButtonsContainer, { children: [(0, jsx_runtime_1.jsx)(
|
|
139
|
+
return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [modal, refreshModal, (0, jsx_runtime_1.jsxs)(styles.DataGridToolsRow, { children: [(0, jsx_runtime_1.jsx)(styles.DataGridToolsRowHeaderContent, { children: headerContent }), (0, jsx_runtime_1.jsxs)(styles.DataGridToolsRowButtonsContainer, { children: [(0, jsx_runtime_1.jsx)(Loading_1.Loading, { visible: isLoadingVisible }), editable && onSaveClicked && ((0, jsx_runtime_1.jsxs)(Button_1.Button, { size: "small", "$color": "primary", onClick: save, bordered: true, children: [(0, jsx_runtime_1.jsx)(Icons_1.FloppyDiskIcon, {}), "Enregistrer"] })), editable && onAddClicked && ((0, jsx_runtime_1.jsxs)(Button_1.Button, { size: "small", "$color": "success", onClick: add, bordered: true, children: [(0, jsx_runtime_1.jsx)(Icons_1.PlusIcon, {}), "Ajouter"] })), (0, jsx_runtime_1.jsxs)(Button_1.Button, { size: "small", onClick: onRefreshClicked, bordered: true, children: [(0, jsx_runtime_1.jsx)(Icons_1.ArrowsRotateIcon, {}), "Rafra\u00EEchir"] }), (0, jsx_runtime_1.jsxs)(Button_1.Button, { "$color": "emerald", size: "small", onClick: runCopyTable, bordered: true, children: [(0, jsx_runtime_1.jsx)(Icons_1.CopyIcon, {}), "Copier la table"] }), (0, jsx_runtime_1.jsxs)(Button_1.Button, { size: "small", "$color": "danger", onClick: function () { return setFilters({}); }, bordered: true, children: [(0, jsx_runtime_1.jsx)(Icons_1.FilterSlashIcon, {}), "Supprimer les filtres"] }), name && ((0, jsx_runtime_1.jsxs)(Button_1.Button, { "$color": "info", size: "small", onClick: openModal, bordered: true, children: [(0, jsx_runtime_1.jsx)(Icons_1.TableColumnsIcon, {}), "Param\u00E8tres des colonnes"] }))] })] })] }));
|
|
140
140
|
};
|
|
141
141
|
exports.DataGridToolbar = DataGridToolbar;
|
|
@@ -57,8 +57,9 @@ exports.FilterModalContent = void 0;
|
|
|
57
57
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
58
58
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
59
59
|
var styles = __importStar(require("./styles"));
|
|
60
|
-
var forms_1 = require("../../../forms");
|
|
61
60
|
var react_1 = require("react");
|
|
61
|
+
var styles_1 = require("../../../forms/styles");
|
|
62
|
+
var Select_1 = require("../../../forms/Select");
|
|
62
63
|
// import { Select } from '../../Select';
|
|
63
64
|
// import clx from 'classnames';
|
|
64
65
|
var filterOperators = {
|
|
@@ -97,9 +98,9 @@ var FilterModalContent = function (_a) {
|
|
|
97
98
|
if (!filter)
|
|
98
99
|
return null;
|
|
99
100
|
var operator = filter.operator, type = filter.type, values = filter.values;
|
|
100
|
-
return ((0, jsx_runtime_1.jsxs)(styles.FilterModalContentContainer, { children: [(0, jsx_runtime_1.jsxs)("label", { htmlFor: "filterOperator", children: [(0, jsx_runtime_1.jsx)("span", { children: "Op\u00E9rateur :" }), (0, jsx_runtime_1.jsx)(
|
|
101
|
+
return ((0, jsx_runtime_1.jsxs)(styles.FilterModalContentContainer, { children: [(0, jsx_runtime_1.jsxs)("label", { htmlFor: "filterOperator", children: [(0, jsx_runtime_1.jsx)("span", { children: "Op\u00E9rateur :" }), (0, jsx_runtime_1.jsx)(Select_1.Select, { name: "filterOperator", items: Object.entries(filterOperators[filter.type]), itemKey: function (item) { return item[0]; }, itemLabel: function (item) { return item[1]; }, value: String(operator), className: "text-sm", onChange: function (e) {
|
|
101
102
|
return onFilterChanged(__assign(__assign({}, filter), { operator: e.target.value }));
|
|
102
|
-
} })] }), (0, jsx_runtime_1.jsxs)("label", { htmlFor: "filterValue1", children: [(0, jsx_runtime_1.jsxs)("span", { children: [operator === 'inRange' ? 'Entre' : 'Valeur', " :"] }), (0, jsx_runtime_1.jsx)(
|
|
103
|
+
} })] }), (0, jsx_runtime_1.jsxs)("label", { htmlFor: "filterValue1", children: [(0, jsx_runtime_1.jsxs)("span", { children: [operator === 'inRange' ? 'Entre' : 'Valeur', " :"] }), (0, jsx_runtime_1.jsx)(styles_1.Input, { ref: value1Ref, name: "filterValue1", type: filter.type, value: (_b = values[0]) !== null && _b !== void 0 ? _b : '', onChange: function (e) {
|
|
103
104
|
if (type === 'number') {
|
|
104
105
|
var newValues = __spreadArray([], values, true);
|
|
105
106
|
newValues[0] = Number(e.target.value);
|
|
@@ -110,7 +111,7 @@ var FilterModalContent = function (_a) {
|
|
|
110
111
|
newValues[0] = String(e.target.value);
|
|
111
112
|
onFilterChanged(__assign(__assign({}, filter), { values: newValues }));
|
|
112
113
|
}
|
|
113
|
-
} })] }), operator === 'inRange' && ((0, jsx_runtime_1.jsxs)("label", { htmlFor: "filterValue2", children: [(0, jsx_runtime_1.jsx)("span", { children: "et" }), (0, jsx_runtime_1.jsx)(
|
|
114
|
+
} })] }), operator === 'inRange' && ((0, jsx_runtime_1.jsxs)("label", { htmlFor: "filterValue2", children: [(0, jsx_runtime_1.jsx)("span", { children: "et" }), (0, jsx_runtime_1.jsx)(styles_1.Input, { name: "filterValue2", type: filter.type, value: (_c = values[1]) !== null && _c !== void 0 ? _c : '', onChange: function (e) {
|
|
114
115
|
if (type === 'number') {
|
|
115
116
|
var newValues = __spreadArray([], values, true);
|
|
116
117
|
newValues[1] = Number(e.target.value);
|
|
@@ -28,7 +28,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
28
28
|
exports.colorColumn = exports.selectColumn = exports.checkboxColumn = exports.percentageColumn = exports.moneyColumn = exports.numberColumn = exports.monthColumn = exports.dateTimeColumn = exports.dateColumn = exports.phoneColumn = exports.mailColumn = exports.textColumn = exports.buildExcelFormat = exports.isColumnVisible = void 0;
|
|
29
29
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
30
30
|
var filters_1 = require("./filters");
|
|
31
|
-
var
|
|
31
|
+
var dates_1 = require("../../../../helpers/dates");
|
|
32
32
|
var numbers_1 = require("../../../../helpers/numbers");
|
|
33
33
|
var CheckboxEditableCell_1 = require("../DataGridEditableCell/CheckboxEditableCell");
|
|
34
34
|
var DateEditableCell_1 = require("../DataGridEditableCell/DateEditableCell");
|
|
@@ -53,12 +53,12 @@ var mailColumn = function (key, title, options, otherOptions) { return (__assign
|
|
|
53
53
|
exports.mailColumn = mailColumn;
|
|
54
54
|
var phoneColumn = function (key, title, options, otherOptions) { return (__assign({ key: key, type: 'text', name: title, render: function (value) { return ((0, jsx_runtime_1.jsx)(typography_1.StyledTypography, __assign({ href: "tel:".concat(value) }, options === null || options === void 0 ? void 0 : options.typography, { as: 'a', children: value }))); }, getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, sortGetter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, footer: function (_, filteredRows) { return "".concat(filteredRows.length, " \u00E9l\u00E9ments"); }, filter: (0, filters_1.textFilter)(key), editComponent: TextEditableCell_1.TextEditableCell }, otherOptions)); };
|
|
55
55
|
exports.phoneColumn = phoneColumn;
|
|
56
|
-
var dateColumn = function (key, title, options, otherOptions) { return (__assign({ key: key, type: 'date', name: title, render: function (value) { return ((0, jsx_runtime_1.jsx)(typography_1.StyledTypography, __assign({}, options === null || options === void 0 ? void 0 : options.typography, { children: (0,
|
|
56
|
+
var dateColumn = function (key, title, options, otherOptions) { return (__assign({ key: key, type: 'date', name: title, render: function (value) { return ((0, jsx_runtime_1.jsx)(typography_1.StyledTypography, __assign({}, options === null || options === void 0 ? void 0 : options.typography, { children: (0, dates_1.formatDate)(value) }))); }, excelOptions: {
|
|
57
57
|
formatter: function () { return 'dd/mm/yyyy'; },
|
|
58
58
|
valueGetter: function (value) { var _a; return (_a = (0, moment_1.default)(value).format('DD/MM/YYYY')) !== null && _a !== void 0 ? _a : ''; },
|
|
59
59
|
}, getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, sortGetter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, footer: function (_, filteredRows) { return "".concat(filteredRows.length, " \u00E9l\u00E9ments"); }, filter: __assign(__assign({}, (0, filters_1.dateFilter)(key)), { renderer: function (value) { var _a; return (_a = (0, moment_1.default)(value).format('DD/MM/YYYY')) !== null && _a !== void 0 ? _a : ''; } }), editComponent: DateEditableCell_1.DateEditableCell }, otherOptions)); };
|
|
60
60
|
exports.dateColumn = dateColumn;
|
|
61
|
-
var dateTimeColumn = function (key, title, options, otherOptions) { return (__assign({ key: key, type: 'date', name: title, render: function (value) { return ((0, jsx_runtime_1.jsx)(typography_1.StyledTypography, __assign({}, options === null || options === void 0 ? void 0 : options.typography, { children: (0,
|
|
61
|
+
var dateTimeColumn = function (key, title, options, otherOptions) { return (__assign({ key: key, type: 'date', name: title, render: function (value) { return ((0, jsx_runtime_1.jsx)(typography_1.StyledTypography, __assign({}, options === null || options === void 0 ? void 0 : options.typography, { children: (0, dates_1.formatDateTime)(value) }))); }, excelOptions: {
|
|
62
62
|
formatter: function () { return 'dd/mm/yyyy hh:mm:ss'; },
|
|
63
63
|
valueGetter: function (value) { var _a; return (_a = (0, moment_1.default)(value).format('DD/MM/YYYY HH:mm:ss')) !== null && _a !== void 0 ? _a : ''; },
|
|
64
64
|
}, getter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, sortGetter: function (row) { var _a; return (_a = row[key]) !== null && _a !== void 0 ? _a : ''; }, footer: function (_, filteredRows) { return "".concat(filteredRows.length, " \u00E9l\u00E9ments"); }, filter: __assign(__assign({}, (0, filters_1.dateFilter)(key)), { renderer: function (value) { var _a; return (_a = (0, moment_1.default)(value).format('DD/MM/YYYY HH:mm:ss')) !== null && _a !== void 0 ? _a : ''; } }), editComponent: DateEditableCell_1.DateEditableCell }, otherOptions)); };
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useDataGridSettings = void 0;
|
|
4
4
|
var react_1 = require("react");
|
|
5
|
-
var
|
|
5
|
+
var hooks_1 = require("../../../../providers/hooks");
|
|
6
6
|
var useDataGridSettings = function (name) {
|
|
7
7
|
// TODO: Implement settings context
|
|
8
|
-
var _a = (0,
|
|
8
|
+
var _a = (0, hooks_1.useSettings)(), settings = _a.settings, updateSettings = _a.updateSettings;
|
|
9
9
|
var _b = (0, react_1.useState)({}), dataGridSettings = _b[0], setDataGridSettings = _b[1];
|
|
10
10
|
(0, react_1.useEffect)(function () {
|
|
11
11
|
if (name) {
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.useRefreshModal = void 0;
|
|
4
4
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
var react_1 = require("react");
|
|
6
|
-
var
|
|
6
|
+
var Button_1 = require("../../../forms/Button");
|
|
7
7
|
var Modal_1 = require("../../../layout/Modal");
|
|
8
8
|
var Icons_1 = require("../../../../Icons");
|
|
9
9
|
var useRefreshModal = function (onConfirm) {
|
|
@@ -15,7 +15,7 @@ var useRefreshModal = function (onConfirm) {
|
|
|
15
15
|
setIsVisible(false);
|
|
16
16
|
}, []);
|
|
17
17
|
var modal = (0, react_1.useMemo)(function () {
|
|
18
|
-
return isVisible ? ((0, jsx_runtime_1.jsxs)(Modal_1.Modal, { "$width": 400, children: [(0, jsx_runtime_1.jsx)(Modal_1.Modal.Header, { children: "Rafraichir" }), (0, jsx_runtime_1.jsxs)(Modal_1.Modal.ContentWithIcon, { children: [(0, jsx_runtime_1.jsx)(Icons_1.TriangleExclamationIcon, { fill: "var(--color-danger-600)" }), (0, jsx_runtime_1.jsx)("div", { children: "Attention : vous avez des modifications en cours. Si vous rafra\u00EEchissez la liste, ces modifications seront perdues !" })] }), (0, jsx_runtime_1.jsxs)(Modal_1.Modal.Footer, { children: [(0, jsx_runtime_1.jsx)(
|
|
18
|
+
return isVisible ? ((0, jsx_runtime_1.jsxs)(Modal_1.Modal, { "$width": 400, children: [(0, jsx_runtime_1.jsx)(Modal_1.Modal.Header, { children: "Rafraichir" }), (0, jsx_runtime_1.jsxs)(Modal_1.Modal.ContentWithIcon, { children: [(0, jsx_runtime_1.jsx)(Icons_1.TriangleExclamationIcon, { fill: "var(--color-danger-600)" }), (0, jsx_runtime_1.jsx)("div", { children: "Attention : vous avez des modifications en cours. Si vous rafra\u00EEchissez la liste, ces modifications seront perdues !" })] }), (0, jsx_runtime_1.jsxs)(Modal_1.Modal.Footer, { children: [(0, jsx_runtime_1.jsx)(Button_1.Button, { onClick: closeModal, children: "Annuler" }), (0, jsx_runtime_1.jsx)(Button_1.Button, { "$color": "danger", style: { marginLeft: 'auto' }, onClick: function () {
|
|
19
19
|
closeModal();
|
|
20
20
|
onConfirm();
|
|
21
21
|
}, children: "Rafra\u00EEchir" })] })] })) : null;
|
|
@@ -12,11 +12,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.SqlRequestForeignList = void 0;
|
|
13
13
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
14
14
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
15
|
-
var
|
|
15
|
+
var sqlRequests_1 = require("../../../services/sqlRequests");
|
|
16
16
|
var react_1 = require("react");
|
|
17
17
|
var styles_1 = require("./styles");
|
|
18
18
|
var Icons_1 = require("../../../Icons");
|
|
19
|
-
var
|
|
19
|
+
var Dropdown_1 = require("../../layout/Dropdown");
|
|
20
20
|
var VirtualScroller_1 = require("../VirtualScroller");
|
|
21
21
|
var lodash_1 = require("lodash");
|
|
22
22
|
var components_1 = require("../../../helpers/components");
|
|
@@ -54,7 +54,7 @@ var SqlRequestForeignList = function (_a) {
|
|
|
54
54
|
var internalRef = (0, react_1.useRef)(null);
|
|
55
55
|
// Forward the ref while linking it to our internal ref
|
|
56
56
|
(0, react_1.useImperativeHandle)(ref, function () { return internalRef.current; }, []);
|
|
57
|
-
var sqlRequest = (0,
|
|
57
|
+
var sqlRequest = (0, sqlRequests_1.useSqlRequestHandler)(requestName)[0];
|
|
58
58
|
var open = (0, react_1.useCallback)(function () {
|
|
59
59
|
if (internalRef.current) {
|
|
60
60
|
var parentRect = internalRef.current.getBoundingClientRect();
|
|
@@ -122,7 +122,7 @@ var SqlRequestForeignList = function (_a) {
|
|
|
122
122
|
}, [length, start]);
|
|
123
123
|
var ItemTemplate = (0, react_1.useMemo)(function () { return createItemTemplate(itemTemplate, rowHeight); }, [itemTemplate, rowHeight]);
|
|
124
124
|
var ValueTemplate = (0, react_1.useMemo)(function () { return CreateValueTemplate(valueTemplate !== null && valueTemplate !== void 0 ? valueTemplate : itemTemplate, rowHeight); }, [itemTemplate, rowHeight, valueTemplate]);
|
|
125
|
-
return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, jsx_runtime_1.jsxs)(styles_1.SqlRequestForeignListInput, { tabIndex: 0, ref: internalRef, onClick: open, onBlur: onBlur, children: [(0, jsx_runtime_1.jsx)(ValueTemplate, { item: selectedItem, index: 0 }), (0, jsx_runtime_1.jsx)(Icons_1.ChevronDownIcon, {}), opened && rect && ((0, jsx_runtime_1.jsx)(
|
|
125
|
+
return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, jsx_runtime_1.jsxs)(styles_1.SqlRequestForeignListInput, { tabIndex: 0, ref: internalRef, onClick: open, onBlur: onBlur, children: [(0, jsx_runtime_1.jsx)(ValueTemplate, { item: selectedItem, index: 0 }), (0, jsx_runtime_1.jsx)(Icons_1.ChevronDownIcon, {}), opened && rect && ((0, jsx_runtime_1.jsx)(Dropdown_1.Dropdown, { "$height": [Math.min(maxRows, rows.length) * rowHeight, 300], "$width": rect.width, "$sourceRect": rect, onClose: close, usePortal: false, children: (0, jsx_runtime_1.jsx)(VirtualScroller_1.VirtualScroller, { gridTemplateColumns: '1fr', items: rows, itemTemplate: ItemTemplate, rowHeightInPx: rowHeight, itemProps: function (item, index) { return ({
|
|
126
126
|
item: item,
|
|
127
127
|
onClick: onClick,
|
|
128
128
|
index: index,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ConditionDTO, OrderByDTO } from '../../../services';
|
|
1
|
+
import { ConditionDTO, OrderByDTO } from '../../../services/sqlRequests';
|
|
2
2
|
import { VirtualScrollerTemplateFC } from '../VirtualScroller/types';
|
|
3
3
|
export type SqlRequestForeignListProps<T> = {
|
|
4
4
|
requestName: string;
|
|
@@ -39,7 +39,7 @@ var styles = __importStar(require("./styles"));
|
|
|
39
39
|
var Icons_1 = require("../../../../Icons");
|
|
40
40
|
var react_1 = require("react");
|
|
41
41
|
var DataGridFilterMenu_1 = require("../../DataGrid/DataGridFilterMenu");
|
|
42
|
-
var
|
|
42
|
+
var IconButton_1 = require("../../../forms/IconButton");
|
|
43
43
|
var FiltersSidebar = function (_a) {
|
|
44
44
|
var props = _a.props, context = _a.context, onClose = _a.onClose, onClearFilters = _a.onClearFilters;
|
|
45
45
|
var _b = (0, react_1.useState)(null), columnKey = _b[0], setColumnKey = _b[1];
|
|
@@ -55,6 +55,6 @@ var FiltersSidebar = function (_a) {
|
|
|
55
55
|
var onFilterClick = (0, react_1.useCallback)(function (columnKey) {
|
|
56
56
|
setColumnKey(columnKey);
|
|
57
57
|
}, []);
|
|
58
|
-
return ((0, jsx_runtime_1.jsx)(styles.Backdrop, { onClick: onClose, children: (0, jsx_runtime_1.jsx)(styles.FiltersSidebarContainer, { onClick: stopPropagation, children: visible ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)(styles.FiltersSidebarHeader, { children: [(0, jsx_runtime_1.jsx)(
|
|
58
|
+
return ((0, jsx_runtime_1.jsx)(styles.Backdrop, { onClick: onClose, children: (0, jsx_runtime_1.jsx)(styles.FiltersSidebarContainer, { onClick: stopPropagation, children: visible ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)(styles.FiltersSidebarHeader, { children: [(0, jsx_runtime_1.jsx)(IconButton_1.IconButton, { rounded: true, bordered: false, icon: Icons_1.AngleLeftIcon, color: "neutral", onClick: function () { return onFilterClick(null); } }), (0, jsx_runtime_1.jsx)("h3", { children: column.name }), (0, jsx_runtime_1.jsx)(IconButton_1.IconButton, { rounded: true, bordered: false, icon: Icons_1.XMarkIcon, color: "neutral", onClick: onClose })] }), (0, jsx_runtime_1.jsx)(DataGridFilterMenu_1.DataGridFilterMenu, { contextMenu: false, column: column, context: context, showTotalButton: false })] })) : ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)(styles.FiltersSidebarHeader, { children: [(0, jsx_runtime_1.jsx)("h3", { children: "Filtres" }), (0, jsx_runtime_1.jsx)(IconButton_1.IconButton, { rounded: true, bordered: false, icon: Icons_1.FilterSlashIcon, color: "danger", onClick: onClearFilters }), (0, jsx_runtime_1.jsx)(IconButton_1.IconButton, { rounded: true, bordered: false, icon: Icons_1.XMarkIcon, color: "neutral", onClick: onClose })] }), props.fields.map(function (field) { return ((0, jsx_runtime_1.jsxs)(styles.FiltersSidebarFilter, { onClick: function () { return onFilterClick(field.key); }, children: [field.name, (0, jsx_runtime_1.jsx)(Icons_1.AngleRightIcon, {})] }, field.key)); })] })) }) }));
|
|
59
59
|
};
|
|
60
60
|
exports.FiltersSidebar = FiltersSidebar;
|
|
@@ -61,7 +61,7 @@ var react_1 = require("react");
|
|
|
61
61
|
var lodash_1 = require("lodash");
|
|
62
62
|
var Icons_1 = require("../../../Icons");
|
|
63
63
|
var FiltersSidebar_1 = require("./filters/FiltersSidebar");
|
|
64
|
-
var
|
|
64
|
+
var IconButton_1 = require("../../forms/IconButton");
|
|
65
65
|
var VirtualScroller_1 = require("../VirtualScroller");
|
|
66
66
|
var helpers_1 = require("./helpers");
|
|
67
67
|
var helpers_2 = require("../DataGrid/helpers");
|
|
@@ -234,7 +234,7 @@ var SqlRequestGrid = function (_a) {
|
|
|
234
234
|
onFiltersChanged({});
|
|
235
235
|
setSidebarVisible(false);
|
|
236
236
|
}, [onFiltersChanged]);
|
|
237
|
-
return ((0, jsx_runtime_1.jsx)(DataGridContext.Provider, { value: contextProps, children: (0, jsx_runtime_1.jsxs)(styles.SqlRequestGridContainer, { children: [sidebarVisible ? ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, jsx_runtime_1.jsx)(FiltersSidebar_1.FiltersSidebar, { props: allProps, context: DataGridContext, onClose: onSidebarClose, onClearFilters: onClearFilters }) })) : ((0, jsx_runtime_1.jsx)(
|
|
237
|
+
return ((0, jsx_runtime_1.jsx)(DataGridContext.Provider, { value: contextProps, children: (0, jsx_runtime_1.jsxs)(styles.SqlRequestGridContainer, { children: [sidebarVisible ? ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, jsx_runtime_1.jsx)(FiltersSidebar_1.FiltersSidebar, { props: allProps, context: DataGridContext, onClose: onSidebarClose, onClearFilters: onClearFilters }) })) : ((0, jsx_runtime_1.jsx)(IconButton_1.IconButton, { size: "large", onClick: function () { return setSidebarVisible(true); }, icon: Icons_1.FilterFullIcon, color: "primary", rounded: true, style: {
|
|
238
238
|
position: 'absolute',
|
|
239
239
|
bottom: 'var(--space-2)',
|
|
240
240
|
right: 'var(--space-2)',
|
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useVirtualScrolling = exports.VIRTUAL_SCROLL_TOLERANCE = void 0;
|
|
4
4
|
var react_1 = require("react");
|
|
5
|
-
var
|
|
5
|
+
var useElementSize_1 = require("../../../hooks/useElementSize");
|
|
6
6
|
exports.VIRTUAL_SCROLL_TOLERANCE = 20;
|
|
7
7
|
var useVirtualScrolling = function (_a) {
|
|
8
8
|
var _b;
|
|
9
9
|
var scrollableElement = _a.scrollableElement, rowHeightInPx = _a.rowHeightInPx, items = _a.items, _c = _a.itemsPerRow, itemsPerRow = _c === void 0 ? 1 : _c, _d = _a.tolerance, tolerance = _d === void 0 ? exports.VIRTUAL_SCROLL_TOLERANCE : _d;
|
|
10
|
-
var height = (0,
|
|
10
|
+
var height = (0, useElementSize_1.useElementSize)(scrollableElement).height;
|
|
11
11
|
var _e = (0, react_1.useState)(0), scrollTop = _e[0], setScrollTop = _e[1];
|
|
12
12
|
var _f = [
|
|
13
13
|
Math.floor(scrollTop / rowHeightInPx),
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { FC, PropsWithChildren } from 'react';
|
|
2
2
|
import { IconFC } from '../../../Icons';
|
|
3
|
-
import { ThemeColorWithIntensity } from '../../../providers/ThemeProvider';
|
|
3
|
+
import { ThemeColorWithIntensity } from '../../../providers/ThemeProvider/types';
|
|
4
4
|
type FormGroupProps = PropsWithChildren<{
|
|
5
5
|
color?: ThemeColorWithIntensity;
|
|
6
6
|
title?: string;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ThemeColorWithIntensity } from '../../../providers/ThemeProvider';
|
|
1
|
+
import { ThemeColorWithIntensity } from '../../../providers/ThemeProvider/types';
|
|
2
2
|
export declare const FormGroupContainer: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").FieldsetHTMLAttributes<HTMLFieldSetElement>, HTMLFieldSetElement>, {
|
|
3
3
|
color?: ThemeColorWithIntensity;
|
|
4
4
|
}>> & string;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ButtonProps } from './Button';
|
|
2
2
|
import { ButtonHTMLAttributes, ForwardedRef } from 'react';
|
|
3
3
|
import { IconFC } from '../../Icons';
|
|
4
|
-
import { ThemeSize } from '../../providers';
|
|
4
|
+
import { ThemeSize } from '../../providers/ThemeProvider/types';
|
|
5
5
|
type IconButtonProps = ButtonProps & {
|
|
6
6
|
icon: IconFC;
|
|
7
7
|
$iconSize?: ThemeSize;
|
|
@@ -26,7 +26,7 @@ exports.NumberInput = void 0;
|
|
|
26
26
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
27
27
|
var react_1 = require("react");
|
|
28
28
|
var styles_1 = require("./styles");
|
|
29
|
-
var
|
|
29
|
+
var numbers_1 = require("../../helpers/numbers");
|
|
30
30
|
var NumberInputInner = function (_a, ref) {
|
|
31
31
|
var value = _a.value, onChange = _a.onChange, _b = _a.decimals, decimals = _b === void 0 ? 0 : _b, prefix = _a.prefix, suffix = _a.suffix, _c = _a.multiplicator, multiplicator = _c === void 0 ? 1 : _c, props = __rest(_a, ["value", "onChange", "decimals", "prefix", "suffix", "multiplicator"]);
|
|
32
32
|
var _d = (0, react_1.useState)(Number(value !== null && value !== void 0 ? value : 0)), displayedValue = _d[0], setDisplayedValue = _d[1];
|
|
@@ -34,7 +34,7 @@ var NumberInputInner = function (_a, ref) {
|
|
|
34
34
|
setDisplayedValue((value !== null && value !== void 0 ? value : 0) * multiplicator);
|
|
35
35
|
}, [multiplicator, value]);
|
|
36
36
|
return ((0, jsx_runtime_1.jsx)(styles_1.StyledNumericFormat, __assign({ className: String(styles_1.Input), getInputRef: ref, value: displayedValue, onChange: function (e) {
|
|
37
|
-
onChange === null || onChange === void 0 ? void 0 : onChange((0,
|
|
38
|
-
}, decimalSeparator:
|
|
37
|
+
onChange === null || onChange === void 0 ? void 0 : onChange((0, numbers_1.parseNumber)(e.target.value) / multiplicator);
|
|
38
|
+
}, decimalSeparator: numbers_1.decimalSeparator, decimalScale: decimals, fixedDecimalScale: !!decimals, prefix: prefix ? prefix + ' ' : undefined, suffix: suffix ? ' ' + suffix : undefined }, props)));
|
|
39
39
|
};
|
|
40
40
|
exports.NumberInput = (0, react_1.forwardRef)(NumberInputInner);
|
|
@@ -59,7 +59,7 @@ exports.Dropdown = void 0;
|
|
|
59
59
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
60
60
|
var styles = __importStar(require("./styles"));
|
|
61
61
|
var react_1 = require("react");
|
|
62
|
-
var
|
|
62
|
+
var hooks_1 = require("../../../providers/hooks");
|
|
63
63
|
var getDropdownStyle = function (dropdown) {
|
|
64
64
|
var minHeight = Array.isArray(dropdown.$height)
|
|
65
65
|
? dropdown.$height[0]
|
|
@@ -85,7 +85,7 @@ var getDropdownStyle = function (dropdown) {
|
|
|
85
85
|
};
|
|
86
86
|
var Dropdown = function (_a) {
|
|
87
87
|
var children = _a.children, onClose = _a.onClose, _b = _a.usePortal, usePortal = _b === void 0 ? true : _b, props = __rest(_a, ["children", "onClose", "usePortal"]);
|
|
88
|
-
var createPortal = (0,
|
|
88
|
+
var createPortal = (0, hooks_1.usePortals)().createPortal;
|
|
89
89
|
var firstClick = (0, react_1.useRef)(true);
|
|
90
90
|
var containerRef = (0, react_1.useRef)(null);
|
|
91
91
|
var style = (0, react_1.useMemo)(function () { return getDropdownStyle(props); }, [props]);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { SpaceProps } from '../../helpers/styled/space';
|
|
2
2
|
import { CSSProperties } from 'react';
|
|
3
|
-
import { ThemeSpace } from '../../providers';
|
|
3
|
+
import { ThemeSpace } from '../../providers/ThemeProvider/types';
|
|
4
4
|
type FlexboxProps = {
|
|
5
5
|
direction?: CSSProperties['flexDirection'];
|
|
6
6
|
justifyContent?: CSSProperties['justifyContent'];
|
|
@@ -38,10 +38,10 @@ var jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
38
38
|
var styles = __importStar(require("./styles"));
|
|
39
39
|
var react_1 = require("react");
|
|
40
40
|
var Icons_1 = require("../../../Icons");
|
|
41
|
-
var
|
|
41
|
+
var hooks_1 = require("../../../providers/hooks");
|
|
42
42
|
var Loading = function (_a) {
|
|
43
43
|
var visible = _a.visible, children = _a.children;
|
|
44
|
-
var createPortal = (0,
|
|
44
|
+
var createPortal = (0, hooks_1.usePortals)().createPortal;
|
|
45
45
|
var loadingPortal = (0, react_1.useMemo)(function () {
|
|
46
46
|
return visible
|
|
47
47
|
? createPortal((0, jsx_runtime_1.jsxs)(styles.LoadingBackdrop, { children: [(0, jsx_runtime_1.jsx)(Icons_1.LoadingIcon, {}), (0, jsx_runtime_1.jsx)(styles.LoadingContainer, { children: children || 'Loading ...' })] }))
|
|
@@ -59,10 +59,10 @@ exports.Modal = void 0;
|
|
|
59
59
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
60
60
|
var styles = __importStar(require("./styles"));
|
|
61
61
|
var react_1 = require("react");
|
|
62
|
-
var
|
|
62
|
+
var hooks_1 = require("../../../providers/hooks");
|
|
63
63
|
var Modal = function (_a) {
|
|
64
64
|
var children = _a.children, closeOnBackdropClick = _a.closeOnBackdropClick, onClose = _a.onClose, props = __rest(_a, ["children", "closeOnBackdropClick", "onClose"]);
|
|
65
|
-
var createPortal = (0,
|
|
65
|
+
var createPortal = (0, hooks_1.usePortals)().createPortal;
|
|
66
66
|
var modalPortal = (0, react_1.useMemo)(function () {
|
|
67
67
|
return createPortal((0, jsx_runtime_1.jsx)(styles.ModalBackdrop, { onClick: closeOnBackdropClick ? onClose : undefined, children: (0, jsx_runtime_1.jsx)(styles.ModalContainer, __assign({}, props, { children: children })) }));
|
|
68
68
|
}, [children, closeOnBackdropClick, createPortal, onClose, props]);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ThemeColor } from '../../../providers';
|
|
1
|
+
import { ThemeColor } from '../../../providers/ThemeProvider/types';
|
|
2
2
|
export declare const ModalBackdrop: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>>, never>, never>> & string;
|
|
3
3
|
export type ModalContainerProps = {
|
|
4
4
|
$width?: number;
|
|
@@ -25,14 +25,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
25
25
|
exports.HighlightedText = void 0;
|
|
26
26
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
27
27
|
var react_1 = require("react");
|
|
28
|
-
var
|
|
28
|
+
var text_1 = require("../../helpers/text");
|
|
29
29
|
var HighlightedText = function (_a) {
|
|
30
30
|
var text = _a.text, highlight = _a.highlight, props = __rest(_a, ["text", "highlight"]);
|
|
31
|
-
var textWithoutHtml = (0, react_1.useMemo)(function () { return (0,
|
|
31
|
+
var textWithoutHtml = (0, react_1.useMemo)(function () { return (0, text_1.extractTextFromHTML)(text); }, [text]);
|
|
32
32
|
var parts = (0, react_1.useMemo)(function () {
|
|
33
33
|
var _a;
|
|
34
34
|
return highlight
|
|
35
|
-
? (_a = textWithoutHtml === null || textWithoutHtml === void 0 ? void 0 : textWithoutHtml.split(new RegExp("(".concat((0,
|
|
35
|
+
? (_a = textWithoutHtml === null || textWithoutHtml === void 0 ? void 0 : textWithoutHtml.split(new RegExp("(".concat((0, text_1.escapeForRegExp)(highlight), ")"), 'gi')).filter(Boolean)) !== null && _a !== void 0 ? _a : []
|
|
36
36
|
: [];
|
|
37
37
|
}, [highlight, textWithoutHtml]);
|
|
38
38
|
if (!highlight || !parts.length) {
|