@plasmicapp/react-web 0.2.315 → 0.2.317

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plasmicapp/react-web",
3
- "version": "0.2.315",
3
+ "version": "0.2.317",
4
4
  "description": "plasmic library for rendering in the presentational style",
5
5
  "main": "dist/index.cjs.js",
6
6
  "types": "dist/index.d.ts",
@@ -75,7 +75,7 @@
75
75
  "scripts": {
76
76
  "build": "rollup -c && mkdir -p lib && cp src/styles/plasmic.css lib/",
77
77
  "clean": "rm -rf dist/ skinny/dist/ lib/host/*js lib/host/*.ts lib/host/*.map lib/data-sources/*js lib/data-sources/*.ts lib/data-sources/*.map lib/query/*js lib/query/*.ts lib/query/*.map lib/auth/*js lib/auth/*.ts lib/auth/*.map lib/splits/*js lib/splits/*.ts lib/splits/*.map",
78
- "test": "yarn --cwd=../.. test",
78
+ "test": "TEST_CWD=`pwd` yarn --cwd=../.. test",
79
79
  "lint": "eslint",
80
80
  "upgrade-aria": "yarn upgrade --latest --scope @react-aria && yarn upgrade --latest --scope @react-stately && yarn upgrade --latest --scope @react-types",
81
81
  "prepublishOnly": "npm run build",
@@ -86,13 +86,13 @@
86
86
  "test-storybook": "test-storybook"
87
87
  },
88
88
  "dependencies": {
89
- "@plasmicapp/auth-react": "0.0.19",
90
- "@plasmicapp/data-sources": "0.1.146",
91
- "@plasmicapp/data-sources-context": "0.1.20",
92
- "@plasmicapp/host": "1.0.188",
93
- "@plasmicapp/loader-splits": "1.0.54",
94
- "@plasmicapp/prepass": "1.0.13",
95
- "@plasmicapp/query": "0.1.77",
89
+ "@plasmicapp/auth-react": "0.0.20",
90
+ "@plasmicapp/data-sources": "0.1.147",
91
+ "@plasmicapp/data-sources-context": "0.1.21",
92
+ "@plasmicapp/host": "1.0.189",
93
+ "@plasmicapp/loader-splits": "1.0.55",
94
+ "@plasmicapp/prepass": "1.0.14",
95
+ "@plasmicapp/query": "0.1.78",
96
96
  "@react-aria/checkbox": "^3.11.2",
97
97
  "@react-aria/focus": "^3.14.3",
98
98
  "@react-aria/interactions": "^3.19.1",
@@ -157,5 +157,5 @@
157
157
  "react": ">=16.8.0",
158
158
  "react-dom": ">=16.8.0"
159
159
  },
160
- "gitHead": "594aedc08ba8399a46ef84977fbfc6130ba8e4c5"
160
+ "gitHead": "cb2784a56da74876ec8de2a3ab6e662d8ef9c200"
161
161
  }
@@ -39,7 +39,7 @@ function useTextInput(plasmicClass, props, config, ref) {
39
39
  },
40
40
  },
41
41
  _c[config.input] = {
42
- props: __assign(__assign({}, omit.apply(void 0, __spreadArray(__spreadArray([rest], __read(plasmicClass.internalArgProps.filter(function (prop) { return prop !== "required"; })), false), __read(plasmicClass.internalVariantProps), false))), { disabled: isDisabled, ref: inputRef, className: inputClassName, style: inputStyle }),
42
+ props: __assign(__assign({}, omit.apply(void 0, __spreadArray(__spreadArray([rest], __read(plasmicClass.internalArgProps.filter(function (prop) { return prop !== "required" && prop !== "onChange"; })), false), __read(plasmicClass.internalVariantProps), false))), { disabled: isDisabled, ref: inputRef, className: inputClassName, style: inputStyle }),
43
43
  },
44
44
  _c);
