authscape 1.0.280 → 1.0.284

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/index.js CHANGED
@@ -481,6 +481,8 @@ var DocumentManager = function DocumentManager(_ref) {
481
481
  lg = _ref$lg === void 0 ? 2 : _ref$lg,
482
482
  _ref$overrideLockMess = _ref.overrideLockMessage,
483
483
  overrideLockMessage = _ref$overrideLockMess === void 0 ? "The directory cannot be removed." : _ref$overrideLockMess,
484
+ _ref$zeroStateView = _ref.zeroStateView,
485
+ zeroStateView = _ref$zeroStateView === void 0 ? null : _ref$zeroStateView,
484
486
  _ref$fieldId = _ref.fieldId1,
485
487
  fieldId1 = _ref$fieldId === void 0 ? null : _ref$fieldId,
486
488
  _ref$fieldId2 = _ref.fieldId2,
@@ -743,7 +745,7 @@ var DocumentManager = function DocumentManager(_ref) {
743
745
  sx: {
744
746
  flexGrow: 1
745
747
  }
746
- }, /*#__PURE__*/_react["default"].createElement(_material.AppBar, {
748
+ }, (files != null && files.documentSegments.length == 0 || folderParent != null) && /*#__PURE__*/_react["default"].createElement(_material.AppBar, {
747
749
  position: "static",
748
750
  color: "inherit",
749
751
  elevation: 0
@@ -754,18 +756,6 @@ var DocumentManager = function DocumentManager(_ref) {
754
756
  "aria-expanded": open ? 'true' : undefined,
755
757
  variant: "contained",
756
758
  disableElevation: true,
757
- onClick: handleClick,
758
- startIcon: /*#__PURE__*/_react["default"].createElement(_AddRounded["default"], null),
759
- endIcon: /*#__PURE__*/_react["default"].createElement(_KeyboardArrowDown["default"], null)
760
- }, "New"), /*#__PURE__*/_react["default"].createElement(StyledMenu, {
761
- id: "demo-customized-menu",
762
- MenuListProps: {
763
- 'aria-labelledby': 'demo-customized-button'
764
- },
765
- anchorEl: anchorEl,
766
- open: open,
767
- onClose: handleClose
768
- }, /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
769
759
  onClick: /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
770
760
  var newDocumentName, response;
771
761
  return _regeneratorRuntime().wrap(function _callee3$(_context3) {
@@ -789,15 +779,13 @@ var DocumentManager = function DocumentManager(_ref) {
789
779
  setUpdate(!update);
790
780
  }
791
781
  case 6:
792
- handleClose();
793
- case 7:
794
782
  case "end":
795
783
  return _context3.stop();
796
784
  }
797
785
  }, _callee3);
798
786
  })),
