empower-container 0.1.12 → 0.1.13
Sign up to get free protection for your applications and to get access to all the features.
- package/package.json +1 -1
- package/public/favicon.ico +0 -0
- package/public/index.html +43 -0
- package/public/logo192.png +0 -0
- package/public/logo512.png +0 -0
- package/public/manifest.json +25 -0
- package/public/robots.txt +3 -0
- package/src/index.tsx +15 -0
- package/{dist/cjs → src/main}/DatetimeFormatter.d.ts +0 -0
- package/{dist/cjs → src/main}/DatetimeFormatter.js +0 -0
- package/{dist/esm/DatetimeFormatter.js → src/main/DatetimeFormatter.tsx} +139 -132
- package/{dist/cjs → src/main}/Information.d.ts +0 -0
- package/src/main/Information.js +65 -0
- package/src/main/Information.tsx +112 -0
- package/{dist/cjs → src/main}/MenuBar.d.ts +0 -0
- package/src/main/MenuBar.js +651 -0
- package/src/main/MenuBar.tsx +1074 -0
- package/{dist/cjs → src/main}/Modal.d.ts +0 -0
- package/src/main/Modal.js +24 -0
- package/src/main/Modal.tsx +83 -0
- package/{dist → src/main}/assets/Asset.d.ts +0 -0
- package/{dist → src/main}/assets/Asset.js +0 -0
- package/{dist → src/main}/assets/Asset.tsx +0 -0
- package/{dist → src/main}/assets/icons/icon-check-white-sm.svg +0 -0
- package/{dist → src/main}/assets/images/icon-arrowdown-graydark.svg +0 -0
- package/{dist → src/main}/assets/images/icon-arrowleft-graydark.svg +0 -0
- package/{dist → src/main}/assets/images/icon-arrowright-graydark.svg +0 -0
- package/{dist → src/main}/assets/images/icon-arrowup-graydark.svg +0 -0
- package/{dist → src/main}/assets/images/icon-check-graydark.svg +0 -0
- package/{dist/cjs → src/main}/constants/Constant.d.ts +0 -0
- package/{dist/esm → src/main}/constants/Constant.js +21 -9
- package/{dist/cjs → src/main}/index.d.ts +0 -0
- package/{dist/cjs → src/main}/index.js +0 -0
- package/{dist/esm/index.d.ts → src/main/index.tsx} +3 -1
- package/{dist/cjs → src/main}/inputs/Input.d.ts +0 -0
- package/{dist/cjs → src/main}/inputs/Input.js +36 -7
- package/src/main/inputs/Input.tsx +193 -0
- package/{dist/cjs → src/main}/inputs/InputSelectionHandler.d.ts +0 -0
- package/{dist/cjs → src/main}/inputs/InputSelectionHandler.js +3 -3
- package/src/main/inputs/InputSelectionHandler.tsx +21 -0
- package/{dist/cjs → src/main}/inputs/Select.d.ts +0 -0
- package/{dist/cjs → src/main}/inputs/Select.js +64 -11
- package/src/main/inputs/Select.tsx +654 -0
- package/src/main/tsconfig.common.json +34 -0
- package/src/main/tsconfig.json +35 -0
- package/src/sample/App.css +38 -0
- package/src/sample/App.d.ts +3 -0
- package/src/sample/App.js +13 -0
- package/src/sample/App.test.d.ts +1 -0
- package/src/sample/App.test.js +13 -0
- package/src/sample/App.test.tsx +9 -0
- package/src/sample/App.tsx +15 -0
- package/src/sample/TestMenuBar.d.ts +3 -0
- package/src/sample/TestMenuBar.js +529 -0
- package/src/sample/TestMenuBar.tsx +380 -0
- package/src/sample/react-app-env.d.ts +1 -0
- package/src/sample/reportWebVitals.d.ts +3 -0
- package/src/sample/reportWebVitals.js +38 -0
- package/src/sample/reportWebVitals.ts +15 -0
- package/src/sample/setupTests.d.ts +1 -0
- package/src/sample/setupTests.js +7 -0
- package/src/sample/setupTests.ts +5 -0
- package/src/sample/tsconfig.json +36 -0
- package/{dist → src}/scss/components/_modal.scss +0 -0
- package/{dist → src}/scss/elements/_button.scss +0 -0
- package/{dist → src}/scss/elements/_index.scss +0 -0
- package/{dist → src}/scss/elements/_popover.scss +0 -0
- package/{dist → src}/scss/foundation/_colors.scss +0 -0
- package/{dist → src}/scss/foundation/_mixins.scss +0 -0
- package/{dist → src}/scss/foundation/_normalize.scss +0 -0
- package/{dist → src}/scss/foundation/_settings.scss +0 -0
- package/{dist → src}/scss/foundation/_typography.scss +0 -0
- package/{dist → src}/scss/library/_information.scss +0 -0
- package/{dist → src}/scss/library/_input.scss +0 -0
- package/{dist → src}/scss/library/_menubar.scss +0 -0
- package/{dist → src}/scss/library/_select.scss +0 -0
- package/{dist → src}/scss/style.scss +0 -0
- package/dist/cjs/Information.js +0 -63
- package/dist/cjs/MenuBar.js +0 -537
- package/dist/cjs/Modal.js +0 -32
- package/dist/cjs/assets/Asset.d.ts +0 -16
- package/dist/cjs/assets/Asset.js +0 -30
- package/dist/cjs/constants/Constant.js +0 -35
- package/dist/esm/DatetimeFormatter.d.ts +0 -3
- package/dist/esm/Information.d.ts +0 -10
- package/dist/esm/Information.js +0 -38
- package/dist/esm/MenuBar.d.ts +0 -24
- package/dist/esm/MenuBar.js +0 -532
- package/dist/esm/Modal.d.ts +0 -33
- package/dist/esm/Modal.js +0 -27
- package/dist/esm/assets/Asset.d.ts +0 -16
- package/dist/esm/assets/Asset.js +0 -27
- package/dist/esm/constants/Constant.d.ts +0 -15
- package/dist/esm/index.js +0 -3
- package/dist/esm/inputs/Input.d.ts +0 -25
- package/dist/esm/inputs/Input.js +0 -104
- package/dist/esm/inputs/InputSelectionHandler.d.ts +0 -3
- package/dist/esm/inputs/InputSelectionHandler.js +0 -31
- package/dist/esm/inputs/Select.d.ts +0 -28
- package/dist/esm/inputs/Select.js +0 -399
File without changes
|
@@ -0,0 +1,24 @@
|
|
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
|
+
var react_1 = __importDefault(require("react"));
|
7
|
+
var react_dom_1 = __importDefault(require("react-dom"));
|
8
|
+
var MenuBar_1 = __importDefault(require("./MenuBar"));
|
9
|
+
require("../scss/style.scss");
|
10
|
+
var Modal = function (_a) {
|
11
|
+
var id = _a.id, show = _a.show, hideMenuBar = _a.hideMenuBar, config = _a.config, getActions = _a.getActions, children = _a.children, button = _a.button, dropdown = _a.dropdown, search = _a.search, pagination = _a.pagination, pivot = _a.pivot, check = _a.check, toggle = _a.toggle, undoButton = _a.undoButton, mainButton = _a.mainButton, buttonFooter = _a.buttonFooter, info = _a.info, customClass = _a.customClass;
|
12
|
+
var sendActions = function (actions, data) {
|
13
|
+
returnValues(actions, data);
|
14
|
+
};
|
15
|
+
var returnValues = function (action, data, addedParam) {
|
16
|
+
if (addedParam === void 0) { addedParam = null; }
|
17
|
+
return getActions ? getActions(action, data, addedParam) : false;
|
18
|
+
};
|
19
|
+
return (show ? react_dom_1.default.createPortal(react_1.default.createElement("div", { className: "em-modal " + customClass },
|
20
|
+
react_1.default.createElement("div", { className: "em-modal-container", "data-testid": id ? id : 'default-modal-test' },
|
21
|
+
react_1.default.createElement("div", { className: "em-card card-modal modal-".concat(config.modalSize ? config.modalSize : 'md') }, !hideMenuBar ? (react_1.default.createElement(MenuBar_1.default, { config: config, button: button, pagination: pagination, pivot: pivot, dropdown: dropdown, search: search, toggle: toggle, undoButton: undoButton, buttonFooter: buttonFooter, check: check, info: info, getActions: function (actions, data) { return sendActions(actions, data); } },
|
22
|
+
react_1.default.createElement("div", { className: "em-card-content" }, children))) : react_1.default.createElement("div", { className: "em-card-content card-content" }, children)))), document.getElementById('root')) : null);
|
23
|
+
};
|
24
|
+
exports.default = Modal;
|
@@ -0,0 +1,83 @@
|
|
1
|
+
import React from "react";
|
2
|
+
import ReactDOM from "react-dom";
|
3
|
+
import MenuBar from "./MenuBar";
|
4
|
+
import '../scss/style.scss';
|
5
|
+
|
6
|
+
|
7
|
+
interface IModalProps {
|
8
|
+
id?:string,
|
9
|
+
show: boolean,
|
10
|
+
hideMenuBar?:boolean,
|
11
|
+
config: {
|
12
|
+
title: string,
|
13
|
+
icon: any,
|
14
|
+
showInfo: boolean,
|
15
|
+
iconType: Array<string>,
|
16
|
+
modalSize:string
|
17
|
+
},
|
18
|
+
getActions:any
|
19
|
+
children?: any
|
20
|
+
button?: {
|
21
|
+
show: boolean
|
22
|
+
actions?: Array<object>
|
23
|
+
},
|
24
|
+
|
25
|
+
dropdown?: any,
|
26
|
+
search?: any,
|
27
|
+
pagination?: any,
|
28
|
+
pivot?: any,
|
29
|
+
check?: any,
|
30
|
+
toggle?: any,
|
31
|
+
mainButton?: any,
|
32
|
+
buttonFooter?: any,
|
33
|
+
undoButton?:any,
|
34
|
+
info?:any,
|
35
|
+
customClass?: string,
|
36
|
+
|
37
|
+
}
|
38
|
+
|
39
|
+
|
40
|
+
|
41
|
+
const Modal: React.FunctionComponent<IModalProps> = ({id, show,hideMenuBar, config, getActions, children, button, dropdown, search, pagination, pivot, check,toggle, undoButton, mainButton, buttonFooter, info, customClass }) => {
|
42
|
+
const sendActions = (actions:string,data:string) => {
|
43
|
+
returnValues(actions,data)
|
44
|
+
}
|
45
|
+
|
46
|
+
let returnValues = (action:string, data:string, addedParam:any = null) => {
|
47
|
+
return getActions ? getActions(action, data, addedParam) : false;
|
48
|
+
}
|
49
|
+
|
50
|
+
return (
|
51
|
+
show ? ReactDOM.createPortal(
|
52
|
+
<div className={"em-modal "+ customClass }>
|
53
|
+
<div className="em-modal-container" data-testid={id ? id : 'default-modal-test'}>
|
54
|
+
<div className={`em-card card-modal modal-${config.modalSize ? config.modalSize : 'md'}`}>
|
55
|
+
{
|
56
|
+
!hideMenuBar ? (
|
57
|
+
<MenuBar
|
58
|
+
config={config}
|
59
|
+
button={button}
|
60
|
+
pagination={pagination}
|
61
|
+
pivot={pivot}
|
62
|
+
dropdown={dropdown}
|
63
|
+
search={search}
|
64
|
+
toggle={toggle}
|
65
|
+
undoButton={undoButton}
|
66
|
+
buttonFooter={buttonFooter}
|
67
|
+
check={check}
|
68
|
+
info={info}
|
69
|
+
getActions={(actions:any,data:any) => sendActions(actions,data)}
|
70
|
+
>
|
71
|
+
<div className="em-card-content">{ children }</div>
|
72
|
+
</MenuBar>
|
73
|
+
) : <div className="em-card-content card-content">{ children }</div>
|
74
|
+
}
|
75
|
+
</div>
|
76
|
+
</div>
|
77
|
+
</div>,
|
78
|
+
document.getElementById('root')!
|
79
|
+
) : null
|
80
|
+
)
|
81
|
+
}
|
82
|
+
|
83
|
+
export default Modal;
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -1,12 +1,21 @@
|
|
1
1
|
import { SVG_CHECK_ACTIVE, SVG_CHECK_INACTIVE, SVG_CHECK_NEUTRAL } from '../assets/Asset';
|
2
|
+
|
2
3
|
// Constant svg of checkbox
|
3
|
-
export
|
4
|
-
ALL: (
|
5
|
-
|
6
|
-
|
7
|
-
|
4
|
+
export const CHECKBOX= {
|
5
|
+
ALL: (
|
6
|
+
SVG_CHECK_ACTIVE
|
7
|
+
),
|
8
|
+
FEW: (
|
9
|
+
SVG_CHECK_NEUTRAL
|
10
|
+
),
|
11
|
+
NONE: (
|
12
|
+
SVG_CHECK_INACTIVE
|
13
|
+
)
|
14
|
+
}
|
15
|
+
|
16
|
+
|
8
17
|
// Constant list of months
|
9
|
-
export
|
18
|
+
export const MONTH_LIST = [
|
10
19
|
{ label: "Jan", value: "January" },
|
11
20
|
{ label: "Feb", value: "February" },
|
12
21
|
{ label: "Mar", value: "March" },
|
@@ -20,13 +29,16 @@ export var MONTH_LIST = [
|
|
20
29
|
{ label: "Nov", value: "November" },
|
21
30
|
{ label: "Dec", value: "December" },
|
22
31
|
];
|
32
|
+
|
23
33
|
// Default per-page-options
|
24
|
-
export
|
34
|
+
export const PAGE_OPTION = [
|
25
35
|
{ value: '10', label: '10' },
|
26
36
|
{ value: '20', label: '20' },
|
27
37
|
{ value: '30', label: '30' },
|
28
38
|
{ value: '40', label: '40' },
|
29
39
|
{ value: '50', label: '50' }
|
30
40
|
];
|
31
|
-
|
32
|
-
export
|
41
|
+
|
42
|
+
export const MONTH_NAMES = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
|
43
|
+
|
44
|
+
export const INFO_LOADER = '<div className="l-info-content l-shine-container"> <div className="l-shine"></div><div className="l-stats-text"><div className="l-text"><span className="w-40"></span><span className="w-20"></span></div><div className="l-text-h"><span className="w-30"></span><span className="w-60"></span><span className="w-40"></span></div></div></div >';
|
File without changes
|
File without changes
|
File without changes
|
@@ -10,9 +10,31 @@ var __assign = (this && this.__assign) || function () {
|
|
10
10
|
};
|
11
11
|
return __assign.apply(this, arguments);
|
12
12
|
};
|
13
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
14
|
+
if (k2 === undefined) k2 = k;
|
15
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
16
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
17
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
18
|
+
}
|
19
|
+
Object.defineProperty(o, k2, desc);
|
20
|
+
}) : (function(o, m, k, k2) {
|
21
|
+
if (k2 === undefined) k2 = k;
|
22
|
+
o[k2] = m[k];
|
23
|
+
}));
|
24
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
25
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
26
|
+
}) : function(o, v) {
|
27
|
+
o["default"] = v;
|
28
|
+
});
|
29
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
30
|
+
if (mod && mod.__esModule) return mod;
|
31
|
+
var result = {};
|
32
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
33
|
+
__setModuleDefault(result, mod);
|
34
|
+
return result;
|
35
|
+
};
|
13
36
|
Object.defineProperty(exports, "__esModule", { value: true });
|
14
|
-
var
|
15
|
-
var react_1 = require("react");
|
37
|
+
var react_1 = __importStar(require("react"));
|
16
38
|
require("../../scss/style.scss");
|
17
39
|
var sanitizeValue = function (txt, props) {
|
18
40
|
var pattern = null;
|
@@ -97,10 +119,17 @@ var Input = function (_a) {
|
|
97
119
|
return null;
|
98
120
|
}
|
99
121
|
};
|
100
|
-
return (
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
122
|
+
return (react_1.default.createElement("div", { className: "em-input " + customClass }, config.type === 'time' ? (react_1.default.createElement("div", { className: 'e-input e-input-time ' + (config.disabled ? 'input-disabled' : ""), "data-testid": "component-input" },
|
123
|
+
react_1.default.createElement("input", __assign({}, config, { onChange: onChangeHandler })),
|
124
|
+
config.disabled || !config.value ? null : (react_1.default.createElement("div", { className: 'e-input-icon', onClick: clearValuesHandler },
|
125
|
+
react_1.default.createElement("svg", { width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", xmlns: "http://www.w3.org/2000/svg" },
|
126
|
+
react_1.default.createElement("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M3.00005 14.7895L5.21058 17L10 12.2106L14.7895 17.0001L17 14.7895L12.2105 10.0001L17.0001 5.21053L14.7895 3L10 7.78953L5.21053 3.00005L3 5.21058L7.78948 10.0001L3.00005 14.7895Z", fill: "#A0AEC0" })))))) : allowedTypes.includes(config.type) ? config.label && config.label !== '' ?
|
127
|
+
(react_1.default.createElement(react_1.Fragment, null,
|
128
|
+
react_1.default.createElement("label", null, config.label),
|
129
|
+
react_1.default.createElement("input", __assign({ "data-testid": "component-input" }, config, { onChange: function (event) { return onChangeHandler(event); }, onKeyPress: function (event) { return onKeypressHandler(event); } }))))
|
130
|
+
:
|
131
|
+
(react_1.default.createElement(react_1.Fragment, null,
|
132
|
+
react_1.default.createElement("input", __assign({}, config, { className: "em-input-field", "data-testid": "component-input", onChange: function (event) { return onChangeHandler(event); }, onKeyPress: function (event) { return onKeypressHandler(event); } }))))
|
133
|
+
: null));
|
105
134
|
};
|
106
135
|
exports.default = Input;
|
@@ -0,0 +1,193 @@
|
|
1
|
+
import React, { Fragment } from "react";
|
2
|
+
import '../../scss/style.scss';
|
3
|
+
|
4
|
+
|
5
|
+
interface IProps {
|
6
|
+
config: {
|
7
|
+
id: string | keyof Object,
|
8
|
+
type: string,
|
9
|
+
value: string | number,
|
10
|
+
placeholder?: string,
|
11
|
+
label?: string,
|
12
|
+
maxLength?: number,
|
13
|
+
readOnly?: boolean,
|
14
|
+
disabled?: boolean,
|
15
|
+
|
16
|
+
|
17
|
+
},
|
18
|
+
allowedChar?: {
|
19
|
+
alphabet?: boolean,
|
20
|
+
numeric?: boolean,
|
21
|
+
space?: boolean,
|
22
|
+
allowedSymbols?: Array<string>
|
23
|
+
},
|
24
|
+
customClass?: string
|
25
|
+
onChanged?: (event: React.ChangeEvent<HTMLInputElement> | React.MouseEvent<HTMLDivElement, MouseEvent>, data?:string) => void,
|
26
|
+
keyPressed?: (event: React.KeyboardEvent<HTMLInputElement> | React.MouseEvent<HTMLDivElement, MouseEvent>) => void
|
27
|
+
|
28
|
+
|
29
|
+
}
|
30
|
+
|
31
|
+
|
32
|
+
const sanitizeValue = (txt: string, props: IProps['allowedChar']) => {
|
33
|
+
let pattern = null;
|
34
|
+
let newTxt = txt;
|
35
|
+
|
36
|
+
if (props && props.constructor === Object) {
|
37
|
+
if (props.allowedSymbols && props.allowedSymbols.constructor === Array && props.allowedSymbols.length > 0) {
|
38
|
+
pattern = `^a-zA-Z0-9`
|
39
|
+
pattern = new RegExp(`[${pattern}${props.allowedSymbols.join('')} ]`, 'gi')
|
40
|
+
newTxt = newTxt.replace(pattern, "");
|
41
|
+
|
42
|
+
} else {
|
43
|
+
pattern = `^a-zA-Z0-9`
|
44
|
+
pattern = new RegExp(`[${pattern} ]`, 'gi')
|
45
|
+
newTxt = newTxt.replace(pattern, "");
|
46
|
+
|
47
|
+
}
|
48
|
+
|
49
|
+
if (props.alphabet === false) {
|
50
|
+
pattern = /[a-z]/gi
|
51
|
+
newTxt = newTxt.replace(pattern, "");
|
52
|
+
|
53
|
+
}
|
54
|
+
|
55
|
+
if (props.numeric === false) {
|
56
|
+
pattern = /[0-9]+$/gi
|
57
|
+
newTxt = newTxt.replace(pattern, "");
|
58
|
+
|
59
|
+
}
|
60
|
+
|
61
|
+
if (props.space === false) {
|
62
|
+
pattern = /\s/gi
|
63
|
+
newTxt = newTxt.replace(pattern, "");
|
64
|
+
|
65
|
+
}
|
66
|
+
|
67
|
+
}
|
68
|
+
return newTxt;
|
69
|
+
|
70
|
+
}
|
71
|
+
|
72
|
+
const Input: React.FC<IProps> = ({ config, allowedChar, customClass, onChanged, keyPressed }) => {
|
73
|
+
|
74
|
+
customClass = customClass ? customClass : ''
|
75
|
+
|
76
|
+
|
77
|
+
let allowedTypes = [
|
78
|
+
'text', 'number', 'password', 'submit', 'reset', 'radio', 'checkbox', 'button',
|
79
|
+
'file', 'image', 'color', 'date', 'datetime-local', 'email', 'month', 'url', 'week',
|
80
|
+
'search', 'tel']
|
81
|
+
|
82
|
+
|
83
|
+
|
84
|
+
/**
|
85
|
+
* onChangeHandler
|
86
|
+
* get the current value from the input field
|
87
|
+
* @param {*} event - event which will be used to get the changed value
|
88
|
+
*/
|
89
|
+
let onChangeHandler = (event: React.ChangeEvent<HTMLInputElement>) => {
|
90
|
+
|
91
|
+
if (config.type === 'text' && allowedChar && allowedChar.constructor === Object && Object.keys(allowedChar).length > 0) {
|
92
|
+
event.target.value = sanitizeValue(event.target.value, allowedChar);
|
93
|
+
}
|
94
|
+
|
95
|
+
if (onChanged) {
|
96
|
+
if (event.target.value && config.maxLength) {
|
97
|
+
|
98
|
+
if (event.target.value.toString().length <= config.maxLength) {
|
99
|
+
return onChanged(event);
|
100
|
+
}
|
101
|
+
} else {
|
102
|
+
return onChanged(event);
|
103
|
+
}
|
104
|
+
} else {
|
105
|
+
console.error("No onChanged property");
|
106
|
+
}
|
107
|
+
}
|
108
|
+
|
109
|
+
/**
|
110
|
+
* onKeypressHandler
|
111
|
+
* get the current value from the input field
|
112
|
+
* @param {*} event - event which will be used to get the changed value
|
113
|
+
*/
|
114
|
+
let onKeypressHandler = (event: React.KeyboardEvent<HTMLInputElement>) => {
|
115
|
+
if (event.key === 'Enter') {
|
116
|
+
if (keyPressed) {
|
117
|
+
return keyPressed(event);
|
118
|
+
}
|
119
|
+
}
|
120
|
+
}
|
121
|
+
|
122
|
+
/**
|
123
|
+
* clearValuesHandler
|
124
|
+
* reset value into null and return it to parent
|
125
|
+
* @param {*} event - event
|
126
|
+
*/
|
127
|
+
let clearValuesHandler = (event: React.MouseEvent<HTMLDivElement>): any => {
|
128
|
+
|
129
|
+
if (event) {
|
130
|
+
event.preventDefault();
|
131
|
+
return null;
|
132
|
+
}
|
133
|
+
|
134
|
+
}
|
135
|
+
|
136
|
+
|
137
|
+
|
138
|
+
|
139
|
+
|
140
|
+
return (
|
141
|
+
<div className={"em-input " + customClass }>
|
142
|
+
{
|
143
|
+
config.type === 'time' ? (
|
144
|
+
<div className={'e-input e-input-time ' + (config.disabled ? 'input-disabled' : "")} data-testid="component-input">
|
145
|
+
<input
|
146
|
+
{...config}
|
147
|
+
onChange={onChangeHandler}
|
148
|
+
/>
|
149
|
+
{
|
150
|
+
config.disabled || !config.value ? null : (
|
151
|
+
<div className='e-input-icon' onClick={clearValuesHandler}>
|
152
|
+
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
153
|
+
<path fillRule="evenodd" clipRule="evenodd" d="M3.00005 14.7895L5.21058 17L10 12.2106L14.7895 17.0001L17 14.7895L12.2105 10.0001L17.0001 5.21053L14.7895 3L10 7.78953L5.21053 3.00005L3 5.21058L7.78948 10.0001L3.00005 14.7895Z" fill="#A0AEC0" />
|
154
|
+
</svg>
|
155
|
+
</div>
|
156
|
+
)
|
157
|
+
|
158
|
+
|
159
|
+
}
|
160
|
+
</div>
|
161
|
+
) : allowedTypes.includes(config.type) ? config.label && config.label !== '' ?
|
162
|
+
(
|
163
|
+
<Fragment>
|
164
|
+
|
165
|
+
<label>{config.label}</label>
|
166
|
+
<input data-testid="component-input" {...config}
|
167
|
+
onChange={event => onChangeHandler(event)}
|
168
|
+
onKeyPress={event => onKeypressHandler(event)}
|
169
|
+
/>
|
170
|
+
</Fragment>
|
171
|
+
)
|
172
|
+
:
|
173
|
+
(
|
174
|
+
<Fragment>
|
175
|
+
|
176
|
+
<input
|
177
|
+
{...config}
|
178
|
+
className="em-input-field"
|
179
|
+
data-testid="component-input"
|
180
|
+
onChange={event => onChangeHandler(event)}
|
181
|
+
onKeyPress={event => onKeypressHandler(event)}
|
182
|
+
/>
|
183
|
+
|
184
|
+
</Fragment>
|
185
|
+
)
|
186
|
+
: null
|
187
|
+
}
|
188
|
+
</div>
|
189
|
+
);
|
190
|
+
|
191
|
+
}
|
192
|
+
|
193
|
+
export default Input;
|
File without changes
|
@@ -14,7 +14,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
14
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
15
15
|
};
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
17
|
-
var
|
17
|
+
var react_1 = __importDefault(require("react"));
|
18
18
|
var Input_1 = __importDefault(require("./Input"));
|
19
19
|
var Select_1 = __importDefault(require("./Select"));
|
20
20
|
var InputSelectionHandler = function (props) {
|
@@ -23,10 +23,10 @@ var InputSelectionHandler = function (props) {
|
|
23
23
|
case "number":
|
24
24
|
case "time":
|
25
25
|
case "password":
|
26
|
-
return
|
26
|
+
return react_1.default.createElement(Input_1.default, __assign({}, props));
|
27
27
|
case "select":
|
28
28
|
case "multi-select":
|
29
|
-
return
|
29
|
+
return react_1.default.createElement(Select_1.default, __assign({}, props));
|
30
30
|
case "toggle-button":
|
31
31
|
default:
|
32
32
|
console.error("Invalid Input Type");
|
@@ -0,0 +1,21 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import Input from './Input';
|
3
|
+
import Select from './Select';
|
4
|
+
|
5
|
+
const InputSelectionHandler = (props:any) => {
|
6
|
+
switch (props.config.type) {
|
7
|
+
case "text":
|
8
|
+
case "number":
|
9
|
+
case "time":
|
10
|
+
case "password":
|
11
|
+
return <Input {...props} />;
|
12
|
+
case "select":
|
13
|
+
case "multi-select":
|
14
|
+
return <Select {...props} />;
|
15
|
+
case "toggle-button":
|
16
|
+
default:
|
17
|
+
console.error("Invalid Input Type");
|
18
|
+
return null;
|
19
|
+
}
|
20
|
+
}
|
21
|
+
export default InputSelectionHandler;
|
File without changes
|