45
45
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/plume/text-input/index.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { omit, pick } from \"../../common\";\nimport { Overrides } from \"../../render/elements\";\nimport {\n AnyPlasmicClass,\n mergeVariantToggles,\n PlasmicClassArgs,\n PlasmicClassOverrides,\n PlasmicClassVariants,\n VariantDef,\n} from \"../plume-utils\";\n\nexport interface BaseTextInputProps\n extends Omit<React.ComponentProps<\"input\">, \"type\" | \"disabled\">,\n PlumeTextInputProps {}\n\nexport interface PlumeTextInputProps {\n showStartIcon?: boolean;\n showEndIcon?: boolean;\n startIcon?: React.ReactNode;\n endIcon?: React.ReactNode;\n isDisabled?: boolean;\n type?: \"text\" | \"password\" | \"email\" | \"url\" | string;\n inputClassName?: string;\n inputStyle?: React.CSSProperties;\n className?: string;\n style?: React.CSSProperties;\n}\n\nexport interface TextInputRefValue {\n focus: () => void;\n blur: () => void;\n getRoot: () => HTMLElement | null;\n getInput: () => HTMLInputElement | null;\n}\n\nexport type TextInputRef = React.Ref<TextInputRefValue>;\n\ninterface TextInputConfig<C extends AnyPlasmicClass> {\n showStartIconVariant: VariantDef<PlasmicClassVariants<C>>;\n showEndIconVariant?: VariantDef<PlasmicClassVariants<C>>;\n isDisabledVariant?: VariantDef<PlasmicClassVariants<C>>;\n startIconSlot?: keyof PlasmicClassArgs<C>;\n endIconSlot?: keyof PlasmicClassArgs<C>;\n root: keyof PlasmicClassOverrides<C>;\n input: keyof PlasmicClassOverrides<C>;\n}\n\nexport function useTextInput<\n P extends PlumeTextInputProps,\n C extends AnyPlasmicClass\n>(\n plasmicClass: C,\n props: P,\n config: TextInputConfig<C>,\n ref: TextInputRef = null\n) {\n const {\n isDisabled,\n startIcon,\n endIcon,\n showStartIcon,\n showEndIcon,\n className,\n style,\n inputClassName,\n inputStyle,\n ...rest\n } = props;\n const rootRef = React.useRef<HTMLElement>(null);\n const inputRef = React.useRef<HTMLInputElement>(null);\n\n React.useImperativeHandle(\n ref,\n () => ({\n focus() {\n inputRef.current?.focus();\n },\n blur() {\n inputRef.current?.blur();\n },\n getRoot() {\n return rootRef.current;\n },\n getInput() {\n return inputRef.current;\n },\n getBoundingClientRect() {\n return rootRef.current?.getBoundingClientRect();\n },\n }),\n [rootRef, inputRef]\n );\n\n const variants = {\n ...pick(props, ...plasmicClass.internalVariantProps),\n ...mergeVariantToggles(\n { def: config.showStartIconVariant, active: showStartIcon },\n { def: config.showEndIconVariant, active: showEndIcon },\n { def: config.isDisabledVariant, active: isDisabled }\n ),\n };\n\n const args = {\n ...pick(props, ...plasmicClass.internalArgProps),\n ...(config.startIconSlot && { [config.startIconSlot]: startIcon }),\n ...(config.endIconSlot && { [config.endIconSlot]: endIcon }),\n };\n\n const overrides: Overrides = {\n [config.root]: {\n props: {\n ref: rootRef,\n className,\n style,\n },\n },\n [config.input]: {\n props: {\n ...omit(\n rest as any,\n // We need to remove `required` from the list of internalArgProps to\n // be omitted in the props being passed through because Plume pkg\n // <= 19.1.1 had a bug: input[required] was not linked to the\n // `required` arg as it should.\n ...plasmicClass.internalArgProps.filter(\n (prop) => prop !== \"required\"\n ),\n ...plasmicClass.internalVariantProps\n ),\n disabled: isDisabled,\n ref: inputRef,\n className: inputClassName,\n style: inputStyle,\n },\n },\n };\n\n return {\n plasmicProps: {\n variants: variants as PlasmicClassVariants<C>,\n args: args as PlasmicClassArgs<C>,\n overrides: overrides as PlasmicClassOverrides<C>,\n },\n };\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/plume/text-input/index.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { omit, pick } from \"../../common\";\nimport { Overrides } from \"../../render/elements\";\nimport {\n AnyPlasmicClass,\n mergeVariantToggles,\n PlasmicClassArgs,\n PlasmicClassOverrides,\n PlasmicClassVariants,\n VariantDef,\n} from \"../plume-utils\";\n\nexport interface BaseTextInputProps\n extends Omit<React.ComponentProps<\"input\">, \"type\" | \"disabled\">,\n PlumeTextInputProps {}\n\nexport interface PlumeTextInputProps {\n showStartIcon?: boolean;\n showEndIcon?: boolean;\n startIcon?: React.ReactNode;\n endIcon?: React.ReactNode;\n isDisabled?: boolean;\n type?: \"text\" | \"password\" | \"email\" | \"url\" | string;\n inputClassName?: string;\n inputStyle?: React.CSSProperties;\n className?: string;\n style?: React.CSSProperties;\n}\n\nexport interface TextInputRefValue {\n focus: () => void;\n blur: () => void;\n getRoot: () => HTMLElement | null;\n getInput: () => HTMLInputElement | null;\n}\n\nexport type TextInputRef = React.Ref<TextInputRefValue>;\n\ninterface TextInputConfig<C extends AnyPlasmicClass> {\n showStartIconVariant: VariantDef<PlasmicClassVariants<C>>;\n showEndIconVariant?: VariantDef<PlasmicClassVariants<C>>;\n isDisabledVariant?: VariantDef<PlasmicClassVariants<C>>;\n startIconSlot?: keyof PlasmicClassArgs<C>;\n endIconSlot?: keyof PlasmicClassArgs<C>;\n root: keyof PlasmicClassOverrides<C>;\n input: keyof PlasmicClassOverrides<C>;\n}\n\nexport function useTextInput<\n P extends PlumeTextInputProps,\n C extends AnyPlasmicClass\n>(\n plasmicClass: C,\n props: P,\n config: TextInputConfig<C>,\n ref: TextInputRef = null\n) {\n const {\n isDisabled,\n startIcon,\n endIcon,\n showStartIcon,\n showEndIcon,\n className,\n style,\n inputClassName,\n inputStyle,\n ...rest\n } = props;\n const rootRef = React.useRef<HTMLElement>(null);\n const inputRef = React.useRef<HTMLInputElement>(null);\n\n React.useImperativeHandle(\n ref,\n () => ({\n focus() {\n inputRef.current?.focus();\n },\n blur() {\n inputRef.current?.blur();\n },\n getRoot() {\n return rootRef.current;\n },\n getInput() {\n return inputRef.current;\n },\n getBoundingClientRect() {\n return rootRef.current?.getBoundingClientRect();\n },\n }),\n [rootRef, inputRef]\n );\n\n const variants = {\n ...pick(props, ...plasmicClass.internalVariantProps),\n ...mergeVariantToggles(\n { def: config.showStartIconVariant, active: showStartIcon },\n { def: config.showEndIconVariant, active: showEndIcon },\n { def: config.isDisabledVariant, active: isDisabled }\n ),\n };\n\n const args = {\n ...pick(props, ...plasmicClass.internalArgProps),\n ...(config.startIconSlot && { [config.startIconSlot]: startIcon }),\n ...(config.endIconSlot && { [config.endIconSlot]: endIcon }),\n };\n\n const overrides: Overrides = {\n [config.root]: {\n props: {\n ref: rootRef,\n className,\n style,\n },\n },\n [config.input]: {\n props: {\n // We throw all of extra \"rest\" onto the `input` element, except props\n // that were meant for the Plasmic component -- the args and variants.\n // We make two exceptions though:\n // 1. onChange - Plume text-input is kind of screwy, and the \"value\" state\n // of the input element is not exposed to the outer component via the\n // normal way; instead, we register a separate \"value\" state that's\n // in additional to the input.value state. So that means there are\n // two `onChange` that we need to pipe through -- the one that updates\n // `$state.input.value`, the input value state internal to the component,\n // and the one that updates `$state.value`, the separate value state\n // exposed to the outside. The generated <PlasmicTextInput/> will pass\n // in the onChange for updating the internal `$state.input.value`, and\n // props.onChange here will pass in the onChange for updating the\n // externally exposed `$state.value`. Wow! Very sad. If\n // `$state.input.value` were just externally exposed, then we wouldn't\n // need to do so; but we can't retroactively update people's TextInput\n // components that have already been forked :-/\n // 2. `required`, because that prop existed prior to Plume pkg <= 19.1.1,\n // but it was not linked to the input's `required` attribute as it should.\n // So this again works around older versions of TextInput out there.\n ...omit(\n rest as any,\n ...plasmicClass.internalArgProps.filter(\n (prop) => prop !== \"required\" && prop !== \"onChange\"\n ),\n ...plasmicClass.internalVariantProps\n ),\n disabled: isDisabled,\n ref: inputRef,\n className: inputClassName,\n style: inputStyle,\n },\n },\n };\n\n return {\n plasmicProps: {\n variants: variants as PlasmicClassVariants<C>,\n args: args as PlasmicClassArgs<C>,\n overrides: overrides as PlasmicClassOverrides<C>,\n },\n };\n}\n"],"names":[],"mappings":"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"}