@epilot/base-elements 2.7.7 → 2.7.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/README.md +41 -49
  3. package/dist/Drawer360/ActionFooter.d.ts +11 -0
  4. package/dist/Drawer360/ActionFooter.js +76 -0
  5. package/dist/Drawer360/ActionFooter.js.map +1 -0
  6. package/dist/Drawer360/DiscardDialog.d.ts +10 -0
  7. package/dist/Drawer360/DiscardDialog.js +49 -0
  8. package/dist/Drawer360/DiscardDialog.js.map +1 -0
  9. package/dist/Drawer360/Drawer360.d.ts +3 -0
  10. package/dist/Drawer360/Drawer360.js +95 -0
  11. package/dist/Drawer360/Drawer360.js.map +1 -0
  12. package/dist/Drawer360/helpers.d.ts +3 -0
  13. package/dist/Drawer360/helpers.js +60 -0
  14. package/dist/Drawer360/helpers.js.map +1 -0
  15. package/dist/Drawer360/index.d.ts +2 -0
  16. package/dist/{EntityItem → Drawer360}/index.js +1 -1
  17. package/dist/Drawer360/index.js.map +1 -0
  18. package/dist/Drawer360/types.d.ts +27 -0
  19. package/dist/{EntityItem → Drawer360}/types.js +0 -0
  20. package/dist/{EntityItem → Drawer360}/types.js.map +1 -1
  21. package/dist/bundle.js +62 -62
  22. package/dist/bundle.js.map +1 -1
  23. package/dist/index.d.ts +1 -1
  24. package/dist/index.js +1 -1
  25. package/dist/index.js.map +1 -1
  26. package/package.json +11 -8
  27. package/dist/EntityItem/EntityAttributes.d.ts +0 -9
  28. package/dist/EntityItem/EntityAttributes.js +0 -83
  29. package/dist/EntityItem/EntityAttributes.js.map +0 -1
  30. package/dist/EntityItem/EntityItem.d.ts +0 -3
  31. package/dist/EntityItem/EntityItem.js +0 -134
  32. package/dist/EntityItem/EntityItem.js.map +0 -1
  33. package/dist/EntityItem/EntityMenu.d.ts +0 -3
  34. package/dist/EntityItem/EntityMenu.js +0 -48
  35. package/dist/EntityItem/EntityMenu.js.map +0 -1
  36. package/dist/EntityItem/index.d.ts +0 -2
  37. package/dist/EntityItem/index.js.map +0 -1
  38. package/dist/EntityItem/types.d.ts +0 -38
package/CHANGELOG.md CHANGED
@@ -2,6 +2,20 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
+ ### [2.7.11](https://gitlab.com/e-pilot/frontend/base/elements/compare/v2.7.8-alpha.0...v2.7.11) (2022-05-19)
6
+
7
+ ### [2.7.11-alpha.0](https://gitlab.com/e-pilot/product/frontend/base/elements/compare/v2.7.10...v2.7.11-alpha.0) (2022-04-28)
8
+
9
+ ### [2.7.10](https://gitlab.com/e-pilot/product/frontend/base/elements/compare/v2.7.10-alpha.0...v2.7.10) (2022-04-28)
10
+
11
+ ### [2.7.10-alpha.0](https://gitlab.com/e-pilot/product/frontend/base/elements/compare/v2.7.9...v2.7.10-alpha.0) (2022-04-28)
12
+
13
+ ### [2.7.9](https://gitlab.com/e-pilot/product/frontend/base/elements/compare/v2.7.8...v2.7.9) (2022-04-28)
14
+
15
+ ### [2.7.8](https://gitlab.com/e-pilot/product/frontend/base/elements/compare/v2.7.8-alpha.0...v2.7.8) (2022-04-28)
16
+
17
+ ### [2.7.8-alpha.0](https://gitlab.com/e-pilot/product/frontend/base/elements/compare/v2.7.7...v2.7.8-alpha.0) (2022-04-27)
18
+
5
19
  ### [2.7.7](https://gitlab.com/e-pilot/product/frontend/base/elements/compare/v2.7.7-alpha.2...v2.7.7) (2022-04-19)
6
20
 
7
21
  ### [2.7.7-alpha.2](https://gitlab.com/e-pilot/product/frontend/base/elements/compare/v2.7.7-alpha.1...v2.7.7-alpha.2) (2022-04-18)
package/README.md CHANGED
@@ -2,75 +2,67 @@
2
2
 
3
3
  General purpose React components for epilot UI elements.
4
4
 
