venice-ui 1.0.7 → 1.0.10

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 (110) hide show
  1. package/dist/cjs/Theme/Theme.js +3 -1
  2. package/dist/cjs/Theme/index.js +17 -0
  3. package/dist/cjs/components/Button/Button.styles.js +2 -1
  4. package/dist/cjs/components/Card/Card.js +3 -7
  5. package/dist/cjs/components/Card/Card.styles.js +1 -2
  6. package/dist/cjs/components/Card/index.js +3 -15
  7. package/dist/cjs/components/Dropdown/Dropdown.js +67 -0
  8. package/dist/cjs/components/Dropdown/Dropdown.styles.js +38 -0
  9. package/dist/cjs/components/Dropdown/DropdownElements.js +29 -0
  10. package/dist/cjs/components/Dropdown/index.js +18 -0
  11. package/dist/cjs/components/ElementHeader/ElementHeader.js +40 -0
  12. package/dist/cjs/components/ElementHeader/index.js +17 -0
  13. package/dist/cjs/components/Icons/Icon.js +1 -1
  14. package/dist/cjs/components/Icons/Icon.styles.js +1 -1
  15. package/dist/cjs/components/Icons/IconsPath.js +20 -9
  16. package/dist/cjs/components/InputText/InputText.js +10 -2
  17. package/dist/cjs/components/InputText/InputText.styles.js +33 -15
  18. package/dist/cjs/components/InputText/index.js +5 -1
  19. package/dist/cjs/components/Modal/Modal.js +2 -5
  20. package/dist/cjs/components/Modal/Modal.styles.js +1 -1
  21. package/dist/cjs/components/More/More.js +50 -0
  22. package/dist/cjs/components/More/More.styles.js +36 -0
  23. package/dist/cjs/components/More/index.js +17 -0
  24. package/dist/cjs/components/Selector/Selector.js +53 -0
  25. package/dist/cjs/components/Selector/Selector.styles.js +30 -0
  26. package/dist/cjs/components/Selector/index.js +17 -0
  27. package/dist/cjs/components/Sidepanel/Sidepanel.js +52 -0
  28. package/dist/cjs/components/Sidepanel/Sidepanel.styles.js +19 -0
  29. package/dist/cjs/components/Sidepanel/index.js +17 -0
  30. package/dist/cjs/components/Tile/Tile.js +15 -0
  31. package/dist/cjs/components/Tile/Tile.styles.js +26 -0
  32. package/dist/cjs/components/Tile/index.js +17 -0
  33. package/dist/cjs/components/Typography/Typography.styles.js +6 -1
  34. package/dist/cjs/components/common/index.js +1 -0
  35. package/dist/cjs/components/common/inputStyles.js +71 -0
  36. package/dist/cjs/index.js +3 -0
  37. package/dist/cjs/types/commonTypes.js +2 -0
  38. package/dist/cjs/types/index.js +1 -0
  39. package/dist/esm/Theme/Theme.js +3 -1
  40. package/dist/esm/Theme/index.js +1 -0
  41. package/dist/esm/components/Button/Button.styles.js +2 -1
  42. package/dist/esm/components/Card/Card.js +3 -7
  43. package/dist/esm/components/Card/Card.styles.js +1 -2
  44. package/dist/esm/components/Card/index.js +1 -1
  45. package/dist/esm/components/Dropdown/Dropdown.js +40 -0
  46. package/dist/esm/components/Dropdown/Dropdown.styles.js +32 -0
  47. package/dist/esm/components/Dropdown/DropdownElements.js +23 -0
  48. package/dist/esm/components/Dropdown/index.js +2 -0
  49. package/dist/esm/components/ElementHeader/ElementHeader.js +33 -0
  50. package/dist/esm/components/ElementHeader/index.js +1 -0
  51. package/dist/esm/components/Icons/Icon.js +1 -1
  52. package/dist/esm/components/Icons/Icon.styles.js +1 -1
  53. package/dist/esm/components/Icons/IconsPath.js +20 -9
  54. package/dist/esm/components/InputText/InputText.js +12 -4
  55. package/dist/esm/components/InputText/InputText.styles.js +32 -14
  56. package/dist/esm/components/InputText/index.js +1 -0
  57. package/dist/esm/components/Modal/Modal.js +2 -5
  58. package/dist/esm/components/Modal/Modal.styles.js +1 -1
  59. package/dist/esm/components/More/More.js +23 -0
  60. package/dist/esm/components/More/More.styles.js +30 -0
  61. package/dist/esm/components/More/index.js +1 -0
  62. package/dist/esm/components/Selector/Selector.js +26 -0
  63. package/dist/esm/components/Selector/Selector.styles.js +24 -0
  64. package/dist/esm/components/Selector/index.js +1 -0
  65. package/dist/esm/components/Sidepanel/Sidepanel.js +25 -0
  66. package/dist/esm/components/Sidepanel/Sidepanel.styles.js +13 -0
  67. package/dist/esm/components/Sidepanel/index.js +1 -0
  68. package/dist/esm/components/Tile/Tile.js +8 -0
  69. package/dist/esm/components/Tile/Tile.styles.js +20 -0
  70. package/dist/esm/components/Tile/index.js +1 -0
  71. package/dist/esm/components/Typography/Typography.styles.js +6 -1
  72. package/dist/esm/components/common/index.js +1 -0
  73. package/dist/esm/components/common/inputStyles.js +66 -0
  74. package/dist/esm/index.js +3 -0
  75. package/dist/esm/types/commonTypes.js +1 -0
  76. package/dist/esm/types/index.js +1 -0
  77. package/dist/types/Theme/Theme.d.ts +2 -0
  78. package/dist/types/Theme/index.d.ts +1 -0
  79. package/dist/types/components/Card/Card.d.ts +5 -0
  80. package/dist/types/components/Card/index.d.ts +1 -1
  81. package/dist/types/components/Dropdown/Dropdown.d.ts +17 -0
  82. package/dist/types/components/Dropdown/Dropdown.styles.d.ts +10 -0
  83. package/dist/types/components/Dropdown/DropdownElements.d.ts +9 -0
  84. package/dist/types/components/Dropdown/index.d.ts +2 -0
  85. package/dist/types/components/ElementHeader/ElementHeader.d.ts +19 -0
  86. package/dist/types/components/ElementHeader/index.d.ts +1 -0
  87. package/dist/types/components/Icons/IconsPath.d.ts +18 -7
  88. package/dist/types/components/InputText/InputText.d.ts +7 -8
  89. package/dist/types/components/InputText/InputText.styles.d.ts +16 -1
  90. package/dist/types/components/InputText/index.d.ts +1 -0
  91. package/dist/types/components/More/More.d.ts +9 -0
  92. package/dist/types/components/More/More.styles.d.ts +6 -0
  93. package/dist/types/components/More/index.d.ts +1 -0
  94. package/dist/types/components/Selector/Selector.d.ts +16 -0
  95. package/dist/types/components/Selector/Selector.styles.d.ts +7 -0
  96. package/dist/types/components/Selector/index.d.ts +1 -0
  97. package/dist/types/components/Sidepanel/Sidepanel.d.ts +12 -0
  98. package/dist/types/components/Sidepanel/Sidepanel.styles.d.ts +6 -0
  99. package/dist/types/components/Sidepanel/index.d.ts +1 -0
  100. package/dist/types/components/Tile/Tile.d.ts +8 -0
  101. package/dist/types/components/Tile/Tile.styles.d.ts +6 -0
  102. package/dist/types/components/Tile/index.d.ts +1 -0
  103. package/dist/types/components/Typography/Typography.styles.d.ts +6 -1
  104. package/dist/types/components/common/index.d.ts +1 -0
  105. package/dist/types/components/common/inputStyles.d.ts +21 -0
  106. package/dist/types/index.d.ts +3 -0
  107. package/dist/types/types/commonTypes.d.ts +12 -0
  108. package/dist/types/types/index.d.ts +1 -0
  109. package/dist/types/types/types.d.ts +12 -0
  110. package/package.json +1 -1
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.Selector = void 0;
27
+ const Aligment_1 = require("../Aligment");
28
+ const react_1 = __importStar(require("react"));
29
+ const InputText_1 = require("../InputText");
30
+ const Icons_1 = require("../Icons");
31
+ const Selector_styles_1 = require("./Selector.styles");
32
+ const Modal_1 = require("../Modal");
33
+ const Dropdown_styles_1 = require("../Dropdown/Dropdown.styles");
34
+ const Selector = ({ label, labelPosition = 'top', size = 'medium', width, options, value, name, error, handleSelect, handleClear, iconName = 'add_circle', }) => {
35
+ const [open, toogleOpen] = (0, react_1.useState)(false);
36
+ const selectOption = (selectedValue) => {
37
+ handleSelect(name, selectedValue);
38
+ toogleOpen(false);
39
+ };
40
+ const getLabelForValue = (value) => {
41
+ return options.find((option) => option.value === value).label;
42
+ };
43
+ return (react_1.default.createElement(Aligment_1.Aligment, { align: labelPosition === 'top' ? 'flex-start' : 'center', justify: labelPosition === 'top' ? 'center' : 'flex-start', direction: labelPosition === 'top' ? 'column' : 'row', wrap: 'nowrap', width: width },
44
+ label && (react_1.default.createElement(InputText_1.InputLabelElement, { size: size, labelPosition: labelPosition }, label)),
45
+ react_1.default.createElement(Selector_styles_1.SelectorElement, null,
46
+ value ? (react_1.default.createElement(react_1.default.Fragment, null,
47
+ react_1.default.createElement(Selector_styles_1.SelectorValue, { onClick: () => toogleOpen(true), size: size }, getLabelForValue(value)),
48
+ react_1.default.createElement(Icons_1.Icon, { name: 'close', onClick: () => handleClear(), size: 20 }))) : (react_1.default.createElement(Icons_1.Icon, { name: iconName, onClick: () => toogleOpen(true), size: 20 })),
49
+ open && (react_1.default.createElement(Modal_1.Modal, { title: "Select", labelClose: "Close", handleClose: () => toogleOpen(false) }, options &&
50
+ options.map((option) => (react_1.default.createElement(Dropdown_styles_1.DropdownOption, { key: option.value, active: option.value === value, onClick: () => selectOption(option.value) }, option.label))))),
51
+ error && react_1.default.createElement(InputText_1.InputErrorMsg, null, error))));
52
+ };
53
+ exports.Selector = Selector;
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.SelectorValue = exports.SelectorElement = void 0;
7
+ const styled_components_1 = __importDefault(require("styled-components"));
8
+ const Theme_1 = require("../../Theme");
9
+ const common_1 = require("../common");
10
+ const polished_1 = require("polished");
11
+ exports.SelectorElement = styled_components_1.default.div `
12
+ position: relative;
13
+ cursor: pointer;
14
+ display:flex;
15
+ box-sizing:border-box;
16
+ `;
17
+ exports.SelectorValue = styled_components_1.default.div `
18
+ cursor: pointer;
19
+ display:flex;
20
+ box-sizing:border-box;
21
+ width:100%;
22
+ align-items: center;
23
+ padding: ${Theme_1.Theme.padding.s};
24
+ ${(p) => (0, common_1.setLabelFontSize)(p.size)}
25
+ color:${Theme_1.Theme.colors.primary};
26
+ &:hover{
27
+ background-color: ${(0, polished_1.lighten)(0.3, Theme_1.Theme.colors.primary)};
28
+ }
29
+
30
+ `;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./Selector"), exports);
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.Sidepanel = void 0;
27
+ const ElementHeader_1 = require("../ElementHeader");
28
+ const react_1 = __importStar(require("react"));
29
+ const Modal_styles_1 = require("../Modal/Modal.styles");
30
+ const Sidepanel_styles_1 = require("./Sidepanel.styles");
31
+ const Icons_1 = require("../Icons");
32
+ const Sidepanel = ({ handleClose, children, right = false, overlayer = true, top = 0, iconOptions, }) => {
33
+ const ref = (0, react_1.useRef)(null);
34
+ (0, react_1.useEffect)(() => {
35
+ const handleClickOutside = (event) => {
36
+ if (ref.current && !ref.current.contains(event.target)) {
37
+ handleClose && handleClose();
38
+ }
39
+ };
40
+ document.addEventListener('click', handleClickOutside, true);
41
+ return () => {
42
+ document.removeEventListener('click', handleClickOutside, true);
43
+ };
44
+ }, [handleClose]);
45
+ return (react_1.default.createElement(react_1.default.Fragment, null,
46
+ react_1.default.createElement(Sidepanel_styles_1.SidepanelElement, { right: right, top: top, ref: ref },
47
+ react_1.default.createElement(ElementHeader_1.ElementHeader, { handleClose: handleClose, showTitle: false }, iconOptions &&
48
+ iconOptions.map((icon) => (react_1.default.createElement(Icons_1.Icon, { name: icon.iconName, onClick: icon.action, key: icon.iconName })))),
49
+ children),
50
+ overlayer && react_1.default.createElement(Modal_styles_1.ModalOverlayer, { onClick: handleClose })));
51
+ };
52
+ exports.Sidepanel = Sidepanel;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.SidepanelElement = void 0;
7
+ const styled_components_1 = __importDefault(require("styled-components"));
8
+ const Theme_1 = require("../../Theme/Theme");
9
+ exports.SidepanelElement = styled_components_1.default.div `
10
+ height: calc( 100vh - ${p => p.top}px);
11
+ width: 20rem;
12
+ background-color: ${Theme_1.Theme.colors.white};
13
+ position: fixed;
14
+ top: ${p => p.top};
15
+ z-index: 1001;
16
+ box-shadow: ${Theme_1.Theme.shadow.m};
17
+ ${p => p.right ? `right:0;` : 'left:0;'}
18
+
19
+ `;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./Sidepanel"), exports);
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.Tile = void 0;
7
+ const ElementHeader_1 = require("../ElementHeader");
8
+ const react_1 = __importDefault(require("react"));
9
+ const Tile_styles_1 = require("./Tile.styles");
10
+ const Tile = ({ size = 'small', shadow = true, title, children, }) => {
11
+ return (react_1.default.createElement(Tile_styles_1.TileElement, { size: size, shadow: shadow },
12
+ title && react_1.default.createElement(ElementHeader_1.ElementHeader, { title: title }),
13
+ children));
14
+ };
15
+ exports.Tile = Tile;
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.TileElement = void 0;
7
+ const styled_components_1 = __importDefault(require("styled-components"));
8
+ const Theme_1 = require("../../Theme");
9
+ exports.TileElement = styled_components_1.default.div `
10
+ box-sizing: border-box;
11
+ display: flex;
12
+ width: 100%;
13
+ background-color: ${Theme_1.Theme.colors.white};
14
+ border-radius: ${Theme_1.Theme.borderRadius.m};
15
+ max-height: 100%;
16
+ overflow: hidden;
17
+ flex-direction: column;
18
+ position: relative;
19
+ ${(p) => p.shadow &&
20
+ `
21
+ box-shadow: ${Theme_1.Theme.shadow.s}
22
+ `}
23
+ ${(p) => p.size === 'small' && `max-width:500px`}
24
+ ${(p) => p.size === 'medium' && `max-width:750px`}
25
+ ${(p) => p.size === 'large' && `max-width:100%`}
26
+ `;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./Tile"), exports);
@@ -4,6 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.TextLabel = exports.TextSubHeader = exports.TextHeader = exports.TextSmall = exports.Text = void 0;
7
+ const common_1 = require("../common");
7
8
  const styled_components_1 = __importDefault(require("styled-components"));
8
9
  const Theme_1 = require("../../Theme/Theme");
9
10
  exports.Text = styled_components_1.default.div `
@@ -27,7 +28,11 @@ exports.TextSubHeader = styled_components_1.default.div `
27
28
  font-weight: 300;
28
29
  `;
29
30
  exports.TextLabel = styled_components_1.default.div `
31
+ font-weight: ${(p) => (p.labelPosition === 'left' ? 'normla' : 'bold')};
32
+ ${(p) => p.size && p.labelPosition === 'left'
33
+ ? (0, common_1.setLabelFontSize)(p.size)
34
+ : `
30
35
  font-size: ${Theme_1.Theme.fontSize.xs};
31
36
  line-height: ${Theme_1.Theme.lineHeight.xs};
32
- font-weight: bold;
37
+ `}
33
38
  `;
@@ -15,3 +15,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./commonComponents"), exports);
18
+ __exportStar(require("./inputStyles"), exports);
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.setLabelFontSize = exports.lableFontSize = exports.colorMode = exports.setSize = exports.sizes = exports.defaultStyles = void 0;
4
+ const polished_1 = require("polished");
5
+ const Theme_1 = require("../../Theme");
6
+ exports.defaultStyles = `
7
+ box-sizing: border-box;
8
+ background-color: ${Theme_1.Theme.colors.white};
9
+ border: 1px solid ${Theme_1.Theme.colors.gray_1};
10
+ border-radius: ${Theme_1.Theme.borderRadius.m};
11
+ width: 100%;
12
+ font-family: "Lato", sans-serif;
13
+ outline: 0;
14
+ `;
15
+ exports.sizes = {
16
+ xsmall: `
17
+ padding: ${Theme_1.Theme.padding.s};
18
+ font-size: ${Theme_1.Theme.fontSize.s};
19
+ `,
20
+ small: `
21
+ padding: ${Theme_1.Theme.padding.s};
22
+ font-size: ${Theme_1.Theme.fontSize.m};
23
+ `,
24
+ medium: `
25
+ padding: ${Theme_1.Theme.padding.m};
26
+ font-size: ${Theme_1.Theme.fontSize.m};`,
27
+ large: `
28
+ padding: ${Theme_1.Theme.padding.m};
29
+ font-size: ${Theme_1.Theme.fontSize.l};
30
+ `
31
+ };
32
+ const setSize = (size) => {
33
+ return exports.sizes[size];
34
+ };
35
+ exports.setSize = setSize;
36
+ exports.colorMode = {
37
+ default: `
38
+ border-color: ${Theme_1.Theme.colors.primary};
39
+ background-color: ${(0, polished_1.lighten)(0.4, Theme_1.Theme.colors.primary)};
40
+ `,
41
+ disabled: `
42
+ border-color: ${Theme_1.Theme.colors.disableText};
43
+ background-color: ${(0, polished_1.lighten)(0.2, Theme_1.Theme.colors.gray_1)};
44
+ color:${Theme_1.Theme.colors.disableText};
45
+ `,
46
+ error: `
47
+ border-color: ${Theme_1.Theme.colors.red};
48
+ background-color: ${(0, polished_1.lighten)(0.5, Theme_1.Theme.colors.red)};
49
+ `,
50
+ };
51
+ exports.lableFontSize = {
52
+ xsmall: `
53
+ line-height: ${Theme_1.Theme.lineHeight.s};
54
+ font-size: ${Theme_1.Theme.fontSize.s};
55
+ `,
56
+ small: `
57
+ line-height: ${Theme_1.Theme.lineHeight.m};
58
+ font-size: ${Theme_1.Theme.fontSize.m};
59
+ `,
60
+ medium: `
61
+ line-height: ${Theme_1.Theme.lineHeight.m};
62
+ font-size: ${Theme_1.Theme.fontSize.m};`,
63
+ large: `
64
+ line-height: ${Theme_1.Theme.lineHeight.m};
65
+ font-size: ${Theme_1.Theme.fontSize.l};
66
+ `
67
+ };
68
+ const setLabelFontSize = (size) => {
69
+ return exports.lableFontSize[size];
70
+ };
71
+ exports.setLabelFontSize = setLabelFontSize;
package/dist/cjs/index.js CHANGED
@@ -17,7 +17,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./components/Aligment"), exports);
18
18
  __exportStar(require("./components/Button"), exports);
19
19
  __exportStar(require("./components/Card"), exports);
20
+ __exportStar(require("./components/Dropdown"), exports);
21
+ __exportStar(require("./components/ElementHeader"), exports);
20
22
  __exportStar(require("./components/Icons"), exports);
21
23
  __exportStar(require("./components/InputText"), exports);
22
24
  __exportStar(require("./components/Modal"), exports);
25
+ __exportStar(require("./components/Sidepanel"), exports);
23
26
  __exportStar(require("./components/Typography"), exports);
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -15,3 +15,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./types"), exports);
18
+ __exportStar(require("./commonTypes"), exports);
@@ -7,7 +7,8 @@ export const Theme = {
7
7
  white: "#ffffff",
8
8
  black: "#333333",
9
9
  gray_1: "#b7b7b7",
10
- overlayer: 'rgba(0,0,0,0.4)'
10
+ overlayer: 'rgba(0,0,0,0.4)',
11
+ red: '#ad1616'
11
12
  },
12
13
  fontSize: {
13
14
  xs: "12px",
@@ -33,6 +34,7 @@ export const Theme = {
33
34
  },
34
35
  zIndex: {
35
36
  modalOverlayer: 1000,
37
+ dropdown: 800,
36
38
  },
37
39
  borderRadius: {
38
40
  s: '2px',
@@ -0,0 +1 @@
1
+ export * from './Theme';
@@ -13,6 +13,7 @@ export const ButtonElement = styled.button `
13
13
  align-items: center;
