@amsterdam/bmi-dms-upload
Version:
A document upload flow that can be implemented in any BMI React application. Documents are stored in DMS. Metadata can be added in the flow.
2 lines • 4.24 kB
JavaScript
;Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"default",{enumerable:true,get:function(){return Step1}});var _jsxruntime=require("react/jsx-runtime");var _react=_interop_require_wildcard(require("react"));var _bmicomponentlibrary=require("@amsterdam/bmi-component-library");var _hooks=require("../../hooks");var _SingleWizard=_interop_require_default(require("../wizard/SingleWizard"));var _selectors=require("../single/store/selectors");var _slice=require("../single/store/slice");var _styles=require("./styles");function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _interop_require_default(obj){return obj&&obj.__esModule?obj:{default:obj}}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)}function _interop_require_wildcard(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}function _object_spread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_define_property(target,key,source[key])})}return target}function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);if(enumerableOnly){symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable})}keys.push.apply(keys,symbols)}return keys}function _object_spread_props(target,source){source=source!=null?source:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(target,Object.getOwnPropertyDescriptors(source))}else{ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key))})}return target}function Step1(props){var getHeaders=props.getHeaders,getPostUrl=props.getPostUrl,onFileRemove=props.onFileRemove,onFileSuccess=props.onFileSuccess,uploadHTTPMethod=props.uploadHTTPMethod;var dispatch=(0,_hooks.useAppDispatch)();var file=(0,_hooks.useAppSelector)(_selectors.getFile);var handleFileRemove=(0,_react.useCallback)(function(file){onFileRemove&&onFileRemove(file);dispatch((0,_slice.removeFile)())},[onFileRemove]);var handleFileSuccess=(0,_react.useCallback)(function(uploadedFile){onFileSuccess&&onFileSuccess(uploadedFile);dispatch((0,_slice.setFile)(uploadedFile))},[onFileSuccess]);return(0,_jsxruntime.jsx)(_SingleWizard.default,_object_spread_props(_object_spread({},props),{isValidForm:true,children:(0,_jsxruntime.jsx)(_styles.Step1Styles,{children:(0,_jsxruntime.jsx)(_bmicomponentlibrary.FileUpload,{cancelLabel:"Annuleren",droppingLabel:"bestanden geselecteerd",fileUploadErrorLabel:"dit bestand kan niet worden ge\xfcpload",fileUploadInProgressLabel:"wordt geupload",getHeaders:getHeaders,getPostUrl:getPostUrl,httpMethod:uploadHTTPMethod,onFileRemove:handleFileRemove,onFileSuccess:handleFileSuccess,options:{noClick:true,noKeyboard:true,maxFiles:1},placeholder:"Sleep een bestand in dit vlak of",removeLabel:"Wissen",selectFilesLabel:"selecteer bestand",storedFiles:!file?[]:[file]})})}))}
//# sourceMappingURL=Step1.js.map