5
- Based on [Material UI](https://material-ui.com/)
6
-
7
- ## Usage
8
-
9
- See [Epilot Elements Library Storybook](https://base-elements.dev.epilot.io/?path=/story/welcome-getting-started-guide--page)
10
-
11
- ## Contributing
12
-
13
- This package is shared across multiple epilot frontend projects. Please keep the components simple and general purpose.
14
-
15
- Discussion on changes happens on #ui-standards-team.
16
-
17
- PRs welcome! Please follow our [code review guideline](https://e-pilot.atlassian.net/wiki/spaces/EO/pages/2445541397/Code+Reviews).
5
+ [base-elements.dev.epilot.io](https://base-elements.dev.epilot.io/)
18
6
 
19
- ## Project base
20
-
21
- Project is Setup with:
22
-
23
- - https://github.com/formium/tsdx
24
- - https://github.com/storybookjs/storybook
25
-
26
- ## Developer instructions
27
-
28
- ### Requirements
29
-
30
- - node.js (12/14 recommended)
31
- - yarn
7
+ Based on [Material UI](https://material-ui.com/)
32
8
 
33
- ### Development
9
+ ## Quick start
34
10
 
35
11
  ```bash
36
- git clone git@gitlab.com:e-pilot/frontend/base/elements.git
37
- cd elements
38
12
  yarn
39
- yarn test
13
+ yarn start
40
14
  ```
41
15
 
42
- #### Storybook
16
+ ## Storybook
43
17
 
44
18
  ```bash
45
19
  yarn run storybook
46
20
  yarn run build-storybook
47
21
  ```
48
22
 
49
- #### Build / Watch
23
+ ## Contributing MDX (markdown documentation)
50
24
 
51
- ```bash
52
- yarn run start # watch changes and rebuild
53
- yarn run build
54
- ```
25
+ Add a `.stories.mdx` file alongside the story (example: [stories/Progress.design.stories.mdx](stories/Progress.design.stories.mdx))
55
26
 
56
- #### Other Useful Scripts
27
+ Add a `<Meta>` tag as follows:
57
28
 
58
- ```bash
59
- yarn run
29
+ ```jsx
30
+ import { Meta } from '@storybook/addon-docs';
31
+ import { Progress } from '../src'
32
+
33
+ <Meta
34
+ title="Elements/Feedback/Progress/Design"
35
+ component={Progress}
36
+ />
60
37
  ```
61
38
 
62
- ### New Release
39
+ Pass the `component` you're documenting, as well as a `title` according to where you want your story to show up in navigation:
63
40
 
64
- Create a Tag on master with
41
+ ![Example navigation](public/img/navi-example.png)
65
42
 
66
- ```bash
67
- yarn release
68
- ```
43
+ You can then add your documentation with markdown, embedded stories and images, as shown in this [full example](stories/Progress.design.stories.mdx):
69
44
 
70
- ### Branch URL Access
45
+ ```jsx
46
+ import { Canvas, Meta, Story } from '@storybook/addon-docs';
47
+ import { Progress } from '../src'
71
48
 
72
- Every push to feature branches generate a endpoint to access the storybook in our development environment like this:
49
+ <Meta
50
+ title="Elements/Feedback/Progress/Design"
51
+ component={Progress}
52
+ />
73
53
 
74
- - `https://base-elements--<branch_name>.dev.epilot.io`
75
- - If your <branch_name> have `/`, just switch for `-`
76
- - Example: `feat/somefeature` --> `https://base-elements--feat-somefeature.dev.epilot.io`
54
+ # Progress Indicator
55
+
56
+ Embedded story
57
+ <Canvas>
58
+ <Story id="elements-feedback-progress--circular-progress-indeterminade-story" />
59
+ </Canvas>
60
+
61
+ Here is an image using Markdown:
62
+
63
+ ![My image](/img/progress-image-demo.png)
64
+
65
+ Here is an image using MDX:
66
+
67
+ <img src="/img/progress-image-demo.png" alt="My image" />
68
+ ```
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ import { Drawer360Locales } from './types';
3
+ declare type ActionFooterProps = {
4
+ locales: Drawer360Locales;
5
+ handleClose: (_: React.MouseEvent<HTMLButtonElement>, reason?: 'backdropClick' | 'escapeKeyDown') => void;
6
+ handleSave: (_: React.MouseEvent<HTMLButtonElement>) => void;
7
+ unsavedChanges?: boolean;
8
+ disableSaveButton?: boolean;
9
+ };
10
+ export declare const ActionFooter: React.MemoExoticComponent<({ disableSaveButton, locales, handleClose, handleSave, unsavedChanges }: ActionFooterProps) => JSX.Element>;
11
+ export {};
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ exports.__esModule = true;
3
+ exports.ActionFooter = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var styles_1 = require("@material-ui/core/styles");
6
+ var react_1 = tslib_1.__importStar(require("react"));
7
+ var Button_1 = require("../Button");
8
+ var Icon_1 = require("../Icon");
9
+ var Tooltip_1 = require("../Tooltip");
10
+ var helpers_1 = require("./helpers");
11
+ var useStyles = styles_1.makeStyles(function (theme) { return ({
12
+ bottomBar: {
13
+ display: 'flex',
14
+ alignItems: 'center',
15
+ justifyContent: 'flex-end',
16
+ padding: '1rem 1.5rem',
17
+ boxShadow: "0px 0px 24px rgba(21, 43, 66, 0.12)",
18
+ zIndex: 1,
19
+ marginTop: 'auto'
20
+ },
21
+ noWrap: {
22
+ whiteSpace: 'nowrap'
23
+ },
24
+ warningContent: {
25
+ padding: function (_a) {
26
+ var showFullWarning = _a.showFullWarning;
27
+ return showFullWarning ? '0.5rem' : '0.5rem 0.4rem';
28
+ },
29
+ borderRadius: theme.shape.borderRadius,
30
+ marginRight: '1rem',
31
+ backgroundColor: '#FFF4DF',
32
+ color: theme.palette.warning.contrastText,
33
+ fontWeight: 600,
34
+ display: 'flex',
35
+ alignItems: 'center',
36
+ height: 32
37
+ },
38
+ warningContentText: {
39
+ marginLeft: '0.3rem'
40
+ },
41
+ saveButton: { marginLeft: '0.5rem' },
42
+ tooltip: {
43
+ backgroundColor: theme.palette.warning.main,
44
+ color: theme.palette.warning.contrastText
45
+ },
46
+ arrow: {
47
+ color: theme.palette.warning.main
48
+ }
49
+ }); });
50
+ exports.ActionFooter = react_1.memo(function (_a) {
51
+ var disableSaveButton = _a.disableSaveButton, locales = _a.locales, handleClose = _a.handleClose, handleSave = _a.handleSave, unsavedChanges = _a.unsavedChanges;
52
+ var _b = react_1.useState(undefined), ref = _b[0], setRef = _b[1];
53
+ var isOverflow = helpers_1.useIsOverflow(ref);
54
+ var showFullWarning = !isOverflow;
55
+ var classes = useStyles({ showFullWarning: showFullWarning });
56
+ var measureRef = react_1.useCallback(function (node) {
57
+ if (node !== null) {
58
+ setRef(node);
59
+ }
60
+ }, []);
61
+ return (react_1["default"].createElement("div", { className: classes.bottomBar },
62
+ unsavedChanges && locales.warningMessage && (react_1["default"].createElement(WarningTooltip, { title: showFullWarning ? '' : locales.warningMessage },
63
+ react_1["default"].createElement("div", { className: classes.warningContent },
64
+ react_1["default"].createElement(Icon_1.Icon, { color: "secondary", name: "warning" }),
65
+ showFullWarning && (react_1["default"].createElement("span", { className: classes.warningContentText, ref: measureRef }, locales.warningMessage))))),
66
+ react_1["default"].createElement("div", null,
67
+ react_1["default"].createElement(Button_1.Button, { className: classes.noWrap, onClick: handleClose, variant: "outlined" }, locales.discardButtonLabel)),
68
+ react_1["default"].createElement(Tooltip_1.Tooltip, { title: unsavedChanges ? '' : locales.noChangesMessage },
69
+ react_1["default"].createElement("div", null,
70
+ react_1["default"].createElement(Button_1.Button, { className: classes.saveButton + " " + classes.noWrap, color: "primary", disabled: !unsavedChanges || disableSaveButton, onClick: handleSave, variant: "contained" }, locales.saveButtonLabel)))));
71
+ });
72
+ var WarningTooltip = function (props) {
73
+ var classes = useStyles({});
74
+ return (react_1["default"].createElement(Tooltip_1.Tooltip, tslib_1.__assign({}, props, { classes: { arrow: classes.arrow, tooltip: classes.tooltip } })));
75
+ };
76
+ //# sourceMappingURL=ActionFooter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ActionFooter.js","sourceRoot":"","sources":["../../src/Drawer360/ActionFooter.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import { Drawer360Locales } from './types';
3
+ declare type DiscardDialogProps = {
4
+ open: boolean;
5
+ onClose: () => void;
6
+ handleDiscard: (_: React.MouseEvent<HTMLButtonElement>) => void;
7
+ locales: Partial<Drawer360Locales>;
8
+ };
9
+ export declare const DiscardDialog: React.MemoExoticComponent<({ open, onClose, handleDiscard, locales }: DiscardDialogProps) => JSX.Element>;
10
+ export {};
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ exports.__esModule = true;
3
+ exports.DiscardDialog = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var styles_1 = require("@material-ui/core/styles");
6
+ var react_1 = tslib_1.__importStar(require("react"));
7
+ var Button_1 = require("../Button");
8
+ var Dialog_1 = require("../Dialog");
9
+ var Icon_1 = require("../Icon");
10
+ var useStyles = styles_1.makeStyles(function (theme) { return ({
11
+ body: {
12
+ padding: '1.5rem 1.5rem',
13
+ position: 'absolute',
14
+ inset: 0,
15
+ background: '#EDF2F7',
16
+ overflowY: 'scroll'
17
+ },
18
+ noWrap: {
19
+ whiteSpace: 'nowrap'
20
+ },
21
+ error: {
22
+ backgroundColor: theme.palette.error.main,
23
+ color: theme.palette.error.contrastText
24
+ },
25
+ discardDialogHeader: {
26
+ '& > h2': {
27
+ display: 'flex',
28
+ alignItems: 'center'
29
+ }
30
+ },
31
+ discardDialogTitle: { marginLeft: '1rem' },
32
+ discardDialogContent: { margin: '0 0 0 2.3rem' }
33
+ }); });
34
+ exports.DiscardDialog = react_1.memo(function (_a) {
35
+ var _b, _c, _d, _e;
36
+ var open = _a.open, onClose = _a.onClose, handleDiscard = _a.handleDiscard, locales = _a.locales;
37
+ var classes = useStyles({ responsive: false, size: 'small' });
38
+ return (react_1["default"].createElement(Dialog_1.Dialog, { "aria-describedby": "dialog-description", "aria-labelledby": "dialog-title", maxWidth: "sm", onClose: onClose, open: open },
39
+ react_1["default"].createElement(Dialog_1.DialogTitle, { className: classes.discardDialogHeader },
40
+ react_1["default"].createElement(Icon_1.EIcon, { color: "error", fontSize: "small", name: "trash" }),
41
+ react_1["default"].createElement("span", { className: classes.discardDialogTitle }, (_b = locales.discardChangesDialog) === null || _b === void 0 ? void 0 : _b.title)),
42
+ react_1["default"].createElement(Dialog_1.DialogContent, null,
43
+ react_1["default"].createElement(Dialog_1.DialogContentText, { className: classes.discardDialogContent }, (_c = locales.discardChangesDialog) === null || _c === void 0 ? void 0 : _c.message)),
44
+ react_1["default"].createElement(Dialog_1.DialogActions, null,
45
+ react_1["default"].createElement(Button_1.Button, { className: classes.noWrap, onClick: onClose, variant: "outlined" }, (_d = locales.discardChangesDialog) === null || _d === void 0 ? void 0 : _d.cancelButtonLabel),
46
+ react_1["default"].createElement(Button_1.Button, { className: classes.error + " " + classes.noWrap, onClick: handleDiscard, variant: "contained" }, (_e = locales.discardChangesDialog) === null || _e === void 0 ? void 0 : _e.confirmButtonLabel))));
47
+ });
48
+ exports.DiscardDialog.displayName = 'DiscardDialog';
49
+ //# sourceMappingURL=DiscardDialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DiscardDialog.js","sourceRoot":"","sources":["../../src/Drawer360/DiscardDialog.tsx"],"names":[],"mappings":";;;;AAAA,mDAAqD;AACrD,qDAAmC;AAEnC,oCAAkC;AAClC,oCAMkB;AAClB,gCAA+B;AAY/B,IAAM,SAAS,GAAG,mBAAU,CAAC,UAAC,KAAY,IAAK,OAAA,CAAC;IAC9C,IAAI,EAAE;QACJ,OAAO,EAAE,eAAe;QACxB,QAAQ,EAAE,UAAU;QACpB,KAAK,EAAE,CAAC;QACR,UAAU,EAAE,SAAS;QACrB,SAAS,EAAE,QAAQ;KACpB;IACD,MAAM,EAAE;QACN,UAAU,EAAE,QAAQ;KACrB;IACD,KAAK,EAAE;QACL,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI;QACzC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY;KACxC;IACD,mBAAmB,EAAE;QACnB,QAAQ,EAAE;YACR,OAAO,EAAE,MAAM;YACf,UAAU,EAAE,QAAQ;SACrB;KACF;IACD,kBAAkB,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE;IAC1C,oBAAoB,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE;CACjD,CAAC,EAvB6C,CAuB7C,CAAC,CAAA;AAEU,QAAA,aAAa,GAAG,YAAI,CAC/B,UAAC,EAA6D;;QAA3D,IAAI,UAAA,EAAE,OAAO,aAAA,EAAE,aAAa,mBAAA,EAAE,OAAO,aAAA;IACtC,IAAM,OAAO,GAAG,SAAS,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAA;IAE/D,OAAO,CACL,iCAAC,eAAM,wBACY,oBAAoB,qBACrB,cAAc,EAC9B,QAAQ,EAAC,IAAI,EACb,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI;QAEV,iCAAC,oBAAW,IAAC,SAAS,EAAE,OAAO,CAAC,mBAAmB;YACjD,iCAAC,YAAK,IAAC,KAAK,EAAC,OAAO,EAAC,QAAQ,EAAC,OAAO,EAAC,IAAI,EAAC,OAAO,GAAG;YACrD,2CAAM,SAAS,EAAE,OAAO,CAAC,kBAAkB,UACxC,OAAO,CAAC,oBAAoB,0CAAE,KAAK,CAC/B,CACK;QACd,iCAAC,sBAAa;YACZ,iCAAC,0BAAiB,IAAC,SAAS,EAAE,OAAO,CAAC,oBAAoB,UACvD,OAAO,CAAC,oBAAoB,0CAAE,OAAO,CACpB,CACN;QAChB,iCAAC,sBAAa;YACZ,iCAAC,eAAM,IACL,SAAS,EAAE,OAAO,CAAC,MAAM,EACzB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAC,UAAU,UAEjB,OAAO,CAAC,oBAAoB,0CAAE,iBAAiB,CACzC;YAET,iCAAC,eAAM,IACL,SAAS,EAAK,OAAO,CAAC,KAAK,SAAI,OAAO,CAAC,MAAQ,EAC/C,OAAO,EAAE,aAAa,EACtB,OAAO,EAAC,WAAW,UAElB,OAAO,CAAC,oBAAoB,0CAAE,kBAAkB,CAC1C,CACK,CACT,CACV,CAAA;AACH,CAAC,CACF,CAAA;AAED,qBAAa,CAAC,WAAW,GAAG,eAAe,CAAA"}
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import { Drawer360Props } from './types';
3
+ export declare function Drawer360({ anchor, children, onClose, onSave, onDiscard, responsive, size, showActionButtons, title, unsavedChanges, open, disableSaveButton, locales: localesProp, onBackdropClick, onEscapeKeyDown, onRendered, ...rest }: Drawer360Props): JSX.Element;
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+ exports.__esModule = true;
3
+ exports.Drawer360 = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var core_1 = require("@material-ui/core");
6
+ var styles_1 = require("@material-ui/core/styles");
7
+ var react_1 = tslib_1.__importStar(require("react"));
8
+ var Button_1 = require("../Button");
9
+ var Dialog_1 = require("../Dialog");
10
+ var Icon_1 = require("../Icon");
11
+ var Tooltip_1 = require("../Tooltip");
12
+ var Typography_1 = require("../Typography");
13
+ var ActionFooter_1 = require("./ActionFooter");
14
+ var DiscardDialog_1 = require("./DiscardDialog");
15
+ var helpers_1 = require("./helpers");
16
+ var customSizes = [
17
+ { 'one-third': '560px', 'two-thirds': '720px', 'max-width': '850px' },
18
+ { 'one-third': '33vw', 'two-thirds': '66vw', 'max-width': '90vw' }
19
+ ];
20
+ var useStyles = styles_1.makeStyles(function () { return ({
21
+ sideDrawerRoot: {
22
+ display: 'flex',
23
+ flexDirection: 'column',
24
+ flex: 1,
25
+ minWidth: '464px',
26
+ width: function (_a) {
27
+ var _b = _a.responsive, responsive = _b === void 0 ? true : _b, _c = _a.size, size = _c === void 0 ? 'two-thirds' : _c;
28
+ return customSizes[Number(responsive)][size];
29
+ }
30
+ },
31
+ topBar: {
32
+ padding: '1rem 1.5rem',
33
+ display: 'flex',
34
+ alignItems: 'center',
35
+ justifyContent: 'space-between',
36
+ boxShadow: 'inset 0px -1px 0px #c1c7d0;'
37
+ },
38
+ closeIcon: {
39
+ paddingRight: 0
40
+ },
41
+ title: {
42
+ fontSize: 20,
43
+ fontWeight: 600
44
+ },
45
+ dialogContent: {
46
+ position: 'relative'
47
+ },
48
+ body: {
49
+ padding: '1.5rem 1.5rem',
50
+ position: 'absolute',
51
+ inset: 0,
52
+ background: '#EDF2F7',
53
+ overflowY: 'scroll'
54
+ }
55
+ }); });
56
+ function Drawer360(_a) {
57
+ var _b = _a.anchor, anchor = _b === void 0 ? 'right' : _b, children = _a.children, onClose = _a.onClose, onSave = _a.onSave, onDiscard = _a.onDiscard, _c = _a.responsive, responsive = _c === void 0 ? true : _c, _d = _a.size, size = _d === void 0 ? 'two-thirds' : _d, _e = _a.showActionButtons, showActionButtons = _e === void 0 ? true : _e, title = _a.title, unsavedChanges = _a.unsavedChanges, open = _a.open, disableSaveButton = _a.disableSaveButton, localesProp = _a.locales,
58
+ // prop sanitisation for deprecated props
59
+ onBackdropClick = _a.onBackdropClick, onEscapeKeyDown = _a.onEscapeKeyDown, onRendered = _a.onRendered, rest = tslib_1.__rest(_a, ["anchor", "children", "onClose", "onSave", "onDiscard", "responsive", "size", "showActionButtons", "title", "unsavedChanges", "open", "disableSaveButton", "locales", "onBackdropClick", "onEscapeKeyDown", "onRendered"]);
60
+ var classes = useStyles({ responsive: responsive, size: size });
61
+ var _f = react_1["default"].useState(false), showDiscardDialog = _f[0], setShowDiscardDialog = _f[1];
62
+ var handleClose = react_1.useCallback(function (e, reason) {
63
+ if (showActionButtons && unsavedChanges) {
64
+ setShowDiscardDialog(true);
65
+ }
66
+ else {
67
+ onClose && onClose(e, reason !== null && reason !== void 0 ? reason : 'backdropClick');
68
+ }
69
+ }, [showActionButtons, unsavedChanges, onClose]);
70
+ var handleSave = react_1.useCallback(function (e) {
71
+ onSave && onSave(e);
72
+ }, [onSave]);
73
+ var handleDiscard = react_1.useCallback(function (e) {
74
+ setShowDiscardDialog(false);
75
+ onDiscard && onDiscard(e);
76
+ }, [onDiscard]);
77
+ var closeDiscardDialog = react_1.useCallback(function () {
78
+ setShowDiscardDialog(false);
79
+ }, []);
80
+ var locales = helpers_1.useLocales(localesProp);
81
+ return (react_1["default"].createElement(core_1.Drawer, tslib_1.__assign({}, rest, { anchor: anchor, elevation: 2, onClose: handleClose, open: open }),
82
+ react_1["default"].createElement("div", { className: classes.sideDrawerRoot + " " + rest.className },
83
+ react_1["default"].createElement("div", { className: classes.topBar },
84
+ react_1["default"].createElement(Typography_1.H3, { className: classes.title }, title),
85
+ react_1["default"].createElement(Tooltip_1.Tooltip, { title: locales.closeButtonLabel },
86
+ react_1["default"].createElement("div", null,
87
+ react_1["default"].createElement(Button_1.IconButton, { className: classes.closeIcon, onClick: handleClose },
88
+ react_1["default"].createElement(Icon_1.EIcon, { color: "secondary", name: "x" }))))),
89
+ react_1["default"].createElement(Dialog_1.DialogContent, { className: classes.dialogContent },
90
+ react_1["default"].createElement("div", { className: classes.body }, children)),
91
+ showActionButtons && (react_1["default"].createElement(ActionFooter_1.ActionFooter, { disableSaveButton: disableSaveButton, handleClose: handleClose, handleSave: handleSave, locales: locales, unsavedChanges: unsavedChanges }))),
92
+ react_1["default"].createElement(DiscardDialog_1.DiscardDialog, { handleDiscard: handleDiscard, locales: locales, onClose: closeDiscardDialog, open: showDiscardDialog })));
93
+ }
94
+ exports.Drawer360 = Drawer360;
95
+ //# sourceMappingURL=Drawer360.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Drawer360.js","sourceRoot":"","sources":["../../src/Drawer360/Drawer360.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Drawer360Locales } from './types';
2
+ export declare const useLocales: (locales?: Partial<Drawer360Locales> | undefined) => Drawer360Locales;
3
+ export declare const useIsOverflow: (element?: HTMLElement | undefined, callback?: ((_?: boolean | undefined) => void) | undefined) => boolean | undefined;
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ exports.__esModule = true;
3
+ exports.useIsOverflow = exports.useLocales = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var react_1 = require("react");
6
+ var DEFAULT_LOCALES = {
7
+ warningMessage: 'There are some unsaved changes',
8
+ closeButtonLabel: 'Close',
9
+ discardButtonLabel: 'Discard changes',
10
+ saveButtonLabel: 'Save changes',
11
+ noChangesMessage: "You're all good, no changes to be saved yet",
12
+ discardChangesDialog: {
13
+ title: 'Discard your changes',
14
+ message: "You have some unsaved changes. If you discard them now, you won't be able to recover them.",
15
+ cancelButtonLabel: 'Continue editing',
16
+ confirmButtonLabel: 'Discard now'
17
+ }
18
+ };
19
+ var useLocales = function (locales) {
20
+ return react_1.useMemo(function () {
21
+ if (!locales || !Object.keys(locales).length) {
22
+ return DEFAULT_LOCALES;
23
+ }
24
+ return tslib_1.__assign(tslib_1.__assign({}, DEFAULT_LOCALES), locales);
25
+ }, [locales]);
26
+ };
27
+ exports.useLocales = useLocales;
28
+ var useIsOverflow = function (element, callback) {
29
+ var _a = react_1.useState(undefined), isOverflow = _a[0], setIsOverflow = _a[1];
30
+ react_1.useLayoutEffect(function () {
31
+ var _a, _b;
32
+ var trigger = function () {
33
+ var _a, _b;
34
+ var hasOverflow = Boolean(((element === null || element === void 0 ? void 0 : element.clientWidth) || 0) >
35
+ (((_a = element === null || element === void 0 ? void 0 : element.parentElement) === null || _a === void 0 ? void 0 : _a.clientWidth) || Number.MAX_VALUE) ||
36
+ ((element === null || element === void 0 ? void 0 : element.clientHeight) || 0) >
37
+ (((_b = element === null || element === void 0 ? void 0 : element.parentElement) === null || _b === void 0 ? void 0 : _b.clientHeight) || Number.MAX_VALUE));
38
+ if (hasOverflow !== isOverflow) {
39
+ setIsOverflow(hasOverflow);
40
+ if (callback)
41
+ callback(hasOverflow);
42
+ }
43
+ };
44
+ // Adding listener to the parent of parent as it changes with changing width
45
+ if (((_a = element === null || element === void 0 ? void 0 : element.parentElement) === null || _a === void 0 ? void 0 : _a.parentElement) && 'ResizeObserver' in window) {
46
+ new ResizeObserver(trigger).observe((_b = element === null || element === void 0 ? void 0 : element.parentElement) === null || _b === void 0 ? void 0 : _b.parentElement);
47
+ }
48
+ if (element === null || element === void 0 ? void 0 : element.parentElement)
49
+ trigger();
50
+ return function () {
51
+ var _a, _b;
52
+ if (((_a = element === null || element === void 0 ? void 0 : element.parentElement) === null || _a === void 0 ? void 0 : _a.parentElement) && 'ResizeObserver' in window) {
53
+ new ResizeObserver(trigger).unobserve((_b = element === null || element === void 0 ? void 0 : element.parentElement) === null || _b === void 0 ? void 0 : _b.parentElement);
54
+ }
55
+ };
56
+ }, [callback, element, setIsOverflow, isOverflow]);
57
+ return isOverflow;
58
+ };
59
+ exports.useIsOverflow = useIsOverflow;
60
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/Drawer360/helpers.ts"],"names":[],"mappings":";;;;AAAA,+BAA0D;AAI1D,IAAM,eAAe,GAAqB;IACxC,cAAc,EAAE,gCAAgC;IAChD,gBAAgB,EAAE,OAAO;IACzB,kBAAkB,EAAE,iBAAiB;IACrC,eAAe,EAAE,cAAc;IAC/B,gBAAgB,EAAE,6CAA6C;IAC/D,oBAAoB,EAAE;QACpB,KAAK,EAAE,sBAAsB;QAC7B,OAAO,EACL,4FAA4F;QAC9F,iBAAiB,EAAE,kBAAkB;QACrC,kBAAkB,EAAE,aAAa;KAClC;CACF,CAAA;AAEM,IAAM,UAAU,GAAG,UAAC,OAAmC;IAC5D,OAAO,eAAO,CAAC;QACb,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE;YAC5C,OAAO,eAAe,CAAA;SACvB;QAED,6CAAY,eAAe,GAAK,OAAO,EAAE;IAC3C,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAA;AACf,CAAC,CAAA;AARY,QAAA,UAAU,cAQtB;AAEM,IAAM,aAAa,GAAG,UAC3B,OAAqB,EACrB,QAAgC;IAE1B,IAAA,KAA8B,gBAAQ,CAAsB,SAAS,CAAC,EAArE,UAAU,QAAA,EAAE,aAAa,QAA4C,CAAA;IAE5E,uBAAe,CAAC;;QACd,IAAM,OAAO,GAAG;;YACd,IAAM,WAAW,GAAG,OAAO,CACzB,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,KAAI,CAAC,CAAC;gBACzB,CAAC,OAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,aAAa,0CAAE,WAAW,KAAI,MAAM,CAAC,SAAS,CAAC;gBACzD,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,KAAI,CAAC,CAAC;oBAC1B,CAAC,OAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,aAAa,0CAAE,YAAY,KAAI,MAAM,CAAC,SAAS,CAAC,CAC/D,CAAA;YAED,IAAI,WAAW,KAAK,UAAU,EAAE;gBAC9B,aAAa,CAAC,WAAW,CAAC,CAAA;gBAC1B,IAAI,QAAQ;oBAAE,QAAQ,CAAC,WAAW,CAAC,CAAA;aACpC;QACH,CAAC,CAAA;QAED,4EAA4E;QAC5E,IAAI,OAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,aAAa,0CAAE,aAAa,KAAI,gBAAgB,IAAI,MAAM,EAAE;YACvE,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,OAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,aAAa,0CAAE,aAAa,CAAC,CAAA;SAC3E;QACD,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,aAAa;YAAE,OAAO,EAAE,CAAA;QAErC,OAAO;;YACL,IAAI,OAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,aAAa,0CAAE,aAAa,KAAI,gBAAgB,IAAI,MAAM,EAAE;gBACvE,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC,SAAS,OACnC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,aAAa,0CAAE,aAAa,CACtC,CAAA;aACF;QACH,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC,CAAA;IAElD,OAAO,UAAU,CAAA;AACnB,CAAC,CAAA;AArCY,QAAA,aAAa,iBAqCzB"}
@@ -0,0 +1,2 @@
1
+ export * from './Drawer360';
2
+ export * from './types';
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  exports.__esModule = true;
3
3
  var tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./EntityItem"), exports);
4
+ tslib_1.__exportStar(require("./Drawer360"), exports);
5
5
  tslib_1.__exportStar(require("./types"), exports);
6
6
  //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Drawer360/index.ts"],"names":[],"mappings":";;;AAAA,sDAA2B;AAC3B,kDAAuB"}
@@ -0,0 +1,27 @@
1
+ import { DrawerProps as MuiDrawerProps } from '@material-ui/core';
2
+ import React from 'react';
3
+ export declare type Drawer360Props = Omit<MuiDrawerProps, 'anchor' | 'elevation' | 'variant' | 'transitionDuration' | 'title'> & {
4
+ responsive?: boolean;
5
+ size?: 'one-third' | 'two-thirds' | 'max-width';
6
+ title?: React.ReactNode;
7
+ unsavedChanges?: boolean;
8
+ onSave?: (_: React.MouseEvent) => void;
9
+ onDiscard?: (_: React.MouseEvent) => void;
10
+ showActionButtons?: boolean;
11
+ locales?: Partial<Drawer360Locales>;
12
+ disableSaveButton?: boolean;
13
+ anchor?: 'left' | 'right';
14
+ };
15
+ export interface Drawer360Locales {
16
+ saveButtonLabel: string;
17
+ discardButtonLabel: string;
18
+ warningMessage: string;
19
+ noChangesMessage: string;
20
+ closeButtonLabel: string;
21
+ discardChangesDialog: {
22
+ title: string;
23
+ message: string;
24
+ cancelButtonLabel: string;
25
+ confirmButtonLabel: string;
26
+ };
27
+ }
File without changes
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/EntityItem/types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/Drawer360/types.ts"],"names":[],"mappings":""}