@mittwald/flow-react-components 0.2.0-alpha.308 → 0.2.0-alpha.309

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.
@@ -42,8 +42,7 @@ const FileDropZone = flowComponent(
42
42
  const files = await Promise.all(
43
43
  fileDropItems.filter((f) => !accept || accept?.includes(f.type)).map(async (f) => {
44
44
  const file = await f.getFile();
45
- await addAwaitedArrayBuffer(file);
46
- return file;
45
+ return await addAwaitedArrayBuffer(file);
47
46
  })
48
47
  );
49
48
  if (files.length > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"FileDropZone.mjs","sources":["../../../../../../src/components/FileDropZone/FileDropZone.tsx"],"sourcesContent":["import { type FC, type PropsWithChildren, useRef } from \"react\";\nimport React from \"react\";\nimport * as Aria from \"react-aria-components\";\nimport { IllustratedMessage } from \"@/components/IllustratedMessage\";\nimport type { PropsWithClassName } from \"@/lib/types/props\";\nimport styles from \"./FileDropZone.module.scss\";\nimport clsx from \"clsx\";\nimport type { FileInputOnChangeHandler } from \"@/components/FileField/components/FileInput\";\nimport type { PropsContext } from \"@/lib/propsContext\";\nimport { PropsContextProvider } from \"@/lib/propsContext\";\nimport {\n flowComponent,\n type FlowComponentProps,\n} from \"@/lib/componentFactory/flowComponent\";\nimport type { DropEvent, FocusableElement } from \"@react-types/shared\";\nimport { addAwaitedArrayBuffer } from \"@mittwald/flow-core\";\n\nexport interface FileDropZoneProps\n extends PropsWithClassName,\n FlowComponentProps<FocusableElement>,\n PropsWithChildren,\n Pick<Aria.InputProps, \"accept\" | \"multiple\" | \"name\"> {\n onChange?: FileInputOnChangeHandler;\n}\n\n/** @flr-generate all */\nexport const FileDropZone: FC<FileDropZoneProps> = flowComponent(\n \"FileDropZone\",\n (props) => {\n const {\n multiple,\n accept,\n className,\n onChange: onChangeDropZone,\n children,\n name,\n } = props;\n\n const fileFieldRef = useRef<HTMLInputElement>(null);\n const rootClassName = clsx(styles.fileDropZone, className);\n\n const propsContext: PropsContext = {\n FileField: {\n name,\n onChange: onChangeDropZone,\n ref: fileFieldRef,\n accept: accept,\n multiple: multiple,\n Button: { variant: \"outline\", color: \"dark\" },\n },\n };\n\n const onDropHandler = async (event: DropEvent) => {\n const fileDropItems = event.items.filter(\n (file) => file.kind === \"file\",\n ) as Aria.FileDropItem[];\n\n const files = await Promise.all(\n fileDropItems\n .filter((f) => !accept || accept?.includes(f.type))\n .map(async (f) => {\n const file = await f.getFile();\n await addAwaitedArrayBuffer(file);\n return file;\n }),\n );\n\n if (files.length > 0) {\n const fileTransfer = new DataTransfer();\n for (const file of multiple ? files : [files[0]]) {\n if (file) {\n fileTransfer.items.add(file);\n }\n }\n\n onChangeDropZone?.(fileTransfer.files);\n if (fileFieldRef.current) {\n fileFieldRef.current.files = fileTransfer.files;\n }\n }\n };\n\n return (\n <Aria.DropZone className={rootClassName} onDrop={onDropHandler}>\n <IllustratedMessage color=\"dark\">\n <PropsContextProvider props={propsContext} mergeInParentContext>\n {children}\n </PropsContextProvider>\n </IllustratedMessage>\n </Aria.DropZone>\n );\n },\n);\n\nexport default FileDropZone;\n"],"names":[],"mappings":";;;;;;;;;;;;AA0BO,MAAM,YAAsC,GAAA,aAAA;AAAA,EACjD,cAAA;AAAA,EACA,CAAC,KAAU,KAAA;AACT,IAAM,MAAA;AAAA,MACJ,QAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,MACA,QAAU,EAAA,gBAAA;AAAA,MACV,QAAA;AAAA,MACA;AAAA,KACE,GAAA,KAAA;AAEJ,IAAM,MAAA,YAAA,GAAe,OAAyB,IAAI,CAAA;AAClD,IAAA,MAAM,aAAgB,GAAA,IAAA,CAAK,MAAO,CAAA,YAAA,EAAc,SAAS,CAAA;AAEzD,IAAA,MAAM,YAA6B,GAAA;AAAA,MACjC,SAAW,EAAA;AAAA,QACT,IAAA;AAAA,QACA,QAAU,EAAA,gBAAA;AAAA,QACV,GAAK,EAAA,YAAA;AAAA,QACL,MAAA;AAAA,QACA,QAAA;AAAA,QACA,MAAQ,EAAA,EAAE,OAAS,EAAA,SAAA,EAAW,OAAO,MAAO;AAAA;AAC9C,KACF;AAEA,IAAM,MAAA,aAAA,GAAgB,OAAO,KAAqB,KAAA;AAChD,MAAM,MAAA,aAAA,GAAgB,MAAM,KAAM,CAAA,MAAA;AAAA,QAChC,CAAC,IAAS,KAAA,IAAA,CAAK,IAAS,KAAA;AAAA,OAC1B;AAEA,MAAM,MAAA,KAAA,GAAQ,MAAM,OAAQ,CAAA,GAAA;AAAA,QAC1B,aACG,CAAA,MAAA,CAAO,CAAC,CAAA,KAAM,CAAC,MAAU,IAAA,MAAA,EAAQ,QAAS,CAAA,CAAA,CAAE,IAAI,CAAC,CACjD,CAAA,GAAA,CAAI,OAAO,CAAM,KAAA;AAChB,UAAM,MAAA,IAAA,GAAO,MAAM,CAAA,CAAE,OAAQ,EAAA;AAC7B,UAAA,MAAM,sBAAsB,IAAI,CAAA;AAChC,UAAO,OAAA,IAAA;AAAA,SACR;AAAA,OACL;AAEA,MAAI,IAAA,KAAA,CAAM,SAAS,CAAG,EAAA;AACpB,QAAM,MAAA,YAAA,GAAe,IAAI,YAAa,EAAA;AACtC,QAAA,KAAA,MAAW,QAAQ,QAAW,GAAA,KAAA,GAAQ,CAAC,KAAM,CAAA,CAAC,CAAC,CAAG,EAAA;AAChD,UAAA,IAAI,IAAM,EAAA;AACR,YAAa,YAAA,CAAA,KAAA,CAAM,IAAI,IAAI,CAAA;AAAA;AAC7B;AAGF,QAAA,gBAAA,GAAmB,aAAa,KAAK,CAAA;AACrC,QAAA,IAAI,aAAa,OAAS,EAAA;AACxB,UAAa,YAAA,CAAA,OAAA,CAAQ,QAAQ,YAAa,CAAA,KAAA;AAAA;AAC5C;AACF,KACF;AAEA,IACE,uBAAA,GAAA,CAAC,KAAK,QAAL,EAAA,EAAc,WAAW,aAAe,EAAA,MAAA,EAAQ,eAC/C,QAAC,kBAAA,GAAA,CAAA,kBAAA,EAAA,EAAmB,OAAM,MACxB,EAAA,QAAA,kBAAA,GAAA,CAAC,wBAAqB,KAAO,EAAA,YAAA,EAAc,sBAAoB,IAC5D,EAAA,QAAA,EACH,GACF,CACF,EAAA,CAAA;AAAA;AAGN;;;;"}
1
+ {"version":3,"file":"FileDropZone.mjs","sources":["../../../../../../src/components/FileDropZone/FileDropZone.tsx"],"sourcesContent":["import { type FC, type PropsWithChildren, useRef } from \"react\";\nimport React from \"react\";\nimport * as Aria from \"react-aria-components\";\nimport { IllustratedMessage } from \"@/components/IllustratedMessage\";\nimport type { PropsWithClassName } from \"@/lib/types/props\";\nimport styles from \"./FileDropZone.module.scss\";\nimport clsx from \"clsx\";\nimport type { FileInputOnChangeHandler } from \"@/components/FileField/components/FileInput\";\nimport type { PropsContext } from \"@/lib/propsContext\";\nimport { PropsContextProvider } from \"@/lib/propsContext\";\nimport {\n flowComponent,\n type FlowComponentProps,\n} from \"@/lib/componentFactory/flowComponent\";\nimport type { DropEvent, FocusableElement } from \"@react-types/shared\";\nimport { addAwaitedArrayBuffer } from \"@mittwald/flow-core\";\n\nexport interface FileDropZoneProps\n extends PropsWithClassName,\n FlowComponentProps<FocusableElement>,\n PropsWithChildren,\n Pick<Aria.InputProps, \"accept\" | \"multiple\" | \"name\"> {\n onChange?: FileInputOnChangeHandler;\n}\n\n/** @flr-generate all */\nexport const FileDropZone: FC<FileDropZoneProps> = flowComponent(\n \"FileDropZone\",\n (props) => {\n const {\n multiple,\n accept,\n className,\n onChange: onChangeDropZone,\n children,\n name,\n } = props;\n\n const fileFieldRef = useRef<HTMLInputElement>(null);\n const rootClassName = clsx(styles.fileDropZone, className);\n\n const propsContext: PropsContext = {\n FileField: {\n name,\n onChange: onChangeDropZone,\n ref: fileFieldRef,\n accept: accept,\n multiple: multiple,\n Button: { variant: \"outline\", color: \"dark\" },\n },\n };\n\n const onDropHandler = async (event: DropEvent) => {\n const fileDropItems = event.items.filter(\n (file) => file.kind === \"file\",\n ) as Aria.FileDropItem[];\n\n const files = await Promise.all(\n fileDropItems\n .filter((f) => !accept || accept?.includes(f.type))\n .map(async (f) => {\n const file = await f.getFile();\n return await addAwaitedArrayBuffer(file);\n }),\n );\n\n if (files.length > 0) {\n const fileTransfer = new DataTransfer();\n for (const file of multiple ? files : [files[0]]) {\n if (file) {\n fileTransfer.items.add(file);\n }\n }\n\n onChangeDropZone?.(fileTransfer.files);\n if (fileFieldRef.current) {\n fileFieldRef.current.files = fileTransfer.files;\n }\n }\n };\n\n return (\n <Aria.DropZone className={rootClassName} onDrop={onDropHandler}>\n <IllustratedMessage color=\"dark\">\n <PropsContextProvider props={propsContext} mergeInParentContext>\n {children}\n </PropsContextProvider>\n </IllustratedMessage>\n </Aria.DropZone>\n );\n },\n);\n\nexport default FileDropZone;\n"],"names":[],"mappings":";;;;;;;;;;;;AA0BO,MAAM,YAAsC,GAAA,aAAA;AAAA,EACjD,cAAA;AAAA,EACA,CAAC,KAAU,KAAA;AACT,IAAM,MAAA;AAAA,MACJ,QAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,MACA,QAAU,EAAA,gBAAA;AAAA,MACV,QAAA;AAAA,MACA;AAAA,KACE,GAAA,KAAA;AAEJ,IAAM,MAAA,YAAA,GAAe,OAAyB,IAAI,CAAA;AAClD,IAAA,MAAM,aAAgB,GAAA,IAAA,CAAK,MAAO,CAAA,YAAA,EAAc,SAAS,CAAA;AAEzD,IAAA,MAAM,YAA6B,GAAA;AAAA,MACjC,SAAW,EAAA;AAAA,QACT,IAAA;AAAA,QACA,QAAU,EAAA,gBAAA;AAAA,QACV,GAAK,EAAA,YAAA;AAAA,QACL,MAAA;AAAA,QACA,QAAA;AAAA,QACA,MAAQ,EAAA,EAAE,OAAS,EAAA,SAAA,EAAW,OAAO,MAAO;AAAA;AAC9C,KACF;AAEA,IAAM,MAAA,aAAA,GAAgB,OAAO,KAAqB,KAAA;AAChD,MAAM,MAAA,aAAA,GAAgB,MAAM,KAAM,CAAA,MAAA;AAAA,QAChC,CAAC,IAAS,KAAA,IAAA,CAAK,IAAS,KAAA;AAAA,OAC1B;AAEA,MAAM,MAAA,KAAA,GAAQ,MAAM,OAAQ,CAAA,GAAA;AAAA,QAC1B,aACG,CAAA,MAAA,CAAO,CAAC,CAAA,KAAM,CAAC,MAAU,IAAA,MAAA,EAAQ,QAAS,CAAA,CAAA,CAAE,IAAI,CAAC,CACjD,CAAA,GAAA,CAAI,OAAO,CAAM,KAAA;AAChB,UAAM,MAAA,IAAA,GAAO,MAAM,CAAA,CAAE,OAAQ,EAAA;AAC7B,UAAO,OAAA,MAAM,sBAAsB,IAAI,CAAA;AAAA,SACxC;AAAA,OACL;AAEA,MAAI,IAAA,KAAA,CAAM,SAAS,CAAG,EAAA;AACpB,QAAM,MAAA,YAAA,GAAe,IAAI,YAAa,EAAA;AACtC,QAAA,KAAA,MAAW,QAAQ,QAAW,GAAA,KAAA,GAAQ,CAAC,KAAM,CAAA,CAAC,CAAC,CAAG,EAAA;AAChD,UAAA,IAAI,IAAM,EAAA;AACR,YAAa,YAAA,CAAA,KAAA,CAAM,IAAI,IAAI,CAAA;AAAA;AAC7B;AAGF,QAAA,gBAAA,GAAmB,aAAa,KAAK,CAAA;AACrC,QAAA,IAAI,aAAa,OAAS,EAAA;AACxB,UAAa,YAAA,CAAA,OAAA,CAAQ,QAAQ,YAAa,CAAA,KAAA;AAAA;AAC5C;AACF,KACF;AAEA,IACE,uBAAA,GAAA,CAAC,KAAK,QAAL,EAAA,EAAc,WAAW,aAAe,EAAA,MAAA,EAAQ,eAC/C,QAAC,kBAAA,GAAA,CAAA,kBAAA,EAAA,EAAmB,OAAM,MACxB,EAAA,QAAA,kBAAA,GAAA,CAAC,wBAAqB,KAAO,EAAA,YAAA,EAAc,sBAAoB,IAC5D,EAAA,QAAA,EACH,GACF,CACF,EAAA,CAAA;AAAA;AAGN;;;;"}
@@ -21,7 +21,7 @@ function Form(props) {
21
21
  const submitHandlerResultRef = useRef(null);
22
22
  const handleOnSubmit = (e) => {
23
23
  const { isSubmitting, isValidating } = form.control._formState;
24
- const formEvent = "nativeEvent" in e ? e : void 0;
24
+ const formEvent = e && "nativeEvent" in e ? e : void 0;
25
25
  formEvent?.stopPropagation();
26
26
  if (isSubmitting || isValidating) {
27
27
  formEvent?.preventDefault();
@@ -1 +1 @@
1
- {"version":3,"file":"Form.mjs","sources":["../../../../../../../../src/integrations/react-hook-form/components/Form/Form.tsx"],"sourcesContent":["import { SubmitButtonStateProvider } from \"@/integrations/react-hook-form/components/ActionGroupWrapper/SubmitButtonStateProvider\";\nimport { FormContextProvider } from \"@/integrations/react-hook-form/components/context/formContext\";\nimport type {\n ComponentProps,\n ComponentType,\n FormEvent,\n FormEventHandler,\n PropsWithChildren,\n} from \"react\";\nimport { useId, useRef } from \"react\";\nimport type { FieldValues, UseFormReturn } from \"react-hook-form\";\nimport { FormProvider as RhfFormContextProvider } from \"react-hook-form\";\nimport { AfterFormSubmitEffect } from \"../AfterFormSubmitEffect/AfterFormSubmitEffect\";\n\nexport type FormOnSubmitHandler<F extends FieldValues> = Parameters<\n UseFormReturn<F>[\"handleSubmit\"]\n>[0];\n\ntype FormComponentType = ComponentType<\n PropsWithChildren<{\n id: string;\n onSubmit?: FormEventHandler | FormOnSubmitHandler<never>;\n }>\n>;\n\nexport interface FormProps<F extends FieldValues>\n extends Omit<ComponentProps<\"form\">, \"onSubmit\">,\n PropsWithChildren {\n form: UseFormReturn<F>;\n onSubmit: FormOnSubmitHandler<F>;\n formComponent?: FormComponentType;\n}\n\nconst DefaultFormComponent: FormComponentType = (p) => <form {...p} />;\n\nexport function Form<F extends FieldValues>(props: FormProps<F>) {\n const {\n form,\n children,\n onSubmit,\n formComponent: FormView = DefaultFormComponent,\n ...formProps\n } = props;\n\n const formId = useId();\n const isAsyncSubmit = useRef(false);\n const submitHandlerResultRef = useRef<unknown>(null);\n\n const handleOnSubmit = (e: FormEvent<HTMLFormElement> | F) => {\n const { isSubmitting, isValidating } = form.control._formState;\n const formEvent =\n \"nativeEvent\" in e ? (e as FormEvent<HTMLFormElement>) : undefined;\n\n formEvent?.stopPropagation();\n\n if (isSubmitting || isValidating) {\n formEvent?.preventDefault();\n return;\n }\n\n submitHandlerResultRef.current = undefined;\n\n form.handleSubmit((values) => {\n const result = onSubmit(values, formEvent);\n isAsyncSubmit.current = result instanceof Promise;\n submitHandlerResultRef.current = result;\n return result;\n })(formEvent);\n };\n\n return (\n <RhfFormContextProvider {...form}>\n <FormContextProvider value={{ form, id: formId }}>\n <SubmitButtonStateProvider isAsyncSubmit={isAsyncSubmit}>\n <FormView {...formProps} id={formId} onSubmit={handleOnSubmit}>\n {children}\n </FormView>\n </SubmitButtonStateProvider>\n <AfterFormSubmitEffect\n submitHandlerResultRef={submitHandlerResultRef}\n />\n </FormContextProvider>\n </RhfFormContextProvider>\n );\n}\n\nexport default Form;\n"],"names":["RhfFormContextProvider"],"mappings":";;;;;;;AAiCA,MAAM,uBAA0C,CAAC,CAAA,qBAAO,GAAA,CAAA,MAAA,EAAA,EAAM,GAAG,CAAG,EAAA,CAAA;AAE7D,SAAS,KAA4B,KAAqB,EAAA;AAC/D,EAAM,MAAA;AAAA,IACJ,IAAA;AAAA,IACA,QAAA;AAAA,IACA,QAAA;AAAA,IACA,eAAe,QAAW,GAAA,oBAAA;AAAA,IAC1B,GAAG;AAAA,GACD,GAAA,KAAA;AAEJ,EAAA,MAAM,SAAS,KAAM,EAAA;AACrB,EAAM,MAAA,aAAA,GAAgB,OAAO,KAAK,CAAA;AAClC,EAAM,MAAA,sBAAA,GAAyB,OAAgB,IAAI,CAAA;AAEnD,EAAM,MAAA,cAAA,GAAiB,CAAC,CAAsC,KAAA;AAC5D,IAAA,MAAM,EAAE,YAAA,EAAc,YAAa,EAAA,GAAI,KAAK,OAAQ,CAAA,UAAA;AACpD,IAAM,MAAA,SAAA,GACJ,aAAiB,IAAA,CAAA,GAAK,CAAmC,GAAA,MAAA;AAE3D,IAAA,SAAA,EAAW,eAAgB,EAAA;AAE3B,IAAA,IAAI,gBAAgB,YAAc,EAAA;AAChC,MAAA,SAAA,EAAW,cAAe,EAAA;AAC1B,MAAA;AAAA;AAGF,IAAA,sBAAA,CAAuB,OAAU,GAAA,MAAA;AAEjC,IAAK,IAAA,CAAA,YAAA,CAAa,CAAC,MAAW,KAAA;AAC5B,MAAM,MAAA,MAAA,GAAS,QAAS,CAAA,MAAA,EAAQ,SAAS,CAAA;AACzC,MAAA,aAAA,CAAc,UAAU,MAAkB,YAAA,OAAA;AAC1C,MAAA,sBAAA,CAAuB,OAAU,GAAA,MAAA;AACjC,MAAO,OAAA,MAAA;AAAA,KACR,EAAE,SAAS,CAAA;AAAA,GACd;AAEA,EACE,uBAAA,GAAA,CAACA,YAAwB,EAAA,EAAA,GAAG,IAC1B,EAAA,QAAA,kBAAA,IAAA,CAAC,mBAAoB,EAAA,EAAA,KAAA,EAAO,EAAE,IAAA,EAAM,EAAI,EAAA,MAAA,EACtC,EAAA,QAAA,EAAA;AAAA,oBAAC,GAAA,CAAA,yBAAA,EAAA,EAA0B,aACzB,EAAA,QAAA,kBAAA,GAAA,CAAC,QAAU,EAAA,EAAA,GAAG,SAAW,EAAA,EAAA,EAAI,MAAQ,EAAA,QAAA,EAAU,cAC5C,EAAA,QAAA,EACH,CACF,EAAA,CAAA;AAAA,oBACA,GAAA;AAAA,MAAC,qBAAA;AAAA,MAAA;AAAA,QACC;AAAA;AAAA;AACF,GAAA,EACF,CACF,EAAA,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"Form.mjs","sources":["../../../../../../../../src/integrations/react-hook-form/components/Form/Form.tsx"],"sourcesContent":["import { SubmitButtonStateProvider } from \"@/integrations/react-hook-form/components/ActionGroupWrapper/SubmitButtonStateProvider\";\nimport { FormContextProvider } from \"@/integrations/react-hook-form/components/context/formContext\";\nimport type {\n ComponentProps,\n ComponentType,\n FormEvent,\n FormEventHandler,\n PropsWithChildren,\n} from \"react\";\nimport { useId, useRef } from \"react\";\nimport type { FieldValues, UseFormReturn } from \"react-hook-form\";\nimport { FormProvider as RhfFormContextProvider } from \"react-hook-form\";\nimport { AfterFormSubmitEffect } from \"../AfterFormSubmitEffect/AfterFormSubmitEffect\";\n\nexport type FormOnSubmitHandler<F extends FieldValues> = Parameters<\n UseFormReturn<F>[\"handleSubmit\"]\n>[0];\n\ntype FormComponentType = ComponentType<\n PropsWithChildren<{\n id: string;\n onSubmit?: FormEventHandler | FormOnSubmitHandler<never>;\n }>\n>;\n\nexport interface FormProps<F extends FieldValues>\n extends Omit<ComponentProps<\"form\">, \"onSubmit\">,\n PropsWithChildren {\n form: UseFormReturn<F>;\n onSubmit: FormOnSubmitHandler<F>;\n formComponent?: FormComponentType;\n}\n\nconst DefaultFormComponent: FormComponentType = (p) => <form {...p} />;\n\nexport function Form<F extends FieldValues>(props: FormProps<F>) {\n const {\n form,\n children,\n onSubmit,\n formComponent: FormView = DefaultFormComponent,\n ...formProps\n } = props;\n\n const formId = useId();\n const isAsyncSubmit = useRef(false);\n const submitHandlerResultRef = useRef<unknown>(null);\n\n const handleOnSubmit = (e?: FormEvent<HTMLFormElement> | F) => {\n const { isSubmitting, isValidating } = form.control._formState;\n const formEvent =\n e && \"nativeEvent\" in e ? (e as FormEvent<HTMLFormElement>) : undefined;\n\n formEvent?.stopPropagation();\n\n if (isSubmitting || isValidating) {\n formEvent?.preventDefault();\n return;\n }\n\n submitHandlerResultRef.current = undefined;\n\n form.handleSubmit((values) => {\n const result = onSubmit(values, formEvent);\n isAsyncSubmit.current = result instanceof Promise;\n submitHandlerResultRef.current = result;\n return result;\n })(formEvent);\n };\n\n return (\n <RhfFormContextProvider {...form}>\n <FormContextProvider value={{ form, id: formId }}>\n <SubmitButtonStateProvider isAsyncSubmit={isAsyncSubmit}>\n <FormView {...formProps} id={formId} onSubmit={handleOnSubmit}>\n {children}\n </FormView>\n </SubmitButtonStateProvider>\n <AfterFormSubmitEffect\n submitHandlerResultRef={submitHandlerResultRef}\n />\n </FormContextProvider>\n </RhfFormContextProvider>\n );\n}\n\nexport default Form;\n"],"names":["RhfFormContextProvider"],"mappings":";;;;;;;AAiCA,MAAM,uBAA0C,CAAC,CAAA,qBAAO,GAAA,CAAA,MAAA,EAAA,EAAM,GAAG,CAAG,EAAA,CAAA;AAE7D,SAAS,KAA4B,KAAqB,EAAA;AAC/D,EAAM,MAAA;AAAA,IACJ,IAAA;AAAA,IACA,QAAA;AAAA,IACA,QAAA;AAAA,IACA,eAAe,QAAW,GAAA,oBAAA;AAAA,IAC1B,GAAG;AAAA,GACD,GAAA,KAAA;AAEJ,EAAA,MAAM,SAAS,KAAM,EAAA;AACrB,EAAM,MAAA,aAAA,GAAgB,OAAO,KAAK,CAAA;AAClC,EAAM,MAAA,sBAAA,GAAyB,OAAgB,IAAI,CAAA;AAEnD,EAAM,MAAA,cAAA,GAAiB,CAAC,CAAuC,KAAA;AAC7D,IAAA,MAAM,EAAE,YAAA,EAAc,YAAa,EAAA,GAAI,KAAK,OAAQ,CAAA,UAAA;AACpD,IAAA,MAAM,SACJ,GAAA,CAAA,IAAK,aAAiB,IAAA,CAAA,GAAK,CAAmC,GAAA,MAAA;AAEhE,IAAA,SAAA,EAAW,eAAgB,EAAA;AAE3B,IAAA,IAAI,gBAAgB,YAAc,EAAA;AAChC,MAAA,SAAA,EAAW,cAAe,EAAA;AAC1B,MAAA;AAAA;AAGF,IAAA,sBAAA,CAAuB,OAAU,GAAA,MAAA;AAEjC,IAAK,IAAA,CAAA,YAAA,CAAa,CAAC,MAAW,KAAA;AAC5B,MAAM,MAAA,MAAA,GAAS,QAAS,CAAA,MAAA,EAAQ,SAAS,CAAA;AACzC,MAAA,aAAA,CAAc,UAAU,MAAkB,YAAA,OAAA;AAC1C,MAAA,sBAAA,CAAuB,OAAU,GAAA,MAAA;AACjC,MAAO,OAAA,MAAA;AAAA,KACR,EAAE,SAAS,CAAA;AAAA,GACd;AAEA,EACE,uBAAA,GAAA,CAACA,YAAwB,EAAA,EAAA,GAAG,IAC1B,EAAA,QAAA,kBAAA,IAAA,CAAC,mBAAoB,EAAA,EAAA,KAAA,EAAO,EAAE,IAAA,EAAM,EAAI,EAAA,MAAA,EACtC,EAAA,QAAA,EAAA;AAAA,oBAAC,GAAA,CAAA,yBAAA,EAAA,EAA0B,aACzB,EAAA,QAAA,kBAAA,GAAA,CAAC,QAAU,EAAA,EAAA,GAAG,SAAW,EAAA,EAAA,EAAI,MAAQ,EAAA,QAAA,EAAU,cAC5C,EAAA,QAAA,EACH,CACF,EAAA,CAAA;AAAA,oBACA,GAAA;AAAA,MAAC,qBAAA;AAAA,MAAA;AAAA,QACC;AAAA;AAAA;AACF,GAAA,EACF,CACF,EAAA,CAAA;AAEJ;;;;"}
@@ -4,7 +4,7 @@ import 'invariant';
4
4
 
5
5
  const Key = "mittwald.flow-core.file.awaitedArrayBuffer";
6
6
  function isFileWithAwaitedArrayBuffer(file) {
7
- return Key in file;
7
+ return Key in file && file[Key] instanceof ArrayBuffer && !file[Key].detached;
8
8
  }
9
9
  const addAwaitedArrayBuffer = async (file) => {
10
10
  if (isFileWithAwaitedArrayBuffer(file)) {
@@ -12,7 +12,8 @@ const addAwaitedArrayBuffer = async (file) => {
12
12
  }
13
13
  const arrayBuffer = await file.arrayBuffer();
14
14
  Object.assign(file, { [Key]: arrayBuffer });
15
+ return file;
15
16
  };
16
17
 
17
- export { addAwaitedArrayBuffer };
18
+ export { addAwaitedArrayBuffer, isFileWithAwaitedArrayBuffer };
18
19
  //# sourceMappingURL=file.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"file.mjs","sources":["../../../../../core/src/file.ts"],"sourcesContent":["import invariant from \"invariant\";\n\nconst Key = \"mittwald.flow-core.file.awaitedArrayBuffer\";\n\nexport type FileWithAwaitedArrayBuffer = File & {\n [Key]: ArrayBuffer;\n};\n\nfunction isFileWithAwaitedArrayBuffer(\n file: File | FileWithAwaitedArrayBuffer,\n): file is FileWithAwaitedArrayBuffer {\n return Key in file;\n}\n\nexport const addAwaitedArrayBuffer = async (file: File) => {\n if (isFileWithAwaitedArrayBuffer(file)) {\n return file;\n }\n\n const arrayBuffer = await file.arrayBuffer();\n Object.assign(file, { [Key]: arrayBuffer });\n};\n\nexport const getAwaitArrayBuffer = (\n file: File | FileWithAwaitedArrayBuffer,\n) => {\n invariant(\n isFileWithAwaitedArrayBuffer(file),\n \"Could not get awaited ArrayBuffer from file\",\n );\n return file[Key];\n};\n"],"names":[],"mappings":";;AAEA,MAAM,GAAM,GAAA,4CAAA;AAMZ,SAAS,6BACP,IACoC,EAAA;AACpC,EAAA,OAAO,GAAO,IAAA,IAAA;AAChB;AAEa,MAAA,qBAAA,GAAwB,OAAO,IAAe,KAAA;AACzD,EAAI,IAAA,4BAAA,CAA6B,IAAI,CAAG,EAAA;AACtC,IAAO,OAAA,IAAA;AAAA;AAGT,EAAM,MAAA,WAAA,GAAc,MAAM,IAAA,CAAK,WAAY,EAAA;AAC3C,EAAA,MAAA,CAAO,OAAO,IAAM,EAAA,EAAE,CAAC,GAAG,GAAG,aAAa,CAAA;AAC5C;;;;"}
1
+ {"version":3,"file":"file.mjs","sources":["../../../../../core/src/file.ts"],"sourcesContent":["import invariant from \"invariant\";\n\nconst Key = \"mittwald.flow-core.file.awaitedArrayBuffer\";\n\nexport type FileWithAwaitedArrayBuffer = File & {\n [Key]: ArrayBuffer;\n};\n\nexport function isFileWithAwaitedArrayBuffer(\n file: File | FileWithAwaitedArrayBuffer,\n): file is FileWithAwaitedArrayBuffer {\n return Key in file && file[Key] instanceof ArrayBuffer && !file[Key].detached;\n}\n\nexport const addAwaitedArrayBuffer = async (file: File) => {\n if (isFileWithAwaitedArrayBuffer(file)) {\n return file;\n }\n\n const arrayBuffer = await file.arrayBuffer();\n Object.assign(file, { [Key]: arrayBuffer });\n\n return file;\n};\n\nexport const getAwaitArrayBuffer = (\n file: File | FileWithAwaitedArrayBuffer,\n) => {\n invariant(\n isFileWithAwaitedArrayBuffer(file),\n \"Could not get awaited ArrayBuffer from file\",\n );\n return file[Key];\n};\n"],"names":[],"mappings":";;AAEA,MAAM,GAAM,GAAA,4CAAA;AAML,SAAS,6BACd,IACoC,EAAA;AACpC,EAAO,OAAA,GAAA,IAAO,QAAQ,IAAK,CAAA,GAAG,aAAa,WAAe,IAAA,CAAC,IAAK,CAAA,GAAG,CAAE,CAAA,QAAA;AACvE;AAEa,MAAA,qBAAA,GAAwB,OAAO,IAAe,KAAA;AACzD,EAAI,IAAA,4BAAA,CAA6B,IAAI,CAAG,EAAA;AACtC,IAAO,OAAA,IAAA;AAAA;AAGT,EAAM,MAAA,WAAA,GAAc,MAAM,IAAA,CAAK,WAAY,EAAA;AAC3C,EAAA,MAAA,CAAO,OAAO,IAAM,EAAA,EAAE,CAAC,GAAG,GAAG,aAAa,CAAA;AAE1C,EAAO,OAAA,IAAA;AACT;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"FileDropZone.d.ts","sourceRoot":"","sources":["../../../../src/components/FileDropZone/FileDropZone.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,iBAAiB,EAAU,MAAM,OAAO,CAAC;AAEhE,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAE9C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAG5D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,6CAA6C,CAAC;AAG5F,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,KAAK,EAAa,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAGvE,MAAM,WAAW,iBACf,SAAQ,kBAAkB,EACxB,kBAAkB,CAAC,gBAAgB,CAAC,EACpC,iBAAiB,EACjB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,GAAG,UAAU,GAAG,MAAM,CAAC;IACvD,QAAQ,CAAC,EAAE,wBAAwB,CAAC;CACrC;AAED,wBAAwB;AACxB,eAAO,MAAM,YAAY,EAAE,EAAE,CAAC,iBAAiB,CAkE9C,CAAC;AAEF,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"FileDropZone.d.ts","sourceRoot":"","sources":["../../../../src/components/FileDropZone/FileDropZone.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,iBAAiB,EAAU,MAAM,OAAO,CAAC;AAEhE,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAE9C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAG5D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,6CAA6C,CAAC;AAG5F,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,KAAK,EAAa,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAGvE,MAAM,WAAW,iBACf,SAAQ,kBAAkB,EACxB,kBAAkB,CAAC,gBAAgB,CAAC,EACpC,iBAAiB,EACjB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,GAAG,UAAU,GAAG,MAAM,CAAC;IACvD,QAAQ,CAAC,EAAE,wBAAwB,CAAC;CACrC;AAED,wBAAwB;AACxB,eAAO,MAAM,YAAY,EAAE,EAAE,CAAC,iBAAiB,CAiE9C,CAAC;AAEF,eAAe,YAAY,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mittwald/flow-react-components",
3
- "version": "0.2.0-alpha.308",
3
+ "version": "0.2.0-alpha.309",
4
4
  "type": "module",
5
5
  "description": "A React implementation of Flow, mittwald’s design system",
6
6
  "homepage": "https://mittwald.github.io/flow",
@@ -58,7 +58,7 @@
58
58
  "@chakra-ui/live-region": "^2.1.0",
59
59
  "@internationalized/string-compiler": "^3.2.6",
60
60
  "@mittwald/password-tools-js": "^2.1.4",
61
- "@mittwald/react-tunnel": "0.2.0-alpha.308",
61
+ "@mittwald/react-tunnel": "0.2.0-alpha.309",
62
62
  "@mittwald/react-use-promise": "^3.0.4",
63
63
  "@react-aria/form": "^3.0.16",
64
64
  "@react-aria/utils": "^3.29.0",
@@ -99,7 +99,7 @@
99
99
  "@faker-js/faker": "^9.8.0",
100
100
  "@internationalized/date": "^3.8.1",
101
101
  "@mittwald/flow-core": "",
102
- "@mittwald/flow-design-tokens": "0.2.0-alpha.308",
102
+ "@mittwald/flow-design-tokens": "0.2.0-alpha.309",
103
103
  "@mittwald/react-use-promise": "^3.0.4",
104
104
  "@mittwald/remote-dom-react": "1.2.2-mittwald.3",
105
105
  "@mittwald/typescript-config": "",
@@ -181,5 +181,5 @@
181
181
  "optional": true
182
182
  }
183
183
  },
184
- "gitHead": "39b1f6162950303e18d03f4938e5c598e500a02e"
184
+ "gitHead": "cb0a2766cb0c9785e808303e54fbc4332456295a"
185
185
  }