14
14
  justify-content: center;
15
15
  display: flex;
16
+
16
17
 
17
18
  ${(p) => p.mode === 'primary' &&
18
19
  `background-color: ${Theme.colors.primary};
@@ -45,7 +46,7 @@ export const ButtonElement = styled.button `
45
46
  `background-color: ${lighten(0.1, Theme.colors.primary)};`}
46
47
  ${(p) => p.mode === 'inverse' &&
47
48
  `background-color: ${lighten(0.4, Theme.colors.primary)}`};
48
- ${(p) => p.mode === 'ghost' && `color: ${lighten(0.2, Theme.colors.primary)};`}
49
+ ${(p) => p.mode === 'ghost' && `background-color: ${lighten(0.3, Theme.colors.primary)};`}
49
50
  }
50
51
 
51
52
  &.disable,
@@ -1,12 +1,8 @@
1
- import { Aligment } from '../Aligment';
2
- import { Button } from '../Button';
3
- import { TextHeader } from '../Typography';
4
1
  import React from 'react';
5
2
  import { CardContent, CardElement } from './Card.styles';
6
- export const Card = ({ children, title, actionLabel, handleClick, height, }) => {
3
+ import { ElementHeader } from '../ElementHeader';
4
+ export const Card = ({ children, title, actionLabel, moreIcon = false, backIcon = false, handleClick, handleBack, height, options, }) => {
7
5
  return (React.createElement(CardElement, { height: height },
8
- (title || actionLabel) && (React.createElement(Aligment, { justify: !title && actionLabel ? 'flex-end' : 'space-between' },
9
- title && React.createElement(TextHeader, null, title),
10
- handleClick && actionLabel && (React.createElement(Button, { mode: "inverse", text: actionLabel, onClick: handleClick })))),
6
+ (title || actionLabel) && (React.createElement(ElementHeader, { title: title, actionLabel: actionLabel, handleClick: handleClick, handleBack: handleBack, closeIcon: false, backIcon: backIcon, actionButton: true, moreIcon: moreIcon, options: options })),
11
7
  React.createElement(CardContent, null, children)));
12
8
  };
@@ -5,7 +5,6 @@ export const CardElement = styled.div `
5
5
  display: flex;
6
6
  flex-direction: column;
7
7
  width: 100%;
8
- padding: ${Theme.padding.l};
9
8
  background-color: ${Theme.colors.white};
10
9
  border-radius: ${Theme.borderRadius.m};
11
10
  height: ${p => p.height ? p.height : '100%'};
@@ -14,7 +13,7 @@ export const CardElement = styled.div `
14
13
  export const CardContent = styled.div `
15
14
  box-sizing: border-box;
16
15
  display: flex;
17
- padding-top: ${Theme.padding.l};
16
+ padding: ${Theme.padding.l};
18
17
  width: 100%;
19
18
  flex-direction: row;
20
19
  `;
@@ -1 +1 @@
1
- export * from './Card';
1
+ export { Card } from './Card';
@@ -0,0 +1,40 @@
1
+ import React, { useState, useEffect, useRef } from 'react';
2
+ import { Aligment } from '../Aligment';
3
+ import { DropdownElement, DropdownOption, DropdownOptions, } from './Dropdown.styles';
4
+ import { Field } from './DropdownElements';
5
+ import { InputErrorMsg, InputLabelElement } from '../InputText';
6
+ export const Dropdown = ({ size = 'medium', label, labelPosition = 'top', disabled = false, error, width, options, value, placeholder = 'Please select', name, handleSelect, }) => {
7
+ const [open, toogleOpen] = useState(false);
8
+ const ref = useRef(null);
9
+ const getLabelForValue = (value) => {
10
+ return options.find((option) => option.value === value).label;
11
+ };
12
+ const handleOpen = () => {
13
+ if (!disabled) {
14
+ toogleOpen(!open);
15
+ }
16
+ };
17
+ const selectOption = (e, selectedValue) => {
18
+ e.stopPropagation();
19
+ handleSelect(name, selectedValue);
20
+ toogleOpen(false);
21
+ };
22
+ useEffect(() => {
23
+ const handleClickOutside = (event) => {
24
+ if (ref.current && !ref.current.contains(event.target)) {
25
+ toogleOpen(false);
26
+ }
27
+ };
28
+ document.addEventListener('click', handleClickOutside, true);
29
+ return () => {
30
+ document.removeEventListener('click', handleClickOutside, true);
31
+ };
32
+ }, [open]);
33
+ return (React.createElement(Aligment, { align: labelPosition === 'top' ? 'flex-start' : 'center', direction: labelPosition === 'top' ? 'column' : 'row', wrap: 'nowrap', width: width },
34
+ label && (React.createElement(InputLabelElement, { size: size, labelPosition: labelPosition }, label)),
35
+ React.createElement(DropdownElement, { onClick: () => handleOpen() },
36
+ React.createElement(Field, { inputSize: size, disabled: disabled, width: width, active: open, error: error }, value ? getLabelForValue(value) : placeholder),
37
+ open && (React.createElement(DropdownOptions, { ref: ref }, options &&
38
+ options.map((option) => (React.createElement(DropdownOption, { key: option.value, active: option.value === value, onClick: (e) => selectOption(e, option.value) }, option.label))))),
39
+ error && React.createElement(InputErrorMsg, null, error))));
40
+ };
@@ -0,0 +1,32 @@
1
+ import styled from "styled-components";
2
+ import { Theme } from "../../Theme";
3
+ import { lighten } from "polished";
4
+ export const DropdownElement = styled.div `
5
+ position: relative;
6
+ cursor: pointer;
7
+ display:flex;
8
+ box-sizing:border-box;
9
+ width:100%;
10
+ `;
11
+ export const DropdownOptions = styled.div `
12
+ box-sizing:border-box;
13
+ background-color:${Theme.colors.white};
14
+ box-shadow:${Theme.shadow.m};
15
+ padding: ${Theme.padding.m} 0 ;
16
+ border-radius: ${Theme.borderRadius.m};
17
+ height:${p => p.height ? p.height : 'auto'};
18
+ width:100%;
19
+ position:absolute;
20
+ z-index:${Theme.zIndex.dropdown};
21
+ top:36px;
22
+ left:0px;
23
+ `;
24
+ export const DropdownOption = styled.div `
25
+ padding: ${Theme.padding.s} ${Theme.padding.m};
26
+ cursor: pointer;
27
+ color: ${p => p.active ? Theme.colors.primary : Theme.colors.text};
28
+ :hover{
29
+ background-color: ${lighten(0.4, Theme.colors.primary)};
30
+ }
31
+
32
+ `;
@@ -0,0 +1,23 @@
1
+ import styled from 'styled-components';
2
+ import { defaultStyles, setSize, colorMode } from "../common";
3
+ import { Theme } from "../../Theme";
4
+ export const Field = styled.div `
5
+ position: relative;
6
+ ${defaultStyles}
7
+ ${(p) => setSize(p.inputSize)}
8
+ color: ${Theme.colors.text};
9
+ width: ${(p) => (p.width ? p.width : '100%')};
10
+ ${(p) => p.error &&
11
+ `
12
+ ${colorMode.error}
13
+ `}
14
+ ${(p) => p.active &&
15
+ `
16
+ ${colorMode.default}
17
+ `}
18
+ ${(p) => p.disabled &&
19
+ `
20
+ ${colorMode.disabled}
21
+ cursor: not-allowed;
22
+ `}
23
+ `;
@@ -0,0 +1,2 @@
1
+ export * from './Dropdown';
2
+ export * from './DropdownElements';
@@ -0,0 +1,33 @@
1
+ import React from 'react';
2
+ import { Icon } from '../Icons';
3
+ import { Aligment } from '../Aligment';
4
+ import { TextHeader } from '../Typography';
5
+ import { Theme } from '../../Theme';
6
+ import { Button } from '../Button';
7
+ import { More } from '../More';
8
+ export const ElementHeader = ({ title, showTitle = true, moreIcon = false, backIcon = false, closeIcon = true, actionButton = false, actionLabel = '', handleClose, handleClick, handleBack, children, bgColor = Theme.colors.white, options, }) => {
9
+ const leftSide = () => {
10
+ if (showTitle) {
11
+ return (React.createElement(Aligment, { align: 'center', direction: 'row', width: "auto" },
12
+ backIcon && handleBack && (React.createElement(Icon, { name: "back_arrow", onClick: () => handleBack() })),
13
+ React.createElement(TextHeader, null, title)));
14
+ }
15
+ else if (!showTitle && children) {
16
+ return children;
17
+ }
18
+ };
19
+ const rightSide = () => {
20
+ if (closeIcon && handleClose) {
21
+ return React.createElement(Icon, { onClick: () => handleClose(), name: "close" });
22
+ }
23
+ else if (!closeIcon && actionButton && handleClick) {
24
+ return (React.createElement(Aligment, { align: "flex-end", width: "auto" },
25
+ React.createElement(Button, { mode: "ghost", text: actionLabel, onClick: () => handleClick() }),
26
+ moreIcon && options && React.createElement(More, { options: options })));
27
+ }
28
+ };
29
+ return (React.createElement(Aligment, { justify: !showTitle && !children ? 'flex-end' : 'space-between', vPadding: Theme.padding.m, hPadding: Theme.padding.l, backgroundColor: bgColor },
30
+ React.createElement(React.Fragment, null,
31
+ leftSide(),
32
+ rightSide())));
33
+ };
@@ -0,0 +1 @@
1
+ export * from './ElementHeader';
@@ -4,6 +4,6 @@ import { IconElement } from './Icon.styles';
4
4
  import { iconsPath } from './IconsPath';
5
5
  export const Icon = ({ size = 24, name, color = Theme.colors.text, bgColor, onClick, }) => {
6
6
  return (React.createElement(IconElement, { onClick: onClick, bgColor: bgColor },
7
- React.createElement("svg", { width: size, height: size, viewBox: '0 0 48 48', preserveAspectRatio: "xMidYMid meet", x: "0", y: "0", name: name },
7
+ React.createElement("svg", { width: size, height: size, viewBox: '0 0 24 24', preserveAspectRatio: "xMidYMid meet", x: "0", y: "0", name: name },
8
8
  React.createElement("path", { d: iconsPath[name], fill: color }))));
9
9
  };
@@ -12,7 +12,7 @@ export const IconElement = styled.div `
12
12
  padding: ${Theme.padding.s};
13
13
  cursor:pointer;
14
14
  &:hover{
15
- background-color: ${p.bgColor ? `rgba(255,255,255,0.2)` : lighten(0.4, Theme.colors.primary)};
15
+ background-color: ${p.bgColor ? `rgba(255,255,255,0.2)` : lighten(0.3, Theme.colors.primary)};
16
16
  transition: 300ms;
17
17
  }
18
18
  svg{