@dnb/eufemia 10.40.1 → 10.41.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +22 -0
- package/cjs/components/upload/Upload.d.ts +1 -0
- package/cjs/components/upload/Upload.js.map +1 -1
- package/cjs/components/upload/UploadDocs.d.ts +3 -0
- package/cjs/components/upload/UploadDocs.js +58 -0
- package/cjs/components/upload/UploadDocs.js.map +1 -0
- package/cjs/components/upload/UploadDropzone.js +22 -19
- package/cjs/components/upload/UploadDropzone.js.map +1 -1
- package/cjs/components/upload/UploadInfo.js +5 -4
- package/cjs/components/upload/UploadInfo.js.map +1 -1
- package/cjs/components/upload/UploadVerify.d.ts +1 -0
- package/cjs/components/upload/UploadVerify.js +2 -0
- package/cjs/components/upload/UploadVerify.js.map +1 -1
- package/cjs/components/upload/types.d.ts +2 -1
- package/cjs/components/upload/types.js.map +1 -1
- package/cjs/components/upload/useUpload.js +9 -8
- package/cjs/components/upload/useUpload.js.map +1 -1
- package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js +3 -3
- package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
- package/cjs/extensions/forms/Field/Composition/Composition.d.ts +2 -2
- package/cjs/extensions/forms/Field/Composition/Composition.js.map +1 -1
- package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +2 -2
- package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +2 -2
- package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
- package/cjs/extensions/forms/Field/Selection/Selection.d.ts +4 -4
- package/cjs/extensions/forms/Field/Selection/Selection.js +3 -3
- package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/cjs/extensions/forms/Field/Slider/Slider.js +2 -2
- package/cjs/extensions/forms/Field/Slider/Slider.js.map +1 -1
- package/cjs/extensions/forms/Field/String/String.js +2 -2
- package/cjs/extensions/forms/Field/String/String.js.map +1 -1
- package/cjs/extensions/forms/Field/Toggle/Toggle.js +6 -6
- package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/cjs/extensions/forms/Field/Toggle/ToggleDocs.js +5 -0
- package/cjs/extensions/forms/Field/Toggle/ToggleDocs.js.map +1 -1
- package/cjs/extensions/forms/Field/Upload/Upload.d.ts +12 -0
- package/cjs/extensions/forms/Field/Upload/Upload.js +132 -0
- package/cjs/extensions/forms/Field/Upload/Upload.js.map +1 -0
- package/cjs/extensions/forms/Field/Upload/UploadDocs.d.ts +3 -0
- package/cjs/extensions/forms/Field/Upload/UploadDocs.js +20 -0
- package/cjs/extensions/forms/Field/Upload/UploadDocs.js.map +1 -0
- package/cjs/extensions/forms/Field/Upload/index.d.ts +2 -0
- package/cjs/extensions/forms/Field/Upload/index.js +27 -0
- package/cjs/extensions/forms/Field/Upload/index.js.map +1 -0
- package/cjs/extensions/forms/Field/index.d.ts +1 -0
- package/cjs/extensions/forms/Field/index.js +7 -0
- package/cjs/extensions/forms/Field/index.js.map +1 -1
- package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +2 -0
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js +4 -2
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/cjs/extensions/forms/FieldBlock/FieldBlockDocs.js +5 -0
- package/cjs/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -1
- package/cjs/extensions/forms/Form/Section/Section.d.ts +2 -2
- package/cjs/extensions/forms/Form/Section/Section.js.map +1 -1
- package/cjs/extensions/forms/constants/locales/en-GB.d.ts +4 -0
- package/cjs/extensions/forms/constants/locales/en-GB.js +4 -0
- package/cjs/extensions/forms/constants/locales/en-GB.js.map +1 -1
- package/cjs/extensions/forms/constants/locales/en-US.d.ts +4 -0
- package/cjs/extensions/forms/constants/locales/index.d.ts +8 -0
- package/cjs/extensions/forms/constants/locales/nb-NO.d.ts +4 -0
- package/cjs/extensions/forms/constants/locales/nb-NO.js +4 -0
- package/cjs/extensions/forms/constants/locales/nb-NO.js.map +1 -1
- package/cjs/extensions/forms/hooks/useFieldProps.d.ts +3 -1
- package/cjs/extensions/forms/hooks/useFieldProps.js +14 -9
- package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/cjs/extensions/forms/types.d.ts +8 -3
- package/cjs/extensions/forms/types.js.map +1 -1
- package/cjs/shared/Eufemia.d.ts +1 -1
- package/cjs/shared/Eufemia.js +2 -2
- package/cjs/shared/Eufemia.js.map +1 -1
- package/cjs/shared/Translation.d.ts +1 -1
- package/cjs/shared/Translation.js +5 -3
- package/cjs/shared/Translation.js.map +1 -1
- package/cjs/style/core/scopes.scss +1 -1
- package/cjs/style/dnb-ui-basis.css +1 -1
- package/cjs/style/dnb-ui-basis.min.css +1 -1
- package/cjs/style/dnb-ui-body.css +1 -1
- package/cjs/style/dnb-ui-body.min.css +1 -1
- package/cjs/style/dnb-ui-core.css +1 -1
- package/cjs/style/dnb-ui-core.min.css +1 -1
- package/components/upload/Upload.d.ts +1 -0
- package/components/upload/Upload.js.map +1 -1
- package/components/upload/UploadDocs.d.ts +3 -0
- package/components/upload/UploadDocs.js +50 -0
- package/components/upload/UploadDocs.js.map +1 -0
- package/components/upload/UploadDropzone.js +21 -19
- package/components/upload/UploadDropzone.js.map +1 -1
- package/components/upload/UploadInfo.js +5 -4
- package/components/upload/UploadInfo.js.map +1 -1
- package/components/upload/UploadVerify.d.ts +1 -0
- package/components/upload/UploadVerify.js +1 -1
- package/components/upload/UploadVerify.js.map +1 -1
- package/components/upload/types.d.ts +2 -1
- package/components/upload/types.js.map +1 -1
- package/components/upload/useUpload.js +9 -8
- package/components/upload/useUpload.js.map +1 -1
- package/es/components/upload/Upload.d.ts +1 -0
- package/es/components/upload/Upload.js.map +1 -1
- package/es/components/upload/UploadDocs.d.ts +3 -0
- package/es/components/upload/UploadDocs.js +50 -0
- package/es/components/upload/UploadDocs.js.map +1 -0
- package/es/components/upload/UploadDropzone.js +21 -19
- package/es/components/upload/UploadDropzone.js.map +1 -1
- package/es/components/upload/UploadInfo.js +5 -4
- package/es/components/upload/UploadInfo.js.map +1 -1
- package/es/components/upload/UploadVerify.d.ts +1 -0
- package/es/components/upload/UploadVerify.js +1 -1
- package/es/components/upload/UploadVerify.js.map +1 -1
- package/es/components/upload/types.d.ts +2 -1
- package/es/components/upload/types.js.map +1 -1
- package/es/components/upload/useUpload.js +9 -8
- package/es/components/upload/useUpload.js.map +1 -1
- package/es/extensions/forms/Field/ArraySelection/ArraySelection.js +3 -3
- package/es/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
- package/es/extensions/forms/Field/Composition/Composition.d.ts +2 -2
- package/es/extensions/forms/Field/Composition/Composition.js.map +1 -1
- package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +2 -2
- package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +2 -2
- package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
- package/es/extensions/forms/Field/Selection/Selection.d.ts +4 -4
- package/es/extensions/forms/Field/Selection/Selection.js +3 -3
- package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/es/extensions/forms/Field/Slider/Slider.js +2 -2
- package/es/extensions/forms/Field/Slider/Slider.js.map +1 -1
- package/es/extensions/forms/Field/String/String.js +2 -2
- package/es/extensions/forms/Field/String/String.js.map +1 -1
- package/es/extensions/forms/Field/Toggle/Toggle.js +6 -6
- package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/es/extensions/forms/Field/Toggle/ToggleDocs.js +5 -0
- package/es/extensions/forms/Field/Toggle/ToggleDocs.js.map +1 -1
- package/es/extensions/forms/Field/Upload/Upload.d.ts +12 -0
- package/es/extensions/forms/Field/Upload/Upload.js +118 -0
- package/es/extensions/forms/Field/Upload/Upload.js.map +1 -0
- package/es/extensions/forms/Field/Upload/UploadDocs.d.ts +3 -0
- package/es/extensions/forms/Field/Upload/UploadDocs.js +10 -0
- package/es/extensions/forms/Field/Upload/UploadDocs.js.map +1 -0
- package/es/extensions/forms/Field/Upload/index.d.ts +2 -0
- package/es/extensions/forms/Field/Upload/index.js +3 -0
- package/es/extensions/forms/Field/Upload/index.js.map +1 -0
- package/es/extensions/forms/Field/index.d.ts +1 -0
- package/es/extensions/forms/Field/index.js +1 -0
- package/es/extensions/forms/Field/index.js.map +1 -1
- package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +2 -0
- package/es/extensions/forms/FieldBlock/FieldBlock.js +4 -2
- package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/es/extensions/forms/FieldBlock/FieldBlockDocs.js +5 -0
- package/es/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -1
- package/es/extensions/forms/Form/Section/Section.d.ts +2 -2
- package/es/extensions/forms/Form/Section/Section.js.map +1 -1
- package/es/extensions/forms/constants/locales/en-GB.d.ts +4 -0
- package/es/extensions/forms/constants/locales/en-GB.js +4 -0
- package/es/extensions/forms/constants/locales/en-GB.js.map +1 -1
- package/es/extensions/forms/constants/locales/en-US.d.ts +4 -0
- package/es/extensions/forms/constants/locales/index.d.ts +8 -0
- package/es/extensions/forms/constants/locales/nb-NO.d.ts +4 -0
- package/es/extensions/forms/constants/locales/nb-NO.js +4 -0
- package/es/extensions/forms/constants/locales/nb-NO.js.map +1 -1
- package/es/extensions/forms/hooks/useFieldProps.d.ts +3 -1
- package/es/extensions/forms/hooks/useFieldProps.js +14 -10
- package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/es/extensions/forms/types.d.ts +8 -3
- package/es/extensions/forms/types.js.map +1 -1
- package/es/shared/Eufemia.d.ts +1 -1
- package/es/shared/Eufemia.js +2 -2
- package/es/shared/Eufemia.js.map +1 -1
- package/es/shared/Translation.d.ts +1 -1
- package/es/shared/Translation.js +3 -3
- package/es/shared/Translation.js.map +1 -1
- package/es/style/core/scopes.scss +1 -1
- package/es/style/dnb-ui-basis.css +1 -1
- package/es/style/dnb-ui-basis.min.css +1 -1
- package/es/style/dnb-ui-body.css +1 -1
- package/es/style/dnb-ui-body.min.css +1 -1
- package/es/style/dnb-ui-core.css +1 -1
- package/es/style/dnb-ui-core.min.css +1 -1
- package/esm/dnb-ui-basis.min.mjs +1 -1
- package/esm/dnb-ui-components.min.mjs +1 -1
- package/esm/dnb-ui-elements.min.mjs +1 -1
- package/esm/dnb-ui-extensions.min.mjs +5 -5
- package/esm/dnb-ui-lib.min.mjs +1 -1
- package/extensions/forms/Field/ArraySelection/ArraySelection.js +3 -3
- package/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
- package/extensions/forms/Field/Composition/Composition.d.ts +2 -2
- package/extensions/forms/Field/Composition/Composition.js.map +1 -1
- package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +2 -2
- package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +2 -2
- package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
- package/extensions/forms/Field/Selection/Selection.d.ts +4 -4
- package/extensions/forms/Field/Selection/Selection.js +3 -3
- package/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/extensions/forms/Field/Slider/Slider.js +2 -2
- package/extensions/forms/Field/Slider/Slider.js.map +1 -1
- package/extensions/forms/Field/String/String.js +2 -2
- package/extensions/forms/Field/String/String.js.map +1 -1
- package/extensions/forms/Field/Toggle/Toggle.js +6 -6
- package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/extensions/forms/Field/Toggle/ToggleDocs.js +5 -0
- package/extensions/forms/Field/Toggle/ToggleDocs.js.map +1 -1
- package/extensions/forms/Field/Upload/Upload.d.ts +12 -0
- package/extensions/forms/Field/Upload/Upload.js +120 -0
- package/extensions/forms/Field/Upload/Upload.js.map +1 -0
- package/extensions/forms/Field/Upload/UploadDocs.d.ts +3 -0
- package/extensions/forms/Field/Upload/UploadDocs.js +10 -0
- package/extensions/forms/Field/Upload/UploadDocs.js.map +1 -0
- package/extensions/forms/Field/Upload/index.d.ts +2 -0
- package/extensions/forms/Field/Upload/index.js +3 -0
- package/extensions/forms/Field/Upload/index.js.map +1 -0
- package/extensions/forms/Field/index.d.ts +1 -0
- package/extensions/forms/Field/index.js +1 -0
- package/extensions/forms/Field/index.js.map +1 -1
- package/extensions/forms/FieldBlock/FieldBlock.d.ts +2 -0
- package/extensions/forms/FieldBlock/FieldBlock.js +4 -2
- package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/extensions/forms/FieldBlock/FieldBlockDocs.js +5 -0
- package/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -1
- package/extensions/forms/Form/Section/Section.d.ts +2 -2
- package/extensions/forms/Form/Section/Section.js.map +1 -1
- package/extensions/forms/constants/locales/en-GB.d.ts +4 -0
- package/extensions/forms/constants/locales/en-GB.js +4 -0
- package/extensions/forms/constants/locales/en-GB.js.map +1 -1
- package/extensions/forms/constants/locales/en-US.d.ts +4 -0
- package/extensions/forms/constants/locales/index.d.ts +8 -0
- package/extensions/forms/constants/locales/nb-NO.d.ts +4 -0
- package/extensions/forms/constants/locales/nb-NO.js +4 -0
- package/extensions/forms/constants/locales/nb-NO.js.map +1 -1
- package/extensions/forms/hooks/useFieldProps.d.ts +3 -1
- package/extensions/forms/hooks/useFieldProps.js +14 -9
- package/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/extensions/forms/types.d.ts +8 -3
- package/extensions/forms/types.js.map +1 -1
- package/package.json +1 -1
- package/shared/Eufemia.d.ts +1 -1
- package/shared/Eufemia.js +2 -2
- package/shared/Eufemia.js.map +1 -1
- package/shared/Translation.d.ts +1 -1
- package/shared/Translation.js +3 -3
- package/shared/Translation.js.map +1 -1
- package/style/core/scopes.scss +1 -1
- package/style/dnb-ui-basis.css +1 -1
- package/style/dnb-ui-basis.min.css +1 -1
- package/style/dnb-ui-body.css +1 -1
- package/style/dnb-ui-body.min.css +1 -1
- package/style/dnb-ui-core.css +1 -1
- package/style/dnb-ui-core.min.css +1 -1
- package/umd/dnb-ui-basis.min.js +1 -1
- package/umd/dnb-ui-components.min.js +1 -1
- package/umd/dnb-ui-elements.min.js +1 -1
- package/umd/dnb-ui-extensions.min.js +5 -5
- package/umd/dnb-ui-lib.min.js +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,28 @@
|
|
|
3
3
|
All notable changes to @dnb/eufemia will be documented in this file. See
|
|
4
4
|
[Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [10.41.0](https://github.com/dnbexperience/eufemia/compare/v10.40.1...v10.41.0) (2024-07-23)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### :memo: Documentation
|
|
10
|
+
|
|
11
|
+
* **Blocks:** correct import paths ChildrenWithAge ([#3769](https://github.com/dnbexperience/eufemia/issues/3769)) ([43ffe16](https://github.com/dnbexperience/eufemia/commit/43ffe161223b9dcbe73123289970380d88666e42))
|
|
12
|
+
* **Field.Email:** fix link to input docs ([#3770](https://github.com/dnbexperience/eufemia/issues/3770)) ([75bb560](https://github.com/dnbexperience/eufemia/commit/75bb56000d70d9b560fe0d73e9c2ffefbd4936e1))
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
### :bug: Bug Fixes
|
|
16
|
+
|
|
17
|
+
* **Translation:** ensure correct jsx type support ([c70cbeb](https://github.com/dnbexperience/eufemia/commit/c70cbeba75b92a145baaf57add4928890c4eb955))
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
### :sparkles: Features
|
|
21
|
+
|
|
22
|
+
* **Field.Selection:** allow all props for dropdown and autocomplete ([#3776](https://github.com/dnbexperience/eufemia/issues/3776)) ([951c67d](https://github.com/dnbexperience/eufemia/commit/951c67df6522e201d9df4582d2ae56685c5e3711))
|
|
23
|
+
* **FieldBlock:** add `labelSrOnly` prop ([ebf50c6](https://github.com/dnbexperience/eufemia/commit/ebf50c63d21dc9c10f689764beb92a6422b30571))
|
|
24
|
+
* **Field:** changed field help button types to ReactNode ([#3777](https://github.com/dnbexperience/eufemia/issues/3777)) ([6506934](https://github.com/dnbexperience/eufemia/commit/6506934a332eed1ce9e80a4197014bc07ffbeecc))
|
|
25
|
+
* **forms:** add Upload field ([048bfc7](https://github.com/dnbexperience/eufemia/commit/048bfc70c1ffcf3e887b79bf6a45ea157e783616))
|
|
26
|
+
* **forms:** add Upload field ([#3742](https://github.com/dnbexperience/eufemia/issues/3742)) ([4ea8933](https://github.com/dnbexperience/eufemia/commit/4ea89334326d1246a3e4aaa2d436cc26b57a6810))
|
|
27
|
+
|
|
6
28
|
## [10.40.1](https://github.com/dnbexperience/eufemia/compare/v10.40.0...v10.40.1) (2024-07-09)
|
|
7
29
|
|
|
8
30
|
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import useUpload from './useUpload';
|
|
2
2
|
import { defaultProps } from './UploadContext';
|
|
3
3
|
import type { UploadAllProps } from './types';
|
|
4
|
+
export type * from './types';
|
|
4
5
|
export { defaultProps };
|
|
5
6
|
declare const Upload: {
|
|
6
7
|
(localProps: UploadAllProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Upload.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_SpacingHelper","_Provider","_Context","_componentHelper","_UploadFileInput2","_useUpload","_UploadDropzone","_UploadContext","_UploadVerify","_UploadFileList2","_UploadInfo2","_UploadInfo","_UploadFileInput","_UploadFileList","_excluded","_excluded2","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","Upload","localProps","context","React","useContext","Context","_context$getTranslati","getTranslation","buttonTextSingular","textSingular","translations","filesAmountLimit","buttonText","text","extendedProps","extendPropsWithContext","defaultProps","skeleton","id","className","acceptedFileTypes","fileMaxSize","onChange","onFileDelete","title","fileTypeDescription","fileSizeDescription","fileAmountDescription","fileSizeContent","loadingText","errorLargeFile","errorUnsupportedFile","errorAmountLimit","deleteButton","fileListAriaLabel","props","spacingClasses","createSpacingClasses","files","setFiles","setInternalFiles","getExistingFile","useUpload","onInputUpload","useCallback","newFiles","mergedFiles","map","fileItem","file","existingFile","exists","Boolean","makeUniqueId","verifiedFiles","verifyFiles","_ref","validFiles","slice","createElement","UploadContext","Provider","classnames","_formElement","_supportsSpacingProps","_default","exports"],"sources":["../../../../src/components/upload/Upload.tsx"],"sourcesContent":["import React, { useCallback } from 'react'\nimport classnames from 'classnames'\n\n// Shared\nimport { createSpacingClasses } from '../space/SpacingHelper'\nimport Provider from '../../shared/Provider'\nimport Context from '../../shared/Context'\nimport {\n extendPropsWithContext,\n makeUniqueId,\n} from '../../shared/component-helper'\n\n// Internal\nimport UploadFileInput from './UploadFileInput'\nimport useUpload from './useUpload'\nimport UploadDropzone from './UploadDropzone'\nimport { UploadContext, defaultProps } from './UploadContext'\nimport { verifyFiles } from './UploadVerify'\n\nimport type { UploadFile, UploadAllProps } from './types'\nimport UploadFileList from './UploadFileList'\nimport UploadInfo from './UploadInfo'\n\nexport { defaultProps }\n\nconst Upload = (localProps: UploadAllProps) => {\n const context = React.useContext(Context)\n\n const { buttonTextSingular, textSingular, ...translations } =\n context.getTranslation(localProps).Upload\n\n if (localProps?.filesAmountLimit === 1) {\n translations.buttonText = buttonTextSingular\n translations.text = textSingular\n }\n\n const extendedProps = extendPropsWithContext(\n localProps,\n defaultProps,\n { skeleton: context?.skeleton },\n translations,\n context.Upload\n )\n\n const {\n id,\n skeleton,\n className,\n acceptedFileTypes,\n filesAmountLimit,\n fileMaxSize,\n onChange,\n onFileDelete, // eslint-disable-line\n title, // eslint-disable-line\n text, // eslint-disable-line\n fileTypeDescription, // eslint-disable-line\n fileSizeDescription, // eslint-disable-line\n fileAmountDescription, // eslint-disable-line\n fileSizeContent, // eslint-disable-line\n buttonText, // eslint-disable-line\n loadingText, // eslint-disable-line\n errorLargeFile,\n errorUnsupportedFile,\n errorAmountLimit, // eslint-disable-line\n deleteButton, // eslint-disable-line\n fileListAriaLabel, // eslint-disable-line\n ...props\n } = extendedProps\n\n const spacingClasses = createSpacingClasses(props)\n\n const { files, setFiles, setInternalFiles, getExistingFile } =\n useUpload(id)\n\n const onInputUpload = useCallback(\n (newFiles: UploadFile[]) => {\n const mergedFiles = [\n ...files,\n ...newFiles.map((fileItem) => {\n const { file } = fileItem\n\n const existingFile = getExistingFile(file, files)\n\n fileItem.exists = Boolean(existingFile)\n fileItem.id = fileItem.exists ? existingFile.id : makeUniqueId()\n\n return fileItem\n }),\n ]\n\n const verifiedFiles = verifyFiles(\n mergedFiles.filter(({ exists }) => !exists),\n {\n fileMaxSize,\n acceptedFileTypes,\n errorUnsupportedFile,\n errorLargeFile,\n }\n )\n\n const validFiles = [...verifiedFiles].slice(0, filesAmountLimit)\n\n setFiles(validFiles)\n setInternalFiles(mergedFiles)\n\n if (typeof onChange === 'function') {\n onChange({ files: validFiles })\n }\n\n return validFiles\n },\n [\n acceptedFileTypes,\n errorLargeFile,\n errorUnsupportedFile,\n fileMaxSize,\n files,\n filesAmountLimit,\n getExistingFile,\n onChange,\n setFiles,\n setInternalFiles,\n ]\n )\n\n return (\n <UploadContext.Provider\n value={{\n ...extendedProps,\n id,\n onInputUpload,\n }}\n >\n <Provider skeleton={skeleton}>\n <UploadDropzone\n className={classnames('dnb-upload', spacingClasses, className)}\n {...props}\n >\n <UploadInfo />\n\n <UploadFileInput />\n\n <UploadFileList />\n </UploadDropzone>\n </Provider>\n </UploadContext.Provider>\n )\n}\n\nUpload.useUpload = useUpload\n\nUpload._formElement = true\nUpload._supportsSpacingProps = true\n\nexport default Upload\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Upload.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_SpacingHelper","_Provider","_Context","_componentHelper","_UploadFileInput2","_useUpload","_UploadDropzone","_UploadContext","_UploadVerify","_UploadFileList2","_UploadInfo2","_UploadInfo","_UploadFileInput","_UploadFileList","_excluded","_excluded2","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","Upload","localProps","context","React","useContext","Context","_context$getTranslati","getTranslation","buttonTextSingular","textSingular","translations","filesAmountLimit","buttonText","text","extendedProps","extendPropsWithContext","defaultProps","skeleton","id","className","acceptedFileTypes","fileMaxSize","onChange","onFileDelete","title","fileTypeDescription","fileSizeDescription","fileAmountDescription","fileSizeContent","loadingText","errorLargeFile","errorUnsupportedFile","errorAmountLimit","deleteButton","fileListAriaLabel","props","spacingClasses","createSpacingClasses","files","setFiles","setInternalFiles","getExistingFile","useUpload","onInputUpload","useCallback","newFiles","mergedFiles","map","fileItem","file","existingFile","exists","Boolean","makeUniqueId","verifiedFiles","verifyFiles","_ref","validFiles","slice","createElement","UploadContext","Provider","classnames","_formElement","_supportsSpacingProps","_default","exports"],"sources":["../../../../src/components/upload/Upload.tsx"],"sourcesContent":["import React, { useCallback } from 'react'\nimport classnames from 'classnames'\n\n// Shared\nimport { createSpacingClasses } from '../space/SpacingHelper'\nimport Provider from '../../shared/Provider'\nimport Context from '../../shared/Context'\nimport {\n extendPropsWithContext,\n makeUniqueId,\n} from '../../shared/component-helper'\n\n// Internal\nimport UploadFileInput from './UploadFileInput'\nimport useUpload from './useUpload'\nimport UploadDropzone from './UploadDropzone'\nimport { UploadContext, defaultProps } from './UploadContext'\nimport { verifyFiles } from './UploadVerify'\n\nimport type { UploadFile, UploadAllProps } from './types'\nimport UploadFileList from './UploadFileList'\nimport UploadInfo from './UploadInfo'\n\nexport type * from './types'\nexport { defaultProps }\n\nconst Upload = (localProps: UploadAllProps) => {\n const context = React.useContext(Context)\n\n const { buttonTextSingular, textSingular, ...translations } =\n context.getTranslation(localProps).Upload\n\n if (localProps?.filesAmountLimit === 1) {\n translations.buttonText = buttonTextSingular\n translations.text = textSingular\n }\n\n const extendedProps = extendPropsWithContext(\n localProps,\n defaultProps,\n { skeleton: context?.skeleton },\n translations,\n context.Upload\n )\n\n const {\n id,\n skeleton,\n className,\n acceptedFileTypes,\n filesAmountLimit,\n fileMaxSize,\n onChange,\n onFileDelete, // eslint-disable-line\n title, // eslint-disable-line\n text, // eslint-disable-line\n fileTypeDescription, // eslint-disable-line\n fileSizeDescription, // eslint-disable-line\n fileAmountDescription, // eslint-disable-line\n fileSizeContent, // eslint-disable-line\n buttonText, // eslint-disable-line\n loadingText, // eslint-disable-line\n errorLargeFile,\n errorUnsupportedFile,\n errorAmountLimit, // eslint-disable-line\n deleteButton, // eslint-disable-line\n fileListAriaLabel, // eslint-disable-line\n ...props\n } = extendedProps\n\n const spacingClasses = createSpacingClasses(props)\n\n const { files, setFiles, setInternalFiles, getExistingFile } =\n useUpload(id)\n\n const onInputUpload = useCallback(\n (newFiles: UploadFile[]) => {\n const mergedFiles = [\n ...files,\n ...newFiles.map((fileItem) => {\n const { file } = fileItem\n\n const existingFile = getExistingFile(file, files)\n\n fileItem.exists = Boolean(existingFile)\n fileItem.id = fileItem.exists ? existingFile.id : makeUniqueId()\n\n return fileItem\n }),\n ]\n\n const verifiedFiles = verifyFiles(\n mergedFiles.filter(({ exists }) => !exists),\n {\n fileMaxSize,\n acceptedFileTypes,\n errorUnsupportedFile,\n errorLargeFile,\n }\n )\n\n const validFiles = [...verifiedFiles].slice(0, filesAmountLimit)\n\n setFiles(validFiles)\n setInternalFiles(mergedFiles)\n\n if (typeof onChange === 'function') {\n onChange({ files: validFiles })\n }\n\n return validFiles\n },\n [\n acceptedFileTypes,\n errorLargeFile,\n errorUnsupportedFile,\n fileMaxSize,\n files,\n filesAmountLimit,\n getExistingFile,\n onChange,\n setFiles,\n setInternalFiles,\n ]\n )\n\n return (\n <UploadContext.Provider\n value={{\n ...extendedProps,\n id,\n onInputUpload,\n }}\n >\n <Provider skeleton={skeleton}>\n <UploadDropzone\n className={classnames('dnb-upload', spacingClasses, className)}\n {...props}\n >\n <UploadInfo />\n\n <UploadFileInput />\n\n <UploadFileList />\n </UploadDropzone>\n </Provider>\n </UploadContext.Provider>\n )\n}\n\nUpload.useUpload = useUpload\n\nUpload._formElement = true\nUpload._supportsSpacingProps = true\n\nexport default Upload\n"],"mappings":"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"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.UploadProperties = exports.UploadEvents = void 0;
|
|
7
|
+
const UploadProperties = {
|
|
8
|
+
acceptedFileTypes: {
|
|
9
|
+
doc: 'List of accepted file types.',
|
|
10
|
+
type: 'Array<string>',
|
|
11
|
+
status: 'required'
|
|
12
|
+
},
|
|
13
|
+
filesAmountLimit: {
|
|
14
|
+
doc: 'Defines the amount of files the user can select and upload. Defaults to 100.',
|
|
15
|
+
type: 'number',
|
|
16
|
+
status: 'optional'
|
|
17
|
+
},
|
|
18
|
+
fileMaxSize: {
|
|
19
|
+
doc: '`fileMaxSize` is max size of each file in MB. Defaults to 5 MB.',
|
|
20
|
+
type: 'number',
|
|
21
|
+
status: 'optional'
|
|
22
|
+
},
|
|
23
|
+
title: {
|
|
24
|
+
doc: 'Custom text property. Replaces the default title.',
|
|
25
|
+
type: 'string',
|
|
26
|
+
status: 'optional'
|
|
27
|
+
},
|
|
28
|
+
text: {
|
|
29
|
+
doc: 'Custom text property. Replaces the default text.',
|
|
30
|
+
type: 'string',
|
|
31
|
+
status: 'optional'
|
|
32
|
+
},
|
|
33
|
+
skeleton: {
|
|
34
|
+
doc: 'Skeleton should be applied when loading content.',
|
|
35
|
+
type: 'boolean',
|
|
36
|
+
status: 'optional'
|
|
37
|
+
},
|
|
38
|
+
'[Space](/uilib/layout/space/properties)': {
|
|
39
|
+
doc: 'Spacing properties like `top` or `bottom` are supported.',
|
|
40
|
+
type: ['string', 'object'],
|
|
41
|
+
status: 'optional'
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
exports.UploadProperties = UploadProperties;
|
|
45
|
+
const UploadEvents = {
|
|
46
|
+
onChange: {
|
|
47
|
+
doc: 'Will be called on `files` changes made by the user. Access the files with `{ files }` (containing each a `fileItem`).',
|
|
48
|
+
type: 'function',
|
|
49
|
+
status: 'optional'
|
|
50
|
+
},
|
|
51
|
+
onFileDelete: {
|
|
52
|
+
doc: 'Will be called once a file gets deleted by the user. Access the deleted file with `{ fileItem }`.',
|
|
53
|
+
type: 'function',
|
|
54
|
+
status: 'optional'
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
exports.UploadEvents = UploadEvents;
|
|
58
|
+
//# sourceMappingURL=UploadDocs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UploadDocs.js","names":["UploadProperties","acceptedFileTypes","doc","type","status","filesAmountLimit","fileMaxSize","title","text","skeleton","exports","UploadEvents","onChange","onFileDelete"],"sources":["../../../../src/components/upload/UploadDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../shared/types'\n\nexport const UploadProperties: PropertiesTableProps = {\n acceptedFileTypes: {\n doc: 'List of accepted file types.',\n type: 'Array<string>',\n status: 'required',\n },\n filesAmountLimit: {\n doc: 'Defines the amount of files the user can select and upload. Defaults to 100.',\n type: 'number',\n status: 'optional',\n },\n fileMaxSize: {\n doc: '`fileMaxSize` is max size of each file in MB. Defaults to 5 MB.',\n type: 'number',\n status: 'optional',\n },\n title: {\n doc: 'Custom text property. Replaces the default title.',\n type: 'string',\n status: 'optional',\n },\n text: {\n doc: 'Custom text property. Replaces the default text.',\n type: 'string',\n status: 'optional',\n },\n skeleton: {\n doc: 'Skeleton should be applied when loading content.',\n type: 'boolean',\n status: 'optional',\n },\n '[Space](/uilib/layout/space/properties)': {\n doc: 'Spacing properties like `top` or `bottom` are supported.',\n type: ['string', 'object'],\n status: 'optional',\n },\n}\n\nexport const UploadEvents: PropertiesTableProps = {\n onChange: {\n doc: 'Will be called on `files` changes made by the user. Access the files with `{ files }` (containing each a `fileItem`).',\n type: 'function',\n status: 'optional',\n },\n onFileDelete: {\n doc: 'Will be called once a file gets deleted by the user. Access the deleted file with `{ fileItem }`.',\n type: 'function',\n status: 'optional',\n },\n}\n"],"mappings":";;;;;;AAEO,MAAMA,gBAAsC,GAAG;EACpDC,iBAAiB,EAAE;IACjBC,GAAG,EAAE,8BAA8B;IACnCC,IAAI,EAAE,eAAe;IACrBC,MAAM,EAAE;EACV,CAAC;EACDC,gBAAgB,EAAE;IAChBH,GAAG,EAAE,8EAA8E;IACnFC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDE,WAAW,EAAE;IACXJ,GAAG,EAAE,iEAAiE;IACtEC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDG,KAAK,EAAE;IACLL,GAAG,EAAE,mDAAmD;IACxDC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDI,IAAI,EAAE;IACJN,GAAG,EAAE,kDAAkD;IACvDC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDK,QAAQ,EAAE;IACRP,GAAG,EAAE,kDAAkD;IACvDC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACD,yCAAyC,EAAE;IACzCF,GAAG,EAAE,0DAA0D;IAC/DC,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC1BC,MAAM,EAAE;EACV;AACF,CAAC;AAAAM,OAAA,CAAAV,gBAAA,GAAAA,gBAAA;AAEM,MAAMW,YAAkC,GAAG;EAChDC,QAAQ,EAAE;IACRV,GAAG,EAAE,uHAAuH;IAC5HC,IAAI,EAAE,UAAU;IAChBC,MAAM,EAAE;EACV,CAAC;EACDS,YAAY,EAAE;IACZX,GAAG,EAAE,mGAAmG;IACxGC,IAAI,EAAE,UAAU;IAChBC,MAAM,EAAE;EACV;AACF,CAAC;AAAAM,OAAA,CAAAC,YAAA,GAAAA,YAAA"}
|
|
@@ -1,16 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
"use client";
|
|
2
3
|
|
|
3
4
|
Object.defineProperty(exports, "__esModule", {
|
|
4
5
|
value: true
|
|
5
6
|
});
|
|
6
7
|
exports.default = UploadDropzone;
|
|
7
|
-
var _react =
|
|
8
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
8
9
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
9
10
|
var _HeightAnimation = _interopRequireDefault(require("../height-animation/HeightAnimation"));
|
|
10
11
|
var _UploadContext = require("./UploadContext");
|
|
11
12
|
var _svg;
|
|
12
13
|
const _excluded = ["children", "className"];
|
|
13
14
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
16
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
14
17
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
15
18
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
16
19
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
@@ -21,14 +24,14 @@ function UploadDropzone(_ref) {
|
|
|
21
24
|
} = _ref,
|
|
22
25
|
rest = _objectWithoutProperties(_ref, _excluded);
|
|
23
26
|
const props = rest;
|
|
24
|
-
const context = _react.
|
|
25
|
-
const [hover, setHover] = _react.
|
|
26
|
-
const hoverTimeout = _react.
|
|
27
|
+
const context = (0, _react.useContext)(_UploadContext.UploadContext);
|
|
28
|
+
const [hover, setHover] = (0, _react.useState)(false);
|
|
29
|
+
const hoverTimeout = (0, _react.useRef)();
|
|
27
30
|
const {
|
|
28
31
|
onInputUpload,
|
|
29
32
|
id
|
|
30
33
|
} = context;
|
|
31
|
-
const getFiles = event => {
|
|
34
|
+
const getFiles = (0, _react.useCallback)(event => {
|
|
32
35
|
const fileData = event.dataTransfer;
|
|
33
36
|
const files = [];
|
|
34
37
|
Array.from(fileData.files).forEach(file => {
|
|
@@ -37,28 +40,28 @@ function UploadDropzone(_ref) {
|
|
|
37
40
|
});
|
|
38
41
|
});
|
|
39
42
|
return files;
|
|
40
|
-
};
|
|
41
|
-
const
|
|
43
|
+
}, []);
|
|
44
|
+
const clearTimers = (0, _react.useCallback)(() => {
|
|
45
|
+
clearTimeout(hoverTimeout.current);
|
|
46
|
+
}, []);
|
|
47
|
+
const hoverHandler = (0, _react.useCallback)((event, state) => {
|
|
42
48
|
event.stopPropagation();
|
|
43
49
|
event.preventDefault();
|
|
44
50
|
clearTimers();
|
|
45
51
|
setHover(state);
|
|
46
|
-
};
|
|
47
|
-
const dropHandler = event => {
|
|
52
|
+
}, [clearTimers]);
|
|
53
|
+
const dropHandler = (0, _react.useCallback)(event => {
|
|
48
54
|
const files = getFiles(event);
|
|
49
55
|
onInputUpload(files);
|
|
50
56
|
hoverHandler(event, false);
|
|
51
|
-
};
|
|
52
|
-
const dragEnterHandler = event => {
|
|
57
|
+
}, [getFiles, onInputUpload, hoverHandler]);
|
|
58
|
+
const dragEnterHandler = (0, _react.useCallback)(event => {
|
|
53
59
|
hoverHandler(event, true);
|
|
54
|
-
};
|
|
55
|
-
const dragLeaveHandler = event => {
|
|
60
|
+
}, [hoverHandler]);
|
|
61
|
+
const dragLeaveHandler = (0, _react.useCallback)(event => {
|
|
56
62
|
hoverHandler(event, false);
|
|
57
|
-
};
|
|
58
|
-
|
|
59
|
-
clearTimeout(hoverTimeout.current);
|
|
60
|
-
};
|
|
61
|
-
_react.default.useEffect(() => {
|
|
63
|
+
}, [hoverHandler]);
|
|
64
|
+
(0, _react.useEffect)(() => {
|
|
62
65
|
const elem = document.body;
|
|
63
66
|
const execute = () => {
|
|
64
67
|
try {
|
|
@@ -85,7 +88,7 @@ function UploadDropzone(_ref) {
|
|
|
85
88
|
}
|
|
86
89
|
} catch (e) {}
|
|
87
90
|
};
|
|
88
|
-
}, []);
|
|
91
|
+
}, [clearTimers, dragEnterHandler, dragLeaveHandler, dropHandler, id]);
|
|
89
92
|
return _react.default.createElement(_HeightAnimation.default, _extends({
|
|
90
93
|
className: (0, _classnames.default)(className, hover && 'dnb-upload--active'),
|
|
91
94
|
onDrop: dropHandler,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UploadDropzone.js","names":["_react","_interopRequireDefault","require","_classnames","_HeightAnimation","_UploadContext","_svg","_excluded","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","UploadDropzone","_ref","children","className","rest","props","context","React","useContext","UploadContext","hover","setHover","useState","hoverTimeout","useRef","onInputUpload","id","getFiles","event","fileData","dataTransfer","files","Array","from","forEach","file","push","hoverHandler","state","stopPropagation","preventDefault","clearTimers","dropHandler","dragEnterHandler","dragLeaveHandler","clearTimeout","current","useEffect","elem","document","body","execute","hasAttribute","add","addEventListener","setAttribute","e","timeoutId","setTimeout","getAttribute","remove","removeEventListener","removeAttribute","createElement","classnames","onDrop","onDragOver","onDragLeave","xmlns","fill","width","height","rx","ry","strokeWidth","strokeDashoffset","strokeDasharray"],"sources":["../../../../src/components/upload/UploadDropzone.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\n\nimport HeightAnimation from '../height-animation/HeightAnimation'\nimport { UploadContext } from './UploadContext'\nimport type { UploadAllProps, UploadFile, UploadProps } from './types'\n\nexport type UploadDragEvent = React.DragEvent | DragEvent\n\nexport default function UploadDropzone({\n children,\n className,\n ...rest\n}: Partial<UploadAllProps>) {\n const props = rest as Omit<UploadProps, 'title' | 'onChange'>\n const context = React.useContext(UploadContext)\n const [hover, setHover] = React.useState(false)\n const hoverTimeout = React.useRef<NodeJS.Timer>()\n\n const { onInputUpload, id } = context\n\n const getFiles = (event: UploadDragEvent) => {\n const fileData = event.dataTransfer\n\n const files: UploadFile[] = []\n\n Array.from(fileData.files).forEach((file) => {\n files.push({ file })\n })\n\n return files\n }\n\n const hoverHandler = (event: UploadDragEvent, state: boolean) => {\n event.stopPropagation()\n event.preventDefault()\n clearTimers()\n setHover(state)\n }\n\n const dropHandler = (event: UploadDragEvent) => {\n const files = getFiles(event)\n\n onInputUpload(files)\n hoverHandler(event, false)\n }\n\n const dragEnterHandler = (event: UploadDragEvent) => {\n hoverHandler(event, true)\n }\n\n const dragLeaveHandler = (event: UploadDragEvent) => {\n hoverHandler(event, false)\n }\n\n const clearTimers = () => {\n clearTimeout(hoverTimeout.current)\n }\n\n React.useEffect(() => {\n const elem = document.body\n const execute = () => {\n try {\n if (!elem.hasAttribute('data-upload-drop-zone')) {\n const add = elem.addEventListener\n add('drop', dropHandler)\n add('dragover', dragEnterHandler)\n add('dragleave', dragLeaveHandler)\n elem.setAttribute('data-upload-drop-zone', id)\n }\n } catch (e) {\n //\n }\n }\n const timeoutId = setTimeout(execute, 10) // Add the listeners delayed (ms) without prioritization, in case of re-renders\n\n return () => {\n clearTimers()\n clearTimeout(timeoutId)\n try {\n if (elem.getAttribute('data-upload-drop-zone') === id) {\n const remove = elem.removeEventListener\n remove('drop', dropHandler)\n remove('dragover', dragEnterHandler)\n remove('dragleave', dragLeaveHandler)\n elem.removeAttribute('data-upload-drop-zone')\n }\n } catch (e) {\n //\n }\n }\n }, [])\n\n return (\n <HeightAnimation\n className={classnames(className, hover && 'dnb-upload--active')}\n onDrop={dropHandler}\n onDragOver={dragEnterHandler}\n onDragLeave={dragLeaveHandler}\n {...props}\n >\n {children}\n\n <svg\n className=\"dnb-upload__outline\"\n aria-hidden\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n >\n <rect\n width=\"100%\"\n height=\"100%\"\n rx=\"0.5rem\"\n ry=\"0.5rem\"\n strokeWidth=\"3\"\n strokeDashoffset=\"4\"\n strokeDasharray=\"8 8\"\n />\n </svg>\n </HeightAnimation>\n )\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"UploadDropzone.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_HeightAnimation","_UploadContext","_svg","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","UploadDropzone","_ref","children","className","rest","props","context","useContext","UploadContext","hover","setHover","useState","hoverTimeout","useRef","onInputUpload","id","getFiles","useCallback","event","fileData","dataTransfer","files","Array","from","forEach","file","push","clearTimers","clearTimeout","current","hoverHandler","state","stopPropagation","preventDefault","dropHandler","dragEnterHandler","dragLeaveHandler","useEffect","elem","document","body","execute","hasAttribute","add","addEventListener","setAttribute","e","timeoutId","setTimeout","getAttribute","remove","removeEventListener","removeAttribute","createElement","classnames","onDrop","onDragOver","onDragLeave","xmlns","fill","width","height","rx","ry","strokeWidth","strokeDashoffset","strokeDasharray"],"sources":["../../../../src/components/upload/UploadDropzone.tsx"],"sourcesContent":["import React, {\n useCallback,\n useContext,\n useEffect,\n useRef,\n useState,\n} from 'react'\nimport classnames from 'classnames'\n\nimport HeightAnimation from '../height-animation/HeightAnimation'\nimport { UploadContext } from './UploadContext'\nimport type { UploadAllProps, UploadFile, UploadProps } from './types'\n\nexport type UploadDragEvent = React.DragEvent | DragEvent\n\nexport default function UploadDropzone({\n children,\n className,\n ...rest\n}: Partial<UploadAllProps>) {\n const props = rest as Omit<UploadProps, 'title' | 'onChange'>\n const context = useContext(UploadContext)\n const [hover, setHover] = useState(false)\n const hoverTimeout = useRef<NodeJS.Timer>()\n\n const { onInputUpload, id } = context\n\n const getFiles = useCallback((event: UploadDragEvent) => {\n const fileData = event.dataTransfer\n\n const files: UploadFile[] = []\n\n Array.from(fileData.files).forEach((file) => {\n files.push({ file })\n })\n\n return files\n }, [])\n\n const clearTimers = useCallback(() => {\n clearTimeout(hoverTimeout.current)\n }, [])\n\n const hoverHandler = useCallback(\n (event: UploadDragEvent, state: boolean) => {\n event.stopPropagation()\n event.preventDefault()\n clearTimers()\n setHover(state)\n },\n [clearTimers]\n )\n\n const dropHandler = useCallback(\n (event: UploadDragEvent) => {\n const files = getFiles(event)\n\n onInputUpload(files)\n hoverHandler(event, false)\n },\n [getFiles, onInputUpload, hoverHandler]\n )\n\n const dragEnterHandler = useCallback(\n (event: UploadDragEvent) => {\n hoverHandler(event, true)\n },\n [hoverHandler]\n )\n\n const dragLeaveHandler = useCallback(\n (event: UploadDragEvent) => {\n hoverHandler(event, false)\n },\n [hoverHandler]\n )\n\n useEffect(() => {\n const elem = document.body\n const execute = () => {\n try {\n if (!elem.hasAttribute('data-upload-drop-zone')) {\n const add = elem.addEventListener\n add('drop', dropHandler)\n add('dragover', dragEnterHandler)\n add('dragleave', dragLeaveHandler)\n elem.setAttribute('data-upload-drop-zone', id)\n }\n } catch (e) {\n //\n }\n }\n const timeoutId = setTimeout(execute, 10) // Add the listeners delayed (ms) without prioritization, in case of re-renders\n\n return () => {\n clearTimers()\n clearTimeout(timeoutId)\n try {\n if (elem.getAttribute('data-upload-drop-zone') === id) {\n const remove = elem.removeEventListener\n remove('drop', dropHandler)\n remove('dragover', dragEnterHandler)\n remove('dragleave', dragLeaveHandler)\n elem.removeAttribute('data-upload-drop-zone')\n }\n } catch (e) {\n //\n }\n }\n }, [clearTimers, dragEnterHandler, dragLeaveHandler, dropHandler, id])\n\n return (\n <HeightAnimation\n className={classnames(className, hover && 'dnb-upload--active')}\n onDrop={dropHandler}\n onDragOver={dragEnterHandler}\n onDragLeave={dragLeaveHandler}\n {...props}\n >\n {children}\n\n <svg\n className=\"dnb-upload__outline\"\n aria-hidden\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n >\n <rect\n width=\"100%\"\n height=\"100%\"\n rx=\"0.5rem\"\n ry=\"0.5rem\"\n strokeWidth=\"3\"\n strokeDashoffset=\"4\"\n strokeDasharray=\"8 8\"\n />\n </svg>\n </HeightAnimation>\n )\n}\n"],"mappings":"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"}
|
|
@@ -24,20 +24,21 @@ const UploadInfo = () => {
|
|
|
24
24
|
fileAmountDescription,
|
|
25
25
|
fileSizeContent,
|
|
26
26
|
filesAmountLimit,
|
|
27
|
-
fileMaxSize
|
|
27
|
+
fileMaxSize,
|
|
28
|
+
children
|
|
28
29
|
} = context;
|
|
29
|
-
const
|
|
30
|
+
const prettifiedAcceptedFileFormats = acceptedFileTypes.join(', ').toUpperCase();
|
|
30
31
|
return _react.default.createElement(_react.default.Fragment, null, _react.default.createElement(_Lead.default, {
|
|
31
32
|
space: "0"
|
|
32
33
|
}, title), _react.default.createElement(_P.default, {
|
|
33
34
|
top: "xx-small",
|
|
34
35
|
className: "dnb-upload__text"
|
|
35
|
-
}, text), _react.default.createElement(_Dl.default, {
|
|
36
|
+
}, text), children, _react.default.createElement(_Dl.default, {
|
|
36
37
|
top: "small",
|
|
37
38
|
bottom: 0,
|
|
38
39
|
layout: "horizontal",
|
|
39
40
|
className: "dnb-upload__condition-list"
|
|
40
|
-
},
|
|
41
|
+
}, prettifiedAcceptedFileFormats && _react.default.createElement(_Dl.default.Item, null, _react.default.createElement(_Dt.default, null, fileTypeDescription), _react.default.createElement(_Dd.default, null, prettifiedAcceptedFileFormats)), _react.default.createElement(_Dl.default.Item, null, _react.default.createElement(_Dt.default, null, fileSizeDescription), _react.default.createElement(_Dd.default, null, String(fileSizeContent).replace('%size', (0, _NumberUtils.format)(fileMaxSize).toString()))), filesAmountLimit < _UploadContext.defaultProps.filesAmountLimit && _react.default.createElement(_Dl.default.Item, null, _react.default.createElement(_Dt.default, null, fileAmountDescription), _react.default.createElement(_Dd.default, null, filesAmountLimit))));
|
|
41
42
|
};
|
|
42
43
|
var _default = UploadInfo;
|
|
43
44
|
exports.default = _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UploadInfo.js","names":["_react","_interopRequireDefault","require","_UploadContext","_Lead","_P","_Dl","_Dt","_Dd","_NumberUtils","obj","__esModule","default","UploadInfo","context","React","useContext","UploadContext","title","text","acceptedFileTypes","fileTypeDescription","fileSizeDescription","fileAmountDescription","fileSizeContent","filesAmountLimit","fileMaxSize","
|
|
1
|
+
{"version":3,"file":"UploadInfo.js","names":["_react","_interopRequireDefault","require","_UploadContext","_Lead","_P","_Dl","_Dt","_Dd","_NumberUtils","obj","__esModule","default","UploadInfo","context","React","useContext","UploadContext","title","text","acceptedFileTypes","fileTypeDescription","fileSizeDescription","fileAmountDescription","fileSizeContent","filesAmountLimit","fileMaxSize","children","prettifiedAcceptedFileFormats","join","toUpperCase","createElement","Fragment","space","top","className","bottom","layout","Item","String","replace","format","toString","defaultProps","_default","exports"],"sources":["../../../../src/components/upload/UploadInfo.tsx"],"sourcesContent":["import React from 'react'\nimport { defaultProps, UploadContext } from './UploadContext'\nimport Lead from '../../elements/Lead'\nimport P from '../../elements/P'\nimport Dl from '../../elements/Dl'\nimport Dt from '../../elements/Dt'\nimport Dd from '../../elements/Dd'\nimport { format } from '../number-format/NumberUtils'\n\nconst UploadInfo = () => {\n const context = React.useContext(UploadContext)\n\n const {\n title,\n text,\n acceptedFileTypes,\n fileTypeDescription,\n fileSizeDescription,\n fileAmountDescription,\n fileSizeContent,\n filesAmountLimit,\n fileMaxSize,\n children,\n } = context\n\n const prettifiedAcceptedFileFormats = acceptedFileTypes\n .join(', ')\n .toUpperCase()\n\n return (\n <>\n <Lead space=\"0\">{title}</Lead>\n\n <P top=\"xx-small\" className=\"dnb-upload__text\">\n {text}\n </P>\n\n {children}\n\n <Dl\n top=\"small\"\n bottom={0}\n layout=\"horizontal\"\n className=\"dnb-upload__condition-list\"\n >\n {prettifiedAcceptedFileFormats && (\n <Dl.Item>\n <Dt>{fileTypeDescription}</Dt>\n <Dd>{prettifiedAcceptedFileFormats}</Dd>\n </Dl.Item>\n )}\n\n <Dl.Item>\n <Dt>{fileSizeDescription}</Dt>\n <Dd>\n {String(fileSizeContent).replace(\n '%size',\n format(fileMaxSize).toString()\n )}\n </Dd>\n </Dl.Item>\n\n {filesAmountLimit < defaultProps.filesAmountLimit && (\n <Dl.Item>\n <Dt>{fileAmountDescription}</Dt>\n <Dd>{filesAmountLimit}</Dd>\n </Dl.Item>\n )}\n </Dl>\n </>\n )\n}\n\nexport default UploadInfo\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,EAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,GAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,GAAA,GAAAN,sBAAA,CAAAC,OAAA;AACA,IAAAM,GAAA,GAAAP,sBAAA,CAAAC,OAAA;AACA,IAAAO,YAAA,GAAAP,OAAA;AAAqD,SAAAD,uBAAAS,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAErD,MAAMG,UAAU,GAAGA,CAAA,KAAM;EACvB,MAAMC,OAAO,GAAGC,cAAK,CAACC,UAAU,CAACC,4BAAa,CAAC;EAE/C,MAAM;IACJC,KAAK;IACLC,IAAI;IACJC,iBAAiB;IACjBC,mBAAmB;IACnBC,mBAAmB;IACnBC,qBAAqB;IACrBC,eAAe;IACfC,gBAAgB;IAChBC,WAAW;IACXC;EACF,CAAC,GAAGb,OAAO;EAEX,MAAMc,6BAA6B,GAAGR,iBAAiB,CACpDS,IAAI,CAAC,IAAI,CAAC,CACVC,WAAW,CAAC,CAAC;EAEhB,OACE9B,MAAA,CAAAY,OAAA,CAAAmB,aAAA,CAAA/B,MAAA,CAAAY,OAAA,CAAAoB,QAAA,QACEhC,MAAA,CAAAY,OAAA,CAAAmB,aAAA,CAAC3B,KAAA,CAAAQ,OAAI;IAACqB,KAAK,EAAC;EAAG,GAAEf,KAAY,CAAC,EAE9BlB,MAAA,CAAAY,OAAA,CAAAmB,aAAA,CAAC1B,EAAA,CAAAO,OAAC;IAACsB,GAAG,EAAC,UAAU;IAACC,SAAS,EAAC;EAAkB,GAC3ChB,IACA,CAAC,EAEHQ,QAAQ,EAET3B,MAAA,CAAAY,OAAA,CAAAmB,aAAA,CAACzB,GAAA,CAAAM,OAAE;IACDsB,GAAG,EAAC,OAAO;IACXE,MAAM,EAAE,CAAE;IACVC,MAAM,EAAC,YAAY;IACnBF,SAAS,EAAC;EAA4B,GAErCP,6BAA6B,IAC5B5B,MAAA,CAAAY,OAAA,CAAAmB,aAAA,CAACzB,GAAA,CAAAM,OAAE,CAAC0B,IAAI,QACNtC,MAAA,CAAAY,OAAA,CAAAmB,aAAA,CAACxB,GAAA,CAAAK,OAAE,QAAES,mBAAwB,CAAC,EAC9BrB,MAAA,CAAAY,OAAA,CAAAmB,aAAA,CAACvB,GAAA,CAAAI,OAAE,QAAEgB,6BAAkC,CAChC,CACV,EAED5B,MAAA,CAAAY,OAAA,CAAAmB,aAAA,CAACzB,GAAA,CAAAM,OAAE,CAAC0B,IAAI,QACNtC,MAAA,CAAAY,OAAA,CAAAmB,aAAA,CAACxB,GAAA,CAAAK,OAAE,QAAEU,mBAAwB,CAAC,EAC9BtB,MAAA,CAAAY,OAAA,CAAAmB,aAAA,CAACvB,GAAA,CAAAI,OAAE,QACA2B,MAAM,CAACf,eAAe,CAAC,CAACgB,OAAO,CAC9B,OAAO,EACP,IAAAC,mBAAM,EAACf,WAAW,CAAC,CAACgB,QAAQ,CAAC,CAC/B,CACE,CACG,CAAC,EAETjB,gBAAgB,GAAGkB,2BAAY,CAAClB,gBAAgB,IAC/CzB,MAAA,CAAAY,OAAA,CAAAmB,aAAA,CAACzB,GAAA,CAAAM,OAAE,CAAC0B,IAAI,QACNtC,MAAA,CAAAY,OAAA,CAAAmB,aAAA,CAACxB,GAAA,CAAAK,OAAE,QAAEW,qBAA0B,CAAC,EAChCvB,MAAA,CAAAY,OAAA,CAAAmB,aAAA,CAACvB,GAAA,CAAAI,OAAE,QAAEa,gBAAqB,CACnB,CAET,CACJ,CAAC;AAEP,CAAC;AAAA,IAAAmB,QAAA,GAEc/B,UAAU;AAAAgC,OAAA,CAAAjC,OAAA,GAAAgC,QAAA"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { UploadFile, UploadContextProps, UploadAcceptedFileTypes } from './types';
|
|
2
|
+
export declare const BYTES_IN_A_MEGA_BYTE = 1048576;
|
|
2
3
|
export declare function verifyFiles(files: UploadFile[], context: Pick<UploadContextProps, 'errorUnsupportedFile' | 'errorLargeFile' | 'acceptedFileTypes' | 'fileMaxSize'>): UploadFile[];
|
|
3
4
|
export declare function getFileTypeFromExtension(file: File): string;
|
|
4
5
|
export declare function getAcceptedFileTypes(acceptedFileTypes: UploadAcceptedFileTypes): string;
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
+
exports.BYTES_IN_A_MEGA_BYTE = void 0;
|
|
6
7
|
exports.extendWithAbbreviation = extendWithAbbreviation;
|
|
7
8
|
exports.getAcceptedFileTypes = getAcceptedFileTypes;
|
|
8
9
|
exports.getFileTypeFromExtension = getFileTypeFromExtension;
|
|
@@ -10,6 +11,7 @@ exports.hasPreferredMimeType = hasPreferredMimeType;
|
|
|
10
11
|
exports.verifyFiles = verifyFiles;
|
|
11
12
|
var _NumberUtils = require("../number-format/NumberUtils");
|
|
12
13
|
const BYTES_IN_A_MEGA_BYTE = 1048576;
|
|
14
|
+
exports.BYTES_IN_A_MEGA_BYTE = BYTES_IN_A_MEGA_BYTE;
|
|
13
15
|
function verifyFiles(files, context) {
|
|
14
16
|
const {
|
|
15
17
|
fileMaxSize,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UploadVerify.js","names":["_NumberUtils","require","BYTES_IN_A_MEGA_BYTE","verifyFiles","files","context","fileMaxSize","acceptedFileTypes","errorLargeFile","errorUnsupportedFile","handleSize","file","size","String","replace","format","toString","handleType","length","fileType","hasPreferredMimeType","type","getFileTypeFromExtension","foundType","extendWithAbbreviation","some","includes","cleanedFiles","map","item","errorMessage","name","getAcceptedFileTypes","join","split","toLowerCase","abbreviations","arguments","undefined","jpg","list","Object","entries","forEach","_ref","abbr","t","push"],"sources":["../../../../src/components/upload/UploadVerify.tsx"],"sourcesContent":["import { format } from '../number-format/NumberUtils'\nimport {\n UploadFile,\n UploadContextProps,\n UploadAcceptedFileTypes,\n} from './types'\n\
|
|
1
|
+
{"version":3,"file":"UploadVerify.js","names":["_NumberUtils","require","BYTES_IN_A_MEGA_BYTE","exports","verifyFiles","files","context","fileMaxSize","acceptedFileTypes","errorLargeFile","errorUnsupportedFile","handleSize","file","size","String","replace","format","toString","handleType","length","fileType","hasPreferredMimeType","type","getFileTypeFromExtension","foundType","extendWithAbbreviation","some","includes","cleanedFiles","map","item","errorMessage","name","getAcceptedFileTypes","join","split","toLowerCase","abbreviations","arguments","undefined","jpg","list","Object","entries","forEach","_ref","abbr","t","push"],"sources":["../../../../src/components/upload/UploadVerify.tsx"],"sourcesContent":["import { format } from '../number-format/NumberUtils'\nimport {\n UploadFile,\n UploadContextProps,\n UploadAcceptedFileTypes,\n} from './types'\n\nexport const BYTES_IN_A_MEGA_BYTE = 1048576\n\nexport function verifyFiles(\n files: UploadFile[],\n context: Pick<\n UploadContextProps,\n | 'errorUnsupportedFile'\n | 'errorLargeFile'\n | 'acceptedFileTypes'\n | 'fileMaxSize'\n >\n) {\n const {\n fileMaxSize,\n acceptedFileTypes,\n errorLargeFile,\n errorUnsupportedFile,\n } = context\n\n const handleSize = (file: File) => {\n return (\n // Converts from b (binary) to MB (decimal)\n file.size / BYTES_IN_A_MEGA_BYTE > fileMaxSize\n ? String(errorLargeFile).replace(\n '%size',\n format(fileMaxSize).toString()\n )\n : null\n )\n }\n\n const handleType = (file: File) => {\n if (acceptedFileTypes.length === 0) {\n return false\n }\n const fileType = hasPreferredMimeType(acceptedFileTypes, file)\n ? file.type\n : getFileTypeFromExtension(file) || file.type\n const foundType = extendWithAbbreviation(acceptedFileTypes).some(\n (type) => {\n /**\n * \"file.type\" can be e.g. \"images/png\"\n */\n return fileType.includes(type)\n }\n )\n return !foundType ? errorUnsupportedFile : null\n }\n\n const cleanedFiles = files.map((item) => {\n const { file } = item\n\n const errorMessage = handleSize(file) || handleType(file)\n\n if (errorMessage) {\n item.errorMessage = errorMessage\n }\n\n return item\n })\n\n return cleanedFiles\n}\n\nexport function getFileTypeFromExtension(file: File) {\n return (\n (file.name.includes('.') && file.name.replace(/.*\\.([^.]+)$/, '$1')) ||\n null\n )\n}\n\nexport function getAcceptedFileTypes(\n acceptedFileTypes: UploadAcceptedFileTypes\n) {\n return extendWithAbbreviation(acceptedFileTypes)\n .map((type) => (type.includes('/') ? type : `.${type}`))\n .join(',')\n}\n\nexport function hasPreferredMimeType(\n acceptedFileTypes: UploadAcceptedFileTypes,\n file: File\n) {\n return (\n file.type.split('/')[1] &&\n (!acceptedFileTypes?.length ||\n acceptedFileTypes?.some(\n (type) => type.toLowerCase() === file.type.toLowerCase()\n ))\n )\n}\n\nexport function extendWithAbbreviation(\n acceptedFileTypes: UploadAcceptedFileTypes,\n abbreviations = { jpg: 'jpeg' }\n) {\n const list = [...acceptedFileTypes]\n\n Object.entries(abbreviations).forEach(([type, abbr]) => {\n if (list.some((t) => t === type) && !list.some((t) => t === abbr)) {\n list.push(abbr)\n }\n })\n\n return list\n}\n"],"mappings":"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"}
|
|
@@ -54,8 +54,9 @@ export type UploadProps = {
|
|
|
54
54
|
loadingText?: React.ReactNode;
|
|
55
55
|
deleteButton?: React.ReactNode;
|
|
56
56
|
fileListAriaLabel?: string;
|
|
57
|
+
children?: React.ReactNode;
|
|
57
58
|
};
|
|
58
|
-
export type UploadAllProps = UploadProps & SpacingProps & LocaleProps & Omit<React.HTMLProps<HTMLElement>, 'onChange'>;
|
|
59
|
+
export type UploadAllProps = UploadProps & SpacingProps & LocaleProps & Omit<React.HTMLProps<HTMLElement>, 'onChange' | 'title'>;
|
|
59
60
|
export type UploadContextProps = {
|
|
60
61
|
id?: string;
|
|
61
62
|
onInputUpload: (files: UploadFile[]) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","names":[],"sources":["../../../../src/components/upload/types.ts"],"sourcesContent":["import React from 'react'\nimport type { SkeletonShow } from '../skeleton/Skeleton'\nimport type { LocaleProps, SpacingProps } from '../../shared/types'\n\nexport type UploadAcceptedFileTypes = string[]\n\nexport type UploadProps = {\n /**\n * unique id used with the useUpload hook to manage the files\n */\n id: string\n\n /**\n * list of accepted file types.\n */\n acceptedFileTypes: UploadAcceptedFileTypes\n\n /**\n * Skeleton should be applied when loading content\n * Default: null\n */\n skeleton?: SkeletonShow\n\n /**\n * Defines the amount of files the user can select and upload\n * Default: 100\n */\n filesAmountLimit?: number\n\n /**\n * fileMaxSize is max size of each file in MB\n * Default: 5 MB\n */\n fileMaxSize?: number\n\n /**\n * will be called on `files` changes made by the user. Access the files with `{ files }`.\n */\n onChange?: ({ files }: { files: UploadFile[] }) => void\n\n /**\n * will be called once a file gets deleted by the user. Access the deleted file with `{ fileItem }`.\n */\n onFileDelete?: ({ fileItem }: { fileItem: UploadFile }) => void\n\n /**\n * Custom text properties\n */\n title?: React.ReactNode\n text?: React.ReactNode\n fileTypeDescription?: React.ReactNode\n fileSizeDescription?: React.ReactNode\n fileAmountDescription?: React.ReactNode\n fileSizeContent?: React.ReactNode\n buttonText?: React.ReactNode\n errorLargeFile?: React.ReactNode\n errorUnsupportedFile?: React.ReactNode\n errorAmountLimit?: React.ReactNode\n loadingText?: React.ReactNode\n deleteButton?: React.ReactNode\n fileListAriaLabel?: string\n}\n\nexport type UploadAllProps = UploadProps &\n SpacingProps &\n LocaleProps &\n Omit<React.HTMLProps<HTMLElement>, 'onChange'>\n\nexport type UploadContextProps = {\n id?: string\n onInputUpload: (files: UploadFile[]) => void\n} & Partial<UploadProps>\n\nexport type UploadFile = {\n file: File\n errorMessage?: React.ReactNode\n isLoading?: boolean\n exists?: boolean\n id?: string\n}\n"],"mappings":""}
|
|
1
|
+
{"version":3,"file":"types.js","names":[],"sources":["../../../../src/components/upload/types.ts"],"sourcesContent":["import React from 'react'\nimport type { SkeletonShow } from '../skeleton/Skeleton'\nimport type { LocaleProps, SpacingProps } from '../../shared/types'\n\nexport type UploadAcceptedFileTypes = string[]\n\nexport type UploadProps = {\n /**\n * unique id used with the useUpload hook to manage the files\n */\n id: string\n\n /**\n * list of accepted file types.\n */\n acceptedFileTypes: UploadAcceptedFileTypes\n\n /**\n * Skeleton should be applied when loading content\n * Default: null\n */\n skeleton?: SkeletonShow\n\n /**\n * Defines the amount of files the user can select and upload\n * Default: 100\n */\n filesAmountLimit?: number\n\n /**\n * fileMaxSize is max size of each file in MB\n * Default: 5 MB\n */\n fileMaxSize?: number\n\n /**\n * will be called on `files` changes made by the user. Access the files with `{ files }`.\n */\n onChange?: ({ files }: { files: UploadFile[] }) => void\n\n /**\n * will be called once a file gets deleted by the user. Access the deleted file with `{ fileItem }`.\n */\n onFileDelete?: ({ fileItem }: { fileItem: UploadFile }) => void\n\n /**\n * Custom text properties\n */\n title?: React.ReactNode\n text?: React.ReactNode\n fileTypeDescription?: React.ReactNode\n fileSizeDescription?: React.ReactNode\n fileAmountDescription?: React.ReactNode\n fileSizeContent?: React.ReactNode\n buttonText?: React.ReactNode\n errorLargeFile?: React.ReactNode\n errorUnsupportedFile?: React.ReactNode\n errorAmountLimit?: React.ReactNode\n loadingText?: React.ReactNode\n deleteButton?: React.ReactNode\n fileListAriaLabel?: string\n children?: React.ReactNode\n}\n\nexport type UploadAllProps = UploadProps &\n SpacingProps &\n LocaleProps &\n Omit<React.HTMLProps<HTMLElement>, 'onChange' | 'title'>\n\nexport type UploadContextProps = {\n id?: string\n onInputUpload: (files: UploadFile[]) => void\n} & Partial<UploadProps>\n\nexport type UploadFile = {\n file: File\n errorMessage?: React.ReactNode\n isLoading?: boolean\n exists?: boolean\n id?: string\n}\n"],"mappings":""}
|
|
@@ -4,25 +4,26 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
+
var _react = require("react");
|
|
7
8
|
var _useSharedState = require("../../shared/helpers/useSharedState");
|
|
8
9
|
function useUpload(id) {
|
|
9
10
|
const {
|
|
10
11
|
data,
|
|
11
12
|
extend
|
|
12
13
|
} = (0, _useSharedState.useSharedState)(id);
|
|
13
|
-
const setFiles = files => {
|
|
14
|
+
const setFiles = (0, _react.useCallback)(files => {
|
|
14
15
|
extend({
|
|
15
16
|
files
|
|
16
17
|
});
|
|
17
|
-
};
|
|
18
|
-
const setInternalFiles = internalFiles => {
|
|
18
|
+
}, [extend]);
|
|
19
|
+
const setInternalFiles = (0, _react.useCallback)(internalFiles => {
|
|
19
20
|
extend({
|
|
20
21
|
internalFiles
|
|
21
22
|
});
|
|
22
|
-
};
|
|
23
|
-
const files = (data === null || data === void 0 ? void 0 : data.files) || [];
|
|
24
|
-
const internalFiles = (data === null || data === void 0 ? void 0 : data.internalFiles) || [];
|
|
25
|
-
const getExistingFile = function (file) {
|
|
23
|
+
}, [extend]);
|
|
24
|
+
const files = (0, _react.useMemo)(() => (data === null || data === void 0 ? void 0 : data.files) || [], [data === null || data === void 0 ? void 0 : data.files]);
|
|
25
|
+
const internalFiles = (0, _react.useMemo)(() => (data === null || data === void 0 ? void 0 : data.internalFiles) || [], [data === null || data === void 0 ? void 0 : data.internalFiles]);
|
|
26
|
+
const getExistingFile = (0, _react.useCallback)(function (file) {
|
|
26
27
|
let fileItems = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : files;
|
|
27
28
|
return fileItems.find(_ref => {
|
|
28
29
|
let {
|
|
@@ -30,7 +31,7 @@ function useUpload(id) {
|
|
|
30
31
|
} = _ref;
|
|
31
32
|
return f.name === file.name && f.size === file.size && f.lastModified === file.lastModified;
|
|
32
33
|
});
|
|
33
|
-
};
|
|
34
|
+
}, [files]);
|
|
34
35
|
return {
|
|
35
36
|
files,
|
|
36
37
|
setFiles,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useUpload.js","names":["
|
|
1
|
+
{"version":3,"file":"useUpload.js","names":["_react","require","_useSharedState","useUpload","id","data","extend","useSharedState","setFiles","useCallback","files","setInternalFiles","internalFiles","useMemo","getExistingFile","file","fileItems","arguments","length","undefined","find","_ref","f","name","size","lastModified","_default","exports","default"],"sources":["../../../../src/components/upload/useUpload.ts"],"sourcesContent":["import { useCallback, useMemo } from 'react'\nimport { useSharedState } from '../../shared/helpers/useSharedState'\nimport type { UploadFile } from './types'\n\nexport type useUploadReturn = {\n files: UploadFile[]\n setFiles: (files: UploadFile[]) => void\n internalFiles: UploadFile[]\n setInternalFiles: (files: UploadFile[]) => void\n getExistingFile: (file: File, fileItems?: UploadFile[]) => UploadFile\n}\n\n/**\n * Use together with Upload with the same id to manage the files from outside the component.\n */\nfunction useUpload(id: string): useUploadReturn {\n const { data, extend } = useSharedState<{\n files?: UploadFile[]\n internalFiles?: UploadFile[]\n }>(id)\n\n const setFiles = useCallback(\n (files: UploadFile[]) => {\n extend({ files })\n },\n [extend]\n )\n\n const setInternalFiles = useCallback(\n (internalFiles: UploadFile[]) => {\n extend({ internalFiles })\n },\n [extend]\n )\n\n const files = useMemo(() => data?.files || [], [data?.files])\n const internalFiles = useMemo(\n () => data?.internalFiles || [],\n [data?.internalFiles]\n )\n\n const getExistingFile = useCallback(\n (file: File, fileItems: UploadFile[] = files) => {\n return fileItems.find(({ file: f }) => {\n return (\n f.name === file.name &&\n f.size === file.size &&\n f.lastModified === file.lastModified\n )\n })\n },\n [files]\n )\n\n return {\n files,\n setFiles,\n internalFiles,\n setInternalFiles,\n getExistingFile,\n }\n}\n\nexport default useUpload\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AAcA,SAASE,SAASA,CAACC,EAAU,EAAmB;EAC9C,MAAM;IAAEC,IAAI;IAAEC;EAAO,CAAC,GAAG,IAAAC,8BAAc,EAGpCH,EAAE,CAAC;EAEN,MAAMI,QAAQ,GAAG,IAAAC,kBAAW,EACzBC,KAAmB,IAAK;IACvBJ,MAAM,CAAC;MAAEI;IAAM,CAAC,CAAC;EACnB,CAAC,EACD,CAACJ,MAAM,CACT,CAAC;EAED,MAAMK,gBAAgB,GAAG,IAAAF,kBAAW,EACjCG,aAA2B,IAAK;IAC/BN,MAAM,CAAC;MAAEM;IAAc,CAAC,CAAC;EAC3B,CAAC,EACD,CAACN,MAAM,CACT,CAAC;EAED,MAAMI,KAAK,GAAG,IAAAG,cAAO,EAAC,MAAM,CAAAR,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEK,KAAK,KAAI,EAAE,EAAE,CAACL,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEK,KAAK,CAAC,CAAC;EAC7D,MAAME,aAAa,GAAG,IAAAC,cAAO,EAC3B,MAAM,CAAAR,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEO,aAAa,KAAI,EAAE,EAC/B,CAACP,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEO,aAAa,CACtB,CAAC;EAED,MAAME,eAAe,GAAG,IAAAL,kBAAW,EACjC,UAACM,IAAU,EAAsC;IAAA,IAApCC,SAAuB,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAGP,KAAK;IAC1C,OAAOM,SAAS,CAACI,IAAI,CAACC,IAAA,IAAiB;MAAA,IAAhB;QAAEN,IAAI,EAAEO;MAAE,CAAC,GAAAD,IAAA;MAChC,OACEC,CAAC,CAACC,IAAI,KAAKR,IAAI,CAACQ,IAAI,IACpBD,CAAC,CAACE,IAAI,KAAKT,IAAI,CAACS,IAAI,IACpBF,CAAC,CAACG,YAAY,KAAKV,IAAI,CAACU,YAAY;IAExC,CAAC,CAAC;EACJ,CAAC,EACD,CAACf,KAAK,CACR,CAAC;EAED,OAAO;IACLA,KAAK;IACLF,QAAQ;IACRI,aAAa;IACbD,gBAAgB;IAChBG;EACF,CAAC;AACH;AAAC,IAAAY,QAAA,GAEcvB,SAAS;AAAAwB,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
|
|
@@ -45,7 +45,7 @@ function ArraySelection(props) {
|
|
|
45
45
|
handleChange,
|
|
46
46
|
children
|
|
47
47
|
} = (0, _hooks.useFieldProps)(props);
|
|
48
|
-
const
|
|
48
|
+
const fieldBlockProps = _objectSpread({
|
|
49
49
|
forId: id,
|
|
50
50
|
className: (0, _classnames.default)(`dnb-forms-field-array-selection dnb-forms-field-array-selection--variant-${variant} dnb-forms-field-array-selection--layout-${layout} dnb-forms-field-array-selection--options-layout-${optionsLayout}`, className),
|
|
51
51
|
contentClassName: 'dnb-forms-field-array-selection__options',
|
|
@@ -76,14 +76,14 @@ function ArraySelection(props) {
|
|
|
76
76
|
});
|
|
77
77
|
switch (variant) {
|
|
78
78
|
case 'button':
|
|
79
|
-
return _react.default.createElement(_FieldBlock.default,
|
|
79
|
+
return _react.default.createElement(_FieldBlock.default, fieldBlockProps, _react.default.createElement(_ToggleButtonGroupContext.default.Provider, {
|
|
80
80
|
value: {
|
|
81
81
|
status: hasError ? 'error' : undefined,
|
|
82
82
|
disabled
|
|
83
83
|
}
|
|
84
84
|
}, options));
|
|
85
85
|
case 'checkbox':
|
|
86
|
-
return _react.default.createElement(_FieldBlock.default,
|
|
86
|
+
return _react.default.createElement(_FieldBlock.default, fieldBlockProps, options);
|
|
87
87
|
}
|
|
88
88
|
}
|
|
89
89
|
function getCheckboxOrToggleOptions(_ref) {
|