@uxf/form 11.72.3 → 11.74.0
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/README.md +3 -1
- package/package.json +4 -2
- package/translations/translations.d.ts +389 -0
- package/translations/translations.js +55 -0
- package/_code-generator/form-code-generator.d.ts +0 -16
- package/_code-generator/form-code-generator.js +0 -69
- package/avatar-file-input/avatar-file-input.d.ts +0 -14
- package/avatar-file-input/avatar-file-input.js +0 -38
- package/avatar-file-input/avatar-file-input.stories.d.ts +0 -8
- package/avatar-file-input/avatar-file-input.stories.js +0 -23
- package/avatar-file-input/index.d.ts +0 -1
- package/avatar-file-input/index.js +0 -17
- package/bin/form-code-generator.d.ts +0 -2
- package/bin/form-code-generator.js +0 -55
- package/checkbox-button/checkbox-button.d.ts +0 -14
- package/checkbox-button/checkbox-button.js +0 -38
- package/checkbox-button/checkbox-button.stories.d.ts +0 -8
- package/checkbox-button/checkbox-button.stories.js +0 -24
- package/checkbox-button/index.d.ts +0 -1
- package/checkbox-button/index.js +0 -17
- package/checkbox-input/checkbox-input.d.ts +0 -14
- package/checkbox-input/checkbox-input.js +0 -38
- package/checkbox-input/checkbox-input.stories.d.ts +0 -8
- package/checkbox-input/checkbox-input.stories.js +0 -24
- package/checkbox-input/index.d.ts +0 -1
- package/checkbox-input/index.js +0 -17
- package/checkbox-list/checkbox-list.d.ts +0 -19
- package/checkbox-list/checkbox-list.js +0 -36
- package/checkbox-list/checkbox-list.stories.d.ts +0 -2
- package/checkbox-list/checkbox-list.stories.js +0 -22
- package/checkbox-list/index.d.ts +0 -1
- package/checkbox-list/index.js +0 -17
- package/color-radio-group/color-radio-group.d.ts +0 -13
- package/color-radio-group/color-radio-group.js +0 -38
- package/color-radio-group/color-radio-group.stories.d.ts +0 -8
- package/color-radio-group/color-radio-group.stories.js +0 -62
- package/color-radio-group/index.d.ts +0 -1
- package/color-radio-group/index.js +0 -17
- package/combobox/combobox.d.ts +0 -13
- package/combobox/combobox.js +0 -44
- package/combobox/combobox.stories.d.ts +0 -8
- package/combobox/combobox.stories.js +0 -30
- package/combobox/index.d.ts +0 -1
- package/combobox/index.js +0 -17
- package/components.d.ts +0 -127
- package/components.js +0 -154
- package/date-picker-input/date-picker-input.d.ts +0 -15
- package/date-picker-input/date-picker-input.js +0 -89
- package/date-picker-input/date-picker-input.stories.d.ts +0 -8
- package/date-picker-input/date-picker-input.stories.js +0 -31
- package/date-picker-input/index.d.ts +0 -1
- package/date-picker-input/index.js +0 -17
- package/date-range-picker-input/date-range-picker-input.d.ts +0 -12
- package/date-range-picker-input/date-range-picker-input.js +0 -106
- package/date-range-picker-input/date-range-picker-input.stories.d.ts +0 -8
- package/date-range-picker-input/date-range-picker-input.stories.js +0 -25
- package/date-range-picker-input/index.d.ts +0 -1
- package/date-range-picker-input/index.js +0 -17
- package/datetime-picker-input/datetime-picker-input.d.ts +0 -15
- package/datetime-picker-input/datetime-picker-input.js +0 -90
- package/datetime-picker-input/datetime-picker-input.stories.d.ts +0 -2
- package/datetime-picker-input/datetime-picker-input.stories.js +0 -28
- package/datetime-picker-input/index.d.ts +0 -1
- package/datetime-picker-input/index.js +0 -17
- package/dropzone/dropzone-input.d.ts +0 -13
- package/dropzone/dropzone-input.js +0 -59
- package/dropzone/dropzone-list.d.ts +0 -11
- package/dropzone/dropzone-list.js +0 -23
- package/dropzone/dropzone.stories.d.ts +0 -2
- package/dropzone/dropzone.stories.js +0 -50
- package/dropzone/index.d.ts +0 -9
- package/dropzone/index.js +0 -6
- package/file-input/file-input.d.ts +0 -14
- package/file-input/file-input.js +0 -38
- package/file-input/file-input.stories.d.ts +0 -8
- package/file-input/file-input.stories.js +0 -31
- package/file-input/index.d.ts +0 -1
- package/file-input/index.js +0 -17
- package/form/form.d.ts +0 -19
- package/form/form.js +0 -25
- package/form/form.stories.d.ts +0 -8
- package/form/form.stories.js +0 -24
- package/form/index.d.ts +0 -1
- package/form/index.js +0 -17
- package/form-id-context/form-context.d.ts +0 -7
- package/form-id-context/form-context.js +0 -12
- package/form-id-context/form-id-context.d.ts +0 -2
- package/form-id-context/form-id-context.js +0 -7
- package/form-id-context/index.d.ts +0 -1
- package/form-id-context/index.js +0 -17
- package/form-renderer/big-test-schema.d.ts +0 -33
- package/form-renderer/big-test-schema.js +0 -295
- package/form-renderer/field/base-field.d.ts +0 -4
- package/form-renderer/field/base-field.js +0 -70
- package/form-renderer/field/embedded.d.ts +0 -4
- package/form-renderer/field/embedded.js +0 -19
- package/form-renderer/field/one-to-many.d.ts +0 -4
- package/form-renderer/field/one-to-many.js +0 -50
- package/form-renderer/form-renderer.d.ts +0 -16
- package/form-renderer/form-renderer.js +0 -26
- package/form-renderer/form-renderer.stories.d.ts +0 -2
- package/form-renderer/form-renderer.stories.js +0 -23
- package/form-renderer/index.d.ts +0 -2
- package/form-renderer/index.js +0 -18
- package/form-renderer/mapper.d.ts +0 -2
- package/form-renderer/mapper.js +0 -30
- package/form-renderer/types.d.ts +0 -39
- package/form-renderer/types.js +0 -2
- package/gps-input/gps-input.d.ts +0 -20
- package/gps-input/gps-input.js +0 -154
- package/gps-input/gps-input.stories.d.ts +0 -8
- package/gps-input/gps-input.stories.js +0 -22
- package/gps-input/index.d.ts +0 -1
- package/gps-input/index.js +0 -17
- package/money-input/index.d.ts +0 -1
- package/money-input/index.js +0 -17
- package/money-input/money-input.d.ts +0 -24
- package/money-input/money-input.js +0 -108
- package/money-input/money-input.stories.d.ts +0 -2
- package/money-input/money-input.stories.js +0 -15
- package/multi-combobox/index.d.ts +0 -1
- package/multi-combobox/index.js +0 -17
- package/multi-combobox/multi-combobox.d.ts +0 -13
- package/multi-combobox/multi-combobox.js +0 -44
- package/multi-combobox/multi-combobox.stories.d.ts +0 -8
- package/multi-combobox/multi-combobox.stories.js +0 -54
- package/multi-select/index.d.ts +0 -1
- package/multi-select/index.js +0 -17
- package/multi-select/multi-select.d.ts +0 -13
- package/multi-select/multi-select.js +0 -39
- package/multi-select/multi-select.stories.d.ts +0 -8
- package/multi-select/multi-select.stories.js +0 -47
- package/number-input/index.d.ts +0 -1
- package/number-input/index.js +0 -17
- package/number-input/number-input.d.ts +0 -17
- package/number-input/number-input.js +0 -72
- package/number-input/number-input.stories.d.ts +0 -8
- package/number-input/number-input.stories.js +0 -24
- package/password-input/index.d.ts +0 -1
- package/password-input/index.js +0 -17
- package/password-input/password-input.d.ts +0 -15
- package/password-input/password-input.js +0 -93
- package/password-input/password-input.stories.d.ts +0 -8
- package/password-input/password-input.stories.js +0 -23
- package/radio-group/index.d.ts +0 -1
- package/radio-group/index.js +0 -17
- package/radio-group/radio-group.d.ts +0 -13
- package/radio-group/radio-group.js +0 -38
- package/radio-group/radio-group.stories.d.ts +0 -8
- package/radio-group/radio-group.stories.js +0 -38
- package/readmes.d.ts +0 -28
- package/readmes.js +0 -59
- package/select/index.d.ts +0 -1
- package/select/index.js +0 -17
- package/select/select.d.ts +0 -13
- package/select/select.js +0 -39
- package/select/select.stories.d.ts +0 -8
- package/select/select.stories.js +0 -44
- package/storybook/form-data-printer.d.ts +0 -6
- package/storybook/form-data-printer.js +0 -12
- package/storybook/storybook-form.d.ts +0 -8
- package/storybook/storybook-form.js +0 -42
- package/text-input/index.d.ts +0 -1
- package/text-input/index.js +0 -17
- package/text-input/text-input.d.ts +0 -33
- package/text-input/text-input.js +0 -57
- package/text-input/text-input.stories.d.ts +0 -8
- package/text-input/text-input.stories.js +0 -26
- package/textarea/index.d.ts +0 -1
- package/textarea/index.js +0 -17
- package/textarea/textarea.d.ts +0 -13
- package/textarea/textarea.js +0 -58
- package/textarea/textarea.stories.d.ts +0 -8
- package/textarea/textarea.stories.js +0 -22
- package/time-picker-input/index.d.ts +0 -1
- package/time-picker-input/index.js +0 -17
- package/time-picker-input/time-picker-input.d.ts +0 -14
- package/time-picker-input/time-picker-input.js +0 -77
- package/time-picker-input/time-picker-input.stories.d.ts +0 -8
- package/time-picker-input/time-picker-input.stories.js +0 -25
- package/toggle/index.d.ts +0 -1
- package/toggle/index.js +0 -17
- package/toggle/toggle.d.ts +0 -14
- package/toggle/toggle.js +0 -38
- package/toggle/toggle.stories.d.ts +0 -8
- package/toggle/toggle.stories.js +0 -23
- package/types.d.ts +0 -4
- package/types.js +0 -2
|
@@ -1,25 +0,0 @@
|
|
|
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.Default = Default;
|
|
7
|
-
const button_1 = require("@uxf/ui/button");
|
|
8
|
-
const react_1 = __importDefault(require("react"));
|
|
9
|
-
const storybook_form_1 = require("../storybook/storybook-form");
|
|
10
|
-
const date_range_picker_input_1 = require("./date-range-picker-input");
|
|
11
|
-
exports.default = {
|
|
12
|
-
title: "Form/DateRangePickerInput",
|
|
13
|
-
component: date_range_picker_input_1.DateRangePickerInput,
|
|
14
|
-
};
|
|
15
|
-
function Default() {
|
|
16
|
-
const storyFormDatePickers = (control) => (react_1.default.createElement("div", { className: "space-y-4" },
|
|
17
|
-
react_1.default.createElement(date_range_picker_input_1.DateRangePickerInput, { control: control, isClearable: true, isRequired: true, label: "Default date range picker", name: "default" }),
|
|
18
|
-
react_1.default.createElement(date_range_picker_input_1.DateRangePickerInput, { control: control, isClearable: true, isRequired: true, label: "Date range picker with two months", name: "twomonths", numberOfMonths: 2 }),
|
|
19
|
-
react_1.default.createElement(date_range_picker_input_1.DateRangePickerInput, { bottomContent: react_1.default.createElement("div", null,
|
|
20
|
-
"Bottom content",
|
|
21
|
-
react_1.default.createElement("p", null, "Here can goes anything")), control: control, isClearable: true, isRequired: true, label: "With bottom content", name: "default" }),
|
|
22
|
-
react_1.default.createElement(button_1.Button, { type: "submit" }, "Submit")));
|
|
23
|
-
return (react_1.default.createElement(storybook_form_1.StorybookForm, null, ({ control }) => (react_1.default.createElement("div", { className: "flex flex-col lg:flex-row" },
|
|
24
|
-
react_1.default.createElement("div", { className: "space-y-2 p-20 lg:w-1/2" }, storyFormDatePickers(control))))));
|
|
25
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "./date-range-picker-input";
|
|
@@ -1,17 +0,0 @@
|
|
|
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("./date-range-picker-input"), exports);
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { DatetimePickerInputProps as UIDatetimePickerInputProps } from "@uxf/ui/datetime-picker-input";
|
|
2
|
-
import React from "react";
|
|
3
|
-
import { FieldValues } from "react-hook-form";
|
|
4
|
-
import { ControlProps } from "../types";
|
|
5
|
-
export type DatetimePickerInputProps<FormData extends FieldValues> = ControlProps<FormData> & Omit<UIDatetimePickerInputProps, "isFocused" | "isInvalid" | "max" | "min" | "name" | "onChange" | "pattern" | "step" | "value"> & {
|
|
6
|
-
onChange?: UIDatetimePickerInputProps["onChange"];
|
|
7
|
-
requiredMessage?: string;
|
|
8
|
-
minDate?: string;
|
|
9
|
-
maxDate?: string;
|
|
10
|
-
};
|
|
11
|
-
export type DatetimePickerInputValue = string | null;
|
|
12
|
-
export declare function DatetimePickerInput<FormData extends FieldValues>(props: DatetimePickerInputProps<FormData>): React.JSX.Element;
|
|
13
|
-
export declare namespace DatetimePickerInput {
|
|
14
|
-
var displayName: string;
|
|
15
|
-
}
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
"use client";
|
|
3
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
4
|
-
if (k2 === undefined) k2 = k;
|
|
5
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
6
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
7
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
8
|
-
}
|
|
9
|
-
Object.defineProperty(o, k2, desc);
|
|
10
|
-
}) : (function(o, m, k, k2) {
|
|
11
|
-
if (k2 === undefined) k2 = k;
|
|
12
|
-
o[k2] = m[k];
|
|
13
|
-
}));
|
|
14
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
15
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
16
|
-
}) : function(o, v) {
|
|
17
|
-
o["default"] = v;
|
|
18
|
-
});
|
|
19
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
20
|
-
if (mod && mod.__esModule) return mod;
|
|
21
|
-
var result = {};
|
|
22
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
23
|
-
__setModuleDefault(result, mod);
|
|
24
|
-
return result;
|
|
25
|
-
};
|
|
26
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
27
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
28
|
-
};
|
|
29
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
|
-
exports.DatetimePickerInput = DatetimePickerInput;
|
|
31
|
-
const is_not_nil_1 = require("@uxf/core/utils/is-not-nil");
|
|
32
|
-
const date_picker_input_1 = require("@uxf/ui/date-picker-input");
|
|
33
|
-
const datetime_picker_1 = require("@uxf/ui/datetime-picker");
|
|
34
|
-
const datetime_picker_input_1 = require("@uxf/ui/datetime-picker-input");
|
|
35
|
-
const dayjs_1 = __importStar(require("dayjs"));
|
|
36
|
-
const customParseFormat_1 = __importDefault(require("dayjs/plugin/customParseFormat"));
|
|
37
|
-
const react_1 = __importDefault(require("react"));
|
|
38
|
-
const react_hook_form_1 = require("react-hook-form");
|
|
39
|
-
const form_context_1 = require("../form-id-context/form-context");
|
|
40
|
-
(0, dayjs_1.extend)(customParseFormat_1.default);
|
|
41
|
-
function DatetimePickerInput(props) {
|
|
42
|
-
var _a, _b, _c, _d, _e;
|
|
43
|
-
const formContext = (0, form_context_1.useFormContext)();
|
|
44
|
-
const id = (_a = props.id) !== null && _a !== void 0 ? _a : `${formContext.formId}__${props.name}`;
|
|
45
|
-
const { field, fieldState } = (0, react_hook_form_1.useController)({
|
|
46
|
-
control: props.control,
|
|
47
|
-
name: props.name,
|
|
48
|
-
rules: {
|
|
49
|
-
required: props.isRequired ? props.requiredMessage || "Toto pole je povinné" : undefined,
|
|
50
|
-
...props.rules,
|
|
51
|
-
validate: {
|
|
52
|
-
validDate: (value) => {
|
|
53
|
-
if (!value) {
|
|
54
|
-
return;
|
|
55
|
-
}
|
|
56
|
-
if (!(0, datetime_picker_1.getStrictParsedDatetime)(value).isValid()) {
|
|
57
|
-
return `Datum a čas musí být ve formátu ${datetime_picker_input_1.DISPLAY_DATETIME_FORMAT}.`;
|
|
58
|
-
}
|
|
59
|
-
},
|
|
60
|
-
validDateRange: (value) => {
|
|
61
|
-
if (!value) {
|
|
62
|
-
return;
|
|
63
|
-
}
|
|
64
|
-
if (props.minDate && (0, dayjs_1.default)(value, date_picker_input_1.OUTPUT_DATE_FORMAT, true).isBefore(props.minDate, "date")) {
|
|
65
|
-
return `Minimální datum, který je možné zadat, je: ${(0, dayjs_1.default)(props.minDate).format(date_picker_input_1.DISPLAY_DATE_FORMAT)}`;
|
|
66
|
-
}
|
|
67
|
-
if (props.maxDate && (0, dayjs_1.default)(value, date_picker_input_1.OUTPUT_DATE_FORMAT, true).isAfter(props.maxDate, "date")) {
|
|
68
|
-
return `Maximální datum, který je možné zadat, je: ${(0, dayjs_1.default)(props.maxDate).format(date_picker_input_1.DISPLAY_DATE_FORMAT)}`;
|
|
69
|
-
}
|
|
70
|
-
},
|
|
71
|
-
...(typeof ((_b = props.rules) === null || _b === void 0 ? void 0 : _b.validate) === "function"
|
|
72
|
-
? { custom: props.rules.validate }
|
|
73
|
-
: (_c = props.rules) === null || _c === void 0 ? void 0 : _c.validate),
|
|
74
|
-
},
|
|
75
|
-
},
|
|
76
|
-
shouldUnregister: props.shouldUnregister,
|
|
77
|
-
});
|
|
78
|
-
const onBlur = (event) => {
|
|
79
|
-
var _a;
|
|
80
|
-
field.onBlur();
|
|
81
|
-
(_a = props.onBlur) === null || _a === void 0 ? void 0 : _a.call(props, event);
|
|
82
|
-
};
|
|
83
|
-
const onChange = (value, event) => {
|
|
84
|
-
var _a;
|
|
85
|
-
field.onChange(value);
|
|
86
|
-
(_a = props.onChange) === null || _a === void 0 ? void 0 : _a.call(props, value, event);
|
|
87
|
-
};
|
|
88
|
-
return (react_1.default.createElement(datetime_picker_input_1.DatetimePickerInput, { CustomDatetimePicker: props.CustomDatetimePicker, autoFocus: props.autoFocus, bottomContent: props.bottomContent, className: props.className, form: props.form, helperText: (_e = (_d = fieldState.error) === null || _d === void 0 ? void 0 : _d.message) !== null && _e !== void 0 ? _e : props.helperText, hiddenLabel: props.hiddenLabel, id: id, isClearable: props.isClearable, isDisabled: formContext.isFormDisabled || props.isDisabled, isInvalid: (0, is_not_nil_1.isNotNil)(fieldState.error), isReadOnly: formContext.isFormReadOnly || props.isReadOnly, isRequired: props.isRequired, label: props.label, leftAddon: props.leftAddon, leftElement: props.leftElement, maxDate: props.maxDate, minDate: props.minDate, name: field.name, onBlur: onBlur, onChange: onChange, onFocus: props.onFocus, placeholder: props.placeholder, popoverPlacement: props.popoverPlacement, popoverStrategy: props.popoverStrategy, ref: field.ref, rightAddon: props.rightAddon, rightElement: props.rightElement, size: props.size, triggerElement: props.triggerElement, unavailableDates: props.unavailableDates, value: field.value, variant: props.variant }));
|
|
89
|
-
}
|
|
90
|
-
DatetimePickerInput.displayName = "UxfFormDatePickerInput";
|
|
@@ -1,28 +0,0 @@
|
|
|
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.Default = Default;
|
|
7
|
-
const button_1 = require("@uxf/ui/button");
|
|
8
|
-
const date_picker_input_1 = require("@uxf/ui/date-picker-input");
|
|
9
|
-
const dayjs_1 = __importDefault(require("dayjs"));
|
|
10
|
-
const react_1 = __importDefault(require("react"));
|
|
11
|
-
const storybook_form_1 = require("../storybook/storybook-form");
|
|
12
|
-
const datetime_picker_input_1 = require("./datetime-picker-input");
|
|
13
|
-
function Default() {
|
|
14
|
-
return (react_1.default.createElement(storybook_form_1.StorybookForm, { className: "space-y-4 p-4", defaultValues: { withDefaultValue: (0, dayjs_1.default)("2023-10-20T14:32:10.511").toISOString() } }, ({ control }) => (react_1.default.createElement(react_1.default.Fragment, null,
|
|
15
|
-
react_1.default.createElement(datetime_picker_input_1.DatetimePickerInput, { control: control, isClearable: true, isRequired: true, label: "Default datetime picker", name: "default" }),
|
|
16
|
-
react_1.default.createElement(datetime_picker_input_1.DatetimePickerInput, { control: control, isClearable: true, isRequired: true, label: "Default datetime picker with default value", name: "withDefaultValue" }),
|
|
17
|
-
react_1.default.createElement(datetime_picker_input_1.DatetimePickerInput, { control: control, isClearable: true, isRequired: true, label: "Date time picker with input min/max validation - only next 7 days", maxDate: (0, dayjs_1.default)().add(6, "days").format(date_picker_input_1.OUTPUT_DATE_FORMAT), minDate: (0, dayjs_1.default)().format(date_picker_input_1.OUTPUT_DATE_FORMAT), name: "withMinMaxValidation" }),
|
|
18
|
-
react_1.default.createElement(datetime_picker_input_1.DatetimePickerInput, { bottomContent: react_1.default.createElement("div", null,
|
|
19
|
-
"Bottom content",
|
|
20
|
-
react_1.default.createElement("p", null, "Here can goes anything")), control: control, isClearable: true, isRequired: true, label: "With bottom content", name: "default" }),
|
|
21
|
-
react_1.default.createElement(datetime_picker_input_1.DatetimePickerInput, { CustomDatetimePicker: (props) => (react_1.default.createElement(button_1.Button, { onClick: () => {
|
|
22
|
-
props.onChange((0, dayjs_1.default)()
|
|
23
|
-
.add(1, "day")
|
|
24
|
-
.startOf("day")
|
|
25
|
-
.format("YYYY-MM-DD[T]HH:mm:ssZ"));
|
|
26
|
-
props.onClose();
|
|
27
|
-
} }, "Z\u00EDtra")), control: control, isClearable: true, label: "With custom datetime picker", name: "withCustomDatetimePicker" })))));
|
|
28
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "./datetime-picker-input";
|
|
@@ -1,17 +0,0 @@
|
|
|
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("./datetime-picker-input"), exports);
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { DropzoneInputProps as UIDropzoneProps } from "@uxf/ui/dropzone";
|
|
2
|
-
import React from "react";
|
|
3
|
-
import { FieldValues } from "react-hook-form";
|
|
4
|
-
import { ControlProps } from "../types";
|
|
5
|
-
export type DropzoneProps<FormData extends FieldValues> = ControlProps<FormData> & Omit<UIDropzoneProps, "isFocused" | "isInvalid" | "onChange" | "value"> & {
|
|
6
|
-
minFilesCount?: number;
|
|
7
|
-
onChange?: UIDropzoneProps["onChange"];
|
|
8
|
-
requiredMessage?: string;
|
|
9
|
-
};
|
|
10
|
-
export declare function DropzoneInput<FormData extends FieldValues>(props: DropzoneProps<FormData>): React.JSX.Element;
|
|
11
|
-
export declare namespace DropzoneInput {
|
|
12
|
-
var displayName: string;
|
|
13
|
-
}
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
"use client";
|
|
3
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
|
-
};
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.DropzoneInput = DropzoneInput;
|
|
8
|
-
const is_not_nil_1 = require("@uxf/core/utils/is-not-nil");
|
|
9
|
-
const dropzone_1 = require("@uxf/ui/dropzone");
|
|
10
|
-
const react_1 = __importDefault(require("react"));
|
|
11
|
-
const react_hook_form_1 = require("react-hook-form");
|
|
12
|
-
const form_context_1 = require("../form-id-context/form-context");
|
|
13
|
-
function DropzoneInput(props) {
|
|
14
|
-
var _a, _b, _c;
|
|
15
|
-
const formContext = (0, form_context_1.useFormContext)();
|
|
16
|
-
const id = (_a = props.id) !== null && _a !== void 0 ? _a : `${formContext.formId}__${props.name}`;
|
|
17
|
-
const { field, fieldState } = (0, react_hook_form_1.useController)({
|
|
18
|
-
control: props.control,
|
|
19
|
-
disabled: props.isDisabled,
|
|
20
|
-
name: props.name,
|
|
21
|
-
rules: {
|
|
22
|
-
...props.rules,
|
|
23
|
-
validate: {
|
|
24
|
-
default: (value) => {
|
|
25
|
-
var _a;
|
|
26
|
-
if (props.isRequired &&
|
|
27
|
-
props.minFilesCount !== 0 &&
|
|
28
|
-
(!value || value.length < ((_a = props.minFilesCount) !== null && _a !== void 0 ? _a : 1))) {
|
|
29
|
-
return props.requiredMessage || "Toto pole je povinné";
|
|
30
|
-
}
|
|
31
|
-
if (props.maxFilesCount && value && value.length > props.maxFilesCount) {
|
|
32
|
-
return `Maximální počet souborů je ${props.maxFilesCount}`;
|
|
33
|
-
}
|
|
34
|
-
if (props.minFilesCount && value && value.length < props.minFilesCount) {
|
|
35
|
-
return `Minimální počet souborů je ${props.minFilesCount}`;
|
|
36
|
-
}
|
|
37
|
-
// TODO – validate this only on submit
|
|
38
|
-
// if (value?.some((file) => file.id < 0)) {
|
|
39
|
-
// return "Nahrávání souborů ještě nebylo dokončeno";
|
|
40
|
-
// }
|
|
41
|
-
return true;
|
|
42
|
-
},
|
|
43
|
-
...(((_b = props.rules) === null || _b === void 0 ? void 0 : _b.validate)
|
|
44
|
-
? typeof props.rules.validate === "function"
|
|
45
|
-
? { custom: props.rules.validate }
|
|
46
|
-
: props.rules.validate
|
|
47
|
-
: {}),
|
|
48
|
-
},
|
|
49
|
-
},
|
|
50
|
-
shouldUnregister: props.shouldUnregister,
|
|
51
|
-
});
|
|
52
|
-
const onChange = (value, event) => {
|
|
53
|
-
var _a;
|
|
54
|
-
field.onChange(value);
|
|
55
|
-
(_a = props.onChange) === null || _a === void 0 ? void 0 : _a.call(props, value, event);
|
|
56
|
-
};
|
|
57
|
-
return (react_1.default.createElement(dropzone_1.Dropzone, { accept: props.accept, className: props.className, helperText: ((_c = fieldState.error) === null || _c === void 0 ? void 0 : _c.message) || props.helperText, icon: props.icon, id: id, isDisabled: formContext.isFormDisabled || props.isDisabled, isInvalid: (0, is_not_nil_1.isNotNil)(fieldState.error), isNotClickable: props.isNotClickable, isNotDraggable: props.isNotDraggable, isReadOnly: formContext.isFormReadOnly || props.isReadOnly, isRequired: props.isRequired, label: props.label, maxFileSize: props.maxFileSize, maxFilesCount: props.maxFilesCount, minFileSize: props.minFileSize, name: props.name, onChange: onChange, onDropRejected: props.onDropRejected, onUploadComplete: props.onUploadComplete, onUploadError: props.onUploadError, onUploadFile: props.onUploadFile, ref: field.ref, style: props.style, value: field.value }));
|
|
58
|
-
}
|
|
59
|
-
DropzoneInput.displayName = "UxfFormDropzoneInput";
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { DropzoneListProps as UIDropzoneListProps } from "@uxf/ui/dropzone";
|
|
2
|
-
import React from "react";
|
|
3
|
-
import { FieldValues } from "react-hook-form";
|
|
4
|
-
import { ControlProps } from "../types";
|
|
5
|
-
export interface DropzoneListProps<FormData extends FieldValues> extends Pick<ControlProps<FormData>, "control" | "name">, Pick<UIDropzoneListProps, "className" | "errorText" | "isDownloadableOnClick" | "onRemoveConfirm" | "renderItem" | "style"> {
|
|
6
|
-
onChange?: UIDropzoneListProps["onChange"];
|
|
7
|
-
}
|
|
8
|
-
export declare function DropzoneList<FormData extends FieldValues>(props: DropzoneListProps<FormData>): React.JSX.Element;
|
|
9
|
-
export declare namespace DropzoneList {
|
|
10
|
-
var displayName: string;
|
|
11
|
-
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
"use client";
|
|
3
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
|
-
};
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.DropzoneList = DropzoneList;
|
|
8
|
-
const dropzone_1 = require("@uxf/ui/dropzone");
|
|
9
|
-
const react_1 = __importDefault(require("react"));
|
|
10
|
-
const react_hook_form_1 = require("react-hook-form");
|
|
11
|
-
function DropzoneList(props) {
|
|
12
|
-
const { field } = (0, react_hook_form_1.useController)({
|
|
13
|
-
control: props.control,
|
|
14
|
-
name: props.name,
|
|
15
|
-
});
|
|
16
|
-
const onChange = (value, event) => {
|
|
17
|
-
var _a;
|
|
18
|
-
field.onChange(value);
|
|
19
|
-
(_a = props.onChange) === null || _a === void 0 ? void 0 : _a.call(props, value, event);
|
|
20
|
-
};
|
|
21
|
-
return (react_1.default.createElement(dropzone_1.Dropzone.List, { className: props.className, errorText: props.errorText, isDownloadableOnClick: props.isDownloadableOnClick, name: props.name, onChange: onChange, onRemoveConfirm: props.onRemoveConfirm, renderItem: props.renderItem, style: props.style, value: field.value }));
|
|
22
|
-
}
|
|
23
|
-
DropzoneList.displayName = "UxfFormDropzoneList";
|
|
@@ -1,50 +0,0 @@
|
|
|
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.Default = Default;
|
|
7
|
-
const button_1 = require("@uxf/ui/button");
|
|
8
|
-
const handle_rejected_files_1 = require("@uxf/ui/dropzone/handle-rejected-files");
|
|
9
|
-
const get_dropzone_state_1 = require("@uxf/ui/utils/get-dropzone-state");
|
|
10
|
-
const upload_file_mock_1 = require("@uxf/ui/utils/mocks/upload-file.mock");
|
|
11
|
-
const validator_exceptions_1 = require("@uxf/ui/utils/validator/validator-exceptions");
|
|
12
|
-
const react_1 = __importDefault(require("react"));
|
|
13
|
-
const storybook_form_1 = require("../storybook/storybook-form");
|
|
14
|
-
const index_1 = require("./index");
|
|
15
|
-
const DUMMY_FILES = [
|
|
16
|
-
{
|
|
17
|
-
id: 1,
|
|
18
|
-
uuid: "1",
|
|
19
|
-
name: "file1",
|
|
20
|
-
extension: "jpg",
|
|
21
|
-
namespace: null,
|
|
22
|
-
progress: null,
|
|
23
|
-
},
|
|
24
|
-
{
|
|
25
|
-
id: 2,
|
|
26
|
-
uuid: "2",
|
|
27
|
-
name: "file2",
|
|
28
|
-
extension: "pdf",
|
|
29
|
-
namespace: null,
|
|
30
|
-
progress: null,
|
|
31
|
-
},
|
|
32
|
-
];
|
|
33
|
-
function Default() {
|
|
34
|
-
const onRemoveConfirm = () => Promise.resolve(confirm("Do you want to delete the file?"));
|
|
35
|
-
const onUploadError = async (e) => {
|
|
36
|
-
if (e === validator_exceptions_1.ValidatorExceptions.MaxFileSize) {
|
|
37
|
-
// eslint-disable-next-line no-alert
|
|
38
|
-
alert("Maximální velikost souboru je 1\xa0MB.");
|
|
39
|
-
}
|
|
40
|
-
};
|
|
41
|
-
return (react_1.default.createElement(storybook_form_1.StorybookForm, { defaultValues: { dropzone: DUMMY_FILES } }, ({ control, watch }) => {
|
|
42
|
-
const { status } = (0, get_dropzone_state_1.getDropzoneState)(watch("dropzone"));
|
|
43
|
-
return (react_1.default.createElement("div", { className: "space-y-8 p-20 lg:w-1/2" },
|
|
44
|
-
react_1.default.createElement(index_1.Dropzone, { accept: {
|
|
45
|
-
"image/png": [".png"],
|
|
46
|
-
}, control: control, helperText: "Allow multiple files, 1MB max file size, only .png", isDisabled: status === "UPLOADING", isRequired: true, label: "Use drag and drop or click to upload", maxFileSize: 1024 * 1024, name: "dropzone", onDropRejected: handle_rejected_files_1.handleRejectedFiles, onUploadError: onUploadError, onUploadFile: upload_file_mock_1.uploadFile }),
|
|
47
|
-
react_1.default.createElement(button_1.Button, { type: "submit" }, "Submit"),
|
|
48
|
-
react_1.default.createElement(index_1.Dropzone.List, { control: control, errorText: "Oops, n\u011Bco se pokazilo", name: "dropzone", onRemoveConfirm: onRemoveConfirm })));
|
|
49
|
-
}));
|
|
50
|
-
}
|
package/dropzone/index.d.ts
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { DropzoneFile } from "@uxf/ui/dropzone/types";
|
|
2
|
-
import { DropzoneInput } from "./dropzone-input";
|
|
3
|
-
import { DropzoneList } from "./dropzone-list";
|
|
4
|
-
export type { DropzoneProps } from "./dropzone-input";
|
|
5
|
-
export type { DropzoneListProps } from "./dropzone-list";
|
|
6
|
-
export type DropzoneValue = DropzoneFile[] | undefined;
|
|
7
|
-
export declare const Dropzone: typeof DropzoneInput & {
|
|
8
|
-
List: typeof DropzoneList;
|
|
9
|
-
};
|
package/dropzone/index.js
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Dropzone = void 0;
|
|
4
|
-
const dropzone_input_1 = require("./dropzone-input");
|
|
5
|
-
const dropzone_list_1 = require("./dropzone-list");
|
|
6
|
-
exports.Dropzone = Object.assign(dropzone_input_1.DropzoneInput, { List: dropzone_list_1.DropzoneList });
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { FileResponse } from "@uxf/core/types";
|
|
2
|
-
import { FileInputProps as UIFileInputProps } from "@uxf/ui/file-input";
|
|
3
|
-
import React from "react";
|
|
4
|
-
import { FieldValues } from "react-hook-form";
|
|
5
|
-
import { ControlProps } from "../types";
|
|
6
|
-
export type FileInputProps<FormData extends FieldValues> = ControlProps<FormData> & Omit<UIFileInputProps, "isFocused" | "isInvalid" | "onChange" | "value"> & {
|
|
7
|
-
onChange?: UIFileInputProps["onChange"];
|
|
8
|
-
requiredMessage?: string;
|
|
9
|
-
};
|
|
10
|
-
export type FileInputValue = FileResponse | null;
|
|
11
|
-
export declare function FileInput<FormData extends FieldValues>(props: FileInputProps<FormData>): React.JSX.Element;
|
|
12
|
-
export declare namespace FileInput {
|
|
13
|
-
var displayName: string;
|
|
14
|
-
}
|
package/file-input/file-input.js
DELETED
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
"use client";
|
|
3
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
|
-
};
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.FileInput = FileInput;
|
|
8
|
-
const is_not_nil_1 = require("@uxf/core/utils/is-not-nil");
|
|
9
|
-
const file_input_1 = require("@uxf/ui/file-input");
|
|
10
|
-
const react_1 = __importDefault(require("react"));
|
|
11
|
-
const react_hook_form_1 = require("react-hook-form");
|
|
12
|
-
const form_context_1 = require("../form-id-context/form-context");
|
|
13
|
-
function FileInput(props) {
|
|
14
|
-
var _a, _b, _c;
|
|
15
|
-
const formContext = (0, form_context_1.useFormContext)();
|
|
16
|
-
const id = (_a = props.id) !== null && _a !== void 0 ? _a : `${formContext.formId}__${props.name}`;
|
|
17
|
-
const { field, fieldState } = (0, react_hook_form_1.useController)({
|
|
18
|
-
control: props.control,
|
|
19
|
-
name: props.name,
|
|
20
|
-
rules: {
|
|
21
|
-
required: props.isRequired ? props.requiredMessage || "Toto pole je povinné" : undefined,
|
|
22
|
-
...props.rules,
|
|
23
|
-
},
|
|
24
|
-
shouldUnregister: props.shouldUnregister,
|
|
25
|
-
});
|
|
26
|
-
const onBlur = (event) => {
|
|
27
|
-
var _a;
|
|
28
|
-
field.onBlur();
|
|
29
|
-
(_a = props.onBlur) === null || _a === void 0 ? void 0 : _a.call(props, event);
|
|
30
|
-
};
|
|
31
|
-
const onChange = (value, event) => {
|
|
32
|
-
var _a;
|
|
33
|
-
field.onChange(value);
|
|
34
|
-
(_a = props.onChange) === null || _a === void 0 ? void 0 : _a.call(props, value, event);
|
|
35
|
-
};
|
|
36
|
-
return (react_1.default.createElement(file_input_1.FileInput, { accept: props.accept, className: props.className, form: props.form, helperText: (_c = (_b = fieldState.error) === null || _b === void 0 ? void 0 : _b.message) !== null && _c !== void 0 ? _c : props.helperText, hiddenLabel: props.hiddenLabel, id: id, isClearable: props.isClearable, isDisabled: formContext.isFormDisabled || props.isDisabled, isInvalid: (0, is_not_nil_1.isNotNil)(fieldState.error), isReadOnly: formContext.isFormReadOnly || props.isReadOnly, isRequired: props.isRequired, label: props.label, maxFileSize: props.maxFileSize, name: field.name, onBlur: onBlur, onChange: onChange, onFocus: props.onFocus, onUploadError: props.onUploadError, onUploadFile: props.onUploadFile, placeholder: props.placeholder, ref: field.ref, size: props.size, uploadButtonLabel: props.uploadButtonLabel, value: field.value, variant: props.variant }));
|
|
37
|
-
}
|
|
38
|
-
FileInput.displayName = "FileInput";
|
|
@@ -1,31 +0,0 @@
|
|
|
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.Default = Default;
|
|
7
|
-
const button_1 = require("@uxf/ui/button");
|
|
8
|
-
const upload_file_mock_1 = require("@uxf/ui/utils/mocks/upload-file.mock");
|
|
9
|
-
const react_1 = __importDefault(require("react"));
|
|
10
|
-
const storybook_form_1 = require("../storybook/storybook-form");
|
|
11
|
-
const file_input_1 = require("./file-input");
|
|
12
|
-
exports.default = {
|
|
13
|
-
title: "Form/FileInput",
|
|
14
|
-
component: file_input_1.FileInput,
|
|
15
|
-
};
|
|
16
|
-
const DUMMY_FILE = {
|
|
17
|
-
id: 1,
|
|
18
|
-
uuid: "1",
|
|
19
|
-
name: "file1",
|
|
20
|
-
namespace: null,
|
|
21
|
-
extension: "jpg",
|
|
22
|
-
};
|
|
23
|
-
function Default() {
|
|
24
|
-
const storyFormFileInputs = (control, mode) => (react_1.default.createElement("div", { className: "space-y-4" },
|
|
25
|
-
react_1.default.createElement(file_input_1.FileInput, { control: control, isClearable: true, label: "Default file input", name: `default-${mode}`, onUploadFile: upload_file_mock_1.uploadFile, placeholder: "Nahraj soubor" }),
|
|
26
|
-
react_1.default.createElement(file_input_1.FileInput, { control: control, id: `required-${mode}`, isRequired: true, label: "Required file input", name: `required-${mode}`, onUploadFile: upload_file_mock_1.uploadFile }),
|
|
27
|
-
react_1.default.createElement(file_input_1.FileInput, { control: control, isClearable: true, label: "Custom button label", name: `default-${mode}`, onUploadFile: upload_file_mock_1.uploadFile, placeholder: "Nahrajte soubor", uploadButtonLabel: "Nahrajte dokument" }),
|
|
28
|
-
react_1.default.createElement(button_1.Button, { type: "submit" }, "Submit")));
|
|
29
|
-
return (react_1.default.createElement(storybook_form_1.StorybookForm, { defaultValues: { "default-light": DUMMY_FILE } }, ({ control }) => (react_1.default.createElement("div", { className: "flex flex-col lg:flex-row" },
|
|
30
|
-
react_1.default.createElement("div", { className: "space-y-2 p-20 lg:w-1/2" }, storyFormFileInputs(control, "light"))))));
|
|
31
|
-
}
|
package/file-input/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "./file-input";
|
package/file-input/index.js
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
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("./file-input"), exports);
|
package/form/form.d.ts
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import React, { ReactNode, Ref } from "react";
|
|
2
|
-
import { FieldValues, SubmitErrorHandler, SubmitHandler, UseFormReturn } from "react-hook-form";
|
|
3
|
-
export type FormProps<TFieldValues extends FieldValues> = {
|
|
4
|
-
children: ReactNode;
|
|
5
|
-
className?: string;
|
|
6
|
-
formApi: UseFormReturn<TFieldValues>;
|
|
7
|
-
forwardRef?: Ref<HTMLFormElement> | undefined;
|
|
8
|
-
id: string;
|
|
9
|
-
method?: "get" | "post";
|
|
10
|
-
onError?: SubmitErrorHandler<TFieldValues>;
|
|
11
|
-
onSubmit: SubmitHandler<TFieldValues>;
|
|
12
|
-
shouldOmitSubmitInput?: boolean;
|
|
13
|
-
isDisabled?: boolean;
|
|
14
|
-
isReadOnly?: boolean;
|
|
15
|
-
};
|
|
16
|
-
export declare function Form<TFieldValues extends FieldValues = FieldValues>(props: FormProps<TFieldValues>): React.JSX.Element;
|
|
17
|
-
export declare namespace Form {
|
|
18
|
-
var displayName: string;
|
|
19
|
-
}
|
package/form/form.js
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
"use client";
|
|
3
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
|
-
};
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.Form = Form;
|
|
8
|
-
const sr_only_1 = require("@uxf/styles/mixins/sr-only");
|
|
9
|
-
const react_1 = __importDefault(require("react"));
|
|
10
|
-
const react_hook_form_1 = require("react-hook-form");
|
|
11
|
-
const form_context_1 = require("../form-id-context/form-context");
|
|
12
|
-
function Form(props) {
|
|
13
|
-
var _a;
|
|
14
|
-
const context = {
|
|
15
|
-
formId: props.id,
|
|
16
|
-
isFormDisabled: Boolean(props.isDisabled),
|
|
17
|
-
isFormReadOnly: Boolean(props.isReadOnly),
|
|
18
|
-
};
|
|
19
|
-
return (react_1.default.createElement(form_context_1.FormContextProvider, { value: context },
|
|
20
|
-
react_1.default.createElement(react_hook_form_1.FormProvider, { ...props.formApi },
|
|
21
|
-
react_1.default.createElement("form", { className: props.className, id: props.id, method: (_a = props.method) !== null && _a !== void 0 ? _a : "post", noValidate: true, onSubmit: props.formApi.handleSubmit(props.onSubmit, props.onError), ref: props.forwardRef },
|
|
22
|
-
props.children,
|
|
23
|
-
!props.shouldOmitSubmitInput && react_1.default.createElement("input", { style: sr_only_1.srOnly, type: "submit" })))));
|
|
24
|
-
}
|
|
25
|
-
Form.displayName = "UxfForm";
|
package/form/form.stories.d.ts
DELETED
package/form/form.stories.js
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
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.Default = Default;
|
|
7
|
-
const button_1 = require("@uxf/ui/button");
|
|
8
|
-
const react_1 = __importDefault(require("react"));
|
|
9
|
-
const react_hook_form_1 = require("react-hook-form");
|
|
10
|
-
const text_input_1 = require("../text-input");
|
|
11
|
-
const form_1 = require("./form");
|
|
12
|
-
exports.default = {
|
|
13
|
-
title: "Form/Form",
|
|
14
|
-
component: form_1.Form,
|
|
15
|
-
};
|
|
16
|
-
function Default() {
|
|
17
|
-
const formApi = (0, react_hook_form_1.useForm)();
|
|
18
|
-
return (
|
|
19
|
-
// eslint-disable-next-line no-console
|
|
20
|
-
react_1.default.createElement(form_1.Form, { formApi: formApi, id: "form", onSubmit: console.log },
|
|
21
|
-
react_1.default.createElement("div", { className: "mb-4 space-y-4 p-4" },
|
|
22
|
-
react_1.default.createElement(text_input_1.TextInput, { control: formApi.control, isRequired: true, label: "Default input", name: "default" }),
|
|
23
|
-
react_1.default.createElement(button_1.Button, { type: "submit" }, "Submit"))));
|
|
24
|
-
}
|
package/form/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "./form";
|
package/form/index.js
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
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("./form"), exports);
|