@plasmicpkgs/react-aria 0.0.23 → 0.0.25
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/.tsbuildinfo +1 -1
- package/dist/contexts.d.ts +1 -1
- package/dist/interaction-variant-utils.d.ts +31 -0
- package/dist/react-aria.esm.js +308 -215
- package/dist/react-aria.esm.js.map +1 -1
- package/dist/react-aria.js +307 -214
- package/dist/react-aria.js.map +1 -1
- package/dist/registerButton.d.ts +4 -1
- package/dist/registerCheckbox.d.ts +4 -2
- package/dist/registerInput.d.ts +7 -1
- package/dist/registerRadio.d.ts +6 -4
- package/dist/registerRadioGroup.d.ts +2 -6
- package/dist/registerSwitch.d.ts +9 -2
- package/dist/registerTextArea.d.ts +7 -1
- package/dist/registerTextField.d.ts +1 -1
- package/dist/utils.d.ts +0 -1
- package/package.json +3 -3
- package/skinny/contexts.d.ts +1 -1
- package/skinny/interaction-variant-utils-608d984b.esm.js +39 -0
- package/skinny/interaction-variant-utils-608d984b.esm.js.map +1 -0
- package/skinny/interaction-variant-utils-80bf1cfd.cjs.js +45 -0
- package/skinny/interaction-variant-utils-80bf1cfd.cjs.js.map +1 -0
- package/skinny/interaction-variant-utils.d.ts +31 -0
- package/skinny/registerButton.cjs.js +32 -50
- package/skinny/registerButton.cjs.js.map +1 -1
- package/skinny/registerButton.d.ts +4 -1
- package/skinny/registerButton.esm.js +32 -50
- package/skinny/registerButton.esm.js.map +1 -1
- package/skinny/registerCheckbox.cjs.js +22 -44
- package/skinny/registerCheckbox.cjs.js.map +1 -1
- package/skinny/registerCheckbox.d.ts +4 -2
- package/skinny/registerCheckbox.esm.js +22 -44
- package/skinny/registerCheckbox.esm.js.map +1 -1
- package/skinny/registerCheckboxGroup.cjs.js +2 -1
- package/skinny/registerCheckboxGroup.cjs.js.map +1 -1
- package/skinny/registerCheckboxGroup.esm.js +2 -1
- package/skinny/registerCheckboxGroup.esm.js.map +1 -1
- package/skinny/registerComboBox.cjs.js +1 -1
- package/skinny/registerComboBox.esm.js +1 -1
- package/skinny/registerDescription.cjs.js +1 -1
- package/skinny/registerDescription.esm.js +1 -1
- package/skinny/registerFieldError.cjs.js +1 -1
- package/skinny/registerFieldError.esm.js +1 -1
- package/skinny/registerForm.cjs.js +1 -1
- package/skinny/registerForm.esm.js +1 -1
- package/skinny/registerHeader.cjs.js +1 -1
- package/skinny/registerHeader.esm.js +1 -1
- package/skinny/registerInput.cjs.js +40 -2
- package/skinny/registerInput.cjs.js.map +1 -1
- package/skinny/registerInput.d.ts +7 -1
- package/skinny/registerInput.esm.js +40 -2
- package/skinny/registerInput.esm.js.map +1 -1
- package/skinny/registerLabel.cjs.js +1 -2
- package/skinny/registerLabel.cjs.js.map +1 -1
- package/skinny/registerLabel.esm.js +1 -2
- package/skinny/registerLabel.esm.js.map +1 -1
- package/skinny/registerListBox.cjs.js +1 -1
- package/skinny/registerListBox.esm.js +1 -1
- package/skinny/registerListBoxItem.cjs.js +1 -1
- package/skinny/registerListBoxItem.esm.js +1 -1
- package/skinny/registerModal.cjs.js +1 -1
- package/skinny/registerModal.esm.js +1 -1
- package/skinny/registerPopover.cjs.js +1 -1
- package/skinny/registerPopover.esm.js +1 -1
- package/skinny/registerRadio.cjs.js +21 -55
- package/skinny/registerRadio.cjs.js.map +1 -1
- package/skinny/registerRadio.d.ts +6 -4
- package/skinny/registerRadio.esm.js +21 -55
- package/skinny/registerRadio.esm.js.map +1 -1
- package/skinny/registerRadioGroup.cjs.js +4 -31
- package/skinny/registerRadioGroup.cjs.js.map +1 -1
- package/skinny/registerRadioGroup.d.ts +2 -6
- package/skinny/registerRadioGroup.esm.js +4 -27
- package/skinny/registerRadioGroup.esm.js.map +1 -1
- package/skinny/registerSection.cjs.js +1 -1
- package/skinny/registerSection.esm.js +1 -1
- package/skinny/registerSelect.cjs.js +1 -1
- package/skinny/registerSelect.esm.js +1 -1
- package/skinny/registerSwitch.cjs.js +42 -12
- package/skinny/registerSwitch.cjs.js.map +1 -1
- package/skinny/registerSwitch.d.ts +9 -2
- package/skinny/registerSwitch.esm.js +38 -12
- package/skinny/registerSwitch.esm.js.map +1 -1
- package/skinny/registerText.cjs.js +1 -1
- package/skinny/registerText.esm.js +1 -1
- package/skinny/registerTextArea.cjs.js +61 -2
- package/skinny/registerTextArea.cjs.js.map +1 -1
- package/skinny/registerTextArea.d.ts +7 -1
- package/skinny/registerTextArea.esm.js +61 -2
- package/skinny/registerTextArea.esm.js.map +1 -1
- package/skinny/registerTextField.cjs.js +54 -6
- package/skinny/registerTextField.cjs.js.map +1 -1
- package/skinny/registerTextField.d.ts +1 -1
- package/skinny/registerTextField.esm.js +54 -6
- package/skinny/registerTextField.esm.js.map +1 -1
- package/skinny/registerTooltip.cjs.js +1 -1
- package/skinny/registerTooltip.esm.js +1 -1
- package/skinny/{utils-1190a0a9.cjs.js → utils-18b2465b.cjs.js} +2 -12
- package/skinny/utils-18b2465b.cjs.js.map +1 -0
- package/skinny/{utils-28f98072.esm.js → utils-cf2632c9.esm.js} +3 -12
- package/skinny/utils-cf2632c9.esm.js.map +1 -0
- package/skinny/utils.d.ts +0 -1
- package/skinny/utils-1190a0a9.cjs.js.map +0 -1
- package/skinny/utils-28f98072.esm.js.map +0 -1
package/dist/registerButton.d.ts
CHANGED
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import type { ButtonProps } from "react-aria-components";
|
|
3
|
+
import { UpdateInteractionVariant } from "./interaction-variant-utils";
|
|
3
4
|
import { CodeComponentMetaOverrides, Registerable } from "./utils";
|
|
5
|
+
declare const BUTTON_INTERACTION_VARIANTS: ("hovered" | "pressed" | "focused" | "focusVisible")[];
|
|
4
6
|
interface BaseButtonProps extends ButtonProps {
|
|
7
|
+
children: React.ReactNode;
|
|
5
8
|
resetsForm?: boolean;
|
|
6
9
|
submitsForm?: boolean;
|
|
7
|
-
|
|
10
|
+
updateInteractionVariant?: UpdateInteractionVariant<typeof BUTTON_INTERACTION_VARIANTS>;
|
|
8
11
|
}
|
|
9
12
|
export declare function BaseButton(props: BaseButtonProps): React.JSX.Element;
|
|
10
13
|
export declare function registerButton(loader?: Registerable, overrides?: CodeComponentMetaOverrides<typeof BaseButton>): void;
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import type { CheckboxProps } from "react-aria-components";
|
|
3
|
+
import { UpdateInteractionVariant } from "./interaction-variant-utils";
|
|
3
4
|
import { CodeComponentMetaOverrides, Registerable } from "./utils";
|
|
5
|
+
declare const CHECKBOX_INTERACTION_VARIANTS: ("hovered" | "pressed" | "focused" | "focusVisible")[];
|
|
4
6
|
interface BaseCheckboxProps extends CheckboxProps {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
+
children: React.ReactNode;
|
|
8
|
+
updateInteractionVariant?: UpdateInteractionVariant<typeof CHECKBOX_INTERACTION_VARIANTS>;
|
|
7
9
|
}
|
|
8
10
|
export declare function BaseCheckbox(props: BaseCheckboxProps): React.JSX.Element;
|
|
9
11
|
export declare function registerCheckbox(loader?: Registerable, overrides?: CodeComponentMetaOverrides<typeof BaseCheckbox>): void;
|
package/dist/registerInput.d.ts
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import type { InputProps } from "react-aria-components";
|
|
3
|
+
import { UpdateInteractionVariant } from "./interaction-variant-utils";
|
|
3
4
|
import { CodeComponentMetaOverrides, Registerable } from "./utils";
|
|
4
|
-
|
|
5
|
+
declare const INPUT_INTERACTION_VARIANTS: ("hovered" | "focused")[];
|
|
6
|
+
export interface BaseInputProps extends InputProps {
|
|
7
|
+
updateInteractionVariant?: UpdateInteractionVariant<typeof INPUT_INTERACTION_VARIANTS>;
|
|
8
|
+
}
|
|
9
|
+
export declare function BaseInput(props: BaseInputProps): React.JSX.Element;
|
|
5
10
|
export declare function registerInput(loader?: Registerable, overrides?: CodeComponentMetaOverrides<typeof BaseInput>): void;
|
|
11
|
+
export {};
|
package/dist/registerRadio.d.ts
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import type { RadioProps } from "react-aria-components";
|
|
3
|
+
import { UpdateInteractionVariant } from "./interaction-variant-utils";
|
|
3
4
|
import { CodeComponentMetaOverrides, Registerable } from "./utils";
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
declare const RADIO_INTERACTION_VARIANTS: ("hovered" | "pressed" | "focused" | "focusVisible")[];
|
|
6
|
+
export interface BaseRadioProps extends RadioProps {
|
|
7
|
+
children: React.ReactNode;
|
|
8
|
+
isSelected: boolean;
|
|
9
|
+
updateInteractionVariant?: UpdateInteractionVariant<typeof RADIO_INTERACTION_VARIANTS>;
|
|
8
10
|
}
|
|
9
11
|
export declare function BaseRadio(props: BaseRadioProps): React.JSX.Element;
|
|
10
12
|
export declare function registerRadio(loader?: Registerable, overrides?: CodeComponentMetaOverrides<typeof BaseRadio>): void;
|
|
@@ -1,9 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
/// <reference types="react" />
|
|
2
2
|
import type { RadioGroupProps } from "react-aria-components";
|
|
3
3
|
import { CodeComponentMetaOverrides, Registerable } from "./utils";
|
|
4
|
-
|
|
5
|
-
children?: ReactNode;
|
|
6
|
-
}
|
|
7
|
-
export declare function BaseRadioGroup(props: BaseRadioGroupProps): React.JSX.Element;
|
|
4
|
+
export declare const BaseRadioGroup: (props: RadioGroupProps & import("react").RefAttributes<HTMLDivElement>) => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
|
|
8
5
|
export declare function registerRadioGroup(loader?: Registerable, overrides?: CodeComponentMetaOverrides<typeof BaseRadioGroup>): void;
|
|
9
|
-
export {};
|
package/dist/registerSwitch.d.ts
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
|
-
|
|
1
|
+
import React from "react";
|
|
2
2
|
import type { SwitchProps } from "react-aria-components";
|
|
3
|
+
import { UpdateInteractionVariant } from "./interaction-variant-utils";
|
|
3
4
|
import { CodeComponentMetaOverrides, Registerable } from "./utils";
|
|
4
|
-
|
|
5
|
+
declare const SWITCH_INTERACTION_VARIANTS: ("hovered" | "pressed" | "focused" | "focusVisible")[];
|
|
6
|
+
interface BaseSwitchProps extends SwitchProps {
|
|
7
|
+
children: React.ReactNode;
|
|
8
|
+
updateInteractionVariant?: UpdateInteractionVariant<typeof SWITCH_INTERACTION_VARIANTS>;
|
|
9
|
+
}
|
|
10
|
+
export declare function BaseSwitch(props: BaseSwitchProps): React.JSX.Element;
|
|
5
11
|
export declare function registerSwitch(loader?: Registerable, overrides?: CodeComponentMetaOverrides<typeof BaseSwitch>): void;
|
|
12
|
+
export {};
|
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import type { TextAreaProps } from "react-aria-components";
|
|
3
|
+
import { UpdateInteractionVariant } from "./interaction-variant-utils";
|
|
3
4
|
import { CodeComponentMetaOverrides, Registerable } from "./utils";
|
|
4
|
-
|
|
5
|
+
declare const TEXTAREA_INTERACTION_VARIANTS: ("hovered" | "focused")[];
|
|
6
|
+
export interface BaseTextAreaProps extends TextAreaProps {
|
|
7
|
+
updateInteractionVariant?: UpdateInteractionVariant<typeof TEXTAREA_INTERACTION_VARIANTS>;
|
|
8
|
+
}
|
|
9
|
+
export declare function BaseTextArea(props: BaseTextAreaProps): React.JSX.Element;
|
|
5
10
|
export declare function registerTextArea(loader?: Registerable, overrides?: CodeComponentMetaOverrides<typeof BaseTextArea>): void;
|
|
11
|
+
export {};
|
|
@@ -2,12 +2,12 @@ import React, { ReactNode } from "react";
|
|
|
2
2
|
import type { InputProps, TextFieldProps } from "react-aria-components";
|
|
3
3
|
import { CodeComponentMetaOverrides, Registerable } from "./utils";
|
|
4
4
|
interface BaseTextFieldProps extends TextFieldProps {
|
|
5
|
-
children?: ReactNode;
|
|
6
5
|
label?: ReactNode;
|
|
7
6
|
description?: ReactNode;
|
|
8
7
|
enableAutoComplete?: boolean;
|
|
9
8
|
multiline?: boolean;
|
|
10
9
|
inputProps?: InputProps;
|
|
10
|
+
children: ReactNode;
|
|
11
11
|
}
|
|
12
12
|
export declare function BaseTextField(props: BaseTextFieldProps): React.JSX.Element;
|
|
13
13
|
export declare function registerTextField(loader?: Registerable, overrides?: CodeComponentMetaOverrides<typeof BaseTextField>): void;
|
package/dist/utils.d.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import type { CodeComponentMeta } from "@plasmicapp/host";
|
|
2
2
|
import registerComponent from "@plasmicapp/host/registerComponent";
|
|
3
3
|
import React from "react";
|
|
4
|
-
export declare function ValueObserver({ value, onChange }: any): null;
|
|
5
4
|
export type Registerable = {
|
|
6
5
|
registerComponent: typeof registerComponent;
|
|
7
6
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@plasmicpkgs/react-aria",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.25",
|
|
4
4
|
"description": "Plasmic registration calls for react-aria based components",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -54,7 +54,7 @@
|
|
|
54
54
|
"react-stately": "^3.31.0"
|
|
55
55
|
},
|
|
56
56
|
"devDependencies": {
|
|
57
|
-
"@plasmicapp/host": "1.0.
|
|
57
|
+
"@plasmicapp/host": "1.0.197",
|
|
58
58
|
"@rollup/plugin-commonjs": "^11.0.0",
|
|
59
59
|
"@rollup/plugin-json": "^4.0.0",
|
|
60
60
|
"@rollup/plugin-node-resolve": "^9.0.0",
|
|
@@ -74,5 +74,5 @@
|
|
|
74
74
|
"publishConfig": {
|
|
75
75
|
"access": "public"
|
|
76
76
|
},
|
|
77
|
-
"gitHead": "
|
|
77
|
+
"gitHead": "c459b57fafee3f91ab1e669194f019970c9b6647"
|
|
78
78
|
}
|
package/skinny/contexts.d.ts
CHANGED
|
@@ -11,4 +11,4 @@ export declare const PlasmicItemContext: React.Context<(import("react-aria-compo
|
|
|
11
11
|
}) | undefined>;
|
|
12
12
|
export declare const PlasmicSectionContext: React.Context<import("./registerSection").BaseSectionProps | undefined>;
|
|
13
13
|
export declare const PlasmicHeaderContext: React.Context<(React.HTMLAttributes<HTMLElement> & React.RefAttributes<HTMLElement>) | undefined>;
|
|
14
|
-
export declare const PlasmicInputContext: React.Context<import("
|
|
14
|
+
export declare const PlasmicInputContext: React.Context<import("./registerInput").BaseInputProps | undefined>;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
const ARIA_COMPONENTS_INTERACTION_VARIANTS = {
|
|
4
|
+
hovered: {
|
|
5
|
+
cssSelector: "[data-hovered]",
|
|
6
|
+
displayName: "Hovered"
|
|
7
|
+
},
|
|
8
|
+
pressed: {
|
|
9
|
+
cssSelector: "[data-pressed]",
|
|
10
|
+
displayName: "Pressed"
|
|
11
|
+
},
|
|
12
|
+
focused: {
|
|
13
|
+
cssSelector: "[data-focused]",
|
|
14
|
+
displayName: "Focused"
|
|
15
|
+
},
|
|
16
|
+
focusVisible: {
|
|
17
|
+
cssSelector: "[data-focus-visible]",
|
|
18
|
+
displayName: "Focus Visible"
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
function realWithObservedValues(children, changes, updateInteractionVariant) {
|
|
22
|
+
React.useEffect(() => {
|
|
23
|
+
if (updateInteractionVariant) {
|
|
24
|
+
updateInteractionVariant(changes);
|
|
25
|
+
}
|
|
26
|
+
}, [changes, updateInteractionVariant]);
|
|
27
|
+
return children;
|
|
28
|
+
}
|
|
29
|
+
function pickAriaComponentVariants(keys) {
|
|
30
|
+
return {
|
|
31
|
+
interactionVariants: Object.fromEntries(
|
|
32
|
+
keys.map((key) => [key, ARIA_COMPONENTS_INTERACTION_VARIANTS[key]])
|
|
33
|
+
),
|
|
34
|
+
withObservedValues: realWithObservedValues
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
export { pickAriaComponentVariants as p };
|
|
39
|
+
//# sourceMappingURL=interaction-variant-utils-608d984b.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interaction-variant-utils-608d984b.esm.js","sources":["../src/interaction-variant-utils.ts"],"sourcesContent":["import { CodeComponentMeta } from \"@plasmicapp/host\";\nimport React from \"react\";\n\nconst ARIA_COMPONENTS_INTERACTION_VARIANTS = {\n hovered: {\n cssSelector: \"[data-hovered]\",\n displayName: \"Hovered\",\n },\n pressed: {\n cssSelector: \"[data-pressed]\",\n displayName: \"Pressed\",\n },\n focused: {\n cssSelector: \"[data-focused]\",\n displayName: \"Focused\",\n },\n focusVisible: {\n cssSelector: \"[data-focus-visible]\",\n displayName: \"Focus Visible\",\n },\n};\n\ntype AriaInteractionVariant = keyof typeof ARIA_COMPONENTS_INTERACTION_VARIANTS;\n\ntype CodeComponentInteractionVariantsMeta = NonNullable<\n CodeComponentMeta<unknown>[\"interactionVariants\"]\n>;\n\ntype InteractionVariantMeta = CodeComponentInteractionVariantsMeta[string];\n\ntype ArrayElement<T> = T extends (infer U)[] ? U : never;\n\nexport type UpdateInteractionVariant<T extends AriaInteractionVariant[]> =\n | ((changes: Partial<Record<ArrayElement<T>, boolean>>) => void)\n | undefined;\n\ntype WithObservedValues<T extends AriaInteractionVariant[]> = (\n children: React.ReactNode,\n state: Record<ArrayElement<T>, boolean>,\n updateInteractionVariant: UpdateInteractionVariant<T>\n) => React.ReactNode;\n\nfunction realWithObservedValues<T extends AriaInteractionVariant[]>(\n children: React.ReactNode,\n changes: Partial<Record<ArrayElement<T>, boolean>>,\n updateInteractionVariant?: UpdateInteractionVariant<T>\n) {\n React.useEffect(() => {\n if (updateInteractionVariant) {\n updateInteractionVariant(changes);\n }\n }, [changes, updateInteractionVariant]);\n return children;\n}\n\nexport function pickAriaComponentVariants<T extends AriaInteractionVariant[]>(\n keys: T\n): {\n interactionVariants: Record<ArrayElement<T>, InteractionVariantMeta>;\n withObservedValues: WithObservedValues<T>;\n} {\n return {\n interactionVariants: Object.fromEntries(\n keys.map((key) => [key, ARIA_COMPONENTS_INTERACTION_VARIANTS[key]])\n ) as Record<ArrayElement<T>, InteractionVariantMeta>,\n withObservedValues: realWithObservedValues<T>,\n };\n}\n"],"names":[],"mappings":";;AAGA,MAAM,oCAAuC,GAAA;AAAA,EAC3C,OAAS,EAAA;AAAA,IACP,WAAa,EAAA,gBAAA;AAAA,IACb,WAAa,EAAA,SAAA;AAAA,GACf;AAAA,EACA,OAAS,EAAA;AAAA,IACP,WAAa,EAAA,gBAAA;AAAA,IACb,WAAa,EAAA,SAAA;AAAA,GACf;AAAA,EACA,OAAS,EAAA;AAAA,IACP,WAAa,EAAA,gBAAA;AAAA,IACb,WAAa,EAAA,SAAA;AAAA,GACf;AAAA,EACA,YAAc,EAAA;AAAA,IACZ,WAAa,EAAA,sBAAA;AAAA,IACb,WAAa,EAAA,eAAA;AAAA,GACf;AACF,CAAA,CAAA;AAsBA,SAAS,sBAAA,CACP,QACA,EAAA,OAAA,EACA,wBACA,EAAA;AACA,EAAA,KAAA,CAAM,UAAU,MAAM;AACpB,IAAA,IAAI,wBAA0B,EAAA;AAC5B,MAAA,wBAAA,CAAyB,OAAO,CAAA,CAAA;AAAA,KAClC;AAAA,GACC,EAAA,CAAC,OAAS,EAAA,wBAAwB,CAAC,CAAA,CAAA;AACtC,EAAO,OAAA,QAAA,CAAA;AACT,CAAA;AAEO,SAAS,0BACd,IAIA,EAAA;AACA,EAAO,OAAA;AAAA,IACL,qBAAqB,MAAO,CAAA,WAAA;AAAA,MAC1B,IAAA,CAAK,IAAI,CAAC,GAAA,KAAQ,CAAC,GAAK,EAAA,oCAAA,CAAqC,GAAG,CAAC,CAAC,CAAA;AAAA,KACpE;AAAA,IACA,kBAAoB,EAAA,sBAAA;AAAA,GACtB,CAAA;AACF;;;;"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var React = require('react');
|
|
4
|
+
|
|
5
|
+
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
6
|
+
|
|
7
|
+
var React__default = /*#__PURE__*/_interopDefault(React);
|
|
8
|
+
|
|
9
|
+
const ARIA_COMPONENTS_INTERACTION_VARIANTS = {
|
|
10
|
+
hovered: {
|
|
11
|
+
cssSelector: "[data-hovered]",
|
|
12
|
+
displayName: "Hovered"
|
|
13
|
+
},
|
|
14
|
+
pressed: {
|
|
15
|
+
cssSelector: "[data-pressed]",
|
|
16
|
+
displayName: "Pressed"
|
|
17
|
+
},
|
|
18
|
+
focused: {
|
|
19
|
+
cssSelector: "[data-focused]",
|
|
20
|
+
displayName: "Focused"
|
|
21
|
+
},
|
|
22
|
+
focusVisible: {
|
|
23
|
+
cssSelector: "[data-focus-visible]",
|
|
24
|
+
displayName: "Focus Visible"
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
function realWithObservedValues(children, changes, updateInteractionVariant) {
|
|
28
|
+
React__default.default.useEffect(() => {
|
|
29
|
+
if (updateInteractionVariant) {
|
|
30
|
+
updateInteractionVariant(changes);
|
|
31
|
+
}
|
|
32
|
+
}, [changes, updateInteractionVariant]);
|
|
33
|
+
return children;
|
|
34
|
+
}
|
|
35
|
+
function pickAriaComponentVariants(keys) {
|
|
36
|
+
return {
|
|
37
|
+
interactionVariants: Object.fromEntries(
|
|
38
|
+
keys.map((key) => [key, ARIA_COMPONENTS_INTERACTION_VARIANTS[key]])
|
|
39
|
+
),
|
|
40
|
+
withObservedValues: realWithObservedValues
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
exports.pickAriaComponentVariants = pickAriaComponentVariants;
|
|
45
|
+
//# sourceMappingURL=interaction-variant-utils-80bf1cfd.cjs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interaction-variant-utils-80bf1cfd.cjs.js","sources":["../src/interaction-variant-utils.ts"],"sourcesContent":["import { CodeComponentMeta } from \"@plasmicapp/host\";\nimport React from \"react\";\n\nconst ARIA_COMPONENTS_INTERACTION_VARIANTS = {\n hovered: {\n cssSelector: \"[data-hovered]\",\n displayName: \"Hovered\",\n },\n pressed: {\n cssSelector: \"[data-pressed]\",\n displayName: \"Pressed\",\n },\n focused: {\n cssSelector: \"[data-focused]\",\n displayName: \"Focused\",\n },\n focusVisible: {\n cssSelector: \"[data-focus-visible]\",\n displayName: \"Focus Visible\",\n },\n};\n\ntype AriaInteractionVariant = keyof typeof ARIA_COMPONENTS_INTERACTION_VARIANTS;\n\ntype CodeComponentInteractionVariantsMeta = NonNullable<\n CodeComponentMeta<unknown>[\"interactionVariants\"]\n>;\n\ntype InteractionVariantMeta = CodeComponentInteractionVariantsMeta[string];\n\ntype ArrayElement<T> = T extends (infer U)[] ? U : never;\n\nexport type UpdateInteractionVariant<T extends AriaInteractionVariant[]> =\n | ((changes: Partial<Record<ArrayElement<T>, boolean>>) => void)\n | undefined;\n\ntype WithObservedValues<T extends AriaInteractionVariant[]> = (\n children: React.ReactNode,\n state: Record<ArrayElement<T>, boolean>,\n updateInteractionVariant: UpdateInteractionVariant<T>\n) => React.ReactNode;\n\nfunction realWithObservedValues<T extends AriaInteractionVariant[]>(\n children: React.ReactNode,\n changes: Partial<Record<ArrayElement<T>, boolean>>,\n updateInteractionVariant?: UpdateInteractionVariant<T>\n) {\n React.useEffect(() => {\n if (updateInteractionVariant) {\n updateInteractionVariant(changes);\n }\n }, [changes, updateInteractionVariant]);\n return children;\n}\n\nexport function pickAriaComponentVariants<T extends AriaInteractionVariant[]>(\n keys: T\n): {\n interactionVariants: Record<ArrayElement<T>, InteractionVariantMeta>;\n withObservedValues: WithObservedValues<T>;\n} {\n return {\n interactionVariants: Object.fromEntries(\n keys.map((key) => [key, ARIA_COMPONENTS_INTERACTION_VARIANTS[key]])\n ) as Record<ArrayElement<T>, InteractionVariantMeta>,\n withObservedValues: realWithObservedValues<T>,\n };\n}\n"],"names":["React"],"mappings":";;;;;;;;AAGA,MAAM,oCAAuC,GAAA;AAAA,EAC3C,OAAS,EAAA;AAAA,IACP,WAAa,EAAA,gBAAA;AAAA,IACb,WAAa,EAAA,SAAA;AAAA,GACf;AAAA,EACA,OAAS,EAAA;AAAA,IACP,WAAa,EAAA,gBAAA;AAAA,IACb,WAAa,EAAA,SAAA;AAAA,GACf;AAAA,EACA,OAAS,EAAA;AAAA,IACP,WAAa,EAAA,gBAAA;AAAA,IACb,WAAa,EAAA,SAAA;AAAA,GACf;AAAA,EACA,YAAc,EAAA;AAAA,IACZ,WAAa,EAAA,sBAAA;AAAA,IACb,WAAa,EAAA,eAAA;AAAA,GACf;AACF,CAAA,CAAA;AAsBA,SAAS,sBAAA,CACP,QACA,EAAA,OAAA,EACA,wBACA,EAAA;AACA,EAAAA,sBAAA,CAAM,UAAU,MAAM;AACpB,IAAA,IAAI,wBAA0B,EAAA;AAC5B,MAAA,wBAAA,CAAyB,OAAO,CAAA,CAAA;AAAA,KAClC;AAAA,GACC,EAAA,CAAC,OAAS,EAAA,wBAAwB,CAAC,CAAA,CAAA;AACtC,EAAO,OAAA,QAAA,CAAA;AACT,CAAA;AAEO,SAAS,0BACd,IAIA,EAAA;AACA,EAAO,OAAA;AAAA,IACL,qBAAqB,MAAO,CAAA,WAAA;AAAA,MAC1B,IAAA,CAAK,IAAI,CAAC,GAAA,KAAQ,CAAC,GAAK,EAAA,oCAAA,CAAqC,GAAG,CAAC,CAAC,CAAA;AAAA,KACpE;AAAA,IACA,kBAAoB,EAAA,sBAAA;AAAA,GACtB,CAAA;AACF;;;;"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { CodeComponentMeta } from "@plasmicapp/host";
|
|
2
|
+
import React from "react";
|
|
3
|
+
declare const ARIA_COMPONENTS_INTERACTION_VARIANTS: {
|
|
4
|
+
hovered: {
|
|
5
|
+
cssSelector: string;
|
|
6
|
+
displayName: string;
|
|
7
|
+
};
|
|
8
|
+
pressed: {
|
|
9
|
+
cssSelector: string;
|
|
10
|
+
displayName: string;
|
|
11
|
+
};
|
|
12
|
+
focused: {
|
|
13
|
+
cssSelector: string;
|
|
14
|
+
displayName: string;
|
|
15
|
+
};
|
|
16
|
+
focusVisible: {
|
|
17
|
+
cssSelector: string;
|
|
18
|
+
displayName: string;
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
type AriaInteractionVariant = keyof typeof ARIA_COMPONENTS_INTERACTION_VARIANTS;
|
|
22
|
+
type CodeComponentInteractionVariantsMeta = NonNullable<CodeComponentMeta<unknown>["interactionVariants"]>;
|
|
23
|
+
type InteractionVariantMeta = CodeComponentInteractionVariantsMeta[string];
|
|
24
|
+
type ArrayElement<T> = T extends (infer U)[] ? U : never;
|
|
25
|
+
export type UpdateInteractionVariant<T extends AriaInteractionVariant[]> = ((changes: Partial<Record<ArrayElement<T>, boolean>>) => void) | undefined;
|
|
26
|
+
type WithObservedValues<T extends AriaInteractionVariant[]> = (children: React.ReactNode, state: Record<ArrayElement<T>, boolean>, updateInteractionVariant: UpdateInteractionVariant<T>) => React.ReactNode;
|
|
27
|
+
export declare function pickAriaComponentVariants<T extends AriaInteractionVariant[]>(keys: T): {
|
|
28
|
+
interactionVariants: Record<ArrayElement<T>, InteractionVariantMeta>;
|
|
29
|
+
withObservedValues: WithObservedValues<T>;
|
|
30
|
+
};
|
|
31
|
+
export {};
|
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
var React = require('react');
|
|
4
4
|
var reactAriaComponents = require('react-aria-components');
|
|
5
5
|
var common = require('./common-e74a9214.cjs.js');
|
|
6
|
-
var
|
|
6
|
+
var interactionVariantUtils = require('./interaction-variant-utils-80bf1cfd.cjs.js');
|
|
7
|
+
var utils = require('./utils-18b2465b.cjs.js');
|
|
7
8
|
require('@plasmicapp/host/registerComponent');
|
|
8
9
|
|
|
9
10
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
@@ -41,16 +42,38 @@ var __objRest = (source, exclude) => {
|
|
|
41
42
|
}
|
|
42
43
|
return target;
|
|
43
44
|
};
|
|
45
|
+
const BUTTON_INTERACTION_VARIANTS = [
|
|
46
|
+
"hovered",
|
|
47
|
+
"pressed",
|
|
48
|
+
"focused",
|
|
49
|
+
"focusVisible"
|
|
50
|
+
];
|
|
51
|
+
const { interactionVariants, withObservedValues } = interactionVariantUtils.pickAriaComponentVariants(
|
|
52
|
+
BUTTON_INTERACTION_VARIANTS
|
|
53
|
+
);
|
|
44
54
|
function BaseButton(props) {
|
|
45
|
-
const _a = props, {
|
|
55
|
+
const _a = props, {
|
|
56
|
+
submitsForm,
|
|
57
|
+
resetsForm,
|
|
58
|
+
children,
|
|
59
|
+
updateInteractionVariant
|
|
60
|
+
} = _a, rest = __objRest(_a, [
|
|
61
|
+
"submitsForm",
|
|
62
|
+
"resetsForm",
|
|
63
|
+
"children",
|
|
64
|
+
"updateInteractionVariant"
|
|
65
|
+
]);
|
|
46
66
|
const type = submitsForm ? "submit" : resetsForm ? "reset" : "button";
|
|
47
|
-
return /* @__PURE__ */ React__default.default.createElement(reactAriaComponents.Button, __spreadValues({ type }, rest), ({
|
|
48
|
-
|
|
67
|
+
return /* @__PURE__ */ React__default.default.createElement(reactAriaComponents.Button, __spreadValues({ type }, rest), ({ isHovered, isPressed, isFocused, isFocusVisible }) => withObservedValues(
|
|
68
|
+
children,
|
|
49
69
|
{
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
70
|
+
hovered: isHovered,
|
|
71
|
+
pressed: isPressed,
|
|
72
|
+
focused: isFocused,
|
|
73
|
+
focusVisible: isFocusVisible
|
|
74
|
+
},
|
|
75
|
+
updateInteractionVariant
|
|
76
|
+
));
|
|
54
77
|
}
|
|
55
78
|
function registerButton(loader, overrides) {
|
|
56
79
|
utils.registerComponentHelper(
|
|
@@ -61,6 +84,7 @@ function registerButton(loader, overrides) {
|
|
|
61
84
|
displayName: "Aria Button",
|
|
62
85
|
importPath: "@plasmicpkgs/react-aria/skinny/registerButton",
|
|
63
86
|
importName: "BaseButton",
|
|
87
|
+
interactionVariants,
|
|
64
88
|
props: __spreadProps(__spreadValues({}, common.getCommonInputProps("button", [
|
|
65
89
|
"isDisabled",
|
|
66
90
|
"aria-label",
|
|
@@ -81,50 +105,8 @@ function registerButton(loader, overrides) {
|
|
|
81
105
|
hidden: (ps) => Boolean(ps.submitsForm),
|
|
82
106
|
description: "Whether clicking this button should reset the enclosing form.",
|
|
83
107
|
advanced: true
|
|
84
|
-
},
|
|
85
|
-
onPress: {
|
|
86
|
-
type: "eventHandler",
|
|
87
|
-
argTypes: [{ name: "event", type: "object" }]
|
|
88
|
-
},
|
|
89
|
-
onHoverChange: {
|
|
90
|
-
type: "eventHandler",
|
|
91
|
-
argTypes: [{ name: "isHovered", type: "boolean" }]
|
|
92
|
-
},
|
|
93
|
-
onPressChange: {
|
|
94
|
-
type: "eventHandler",
|
|
95
|
-
argTypes: [{ name: "isPressed", type: "boolean" }]
|
|
96
|
-
},
|
|
97
|
-
onFocusChange: {
|
|
98
|
-
type: "eventHandler",
|
|
99
|
-
argTypes: [{ name: "isFocused", type: "boolean" }]
|
|
100
|
-
},
|
|
101
|
-
onFocusVisibleChange: {
|
|
102
|
-
type: "eventHandler",
|
|
103
|
-
argTypes: [{ name: "isFocusVisible", type: "boolean" }]
|
|
104
108
|
}
|
|
105
109
|
}),
|
|
106
|
-
states: {
|
|
107
|
-
isHovered: {
|
|
108
|
-
type: "readonly",
|
|
109
|
-
onChangeProp: "onHoverChange",
|
|
110
|
-
variableType: "boolean"
|
|
111
|
-
},
|
|
112
|
-
isPressed: {
|
|
113
|
-
type: "readonly",
|
|
114
|
-
onChangeProp: "onPressChange",
|
|
115
|
-
variableType: "boolean"
|
|
116
|
-
},
|
|
117
|
-
isFocused: {
|
|
118
|
-
type: "readonly",
|
|
119
|
-
onChangeProp: "onFocusChange",
|
|
120
|
-
variableType: "boolean"
|
|
121
|
-
},
|
|
122
|
-
isFocusVisible: {
|
|
123
|
-
type: "readonly",
|
|
124
|
-
onChangeProp: "onFocusVisibleChange",
|
|
125
|
-
variableType: "boolean"
|
|
126
|
-
}
|
|
127
|
-
},
|
|
128
110
|
trapsFocus: true
|
|
129
111
|
},
|
|
130
112
|
overrides
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registerButton.cjs.js","sources":["../src/registerButton.tsx"],"sourcesContent":["import React from \"react\";\nimport type { ButtonProps } from \"react-aria-components\";\nimport { Button } from \"react-aria-components\";\nimport { getCommonInputProps } from \"./common\";\nimport {\n
|
|
1
|
+
{"version":3,"file":"registerButton.cjs.js","sources":["../src/registerButton.tsx"],"sourcesContent":["import React from \"react\";\nimport type { ButtonProps } from \"react-aria-components\";\nimport { Button } from \"react-aria-components\";\nimport { getCommonInputProps } from \"./common\";\nimport {\n UpdateInteractionVariant,\n pickAriaComponentVariants,\n} from \"./interaction-variant-utils\";\nimport {\n CodeComponentMetaOverrides,\n Registerable,\n makeComponentName,\n registerComponentHelper,\n} from \"./utils\";\n\nconst BUTTON_INTERACTION_VARIANTS = [\n \"hovered\" as const,\n \"pressed\" as const,\n \"focused\" as const,\n \"focusVisible\" as const,\n];\n\nconst { interactionVariants, withObservedValues } = pickAriaComponentVariants(\n BUTTON_INTERACTION_VARIANTS\n);\n\ninterface BaseButtonProps extends ButtonProps {\n children: React.ReactNode;\n resetsForm?: boolean;\n submitsForm?: boolean;\n // Optional callback to update the interaction variant state\n // as it's only provided if the component is the root of a Studio component\n updateInteractionVariant?: UpdateInteractionVariant<\n typeof BUTTON_INTERACTION_VARIANTS\n >;\n}\n\nexport function BaseButton(props: BaseButtonProps) {\n const {\n submitsForm,\n resetsForm,\n children,\n updateInteractionVariant,\n ...rest\n } = props;\n\n const type = submitsForm ? \"submit\" : resetsForm ? \"reset\" : \"button\";\n\n return (\n <Button type={type} {...rest}>\n {({ isHovered, isPressed, isFocused, isFocusVisible }) =>\n withObservedValues(\n children,\n {\n hovered: isHovered,\n pressed: isPressed,\n focused: isFocused,\n focusVisible: isFocusVisible,\n },\n updateInteractionVariant\n )\n }\n </Button>\n );\n}\n\nexport function registerButton(\n loader?: Registerable,\n overrides?: CodeComponentMetaOverrides<typeof BaseButton>\n) {\n registerComponentHelper(\n loader,\n BaseButton,\n {\n name: makeComponentName(\"button\"),\n displayName: \"Aria Button\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerButton\",\n importName: \"BaseButton\",\n interactionVariants,\n props: {\n ...getCommonInputProps<BaseButtonProps>(\"button\", [\n \"isDisabled\",\n \"aria-label\",\n \"children\",\n ]),\n submitsForm: {\n type: \"boolean\",\n displayName: \"Submits form?\",\n defaultValueHint: false,\n hidden: (ps: BaseButtonProps) => Boolean(ps.resetsForm),\n description:\n \"Whether clicking this button should submit the enclosing form.\",\n advanced: true,\n },\n resetsForm: {\n type: \"boolean\",\n displayName: \"Resets form?\",\n defaultValueHint: false,\n hidden: (ps: BaseButtonProps) => Boolean(ps.submitsForm),\n description:\n \"Whether clicking this button should reset the enclosing form.\",\n advanced: true,\n },\n },\n trapsFocus: true,\n },\n overrides\n );\n}\n"],"names":["pickAriaComponentVariants","React","Button","registerComponentHelper","makeComponentName","getCommonInputProps"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAeA,MAAM,2BAA8B,GAAA;AAAA,EAClC,SAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,cAAA;AACF,CAAA,CAAA;AAEA,MAAM,EAAE,mBAAqB,EAAA,kBAAA,EAAuB,GAAAA,iDAAA;AAAA,EAClD,2BAAA;AACF,CAAA,CAAA;AAaO,SAAS,WAAW,KAAwB,EAAA;AACjD,EAAA,MAMI,EALF,GAAA,KAAA,EAAA;AAAA,IAAA,WAAA;AAAA,IACA,UAAA;AAAA,IACA,QAAA;AAAA,IACA,wBAAA;AAAA,GA1CJ,GA4CM,EADC,EAAA,IAAA,GAAA,SAAA,CACD,EADC,EAAA;AAAA,IAJH,aAAA;AAAA,IACA,YAAA;AAAA,IACA,UAAA;AAAA,IACA,0BAAA;AAAA,GAAA,CAAA,CAAA;AAIF,EAAA,MAAM,IAAO,GAAA,WAAA,GAAc,QAAW,GAAA,UAAA,GAAa,OAAU,GAAA,QAAA,CAAA;AAE7D,EACE,uBAAAC,sBAAA,CAAA,aAAA,CAACC,0BAAO,EAAA,cAAA,CAAA,EAAA,IAAA,EAAA,EAAgB,IACrB,CAAA,EAAA,CAAC,EAAE,SAAW,EAAA,SAAA,EAAW,SAAW,EAAA,cAAA,EACnC,KAAA,kBAAA;AAAA,IACE,QAAA;AAAA,IACA;AAAA,MACE,OAAS,EAAA,SAAA;AAAA,MACT,OAAS,EAAA,SAAA;AAAA,MACT,OAAS,EAAA,SAAA;AAAA,MACT,YAAc,EAAA,cAAA;AAAA,KAChB;AAAA,IACA,wBAAA;AAAA,GAGN,CAAA,CAAA;AAEJ,CAAA;AAEgB,SAAA,cAAA,CACd,QACA,SACA,EAAA;AACA,EAAAC,6BAAA;AAAA,IACE,MAAA;AAAA,IACA,UAAA;AAAA,IACA;AAAA,MACE,IAAA,EAAMC,wBAAkB,QAAQ,CAAA;AAAA,MAChC,WAAa,EAAA,aAAA;AAAA,MACb,UAAY,EAAA,+CAAA;AAAA,MACZ,UAAY,EAAA,YAAA;AAAA,MACZ,mBAAA;AAAA,MACA,KAAA,EAAO,aACF,CAAA,cAAA,CAAA,EAAA,EAAAC,0BAAA,CAAqC,QAAU,EAAA;AAAA,QAChD,YAAA;AAAA,QACA,YAAA;AAAA,QACA,UAAA;AAAA,OACD,CALI,CAAA,EAAA;AAAA,QAML,WAAa,EAAA;AAAA,UACX,IAAM,EAAA,SAAA;AAAA,UACN,WAAa,EAAA,eAAA;AAAA,UACb,gBAAkB,EAAA,KAAA;AAAA,UAClB,MAAQ,EAAA,CAAC,EAAwB,KAAA,OAAA,CAAQ,GAAG,UAAU,CAAA;AAAA,UACtD,WACE,EAAA,gEAAA;AAAA,UACF,QAAU,EAAA,IAAA;AAAA,SACZ;AAAA,QACA,UAAY,EAAA;AAAA,UACV,IAAM,EAAA,SAAA;AAAA,UACN,WAAa,EAAA,cAAA;AAAA,UACb,gBAAkB,EAAA,KAAA;AAAA,UAClB,MAAQ,EAAA,CAAC,EAAwB,KAAA,OAAA,CAAQ,GAAG,WAAW,CAAA;AAAA,UACvD,WACE,EAAA,+DAAA;AAAA,UACF,QAAU,EAAA,IAAA;AAAA,SACZ;AAAA,OACF,CAAA;AAAA,MACA,UAAY,EAAA,IAAA;AAAA,KACd;AAAA,IACA,SAAA;AAAA,GACF,CAAA;AACF;;;;;"}
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import type { ButtonProps } from "react-aria-components";
|
|
3
|
+
import { UpdateInteractionVariant } from "./interaction-variant-utils";
|
|
3
4
|
import { CodeComponentMetaOverrides, Registerable } from "./utils";
|
|
5
|
+
declare const BUTTON_INTERACTION_VARIANTS: ("hovered" | "pressed" | "focused" | "focusVisible")[];
|
|
4
6
|
interface BaseButtonProps extends ButtonProps {
|
|
7
|
+
children: React.ReactNode;
|
|
5
8
|
resetsForm?: boolean;
|
|
6
9
|
submitsForm?: boolean;
|
|
7
|
-
|
|
10
|
+
updateInteractionVariant?: UpdateInteractionVariant<typeof BUTTON_INTERACTION_VARIANTS>;
|
|
8
11
|
}
|
|
9
12
|
export declare function BaseButton(props: BaseButtonProps): React.JSX.Element;
|
|
10
13
|
export declare function registerButton(loader?: Registerable, overrides?: CodeComponentMetaOverrides<typeof BaseButton>): void;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { Button } from 'react-aria-components';
|
|
3
3
|
import { g as getCommonInputProps } from './common-52c26d37.esm.js';
|
|
4
|
-
import {
|
|
4
|
+
import { p as pickAriaComponentVariants } from './interaction-variant-utils-608d984b.esm.js';
|
|
5
|
+
import { r as registerComponentHelper, m as makeComponentName } from './utils-cf2632c9.esm.js';
|
|
5
6
|
import '@plasmicapp/host/registerComponent';
|
|
6
7
|
|
|
7
8
|
var __defProp = Object.defineProperty;
|
|
@@ -35,16 +36,38 @@ var __objRest = (source, exclude) => {
|
|
|
35
36
|
}
|
|
36
37
|
return target;
|
|
37
38
|
};
|
|
39
|
+
const BUTTON_INTERACTION_VARIANTS = [
|
|
40
|
+
"hovered",
|
|
41
|
+
"pressed",
|
|
42
|
+
"focused",
|
|
43
|
+
"focusVisible"
|
|
44
|
+
];
|
|
45
|
+
const { interactionVariants, withObservedValues } = pickAriaComponentVariants(
|
|
46
|
+
BUTTON_INTERACTION_VARIANTS
|
|
47
|
+
);
|
|
38
48
|
function BaseButton(props) {
|
|
39
|
-
const _a = props, {
|
|
49
|
+
const _a = props, {
|
|
50
|
+
submitsForm,
|
|
51
|
+
resetsForm,
|
|
52
|
+
children,
|
|
53
|
+
updateInteractionVariant
|
|
54
|
+
} = _a, rest = __objRest(_a, [
|
|
55
|
+
"submitsForm",
|
|
56
|
+
"resetsForm",
|
|
57
|
+
"children",
|
|
58
|
+
"updateInteractionVariant"
|
|
59
|
+
]);
|
|
40
60
|
const type = submitsForm ? "submit" : resetsForm ? "reset" : "button";
|
|
41
|
-
return /* @__PURE__ */ React.createElement(Button, __spreadValues({ type }, rest), ({
|
|
42
|
-
|
|
61
|
+
return /* @__PURE__ */ React.createElement(Button, __spreadValues({ type }, rest), ({ isHovered, isPressed, isFocused, isFocusVisible }) => withObservedValues(
|
|
62
|
+
children,
|
|
43
63
|
{
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
64
|
+
hovered: isHovered,
|
|
65
|
+
pressed: isPressed,
|
|
66
|
+
focused: isFocused,
|
|
67
|
+
focusVisible: isFocusVisible
|
|
68
|
+
},
|
|
69
|
+
updateInteractionVariant
|
|
70
|
+
));
|
|
48
71
|
}
|
|
49
72
|
function registerButton(loader, overrides) {
|
|
50
73
|
registerComponentHelper(
|
|
@@ -55,6 +78,7 @@ function registerButton(loader, overrides) {
|
|
|
55
78
|
displayName: "Aria Button",
|
|
56
79
|
importPath: "@plasmicpkgs/react-aria/skinny/registerButton",
|
|
57
80
|
importName: "BaseButton",
|
|
81
|
+
interactionVariants,
|
|
58
82
|
props: __spreadProps(__spreadValues({}, getCommonInputProps("button", [
|
|
59
83
|
"isDisabled",
|
|
60
84
|
"aria-label",
|
|
@@ -75,50 +99,8 @@ function registerButton(loader, overrides) {
|
|
|
75
99
|
hidden: (ps) => Boolean(ps.submitsForm),
|
|
76
100
|
description: "Whether clicking this button should reset the enclosing form.",
|
|
77
101
|
advanced: true
|
|
78
|
-
},
|
|
79
|
-
onPress: {
|
|
80
|
-
type: "eventHandler",
|
|
81
|
-
argTypes: [{ name: "event", type: "object" }]
|
|
82
|
-
},
|
|
83
|
-
onHoverChange: {
|
|
84
|
-
type: "eventHandler",
|
|
85
|
-
argTypes: [{ name: "isHovered", type: "boolean" }]
|
|
86
|
-
},
|
|
87
|
-
onPressChange: {
|
|
88
|
-
type: "eventHandler",
|
|
89
|
-
argTypes: [{ name: "isPressed", type: "boolean" }]
|
|
90
|
-
},
|
|
91
|
-
onFocusChange: {
|
|
92
|
-
type: "eventHandler",
|
|
93
|
-
argTypes: [{ name: "isFocused", type: "boolean" }]
|
|
94
|
-
},
|
|
95
|
-
onFocusVisibleChange: {
|
|
96
|
-
type: "eventHandler",
|
|
97
|
-
argTypes: [{ name: "isFocusVisible", type: "boolean" }]
|
|
98
102
|
}
|
|
99
103
|
}),
|
|
100
|
-
states: {
|
|
101
|
-
isHovered: {
|
|
102
|
-
type: "readonly",
|
|
103
|
-
onChangeProp: "onHoverChange",
|
|
104
|
-
variableType: "boolean"
|
|
105
|
-
},
|
|
106
|
-
isPressed: {
|
|
107
|
-
type: "readonly",
|
|
108
|
-
onChangeProp: "onPressChange",
|
|
109
|
-
variableType: "boolean"
|
|
110
|
-
},
|
|
111
|
-
isFocused: {
|
|
112
|
-
type: "readonly",
|
|
113
|
-
onChangeProp: "onFocusChange",
|
|
114
|
-
variableType: "boolean"
|
|
115
|
-
},
|
|
116
|
-
isFocusVisible: {
|
|
117
|
-
type: "readonly",
|
|
118
|
-
onChangeProp: "onFocusVisibleChange",
|
|
119
|
-
variableType: "boolean"
|
|
120
|
-
}
|
|
121
|
-
},
|
|
122
104
|
trapsFocus: true
|
|
123
105
|
},
|
|
124
106
|
overrides
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registerButton.esm.js","sources":["../src/registerButton.tsx"],"sourcesContent":["import React from \"react\";\nimport type { ButtonProps } from \"react-aria-components\";\nimport { Button } from \"react-aria-components\";\nimport { getCommonInputProps } from \"./common\";\nimport {\n
|
|
1
|
+
{"version":3,"file":"registerButton.esm.js","sources":["../src/registerButton.tsx"],"sourcesContent":["import React from \"react\";\nimport type { ButtonProps } from \"react-aria-components\";\nimport { Button } from \"react-aria-components\";\nimport { getCommonInputProps } from \"./common\";\nimport {\n UpdateInteractionVariant,\n pickAriaComponentVariants,\n} from \"./interaction-variant-utils\";\nimport {\n CodeComponentMetaOverrides,\n Registerable,\n makeComponentName,\n registerComponentHelper,\n} from \"./utils\";\n\nconst BUTTON_INTERACTION_VARIANTS = [\n \"hovered\" as const,\n \"pressed\" as const,\n \"focused\" as const,\n \"focusVisible\" as const,\n];\n\nconst { interactionVariants, withObservedValues } = pickAriaComponentVariants(\n BUTTON_INTERACTION_VARIANTS\n);\n\ninterface BaseButtonProps extends ButtonProps {\n children: React.ReactNode;\n resetsForm?: boolean;\n submitsForm?: boolean;\n // Optional callback to update the interaction variant state\n // as it's only provided if the component is the root of a Studio component\n updateInteractionVariant?: UpdateInteractionVariant<\n typeof BUTTON_INTERACTION_VARIANTS\n >;\n}\n\nexport function BaseButton(props: BaseButtonProps) {\n const {\n submitsForm,\n resetsForm,\n children,\n updateInteractionVariant,\n ...rest\n } = props;\n\n const type = submitsForm ? \"submit\" : resetsForm ? \"reset\" : \"button\";\n\n return (\n <Button type={type} {...rest}>\n {({ isHovered, isPressed, isFocused, isFocusVisible }) =>\n withObservedValues(\n children,\n {\n hovered: isHovered,\n pressed: isPressed,\n focused: isFocused,\n focusVisible: isFocusVisible,\n },\n updateInteractionVariant\n )\n }\n </Button>\n );\n}\n\nexport function registerButton(\n loader?: Registerable,\n overrides?: CodeComponentMetaOverrides<typeof BaseButton>\n) {\n registerComponentHelper(\n loader,\n BaseButton,\n {\n name: makeComponentName(\"button\"),\n displayName: \"Aria Button\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerButton\",\n importName: \"BaseButton\",\n interactionVariants,\n props: {\n ...getCommonInputProps<BaseButtonProps>(\"button\", [\n \"isDisabled\",\n \"aria-label\",\n \"children\",\n ]),\n submitsForm: {\n type: \"boolean\",\n displayName: \"Submits form?\",\n defaultValueHint: false,\n hidden: (ps: BaseButtonProps) => Boolean(ps.resetsForm),\n description:\n \"Whether clicking this button should submit the enclosing form.\",\n advanced: true,\n },\n resetsForm: {\n type: \"boolean\",\n displayName: \"Resets form?\",\n defaultValueHint: false,\n hidden: (ps: BaseButtonProps) => Boolean(ps.submitsForm),\n description:\n \"Whether clicking this button should reset the enclosing form.\",\n advanced: true,\n },\n },\n trapsFocus: true,\n },\n overrides\n );\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAeA,MAAM,2BAA8B,GAAA;AAAA,EAClC,SAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,cAAA;AACF,CAAA,CAAA;AAEA,MAAM,EAAE,mBAAqB,EAAA,kBAAA,EAAuB,GAAA,yBAAA;AAAA,EAClD,2BAAA;AACF,CAAA,CAAA;AAaO,SAAS,WAAW,KAAwB,EAAA;AACjD,EAAA,MAMI,EALF,GAAA,KAAA,EAAA;AAAA,IAAA,WAAA;AAAA,IACA,UAAA;AAAA,IACA,QAAA;AAAA,IACA,wBAAA;AAAA,GA1CJ,GA4CM,EADC,EAAA,IAAA,GAAA,SAAA,CACD,EADC,EAAA;AAAA,IAJH,aAAA;AAAA,IACA,YAAA;AAAA,IACA,UAAA;AAAA,IACA,0BAAA;AAAA,GAAA,CAAA,CAAA;AAIF,EAAA,MAAM,IAAO,GAAA,WAAA,GAAc,QAAW,GAAA,UAAA,GAAa,OAAU,GAAA,QAAA,CAAA;AAE7D,EACE,uBAAA,KAAA,CAAA,aAAA,CAAC,MAAO,EAAA,cAAA,CAAA,EAAA,IAAA,EAAA,EAAgB,IACrB,CAAA,EAAA,CAAC,EAAE,SAAW,EAAA,SAAA,EAAW,SAAW,EAAA,cAAA,EACnC,KAAA,kBAAA;AAAA,IACE,QAAA;AAAA,IACA;AAAA,MACE,OAAS,EAAA,SAAA;AAAA,MACT,OAAS,EAAA,SAAA;AAAA,MACT,OAAS,EAAA,SAAA;AAAA,MACT,YAAc,EAAA,cAAA;AAAA,KAChB;AAAA,IACA,wBAAA;AAAA,GAGN,CAAA,CAAA;AAEJ,CAAA;AAEgB,SAAA,cAAA,CACd,QACA,SACA,EAAA;AACA,EAAA,uBAAA;AAAA,IACE,MAAA;AAAA,IACA,UAAA;AAAA,IACA;AAAA,MACE,IAAA,EAAM,kBAAkB,QAAQ,CAAA;AAAA,MAChC,WAAa,EAAA,aAAA;AAAA,MACb,UAAY,EAAA,+CAAA;AAAA,MACZ,UAAY,EAAA,YAAA;AAAA,MACZ,mBAAA;AAAA,MACA,KAAA,EAAO,aACF,CAAA,cAAA,CAAA,EAAA,EAAA,mBAAA,CAAqC,QAAU,EAAA;AAAA,QAChD,YAAA;AAAA,QACA,YAAA;AAAA,QACA,UAAA;AAAA,OACD,CALI,CAAA,EAAA;AAAA,QAML,WAAa,EAAA;AAAA,UACX,IAAM,EAAA,SAAA;AAAA,UACN,WAAa,EAAA,eAAA;AAAA,UACb,gBAAkB,EAAA,KAAA;AAAA,UAClB,MAAQ,EAAA,CAAC,EAAwB,KAAA,OAAA,CAAQ,GAAG,UAAU,CAAA;AAAA,UACtD,WACE,EAAA,gEAAA;AAAA,UACF,QAAU,EAAA,IAAA;AAAA,SACZ;AAAA,QACA,UAAY,EAAA;AAAA,UACV,IAAM,EAAA,SAAA;AAAA,UACN,WAAa,EAAA,cAAA;AAAA,UACb,gBAAkB,EAAA,KAAA;AAAA,UAClB,MAAQ,EAAA,CAAC,EAAwB,KAAA,OAAA,CAAQ,GAAG,WAAW,CAAA;AAAA,UACvD,WACE,EAAA,+DAAA;AAAA,UACF,QAAU,EAAA,IAAA;AAAA,SACZ;AAAA,OACF,CAAA;AAAA,MACA,UAAY,EAAA,IAAA;AAAA,KACd;AAAA,IACA,SAAA;AAAA,GACF,CAAA;AACF;;;;"}
|