@jobber/components 9.4.0 → 9.5.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/Autocomplete/index.cjs +0 -1
- package/dist/Autocomplete/index.mjs +0 -1
- package/dist/Card/index.cjs +7 -7
- package/dist/Card/index.mjs +7 -7
- package/dist/Chip/index.cjs +0 -1
- package/dist/Chip/index.mjs +0 -1
- package/dist/Chips/InternalChipDismissible/hooks/index.cjs +0 -1
- package/dist/Chips/InternalChipDismissible/hooks/index.mjs +0 -1
- package/dist/Chips/InternalChipDismissible/index.cjs +0 -1
- package/dist/Chips/InternalChipDismissible/index.mjs +0 -1
- package/dist/Chips/index.cjs +0 -1
- package/dist/Chips/index.mjs +0 -1
- package/dist/ComboboxChipRemove-cjs.js +181 -184
- package/dist/ComboboxChipRemove-es.js +4 -7
- package/dist/ConfirmationModal/index.cjs +0 -1
- package/dist/ConfirmationModal/index.mjs +0 -1
- package/dist/DataDump/index.cjs +7 -7
- package/dist/DataDump/index.mjs +7 -7
- package/dist/DataList/components/DataListActions/index.cjs +0 -1
- package/dist/DataList/components/DataListActions/index.mjs +0 -1
- package/dist/DataList/components/DataListBulkActions/index.cjs +0 -1
- package/dist/DataList/components/DataListBulkActions/index.mjs +0 -1
- package/dist/DataList/components/DataListFilters/components/DataListSort/index.cjs +0 -1
- package/dist/DataList/components/DataListFilters/components/DataListSort/index.mjs +0 -1
- package/dist/DataList/components/DataListFilters/index.cjs +0 -1
- package/dist/DataList/components/DataListFilters/index.mjs +0 -1
- package/dist/DataList/components/DataListHeader/index.cjs +0 -1
- package/dist/DataList/components/DataListHeader/index.mjs +0 -1
- package/dist/DataList/components/DataListItem/index.cjs +0 -1
- package/dist/DataList/components/DataListItem/index.mjs +0 -1
- package/dist/DataList/components/DataListItemActions/index.cjs +0 -1
- package/dist/DataList/components/DataListItemActions/index.mjs +0 -1
- package/dist/DataList/components/DataListItemActionsOverflow/index.cjs +0 -1
- package/dist/DataList/components/DataListItemActionsOverflow/index.mjs +0 -1
- package/dist/DataList/components/DataListItems/index.cjs +0 -1
- package/dist/DataList/components/DataListItems/index.mjs +0 -1
- package/dist/DataList/components/DataListLayout/index.cjs +0 -1
- package/dist/DataList/components/DataListLayout/index.mjs +0 -1
- package/dist/DataList/components/DataListLayoutActions/index.cjs +0 -1
- package/dist/DataList/components/DataListLayoutActions/index.mjs +0 -1
- package/dist/DataList/index.cjs +0 -1
- package/dist/DataList/index.mjs +0 -1
- package/dist/DatePicker/index.cjs +0 -2
- package/dist/DatePicker/index.mjs +0 -2
- package/dist/DatePicker-cjs.js +19 -18
- package/dist/DatePicker-es.js +2 -1
- package/dist/Dialog/index.cjs +11 -6
- package/dist/Dialog/index.mjs +11 -6
- package/dist/DrawerDescription-cjs.js +7 -8
- package/dist/DrawerDescription-es.js +1 -2
- package/dist/DrawerTitle-cjs.js +4 -4
- package/dist/DrawerTitle-es.js +1 -1
- package/dist/FieldDescription-cjs.js +49 -49
- package/dist/FieldDescription-es.js +2 -2
- package/dist/FilterPicker/components/FilterPickerActivator/index.cjs +0 -1
- package/dist/FilterPicker/components/FilterPickerActivator/index.mjs +0 -1
- package/dist/FilterPicker/components/FilterPickerContent/index.cjs +0 -1
- package/dist/FilterPicker/components/FilterPickerContent/index.mjs +0 -1
- package/dist/FilterPicker/components/FilterPickerTrigger/index.cjs +0 -1
- package/dist/FilterPicker/components/FilterPickerTrigger/index.mjs +0 -1
- package/dist/FilterPicker/index.cjs +0 -1
- package/dist/FilterPicker/index.mjs +0 -1
- package/dist/FormatFile/index.cjs +0 -1
- package/dist/FormatFile/index.mjs +0 -1
- package/dist/Gallery/index.cjs +0 -1
- package/dist/Gallery/index.mjs +0 -1
- package/dist/HelperText-cjs.js +3 -2
- package/dist/HelperText-es.js +3 -2
- package/dist/InputDate/index.cjs +0 -2
- package/dist/InputDate/index.mjs +0 -2
- package/dist/InputNumber/InputNumber.d.ts +75 -5
- package/dist/InputNumber/index.cjs +27 -3
- package/dist/InputNumber/index.d.ts +2 -2
- package/dist/InputNumber/index.mjs +27 -3
- package/dist/{primitives/InputNumberExperimental → InputNumber}/types.d.ts +48 -35
- package/dist/InputNumber-cjs.js +267 -4986
- package/dist/InputNumber-es.js +268 -4987
- package/dist/LightBox/index.cjs +0 -1
- package/dist/LightBox/index.mjs +0 -1
- package/dist/Menu/index.cjs +7 -7
- package/dist/Menu/index.mjs +7 -7
- package/dist/Menu-cjs.js +4 -1
- package/dist/Menu-es.js +4 -1
- package/dist/MenuSubmenuTrigger-cjs.js +142 -143
- package/dist/MenuSubmenuTrigger-es.js +5 -6
- package/dist/Modal/index.cjs +0 -1
- package/dist/Modal/index.mjs +0 -1
- package/dist/NumberFieldInput-cjs.js +63 -63
- package/dist/NumberFieldInput-es.js +5 -5
- package/dist/Page/index.cjs +7 -8
- package/dist/Page/index.mjs +7 -8
- package/dist/Popover/index.cjs +0 -1
- package/dist/Popover/index.mjs +0 -1
- package/dist/ScrollAreaViewport-cjs.js +119 -121
- package/dist/ScrollAreaViewport-es.js +3 -5
- package/dist/Select/index.cjs +3 -9
- package/dist/Select/index.mjs +3 -9
- package/dist/SelectGroupLabel-cjs.js +117 -107
- package/dist/SelectGroupLabel-es.js +20 -12
- package/dist/Tooltip/index.cjs +0 -1
- package/dist/Tooltip/index.mjs +0 -1
- package/dist/dialogReturnFocus-cjs.js +4 -1
- package/dist/dialogReturnFocus-es.js +4 -1
- package/dist/docs/InputNumber/InputNumber.md +564 -56
- package/dist/docs/index.md +0 -1
- package/dist/floating-ui.react-cjs.js +34 -35
- package/dist/floating-ui.react-dom-cjs.js +64 -65
- package/dist/floating-ui.react-dom-es.js +1 -2
- package/dist/floating-ui.react-es.js +1 -2
- package/dist/floating-ui.utils-cjs.js +183 -0
- package/dist/floating-ui.utils-es.js +165 -1
- package/dist/index.cjs +10 -15
- package/dist/index.mjs +10 -15
- package/dist/primitives/BottomSheet/index.cjs +2 -5
- package/dist/primitives/BottomSheet/index.mjs +2 -5
- package/dist/primitives/ComboboxPrimitive/index.cjs +3 -7
- package/dist/primitives/ComboboxPrimitive/index.mjs +3 -7
- package/dist/primitives/HelperText/HelperText.d.ts +4 -1
- package/dist/primitives/HelperText/index.cjs +1 -1
- package/dist/primitives/HelperText/index.mjs +1 -1
- package/dist/primitives/SelectPrimitive/index.cjs +3 -9
- package/dist/primitives/SelectPrimitive/index.mjs +3 -9
- package/dist/primitives/index.cjs +2 -16
- package/dist/primitives/index.d.ts +0 -2
- package/dist/primitives/index.mjs +2 -15
- package/dist/scrollEdges-cjs.js +6 -2
- package/dist/scrollEdges-es.js +5 -2
- package/dist/styles.css +573 -902
- package/dist/unstyledPrimitives/index.cjs +105 -111
- package/dist/unstyledPrimitives/index.mjs +5 -11
- package/dist/useCompositeListItem-cjs.js +516 -90
- package/dist/useCompositeListItem-es.js +407 -6
- package/dist/useLabel-cjs.js +10 -10
- package/dist/useLabel-es.js +3 -3
- package/dist/useRenderElement-es.js +1 -1
- package/dist/useScrollLock-cjs.js +1332 -203
- package/dist/useScrollLock-es.js +1068 -5
- package/dist/utils/meta/meta.json +12 -0
- package/package.json +2 -3
- package/dist/InputNumber/InputNumber.types.d.ts +0 -20
- package/dist/InputNumberExperimental-cjs.js +0 -277
- package/dist/InputNumberExperimental-es.js +0 -275
- package/dist/clamp-cjs.js +0 -7
- package/dist/clamp-es.js +0 -5
- package/dist/clsx-cjs.js +0 -5
- package/dist/clsx-es.js +0 -3
- package/dist/docs/InputNumberExperimental/InputNumberExperimental.md +0 -578
- package/dist/floating-ui.utils.dom-cjs.js +0 -185
- package/dist/floating-ui.utils.dom-es.js +0 -165
- package/dist/isElementDisabled-cjs.js +0 -40
- package/dist/isElementDisabled-es.js +0 -18
- package/dist/primitives/InputNumberExperimental/InputNumberExperimental.d.ts +0 -77
- package/dist/primitives/InputNumberExperimental/index.cjs +0 -30
- package/dist/primitives/InputNumberExperimental/index.d.ts +0 -2
- package/dist/primitives/InputNumberExperimental/index.mjs +0 -24
- package/dist/resolveAriaLabelledBy-cjs.js +0 -200
- package/dist/resolveAriaLabelledBy-es.js +0 -166
- package/dist/useButton-cjs.js +0 -1164
- package/dist/useButton-es.js +0 -1071
- package/dist/useLabelableId-cjs.js +0 -278
- package/dist/useLabelableId-es.js +0 -247
|
@@ -1,7 +1,77 @@
|
|
|
1
|
+
import type { Ref } from "react";
|
|
1
2
|
import React from "react";
|
|
2
|
-
import type { InputNumberProps } from "./
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
import type { InputNumberAffixCompoundProps, InputNumberDescriptionProps, InputNumberErrorProps, InputNumberFooterProps, InputNumberGroupProps, InputNumberInputProps, InputNumberLabelProps, InputNumberLoadingProps, InputNumberProps, InputNumberRef, InputNumberStepButtonProps, InputNumberStepperProps, InputNumberWrapperProps } from "./types";
|
|
4
|
+
declare function InputNumberWrapper({ ref, ...props }: InputNumberWrapperProps & {
|
|
5
|
+
readonly ref?: Ref<InputNumberRef>;
|
|
6
|
+
}): React.JSX.Element;
|
|
7
|
+
declare namespace InputNumberWrapper {
|
|
8
|
+
var displayName: string;
|
|
6
9
|
}
|
|
7
|
-
|
|
10
|
+
declare function InputNumberGroup({ children, className, style, }: InputNumberGroupProps): React.JSX.Element;
|
|
11
|
+
declare namespace InputNumberGroup {
|
|
12
|
+
var displayName: string;
|
|
13
|
+
}
|
|
14
|
+
declare function InputNumberFooter({ children, className, style, }: InputNumberFooterProps): React.JSX.Element;
|
|
15
|
+
declare namespace InputNumberFooter {
|
|
16
|
+
var displayName: string;
|
|
17
|
+
}
|
|
18
|
+
declare function InputNumberInput({ children, className, style, }: InputNumberInputProps): React.JSX.Element;
|
|
19
|
+
declare namespace InputNumberInput {
|
|
20
|
+
var displayName: string;
|
|
21
|
+
}
|
|
22
|
+
declare function InputNumberLabel({ children, className, style, }: InputNumberLabelProps): React.JSX.Element | null;
|
|
23
|
+
declare namespace InputNumberLabel {
|
|
24
|
+
var displayName: string;
|
|
25
|
+
}
|
|
26
|
+
declare function InputNumberDescription({ children, className, style, }: InputNumberDescriptionProps): React.JSX.Element | null;
|
|
27
|
+
declare namespace InputNumberDescription {
|
|
28
|
+
var displayName: string;
|
|
29
|
+
}
|
|
30
|
+
declare function InputNumberError({ children, className, style, }: InputNumberErrorProps): React.JSX.Element | null;
|
|
31
|
+
declare namespace InputNumberError {
|
|
32
|
+
var displayName: string;
|
|
33
|
+
}
|
|
34
|
+
declare function InputNumberLoading({ children, className, style, }: InputNumberLoadingProps): React.JSX.Element;
|
|
35
|
+
declare namespace InputNumberLoading {
|
|
36
|
+
var displayName: string;
|
|
37
|
+
}
|
|
38
|
+
declare function InputNumberStepper({ children, incrementLabel, decrementLabel, className, style, }: InputNumberStepperProps): React.JSX.Element | null;
|
|
39
|
+
declare namespace InputNumberStepper {
|
|
40
|
+
var displayName: string;
|
|
41
|
+
}
|
|
42
|
+
declare function InputNumberIncrement({ children, ariaLabel, className, style, }: InputNumberStepButtonProps): React.JSX.Element;
|
|
43
|
+
declare namespace InputNumberIncrement {
|
|
44
|
+
var displayName: string;
|
|
45
|
+
}
|
|
46
|
+
declare function InputNumberDecrement({ children, ariaLabel, className, style, }: InputNumberStepButtonProps): React.JSX.Element;
|
|
47
|
+
declare namespace InputNumberDecrement {
|
|
48
|
+
var displayName: string;
|
|
49
|
+
}
|
|
50
|
+
declare function InputNumberAffixCompound({ variation, label, icon, onClick, ariaLabel, children, className, style, }: InputNumberAffixCompoundProps): React.JSX.Element | null;
|
|
51
|
+
declare namespace InputNumberAffixCompound {
|
|
52
|
+
var displayName: string;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Sugar layer: composes the parts from props. This is the same composition a
|
|
56
|
+
* consumer would write by hand with `<InputNumber.Wrapper>` and the
|
|
57
|
+
* parts — to customize a single piece, copy this tree and swap that part.
|
|
58
|
+
*/
|
|
59
|
+
declare function InputNumber({ ref, ...props }: InputNumberProps & {
|
|
60
|
+
readonly ref?: Ref<InputNumberRef>;
|
|
61
|
+
}): React.JSX.Element;
|
|
62
|
+
declare namespace InputNumber {
|
|
63
|
+
var displayName: string;
|
|
64
|
+
var Wrapper: typeof InputNumberWrapper;
|
|
65
|
+
var Group: typeof InputNumberGroup;
|
|
66
|
+
var Footer: typeof InputNumberFooter;
|
|
67
|
+
var Input: typeof InputNumberInput;
|
|
68
|
+
var Label: typeof InputNumberLabel;
|
|
69
|
+
var Description: typeof InputNumberDescription;
|
|
70
|
+
var Error: typeof InputNumberError;
|
|
71
|
+
var Loading: typeof InputNumberLoading;
|
|
72
|
+
var Stepper: typeof InputNumberStepper;
|
|
73
|
+
var Increment: typeof InputNumberIncrement;
|
|
74
|
+
var Decrement: typeof InputNumberDecrement;
|
|
75
|
+
var Affix: typeof InputNumberAffixCompound;
|
|
76
|
+
}
|
|
77
|
+
export { InputNumber };
|
|
@@ -3,13 +3,37 @@
|
|
|
3
3
|
var InputNumber = require('../InputNumber-cjs.js');
|
|
4
4
|
require('../tslib.es6-cjs.js');
|
|
5
5
|
require('react');
|
|
6
|
-
require('../clsx-cjs.js');
|
|
7
6
|
require('classnames');
|
|
7
|
+
require('../ActivityIndicator-cjs.js');
|
|
8
|
+
require('../common.messages-cjs.js');
|
|
9
|
+
require('../useAtlantisI18n-cjs.js');
|
|
10
|
+
require('../AtlantisContext-cjs.js');
|
|
11
|
+
require('../Button-cjs.js');
|
|
12
|
+
require('react-router-dom');
|
|
8
13
|
require('../Icon-cjs.js');
|
|
9
14
|
require('@jobber/design');
|
|
10
|
-
require('../Text-cjs.js');
|
|
11
15
|
require('../Typography-cjs.js');
|
|
12
|
-
require('../
|
|
16
|
+
require('../OverlaySeparator-cjs.js');
|
|
17
|
+
require('../Separator-cjs.js');
|
|
18
|
+
require('../useRenderElement-cjs.js');
|
|
19
|
+
require('../BottomSheet-cjs.js');
|
|
20
|
+
require('../buttonRenderAdapter-cjs.js');
|
|
21
|
+
require('../ScrollAreaViewport-cjs.js');
|
|
22
|
+
require('../useScrollLock-cjs.js');
|
|
23
|
+
require('../floating-ui.utils-cjs.js');
|
|
24
|
+
require('react/jsx-runtime');
|
|
25
|
+
require('react-dom');
|
|
26
|
+
require('../scrollEdges-cjs.js');
|
|
27
|
+
require('../HelperText-cjs.js');
|
|
28
|
+
require('../Text-cjs.js');
|
|
29
|
+
require('../SelectPrimitive-cjs.js');
|
|
30
|
+
require('../SelectGroupLabel-cjs.js');
|
|
31
|
+
require('../useCompositeListItem-cjs.js');
|
|
32
|
+
require('../floating-ui.react-dom-cjs.js');
|
|
33
|
+
require('../FieldDescription-cjs.js');
|
|
34
|
+
require('../useLabel-cjs.js');
|
|
35
|
+
require('../NumberFieldInput-cjs.js');
|
|
36
|
+
require('../stringifyLocale-cjs.js');
|
|
13
37
|
|
|
14
38
|
|
|
15
39
|
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { InputNumber
|
|
2
|
-
export type { InputNumberProps } from "./
|
|
1
|
+
export { InputNumber } from "./InputNumber";
|
|
2
|
+
export type { InputNumberAffix, InputNumberAffixCompoundProps, InputNumberAutoComplete, InputNumberDescriptionProps, InputNumberErrorProps, InputNumberFooterProps, InputNumberGroupProps, InputNumberInputProps, InputNumberLabelProps, InputNumberLoadingProps, InputNumberProps, InputNumberRef, InputNumberSize, InputNumberStepButtonProps, InputNumberStepperProps, InputNumberSuffix, InputNumberSuffixProp, InputNumberWrapperProps, } from "./types";
|
|
@@ -1,10 +1,34 @@
|
|
|
1
1
|
export { I as InputNumber } from '../InputNumber-es.js';
|
|
2
2
|
import '../tslib.es6-es.js';
|
|
3
3
|
import 'react';
|
|
4
|
-
import '../clsx-es.js';
|
|
5
4
|
import 'classnames';
|
|
5
|
+
import '../ActivityIndicator-es.js';
|
|
6
|
+
import '../common.messages-es.js';
|
|
7
|
+
import '../useAtlantisI18n-es.js';
|
|
8
|
+
import '../AtlantisContext-es.js';
|
|
9
|
+
import '../Button-es.js';
|
|
10
|
+
import 'react-router-dom';
|
|
6
11
|
import '../Icon-es.js';
|
|
7
12
|
import '@jobber/design';
|
|
8
|
-
import '../Text-es.js';
|
|
9
13
|
import '../Typography-es.js';
|
|
10
|
-
import '../
|
|
14
|
+
import '../OverlaySeparator-es.js';
|
|
15
|
+
import '../Separator-es.js';
|
|
16
|
+
import '../useRenderElement-es.js';
|
|
17
|
+
import '../BottomSheet-es.js';
|
|
18
|
+
import '../buttonRenderAdapter-es.js';
|
|
19
|
+
import '../ScrollAreaViewport-es.js';
|
|
20
|
+
import '../useScrollLock-es.js';
|
|
21
|
+
import '../floating-ui.utils-es.js';
|
|
22
|
+
import 'react/jsx-runtime';
|
|
23
|
+
import 'react-dom';
|
|
24
|
+
import '../scrollEdges-es.js';
|
|
25
|
+
import '../HelperText-es.js';
|
|
26
|
+
import '../Text-es.js';
|
|
27
|
+
import '../SelectPrimitive-es.js';
|
|
28
|
+
import '../SelectGroupLabel-es.js';
|
|
29
|
+
import '../useCompositeListItem-es.js';
|
|
30
|
+
import '../floating-ui.react-dom-es.js';
|
|
31
|
+
import '../FieldDescription-es.js';
|
|
32
|
+
import '../useLabel-es.js';
|
|
33
|
+
import '../NumberFieldInput-es.js';
|
|
34
|
+
import '../stringifyLocale-es.js';
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import type { CSSProperties, FocusEvent, KeyboardEvent, ReactNode } from "react";
|
|
2
|
-
import type { IconNames } from "
|
|
2
|
+
import type { IconNames } from "../Icon";
|
|
3
3
|
/**
|
|
4
|
-
* `className`/`style` shared by every `
|
|
4
|
+
* `className`/`style` shared by every `InputNumber` building block.
|
|
5
5
|
* Both compose with the block's internal styling rather than replacing it.
|
|
6
6
|
*/
|
|
7
|
-
export interface
|
|
7
|
+
export interface InputNumberStyleProps {
|
|
8
8
|
readonly className?: string;
|
|
9
9
|
readonly style?: CSSProperties;
|
|
10
10
|
}
|
|
@@ -13,9 +13,9 @@ export interface InputNumberExperimentalStyleProps {
|
|
|
13
13
|
* `label` or `icon` should be provided. Icons render outside the input area (in
|
|
14
14
|
* the field's outer padding zone); labels render inside the input area next to
|
|
15
15
|
* the typed value. `onClick`/`ariaLabel` are not allowed here; use
|
|
16
|
-
* `
|
|
16
|
+
* `InputNumberSuffix` for a clickable action.
|
|
17
17
|
*/
|
|
18
|
-
export interface
|
|
18
|
+
export interface InputNumberAffix {
|
|
19
19
|
readonly label?: string;
|
|
20
20
|
readonly icon?: IconNames;
|
|
21
21
|
readonly ariaLabel?: never;
|
|
@@ -25,23 +25,25 @@ export interface InputNumberExperimentalAffix {
|
|
|
25
25
|
* Suffix variant that turns the suffix icon into a clickable action button.
|
|
26
26
|
* The `?: never` fields make this a discriminated union with the plain affix.
|
|
27
27
|
*/
|
|
28
|
-
export interface
|
|
28
|
+
export interface InputNumberSuffix {
|
|
29
29
|
readonly label?: string;
|
|
30
30
|
readonly icon: IconNames;
|
|
31
31
|
readonly ariaLabel: string;
|
|
32
32
|
onClick(): void;
|
|
33
33
|
}
|
|
34
|
-
export type
|
|
35
|
-
export type
|
|
36
|
-
export type
|
|
34
|
+
export type InputNumberSuffixProp = InputNumberAffix | InputNumberSuffix;
|
|
35
|
+
export type InputNumberAutoComplete = boolean | "on" | "off" | "one-time-code" | "address-line1" | "address-line2";
|
|
36
|
+
export type InputNumberSize = "small" | "default" | "large";
|
|
37
37
|
/**
|
|
38
|
-
* Field configuration shared by `<
|
|
39
|
-
* composition entry point) and the top-level `<
|
|
38
|
+
* Field configuration shared by `<InputNumber.Wrapper>` (the
|
|
39
|
+
* composition entry point) and the top-level `<InputNumber>` sugar.
|
|
40
40
|
* The Wrapper owns the field state and exposes it to the parts via context.
|
|
41
41
|
*/
|
|
42
|
-
export interface
|
|
42
|
+
export interface InputNumberWrapperProps extends InputNumberStyleProps {
|
|
43
|
+
readonly "aria-label"?: string;
|
|
44
|
+
readonly "aria-labelledby"?: string;
|
|
43
45
|
readonly align?: "center" | "right";
|
|
44
|
-
readonly autoComplete?:
|
|
46
|
+
readonly autoComplete?: InputNumberAutoComplete;
|
|
45
47
|
/** Composed parts (`.Group`, `.Footer`, and the parts within them). */
|
|
46
48
|
readonly children?: ReactNode;
|
|
47
49
|
readonly disabled?: boolean;
|
|
@@ -65,6 +67,11 @@ export interface InputNumberExperimentalWrapperProps extends InputNumberExperime
|
|
|
65
67
|
readonly max?: number;
|
|
66
68
|
readonly min?: number;
|
|
67
69
|
readonly name?: string;
|
|
70
|
+
/**
|
|
71
|
+
* Also fires once per Enter press: committing on Enter is implemented as a
|
|
72
|
+
* `blur()`/`focus()` round-trip, so `onBlur` and `onFocus` both fire even
|
|
73
|
+
* though focus never visibly leaves the field.
|
|
74
|
+
*/
|
|
68
75
|
readonly onBlur?: (event?: FocusEvent<HTMLInputElement>) => void;
|
|
69
76
|
/**
|
|
70
77
|
* Fires when the user commits a value (blur, Enter, stepper, arrow step).
|
|
@@ -79,18 +86,23 @@ export interface InputNumberExperimentalWrapperProps extends InputNumberExperime
|
|
|
79
86
|
readonly onValueChange?: (newValue: number | null) => void;
|
|
80
87
|
/** Fires when Enter is pressed without modifier keys (Shift/Ctrl/Meta). */
|
|
81
88
|
readonly onEnter?: (event: KeyboardEvent<HTMLInputElement>) => void;
|
|
89
|
+
/**
|
|
90
|
+
* Also fires once per Enter press; see `onBlur` for the commit mechanics.
|
|
91
|
+
*/
|
|
82
92
|
readonly onFocus?: (event?: FocusEvent<HTMLInputElement>) => void;
|
|
83
93
|
readonly onKeyDown?: (event: KeyboardEvent<HTMLInputElement>) => void;
|
|
84
94
|
readonly onKeyUp?: (event: KeyboardEvent<HTMLInputElement>) => void;
|
|
85
95
|
readonly readOnly?: boolean;
|
|
86
96
|
/** Default `true`. When `false`, the floating label is hidden. */
|
|
87
97
|
readonly showMiniLabel?: boolean;
|
|
88
|
-
readonly size?:
|
|
98
|
+
readonly size?: InputNumberSize;
|
|
89
99
|
/**
|
|
90
100
|
* Amount the stepper buttons and ArrowUp/ArrowDown keys change the value by.
|
|
91
|
-
* Default `1
|
|
101
|
+
* Default `"any"`, which steps by `1` while accepting any decimal value. Pass a
|
|
102
|
+
* number to both set the step increment and constrain valid values to its
|
|
103
|
+
* multiples (a non-multiple then fails native validation).
|
|
92
104
|
*/
|
|
93
|
-
readonly step?: number;
|
|
105
|
+
readonly step?: number | "any";
|
|
94
106
|
/**
|
|
95
107
|
* Controlled value. `number` sets the value; `null` (or `undefined`) is an
|
|
96
108
|
* empty field.
|
|
@@ -98,48 +110,49 @@ export interface InputNumberExperimentalWrapperProps extends InputNumberExperime
|
|
|
98
110
|
readonly value?: number | null;
|
|
99
111
|
}
|
|
100
112
|
/**
|
|
101
|
-
* Props for the top-level `<
|
|
113
|
+
* Props for the top-level `<InputNumber>` sugar: the field
|
|
102
114
|
* configuration plus the convenience content props (`label`, `description`,
|
|
103
115
|
* `error`, `prefix`, `suffix`). It composes the parts internally — to compose
|
|
104
|
-
* the field yourself, use `<
|
|
116
|
+
* the field yourself, use `<InputNumber.Wrapper>` and the parts.
|
|
105
117
|
*/
|
|
106
|
-
export interface
|
|
118
|
+
export interface InputNumberProps extends Omit<InputNumberWrapperProps, "children"> {
|
|
107
119
|
/** Floating field label. */
|
|
108
120
|
readonly label?: string;
|
|
109
121
|
readonly description?: ReactNode;
|
|
110
122
|
/** Renders a styled error message below the field. */
|
|
111
123
|
readonly error?: string;
|
|
112
|
-
readonly prefix?:
|
|
113
|
-
readonly suffix?:
|
|
124
|
+
readonly prefix?: InputNumberAffix;
|
|
125
|
+
readonly suffix?: InputNumberSuffixProp;
|
|
114
126
|
}
|
|
115
|
-
export interface
|
|
127
|
+
export interface InputNumberRef {
|
|
116
128
|
blur(): void;
|
|
117
129
|
focus(): void;
|
|
118
130
|
}
|
|
119
|
-
export interface
|
|
131
|
+
export interface InputNumberGroupProps extends InputNumberStyleProps {
|
|
120
132
|
readonly children?: ReactNode;
|
|
121
133
|
}
|
|
122
|
-
export interface
|
|
134
|
+
export interface InputNumberFooterProps extends InputNumberStyleProps {
|
|
123
135
|
readonly children?: ReactNode;
|
|
124
136
|
}
|
|
125
|
-
export interface
|
|
137
|
+
export interface InputNumberInputProps extends InputNumberStyleProps {
|
|
126
138
|
/** Content rendered inside the input area (e.g. `.Label`, `.Stepper`). */
|
|
127
139
|
readonly children?: ReactNode;
|
|
128
140
|
}
|
|
129
|
-
export interface
|
|
141
|
+
export interface InputNumberLabelProps extends InputNumberStyleProps {
|
|
130
142
|
readonly children?: ReactNode;
|
|
131
143
|
}
|
|
132
|
-
export interface
|
|
144
|
+
export interface InputNumberDescriptionProps extends InputNumberStyleProps {
|
|
133
145
|
readonly children?: ReactNode;
|
|
134
146
|
}
|
|
135
|
-
export interface
|
|
136
|
-
|
|
147
|
+
export interface InputNumberErrorProps extends InputNumberStyleProps {
|
|
148
|
+
/** Error message. Rendered with an alert icon via the `HelperText` primitive. */
|
|
149
|
+
readonly children?: string;
|
|
137
150
|
}
|
|
138
|
-
export interface
|
|
151
|
+
export interface InputNumberLoadingProps extends InputNumberStyleProps {
|
|
139
152
|
/** Indicator content. Falls back to the default `ActivityIndicator`. */
|
|
140
153
|
readonly children?: ReactNode;
|
|
141
154
|
}
|
|
142
|
-
export interface
|
|
155
|
+
export interface InputNumberStepperProps extends InputNumberStyleProps {
|
|
143
156
|
/** Stepper buttons. Falls back to the default increment/decrement pair. */
|
|
144
157
|
readonly children?: ReactNode;
|
|
145
158
|
/** Accessible label for the increment button. Defaults to `Increase value`. */
|
|
@@ -147,13 +160,13 @@ export interface InputNumberExperimentalStepperProps extends InputNumberExperime
|
|
|
147
160
|
/** Accessible label for the decrement button. Defaults to `Decrease value`. */
|
|
148
161
|
readonly decrementLabel?: string;
|
|
149
162
|
}
|
|
150
|
-
export interface
|
|
163
|
+
export interface InputNumberStepButtonProps extends InputNumberStyleProps {
|
|
151
164
|
/** Icon content. Falls back to the default Atlantis stepper icon. */
|
|
152
165
|
readonly children?: ReactNode;
|
|
153
166
|
/** Accessible label for the button. */
|
|
154
167
|
readonly ariaLabel?: string;
|
|
155
168
|
}
|
|
156
|
-
export interface
|
|
169
|
+
export interface InputNumberAffixCompound extends InputNumberStyleProps {
|
|
157
170
|
readonly variation: "prefix" | "suffix";
|
|
158
171
|
readonly label?: string;
|
|
159
172
|
readonly icon?: IconNames;
|
|
@@ -162,7 +175,7 @@ export interface InputNumberExperimentalAffixCompound extends InputNumberExperim
|
|
|
162
175
|
/** Arbitrary affix content, beyond the built-in `label`/`icon`. */
|
|
163
176
|
readonly children?: ReactNode;
|
|
164
177
|
}
|
|
165
|
-
export interface
|
|
178
|
+
export interface InputNumberAffixCompoundClickable extends InputNumberStyleProps {
|
|
166
179
|
readonly variation: "prefix" | "suffix";
|
|
167
180
|
readonly label?: string;
|
|
168
181
|
readonly icon: IconNames;
|
|
@@ -176,4 +189,4 @@ export interface InputNumberExperimentalAffixCompoundClickable extends InputNumb
|
|
|
176
189
|
* - omit `onClick` -> behaves like a plain affix
|
|
177
190
|
* - set `onClick` -> requires `icon` and `ariaLabel` (clickable icon-button)
|
|
178
191
|
*/
|
|
179
|
-
export type
|
|
192
|
+
export type InputNumberAffixCompoundProps = InputNumberAffixCompound | InputNumberAffixCompoundClickable;
|