@plasmicpkgs/react-aria 0.0.108 → 0.0.110

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.
Files changed (46) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/react-aria.esm.js +13 -12
  3. package/dist/react-aria.esm.js.map +1 -1
  4. package/dist/react-aria.js +13 -12
  5. package/dist/react-aria.js.map +1 -1
  6. package/package.json +2 -2
  7. package/skinny/registerButton.cjs.js +0 -3
  8. package/skinny/registerButton.cjs.js.map +1 -1
  9. package/skinny/registerButton.esm.js +0 -3
  10. package/skinny/registerButton.esm.js.map +1 -1
  11. package/skinny/registerDialogTrigger.cjs.js +2 -2
  12. package/skinny/registerDialogTrigger.cjs.js.map +1 -1
  13. package/skinny/registerDialogTrigger.esm.js +2 -2
  14. package/skinny/registerDialogTrigger.esm.js.map +1 -1
  15. package/skinny/registerDialogTrigger.stories.cjs.js +2 -19
  16. package/skinny/registerDialogTrigger.stories.cjs.js.map +1 -1
  17. package/skinny/registerDialogTrigger.stories.esm.js +2 -19
  18. package/skinny/registerDialogTrigger.stories.esm.js.map +1 -1
  19. package/skinny/registerModal.cjs.js +1 -1
  20. package/skinny/registerModal.cjs.js.map +1 -1
  21. package/skinny/registerModal.esm.js +1 -1
  22. package/skinny/registerModal.esm.js.map +1 -1
  23. package/skinny/registerSelect.cjs.js +2 -0
  24. package/skinny/registerSelect.cjs.js.map +1 -1
  25. package/skinny/registerSelect.esm.js +2 -0
  26. package/skinny/registerSelect.esm.js.map +1 -1
  27. package/skinny/registerSelect.stories.cjs.js +39 -0
  28. package/skinny/registerSelect.stories.cjs.js.map +1 -1
  29. package/skinny/registerSelect.stories.esm.js +38 -1
  30. package/skinny/registerSelect.stories.esm.js.map +1 -1
  31. package/skinny/registerSlider.stories.cjs.js +16 -35
  32. package/skinny/registerSlider.stories.cjs.js.map +1 -1
  33. package/skinny/registerSlider.stories.esm.js +17 -37
  34. package/skinny/registerSlider.stories.esm.js.map +1 -1
  35. package/skinny/registerSliderTrack.cjs.js +6 -4
  36. package/skinny/registerSliderTrack.cjs.js.map +1 -1
  37. package/skinny/registerSliderTrack.esm.js +7 -5
  38. package/skinny/registerSliderTrack.esm.js.map +1 -1
  39. package/skinny/registerTooltip.cjs.js +2 -2
  40. package/skinny/registerTooltip.cjs.js.map +1 -1
  41. package/skinny/registerTooltip.esm.js +2 -2
  42. package/skinny/registerTooltip.esm.js.map +1 -1
  43. package/skinny/registerTooltip.stories.cjs.js +2 -18
  44. package/skinny/registerTooltip.stories.cjs.js.map +1 -1
  45. package/skinny/registerTooltip.stories.esm.js +2 -18
  46. package/skinny/registerTooltip.stories.esm.js.map +1 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plasmicpkgs/react-aria",
3
- "version": "0.0.108",
3
+ "version": "0.0.110",
4
4
  "description": "Plasmic registration calls for react-aria based components",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -76,5 +76,5 @@
76
76
  "publishConfig": {
77
77
  "access": "public"
78
78
  },
79
- "gitHead": "cc7b44b1e32b357187337620ba2cc16928eee53d"
79
+ "gitHead": "2ec7914db4c5e00534ea68d10c96b00d44b9bb80"
80
80
  }
@@ -52,9 +52,6 @@ const BUTTON_VARIANTS = [
52
52
  "disabled"
53
53
  ];
54
54
  const { variants, withObservedValues } = variantUtils.pickAriaComponentVariants(BUTTON_VARIANTS);