799
- disableRipple: true
800
- }, /*#__PURE__*/_react["default"].createElement(_InsertDriveFile["default"], null), "New Folder"))), /*#__PURE__*/_react["default"].createElement(FileUploader, {
787
+ startIcon: /*#__PURE__*/_react["default"].createElement(_InsertDriveFile["default"], null)
788
+ }, "New Folder")), (files != null && files.documentSegments.length == 0 || folderParent != null) && /*#__PURE__*/_react["default"].createElement(FileUploader, {
801
789
  refOveride: fileUploaderRef,
802
790
  url: "/Document/UploadFile",
803
791
  params: {
@@ -857,10 +845,94 @@ var DocumentManager = function DocumentManager(_ref) {
857
845
  height: "85vh",
858
846
  width: '100%'
859
847
  }
860
- }, /*#__PURE__*/_react["default"].createElement(_material.Grid, {
848
+ }, files != null && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, files.documentSegments.length > 0 && folderParent == null && files.documentSegments.map(function (segment, index) {
849
+ return /*#__PURE__*/_react["default"].createElement(_material.Box, {
850
+ sx: {
851
+ paddingTop: 3
852
+ }
853
+ }, /*#__PURE__*/_react["default"].createElement(_material.Typography, {
854
+ variant: "h6",
855
+ gutterBottom: true
856
+ }, segment.name), /*#__PURE__*/_react["default"].createElement(_material.Grid, {
857
+ container: true,
858
+ spacing: 2
859
+ }, files.documentAndFiles.filter(function (item) {
860
+ return item.segmentId == segment.id;
861
+ }).map(function (file, index) {
862
+ return /*#__PURE__*/_react["default"].createElement(_material.Grid, {
863
+ onContextMenu: function onContextMenu(event) {
864
+ handleContextMenu(event, file);
865
+ },
866
+ item: true,
867
+ key: index,
868
+ xs: xs,
869
+ sm: sm,
870
+ md: md,
871
+ lg: lg,
872
+ onClick: function onClick() {
873
+ return handleFileClick(file);
874
+ }
875
+ }, /*#__PURE__*/_react["default"].createElement(_material.Paper, {
876
+ sx: {
877
+ padding: 2,
878
+ flexDirection: 'column',
879
+ height: "100%",
880
+ display: "flex",
881
+ alignItems: "center",
882
+ cursor: 'pointer',
883
+ maxHeight: 300,
884
+ position: "relative",
885
+ '&:hover': {
886
+ backgroundColor: '#F5F5F5'
887
+ }
888
+ }
889
+ }, file.type === 'folder' && /*#__PURE__*/_react["default"].createElement(_material.Box, {
890
+ sx: {
891
+ position: "absolute",
892
+ top: 45,
893
+ color: "white"
894
+ }
895
+ }, file.count), file.isLocked && /*#__PURE__*/_react["default"].createElement(_material.Box, {
896
+ sx: {
897
+ position: "absolute",
898
+ top: 10,
899
+ right: 10,
900
+ color: "black"
901
+ }
902
+ }, /*#__PURE__*/_react["default"].createElement(_Tooltip["default"], {
903
+ title: overrideLockMessage
904
+ }, /*#__PURE__*/_react["default"].createElement(_LockRounded["default"], null))), file.type === 'folder' ? /*#__PURE__*/_react["default"].createElement(_Folder["default"], {
905
+ sx: {
906
+ fontSize: 80,
907
+ color: "orange"
908
+ }
909
+ }) : file.documentFileExtentionType == 0 || disablePreview ? /*#__PURE__*/_react["default"].createElement(_InsertDriveFileOutlined["default"], {
910
+ sx: {
911
+ fontSize: 60
912
+ }
913
+ }) : /*#__PURE__*/_react["default"].createElement(NextImage, {
914
+ src: file.uri,
915
+ alt: "Image",
916
+ width: 80,
917
+ height: 80
918
+ }), /*#__PURE__*/_react["default"].createElement(_material.Typography, {
919
+ variant: "subtitle1",
920
+ sx: {
921
+ paddingTop: 1,
922
+ fontSize: 14
923
+ }
924
+ }, file.name), /*#__PURE__*/_react["default"].createElement(_material.Typography, {
925
+ variant: "subtitle2",
926
+ sx: {
927
+ paddingTop: 0,
928
+ fontSize: 11
929
+ }
930
+ }, file.lastUpdated)));
931
+ })), files != null && files.documentAndFiles != null && zeroStateView != null && /*#__PURE__*/_react["default"].createElement(_material.Box, null, zeroStateView(segment)));
932
+ }), (files.documentSegments.length == 0 || folderParent != null) && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_material.Grid, {
861
933
  container: true,
862
934
  spacing: 2
863
- }, files != null && files.map(function (file, index) {
935
+ }, files.documentAndFiles.map(function (file, index) {
864
936
  return /*#__PURE__*/_react["default"].createElement(_material.Grid, {
865
937
  onContextMenu: function onContextMenu(event) {
866
938
  handleContextMenu(event, file);
@@ -930,7 +1002,7 @@ var DocumentManager = function DocumentManager(_ref) {
930
1002
  fontSize: 11
931
1003
  }
932
1004
  }, file.lastUpdated)));
933
- })), /*#__PURE__*/_react["default"].createElement(_Menu["default"], {
1005
+ })), files != null && files.documentAndFiles != null && zeroStateView != null && /*#__PURE__*/_react["default"].createElement(_material.Box, null, zeroStateView()))), /*#__PURE__*/_react["default"].createElement(_Menu["default"], {
934
1006
  open: contextMenu !== null,
935
1007
  onClose: handleClose,
936
1008
  anchorReference: "anchorPosition",
@@ -961,19 +1033,33 @@ var DocumentManager = function DocumentManager(_ref) {
961
1033
  }
962
1034
  }, "Cancel"), /*#__PURE__*/_react["default"].createElement(_material.Button, {
963
1035
  onClick: /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {
964
- var response;
1036
+ var response, _response2;
965
1037
  return _regeneratorRuntime().wrap(function _callee4$(_context4) {
966
1038
  while (1) switch (_context4.prev = _context4.next) {
967
1039
  case 0:
968
1040
  dialogDeleteClosed();
969
- _context4.next = 3;
1041
+ if (!(contextFile.type == "folder")) {
1042
+ _context4.next = 8;
1043
+ break;
1044
+ }
1045
+ _context4.next = 4;
970
1046
  return apiService()["delete"]("/Document/DeleteFolder?documentId=" + contextFile.id);
971
- case 3:
1047
+ case 4:
972
1048
  response = _context4.sent;
973
1049
  if (response != null && response.status == 200) {
974
1050
  setUpdate(!update);
975
1051
  }
976
- case 5:
1052
+ _context4.next = 12;
1053
+ break;
1054
+ case 8:
1055
+ _context4.next = 10;
1056
+ return apiService()["delete"]("/Document/DeleteFile?documentId=" + contextFile.id);
1057
+ case 10:
1058
+ _response2 = _context4.sent;
1059
+ if (_response2 != null && _response2.status == 200) {
1060
+ setUpdate(!update);
1061
+ }
1062
+ case 12:
977
1063
  case "end":
978
1064
  return _context4.stop();
979
1065
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "authscape",
3
- "version": "1.0.280",
3
+ "version": "1.0.284",
4
4
  "description": "",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -24,7 +24,7 @@ import Tooltip from '@mui/material/Tooltip';
24
24
  // remove before merging back
25
25
  // import { FileUploader, apiService, NextImage } from 'authscape';
26
26
 
27
- export const DocumentManager = ({loadedUser, setIsLoading, viewDocumentType = 1, disablePreview = false, openToFolderId = null, xs=12, sm=6, md=4, lg=2, overrideLockMessage = "The directory cannot be removed.", fieldId1 = null, fieldId2 = null, fieldId3 = null}) => {
27
+ export const DocumentManager = ({loadedUser, setIsLoading, viewDocumentType = 1, disablePreview = false, openToFolderId = null, xs=12, sm=6, md=4, lg=2, overrideLockMessage = "The directory cannot be removed.", zeroStateView = null, fieldId1 = null, fieldId2 = null, fieldId3 = null}) => {
28
28
 
29
29
  const fileUploaderRef = useRef();
30
30
  const [files, setFiles] = useState(null);
@@ -238,8 +238,12 @@ export const DocumentManager = ({loadedUser, setIsLoading, viewDocumentType = 1,
238
238
  return (
239
239
  <>
240
240
  <Box sx={{ flexGrow: 1 }}>
241
+
242
+ {(files != null && files.documentSegments.length == 0 || folderParent != null) &&
241
243
  <AppBar position="static" color='inherit' elevation={0}>
242
244
  <Toolbar>
245
+
246
+
243
247
  <Box>
244
248
  <Button
245
249
  id="demo-customized-button"
@@ -248,22 +252,7 @@ export const DocumentManager = ({loadedUser, setIsLoading, viewDocumentType = 1,
248
252
  aria-expanded={open ? 'true' : undefined}
249
253
  variant="contained"
250
254
  disableElevation
251
- onClick={handleClick}
252
- startIcon={<AddRoundedIcon />}
253
- endIcon={<KeyboardArrowDownIcon />}
254
- >
255
- New
256
- </Button>
257
- <StyledMenu
258
- id="demo-customized-menu"
259
- MenuListProps={{
260
- 'aria-labelledby': 'demo-customized-button',
261
- }}
262
- anchorEl={anchorEl}
263
- open={open}
264
- onClose={handleClose}
265
- >
266
- <MenuItem onClick={async () => {
255
+ onClick={async () => {
267
256
 
268
257
  let newDocumentName = prompt("New folder name");
269
258
  if (newDocumentName != null && newDocumentName != "")
@@ -282,14 +271,14 @@ export const DocumentManager = ({loadedUser, setIsLoading, viewDocumentType = 1,
282
271
 
283
272
  }
284
273
 
285
- handleClose();
286
- }} disableRipple>
287
- <InsertDriveFileIcon />
288
- New Folder
289
- </MenuItem>
290
- </StyledMenu>
274
+ }}
275
+ startIcon={<InsertDriveFileIcon />}>
276
+ New Folder
277
+ </Button>
291
278
  </Box>
279
+
292
280
 
281
+ {(files != null && files.documentSegments.length == 0 || folderParent != null) &&
293
282
  <FileUploader refOveride={fileUploaderRef} url={"/Document/UploadFile"} params={{
294
283
 
295
284
  viewType : viewDocumentType,
@@ -312,9 +301,11 @@ export const DocumentManager = ({loadedUser, setIsLoading, viewDocumentType = 1,
312
301
  Upload File(s)
313
302
  </Button>
314
303
 
315
- </FileUploader>
304
+ </FileUploader>
305
+ }
316
306
  </Toolbar>
317
307
  </AppBar>
308
+ }
318
309
 
319
310
  <Divider />
320
311
 
@@ -345,52 +336,145 @@ export const DocumentManager = ({loadedUser, setIsLoading, viewDocumentType = 1,
345
336
  </Box>
346
337
 
347
338
  <Box sx={{height: "85vh", width: '100%' }}>
348
- <Grid container spacing={2}>
349
- {files != null && files.map((file, index) => (
350
-
351
- <Grid onContextMenu={(event) => {
352
- handleContextMenu(event, file);
353
- }} item key={index} xs={xs} sm={sm} md={md} lg={lg} onClick={() => handleFileClick(file)}>
354
- <Paper
355
- sx={{
356
- padding: 2,
357
- flexDirection: 'column',
358
- height: "100%", display: "flex", alignItems: "center",
359
- cursor: 'pointer',
360
- maxHeight:300,
361
- position:"relative",
362
- '&:hover': {
363
- backgroundColor: '#F5F5F5'
364
- }
365
- }}>
366
339
 
367
- {file.type === 'folder' &&
368
- <Box sx={{position:"absolute", top:45, color:"white"}}>
369
- {file.count}
370
- </Box>}
371
-
372
- {file.isLocked &&
373
- <Box sx={{position:"absolute", top:10, right: 10, color:"black"}}>
374
- <Tooltip title={overrideLockMessage}>
375
- <LockRoundedIcon />
376
- </Tooltip>
377
- </Box>
378
- }
340
+ {files != null &&
341
+ <>
342
+
343
+
344
+
345
+ {(files.documentSegments.length > 0 && folderParent == null) && files.documentSegments.map((segment, index) => (
346
+
347
+ <Box sx={{paddingTop:3}}>
348
+ <Typography variant="h6" gutterBottom>
349
+ {segment.name}
350
+ </Typography>
379
351
 
380
- {file.type === 'folder' ? (
381
- <FolderIcon sx={{ fontSize: 80, color:"orange" }} />
382
- ) : (
383
352
 
384
- file.documentFileExtentionType == 0 || disablePreview ? <InsertDriveFileOutlinedIcon sx={{ fontSize: 60 }} /> : <NextImage src={file.uri} alt={"Image"} width={80} height={80} />
353
+ <Grid container spacing={2}>
354
+ {files.documentAndFiles.filter(item => item.segmentId == segment.id).map((file, index) => (
385
355
 
386
- )}
387
- <Typography variant="subtitle1" sx={{paddingTop:1, fontSize:14}}>{file.name}</Typography>
388
- <Typography variant="subtitle2" sx={{paddingTop:0, fontSize:11}}>{file.lastUpdated}</Typography>
389
- </Paper>
390
- </Grid>
356
+ <Grid onContextMenu={(event) => {
357
+ handleContextMenu(event, file);
358
+ }} item key={index} xs={xs} sm={sm} md={md} lg={lg} onClick={() => handleFileClick(file)}>
359
+ <Paper
360
+ sx={{
361
+ padding: 2,
362
+ flexDirection: 'column',
363
+ height: "100%", display: "flex", alignItems: "center",
364
+ cursor: 'pointer',
365
+ maxHeight:300,
366
+ position:"relative",
367
+ '&:hover': {
368
+ backgroundColor: '#F5F5F5'
369
+ }
370
+ }}>
371
+
372
+ {file.type === 'folder' &&
373
+ <Box sx={{position:"absolute", top:45, color:"white"}}>
374
+ {file.count}
375
+ </Box>}
376
+
377
+ {file.isLocked &&
378
+ <Box sx={{position:"absolute", top:10, right: 10, color:"black"}}>
379
+ <Tooltip title={overrideLockMessage}>
380
+ <LockRoundedIcon />
381
+ </Tooltip>
382
+ </Box>
383
+ }
384
+
385
+ {file.type === 'folder' ? (
386
+ <FolderIcon sx={{ fontSize: 80, color:"orange" }} />
387
+ ) : (
388
+
389
+ file.documentFileExtentionType == 0 || disablePreview ? <InsertDriveFileOutlinedIcon sx={{ fontSize: 60 }} /> : <NextImage src={file.uri} alt={"Image"} width={80} height={80} />
390
+
391
+ )}
392
+ <Typography variant="subtitle1" sx={{paddingTop:1, fontSize:14}}>{file.name}</Typography>
393
+ <Typography variant="subtitle2" sx={{paddingTop:0, fontSize:11}}>{file.lastUpdated}</Typography>
394
+ </Paper>
395
+ </Grid>
396
+
397
+ ))}
398
+ </Grid>
399
+
400
+
401
+ {(files != null && files.documentAndFiles != null && zeroStateView != null) &&
402
+
403
+ <Box>
404
+ {zeroStateView(segment)}
405
+ </Box>
406
+ }
407
+
408
+ </Box>
391
409
 
392
410
  ))}
393
- </Grid>
411
+
412
+
413
+ {(files.documentSegments.length == 0 || folderParent != null) &&
414
+ <>
415
+ <Grid container spacing={2}>
416
+ {files.documentAndFiles.map((file, index) => (
417
+
418
+ <Grid onContextMenu={(event) => {
419
+ handleContextMenu(event, file);
420
+ }} item key={index} xs={xs} sm={sm} md={md} lg={lg} onClick={() => handleFileClick(file)}>
421
+ <Paper
422
+ sx={{
423
+ padding: 2,
424
+ flexDirection: 'column',
425
+ height: "100%", display: "flex", alignItems: "center",
426
+ cursor: 'pointer',
427
+ maxHeight:300,
428
+ position:"relative",
429
+ '&:hover': {
430
+ backgroundColor: '#F5F5F5'
431
+ }
432
+ }}>
433
+
434
+ {file.type === 'folder' &&
435
+ <Box sx={{position:"absolute", top:45, color:"white"}}>
436
+ {file.count}
437
+ </Box>}
438
+
439
+ {file.isLocked &&
440
+ <Box sx={{position:"absolute", top:10, right: 10, color:"black"}}>
441
+ <Tooltip title={overrideLockMessage}>
442
+ <LockRoundedIcon />
443
+ </Tooltip>
444
+ </Box>
445
+ }
446
+
447
+ {file.type === 'folder' ? (
448
+ <FolderIcon sx={{ fontSize: 80, color:"orange" }} />
449
+ ) : (
450
+
451
+ file.documentFileExtentionType == 0 || disablePreview ? <InsertDriveFileOutlinedIcon sx={{ fontSize: 60 }} /> : <NextImage src={file.uri} alt={"Image"} width={80} height={80} />
452
+
453
+ )}
454
+ <Typography variant="subtitle1" sx={{paddingTop:1, fontSize:14}}>{file.name}</Typography>
455
+ <Typography variant="subtitle2" sx={{paddingTop:0, fontSize:11}}>{file.lastUpdated}</Typography>
456
+ </Paper>
457
+ </Grid>
458
+
459
+ ))}
460
+ </Grid>
461
+
462
+ {(files != null && files.documentAndFiles != null && zeroStateView != null) &&
463
+
464
+ <Box>
465
+ {zeroStateView()}
466
+ </Box>
467
+ }
468
+
469
+ </>
470
+ }
471
+
472
+ </>
473
+ }
474
+
475
+
476
+
477
+
394
478
 
395
479
  <Menu
396
480
  open={contextMenu !== null}
@@ -451,10 +535,21 @@ export const DocumentManager = ({loadedUser, setIsLoading, viewDocumentType = 1,
451
535
  <Button onClick={async () => {
452
536
  dialogDeleteClosed();
453
537
 
454
- let response = await apiService().delete("/Document/DeleteFolder?documentId=" + contextFile.id);
455
- if (response != null && response.status == 200)
538
+ if (contextFile.type == "folder")
456
539
  {
457
- setUpdate(!update);
540
+ let response = await apiService().delete("/Document/DeleteFolder?documentId=" + contextFile.id);
541
+ if (response != null && response.status == 200)
542
+ {
543
+ setUpdate(!update);
544
+ }
545
+ }
546
+ else
547
+ {
548
+ let response = await apiService().delete("/Document/DeleteFile?documentId=" + contextFile.id);
549
+ if (response != null && response.status == 200)
550
+ {
551
+ setUpdate(!update);
552
+ }
458
553
  }
459
554
 
460
555
  }} autoFocus>