@aivenio/aquarium 1.78.0 → 1.79.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/dist/atoms.cjs +95 -3
- package/dist/atoms.mjs +95 -3
- package/dist/charts.cjs +1 -0
- package/dist/charts.mjs +1 -0
- package/dist/src/atoms/utils/index.d.ts +234 -0
- package/dist/src/atoms/utils/index.js +32 -0
- package/dist/src/molecules/Context/Context.d.ts +2 -1
- package/dist/src/molecules/Context/Context.js +6 -4
- package/dist/src/molecules/DateField/DateField.d.ts +10 -0
- package/dist/src/molecules/DateField/DateField.js +33 -0
- package/dist/src/molecules/DateField/DateInput.d.ts +3 -0
- package/dist/src/molecules/DateField/DateInput.js +22 -0
- package/dist/src/molecules/DatePicker/Button.d.ts +4 -0
- package/dist/src/molecules/DatePicker/Button.js +12 -0
- package/dist/src/molecules/DatePicker/Calendar.d.ts +6 -0
- package/dist/src/molecules/DatePicker/Calendar.js +44 -0
- package/dist/src/molecules/DatePicker/DatePicker.d.ts +12 -0
- package/dist/src/molecules/DatePicker/DatePicker.js +63 -0
- package/dist/src/molecules/DatePicker/DateRangePicker.d.ts +12 -0
- package/dist/src/molecules/DatePicker/DateRangePicker.js +68 -0
- package/dist/src/molecules/DatePicker/Dialog.d.ts +3 -0
- package/dist/src/molecules/DatePicker/Dialog.js +7 -0
- package/dist/src/molecules/DatePicker/Popover.d.ts +7 -0
- package/dist/src/molecules/DatePicker/Popover.js +27 -0
- package/dist/src/molecules/DatePicker/RangeCalendar.d.ts +4 -0
- package/dist/src/molecules/DatePicker/RangeCalendar.js +51 -0
- package/dist/src/molecules/Field/Field.d.ts +3 -0
- package/dist/src/molecules/Field/Field.js +7 -0
- package/dist/src/molecules/Popover/PopoverOverlay.d.ts +1 -1
- package/dist/src/molecules/TimeField/TimeField.d.ts +10 -0
- package/dist/src/molecules/TimeField/TimeField.js +33 -0
- package/dist/src/molecules/TimePicker/TimePicker.d.ts +6 -0
- package/dist/src/molecules/TimePicker/TimePicker.js +4 -0
- package/dist/src/molecules/index.d.ts +3 -0
- package/dist/src/molecules/index.js +4 -1
- package/dist/src/utils/tailwind.d.ts +1 -0
- package/dist/src/utils/tailwind.js +6 -1
- package/dist/styles.css +1933 -1489
- package/dist/system.cjs +1025 -505
- package/dist/system.mjs +1011 -474
- package/dist/tailwind.config.js +2 -1
- package/dist/tailwind.theme.json +93 -3
- package/dist/tsconfig.module.tsbuildinfo +1 -1
- package/dist/types/tailwindGenerated.d.ts +1 -1
- package/package.json +6 -4
@@ -1,20 +1,22 @@
|
|
1
1
|
import React from 'react';
|
2
|
+
import { I18nProvider } from '@react-aria/i18n';
|
2
3
|
import { ModalProvider } from '@react-aria/overlays';
|
3
4
|
import { getMatches } from '../../../src/utils/breakpoints';
|
4
5
|
import { useWindowSize } from '../../../src/utils/useWindowSize';
|
5
6
|
import { ToastProvider } from '../Toast/Toast';
|
6
|
-
export const Context = ({ children }) => {
|
7
|
+
export const Context = ({ children, locale = 'en-GB' }) => {
|
7
8
|
const windowSize = useWindowSize();
|
8
9
|
const [breakpointMatches, setBreakpointMatches] = React.useState(getMatches(windowSize));
|
9
10
|
React.useEffect(() => {
|
10
11
|
setBreakpointMatches(getMatches(windowSize));
|
11
12
|
}, [windowSize]);
|
12
13
|
return (React.createElement(DesignSystemContext.Provider, { value: { breakpointMatches } },
|
13
|
-
React.createElement(
|
14
|
-
React.createElement(
|
14
|
+
React.createElement(I18nProvider, { locale: locale },
|
15
|
+
React.createElement(ModalProvider, null,
|
16
|
+
React.createElement(ToastProvider, null, children)))));
|
15
17
|
};
|
16
18
|
const context = {
|
17
19
|
breakpointMatches: getMatches(undefined),
|
18
20
|
};
|
19
21
|
export const DesignSystemContext = React.createContext(context);
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9tb2xlY3VsZXMvQ29udGV4dC9Db250ZXh0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFDMUIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVyRCxPQUFPLEVBQTBCLFVBQVUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzNFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV4RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFXL0MsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLENBQUMsRUFBRSxRQUFRLEVBQUUsTUFBTSxHQUFHLE9BQU8sRUFBZ0IsRUFBZSxFQUFFO0lBQ25GLE1BQU0sVUFBVSxHQUFHLGFBQWEsRUFBRSxDQUFDO0lBQ25DLE1BQU0sQ0FBQyxpQkFBaUIsRUFBRSxvQkFBb0IsQ0FBQyxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQW9CLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBRTVHLEtBQUssQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1FBQ25CLG9CQUFvQixDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBQy9DLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFFakIsT0FBTyxDQUNMLG9CQUFDLG1CQUFtQixDQUFDLFFBQVEsSUFBQyxLQUFLLEVBQUUsRUFBRSxpQkFBaUIsRUFBRTtRQUN4RCxvQkFBQyxZQUFZLElBQUMsTUFBTSxFQUFFLE1BQU07WUFDMUIsb0JBQUMsYUFBYTtnQkFDWixvQkFBQyxhQUFhLFFBQUUsUUFBUSxDQUFpQixDQUMzQixDQUNILENBQ2MsQ0FDaEMsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sT0FBTyxHQUFrQjtJQUM3QixpQkFBaUIsRUFBRSxVQUFVLENBQUMsU0FBUyxDQUFDO0NBQ3pDLENBQUM7QUFDRixNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxLQUFLLENBQUMsYUFBYSxDQUFnQixPQUFPLENBQUMsQ0FBQyJ9
|
@@ -0,0 +1,10 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { type DateFieldProps as AriaDateFieldProps, type DateValue } from 'react-aria-components';
|
3
|
+
import { type LabelControlProps } from '../../../src/utils/form/Label/Label';
|
4
|
+
export declare type DateFieldBaseProps<T extends DateValue> = Omit<AriaDateFieldProps<T>, 'children' | 'className' | 'isDateUnavailable' | 'isDisabled' | 'isInvalid' | 'isOpen' | 'isReadOnly' | 'isRequired' | 'slot' | 'style' | 'validate'> & {
|
5
|
+
disabled?: boolean;
|
6
|
+
valid?: boolean;
|
7
|
+
};
|
8
|
+
export declare const DateFieldBase: <T extends DateValue>({ disabled, valid, ...props }: DateFieldBaseProps<T>) => React.JSX.Element;
|
9
|
+
export declare type DateFieldProps<T extends DateValue> = DateFieldBaseProps<T> & Omit<LabelControlProps, 'length'>;
|
10
|
+
export declare const DateField: <T extends DateValue>(props: DateFieldProps<T>) => React.JSX.Element;
|
@@ -0,0 +1,33 @@
|
|
1
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
2
|
+
var t = {};
|
3
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
4
|
+
t[p] = s[p];
|
5
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
6
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
7
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
8
|
+
t[p[i]] = s[p[i]];
|
9
|
+
}
|
10
|
+
return t;
|
11
|
+
};
|
12
|
+
import React from 'react';
|
13
|
+
import { DateField as AriaDateField, } from 'react-aria-components';
|
14
|
+
import { useLabel } from '@react-aria/label';
|
15
|
+
import { useId } from '@react-aria/utils';
|
16
|
+
import omit from 'lodash/omit';
|
17
|
+
import { getLabelControlProps, LabelControl } from '../../../src/utils/form/Label/Label';
|
18
|
+
import { DateInput } from './DateInput';
|
19
|
+
export const DateFieldBase = (_a) => {
|
20
|
+
var { disabled, valid } = _a, props = __rest(_a, ["disabled", "valid"]);
|
21
|
+
return (React.createElement(AriaDateField, Object.assign({}, props, { isInvalid: valid === false, isDisabled: disabled }),
|
22
|
+
React.createElement(DateInput, null)));
|
23
|
+
};
|
24
|
+
export const DateField = (props) => {
|
25
|
+
const { labelProps, fieldProps } = useLabel({ label: props.labelText });
|
26
|
+
const errorMessageId = useId();
|
27
|
+
const errorProps = props.valid === false ? { 'aria-invalid': true, 'aria-describedby': errorMessageId } : {};
|
28
|
+
const _a = getLabelControlProps(props), { 'data-testid': dataTestId } = _a, labelControlProps = __rest(_a, ['data-testid']);
|
29
|
+
const baseProps = omit(props, Object.keys(labelControlProps));
|
30
|
+
return (React.createElement(LabelControl, Object.assign({}, labelProps, labelControlProps, { messageId: errorMessageId, className: "Aquarium-DateField" }),
|
31
|
+
React.createElement(DateFieldBase, Object.assign({}, baseProps, fieldProps, errorProps, { disabled: props.disabled, valid: props.valid }))));
|
32
|
+
};
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGF0ZUZpZWxkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL21vbGVjdWxlcy9EYXRlRmllbGQvRGF0ZUZpZWxkLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLEVBQ0wsU0FBUyxJQUFJLGFBQWEsR0FHM0IsTUFBTSx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDN0MsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzFDLE9BQU8sSUFBSSxNQUFNLGFBQWEsQ0FBQztBQUUvQixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsWUFBWSxFQUEwQixNQUFNLDRCQUE0QixDQUFDO0FBRXhHLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFvQnhDLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxDQUFzQixFQUFvRCxFQUFFLEVBQUU7UUFBeEQsRUFBRSxRQUFRLEVBQUUsS0FBSyxPQUFtQyxFQUE5QixLQUFLLGNBQTNCLHFCQUE2QixDQUFGO0lBQzVFLE9BQU8sQ0FDTCxvQkFBQyxhQUFhLG9CQUFLLEtBQUssSUFBRSxTQUFTLEVBQUUsS0FBSyxLQUFLLEtBQUssRUFBRSxVQUFVLEVBQUUsUUFBUTtRQUN4RSxvQkFBQyxTQUFTLE9BQUcsQ0FDQyxDQUNqQixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBSUYsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLENBQXNCLEtBQXdCLEVBQUUsRUFBRTtJQUN6RSxNQUFNLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxHQUFHLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUN4RSxNQUFNLGNBQWMsR0FBRyxLQUFLLEVBQUUsQ0FBQztJQUMvQixNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsS0FBSyxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxjQUFjLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixFQUFFLGNBQWMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDN0csTUFBTSxLQUFzRCxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsRUFBakYsRUFBRSxhQUFhLEVBQUUsVUFBVSxPQUFzRCxFQUFqRCxpQkFBaUIsY0FBakQsZUFBbUQsQ0FBOEIsQ0FBQztJQUN4RixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDO0lBRTlELE9BQU8sQ0FDTCxvQkFBQyxZQUFZLG9CQUFLLFVBQVUsRUFBTSxpQkFBaUIsSUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFFLFNBQVMsRUFBQyxvQkFBb0I7UUFDNUcsb0JBQUMsYUFBYSxvQkFBSyxTQUFTLEVBQU0sVUFBVSxFQUFNLFVBQVUsSUFBRSxRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUssSUFBSSxDQUNqRyxDQUNoQixDQUFDO0FBQ0osQ0FBQyxDQUFDIn0=
|
@@ -0,0 +1,22 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { DateInput as AriaDateInput, DateSegment } from 'react-aria-components';
|
3
|
+
import { tv } from 'tailwind-variants';
|
4
|
+
import { fieldGroup } from '../../../src/atoms/utils';
|
5
|
+
const segmentStyles = tv({
|
6
|
+
base: 'inline p-0.5 rounded outline outline-0 caret-transparent text-default',
|
7
|
+
variants: {
|
8
|
+
isPlaceholder: {
|
9
|
+
true: 'text-inactive',
|
10
|
+
},
|
11
|
+
isDisabled: {
|
12
|
+
true: 'text-inactive',
|
13
|
+
},
|
14
|
+
isFocused: {
|
15
|
+
true: 'bg-info-muted',
|
16
|
+
},
|
17
|
+
},
|
18
|
+
});
|
19
|
+
export function DateInput(props) {
|
20
|
+
return (React.createElement(AriaDateInput, Object.assign({ className: (renderProps) => fieldGroup(Object.assign(Object.assign({}, renderProps), { class: 'block min-w-[150px]' })) }, props), (segment) => React.createElement(DateSegment, { segment: segment, className: segmentStyles })));
|
21
|
+
}
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGF0ZUlucHV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL21vbGVjdWxlcy9EYXRlRmllbGQvRGF0ZUlucHV0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFDMUIsT0FBTyxFQUFFLFNBQVMsSUFBSSxhQUFhLEVBQXVCLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JHLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUV2QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFN0MsTUFBTSxhQUFhLEdBQUcsRUFBRSxDQUFDO0lBQ3ZCLElBQUksRUFBRSx1RUFBdUU7SUFDN0UsUUFBUSxFQUFFO1FBQ1IsYUFBYSxFQUFFO1lBQ2IsSUFBSSxFQUFFLGVBQWU7U0FDdEI7UUFDRCxVQUFVLEVBQUU7WUFDVixJQUFJLEVBQUUsZUFBZTtTQUN0QjtRQUNELFNBQVMsRUFBRTtZQUNULElBQUksRUFBRSxlQUFlO1NBQ3RCO0tBQ0Y7Q0FDRixDQUFDLENBQUM7QUFFSCxNQUFNLFVBQVUsU0FBUyxDQUFDLEtBQXVDO0lBQy9ELE9BQU8sQ0FDTCxvQkFBQyxhQUFhLGtCQUFDLFNBQVMsRUFBRSxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsVUFBVSxpQ0FBTSxXQUFXLEtBQUUsS0FBSyxFQUFFLHFCQUFxQixJQUFHLElBQU0sS0FBSyxHQUMvRyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsb0JBQUMsV0FBVyxJQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLGFBQWEsR0FBSSxDQUMzRCxDQUNqQixDQUFDO0FBQ0osQ0FBQyJ9
|
@@ -0,0 +1,12 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { Button as AriaButton } from 'react-aria-components';
|
3
|
+
import { composeRenderProps } from 'react-aria-components';
|
4
|
+
import { tv } from 'tailwind-variants';
|
5
|
+
import { focusRing } from '../../../src/atoms/utils';
|
6
|
+
const button = tv({
|
7
|
+
extend: focusRing,
|
8
|
+
});
|
9
|
+
export function Button(props) {
|
10
|
+
return (React.createElement(AriaButton, Object.assign({}, props, { className: composeRenderProps(props.className, (className, renderProps) => button(Object.assign(Object.assign({}, renderProps), { className }))) })));
|
11
|
+
}
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQnV0dG9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL21vbGVjdWxlcy9EYXRlUGlja2VyL0J1dHRvbi50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sRUFBRSxNQUFNLElBQUksVUFBVSxFQUF1QyxNQUFNLHVCQUF1QixDQUFDO0FBQ2xHLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzNELE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUV2QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFNUMsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDO0lBQ2hCLE1BQU0sRUFBRSxTQUFTO0NBQ2xCLENBQUMsQ0FBQztBQUlILE1BQU0sVUFBVSxNQUFNLENBQUMsS0FBa0I7SUFDdkMsT0FBTyxDQUNMLG9CQUFDLFVBQVUsb0JBQ0wsS0FBSyxJQUNULFNBQVMsRUFBRSxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLENBQUMsU0FBUyxFQUFFLFdBQVcsRUFBRSxFQUFFLENBQUMsTUFBTSxpQ0FBTSxXQUFXLEtBQUUsU0FBUyxJQUFHLENBQUMsSUFDakgsQ0FDSCxDQUFDO0FBQ0osQ0FBQyJ9
|
@@ -0,0 +1,6 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { type CalendarProps as AriaCalendarProps, type DateValue } from 'react-aria-components';
|
3
|
+
export declare type CalendarProps<T extends DateValue> = Omit<AriaCalendarProps<T>, 'visibleDuration'>;
|
4
|
+
export declare const Calendar: <T extends DateValue>(props: CalendarProps<T>) => React.JSX.Element;
|
5
|
+
export declare const CalendarHeader: () => React.JSX.Element;
|
6
|
+
export declare const CalendarGridHeader: () => React.JSX.Element;
|
@@ -0,0 +1,44 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { Calendar as AriaCalendar, CalendarCell, CalendarGrid, CalendarGridBody, CalendarGridHeader as AriaCalendarGridHeader, CalendarHeaderCell, Heading, } from 'react-aria-components';
|
3
|
+
import { tv } from 'tailwind-variants';
|
4
|
+
import { Icon } from '../../../src/molecules/Icon/Icon';
|
5
|
+
import { focusRing } from '../../../src/atoms/utils';
|
6
|
+
import { tw } from '../../../src/utils/tailwind';
|
7
|
+
import chevronLeft from '../../../src/icons/chevronLeft';
|
8
|
+
import chevronRight from '../../../src/icons/chevronRight';
|
9
|
+
import { Button } from './Button';
|
10
|
+
const cellStyles = tv({
|
11
|
+
extend: focusRing,
|
12
|
+
base: 'w-8 h-8 typography-small cursor-default rounded flex items-center justify-center',
|
13
|
+
variants: {
|
14
|
+
isSelected: {
|
15
|
+
false: 'text-default hover:bg-default pressed:bg-intense',
|
16
|
+
true: 'bg-primary-default invalid:bg-danger-default text-white',
|
17
|
+
},
|
18
|
+
isUnavailable: {
|
19
|
+
true: 'text-inactive',
|
20
|
+
},
|
21
|
+
isDisabled: {
|
22
|
+
true: 'text-inactive',
|
23
|
+
},
|
24
|
+
},
|
25
|
+
});
|
26
|
+
export const Calendar = (props) => {
|
27
|
+
return (React.createElement(AriaCalendar, Object.assign({}, props),
|
28
|
+
React.createElement(CalendarHeader, null),
|
29
|
+
React.createElement(CalendarGrid, null,
|
30
|
+
React.createElement(CalendarGridHeader, null),
|
31
|
+
React.createElement(CalendarGridBody, null, (date) => React.createElement(CalendarCell, { date: date, className: cellStyles })))));
|
32
|
+
};
|
33
|
+
export const CalendarHeader = () => {
|
34
|
+
return (React.createElement("header", { className: "flex items-center gap-1 pb-5 w-full" },
|
35
|
+
React.createElement(Button, { slot: "previous", className: "p-3" },
|
36
|
+
React.createElement(Icon, { icon: chevronLeft })),
|
37
|
+
React.createElement(Heading, { className: tw('flex-1 typography-default-strong text-center') }),
|
38
|
+
React.createElement(Button, { slot: "next", className: "p-3" },
|
39
|
+
React.createElement(Icon, { icon: chevronRight }))));
|
40
|
+
};
|
41
|
+
export const CalendarGridHeader = () => {
|
42
|
+
return (React.createElement(AriaCalendarGridHeader, null, (day) => React.createElement(CalendarHeaderCell, { className: "text-xs text-inactive typography-caption" }, day)));
|
43
|
+
};
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FsZW5kYXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbW9sZWN1bGVzL0RhdGVQaWNrZXIvQ2FsZW5kYXIudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLEVBQ0wsUUFBUSxJQUFJLFlBQVksRUFDeEIsWUFBWSxFQUNaLFlBQVksRUFDWixnQkFBZ0IsRUFDaEIsa0JBQWtCLElBQUksc0JBQXNCLEVBQzVDLGtCQUFrQixFQUdsQixPQUFPLEdBQ1IsTUFBTSx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFdkMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRS9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUU1QyxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFeEMsT0FBTyxXQUFXLE1BQU0sdUJBQXVCLENBQUM7QUFDaEQsT0FBTyxZQUFZLE1BQU0sd0JBQXdCLENBQUM7QUFFbEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUVsQyxNQUFNLFVBQVUsR0FBRyxFQUFFLENBQUM7SUFDcEIsTUFBTSxFQUFFLFNBQVM7SUFDakIsSUFBSSxFQUFFLGtGQUFrRjtJQUN4RixRQUFRLEVBQUU7UUFDUixVQUFVLEVBQUU7WUFDVixLQUFLLEVBQUUsa0RBQWtEO1lBQ3pELElBQUksRUFBRSx5REFBeUQ7U0FDaEU7UUFDRCxhQUFhLEVBQUU7WUFDYixJQUFJLEVBQUUsZUFBZTtTQUN0QjtRQUNELFVBQVUsRUFBRTtZQUNWLElBQUksRUFBRSxlQUFlO1NBQ3RCO0tBQ0Y7Q0FDRixDQUFDLENBQUM7QUFJSCxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQUcsQ0FBc0IsS0FBdUIsRUFBRSxFQUFFO0lBQ3ZFLE9BQU8sQ0FDTCxvQkFBQyxZQUFZLG9CQUFLLEtBQUs7UUFDckIsb0JBQUMsY0FBYyxPQUFHO1FBQ2xCLG9CQUFDLFlBQVk7WUFDWCxvQkFBQyxrQkFBa0IsT0FBRztZQUN0QixvQkFBQyxnQkFBZ0IsUUFBRSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsb0JBQUMsWUFBWSxJQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLFVBQVUsR0FBSSxDQUFvQixDQUN2RixDQUNGLENBQ2hCLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsR0FBRyxFQUFFO0lBQ2pDLE9BQU8sQ0FDTCxnQ0FBUSxTQUFTLEVBQUMscUNBQXFDO1FBQ3JELG9CQUFDLE1BQU0sSUFBQyxJQUFJLEVBQUMsVUFBVSxFQUFDLFNBQVMsRUFBQyxLQUFLO1lBQ3JDLG9CQUFDLElBQUksSUFBQyxJQUFJLEVBQUUsV0FBVyxHQUFJLENBQ3BCO1FBQ1Qsb0JBQUMsT0FBTyxJQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsOENBQThDLENBQUMsR0FBSTtRQUMxRSxvQkFBQyxNQUFNLElBQUMsSUFBSSxFQUFDLE1BQU0sRUFBQyxTQUFTLEVBQUMsS0FBSztZQUNqQyxvQkFBQyxJQUFJLElBQUMsSUFBSSxFQUFFLFlBQVksR0FBSSxDQUNyQixDQUNGLENBQ1YsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLEdBQUcsRUFBRTtJQUNyQyxPQUFPLENBQ0wsb0JBQUMsc0JBQXNCLFFBQ3BCLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxvQkFBQyxrQkFBa0IsSUFBQyxTQUFTLEVBQUMsMENBQTBDLElBQUUsR0FBRyxDQUFzQixDQUN0RixDQUMxQixDQUFDO0FBQ0osQ0FBQyxDQUFDIn0=
|
@@ -0,0 +1,12 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { type DatePickerProps as AriaDatePickerProps, type DateValue } from 'react-aria-components';
|
3
|
+
import { type LabelControlProps } from '../../../src/utils/form/Label/Label';
|
4
|
+
export declare type DatePickerBaseProps<T extends DateValue> = Omit<AriaDatePickerProps<T>, 'children' | 'className' | 'isDisabled' | 'isInvalid' | 'isReadOnly' | 'isRequired' | 'pageBehavior' | 'slot' | 'style' | 'validate' | 'validationBehavior'> & {
|
5
|
+
disabled?: boolean;
|
6
|
+
valid?: boolean;
|
7
|
+
};
|
8
|
+
export declare const DatePickerBase: <T extends DateValue>({ disabled, valid, granularity, shouldCloseOnSelect, ...props }: DatePickerBaseProps<T>) => React.JSX.Element;
|
9
|
+
export declare const DateTimePickerBase: <T extends DateValue>({ disabled, valid, granularity, shouldCloseOnSelect, ...props }: DatePickerBaseProps<T>) => React.JSX.Element;
|
10
|
+
export declare type DatePickerProps<T extends DateValue> = DatePickerBaseProps<T> & Omit<LabelControlProps, 'length'>;
|
11
|
+
export declare const DatePicker: <T extends DateValue>(props: DatePickerProps<T>) => React.JSX.Element;
|
12
|
+
export declare const DateTimePicker: <T extends DateValue>(props: DatePickerProps<T>) => React.JSX.Element;
|
@@ -0,0 +1,63 @@
|
|
1
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
2
|
+
var t = {};
|
3
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
4
|
+
t[p] = s[p];
|
5
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
6
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
7
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
8
|
+
t[p[i]] = s[p[i]];
|
9
|
+
}
|
10
|
+
return t;
|
11
|
+
};
|
12
|
+
import React from 'react';
|
13
|
+
import { DatePicker as AriaDatePicker, DatePickerStateContext, } from 'react-aria-components';
|
14
|
+
import { useLabel } from '@react-aria/label';
|
15
|
+
import { useId } from '@react-aria/utils';
|
16
|
+
import omit from 'lodash/omit';
|
17
|
+
import { DateInput } from '../../../src/molecules/DateField/DateInput';
|
18
|
+
import { FieldGroup } from '../../../src/molecules/Field/Field';
|
19
|
+
import { Icon } from '../../../src/molecules/Icon/Icon';
|
20
|
+
import { Spacing } from '../../../src/molecules/Spacing/Spacing';
|
21
|
+
import { TimeField } from '../../../src/molecules/TimeField/TimeField';
|
22
|
+
import { getLabelControlProps, LabelControl } from '../../../src/utils/form/Label/Label';
|
23
|
+
import { tw } from '../../../src/utils/tailwind';
|
24
|
+
import calendarIcon from '../../../src/icons/calendar';
|
25
|
+
import { Button } from './Button';
|
26
|
+
import { Calendar } from './Calendar';
|
27
|
+
import { Dialog } from './Dialog';
|
28
|
+
import { Popover } from './Popover';
|
29
|
+
const createDatePickerBase = (variant) => (_a) => {
|
30
|
+
var { disabled, valid, granularity, shouldCloseOnSelect } = _a, props = __rest(_a, ["disabled", "valid", "granularity", "shouldCloseOnSelect"]);
|
31
|
+
const hasSomeValue = props.value || props.defaultValue || props.placeholderValue;
|
32
|
+
return (React.createElement(AriaDatePicker, Object.assign({}, props, { shouldCloseOnSelect: shouldCloseOnSelect !== null && shouldCloseOnSelect !== void 0 ? shouldCloseOnSelect : variant === 'date', isDisabled: disabled, isInvalid: valid === false,
|
33
|
+
// Set the granularity to minute if the variant is 'datetime' and there is no any value provided.
|
34
|
+
// This will display the time component in the picker by default in <DateTimePicker>.
|
35
|
+
granularity: granularity !== null && granularity !== void 0 ? granularity : (variant === 'datetime' && !hasSomeValue ? 'minute' : undefined) }),
|
36
|
+
React.createElement(FieldGroup, { className: tw('min-w-[210px] w-auto') },
|
37
|
+
React.createElement(DateInput, { className: tw('flex-1') }),
|
38
|
+
React.createElement(Button, null,
|
39
|
+
React.createElement(Icon, { icon: calendarIcon }))),
|
40
|
+
React.createElement(Popover, { offset: 1 },
|
41
|
+
React.createElement(Dialog, null,
|
42
|
+
React.createElement(Spacing, { gap: "6" },
|
43
|
+
React.createElement(Calendar, null),
|
44
|
+
variant === 'datetime' && React.createElement(PickerTimeField, { granularity: granularity }))))));
|
45
|
+
};
|
46
|
+
export const DatePickerBase = createDatePickerBase('date');
|
47
|
+
export const DateTimePickerBase = createDatePickerBase('datetime');
|
48
|
+
const PickerTimeField = ({ granularity }) => {
|
49
|
+
const state = React.useContext(DatePickerStateContext);
|
50
|
+
return (React.createElement(TimeField, { labelText: "Time", granularity: granularity !== 'day' ? granularity : undefined, value: state.timeValue, onChange: state.setTimeValue, reserveSpaceForError: false }));
|
51
|
+
};
|
52
|
+
const createDatePicker = (variant) => (props) => {
|
53
|
+
const { labelProps, fieldProps } = useLabel({ label: props.labelText });
|
54
|
+
const errorMessageId = useId();
|
55
|
+
const errorProps = props.valid === false ? { 'aria-invalid': true, 'aria-describedby': errorMessageId } : {};
|
56
|
+
const _a = getLabelControlProps(props), { 'data-testid': dataTestId } = _a, labelControlProps = __rest(_a, ['data-testid']);
|
57
|
+
const baseProps = omit(props, Object.keys(labelControlProps));
|
58
|
+
const allProps = Object.assign(Object.assign(Object.assign(Object.assign({}, baseProps), fieldProps), errorProps), { disabled: props.disabled, valid: props.valid });
|
59
|
+
return (React.createElement(LabelControl, Object.assign({}, labelProps, labelControlProps, { messageId: errorMessageId, className: "Aquarium-DatePicker" }), variant === 'date' ? React.createElement(DatePickerBase, Object.assign({}, allProps)) : React.createElement(DateTimePickerBase, Object.assign({}, allProps))));
|
60
|
+
};
|
61
|
+
export const DatePicker = createDatePicker('date');
|
62
|
+
export const DateTimePicker = createDatePicker('datetime');
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGF0ZVBpY2tlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9tb2xlY3VsZXMvRGF0ZVBpY2tlci9EYXRlUGlja2VyLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLEVBQ0wsVUFBVSxJQUFJLGNBQWMsRUFFNUIsc0JBQXNCLEdBRXZCLE1BQU0sdUJBQXVCLENBQUM7QUFDL0IsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUUxQyxPQUFPLElBQUksTUFBTSxhQUFhLENBQUM7QUFFL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQzlELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUU5RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsWUFBWSxFQUEwQixNQUFNLDRCQUE0QixDQUFDO0FBQ3hHLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUV4QyxPQUFPLFlBQVksTUFBTSxvQkFBb0IsQ0FBQztBQUU5QyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDdEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNsQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBb0JwQyxNQUFNLG9CQUFvQixHQUN4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
|
@@ -0,0 +1,12 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { type DateRangePickerProps as AriaDateRangePickerProps, type DateValue } from 'react-aria-components';
|
3
|
+
import { type LabelControlProps } from '../../../src/utils/form/Label/Label';
|
4
|
+
export declare type DateRangePickerBaseProps<T extends DateValue> = Omit<AriaDateRangePickerProps<T>, 'children' | 'className' | 'isDisabled' | 'isInvalid' | 'isReadOnly' | 'isRequired' | 'pageBehavior' | 'slot' | 'style' | 'validate' | 'validationBehavior'> & {
|
5
|
+
disabled?: boolean;
|
6
|
+
valid?: boolean;
|
7
|
+
};
|
8
|
+
export declare const DateRangePickerBase: <T extends DateValue>({ disabled, valid, granularity, shouldCloseOnSelect, ...props }: DateRangePickerBaseProps<T>) => React.JSX.Element;
|
9
|
+
export declare const DateTimeRangePickerBase: <T extends DateValue>({ disabled, valid, granularity, shouldCloseOnSelect, ...props }: DateRangePickerBaseProps<T>) => React.JSX.Element;
|
10
|
+
export declare type DateRangePickerProps<T extends DateValue> = DateRangePickerBaseProps<T> & Omit<LabelControlProps, 'length'>;
|
11
|
+
export declare const DateRangePicker: <T extends DateValue>(props: DateRangePickerProps<T>) => React.JSX.Element;
|
12
|
+
export declare const DateTimeRangePicker: <T extends DateValue>(props: DateRangePickerProps<T>) => React.JSX.Element;
|
@@ -0,0 +1,68 @@
|
|
1
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
2
|
+
var t = {};
|
3
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
4
|
+
t[p] = s[p];
|
5
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
6
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
7
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
8
|
+
t[p[i]] = s[p[i]];
|
9
|
+
}
|
10
|
+
return t;
|
11
|
+
};
|
12
|
+
import React from 'react';
|
13
|
+
import { DateRangePicker as AriaDateRangePicker, DateRangePickerStateContext, } from 'react-aria-components';
|
14
|
+
import { useLabel } from '@react-aria/label';
|
15
|
+
import { useId } from '@react-aria/utils';
|
16
|
+
import omit from 'lodash/omit';
|
17
|
+
import { DateInput } from '../../../src/molecules/DateField/DateInput';
|
18
|
+
import { FieldGroup } from '../../../src/molecules/Field/Field';
|
19
|
+
import { Icon } from '../../../src/molecules/Icon/Icon';
|
20
|
+
import { Spacing } from '../../../src/molecules/Spacing/Spacing';
|
21
|
+
import { TimeField } from '../../../src/molecules/TimeField/TimeField';
|
22
|
+
import { getLabelControlProps, LabelControl } from '../../../src/utils/form/Label/Label';
|
23
|
+
import { tw } from '../../../src/utils/tailwind';
|
24
|
+
import calendarIcon from '../../../src/icons/calendar';
|
25
|
+
import { Button } from './Button';
|
26
|
+
import { Dialog } from './Dialog';
|
27
|
+
import { Popover } from './Popover';
|
28
|
+
import { RangeCalendar } from './RangeCalendar';
|
29
|
+
const createDateRangePickerBase = (variant) => (_a) => {
|
30
|
+
var { disabled, valid, granularity, shouldCloseOnSelect } = _a, props = __rest(_a, ["disabled", "valid", "granularity", "shouldCloseOnSelect"]);
|
31
|
+
const hasSomeValue = props.value || props.defaultValue || props.placeholderValue;
|
32
|
+
return (React.createElement(AriaDateRangePicker, Object.assign({}, props, { shouldCloseOnSelect: shouldCloseOnSelect !== null && shouldCloseOnSelect !== void 0 ? shouldCloseOnSelect : variant === 'date', isDisabled: disabled, isInvalid: valid === false,
|
33
|
+
// Set the granularity to minute if the variant is 'datetime' and there is no any value provided.
|
34
|
+
// This will display the time component in the picker by default in <DateTimeRangePicker>.
|
35
|
+
granularity: granularity !== null && granularity !== void 0 ? granularity : (variant === 'datetime' && !hasSomeValue ? 'minute' : undefined), className: tw('group flex flex-col gap-1') }),
|
36
|
+
React.createElement(FieldGroup, { className: tw('min-w-[200px] w-auto') },
|
37
|
+
React.createElement(DateInput, { slot: "start", className: tw('px-2 py-1') }),
|
38
|
+
React.createElement("span", { "aria-hidden": true, className: tw('text-muted') }, "-"),
|
39
|
+
React.createElement(DateInput, { slot: "end", className: tw('flex-1 px-2 py-1') }),
|
40
|
+
React.createElement(Button, null,
|
41
|
+
React.createElement(Icon, { icon: calendarIcon }))),
|
42
|
+
React.createElement(Popover, null,
|
43
|
+
React.createElement(Dialog, null,
|
44
|
+
React.createElement(Spacing, { gap: "6" },
|
45
|
+
React.createElement(RangeCalendar, null),
|
46
|
+
variant === 'datetime' && (React.createElement(Spacing, { gap: "6", row: true },
|
47
|
+
React.createElement(PickerTimeField, { granularity: granularity, part: "start" }),
|
48
|
+
React.createElement(PickerTimeField, { granularity: granularity, part: "end" }))))))));
|
49
|
+
};
|
50
|
+
const PickerTimeField = ({ granularity, part }) => {
|
51
|
+
var _a;
|
52
|
+
const { timeRange, setTime } = React.useContext(DateRangePickerStateContext);
|
53
|
+
return (React.createElement(TimeField, { labelText: part === 'start' ? 'Start time' : 'End time', granularity: granularity !== 'day' ? granularity : undefined, value: (_a = timeRange === null || timeRange === void 0 ? void 0 : timeRange[part]) !== null && _a !== void 0 ? _a : null, onChange: (value) => setTime(part, value), reserveSpaceForError: false }));
|
54
|
+
};
|
55
|
+
export const DateRangePickerBase = createDateRangePickerBase('date');
|
56
|
+
export const DateTimeRangePickerBase = createDateRangePickerBase('datetime');
|
57
|
+
const createDateRangePicker = (variant) => (props) => {
|
58
|
+
const { labelProps, fieldProps } = useLabel({ label: props.labelText });
|
59
|
+
const errorMessageId = useId();
|
60
|
+
const errorProps = props.valid === false ? { 'aria-invalid': true, 'aria-describedby': errorMessageId } : {};
|
61
|
+
const _a = getLabelControlProps(props), { 'data-testid': dataTestId } = _a, labelControlProps = __rest(_a, ['data-testid']);
|
62
|
+
const baseProps = omit(props, Object.keys(labelControlProps));
|
63
|
+
const allProps = Object.assign(Object.assign(Object.assign(Object.assign({}, baseProps), fieldProps), errorProps), { disabled: props.disabled, valid: props.valid });
|
64
|
+
return (React.createElement(LabelControl, Object.assign({}, labelProps, labelControlProps, { messageId: errorMessageId, className: "Aquarium-DatePicker" }), variant === 'date' ? React.createElement(DateRangePickerBase, Object.assign({}, allProps)) : React.createElement(DateTimeRangePickerBase, Object.assign({}, allProps))));
|
65
|
+
};
|
66
|
+
export const DateRangePicker = createDateRangePicker('date');
|
67
|
+
export const DateTimeRangePicker = createDateRangePicker('datetime');
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGF0ZVJhbmdlUGlja2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL21vbGVjdWxlcy9EYXRlUGlja2VyL0RhdGVSYW5nZVBpY2tlci50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQSxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFDMUIsT0FBTyxFQUNMLGVBQWUsSUFBSSxtQkFBbUIsRUFFdEMsMkJBQTJCLEdBRTVCLE1BQU0sdUJBQXVCLENBQUM7QUFDL0IsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUUxQyxPQUFPLElBQUksTUFBTSxhQUFhLENBQUM7QUFFL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQzlELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUU5RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsWUFBWSxFQUEwQixNQUFNLDRCQUE0QixDQUFDO0FBQ3hHLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUV4QyxPQUFPLFlBQVksTUFBTSxvQkFBb0IsQ0FBQztBQUU5QyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDbEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNwQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFvQmhELE1B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
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { Dialog as AriaDialog } from 'react-aria-components';
|
3
|
+
import { classNames, tw } from '../../../src/utils/tailwind';
|
4
|
+
export function Dialog(props) {
|
5
|
+
return (React.createElement(AriaDialog, Object.assign({}, props, { className: classNames(props.className, tw('outline outline-0 p-5 [[data-placement]>&]:px-5 [[data-placement]>&]:py-6 max-h-[inherit] overflow-auto relative')) })));
|
6
|
+
}
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGlhbG9nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL21vbGVjdWxlcy9EYXRlUGlja2VyL0RpYWxvZy50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sRUFBRSxNQUFNLElBQUksVUFBVSxFQUFvQixNQUFNLHVCQUF1QixDQUFDO0FBRS9FLE9BQU8sRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFcEQsTUFBTSxVQUFVLE1BQU0sQ0FBQyxLQUFrQjtJQUN2QyxPQUFPLENBQ0wsb0JBQUMsVUFBVSxvQkFDTCxLQUFLLElBQ1QsU0FBUyxFQUFFLFVBQVUsQ0FDbkIsS0FBSyxDQUFDLFNBQVMsRUFDZixFQUFFLENBQ0Esa0hBQWtILENBQ25ILENBQ0YsSUFDRCxDQUNILENBQUM7QUFDSixDQUFDIn0=
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { type PopoverProps as AriaPopoverProps } from 'react-aria-components';
|
3
|
+
export declare type PopoverProps = Omit<AriaPopoverProps, 'children'> & {
|
4
|
+
showArrow?: boolean;
|
5
|
+
children: React.ReactNode;
|
6
|
+
};
|
7
|
+
export declare const Popover: React.FC<PopoverProps>;
|
@@ -0,0 +1,27 @@
|
|
1
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
2
|
+
var t = {};
|
3
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
4
|
+
t[p] = s[p];
|
5
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
6
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
7
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
8
|
+
t[p[i]] = s[p[i]];
|
9
|
+
}
|
10
|
+
return t;
|
11
|
+
};
|
12
|
+
import React from 'react';
|
13
|
+
import { OverlayArrow, Popover as AriaPopover, PopoverContext, useSlottedContext, } from 'react-aria-components';
|
14
|
+
import { tw } from '../../../src/utils/tailwind';
|
15
|
+
export const Popover = (_a) => {
|
16
|
+
var { children, showArrow, className } = _a, props = __rest(_a, ["children", "showArrow", "className"]);
|
17
|
+
const popoverContext = useSlottedContext(PopoverContext);
|
18
|
+
const isSubmenu = (popoverContext === null || popoverContext === void 0 ? void 0 : popoverContext.trigger) === 'SubmenuTrigger';
|
19
|
+
let offset = showArrow ? 12 : 8;
|
20
|
+
offset = isSubmenu ? offset - 6 : offset;
|
21
|
+
return (React.createElement(AriaPopover, Object.assign({ offset: offset }, props, { className: tw('rounded-sm shadow-16dp bg-popover-content mt-1 overflow-y-auto flex flex-col border border-default outline-none') }),
|
22
|
+
showArrow && (React.createElement(OverlayArrow, { className: "group" },
|
23
|
+
React.createElement("svg", { width: 12, height: 12, viewBox: "0 0 12 12", className: "block fill-white stroke-1 stroke-black group-placement-bottom:rotate-180 group-placement-left:-rotate-90 group-placement-right:rotate-90" },
|
24
|
+
React.createElement("path", { d: "M0 0 L6 6 L12 0" })))),
|
25
|
+
children));
|
26
|
+
};
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUG9wb3Zlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9tb2xlY3VsZXMvRGF0ZVBpY2tlci9Qb3BvdmVyLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLEVBQ0wsWUFBWSxFQUNaLE9BQU8sSUFBSSxXQUFXLEVBQ3RCLGNBQWMsRUFFZCxpQkFBaUIsR0FDbEIsTUFBTSx1QkFBdUIsQ0FBQztBQUUvQixPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFPeEMsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUEyQixDQUFDLEVBQTRDLEVBQUUsRUFBRTtRQUFoRCxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsU0FBUyxPQUFZLEVBQVAsS0FBSyxjQUExQyxzQ0FBNEMsQ0FBRjtJQUN4RixNQUFNLGNBQWMsR0FBRyxpQkFBaUIsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUN6RCxNQUFNLFNBQVMsR0FBRyxDQUFBLGNBQWMsYUFBZCxjQUFjLHVCQUFkLGNBQWMsQ0FBRSxPQUFPLE1BQUssZ0JBQWdCLENBQUM7SUFDL0QsSUFBSSxNQUFNLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNoQyxNQUFNLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFFekMsT0FBTyxDQUNMLG9CQUFDLFdBQVcsa0JBQ1YsTUFBTSxFQUFFLE1BQU0sSUFDVixLQUFLLElBQ1QsU0FBUyxFQUFFLEVBQUUsQ0FDWCxpSEFBaUgsQ0FDbEg7UUFFQSxTQUFTLElBQUksQ0FDWixvQkFBQyxZQUFZLElBQUMsU0FBUyxFQUFDLE9BQU87WUFDN0IsNkJBQ0UsS0FBSyxFQUFFLEVBQUUsRUFDVCxNQUFNLEVBQUUsRUFBRSxFQUNWLE9BQU8sRUFBQyxXQUFXLEVBQ25CLFNBQVMsRUFBQywwSUFBMEk7Z0JBRXBKLDhCQUFNLENBQUMsRUFBQyxpQkFBaUIsR0FBRyxDQUN4QixDQUNPLENBQ2hCO1FBQ0EsUUFBUSxDQUNHLENBQ2YsQ0FBQztBQUNKLENBQUMsQ0FBQyJ9
|
@@ -0,0 +1,4 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { type DateValue, type RangeCalendarProps as AriaRangeCalendarProps } from 'react-aria-components';
|
3
|
+
export declare type RangeCalendarProps<T extends DateValue> = Omit<AriaRangeCalendarProps<T>, 'visibleDuration'>;
|
4
|
+
export declare function RangeCalendar<T extends DateValue>(props: RangeCalendarProps<T>): React.JSX.Element;
|
@@ -0,0 +1,51 @@
|
|
1
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
2
|
+
var t = {};
|
3
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
4
|
+
t[p] = s[p];
|
5
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
6
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
7
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
8
|
+
t[p[i]] = s[p[i]];
|
9
|
+
}
|
10
|
+
return t;
|
11
|
+
};
|
12
|
+
import React from 'react';
|
13
|
+
import { CalendarCell, CalendarGrid, CalendarGridBody, RangeCalendar as AriaRangeCalendar, } from 'react-aria-components';
|
14
|
+
import { tv } from 'tailwind-variants';
|
15
|
+
import { focusRing } from '../../../src/atoms/utils';
|
16
|
+
import { tw } from '../../../src/utils/tailwind';
|
17
|
+
import { CalendarGridHeader, CalendarHeader } from './Calendar';
|
18
|
+
const cell = tv({
|
19
|
+
extend: focusRing,
|
20
|
+
base: 'w-full h-full flex items-center justify-center rounded text-default',
|
21
|
+
variants: {
|
22
|
+
selectionState: {
|
23
|
+
none: 'group-hover:bg-default group-pressed:bg-intense',
|
24
|
+
middle: [
|
25
|
+
'text-white',
|
26
|
+
'group-hover:bg-primary-default',
|
27
|
+
'group-invalid:group-hover:bg-danger-default',
|
28
|
+
'group-pressed:bg-primary-intense',
|
29
|
+
'group-invalid:group-pressed:bg-danger-intense',
|
30
|
+
],
|
31
|
+
cap: 'text-white bg-primary-default group-invalid:bg-danger-default',
|
32
|
+
},
|
33
|
+
isUnavailable: {
|
34
|
+
true: 'text-inactive',
|
35
|
+
},
|
36
|
+
isDisabled: {
|
37
|
+
true: 'text-inactive',
|
38
|
+
},
|
39
|
+
},
|
40
|
+
});
|
41
|
+
export function RangeCalendar(props) {
|
42
|
+
return (React.createElement(AriaRangeCalendar, Object.assign({}, props),
|
43
|
+
React.createElement(CalendarHeader, null),
|
44
|
+
React.createElement(CalendarGrid, { className: "[&_td]:px-0" },
|
45
|
+
React.createElement(CalendarGridHeader, null),
|
46
|
+
React.createElement(CalendarGridBody, null, (date) => (React.createElement(CalendarCell, { date: date, className: tw('group w-8 h-8 typography-small outline outline-0 cursor-default', 'outside-month:text-inactive selected:bg-primary-default', 'invalid:selected:bg-danger-default', 'selection-start:rounded-s selection-end:rounded-e') }, (_a) => {
|
47
|
+
var { formattedDate, isSelected, isSelectionStart, isSelectionEnd } = _a, rest = __rest(_a, ["formattedDate", "isSelected", "isSelectionStart", "isSelectionEnd"]);
|
48
|
+
return (React.createElement("span", { className: cell(Object.assign({ selectionState: isSelected && (isSelectionStart || isSelectionEnd) ? 'cap' : isSelected ? 'middle' : 'none' }, rest)) }, formattedDate));
|
49
|
+
}))))));
|
50
|
+
}
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmFuZ2VDYWxlbmRhci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9tb2xlY3VsZXMvRGF0ZVBpY2tlci9SYW5nZUNhbGVuZGFyLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLEVBQ0wsWUFBWSxFQUNaLFlBQVksRUFDWixnQkFBZ0IsRUFFaEIsYUFBYSxJQUFJLGlCQUFpQixHQUVuQyxNQUFNLHVCQUF1QixDQUFDO0FBQy9CLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUV2QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFNUMsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXhDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxjQUFjLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFJaEUsTUFBTSxJQUFJLEdBQUcsRUFBRSxDQUFDO0lBQ2QsTUFBTSxFQUFFLFNBQVM7SUFDakIsSUFBSSxFQUFFLHFFQUFxRTtJQUMzRSxRQUFRLEVBQUU7UUFDUixjQUFjLEVBQUU7WUFDZCxJQUFJLEVBQUUsaURBQWlEO1lBQ3ZELE1BQU0sRUFBRTtnQkFDTixZQUFZO2dCQUNaLGdDQUFnQztnQkFDaEMsNkNBQTZDO2dCQUM3QyxrQ0FBa0M7Z0JBQ2xDLCtDQUErQzthQUNoRDtZQUNELEdBQUcsRUFBRSwrREFBK0Q7U0FDckU7UUFDRCxhQUFhLEVBQUU7WUFDYixJQUFJLEVBQUUsZUFBZTtTQUN0QjtRQUNELFVBQVUsRUFBRTtZQUNWLElBQUksRUFBRSxlQUFlO1NBQ3RCO0tBQ0Y7Q0FDRixDQUFDLENBQUM7QUFFSCxNQUFNLFVBQVUsYUFBYSxDQUFzQixLQUE0QjtJQUM3RSxPQUFPLENBQ0wsb0JBQUMsaUJBQWlCLG9CQUFLLEtBQUs7UUFDMUIsb0JBQUMsY0FBYyxPQUFHO1FBQ2xCLG9CQUFDLFlBQVksSUFBQyxTQUFTLEVBQUMsYUFBYTtZQUNuQyxvQkFBQyxrQkFBa0IsT0FBRztZQUN0QixvQkFBQyxnQkFBZ0IsUUFDZCxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FDVCxvQkFBQyxZQUFZLElBQ1gsSUFBSSxFQUFFLElBQUksRUFDVixTQUFTLEVBQUUsRUFBRSxDQUNYLGlFQUFpRSxFQUNqRSx5REFBeUQsRUFDekQsb0NBQW9DLEVBQ3BDLG1EQUFtRCxDQUNwRCxJQUVBLENBQUMsRUFBd0UsRUFBRSxFQUFFO29CQUE1RSxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsZ0JBQWdCLEVBQUUsY0FBYyxPQUFXLEVBQU4sSUFBSSxjQUF0RSxxRUFBd0UsQ0FBRjtnQkFBTyxPQUFBLENBQzdFLDhCQUNFLFNBQVMsRUFBRSxJQUFJLGlCQUNiLGNBQWMsRUFDWixVQUFVLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsTUFBTSxJQUMxRixJQUFJLEVBQ1AsSUFFRCxhQUFhLENBQ1QsQ0FDUixDQUFBO2FBQUEsQ0FDWSxDQUNoQixDQUNnQixDQUNOLENBQ0csQ0FDckIsQ0FBQztBQUNKLENBQUMifQ==
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { Group } from 'react-aria-components';
|
3
|
+
import { fieldGroup } from '../../../src/atoms/utils';
|
4
|
+
export const FieldGroup = (props) => {
|
5
|
+
return React.createElement(Group, Object.assign({}, props, { className: (renderProps) => fieldGroup(renderProps) }));
|
6
|
+
};
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRmllbGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbW9sZWN1bGVzL0ZpZWxkL0ZpZWxkLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFDMUIsT0FBTyxFQUFFLEtBQUssRUFBcUMsTUFBTSx1QkFBdUIsQ0FBQztBQUVqRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFN0MsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLENBQUMsS0FBcUIsRUFBRSxFQUFFO0lBQ2xELE9BQU8sb0JBQUMsS0FBSyxvQkFBSyxLQUFLLElBQUUsU0FBUyxFQUFFLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztBQUNuRixDQUFDLENBQUMifQ==
|
@@ -3,7 +3,7 @@ import { type AriaOverlayProps } from '@react-aria/overlays';
|
|
3
3
|
import { type OverlayTriggerState } from '@react-stately/overlays';
|
4
4
|
import { type PositionProps } from '@react-types/overlays';
|
5
5
|
import { type PopoverPlacement } from './Popover';
|
6
|
-
export declare const PopoverOverlay: React.ForwardRefExoticComponent<AriaOverlayProps & Pick<PositionProps, "offset" | "
|
6
|
+
export declare const PopoverOverlay: React.ForwardRefExoticComponent<AriaOverlayProps & Pick<PositionProps, "offset" | "shouldFlip" | "crossOffset"> & {
|
7
7
|
id?: string | undefined;
|
8
8
|
role?: React.AriaRole | undefined;
|
9
9
|
triggerRef: React.RefObject<Element>;
|
@@ -0,0 +1,10 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { type TimeFieldProps as AriaTimeFieldProps, type TimeValue } from 'react-aria-components';
|
3
|
+
import { type LabelControlProps } from '../../../src/utils/form/Label/Label';
|
4
|
+
export declare type TimeFieldBaseProps<T extends TimeValue> = Omit<AriaTimeFieldProps<T>, 'children' | 'className' | 'isDisabled' | 'isInvalid' | 'isReadOnly' | 'isRequired' | 'isValid' | 'slot' | 'style' | 'validate' | 'validationBehavior'> & {
|
5
|
+
disabled?: boolean;
|
6
|
+
valid?: boolean;
|
7
|
+
};
|
8
|
+
export declare function TimeFieldBase<T extends TimeValue>({ disabled, valid, ...props }: TimeFieldBaseProps<T>): React.JSX.Element;
|
9
|
+
export declare type TimeFieldProps<T extends TimeValue> = Omit<LabelControlProps, 'length'> & TimeFieldBaseProps<T>;
|
10
|
+
export declare function TimeField<T extends TimeValue>(props: TimeFieldProps<T>): React.JSX.Element;
|
@@ -0,0 +1,33 @@
|
|
1
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
2
|
+
var t = {};
|
3
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
4
|
+
t[p] = s[p];
|
5
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
6
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
7
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
8
|
+
t[p[i]] = s[p[i]];
|
9
|
+
}
|
10
|
+
return t;
|
11
|
+
};
|
12
|
+
import React from 'react';
|
13
|
+
import { TimeField as AriaTimeField, } from 'react-aria-components';
|
14
|
+
import { useLabel } from '@react-aria/label';
|
15
|
+
import { useId } from '@react-aria/utils';
|
16
|
+
import omit from 'lodash/omit';
|
17
|
+
import { DateInput } from '../../../src/molecules/DateField/DateInput';
|
18
|
+
import { getLabelControlProps, LabelControl } from '../../../src/utils/form/Label/Label';
|
19
|
+
export function TimeFieldBase(_a) {
|
20
|
+
var { disabled, valid } = _a, props = __rest(_a, ["disabled", "valid"]);
|
21
|
+
return (React.createElement(AriaTimeField, Object.assign({}, props, { isInvalid: valid === false, isDisabled: disabled }),
|
22
|
+
React.createElement(DateInput, null)));
|
23
|
+
}
|
24
|
+
export function TimeField(props) {
|
25
|
+
const { labelProps, fieldProps } = useLabel({ label: props.labelText });
|
26
|
+
const errorMessageId = useId();
|
27
|
+
const errorProps = props.valid === false ? { 'aria-invalid': true, 'aria-describedby': errorMessageId } : {};
|
28
|
+
const _a = getLabelControlProps(props), { 'data-testid': dataTestId } = _a, labelControlProps = __rest(_a, ['data-testid']);
|
29
|
+
const baseProps = omit(props, Object.keys(labelControlProps));
|
30
|
+
return (React.createElement(LabelControl, Object.assign({}, labelProps, labelControlProps, { messageId: errorMessageId, className: "Aquarium-DateField" }),
|
31
|
+
React.createElement(TimeFieldBase, Object.assign({}, baseProps, fieldProps, errorProps, { disabled: props.disabled, valid: props.valid }))));
|
32
|
+
}
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGltZUZpZWxkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL21vbGVjdWxlcy9UaW1lRmllbGQvVGltZUZpZWxkLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLEVBQ0wsU0FBUyxJQUFJLGFBQWEsR0FHM0IsTUFBTSx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDN0MsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzFDLE9BQU8sSUFBSSxNQUFNLGFBQWEsQ0FBQztBQUUvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFOUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFlBQVksRUFBMEIsTUFBTSw0QkFBNEIsQ0FBQztBQW9CeEcsTUFBTSxVQUFVLGFBQWEsQ0FBc0IsRUFBb0Q7UUFBcEQsRUFBRSxRQUFRLEVBQUUsS0FBSyxPQUFtQyxFQUE5QixLQUFLLGNBQTNCLHFCQUE2QixDQUFGO0lBQzVFLE9BQU8sQ0FDTCxvQkFBQyxhQUFhLG9CQUFLLEtBQUssSUFBRSxTQUFTLEVBQUUsS0FBSyxLQUFLLEtBQUssRUFBRSxVQUFVLEVBQUUsUUFBUTtRQUN4RSxvQkFBQyxTQUFTLE9BQUcsQ0FDQyxDQUNqQixDQUFDO0FBQ0osQ0FBQztBQUlELE1BQU0sVUFBVSxTQUFTLENBQXNCLEtBQXdCO0lBQ3JFLE1BQU0sRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLEdBQUcsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQ3hFLE1BQU0sY0FBYyxHQUFHLEtBQUssRUFBRSxDQUFDO0lBQy9CLE1BQU0sVUFBVSxHQUFHLEtBQUssQ0FBQyxLQUFLLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLGNBQWMsRUFBRSxJQUFJLEVBQUUsa0JBQWtCLEVBQUUsY0FBYyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUM3RyxNQUFNLEtBQXNELG9CQUFvQixDQUFDLEtBQUssQ0FBQyxFQUFqRixFQUFFLGFBQWEsRUFBRSxVQUFVLE9BQXNELEVBQWpELGlCQUFpQixjQUFqRCxlQUFtRCxDQUE4QixDQUFDO0lBQ3hGLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUM7SUFFOUQsT0FBTyxDQUNMLG9CQUFDLFlBQVksb0JBQUssVUFBVSxFQUFNLGlCQUFpQixJQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUUsU0FBUyxFQUFDLG9CQUFvQjtRQUM1RyxvQkFBQyxhQUFhLG9CQUFLLFNBQVMsRUFBTSxVQUFVLEVBQU0sVUFBVSxJQUFFLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSyxJQUFJLENBQ2pHLENBQ2hCLENBQUM7QUFDSixDQUFDIn0=
|
@@ -0,0 +1,6 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { type TimeValue } from 'react-aria-components';
|
3
|
+
import { type TimeFieldProps } from '../../../src/molecules/TimeField/TimeField';
|
4
|
+
declare type TimePickerProps<T extends TimeValue> = TimeFieldProps<T>;
|
5
|
+
export declare const TimePicker: <T extends TimeValue>(props: TimePickerProps<T>) => React.JSX.Element;
|
6
|
+
export {};
|
@@ -0,0 +1,4 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { TimeField } from '../../../src/molecules/TimeField/TimeField';
|
3
|
+
export const TimePicker = (props) => React.createElement(TimeField, Object.assign({}, props));
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGltZVBpY2tlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9tb2xlY3VsZXMvVGltZVBpY2tlci9UaW1lUGlja2VyLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFHMUIsT0FBTyxFQUFFLFNBQVMsRUFBdUIsTUFBTSxtQ0FBbUMsQ0FBQztBQUluRixNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsQ0FBc0IsS0FBeUIsRUFBRSxFQUFFLENBQUMsb0JBQUMsU0FBUyxvQkFBSyxLQUFLLEVBQUksQ0FBQyJ9
|
@@ -19,6 +19,8 @@ export * from './Context/Context';
|
|
19
19
|
export * from './ControlLabel/ControlLabel';
|
20
20
|
export * from './DataList/DataList';
|
21
21
|
export * from './DataTable/DataTable';
|
22
|
+
export * from './DatePicker/DatePicker';
|
23
|
+
export * from './DatePicker/DateRangePicker';
|
22
24
|
export * from './Dialog/Dialog';
|
23
25
|
export * from './Divider/Divider';
|
24
26
|
export * from './Drawer/Drawer';
|
@@ -66,6 +68,7 @@ export * from './Tailwindify/Tailwindify';
|
|
66
68
|
export * from './Template/Template';
|
67
69
|
export * from './Textarea/Textarea';
|
68
70
|
export * from './Timeline/Timeline';
|
71
|
+
export * from './TimePicker/TimePicker';
|
69
72
|
export * from './Toast/Toast';
|
70
73
|
export * from './Tooltip/Tooltip';
|
71
74
|
export * from './Typography/Typography';
|