55
- console.log(
56
- "TODO: This comment was added just to trigger changes in the react-aria package so lerna builds the react-aria package during storybook_tests CI step."
57
- );
58
55
  const BaseButton = React__default.default.forwardRef(function BaseButtonInner(props, ref) {
59
56
  const { href } = props;
60
57
  if (href) {
@@ -1 +1 @@
1
- {"version":3,"file":"registerButton.cjs.js","sources":["../src/registerButton.tsx"],"sourcesContent":["import { usePlasmicLink } from \"@plasmicapp/host\";\nimport React from \"react\";\nimport { mergeProps, useFocusRing, useHover, useLink } from \"react-aria\";\nimport type { ButtonProps, LinkProps } from \"react-aria-components\";\nimport { Button } from \"react-aria-components\";\nimport { COMMON_STYLES, getCommonProps } from \"./common\";\nimport {\n CodeComponentMetaOverrides,\n makeComponentName,\n Registerable,\n registerComponentHelper,\n} from \"./utils\";\nimport { pickAriaComponentVariants, WithVariants } from \"./variant-utils\";\n\nconst BUTTON_VARIANTS = [\n \"hovered\" as const,\n \"pressed\" as const,\n \"focused\" as const,\n \"focusVisible\" as const,\n \"disabled\" as const,\n];\n\nconst { variants, withObservedValues } =\n pickAriaComponentVariants(BUTTON_VARIANTS);\n\ntype CommonProps = { children: React.ReactNode } & Omit<\n ButtonProps,\n \"className\" | \"children\"\n> &\n Omit<LinkProps, \"className\" | \"children\">;\ntype LinkSpecificProps = Pick<LinkProps, \"href\" | \"target\">;\ntype ButtonSpecificProps = {\n resetsForm?: boolean;\n submitsForm?: boolean;\n};\n\nconsole.log(\n \"TODO: This comment was added just to trigger changes in the react-aria package so lerna builds the react-aria package during storybook_tests CI step.\"\n);\n\nexport interface BaseButtonProps\n extends CommonProps,\n LinkSpecificProps,\n ButtonSpecificProps,\n WithVariants<typeof BUTTON_VARIANTS> {\n children: React.ReactNode;\n className?: string;\n}\n\nexport const BaseButton = React.forwardRef(function BaseButtonInner(\n props: BaseButtonProps,\n ref: React.Ref<HTMLButtonElement | HTMLAnchorElement>\n) {\n const { href } = props;\n\n if (href) {\n return (\n <LinkButton\n props={props}\n ref={ref as React.RefObject<HTMLAnchorElement>}\n />\n );\n } else {\n const { submitsForm, resetsForm, children, plasmicUpdateVariant, ...rest } =\n props;\n const type = submitsForm ? \"submit\" : resetsForm ? \"reset\" : \"button\";\n\n const buttonProps = mergeProps(rest, {\n type,\n style: COMMON_STYLES,\n ref: ref as React.Ref<HTMLButtonElement>,\n });\n\n return (\n <Button {...buttonProps}>\n {({ isHovered, isPressed, isFocused, isFocusVisible, isDisabled }) =>\n withObservedValues(\n children,\n {\n hovered: isHovered,\n pressed: isPressed,\n focused: isFocused,\n focusVisible: isFocusVisible,\n disabled: isDisabled,\n },\n plasmicUpdateVariant\n )\n }\n </Button>\n );\n }\n});\n\nfunction LinkButton({\n props,\n ref,\n}: {\n props: BaseButtonProps;\n ref: React.RefObject<HTMLAnchorElement>;\n}) {\n const { href, children, plasmicUpdateVariant, ...rest } = props;\n const PlasmicLink = usePlasmicLink();\n const { linkProps, isPressed } = useLink(props, ref);\n const { hoverProps, isHovered } = useHover(props);\n const { focusProps, isFocused, isFocusVisible } = useFocusRing();\n\n const combinedLinkProps = mergeProps(linkProps, hoverProps, focusProps, {\n href,\n className: props.className,\n style: COMMON_STYLES,\n ref,\n });\n\n return (\n <PlasmicLink\n {...combinedLinkProps}\n data-focused={isFocused || undefined}\n data-hovered={isHovered || undefined}\n data-pressed={isPressed || undefined}\n data-focus-visible={isFocusVisible || undefined}\n data-disabled={props.isDisabled || undefined}\n >\n {withObservedValues(\n children,\n {\n hovered: isHovered,\n pressed: isPressed,\n focused: isFocused,\n focusVisible: isFocusVisible,\n disabled: !!rest.isDisabled,\n },\n plasmicUpdateVariant\n )}\n </PlasmicLink>\n );\n}\n\nexport const BUTTON_COMPONENT_NAME = makeComponentName(\"button\");\n\nexport function registerButton(\n loader?: Registerable,\n overrides?: CodeComponentMetaOverrides<typeof BaseButton>\n) {\n registerComponentHelper(\n loader,\n BaseButton,\n {\n name: BUTTON_COMPONENT_NAME,\n displayName: \"Aria Button\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerButton\",\n importName: \"BaseButton\",\n variants,\n defaultStyles: {\n // Ensure consistent design across rendered elements (button, anchor tag).\n backgroundColor: \"#EFEFEF\",\n borderColor: \"black\",\n borderStyle: \"solid\",\n borderWidth: \"1px\",\n color: \"#000000\",\n cursor: \"pointer\",\n fontFamily: \"Arial\",\n fontSize: \"1rem\",\n lineHeight: \"1.2\",\n padding: \"2px 10px\",\n textDecorationLine: \"none\",\n },\n props: {\n ...getCommonProps<BaseButtonProps>(\"button\", [\n \"autoFocus\",\n \"isDisabled\",\n \"aria-label\",\n ]),\n children: {\n type: \"slot\",\n mergeWithParent: true,\n defaultValue: {\n type: \"text\",\n value: \"Button\",\n },\n },\n href: {\n type: \"href\",\n description:\n \"The URL this button navigates to. If present, this button is an <a> element.\",\n },\n target: {\n type: \"choice\",\n options: [\"_blank\", \"_self\", \"_parent\", \"_top\"],\n description:\n \"Same as target attribute of <a> element. Only applies when the href prop is present.\",\n hidden: (props) => !props.href,\n defaultValueHint: \"_self\",\n },\n submitsForm: {\n type: \"boolean\",\n displayName: \"Submits form?\",\n defaultValueHint: false,\n hidden: (props) => Boolean(props.resetsForm) || Boolean(props.href),\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: (props) => Boolean(props.submitsForm) || Boolean(props.href),\n description:\n \"Whether clicking this button should reset the enclosing form.\",\n advanced: true,\n },\n onPress: {\n type: \"eventHandler\",\n argTypes: [{ name: \"event\", type: \"object\" }],\n },\n onFocus: {\n type: \"eventHandler\",\n argTypes: [{ name: \"event\", type: \"object\" }],\n },\n },\n trapsFocus: true,\n },\n overrides\n );\n}\n"],"names":["pickAriaComponentVariants","React","mergeProps","COMMON_STYLES","Button","usePlasmicLink","useLink","useHover","useFocusRing","makeComponentName","registerComponentHelper","getCommonProps"],"mappings":"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"}
1
+ {"version":3,"file":"registerButton.cjs.js","sources":["../src/registerButton.tsx"],"sourcesContent":["import { usePlasmicLink } from \"@plasmicapp/host\";\nimport React from \"react\";\nimport { mergeProps, useFocusRing, useHover, useLink } from \"react-aria\";\nimport type { ButtonProps, LinkProps } from \"react-aria-components\";\nimport { Button } from \"react-aria-components\";\nimport { COMMON_STYLES, getCommonProps } from \"./common\";\nimport {\n CodeComponentMetaOverrides,\n makeComponentName,\n Registerable,\n registerComponentHelper,\n} from \"./utils\";\nimport { pickAriaComponentVariants, WithVariants } from \"./variant-utils\";\n\nconst BUTTON_VARIANTS = [\n \"hovered\" as const,\n \"pressed\" as const,\n \"focused\" as const,\n \"focusVisible\" as const,\n \"disabled\" as const,\n];\n\nconst { variants, withObservedValues } =\n pickAriaComponentVariants(BUTTON_VARIANTS);\n\ntype CommonProps = { children: React.ReactNode } & Omit<\n ButtonProps,\n \"className\" | \"children\"\n> &\n Omit<LinkProps, \"className\" | \"children\">;\ntype LinkSpecificProps = Pick<LinkProps, \"href\" | \"target\">;\ntype ButtonSpecificProps = {\n resetsForm?: boolean;\n submitsForm?: boolean;\n};\n\nexport interface BaseButtonProps\n extends CommonProps,\n LinkSpecificProps,\n ButtonSpecificProps,\n WithVariants<typeof BUTTON_VARIANTS> {\n children: React.ReactNode;\n className?: string;\n}\n\nexport const BaseButton = React.forwardRef(function BaseButtonInner(\n props: BaseButtonProps,\n ref: React.Ref<HTMLButtonElement | HTMLAnchorElement>\n) {\n const { href } = props;\n\n if (href) {\n return (\n <LinkButton\n props={props}\n ref={ref as React.RefObject<HTMLAnchorElement>}\n />\n );\n } else {\n const { submitsForm, resetsForm, children, plasmicUpdateVariant, ...rest } =\n props;\n const type = submitsForm ? \"submit\" : resetsForm ? \"reset\" : \"button\";\n\n const buttonProps = mergeProps(rest, {\n type,\n style: COMMON_STYLES,\n ref: ref as React.Ref<HTMLButtonElement>,\n });\n\n return (\n <Button {...buttonProps}>\n {({ isHovered, isPressed, isFocused, isFocusVisible, isDisabled }) =>\n withObservedValues(\n children,\n {\n hovered: isHovered,\n pressed: isPressed,\n focused: isFocused,\n focusVisible: isFocusVisible,\n disabled: isDisabled,\n },\n plasmicUpdateVariant\n )\n }\n </Button>\n );\n }\n});\n\nfunction LinkButton({\n props,\n ref,\n}: {\n props: BaseButtonProps;\n ref: React.RefObject<HTMLAnchorElement>;\n}) {\n const { href, children, plasmicUpdateVariant, ...rest } = props;\n const PlasmicLink = usePlasmicLink();\n const { linkProps, isPressed } = useLink(props, ref);\n const { hoverProps, isHovered } = useHover(props);\n const { focusProps, isFocused, isFocusVisible } = useFocusRing();\n\n const combinedLinkProps = mergeProps(linkProps, hoverProps, focusProps, {\n href,\n className: props.className,\n style: COMMON_STYLES,\n ref,\n });\n\n return (\n <PlasmicLink\n {...combinedLinkProps}\n data-focused={isFocused || undefined}\n data-hovered={isHovered || undefined}\n data-pressed={isPressed || undefined}\n data-focus-visible={isFocusVisible || undefined}\n data-disabled={props.isDisabled || undefined}\n >\n {withObservedValues(\n children,\n {\n hovered: isHovered,\n pressed: isPressed,\n focused: isFocused,\n focusVisible: isFocusVisible,\n disabled: !!rest.isDisabled,\n },\n plasmicUpdateVariant\n )}\n </PlasmicLink>\n );\n}\n\nexport const BUTTON_COMPONENT_NAME = makeComponentName(\"button\");\n\nexport function registerButton(\n loader?: Registerable,\n overrides?: CodeComponentMetaOverrides<typeof BaseButton>\n) {\n registerComponentHelper(\n loader,\n BaseButton,\n {\n name: BUTTON_COMPONENT_NAME,\n displayName: \"Aria Button\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerButton\",\n importName: \"BaseButton\",\n variants,\n defaultStyles: {\n // Ensure consistent design across rendered elements (button, anchor tag).\n backgroundColor: \"#EFEFEF\",\n borderColor: \"black\",\n borderStyle: \"solid\",\n borderWidth: \"1px\",\n color: \"#000000\",\n cursor: \"pointer\",\n fontFamily: \"Arial\",\n fontSize: \"1rem\",\n lineHeight: \"1.2\",\n padding: \"2px 10px\",\n textDecorationLine: \"none\",\n },\n props: {\n ...getCommonProps<BaseButtonProps>(\"button\", [\n \"autoFocus\",\n \"isDisabled\",\n \"aria-label\",\n ]),\n children: {\n type: \"slot\",\n mergeWithParent: true,\n defaultValue: {\n type: \"text\",\n value: \"Button\",\n },\n },\n href: {\n type: \"href\",\n description:\n \"The URL this button navigates to. If present, this button is an <a> element.\",\n },\n target: {\n type: \"choice\",\n options: [\"_blank\", \"_self\", \"_parent\", \"_top\"],\n description:\n \"Same as target attribute of <a> element. Only applies when the href prop is present.\",\n hidden: (props) => !props.href,\n defaultValueHint: \"_self\",\n },\n submitsForm: {\n type: \"boolean\",\n displayName: \"Submits form?\",\n defaultValueHint: false,\n hidden: (props) => Boolean(props.resetsForm) || Boolean(props.href),\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: (props) => Boolean(props.submitsForm) || Boolean(props.href),\n description:\n \"Whether clicking this button should reset the enclosing form.\",\n advanced: true,\n },\n onPress: {\n type: \"eventHandler\",\n argTypes: [{ name: \"event\", type: \"object\" }],\n },\n onFocus: {\n type: \"eventHandler\",\n argTypes: [{ name: \"event\", type: \"object\" }],\n },\n },\n trapsFocus: true,\n },\n overrides\n );\n}\n"],"names":["pickAriaComponentVariants","React","mergeProps","COMMON_STYLES","Button","usePlasmicLink","useLink","useHover","useFocusRing","makeComponentName","registerComponentHelper","getCommonProps"],"mappings":"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"}
@@ -46,9 +46,6 @@ const BUTTON_VARIANTS = [
46
46
  "disabled"
47
47
  ];
48
48
  const { variants, withObservedValues } = pickAriaComponentVariants(BUTTON_VARIANTS);
49
- console.log(
50
- "TODO: This comment was added just to trigger changes in the react-aria package so lerna builds the react-aria package during storybook_tests CI step."
51
- );
52
49
  const BaseButton = React.forwardRef(function BaseButtonInner(props, ref) {
53
50
  const { href } = props;
54
51
  if (href) {
@@ -1 +1 @@
1
- {"version":3,"file":"registerButton.esm.js","sources":["../src/registerButton.tsx"],"sourcesContent":["import { usePlasmicLink } from \"@plasmicapp/host\";\nimport React from \"react\";\nimport { mergeProps, useFocusRing, useHover, useLink } from \"react-aria\";\nimport type { ButtonProps, LinkProps } from \"react-aria-components\";\nimport { Button } from \"react-aria-components\";\nimport { COMMON_STYLES, getCommonProps } from \"./common\";\nimport {\n CodeComponentMetaOverrides,\n makeComponentName,\n Registerable,\n registerComponentHelper,\n} from \"./utils\";\nimport { pickAriaComponentVariants, WithVariants } from \"./variant-utils\";\n\nconst BUTTON_VARIANTS = [\n \"hovered\" as const,\n \"pressed\" as const,\n \"focused\" as const,\n \"focusVisible\" as const,\n \"disabled\" as const,\n];\n\nconst { variants, withObservedValues } =\n pickAriaComponentVariants(BUTTON_VARIANTS);\n\ntype CommonProps = { children: React.ReactNode } & Omit<\n ButtonProps,\n \"className\" | \"children\"\n> &\n Omit<LinkProps, \"className\" | \"children\">;\ntype LinkSpecificProps = Pick<LinkProps, \"href\" | \"target\">;\ntype ButtonSpecificProps = {\n resetsForm?: boolean;\n submitsForm?: boolean;\n};\n\nconsole.log(\n \"TODO: This comment was added just to trigger changes in the react-aria package so lerna builds the react-aria package during storybook_tests CI step.\"\n);\n\nexport interface BaseButtonProps\n extends CommonProps,\n LinkSpecificProps,\n ButtonSpecificProps,\n WithVariants<typeof BUTTON_VARIANTS> {\n children: React.ReactNode;\n className?: string;\n}\n\nexport const BaseButton = React.forwardRef(function BaseButtonInner(\n props: BaseButtonProps,\n ref: React.Ref<HTMLButtonElement | HTMLAnchorElement>\n) {\n const { href } = props;\n\n if (href) {\n return (\n <LinkButton\n props={props}\n ref={ref as React.RefObject<HTMLAnchorElement>}\n />\n );\n } else {\n const { submitsForm, resetsForm, children, plasmicUpdateVariant, ...rest } =\n props;\n const type = submitsForm ? \"submit\" : resetsForm ? \"reset\" : \"button\";\n\n const buttonProps = mergeProps(rest, {\n type,\n style: COMMON_STYLES,\n ref: ref as React.Ref<HTMLButtonElement>,\n });\n\n return (\n <Button {...buttonProps}>\n {({ isHovered, isPressed, isFocused, isFocusVisible, isDisabled }) =>\n withObservedValues(\n children,\n {\n hovered: isHovered,\n pressed: isPressed,\n focused: isFocused,\n focusVisible: isFocusVisible,\n disabled: isDisabled,\n },\n plasmicUpdateVariant\n )\n }\n </Button>\n );\n }\n});\n\nfunction LinkButton({\n props,\n ref,\n}: {\n props: BaseButtonProps;\n ref: React.RefObject<HTMLAnchorElement>;\n}) {\n const { href, children, plasmicUpdateVariant, ...rest } = props;\n const PlasmicLink = usePlasmicLink();\n const { linkProps, isPressed } = useLink(props, ref);\n const { hoverProps, isHovered } = useHover(props);\n const { focusProps, isFocused, isFocusVisible } = useFocusRing();\n\n const combinedLinkProps = mergeProps(linkProps, hoverProps, focusProps, {\n href,\n className: props.className,\n style: COMMON_STYLES,\n ref,\n });\n\n return (\n <PlasmicLink\n {...combinedLinkProps}\n data-focused={isFocused || undefined}\n data-hovered={isHovered || undefined}\n data-pressed={isPressed || undefined}\n data-focus-visible={isFocusVisible || undefined}\n data-disabled={props.isDisabled || undefined}\n >\n {withObservedValues(\n children,\n {\n hovered: isHovered,\n pressed: isPressed,\n focused: isFocused,\n focusVisible: isFocusVisible,\n disabled: !!rest.isDisabled,\n },\n plasmicUpdateVariant\n )}\n </PlasmicLink>\n );\n}\n\nexport const BUTTON_COMPONENT_NAME = makeComponentName(\"button\");\n\nexport function registerButton(\n loader?: Registerable,\n overrides?: CodeComponentMetaOverrides<typeof BaseButton>\n) {\n registerComponentHelper(\n loader,\n BaseButton,\n {\n name: BUTTON_COMPONENT_NAME,\n displayName: \"Aria Button\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerButton\",\n importName: \"BaseButton\",\n variants,\n defaultStyles: {\n // Ensure consistent design across rendered elements (button, anchor tag).\n backgroundColor: \"#EFEFEF\",\n borderColor: \"black\",\n borderStyle: \"solid\",\n borderWidth: \"1px\",\n color: \"#000000\",\n cursor: \"pointer\",\n fontFamily: \"Arial\",\n fontSize: \"1rem\",\n lineHeight: \"1.2\",\n padding: \"2px 10px\",\n textDecorationLine: \"none\",\n },\n props: {\n ...getCommonProps<BaseButtonProps>(\"button\", [\n \"autoFocus\",\n \"isDisabled\",\n \"aria-label\",\n ]),\n children: {\n type: \"slot\",\n mergeWithParent: true,\n defaultValue: {\n type: \"text\",\n value: \"Button\",\n },\n },\n href: {\n type: \"href\",\n description:\n \"The URL this button navigates to. If present, this button is an <a> element.\",\n },\n target: {\n type: \"choice\",\n options: [\"_blank\", \"_self\", \"_parent\", \"_top\"],\n description:\n \"Same as target attribute of <a> element. Only applies when the href prop is present.\",\n hidden: (props) => !props.href,\n defaultValueHint: \"_self\",\n },\n submitsForm: {\n type: \"boolean\",\n displayName: \"Submits form?\",\n defaultValueHint: false,\n hidden: (props) => Boolean(props.resetsForm) || Boolean(props.href),\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: (props) => Boolean(props.submitsForm) || Boolean(props.href),\n description:\n \"Whether clicking this button should reset the enclosing form.\",\n advanced: true,\n },\n onPress: {\n type: \"eventHandler\",\n argTypes: [{ name: \"event\", type: \"object\" }],\n },\n onFocus: {\n type: \"eventHandler\",\n argTypes: [{ name: \"event\", type: \"object\" }],\n },\n },\n trapsFocus: true,\n },\n overrides\n );\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registerButton.esm.js","sources":["../src/registerButton.tsx"],"sourcesContent":["import { usePlasmicLink } from \"@plasmicapp/host\";\nimport React from \"react\";\nimport { mergeProps, useFocusRing, useHover, useLink } from \"react-aria\";\nimport type { ButtonProps, LinkProps } from \"react-aria-components\";\nimport { Button } from \"react-aria-components\";\nimport { COMMON_STYLES, getCommonProps } from \"./common\";\nimport {\n CodeComponentMetaOverrides,\n makeComponentName,\n Registerable,\n registerComponentHelper,\n} from \"./utils\";\nimport { pickAriaComponentVariants, WithVariants } from \"./variant-utils\";\n\nconst BUTTON_VARIANTS = [\n \"hovered\" as const,\n \"pressed\" as const,\n \"focused\" as const,\n \"focusVisible\" as const,\n \"disabled\" as const,\n];\n\nconst { variants, withObservedValues } =\n pickAriaComponentVariants(BUTTON_VARIANTS);\n\ntype CommonProps = { children: React.ReactNode } & Omit<\n ButtonProps,\n \"className\" | \"children\"\n> &\n Omit<LinkProps, \"className\" | \"children\">;\ntype LinkSpecificProps = Pick<LinkProps, \"href\" | \"target\">;\ntype ButtonSpecificProps = {\n resetsForm?: boolean;\n submitsForm?: boolean;\n};\n\nexport interface BaseButtonProps\n extends CommonProps,\n LinkSpecificProps,\n ButtonSpecificProps,\n WithVariants<typeof BUTTON_VARIANTS> {\n children: React.ReactNode;\n className?: string;\n}\n\nexport const BaseButton = React.forwardRef(function BaseButtonInner(\n props: BaseButtonProps,\n ref: React.Ref<HTMLButtonElement | HTMLAnchorElement>\n) {\n const { href } = props;\n\n if (href) {\n return (\n <LinkButton\n props={props}\n ref={ref as React.RefObject<HTMLAnchorElement>}\n />\n );\n } else {\n const { submitsForm, resetsForm, children, plasmicUpdateVariant, ...rest } =\n props;\n const type = submitsForm ? \"submit\" : resetsForm ? \"reset\" : \"button\";\n\n const buttonProps = mergeProps(rest, {\n type,\n style: COMMON_STYLES,\n ref: ref as React.Ref<HTMLButtonElement>,\n });\n\n return (\n <Button {...buttonProps}>\n {({ isHovered, isPressed, isFocused, isFocusVisible, isDisabled }) =>\n withObservedValues(\n children,\n {\n hovered: isHovered,\n pressed: isPressed,\n focused: isFocused,\n focusVisible: isFocusVisible,\n disabled: isDisabled,\n },\n plasmicUpdateVariant\n )\n }\n </Button>\n );\n }\n});\n\nfunction LinkButton({\n props,\n ref,\n}: {\n props: BaseButtonProps;\n ref: React.RefObject<HTMLAnchorElement>;\n}) {\n const { href, children, plasmicUpdateVariant, ...rest } = props;\n const PlasmicLink = usePlasmicLink();\n const { linkProps, isPressed } = useLink(props, ref);\n const { hoverProps, isHovered } = useHover(props);\n const { focusProps, isFocused, isFocusVisible } = useFocusRing();\n\n const combinedLinkProps = mergeProps(linkProps, hoverProps, focusProps, {\n href,\n className: props.className,\n style: COMMON_STYLES,\n ref,\n });\n\n return (\n <PlasmicLink\n {...combinedLinkProps}\n data-focused={isFocused || undefined}\n data-hovered={isHovered || undefined}\n data-pressed={isPressed || undefined}\n data-focus-visible={isFocusVisible || undefined}\n data-disabled={props.isDisabled || undefined}\n >\n {withObservedValues(\n children,\n {\n hovered: isHovered,\n pressed: isPressed,\n focused: isFocused,\n focusVisible: isFocusVisible,\n disabled: !!rest.isDisabled,\n },\n plasmicUpdateVariant\n )}\n </PlasmicLink>\n );\n}\n\nexport const BUTTON_COMPONENT_NAME = makeComponentName(\"button\");\n\nexport function registerButton(\n loader?: Registerable,\n overrides?: CodeComponentMetaOverrides<typeof BaseButton>\n) {\n registerComponentHelper(\n loader,\n BaseButton,\n {\n name: BUTTON_COMPONENT_NAME,\n displayName: \"Aria Button\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerButton\",\n importName: \"BaseButton\",\n variants,\n defaultStyles: {\n // Ensure consistent design across rendered elements (button, anchor tag).\n backgroundColor: \"#EFEFEF\",\n borderColor: \"black\",\n borderStyle: \"solid\",\n borderWidth: \"1px\",\n color: \"#000000\",\n cursor: \"pointer\",\n fontFamily: \"Arial\",\n fontSize: \"1rem\",\n lineHeight: \"1.2\",\n padding: \"2px 10px\",\n textDecorationLine: \"none\",\n },\n props: {\n ...getCommonProps<BaseButtonProps>(\"button\", [\n \"autoFocus\",\n \"isDisabled\",\n \"aria-label\",\n ]),\n children: {\n type: \"slot\",\n mergeWithParent: true,\n defaultValue: {\n type: \"text\",\n value: \"Button\",\n },\n },\n href: {\n type: \"href\",\n description:\n \"The URL this button navigates to. If present, this button is an <a> element.\",\n },\n target: {\n type: \"choice\",\n options: [\"_blank\", \"_self\", \"_parent\", \"_top\"],\n description:\n \"Same as target attribute of <a> element. Only applies when the href prop is present.\",\n hidden: (props) => !props.href,\n defaultValueHint: \"_self\",\n },\n submitsForm: {\n type: \"boolean\",\n displayName: \"Submits form?\",\n defaultValueHint: false,\n hidden: (props) => Boolean(props.resetsForm) || Boolean(props.href),\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: (props) => Boolean(props.submitsForm) || Boolean(props.href),\n description:\n \"Whether clicking this button should reset the enclosing form.\",\n advanced: true,\n },\n onPress: {\n type: \"eventHandler\",\n argTypes: [{ name: \"event\", type: \"object\" }],\n },\n onFocus: {\n type: \"eventHandler\",\n argTypes: [{ name: \"event\", type: \"object\" }],\n },\n },\n trapsFocus: true,\n },\n overrides\n );\n}\n"],"names":[],"mappings":"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"}
@@ -49,12 +49,12 @@ var __objRest = (source, exclude) => {
49
49
  return target;
50
50
  };
51
51
  function BaseDialogTrigger(props) {
52
- var _b, _c, _d;
52
+ var _b, _c;
53
53
  const _a = props, { trigger, dialog, isOpen } = _a, rest = __objRest(_a, ["trigger", "dialog", "isOpen"]);
54
54
  const { isSelected, selectedSlotName } = (_c = (_b = host.usePlasmicCanvasComponentInfo) == null ? void 0 : _b(props)) != null ? _c : {};
55
55
  const isAutoOpen = selectedSlotName !== "trigger" && isSelected;
56
56
  const mergedProps = __spreadProps(__spreadValues({}, rest), {
57
- isOpen: (_d = isAutoOpen || isOpen) != null ? _d : false
57
+ isOpen: isAutoOpen || isOpen
58
58
  });
59
59
  return /* @__PURE__ */ React__default.default.createElement(contexts.PlasmicDialogTriggerContext.Provider, { value: mergedProps }, /* @__PURE__ */ React__default.default.createElement(reactAriaComponents.DialogTrigger, __spreadValues({}, mergedProps), trigger, dialog));
60
60
  }
@@ -1 +1 @@
1
- {"version":3,"file":"registerDialogTrigger.cjs.js","sources":["../src/registerDialogTrigger.tsx"],"sourcesContent":["import { usePlasmicCanvasComponentInfo } from \"@plasmicapp/host\";\nimport React from \"react\";\nimport { DialogTrigger, DialogTriggerProps } from \"react-aria-components\";\nimport { PlasmicDialogTriggerContext } from \"./contexts\";\nimport { BUTTON_COMPONENT_NAME } from \"./registerButton\";\nimport { DIALOG_COMPONENT_NAME } from \"./registerDialog\";\nimport {\n MODAL_COMPONENT_NAME,\n MODAL_DEFAULT_SLOT_CONTENT,\n} from \"./registerModal\";\nimport {\n CodeComponentMetaOverrides,\n Registerable,\n WithPlasmicCanvasComponentInfo,\n makeComponentName,\n registerComponentHelper,\n} from \"./utils\";\n\nexport interface BaseDialogTriggerProps\n extends Omit<DialogTriggerProps, \"children\">,\n WithPlasmicCanvasComponentInfo {\n trigger?: React.ReactNode;\n dialog?: React.ReactNode;\n}\n\nexport function BaseDialogTrigger(props: BaseDialogTriggerProps) {\n const { trigger, dialog, isOpen, ...rest } = props;\n\n const { isSelected, selectedSlotName } =\n usePlasmicCanvasComponentInfo?.(props) ?? {};\n const isAutoOpen = selectedSlotName !== \"trigger\" && isSelected;\n\n const mergedProps = {\n ...rest,\n isOpen: (isAutoOpen || isOpen) ?? false,\n };\n\n return (\n <PlasmicDialogTriggerContext.Provider value={mergedProps}>\n <DialogTrigger {...mergedProps}>\n {trigger}\n {dialog}\n </DialogTrigger>\n </PlasmicDialogTriggerContext.Provider>\n );\n}\n\nexport function registerDialogTrigger(\n loader?: Registerable,\n overrides?: CodeComponentMetaOverrides<typeof BaseDialogTrigger>\n) {\n registerComponentHelper(\n loader,\n BaseDialogTrigger,\n {\n name: makeComponentName(\"dialogTrigger\"),\n displayName: \"Aria Dialog Trigger\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerDialogTrigger\",\n importName: \"BaseDialogTrigger\",\n styleSections: false,\n props: {\n trigger: {\n type: \"slot\",\n mergeWithParent: true,\n defaultValue: {\n type: \"component\",\n name: BUTTON_COMPONENT_NAME,\n props: {\n children: {\n type: \"text\",\n value: \"Open Dialog\",\n },\n },\n },\n },\n dialog: {\n type: \"slot\",\n mergeWithParent: true,\n defaultValue: [\n {\n type: \"component\",\n name: MODAL_COMPONENT_NAME,\n props: {\n children: {\n type: \"component\",\n name: DIALOG_COMPONENT_NAME,\n props: {\n children: MODAL_DEFAULT_SLOT_CONTENT,\n },\n },\n },\n },\n ],\n },\n isOpen: {\n type: \"boolean\",\n defaultValueHint: false,\n editOnly: true,\n uncontrolledProp: \"defaultOpen\",\n },\n onOpenChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"isOpen\", type: \"boolean\" }],\n },\n },\n states: {\n isOpen: {\n type: \"writable\",\n valueProp: \"isOpen\",\n onChangeProp: \"onOpenChange\",\n variableType: \"boolean\",\n },\n },\n trapsFocus: true,\n },\n overrides\n );\n}\n"],"names":["usePlasmicCanvasComponentInfo","React","PlasmicDialogTriggerContext","DialogTrigger","registerComponentHelper","makeComponentName","BUTTON_COMPONENT_NAME","MODAL_COMPONENT_NAME","DIALOG_COMPONENT_NAME","MODAL_DEFAULT_SLOT_CONTENT"],"mappings":"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"}
1
+ {"version":3,"file":"registerDialogTrigger.cjs.js","sources":["../src/registerDialogTrigger.tsx"],"sourcesContent":["import { usePlasmicCanvasComponentInfo } from \"@plasmicapp/host\";\nimport React from \"react\";\nimport { DialogTrigger, DialogTriggerProps } from \"react-aria-components\";\nimport { PlasmicDialogTriggerContext } from \"./contexts\";\nimport { BUTTON_COMPONENT_NAME } from \"./registerButton\";\nimport { DIALOG_COMPONENT_NAME } from \"./registerDialog\";\nimport {\n MODAL_COMPONENT_NAME,\n MODAL_DEFAULT_SLOT_CONTENT,\n} from \"./registerModal\";\nimport {\n CodeComponentMetaOverrides,\n Registerable,\n WithPlasmicCanvasComponentInfo,\n makeComponentName,\n registerComponentHelper,\n} from \"./utils\";\n\nexport interface BaseDialogTriggerProps\n extends Omit<DialogTriggerProps, \"children\">,\n WithPlasmicCanvasComponentInfo {\n trigger?: React.ReactNode;\n dialog?: React.ReactNode;\n}\n\nexport function BaseDialogTrigger(props: BaseDialogTriggerProps) {\n const { trigger, dialog, isOpen, ...rest } = props;\n\n const { isSelected, selectedSlotName } =\n usePlasmicCanvasComponentInfo?.(props) ?? {};\n const isAutoOpen = selectedSlotName !== \"trigger\" && isSelected;\n\n const mergedProps = {\n ...rest,\n isOpen: isAutoOpen || isOpen,\n };\n\n return (\n <PlasmicDialogTriggerContext.Provider value={mergedProps}>\n <DialogTrigger {...mergedProps}>\n {trigger}\n {dialog}\n </DialogTrigger>\n </PlasmicDialogTriggerContext.Provider>\n );\n}\n\nexport function registerDialogTrigger(\n loader?: Registerable,\n overrides?: CodeComponentMetaOverrides<typeof BaseDialogTrigger>\n) {\n registerComponentHelper(\n loader,\n BaseDialogTrigger,\n {\n name: makeComponentName(\"dialogTrigger\"),\n displayName: \"Aria Dialog Trigger\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerDialogTrigger\",\n importName: \"BaseDialogTrigger\",\n styleSections: false,\n props: {\n trigger: {\n type: \"slot\",\n mergeWithParent: true,\n defaultValue: {\n type: \"component\",\n name: BUTTON_COMPONENT_NAME,\n props: {\n children: {\n type: \"text\",\n value: \"Open Dialog\",\n },\n },\n },\n },\n dialog: {\n type: \"slot\",\n mergeWithParent: true,\n defaultValue: [\n {\n type: \"component\",\n name: MODAL_COMPONENT_NAME,\n props: {\n children: {\n type: \"component\",\n name: DIALOG_COMPONENT_NAME,\n props: {\n children: MODAL_DEFAULT_SLOT_CONTENT,\n },\n },\n },\n },\n ],\n },\n isOpen: {\n type: \"boolean\",\n defaultValueHint: false,\n editOnly: true,\n uncontrolledProp: \"defaultOpen\",\n },\n onOpenChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"isOpen\", type: \"boolean\" }],\n },\n },\n states: {\n isOpen: {\n type: \"writable\",\n valueProp: \"isOpen\",\n onChangeProp: \"onOpenChange\",\n variableType: \"boolean\",\n },\n },\n trapsFocus: true,\n },\n overrides\n );\n}\n"],"names":["usePlasmicCanvasComponentInfo","React","PlasmicDialogTriggerContext","DialogTrigger","registerComponentHelper","makeComponentName","BUTTON_COMPONENT_NAME","MODAL_COMPONENT_NAME","DIALOG_COMPONENT_NAME","MODAL_DEFAULT_SLOT_CONTENT"],"mappings":"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"}
@@ -43,12 +43,12 @@ var __objRest = (source, exclude) => {
43
43
  return target;
44
44
  };
45
45
  function BaseDialogTrigger(props) {
46
- var _b, _c, _d;
46
+ var _b, _c;
47
47
  const _a = props, { trigger, dialog, isOpen } = _a, rest = __objRest(_a, ["trigger", "dialog", "isOpen"]);
48
48
  const { isSelected, selectedSlotName } = (_c = (_b = usePlasmicCanvasComponentInfo) == null ? void 0 : _b(props)) != null ? _c : {};
49
49
  const isAutoOpen = selectedSlotName !== "trigger" && isSelected;
50
50
  const mergedProps = __spreadProps(__spreadValues({}, rest), {
51
- isOpen: (_d = isAutoOpen || isOpen) != null ? _d : false
51
+ isOpen: isAutoOpen || isOpen
52
52
  });
53
53
  return /* @__PURE__ */ React.createElement(PlasmicDialogTriggerContext.Provider, { value: mergedProps }, /* @__PURE__ */ React.createElement(DialogTrigger, __spreadValues({}, mergedProps), trigger, dialog));
54
54
  }
@@ -1 +1 @@
1
- {"version":3,"file":"registerDialogTrigger.esm.js","sources":["../src/registerDialogTrigger.tsx"],"sourcesContent":["import { usePlasmicCanvasComponentInfo } from \"@plasmicapp/host\";\nimport React from \"react\";\nimport { DialogTrigger, DialogTriggerProps } from \"react-aria-components\";\nimport { PlasmicDialogTriggerContext } from \"./contexts\";\nimport { BUTTON_COMPONENT_NAME } from \"./registerButton\";\nimport { DIALOG_COMPONENT_NAME } from \"./registerDialog\";\nimport {\n MODAL_COMPONENT_NAME,\n MODAL_DEFAULT_SLOT_CONTENT,\n} from \"./registerModal\";\nimport {\n CodeComponentMetaOverrides,\n Registerable,\n WithPlasmicCanvasComponentInfo,\n makeComponentName,\n registerComponentHelper,\n} from \"./utils\";\n\nexport interface BaseDialogTriggerProps\n extends Omit<DialogTriggerProps, \"children\">,\n WithPlasmicCanvasComponentInfo {\n trigger?: React.ReactNode;\n dialog?: React.ReactNode;\n}\n\nexport function BaseDialogTrigger(props: BaseDialogTriggerProps) {\n const { trigger, dialog, isOpen, ...rest } = props;\n\n const { isSelected, selectedSlotName } =\n usePlasmicCanvasComponentInfo?.(props) ?? {};\n const isAutoOpen = selectedSlotName !== \"trigger\" && isSelected;\n\n const mergedProps = {\n ...rest,\n isOpen: (isAutoOpen || isOpen) ?? false,\n };\n\n return (\n <PlasmicDialogTriggerContext.Provider value={mergedProps}>\n <DialogTrigger {...mergedProps}>\n {trigger}\n {dialog}\n </DialogTrigger>\n </PlasmicDialogTriggerContext.Provider>\n );\n}\n\nexport function registerDialogTrigger(\n loader?: Registerable,\n overrides?: CodeComponentMetaOverrides<typeof BaseDialogTrigger>\n) {\n registerComponentHelper(\n loader,\n BaseDialogTrigger,\n {\n name: makeComponentName(\"dialogTrigger\"),\n displayName: \"Aria Dialog Trigger\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerDialogTrigger\",\n importName: \"BaseDialogTrigger\",\n styleSections: false,\n props: {\n trigger: {\n type: \"slot\",\n mergeWithParent: true,\n defaultValue: {\n type: \"component\",\n name: BUTTON_COMPONENT_NAME,\n props: {\n children: {\n type: \"text\",\n value: \"Open Dialog\",\n },\n },\n },\n },\n dialog: {\n type: \"slot\",\n mergeWithParent: true,\n defaultValue: [\n {\n type: \"component\",\n name: MODAL_COMPONENT_NAME,\n props: {\n children: {\n type: \"component\",\n name: DIALOG_COMPONENT_NAME,\n props: {\n children: MODAL_DEFAULT_SLOT_CONTENT,\n },\n },\n },\n },\n ],\n },\n isOpen: {\n type: \"boolean\",\n defaultValueHint: false,\n editOnly: true,\n uncontrolledProp: \"defaultOpen\",\n },\n onOpenChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"isOpen\", type: \"boolean\" }],\n },\n },\n states: {\n isOpen: {\n type: \"writable\",\n valueProp: \"isOpen\",\n onChangeProp: \"onOpenChange\",\n variableType: \"boolean\",\n },\n },\n trapsFocus: true,\n },\n overrides\n );\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registerDialogTrigger.esm.js","sources":["../src/registerDialogTrigger.tsx"],"sourcesContent":["import { usePlasmicCanvasComponentInfo } from \"@plasmicapp/host\";\nimport React from \"react\";\nimport { DialogTrigger, DialogTriggerProps } from \"react-aria-components\";\nimport { PlasmicDialogTriggerContext } from \"./contexts\";\nimport { BUTTON_COMPONENT_NAME } from \"./registerButton\";\nimport { DIALOG_COMPONENT_NAME } from \"./registerDialog\";\nimport {\n MODAL_COMPONENT_NAME,\n MODAL_DEFAULT_SLOT_CONTENT,\n} from \"./registerModal\";\nimport {\n CodeComponentMetaOverrides,\n Registerable,\n WithPlasmicCanvasComponentInfo,\n makeComponentName,\n registerComponentHelper,\n} from \"./utils\";\n\nexport interface BaseDialogTriggerProps\n extends Omit<DialogTriggerProps, \"children\">,\n WithPlasmicCanvasComponentInfo {\n trigger?: React.ReactNode;\n dialog?: React.ReactNode;\n}\n\nexport function BaseDialogTrigger(props: BaseDialogTriggerProps) {\n const { trigger, dialog, isOpen, ...rest } = props;\n\n const { isSelected, selectedSlotName } =\n usePlasmicCanvasComponentInfo?.(props) ?? {};\n const isAutoOpen = selectedSlotName !== \"trigger\" && isSelected;\n\n const mergedProps = {\n ...rest,\n isOpen: isAutoOpen || isOpen,\n };\n\n return (\n <PlasmicDialogTriggerContext.Provider value={mergedProps}>\n <DialogTrigger {...mergedProps}>\n {trigger}\n {dialog}\n </DialogTrigger>\n </PlasmicDialogTriggerContext.Provider>\n );\n}\n\nexport function registerDialogTrigger(\n loader?: Registerable,\n overrides?: CodeComponentMetaOverrides<typeof BaseDialogTrigger>\n) {\n registerComponentHelper(\n loader,\n BaseDialogTrigger,\n {\n name: makeComponentName(\"dialogTrigger\"),\n displayName: \"Aria Dialog Trigger\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerDialogTrigger\",\n importName: \"BaseDialogTrigger\",\n styleSections: false,\n props: {\n trigger: {\n type: \"slot\",\n mergeWithParent: true,\n defaultValue: {\n type: \"component\",\n name: BUTTON_COMPONENT_NAME,\n props: {\n children: {\n type: \"text\",\n value: \"Open Dialog\",\n },\n },\n },\n },\n dialog: {\n type: \"slot\",\n mergeWithParent: true,\n defaultValue: [\n {\n type: \"component\",\n name: MODAL_COMPONENT_NAME,\n props: {\n children: {\n type: \"component\",\n name: DIALOG_COMPONENT_NAME,\n props: {\n children: MODAL_DEFAULT_SLOT_CONTENT,\n },\n },\n },\n },\n ],\n },\n isOpen: {\n type: \"boolean\",\n defaultValueHint: false,\n editOnly: true,\n uncontrolledProp: \"defaultOpen\",\n },\n onOpenChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"isOpen\", type: \"boolean\" }],\n },\n },\n states: {\n isOpen: {\n type: \"writable\",\n valueProp: \"isOpen\",\n onChangeProp: \"onOpenChange\",\n variableType: \"boolean\",\n },\n },\n trapsFocus: true,\n },\n overrides\n );\n}\n"],"names":[],"mappings":"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"}
@@ -57,23 +57,6 @@ const meta = {
57
57
  args: {
58
58
  defaultOpen: false,
59
59
  onOpenChange: test.fn()
60
- },
61
- // TODO: Currently, BaseDialogTrigger can't be controlled because a isOpen is never undefined - its given a default false.
62
- // Using the render to use it as a controlled component.
63
- // Remove this render function in the PR that fixes the uncontrolled behaviour of BaseDialogTrigger
64
- render: (_a) => {
65
- var _b = _a, { isOpen, onOpenChange } = _b, args = __objRest(_b, ["isOpen", "onOpenChange"]);
66
- const [open, setOpen] = React.useState(isOpen);
67
- return /* @__PURE__ */ React__default.default.createElement(
68
- registerDialogTrigger.BaseDialogTrigger,
69
- __spreadValues({
70
- isOpen: open,
71
- onOpenChange: (newValue) => {
72
- setOpen(newValue);
73
- onOpenChange == null ? void 0 : onOpenChange(newValue);
74
- }
75
- }, args)
76
- );
77
60
  }
78
61
  };
79
62
  const DefaultContent = () => /* @__PURE__ */ React__default.default.createElement("div", { "data-testid": "dialog-content" }, /* @__PURE__ */ React__default.default.createElement("h2", null, "Dialog Title"), /* @__PURE__ */ React__default.default.createElement("p", null, "Dialog content goes here"));
@@ -171,8 +154,8 @@ const SelectedInCanvas = {
171
154
  trigger: /* @__PURE__ */ React__default.default.createElement(registerButton.BaseButton, null, "Open popover"),
172
155
  dialog: /* @__PURE__ */ React__default.default.createElement(registerPopover.BasePopover, { isNonModal: true, isKeyboardDismissDisabled: false }, /* @__PURE__ */ React__default.default.createElement(registerDialog.BaseDialog, null, /* @__PURE__ */ React__default.default.createElement(DefaultContent, null)))
173
156
  },
174
- render: (_c) => {
175
- var _d = _c, args = __objRest(_d, ["__plasmic_selection_prop__"]);
157
+ render: (_a) => {
158
+ var _b = _a, args = __objRest(_b, ["__plasmic_selection_prop__"]);
176
159
  const [selected, setSelected] = React.useState(false);
177
160
  const [selectedSlotName, setSelectedSlotName] = React.useState("");
178
161
  React.useEffect(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"registerDialogTrigger.stories.cjs.js","sources":["../src/registerDialogTrigger.stories.tsx"],"sourcesContent":["import { PlasmicCanvasContext } from \"@plasmicapp/host\";\nimport type { Meta, StoryObj } from \"@storybook/react\";\nimport { expect, fn, userEvent, waitFor, within } from \"@storybook/test\";\nimport React, { useEffect, useState } from \"react\";\nimport { BaseButton } from \"./registerButton\";\nimport { BaseDialog } from \"./registerDialog\";\nimport { BaseDialogTrigger } from \"./registerDialogTrigger\";\nimport { BaseModal } from \"./registerModal\";\nimport { BasePopover } from \"./registerPopover\";\n\nconst meta: Meta<typeof BaseDialogTrigger> = {\n title: \"Components/BaseDialogTrigger\",\n component: BaseDialogTrigger,\n args: {\n defaultOpen: false,\n onOpenChange: fn(),\n },\n // TODO: Currently, BaseDialogTrigger can't be controlled because a isOpen is never undefined - its given a default false.\n // Using the render to use it as a controlled component.\n // Remove this render function in the PR that fixes the uncontrolled behaviour of BaseDialogTrigger\n render: ({ isOpen, onOpenChange, ...args }) => {\n const [open, setOpen] = useState(isOpen);\n return (\n <BaseDialogTrigger\n isOpen={open}\n onOpenChange={(newValue) => {\n setOpen(newValue);\n onOpenChange?.(newValue);\n }}\n {...args}\n />\n );\n },\n};\n\nexport default meta;\ntype Story = StoryObj<typeof BaseDialogTrigger>;\n\nconst DefaultContent = () => (\n <div data-testid=\"dialog-content\">\n <h2>Dialog Title</h2>\n <p>Dialog content goes here</p>\n </div>\n);\n\nexport const WithModal: Story = {\n args: {\n trigger: <BaseButton>Open modal</BaseButton>,\n dialog: (\n <BaseModal isDismissable={true} isKeyboardDismissDisabled={false}>\n <BaseDialog>\n <DefaultContent />\n </BaseDialog>\n </BaseModal>\n ),\n },\n play: async ({ canvasElement, args }) => {\n const canvas = within(canvasElement);\n const doc = within(document.body);\n const button = canvas.getByText(\"Open modal\");\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n await userEvent.click(button);\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).toBeInTheDocument();\n });\n\n await userEvent.click(document.body);\n\n // Modal should close\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n // With keyboard navigation, press Escape to dismiss\n await userEvent.click(button);\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).toBeInTheDocument();\n });\n\n await userEvent.keyboard(\"{Escape}\");\n // dialog should close\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n expect(args.onOpenChange).toHaveBeenCalledTimes(4);\n },\n};\n\nexport const WithPopover: Story = {\n args: {\n trigger: <BaseButton>Open popover</BaseButton>,\n dialog: (\n <BasePopover isKeyboardDismissDisabled={false}>\n <BaseDialog>\n <DefaultContent />\n </BaseDialog>\n </BasePopover>\n ),\n },\n play: async ({ canvasElement, args }) => {\n const canvas = within(canvasElement);\n const doc = within(document.body);\n const button = canvas.getByText(\"Open popover\");\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n await userEvent.click(button);\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).toBeInTheDocument();\n });\n\n await userEvent.click(document.body);\n\n // popover should close\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n // With keyboard navigation, press Escape to dismiss\n await userEvent.click(button);\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).toBeInTheDocument();\n });\n\n await userEvent.keyboard(\"{Escape}\");\n // dialog should close\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n expect(args.onOpenChange).toHaveBeenCalledTimes(4);\n },\n};\n\nexport const WithPopoverNonModal: Story = {\n args: {\n trigger: <BaseButton>Open popover</BaseButton>,\n dialog: (\n <BasePopover isNonModal={true} isKeyboardDismissDisabled={false}>\n <BaseDialog>\n <DefaultContent />\n </BaseDialog>\n </BasePopover>\n ),\n },\n play: async ({ canvasElement, args }) => {\n const canvas = within(canvasElement);\n const doc = within(document.body);\n const button = canvas.getByText(\"Open popover\");\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n await userEvent.click(button);\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).toBeInTheDocument();\n });\n\n await userEvent.click(document.body);\n\n // popover should close\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).toBeInTheDocument();\n });\n\n await userEvent.keyboard(\"{Escape}\");\n // dialog should close\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n expect(args.onOpenChange).toHaveBeenCalledTimes(2);\n },\n};\n\nexport const SelectedInCanvas: Story = {\n args: {\n trigger: <BaseButton>Open popover</BaseButton>,\n dialog: (\n <BasePopover isNonModal={true} isKeyboardDismissDisabled={false}>\n <BaseDialog>\n <DefaultContent />\n </BaseDialog>\n </BasePopover>\n ),\n },\n render: ({ __plasmic_selection_prop__, ...args }) => {\n const [selected, setSelected] = useState(false);\n const [selectedSlotName, setSelectedSlotName] = useState(\"\");\n useEffect(() => {\n setTimeout(() => {\n setSelected(true);\n setTimeout(() => {\n // Simulate trigger slot selection in Plasmic canvas\n setSelectedSlotName(\"trigger\");\n }, 1000);\n }, 1000);\n }, []);\n\n return (\n // Simulate Plasmic canvas envirnment\n <PlasmicCanvasContext.Provider\n value={{\n componentName: \"test\",\n globalVariants: {},\n }}\n >\n <BaseDialogTrigger\n // Simulate node selection in Plasmic canvas\n __plasmic_selection_prop__={{\n isSelected: selected,\n selectedSlotName,\n }}\n {...args}\n />\n </PlasmicCanvasContext.Provider>\n );\n },\n play: async () => {\n // popovers are rendered outside canvas, so we need to use document.body\n const doc = within(document.body);\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n await waitFor(\n () => {\n expect(doc.queryByTestId(\"dialog-content\")).toBeInTheDocument();\n },\n { timeout: 1100 }\n );\n\n await waitFor(\n () => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n },\n { timeout: 1100 }\n ); // the slot selected is trigger, so the popover should close\n },\n};\n"],"names":["BaseDialogTrigger","fn","useState","React","BaseButton","BaseModal","BaseDialog","within","waitFor","expect","userEvent","BasePopover","useEffect","PlasmicCanvasContext"],"mappings":"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"}
1
+ {"version":3,"file":"registerDialogTrigger.stories.cjs.js","sources":["../src/registerDialogTrigger.stories.tsx"],"sourcesContent":["import { PlasmicCanvasContext } from \"@plasmicapp/host\";\nimport type { Meta, StoryObj } from \"@storybook/react\";\nimport { expect, fn, userEvent, waitFor, within } from \"@storybook/test\";\nimport React, { useEffect, useState } from \"react\";\nimport { BaseButton } from \"./registerButton\";\nimport { BaseDialog } from \"./registerDialog\";\nimport { BaseDialogTrigger } from \"./registerDialogTrigger\";\nimport { BaseModal } from \"./registerModal\";\nimport { BasePopover } from \"./registerPopover\";\n\nconst meta: Meta<typeof BaseDialogTrigger> = {\n title: \"Components/BaseDialogTrigger\",\n component: BaseDialogTrigger,\n args: {\n defaultOpen: false,\n onOpenChange: fn(),\n },\n};\n\nexport default meta;\ntype Story = StoryObj<typeof BaseDialogTrigger>;\n\nconst DefaultContent = () => (\n <div data-testid=\"dialog-content\">\n <h2>Dialog Title</h2>\n <p>Dialog content goes here</p>\n </div>\n);\n\nexport const WithModal: Story = {\n args: {\n trigger: <BaseButton>Open modal</BaseButton>,\n dialog: (\n <BaseModal isDismissable={true} isKeyboardDismissDisabled={false}>\n <BaseDialog>\n <DefaultContent />\n </BaseDialog>\n </BaseModal>\n ),\n },\n play: async ({ canvasElement, args }) => {\n const canvas = within(canvasElement);\n const doc = within(document.body);\n const button = canvas.getByText(\"Open modal\");\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n await userEvent.click(button);\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).toBeInTheDocument();\n });\n\n await userEvent.click(document.body);\n\n // Modal should close\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n // With keyboard navigation, press Escape to dismiss\n await userEvent.click(button);\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).toBeInTheDocument();\n });\n\n await userEvent.keyboard(\"{Escape}\");\n // dialog should close\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n expect(args.onOpenChange).toHaveBeenCalledTimes(4);\n },\n};\n\nexport const WithPopover: Story = {\n args: {\n trigger: <BaseButton>Open popover</BaseButton>,\n dialog: (\n <BasePopover isKeyboardDismissDisabled={false}>\n <BaseDialog>\n <DefaultContent />\n </BaseDialog>\n </BasePopover>\n ),\n },\n play: async ({ canvasElement, args }) => {\n const canvas = within(canvasElement);\n const doc = within(document.body);\n const button = canvas.getByText(\"Open popover\");\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n await userEvent.click(button);\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).toBeInTheDocument();\n });\n\n await userEvent.click(document.body);\n\n // popover should close\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n // With keyboard navigation, press Escape to dismiss\n await userEvent.click(button);\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).toBeInTheDocument();\n });\n\n await userEvent.keyboard(\"{Escape}\");\n // dialog should close\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n expect(args.onOpenChange).toHaveBeenCalledTimes(4);\n },\n};\n\nexport const WithPopoverNonModal: Story = {\n args: {\n trigger: <BaseButton>Open popover</BaseButton>,\n dialog: (\n <BasePopover isNonModal={true} isKeyboardDismissDisabled={false}>\n <BaseDialog>\n <DefaultContent />\n </BaseDialog>\n </BasePopover>\n ),\n },\n play: async ({ canvasElement, args }) => {\n const canvas = within(canvasElement);\n const doc = within(document.body);\n const button = canvas.getByText(\"Open popover\");\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n await userEvent.click(button);\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).toBeInTheDocument();\n });\n\n await userEvent.click(document.body);\n\n // popover should close\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).toBeInTheDocument();\n });\n\n await userEvent.keyboard(\"{Escape}\");\n // dialog should close\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n expect(args.onOpenChange).toHaveBeenCalledTimes(2);\n },\n};\n\nexport const SelectedInCanvas: Story = {\n args: {\n trigger: <BaseButton>Open popover</BaseButton>,\n dialog: (\n <BasePopover isNonModal={true} isKeyboardDismissDisabled={false}>\n <BaseDialog>\n <DefaultContent />\n </BaseDialog>\n </BasePopover>\n ),\n },\n render: ({ __plasmic_selection_prop__, ...args }) => {\n const [selected, setSelected] = useState(false);\n const [selectedSlotName, setSelectedSlotName] = useState(\"\");\n useEffect(() => {\n setTimeout(() => {\n setSelected(true);\n setTimeout(() => {\n // Simulate trigger slot selection in Plasmic canvas\n setSelectedSlotName(\"trigger\");\n }, 1000);\n }, 1000);\n }, []);\n\n return (\n // Simulate Plasmic canvas envirnment\n <PlasmicCanvasContext.Provider\n value={{\n componentName: \"test\",\n globalVariants: {},\n }}\n >\n <BaseDialogTrigger\n // Simulate node selection in Plasmic canvas\n __plasmic_selection_prop__={{\n isSelected: selected,\n selectedSlotName,\n }}\n {...args}\n />\n </PlasmicCanvasContext.Provider>\n );\n },\n play: async () => {\n // popovers are rendered outside canvas, so we need to use document.body\n const doc = within(document.body);\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n await waitFor(\n () => {\n expect(doc.queryByTestId(\"dialog-content\")).toBeInTheDocument();\n },\n { timeout: 1100 }\n );\n\n await waitFor(\n () => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n },\n { timeout: 1100 }\n ); // the slot selected is trigger, so the popover should close\n },\n};\n"],"names":["BaseDialogTrigger","fn","React","BaseButton","BaseModal","BaseDialog","within","waitFor","expect","userEvent","BasePopover","useState","useEffect","PlasmicCanvasContext"],"mappings":"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"}
@@ -49,23 +49,6 @@ const meta = {
49
49
  args: {
50
50
  defaultOpen: false,
51
51
  onOpenChange: fn()
52
- },
53
- // TODO: Currently, BaseDialogTrigger can't be controlled because a isOpen is never undefined - its given a default false.
54
- // Using the render to use it as a controlled component.
55
- // Remove this render function in the PR that fixes the uncontrolled behaviour of BaseDialogTrigger
56
- render: (_a) => {
57
- var _b = _a, { isOpen, onOpenChange } = _b, args = __objRest(_b, ["isOpen", "onOpenChange"]);
58
- const [open, setOpen] = useState(isOpen);
59
- return /* @__PURE__ */ React.createElement(
60
- BaseDialogTrigger,
61
- __spreadValues({
62
- isOpen: open,
63
- onOpenChange: (newValue) => {
64
- setOpen(newValue);
65
- onOpenChange == null ? void 0 : onOpenChange(newValue);
66
- }
67
- }, args)
68
- );
69
52
  }
70
53
  };
71
54
  const DefaultContent = () => /* @__PURE__ */ React.createElement("div", { "data-testid": "dialog-content" }, /* @__PURE__ */ React.createElement("h2", null, "Dialog Title"), /* @__PURE__ */ React.createElement("p", null, "Dialog content goes here"));
@@ -163,8 +146,8 @@ const SelectedInCanvas = {
163
146
  trigger: /* @__PURE__ */ React.createElement(BaseButton, null, "Open popover"),
164
147
  dialog: /* @__PURE__ */ React.createElement(BasePopover, { isNonModal: true, isKeyboardDismissDisabled: false }, /* @__PURE__ */ React.createElement(BaseDialog, null, /* @__PURE__ */ React.createElement(DefaultContent, null)))
165
148
  },
166
- render: (_c) => {
167
- var _d = _c, args = __objRest(_d, ["__plasmic_selection_prop__"]);
149
+ render: (_a) => {
150
+ var _b = _a, args = __objRest(_b, ["__plasmic_selection_prop__"]);
168
151
  const [selected, setSelected] = useState(false);
169
152
  const [selectedSlotName, setSelectedSlotName] = useState("");
170
153
  useEffect(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"registerDialogTrigger.stories.esm.js","sources":["../src/registerDialogTrigger.stories.tsx"],"sourcesContent":["import { PlasmicCanvasContext } from \"@plasmicapp/host\";\nimport type { Meta, StoryObj } from \"@storybook/react\";\nimport { expect, fn, userEvent, waitFor, within } from \"@storybook/test\";\nimport React, { useEffect, useState } from \"react\";\nimport { BaseButton } from \"./registerButton\";\nimport { BaseDialog } from \"./registerDialog\";\nimport { BaseDialogTrigger } from \"./registerDialogTrigger\";\nimport { BaseModal } from \"./registerModal\";\nimport { BasePopover } from \"./registerPopover\";\n\nconst meta: Meta<typeof BaseDialogTrigger> = {\n title: \"Components/BaseDialogTrigger\",\n component: BaseDialogTrigger,\n args: {\n defaultOpen: false,\n onOpenChange: fn(),\n },\n // TODO: Currently, BaseDialogTrigger can't be controlled because a isOpen is never undefined - its given a default false.\n // Using the render to use it as a controlled component.\n // Remove this render function in the PR that fixes the uncontrolled behaviour of BaseDialogTrigger\n render: ({ isOpen, onOpenChange, ...args }) => {\n const [open, setOpen] = useState(isOpen);\n return (\n <BaseDialogTrigger\n isOpen={open}\n onOpenChange={(newValue) => {\n setOpen(newValue);\n onOpenChange?.(newValue);\n }}\n {...args}\n />\n );\n },\n};\n\nexport default meta;\ntype Story = StoryObj<typeof BaseDialogTrigger>;\n\nconst DefaultContent = () => (\n <div data-testid=\"dialog-content\">\n <h2>Dialog Title</h2>\n <p>Dialog content goes here</p>\n </div>\n);\n\nexport const WithModal: Story = {\n args: {\n trigger: <BaseButton>Open modal</BaseButton>,\n dialog: (\n <BaseModal isDismissable={true} isKeyboardDismissDisabled={false}>\n <BaseDialog>\n <DefaultContent />\n </BaseDialog>\n </BaseModal>\n ),\n },\n play: async ({ canvasElement, args }) => {\n const canvas = within(canvasElement);\n const doc = within(document.body);\n const button = canvas.getByText(\"Open modal\");\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n await userEvent.click(button);\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).toBeInTheDocument();\n });\n\n await userEvent.click(document.body);\n\n // Modal should close\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n // With keyboard navigation, press Escape to dismiss\n await userEvent.click(button);\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).toBeInTheDocument();\n });\n\n await userEvent.keyboard(\"{Escape}\");\n // dialog should close\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n expect(args.onOpenChange).toHaveBeenCalledTimes(4);\n },\n};\n\nexport const WithPopover: Story = {\n args: {\n trigger: <BaseButton>Open popover</BaseButton>,\n dialog: (\n <BasePopover isKeyboardDismissDisabled={false}>\n <BaseDialog>\n <DefaultContent />\n </BaseDialog>\n </BasePopover>\n ),\n },\n play: async ({ canvasElement, args }) => {\n const canvas = within(canvasElement);\n const doc = within(document.body);\n const button = canvas.getByText(\"Open popover\");\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n await userEvent.click(button);\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).toBeInTheDocument();\n });\n\n await userEvent.click(document.body);\n\n // popover should close\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n // With keyboard navigation, press Escape to dismiss\n await userEvent.click(button);\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).toBeInTheDocument();\n });\n\n await userEvent.keyboard(\"{Escape}\");\n // dialog should close\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n expect(args.onOpenChange).toHaveBeenCalledTimes(4);\n },\n};\n\nexport const WithPopoverNonModal: Story = {\n args: {\n trigger: <BaseButton>Open popover</BaseButton>,\n dialog: (\n <BasePopover isNonModal={true} isKeyboardDismissDisabled={false}>\n <BaseDialog>\n <DefaultContent />\n </BaseDialog>\n </BasePopover>\n ),\n },\n play: async ({ canvasElement, args }) => {\n const canvas = within(canvasElement);\n const doc = within(document.body);\n const button = canvas.getByText(\"Open popover\");\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n await userEvent.click(button);\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).toBeInTheDocument();\n });\n\n await userEvent.click(document.body);\n\n // popover should close\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).toBeInTheDocument();\n });\n\n await userEvent.keyboard(\"{Escape}\");\n // dialog should close\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n expect(args.onOpenChange).toHaveBeenCalledTimes(2);\n },\n};\n\nexport const SelectedInCanvas: Story = {\n args: {\n trigger: <BaseButton>Open popover</BaseButton>,\n dialog: (\n <BasePopover isNonModal={true} isKeyboardDismissDisabled={false}>\n <BaseDialog>\n <DefaultContent />\n </BaseDialog>\n </BasePopover>\n ),\n },\n render: ({ __plasmic_selection_prop__, ...args }) => {\n const [selected, setSelected] = useState(false);\n const [selectedSlotName, setSelectedSlotName] = useState(\"\");\n useEffect(() => {\n setTimeout(() => {\n setSelected(true);\n setTimeout(() => {\n // Simulate trigger slot selection in Plasmic canvas\n setSelectedSlotName(\"trigger\");\n }, 1000);\n }, 1000);\n }, []);\n\n return (\n // Simulate Plasmic canvas envirnment\n <PlasmicCanvasContext.Provider\n value={{\n componentName: \"test\",\n globalVariants: {},\n }}\n >\n <BaseDialogTrigger\n // Simulate node selection in Plasmic canvas\n __plasmic_selection_prop__={{\n isSelected: selected,\n selectedSlotName,\n }}\n {...args}\n />\n </PlasmicCanvasContext.Provider>\n );\n },\n play: async () => {\n // popovers are rendered outside canvas, so we need to use document.body\n const doc = within(document.body);\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n await waitFor(\n () => {\n expect(doc.queryByTestId(\"dialog-content\")).toBeInTheDocument();\n },\n { timeout: 1100 }\n );\n\n await waitFor(\n () => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n },\n { timeout: 1100 }\n ); // the slot selected is trigger, so the popover should close\n },\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUA,MAAM,IAAuC,GAAA;AAAA,EAC3C,KAAO,EAAA,8BAAA;AAAA,EACP,SAAW,EAAA,iBAAA;AAAA,EACX,IAAM,EAAA;AAAA,IACJ,WAAa,EAAA,KAAA;AAAA,IACb,cAAc,EAAG,EAAA;AAAA,GACnB;AAAA;AAAA;AAAA;AAAA,EAIA,MAAA,EAAQ,CAAC,EAAsC,KAAA;AAAtC,IAAA,IAAA,EAAA,GAAA,EAAA,EAAE,UAAQ,YApBrB,EAAA,GAoBW,IAA2B,IAA3B,GAAA,SAAA,CAAA,EAAA,EAA2B,CAAzB,QAAQ,EAAA,cAAA,CAAA,CAAA,CAAA;AACjB,IAAA,MAAM,CAAC,IAAA,EAAM,OAAO,CAAA,GAAI,SAAS,MAAM,CAAA,CAAA;AACvC,IACE,uBAAA,KAAA,CAAA,aAAA;AAAA,MAAC,iBAAA;AAAA,MAAA,cAAA,CAAA;AAAA,QACC,MAAQ,EAAA,IAAA;AAAA,QACR,YAAA,EAAc,CAAC,QAAa,KAAA;AAC1B,UAAA,OAAA,CAAQ,QAAQ,CAAA,CAAA;AAChB,UAAe,YAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,YAAA,CAAA,QAAA,CAAA,CAAA;AAAA,SACjB;AAAA,OACI,EAAA,IAAA,CAAA;AAAA,KACN,CAAA;AAAA,GAEJ;AACF,EAAA;AAKA,MAAM,cAAiB,GAAA,sBACpB,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAI,aAAY,EAAA,gBAAA,EAAA,kBACd,KAAA,CAAA,aAAA,CAAA,IAAA,EAAA,IAAA,EAAG,cAAY,CAAA,kBACf,KAAA,CAAA,aAAA,CAAA,GAAA,EAAA,IAAA,EAAE,0BAAwB,CAC7B,CAAA,CAAA;AAGK,MAAM,SAAmB,GAAA;AAAA,EAC9B,IAAM,EAAA;AAAA,IACJ,OAAA,kBAAU,KAAA,CAAA,aAAA,CAAA,UAAA,EAAA,IAAA,EAAW,YAAU,CAAA;AAAA,IAC/B,MACE,kBAAA,KAAA,CAAA,aAAA,CAAC,SAAU,EAAA,EAAA,aAAA,EAAe,IAAM,EAAA,yBAAA,EAA2B,KACzD,EAAA,kBAAA,KAAA,CAAA,aAAA,CAAC,UACC,EAAA,IAAA,kBAAA,KAAA,CAAA,aAAA,CAAC,cAAe,EAAA,IAAA,CAClB,CACF,CAAA;AAAA,GAEJ;AAAA,EACA,IAAM,EAAA,OAAO,EAAE,aAAA,EAAe,MAAW,KAAA;AACvC,IAAM,MAAA,MAAA,GAAS,OAAO,aAAa,CAAA,CAAA;AACnC,IAAM,MAAA,GAAA,GAAM,MAAO,CAAA,QAAA,CAAS,IAAI,CAAA,CAAA;AAChC,IAAM,MAAA,MAAA,GAAS,MAAO,CAAA,SAAA,CAAU,YAAY,CAAA,CAAA;AAE5C,IAAA,MAAM,QAAQ,MAAM;AAClB,MAAA,MAAA,CAAO,IAAI,aAAc,CAAA,gBAAgB,CAAC,CAAA,CAAE,IAAI,iBAAkB,EAAA,CAAA;AAAA,KACnE,CAAA,CAAA;AAED,IAAM,MAAA,SAAA,CAAU,MAAM,MAAM,CAAA,CAAA;AAE5B,IAAA,MAAM,QAAQ,MAAM;AAClB,MAAA,MAAA,CAAO,GAAI,CAAA,aAAA,CAAc,gBAAgB,CAAC,EAAE,iBAAkB,EAAA,CAAA;AAAA,KAC/D,CAAA,CAAA;AAED,IAAM,MAAA,SAAA,CAAU,KAAM,CAAA,QAAA,CAAS,IAAI,CAAA,CAAA;AAGnC,IAAA,MAAM,QAAQ,MAAM;AAClB,MAAA,MAAA,CAAO,IAAI,aAAc,CAAA,gBAAgB,CAAC,CAAA,CAAE,IAAI,iBAAkB,EAAA,CAAA;AAAA,KACnE,CAAA,CAAA;AAGD,IAAM,MAAA,SAAA,CAAU,MAAM,MAAM,CAAA,CAAA;AAE5B,IAAA,MAAM,QAAQ,MAAM;AAClB,MAAA,MAAA,CAAO,GAAI,CAAA,aAAA,CAAc,gBAAgB,CAAC,EAAE,iBAAkB,EAAA,CAAA;AAAA,KAC/D,CAAA,CAAA;AAED,IAAM,MAAA,SAAA,CAAU,SAAS,UAAU,CAAA,CAAA;AAEnC,IAAA,MAAM,QAAQ,MAAM;AAClB,MAAA,MAAA,CAAO,IAAI,aAAc,CAAA,gBAAgB,CAAC,CAAA,CAAE,IAAI,iBAAkB,EAAA,CAAA;AAAA,KACnE,CAAA,CAAA;AAED,IAAA,MAAA,CAAO,IAAK,CAAA,YAAY,CAAE,CAAA,qBAAA,CAAsB,CAAC,CAAA,CAAA;AAAA,GACnD;AACF,EAAA;AAEO,MAAM,WAAqB,GAAA;AAAA,EAChC,IAAM,EAAA;AAAA,IACJ,OAAA,kBAAU,KAAA,CAAA,aAAA,CAAA,UAAA,EAAA,IAAA,EAAW,cAAY,CAAA;AAAA,IACjC,MAAA,kBACG,KAAA,CAAA,aAAA,CAAA,WAAA,EAAA,EAAY,yBAA2B,EAAA,KAAA,EAAA,sCACrC,UACC,EAAA,IAAA,kBAAA,KAAA,CAAA,aAAA,CAAC,cAAe,EAAA,IAAA,CAClB,CACF,CAAA;AAAA,GAEJ;AAAA,EACA,IAAM,EAAA,OAAO,EAAE,aAAA,EAAe,MAAW,KAAA;AACvC,IAAM,MAAA,MAAA,GAAS,OAAO,aAAa,CAAA,CAAA;AACnC,IAAM,MAAA,GAAA,GAAM,MAAO,CAAA,QAAA,CAAS,IAAI,CAAA,CAAA;AAChC,IAAM,MAAA,MAAA,GAAS,MAAO,CAAA,SAAA,CAAU,cAAc,CAAA,CAAA;AAE9C,IAAA,MAAM,QAAQ,MAAM;AAClB,MAAA,MAAA,CAAO,IAAI,aAAc,CAAA,gBAAgB,CAAC,CAAA,CAAE,IAAI,iBAAkB,EAAA,CAAA;AAAA,KACnE,CAAA,CAAA;AAED,IAAM,MAAA,SAAA,CAAU,MAAM,MAAM,CAAA,CAAA;AAE5B,IAAA,MAAM,QAAQ,MAAM;AAClB,MAAA,MAAA,CAAO,GAAI,CAAA,aAAA,CAAc,gBAAgB,CAAC,EAAE,iBAAkB,EAAA,CAAA;AAAA,KAC/D,CAAA,CAAA;AAED,IAAM,MAAA,SAAA,CAAU,KAAM,CAAA,QAAA,CAAS,IAAI,CAAA,CAAA;AAGnC,IAAA,MAAM,QAAQ,MAAM;AAClB,MAAA,MAAA,CAAO,IAAI,aAAc,CAAA,gBAAgB,CAAC,CAAA,CAAE,IAAI,iBAAkB,EAAA,CAAA;AAAA,KACnE,CAAA,CAAA;AAGD,IAAM,MAAA,SAAA,CAAU,MAAM,MAAM,CAAA,CAAA;AAE5B,IAAA,MAAM,QAAQ,MAAM;AAClB,MAAA,MAAA,CAAO,GAAI,CAAA,aAAA,CAAc,gBAAgB,CAAC,EAAE,iBAAkB,EAAA,CAAA;AAAA,KAC/D,CAAA,CAAA;AAED,IAAM,MAAA,SAAA,CAAU,SAAS,UAAU,CAAA,CAAA;AAEnC,IAAA,MAAM,QAAQ,MAAM;AAClB,MAAA,MAAA,CAAO,IAAI,aAAc,CAAA,gBAAgB,CAAC,CAAA,CAAE,IAAI,iBAAkB,EAAA,CAAA;AAAA,KACnE,CAAA,CAAA;AAED,IAAA,MAAA,CAAO,IAAK,CAAA,YAAY,CAAE,CAAA,qBAAA,CAAsB,CAAC,CAAA,CAAA;AAAA,GACnD;AACF,EAAA;AAEO,MAAM,mBAA6B,GAAA;AAAA,EACxC,IAAM,EAAA;AAAA,IACJ,OAAA,kBAAU,KAAA,CAAA,aAAA,CAAA,UAAA,EAAA,IAAA,EAAW,cAAY,CAAA;AAAA,IACjC,MACE,kBAAA,KAAA,CAAA,aAAA,CAAC,WAAY,EAAA,EAAA,UAAA,EAAY,IAAM,EAAA,yBAAA,EAA2B,KACxD,EAAA,kBAAA,KAAA,CAAA,aAAA,CAAC,UACC,EAAA,IAAA,kBAAA,KAAA,CAAA,aAAA,CAAC,cAAe,EAAA,IAAA,CAClB,CACF,CAAA;AAAA,GAEJ;AAAA,EACA,IAAM,EAAA,OAAO,EAAE,aAAA,EAAe,MAAW,KAAA;AACvC,IAAM,MAAA,MAAA,GAAS,OAAO,aAAa,CAAA,CAAA;AACnC,IAAM,MAAA,GAAA,GAAM,MAAO,CAAA,QAAA,CAAS,IAAI,CAAA,CAAA;AAChC,IAAM,MAAA,MAAA,GAAS,MAAO,CAAA,SAAA,CAAU,cAAc,CAAA,CAAA;AAE9C,IAAA,MAAM,QAAQ,MAAM;AAClB,MAAA,MAAA,CAAO,IAAI,aAAc,CAAA,gBAAgB,CAAC,CAAA,CAAE,IAAI,iBAAkB,EAAA,CAAA;AAAA,KACnE,CAAA,CAAA;AAED,IAAM,MAAA,SAAA,CAAU,MAAM,MAAM,CAAA,CAAA;AAE5B,IAAA,MAAM,QAAQ,MAAM;AAClB,MAAA,MAAA,CAAO,GAAI,CAAA,aAAA,CAAc,gBAAgB,CAAC,EAAE,iBAAkB,EAAA,CAAA;AAAA,KAC/D,CAAA,CAAA;AAED,IAAM,MAAA,SAAA,CAAU,KAAM,CAAA,QAAA,CAAS,IAAI,CAAA,CAAA;AAGnC,IAAA,MAAM,QAAQ,MAAM;AAClB,MAAA,MAAA,CAAO,GAAI,CAAA,aAAA,CAAc,gBAAgB,CAAC,EAAE,iBAAkB,EAAA,CAAA;AAAA,KAC/D,CAAA,CAAA;AAED,IAAM,MAAA,SAAA,CAAU,SAAS,UAAU,CAAA,CAAA;AAEnC,IAAA,MAAM,QAAQ,MAAM;AAClB,MAAA,MAAA,CAAO,IAAI,aAAc,CAAA,gBAAgB,CAAC,CAAA,CAAE,IAAI,iBAAkB,EAAA,CAAA;AAAA,KACnE,CAAA,CAAA;AAED,IAAA,MAAA,CAAO,IAAK,CAAA,YAAY,CAAE,CAAA,qBAAA,CAAsB,CAAC,CAAA,CAAA;AAAA,GACnD;AACF,EAAA;AAEO,MAAM,gBAA0B,GAAA;AAAA,EACrC,IAAM,EAAA;AAAA,IACJ,OAAA,kBAAU,KAAA,CAAA,aAAA,CAAA,UAAA,EAAA,IAAA,EAAW,cAAY,CAAA;AAAA,IACjC,MACE,kBAAA,KAAA,CAAA,aAAA,CAAC,WAAY,EAAA,EAAA,UAAA,EAAY,IAAM,EAAA,yBAAA,EAA2B,KACxD,EAAA,kBAAA,KAAA,CAAA,aAAA,CAAC,UACC,EAAA,IAAA,kBAAA,KAAA,CAAA,aAAA,CAAC,cAAe,EAAA,IAAA,CAClB,CACF,CAAA;AAAA,GAEJ;AAAA,EACA,MAAA,EAAQ,CAAC,EAA4C,KAAA;AAA5C,IAAA,IAAA,EAAA,GAAA,EAAA,CAAA,CAAiC,IAAA,GAAA,SAAA,CAAjC,IAAiC,CAA/B,4BAAA,CAAA,EAAA;AACT,IAAA,MAAM,CAAC,QAAA,EAAU,WAAW,CAAA,GAAI,SAAS,KAAK,CAAA,CAAA;AAC9C,IAAA,MAAM,CAAC,gBAAA,EAAkB,mBAAmB,CAAA,GAAI,SAAS,EAAE,CAAA,CAAA;AAC3D,IAAA,SAAA,CAAU,MAAM;AACd,MAAA,UAAA,CAAW,MAAM;AACf,QAAA,WAAA,CAAY,IAAI,CAAA,CAAA;AAChB,QAAA,UAAA,CAAW,MAAM;AAEf,UAAA,mBAAA,CAAoB,SAAS,CAAA,CAAA;AAAA,WAC5B,GAAI,CAAA,CAAA;AAAA,SACN,GAAI,CAAA,CAAA;AAAA,KACT,EAAG,EAAE,CAAA,CAAA;AAEL,IAAA;AAAA;AAAA,sBAEE,KAAA,CAAA,aAAA;AAAA,QAAC,oBAAqB,CAAA,QAAA;AAAA,QAArB;AAAA,UACC,KAAO,EAAA;AAAA,YACL,aAAe,EAAA,MAAA;AAAA,YACf,gBAAgB,EAAC;AAAA,WACnB;AAAA,SAAA;AAAA,wBAEA,KAAA,CAAA,aAAA;AAAA,UAAC,iBAAA;AAAA,UAAA,cAAA,CAAA;AAAA,YAEC,0BAA4B,EAAA;AAAA,cAC1B,UAAY,EAAA,QAAA;AAAA,cACZ,gBAAA;AAAA,aACF;AAAA,WACI,EAAA,IAAA,CAAA;AAAA,SACN;AAAA,OACF;AAAA,MAAA;AAAA,GAEJ;AAAA,EACA,MAAM,YAAY;AAEhB,IAAM,MAAA,GAAA,GAAM,MAAO,CAAA,QAAA,CAAS,IAAI,CAAA,CAAA;AAEhC,IAAA,MAAM,QAAQ,MAAM;AAClB,MAAA,MAAA,CAAO,IAAI,aAAc,CAAA,gBAAgB,CAAC,CAAA,CAAE,IAAI,iBAAkB,EAAA,CAAA;AAAA,KACnE,CAAA,CAAA;AAED,IAAM,MAAA,OAAA;AAAA,MACJ,MAAM;AACJ,QAAA,MAAA,CAAO,GAAI,CAAA,aAAA,CAAc,gBAAgB,CAAC,EAAE,iBAAkB,EAAA,CAAA;AAAA,OAChE;AAAA,MACA,EAAE,SAAS,IAAK,EAAA;AAAA,KAClB,CAAA;AAEA,IAAM,MAAA,OAAA;AAAA,MACJ,MAAM;AACJ,QAAA,MAAA,CAAO,IAAI,aAAc,CAAA,gBAAgB,CAAC,CAAA,CAAE,IAAI,iBAAkB,EAAA,CAAA;AAAA,OACpE;AAAA,MACA,EAAE,SAAS,IAAK,EAAA;AAAA,KAClB,CAAA;AAAA,GACF;AACF;;;;"}
1
+ {"version":3,"file":"registerDialogTrigger.stories.esm.js","sources":["../src/registerDialogTrigger.stories.tsx"],"sourcesContent":["import { PlasmicCanvasContext } from \"@plasmicapp/host\";\nimport type { Meta, StoryObj } from \"@storybook/react\";\nimport { expect, fn, userEvent, waitFor, within } from \"@storybook/test\";\nimport React, { useEffect, useState } from \"react\";\nimport { BaseButton } from \"./registerButton\";\nimport { BaseDialog } from \"./registerDialog\";\nimport { BaseDialogTrigger } from \"./registerDialogTrigger\";\nimport { BaseModal } from \"./registerModal\";\nimport { BasePopover } from \"./registerPopover\";\n\nconst meta: Meta<typeof BaseDialogTrigger> = {\n title: \"Components/BaseDialogTrigger\",\n component: BaseDialogTrigger,\n args: {\n defaultOpen: false,\n onOpenChange: fn(),\n },\n};\n\nexport default meta;\ntype Story = StoryObj<typeof BaseDialogTrigger>;\n\nconst DefaultContent = () => (\n <div data-testid=\"dialog-content\">\n <h2>Dialog Title</h2>\n <p>Dialog content goes here</p>\n </div>\n);\n\nexport const WithModal: Story = {\n args: {\n trigger: <BaseButton>Open modal</BaseButton>,\n dialog: (\n <BaseModal isDismissable={true} isKeyboardDismissDisabled={false}>\n <BaseDialog>\n <DefaultContent />\n </BaseDialog>\n </BaseModal>\n ),\n },\n play: async ({ canvasElement, args }) => {\n const canvas = within(canvasElement);\n const doc = within(document.body);\n const button = canvas.getByText(\"Open modal\");\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n await userEvent.click(button);\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).toBeInTheDocument();\n });\n\n await userEvent.click(document.body);\n\n // Modal should close\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n // With keyboard navigation, press Escape to dismiss\n await userEvent.click(button);\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).toBeInTheDocument();\n });\n\n await userEvent.keyboard(\"{Escape}\");\n // dialog should close\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n expect(args.onOpenChange).toHaveBeenCalledTimes(4);\n },\n};\n\nexport const WithPopover: Story = {\n args: {\n trigger: <BaseButton>Open popover</BaseButton>,\n dialog: (\n <BasePopover isKeyboardDismissDisabled={false}>\n <BaseDialog>\n <DefaultContent />\n </BaseDialog>\n </BasePopover>\n ),\n },\n play: async ({ canvasElement, args }) => {\n const canvas = within(canvasElement);\n const doc = within(document.body);\n const button = canvas.getByText(\"Open popover\");\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n await userEvent.click(button);\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).toBeInTheDocument();\n });\n\n await userEvent.click(document.body);\n\n // popover should close\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n // With keyboard navigation, press Escape to dismiss\n await userEvent.click(button);\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).toBeInTheDocument();\n });\n\n await userEvent.keyboard(\"{Escape}\");\n // dialog should close\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n expect(args.onOpenChange).toHaveBeenCalledTimes(4);\n },\n};\n\nexport const WithPopoverNonModal: Story = {\n args: {\n trigger: <BaseButton>Open popover</BaseButton>,\n dialog: (\n <BasePopover isNonModal={true} isKeyboardDismissDisabled={false}>\n <BaseDialog>\n <DefaultContent />\n </BaseDialog>\n </BasePopover>\n ),\n },\n play: async ({ canvasElement, args }) => {\n const canvas = within(canvasElement);\n const doc = within(document.body);\n const button = canvas.getByText(\"Open popover\");\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n await userEvent.click(button);\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).toBeInTheDocument();\n });\n\n await userEvent.click(document.body);\n\n // popover should close\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).toBeInTheDocument();\n });\n\n await userEvent.keyboard(\"{Escape}\");\n // dialog should close\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n expect(args.onOpenChange).toHaveBeenCalledTimes(2);\n },\n};\n\nexport const SelectedInCanvas: Story = {\n args: {\n trigger: <BaseButton>Open popover</BaseButton>,\n dialog: (\n <BasePopover isNonModal={true} isKeyboardDismissDisabled={false}>\n <BaseDialog>\n <DefaultContent />\n </BaseDialog>\n </BasePopover>\n ),\n },\n render: ({ __plasmic_selection_prop__, ...args }) => {\n const [selected, setSelected] = useState(false);\n const [selectedSlotName, setSelectedSlotName] = useState(\"\");\n useEffect(() => {\n setTimeout(() => {\n setSelected(true);\n setTimeout(() => {\n // Simulate trigger slot selection in Plasmic canvas\n setSelectedSlotName(\"trigger\");\n }, 1000);\n }, 1000);\n }, []);\n\n return (\n // Simulate Plasmic canvas envirnment\n <PlasmicCanvasContext.Provider\n value={{\n componentName: \"test\",\n globalVariants: {},\n }}\n >\n <BaseDialogTrigger\n // Simulate node selection in Plasmic canvas\n __plasmic_selection_prop__={{\n isSelected: selected,\n selectedSlotName,\n }}\n {...args}\n />\n </PlasmicCanvasContext.Provider>\n );\n },\n play: async () => {\n // popovers are rendered outside canvas, so we need to use document.body\n const doc = within(document.body);\n\n await waitFor(() => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n });\n\n await waitFor(\n () => {\n expect(doc.queryByTestId(\"dialog-content\")).toBeInTheDocument();\n },\n { timeout: 1100 }\n );\n\n await waitFor(\n () => {\n expect(doc.queryByTestId(\"dialog-content\")).not.toBeInTheDocument();\n },\n { timeout: 1100 }\n ); // the slot selected is trigger, so the popover should close\n },\n};\n"],"names":[],"mappings":"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"}
@@ -69,7 +69,7 @@ const BaseModal = React.forwardRef(
69
69
  const isSelected = (_d = (_c = (_b = host.usePlasmicCanvasComponentInfo) == null ? void 0 : _b(props)) == null ? void 0 : _c.isSelected) != null ? _d : false;
70
70
  const contextProps = React__default.default.useContext(contexts.PlasmicDialogTriggerContext);
71
71
  const isStandalone = !contextProps;
72
- const mergedProps = reactAria.mergeProps(contextProps, rest, {
72
+ const mergedProps = reactAria.mergeProps(rest, {
73
73
  isOpen: isStandalone ? isSelected || isOpen : contextProps.isOpen,
74
74
  /*
75
75
  isDismissable on canvas (non-interactive mode) causes the following two issues:
@@ -1 +1 @@
1
- {"version":3,"file":"registerModal.cjs.js","sources":["../src/registerModal.tsx"],"sourcesContent":["import {\n PlasmicElement,\n usePlasmicCanvasComponentInfo,\n usePlasmicCanvasContext,\n} from \"@plasmicapp/host\";\nimport React, { forwardRef, useImperativeHandle } from \"react\";\nimport { mergeProps } from \"react-aria\";\nimport { Modal, ModalOverlay, ModalOverlayProps } from \"react-aria-components\";\nimport { hasParent } from \"./common\";\nimport { PlasmicDialogTriggerContext } from \"./contexts\";\nimport {\n CodeComponentMetaOverrides,\n HasControlContextData,\n makeComponentName,\n Registerable,\n registerComponentHelper,\n WithPlasmicCanvasComponentInfo,\n} from \"./utils\";\n\nexport interface BaseModalProps\n extends ModalOverlayProps,\n WithPlasmicCanvasComponentInfo,\n HasControlContextData {\n modalOverlayClass?: string;\n resetClassName?: string;\n children?: React.ReactNode;\n className?: string;\n}\n\nexport interface BaseModalActions {\n close(): void;\n open(): void;\n}\n\nexport const BaseModal = forwardRef<BaseModalActions, BaseModalProps>(\n function BaseModalInner(props, ref) {\n const {\n children,\n modalOverlayClass,\n className,\n isOpen,\n resetClassName,\n setControlContextData,\n isDismissable,\n ...rest\n } = props;\n\n const canvasCtx = usePlasmicCanvasContext();\n const isEditMode = canvasCtx && canvasCtx.interactive === false;\n const isSelected =\n usePlasmicCanvasComponentInfo?.(props)?.isSelected ?? false;\n\n const contextProps = React.useContext(PlasmicDialogTriggerContext);\n const isStandalone = !contextProps;\n // TODO: React-aria does not like modal being passed defaultOpen while its inside a DialogTrigger.\n const mergedProps = mergeProps(contextProps, rest, {\n isOpen: isStandalone ? isSelected || isOpen : contextProps.isOpen,\n /*\n isDismissable on canvas (non-interactive mode) causes the following two issues:\n 1. Clicking anywhere inside the modal dismisses it\n 2. If the modal is auto-opened due to selection in outline tab, the modal stays open despite issue #1, but the text elements inside the modal are no longer selectable, and therefore the text or headings inside the modal are not editable.\n\n To fix the above issue, we set an interim isDismissable state to false in edit mode, because it only matters in interactive mode.\n */\n isDismissable: isEditMode ? false : isDismissable,\n });\n\n setControlContextData?.({\n parent: isStandalone ? undefined : {},\n });\n\n // Expose close operation using useImperativeHandle\n useImperativeHandle(ref, () => ({\n close: () => {\n mergedProps.onOpenChange?.(false);\n },\n open: () => {\n mergedProps.onOpenChange?.(true);\n },\n }));\n\n return (\n <ModalOverlay\n {...mergedProps}\n className={`${resetClassName} ${modalOverlayClass}`}\n >\n <Modal className={className}>{children}</Modal>\n </ModalOverlay>\n );\n }\n);\n\nexport const MODAL_COMPONENT_NAME = makeComponentName(\"modal\");\n\nexport const MODAL_DEFAULT_SLOT_CONTENT: PlasmicElement = {\n type: \"vbox\",\n styles: {\n width: \"stretch\",\n padding: 0,\n gap: \"10px\",\n justifyContent: \"flex-start\",\n alignItems: \"flex-start\",\n },\n children: [\n {\n type: \"text\",\n value: \"Heading\",\n tag: \"h2\",\n },\n {\n type: \"text\",\n value: \"This is a Modal!\",\n },\n {\n type: \"text\",\n value: \"You can put anything you can imagine here!\",\n styles: {\n fontWeight: 500,\n },\n },\n {\n type: \"text\",\n value:\n \"Use it in a `Aria Dialog Trigger` component to trigger it on a button click!\",\n },\n ],\n};\n\nexport function registerModal(\n loader?: Registerable,\n overrides?: CodeComponentMetaOverrides<typeof BaseModal>\n) {\n registerComponentHelper(\n loader,\n BaseModal,\n {\n name: MODAL_COMPONENT_NAME,\n displayName: \"Aria Modal\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerModal\",\n importName: \"BaseModal\",\n styleSections: true,\n defaultStyles: {\n // centering the modal on the page by default\n position: \"fixed\",\n top: \"10%\",\n left: \"50%\",\n width: \"50%\",\n transform: \"translateX(-50%)\",\n borderWidth: \"1px\",\n borderStyle: \"solid\",\n borderColor: \"black\",\n padding: \"20px\",\n maxWidth: \"300px\",\n backgroundColor: \"#FDE3C3\",\n },\n refActions: {\n open: {\n description: \"Open the modal\",\n argTypes: [],\n },\n close: {\n description: \"Close the modal\",\n argTypes: [],\n },\n },\n props: {\n children: {\n type: \"slot\",\n mergeWithParent: true,\n defaultValue: MODAL_DEFAULT_SLOT_CONTENT,\n },\n modalOverlayClass: {\n type: \"class\",\n displayName: \"Modal Overlay\",\n },\n isOpen: {\n type: \"boolean\",\n editOnly: true,\n uncontrolledProp: \"defaultOpen\",\n defaultValueHint: true,\n defaultValue: true,\n hidden: hasParent,\n },\n isDismissable: {\n type: \"boolean\",\n description:\n \"Whether to close the modal when the user interacts outside it.\",\n },\n isKeyboardDismissDisabled: {\n type: \"boolean\",\n description:\n \"Whether pressing the escape key to close the modal should be disabled.\",\n },\n onOpenChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"isOpen\", type: \"boolean\" }],\n },\n resetClassName: {\n type: \"themeResetClass\",\n },\n },\n states: {\n isOpen: {\n type: \"writable\",\n valueProp: \"isOpen\",\n onChangeProp: \"onOpenChange\",\n variableType: \"boolean\",\n hidden: hasParent,\n },\n },\n trapsFocus: true,\n },\n overrides\n );\n}\n"],"names":["forwardRef","usePlasmicCanvasContext","usePlasmicCanvasComponentInfo","React","PlasmicDialogTriggerContext","mergeProps","useImperativeHandle","_a","ModalOverlay","Modal","makeComponentName","registerComponentHelper","hasParent"],"mappings":"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"}
1
+ {"version":3,"file":"registerModal.cjs.js","sources":["../src/registerModal.tsx"],"sourcesContent":["import {\n PlasmicElement,\n usePlasmicCanvasComponentInfo,\n usePlasmicCanvasContext,\n} from \"@plasmicapp/host\";\nimport React, { forwardRef, useImperativeHandle } from \"react\";\nimport { mergeProps } from \"react-aria\";\nimport { Modal, ModalOverlay, ModalOverlayProps } from \"react-aria-components\";\nimport { hasParent } from \"./common\";\nimport { PlasmicDialogTriggerContext } from \"./contexts\";\nimport {\n CodeComponentMetaOverrides,\n HasControlContextData,\n makeComponentName,\n Registerable,\n registerComponentHelper,\n WithPlasmicCanvasComponentInfo,\n} from \"./utils\";\n\nexport interface BaseModalProps\n extends ModalOverlayProps,\n WithPlasmicCanvasComponentInfo,\n HasControlContextData {\n modalOverlayClass?: string;\n resetClassName?: string;\n children?: React.ReactNode;\n className?: string;\n}\n\nexport interface BaseModalActions {\n close(): void;\n open(): void;\n}\n\nexport const BaseModal = forwardRef<BaseModalActions, BaseModalProps>(\n function BaseModalInner(props, ref) {\n const {\n children,\n modalOverlayClass,\n className,\n isOpen,\n resetClassName,\n setControlContextData,\n isDismissable,\n ...rest\n } = props;\n\n const canvasCtx = usePlasmicCanvasContext();\n const isEditMode = canvasCtx && canvasCtx.interactive === false;\n const isSelected =\n usePlasmicCanvasComponentInfo?.(props)?.isSelected ?? false;\n\n const contextProps = React.useContext(PlasmicDialogTriggerContext);\n const isStandalone = !contextProps;\n const mergedProps = mergeProps(rest, {\n isOpen: isStandalone ? isSelected || isOpen : contextProps.isOpen,\n /*\n isDismissable on canvas (non-interactive mode) causes the following two issues:\n 1. Clicking anywhere inside the modal dismisses it\n 2. If the modal is auto-opened due to selection in outline tab, the modal stays open despite issue #1, but the text elements inside the modal are no longer selectable, and therefore the text or headings inside the modal are not editable.\n\n To fix the above issue, we set an interim isDismissable state to false in edit mode, because it only matters in interactive mode.\n */\n isDismissable: isEditMode ? false : isDismissable,\n });\n\n setControlContextData?.({\n parent: isStandalone ? undefined : {},\n });\n\n // Expose close operation using useImperativeHandle\n useImperativeHandle(ref, () => ({\n close: () => {\n mergedProps.onOpenChange?.(false);\n },\n open: () => {\n mergedProps.onOpenChange?.(true);\n },\n }));\n\n return (\n <ModalOverlay\n {...mergedProps}\n className={`${resetClassName} ${modalOverlayClass}`}\n >\n <Modal className={className}>{children}</Modal>\n </ModalOverlay>\n );\n }\n);\n\nexport const MODAL_COMPONENT_NAME = makeComponentName(\"modal\");\n\nexport const MODAL_DEFAULT_SLOT_CONTENT: PlasmicElement = {\n type: \"vbox\",\n styles: {\n width: \"stretch\",\n padding: 0,\n gap: \"10px\",\n justifyContent: \"flex-start\",\n alignItems: \"flex-start\",\n },\n children: [\n {\n type: \"text\",\n value: \"Heading\",\n tag: \"h2\",\n },\n {\n type: \"text\",\n value: \"This is a Modal!\",\n },\n {\n type: \"text\",\n value: \"You can put anything you can imagine here!\",\n styles: {\n fontWeight: 500,\n },\n },\n {\n type: \"text\",\n value:\n \"Use it in a `Aria Dialog Trigger` component to trigger it on a button click!\",\n },\n ],\n};\n\nexport function registerModal(\n loader?: Registerable,\n overrides?: CodeComponentMetaOverrides<typeof BaseModal>\n) {\n registerComponentHelper(\n loader,\n BaseModal,\n {\n name: MODAL_COMPONENT_NAME,\n displayName: \"Aria Modal\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerModal\",\n importName: \"BaseModal\",\n styleSections: true,\n defaultStyles: {\n // centering the modal on the page by default\n position: \"fixed\",\n top: \"10%\",\n left: \"50%\",\n width: \"50%\",\n transform: \"translateX(-50%)\",\n borderWidth: \"1px\",\n borderStyle: \"solid\",\n borderColor: \"black\",\n padding: \"20px\",\n maxWidth: \"300px\",\n backgroundColor: \"#FDE3C3\",\n },\n refActions: {\n open: {\n description: \"Open the modal\",\n argTypes: [],\n },\n close: {\n description: \"Close the modal\",\n argTypes: [],\n },\n },\n props: {\n children: {\n type: \"slot\",\n mergeWithParent: true,\n defaultValue: MODAL_DEFAULT_SLOT_CONTENT,\n },\n modalOverlayClass: {\n type: \"class\",\n displayName: \"Modal Overlay\",\n },\n isOpen: {\n type: \"boolean\",\n editOnly: true,\n uncontrolledProp: \"defaultOpen\",\n defaultValueHint: true,\n defaultValue: true,\n hidden: hasParent,\n },\n isDismissable: {\n type: \"boolean\",\n description:\n \"Whether to close the modal when the user interacts outside it.\",\n },\n isKeyboardDismissDisabled: {\n type: \"boolean\",\n description:\n \"Whether pressing the escape key to close the modal should be disabled.\",\n },\n onOpenChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"isOpen\", type: \"boolean\" }],\n },\n resetClassName: {\n type: \"themeResetClass\",\n },\n },\n states: {\n isOpen: {\n type: \"writable\",\n valueProp: \"isOpen\",\n onChangeProp: \"onOpenChange\",\n variableType: \"boolean\",\n hidden: hasParent,\n },\n },\n trapsFocus: true,\n },\n overrides\n );\n}\n"],"names":["forwardRef","usePlasmicCanvasContext","usePlasmicCanvasComponentInfo","React","PlasmicDialogTriggerContext","mergeProps","useImperativeHandle","_a","ModalOverlay","Modal","makeComponentName","registerComponentHelper","hasParent"],"mappings":"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"}
@@ -63,7 +63,7 @@ const BaseModal = forwardRef(
63
63
  const isSelected = (_d = (_c = (_b = usePlasmicCanvasComponentInfo) == null ? void 0 : _b(props)) == null ? void 0 : _c.isSelected) != null ? _d : false;
64
64
  const contextProps = React.useContext(PlasmicDialogTriggerContext);
65
65
  const isStandalone = !contextProps;
66
- const mergedProps = mergeProps(contextProps, rest, {
66
+ const mergedProps = mergeProps(rest, {
67
67
  isOpen: isStandalone ? isSelected || isOpen : contextProps.isOpen,
68
68
  /*
69
69
  isDismissable on canvas (non-interactive mode) causes the following two issues: