allaw-ui 0.1.21 → 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/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 +1 -0
- package/dist/index.js +2 -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,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
|
@@ -39,5 +39,6 @@ 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
41
|
export { default as RadioForm } from "./components/molecules/radioForm/RadioForm";
|
|
42
|
+
export { default as SelectForm } from "./components/molecules/selectForm/SelectForm";
|
|
42
43
|
export { default as Breadcrumb } from "./components/molecules/breadcrumb/Breadcrumb";
|
|
43
44
|
export { default as ProCard } from "./components/molecules/proCard/ProCard";
|
package/dist/index.js
CHANGED
|
@@ -56,6 +56,8 @@ export { default as Stepper } from "./components/molecules/stepper/Stepper";
|
|
|
56
56
|
export { default as CheckboxForm } from "./components/molecules/checkboxForm/CheckboxForm";
|
|
57
57
|
// RadioForm
|
|
58
58
|
export { default as RadioForm } from "./components/molecules/radioForm/RadioForm";
|
|
59
|
+
// SelectForm
|
|
60
|
+
export { default as SelectForm } from "./components/molecules/selectForm/SelectForm";
|
|
59
61
|
// Breadcrumb
|
|
60
62
|
export { default as Breadcrumb } from "./components/molecules/breadcrumb/Breadcrumb";
|
|
61
63
|
// ProCard
|