allaw-ui 0.1.19 → 0.1.22
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/atoms/selects/Select.css +1 -3
- package/dist/components/atoms/selects/Select.d.ts +1 -0
- package/dist/components/atoms/selects/Select.js +7 -7
- package/dist/components/molecules/radioForm/RadioForm.css +14 -0
- package/dist/components/molecules/radioForm/RadioForm.d.ts +12 -0
- package/dist/components/molecules/radioForm/RadioForm.js +27 -0
- package/dist/components/molecules/radioForm/index.d.ts +2 -0
- package/dist/components/molecules/radioForm/index.js +1 -0
- package/dist/components/molecules/selectForm/SelectForm.css +9 -0
- package/dist/components/molecules/selectForm/SelectForm.d.ts +15 -0
- package/dist/components/molecules/selectForm/SelectForm.js +15 -0
- package/dist/components/molecules/selectForm/index.d.ts +2 -0
- package/dist/components/molecules/selectForm/index.js +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +4 -0
- package/package.json +1 -1
|
@@ -4,7 +4,6 @@
|
|
|
4
4
|
|
|
5
5
|
.select {
|
|
6
6
|
display: flex;
|
|
7
|
-
width: 100%;
|
|
8
7
|
padding: 8px 16px;
|
|
9
8
|
justify-content: space-between;
|
|
10
9
|
align-items: center;
|
|
@@ -37,9 +36,8 @@
|
|
|
37
36
|
}
|
|
38
37
|
|
|
39
38
|
.select-list {
|
|
40
|
-
display: none;
|
|
39
|
+
display: none;
|
|
41
40
|
flex-direction: column;
|
|
42
|
-
width: 480px;
|
|
43
41
|
background: var(--secondary-light-grey, #f4f7fb);
|
|
44
42
|
border-radius: 8px;
|
|
45
43
|
margin-top: 8px;
|
|
@@ -13,10 +13,10 @@ import "../../../styles/global.css";
|
|
|
13
13
|
import TinyInfo from "../typography/TinyInfo";
|
|
14
14
|
function Select(_a, ref) {
|
|
15
15
|
var _b;
|
|
16
|
-
var items = _a.items, selectedItem = _a.selectedItem, _c = _a.placeholder, placeholder = _c === void 0 ? "Select..." : _c, _d = _a.multiple, multiple = _d === void 0 ? false : _d, _e = _a.isRequired, isRequired = _e === void 0 ? false : _e, _f = _a.showError, showError = _f === void 0 ? false : _f, onChange = _a.onChange, onError = _a.onError;
|
|
17
|
-
var
|
|
18
|
-
var
|
|
19
|
-
var
|
|
16
|
+
var items = _a.items, selectedItem = _a.selectedItem, _c = _a.placeholder, placeholder = _c === void 0 ? "Select..." : _c, _d = _a.multiple, multiple = _d === void 0 ? false : _d, _e = _a.isRequired, isRequired = _e === void 0 ? false : _e, _f = _a.showError, showError = _f === void 0 ? false : _f, _g = _a.width, width = _g === void 0 ? 100 : _g, onChange = _a.onChange, onError = _a.onError;
|
|
17
|
+
var _h = useState(false), isOpen = _h[0], setIsOpen = _h[1];
|
|
18
|
+
var _j = useState((multiple ? selectedItem || [] : selectedItem || "")), selected = _j[0], setSelected = _j[1];
|
|
19
|
+
var _k = useState(""), error = _k[0], setError = _k[1];
|
|
20
20
|
var selectRef = useRef(null);
|
|
21
21
|
useEffect(function () {
|
|
22
22
|
setSelected((multiple ? selectedItem || [] : selectedItem || ""));
|
|
@@ -63,8 +63,8 @@ function Select(_a, ref) {
|
|
|
63
63
|
useImperativeHandle(ref, function () { return ({
|
|
64
64
|
validate: function () { return validateSelect(selected); },
|
|
65
65
|
}); });
|
|
66
|
-
return (React.createElement("div", { ref: selectRef, className: "select-container ".concat(isOpen ? "select-pressed" : "") },
|
|
67
|
-
React.createElement("button", { className: "select ".concat(isOpen ? "select-pressed" : "select-default"), onClick: toggleOpen },
|
|
66
|
+
return (React.createElement("div", { ref: selectRef, className: "select-container ".concat(isOpen ? "select-pressed" : ""), style: { width: "".concat(width, "%") } },
|
|
67
|
+
React.createElement("button", { className: "select ".concat(isOpen ? "select-pressed" : "select-default"), onClick: toggleOpen, style: { width: "100%" } },
|
|
68
68
|
React.createElement("span", { className: "select-text" }, Array.isArray(selected) && selected.length > 0
|
|
69
69
|
? selected
|
|
70
70
|
.map(function (val) { var _a; return (_a = items.find(function (item) { return item.value === val; })) === null || _a === void 0 ? void 0 : _a.label; })
|
|
@@ -73,7 +73,7 @@ function Select(_a, ref) {
|
|
|
73
73
|
? (_b = items.find(function (item) { return item.value === selected; })) === null || _b === void 0 ? void 0 : _b.label
|
|
74
74
|
: placeholder),
|
|
75
75
|
React.createElement("span", { className: "select-icon ".concat(isOpen ? "allaw-icon-chevron-up" : "allaw-icon-chevron-down") })),
|
|
76
|
-
isOpen && (React.createElement("div", { className: "select-list" }, items.map(function (item) { return (React.createElement("div", { key: item.value, className: "select-item ".concat(Array.isArray(selected) && selected.includes(item.value)
|
|
76
|
+
isOpen && (React.createElement("div", { className: "select-list", style: { width: "100%" } }, items.map(function (item) { return (React.createElement("div", { key: item.value, className: "select-item ".concat(Array.isArray(selected) && selected.includes(item.value)
|
|
77
77
|
? "selected"
|
|
78
78
|
: "", " ").concat(!multiple ? "single-select" : ""), onClick: function () { return handleSelect(item); } },
|
|
79
79
|
multiple && (React.createElement("span", { className: "select-item-icon allaw-icon-check" })),
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import "./RadioForm.css";
|
|
3
|
+
import "../../../styles/global.css";
|
|
4
|
+
export interface RadioFormProps {
|
|
5
|
+
label: string;
|
|
6
|
+
isRequired: boolean;
|
|
7
|
+
options: string[];
|
|
8
|
+
defaultSelected?: string;
|
|
9
|
+
onChange?: (selectedOption: string | null) => void;
|
|
10
|
+
}
|
|
11
|
+
declare const RadioForm: React.FC<RadioFormProps>;
|
|
12
|
+
export default RadioForm;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import React, { useState, useEffect } from "react";
|
|
2
|
+
import "./RadioForm.css";
|
|
3
|
+
import "../../../styles/global.css";
|
|
4
|
+
import Paragraph from "../../atoms/typography/Paragraph";
|
|
5
|
+
import RadioButton from "../../atoms/radios/RadioButton";
|
|
6
|
+
var RadioForm = function (_a) {
|
|
7
|
+
var label = _a.label, isRequired = _a.isRequired, options = _a.options, defaultSelected = _a.defaultSelected, onChange = _a.onChange;
|
|
8
|
+
var _b = useState(defaultSelected || null), selectedOption = _b[0], setSelectedOption = _b[1];
|
|
9
|
+
useEffect(function () {
|
|
10
|
+
if (defaultSelected) {
|
|
11
|
+
setSelectedOption(defaultSelected);
|
|
12
|
+
}
|
|
13
|
+
}, [defaultSelected]);
|
|
14
|
+
var handleOptionChange = function (option) {
|
|
15
|
+
setSelectedOption(option);
|
|
16
|
+
if (onChange) {
|
|
17
|
+
onChange(option);
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
return (React.createElement("div", { className: "radio-form" },
|
|
21
|
+
React.createElement(Paragraph, { variant: "medium", color: "noir", text: React.createElement(React.Fragment, null,
|
|
22
|
+
label,
|
|
23
|
+
" ",
|
|
24
|
+
isRequired && React.createElement("span", { className: "radio-form-required" }, "*")), size: "default" }),
|
|
25
|
+
React.createElement("div", { className: "radio-form-options" }, options.map(function (option, index) { return (React.createElement(RadioButton, { key: index, label: option, style: "hybride", isActive: selectedOption === option, onClick: function () { return handleOptionChange(option); } })); }))));
|
|
26
|
+
};
|
|
27
|
+
export default RadioForm;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as RadioForm } from "./RadioForm";
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import "./SelectForm.css";
|
|
3
|
+
import "../../../styles/global.css";
|
|
4
|
+
import { SelectItem } from "../../atoms/selects/Select";
|
|
5
|
+
export interface SelectFormProps {
|
|
6
|
+
label: string;
|
|
7
|
+
isRequired: boolean;
|
|
8
|
+
options: SelectItem[];
|
|
9
|
+
isMultiple: boolean;
|
|
10
|
+
width?: number;
|
|
11
|
+
selectedItem?: string | string[];
|
|
12
|
+
onChange?: (selected: string | string[]) => void;
|
|
13
|
+
}
|
|
14
|
+
declare const SelectForm: React.FC<SelectFormProps>;
|
|
15
|
+
export default SelectForm;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import "./SelectForm.css";
|
|
3
|
+
import "../../../styles/global.css";
|
|
4
|
+
import Paragraph from "../../atoms/typography/Paragraph";
|
|
5
|
+
import Select from "../../atoms/selects/Select";
|
|
6
|
+
var SelectForm = function (_a) {
|
|
7
|
+
var label = _a.label, isRequired = _a.isRequired, options = _a.options, isMultiple = _a.isMultiple, _b = _a.width, width = _b === void 0 ? 100 : _b, selectedItem = _a.selectedItem, onChange = _a.onChange;
|
|
8
|
+
return (React.createElement("div", { className: "select-form" },
|
|
9
|
+
React.createElement(Paragraph, { variant: "medium", color: "noir", text: React.createElement(React.Fragment, null,
|
|
10
|
+
label,
|
|
11
|
+
" ",
|
|
12
|
+
isRequired && React.createElement("span", { className: "select-form-required" }, "*")), size: "default" }),
|
|
13
|
+
React.createElement(Select, { items: options, multiple: isMultiple, isRequired: isRequired, width: width, selectedItem: selectedItem, onChange: onChange })));
|
|
14
|
+
};
|
|
15
|
+
export default SelectForm;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as SelectForm } from "./SelectForm";
|
package/dist/index.d.ts
CHANGED
|
@@ -38,5 +38,7 @@ export { default as EmployeeCard } from "./components/molecules/employeeCard/Emp
|
|
|
38
38
|
export { default as Stepper } from "./components/molecules/stepper/Stepper";
|
|
39
39
|
export type { StepperProps } from "./components/molecules/stepper/Stepper";
|
|
40
40
|
export { default as CheckboxForm } from "./components/molecules/checkboxForm/CheckboxForm";
|
|
41
|
+
export { default as RadioForm } from "./components/molecules/radioForm/RadioForm";
|
|
42
|
+
export { default as SelectForm } from "./components/molecules/selectForm/SelectForm";
|
|
41
43
|
export { default as Breadcrumb } from "./components/molecules/breadcrumb/Breadcrumb";
|
|
42
44
|
export { default as ProCard } from "./components/molecules/proCard/ProCard";
|
package/dist/index.js
CHANGED
|
@@ -54,6 +54,10 @@ export { default as EmployeeCard } from "./components/molecules/employeeCard/Emp
|
|
|
54
54
|
export { default as Stepper } from "./components/molecules/stepper/Stepper";
|
|
55
55
|
// CheckboxForm
|
|
56
56
|
export { default as CheckboxForm } from "./components/molecules/checkboxForm/CheckboxForm";
|
|
57
|
+
// RadioForm
|
|
58
|
+
export { default as RadioForm } from "./components/molecules/radioForm/RadioForm";
|
|
59
|
+
// SelectForm
|
|
60
|
+
export { default as SelectForm } from "./components/molecules/selectForm/SelectForm";
|
|
57
61
|
// Breadcrumb
|
|
58
62
|
export { default as Breadcrumb } from "./components/molecules/breadcrumb/Breadcrumb";
|
|
59
63
|
// ProCard
|