@vidispine/vdt-materialui 23.3.0-pre.5 → 23.3.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.
Files changed (89) hide show
  1. package/dist/cjs/SplitButton.js +1 -1
  2. package/dist/cjs/analyze/BatonAnalysisDialog.js +1 -1
  3. package/dist/cjs/collection/AddToCollectionDialog/AddToCollectionDialog.js +1 -1
  4. package/dist/cjs/collection/CollectionContent/CollectionContent.js +1 -1
  5. package/dist/cjs/collection/CollectionContent/components/CollectionContentEntity.js +1 -1
  6. package/dist/cjs/collection/CollectionContent/components/CollectionContentItem.js +1 -1
  7. package/dist/cjs/collection/CollectionMetadataTab.js +1 -1
  8. package/dist/cjs/collection/CollectionRow/CollectionRow.js +1 -1
  9. package/dist/cjs/collection/CollectionSearchPicker/CollectionSearchPicker.js +1 -1
  10. package/dist/cjs/collection/CollectionTreeList/CollectionTreeList.js +1 -1
  11. package/dist/cjs/dnd/hoc/withDrag.js +1 -1
  12. package/dist/cjs/entity/BinList/BinList.js +1 -1
  13. package/dist/cjs/entity/EntityAccessAdd.js +1 -1
  14. package/dist/cjs/entity/EntityComment.js +1 -1
  15. package/dist/cjs/entity/EntityCommentCard.js +1 -1
  16. package/dist/cjs/entity/EntityDeleteDialog/EntityDeleteDialog.js +1 -1
  17. package/dist/cjs/entity/EntityTree.js +2 -2
  18. package/dist/cjs/events/Event/Event.js +1 -1
  19. package/dist/cjs/events/EventTimeline/EventTimeline.js +1 -1
  20. package/dist/cjs/fieldgroup/FieldGroupDesigner.js +1 -1
  21. package/dist/cjs/fields/AutocompleteConstraintField.js +1 -1
  22. package/dist/cjs/fields/CheckboxGroupField.js +1 -1
  23. package/dist/cjs/fields/SliderField.js +1 -1
  24. package/dist/cjs/fields/TagField.js +1 -1
  25. package/dist/cjs/filter/FilterCard.js +1 -1
  26. package/dist/cjs/forms/ExpandedFormControlLabel.js +1 -1
  27. package/dist/cjs/group/CreateGroupDialog/components/CreateGroupForm.js +1 -1
  28. package/dist/cjs/icons/BitmovinIcon.js +1 -1
  29. package/dist/cjs/icons/FolderMultipleIcon.js +1 -1
  30. package/dist/cjs/icons/MediaConvertIcon.js +1 -1
  31. package/dist/cjs/icons/VidispineIcon.js +1 -1
  32. package/dist/cjs/icons/bitmovin_24.svg.js +1 -1
  33. package/dist/cjs/icons/foldermultiple_24.svg.js +1 -1
  34. package/dist/cjs/icons/mediaconvert_24.svg.js +1 -1
  35. package/dist/cjs/icons/vidispine_24.svg.js +1 -1
  36. package/dist/cjs/item/AddRelationDialog.js +1 -1
  37. package/dist/cjs/item/ItemCard.js +1 -1
  38. package/dist/cjs/item/ItemCompoundMetadataTable.js +1 -1
  39. package/dist/cjs/item/ItemFileShareDialog.js +1 -1
  40. package/dist/cjs/item/ItemMetadataFormTable.js +1 -1
  41. package/dist/cjs/item/ItemMetadataListFieldGroupItem.js +1 -1
  42. package/dist/cjs/item/ItemParentsTab.js +1 -1
  43. package/dist/cjs/item/ItemRelationsTab.js +1 -1
  44. package/dist/cjs/item/ItemSearchPicker.js +1 -1
  45. package/dist/cjs/item/ItemShapeTable/components/ItemShapeMenu.js +1 -1
  46. package/dist/cjs/item/ItemShapeTable/components/ItemShapeRow.js +1 -1
  47. package/dist/cjs/item/ItemSidecarDownload/ItemSidecarDownload.js +1 -1
  48. package/dist/cjs/item/ItemSourceTable/components/ImageTypeTableBody.js +1 -1
  49. package/dist/cjs/item/ItemSourceTable/components/MetadataTypeTableBody.js +1 -1
  50. package/dist/cjs/item/ItemSourceTable/components/PdfTypeTableBody.js +1 -1
  51. package/dist/cjs/item/ItemTimespan/hooks/useConfidenceSlider.js +1 -1
  52. package/dist/cjs/item/ItemTimespan/hooks/useItemTimespanInterval.js +1 -1
  53. package/dist/cjs/item/player/ItemPlayer/ItemPlayer.js +1 -1
  54. package/dist/cjs/item/player/ItemVideoPlayer.js +1 -1
  55. package/dist/cjs/job/JobCard.js +1 -1
  56. package/dist/cjs/job/JobDataTable.js +1 -1
  57. package/dist/cjs/job/JobFooterContext.js +1 -1
  58. package/dist/cjs/media/MediaBadges.js +1 -1
  59. package/dist/cjs/media/MediaCard/MediaCard.js +1 -1
  60. package/dist/cjs/search/SavedSearch/SavedSearchRow.js +1 -1
  61. package/dist/cjs/search/SavedSearchFolder/AddFolderRow.js +1 -1
  62. package/dist/cjs/search/SavedSearchFolder/FolderRow.js +1 -1
  63. package/dist/cjs/search/SearchField/SearchField.js +1 -1
  64. package/dist/cjs/search/SearchInput/SearchInput.js +1 -1
  65. package/dist/cjs/search/Sort/Sort.js +1 -1
  66. package/dist/cjs/search/SortMenuItem.js +1 -1
  67. package/dist/cjs/search/querybuilder/QueryBuilder/QueryBuilder.js +1 -1
  68. package/dist/cjs/search/querybuilder/QueryEntry/QueryEntry.js +1 -1
  69. package/dist/cjs/storage/components/StorageTree.js +1 -1
  70. package/dist/cjs/storage/hooks/useSelectedFile.js +1 -1
  71. package/dist/cjs/storage/hooks/useSelectedStorage.js +1 -1
  72. package/dist/cjs/storage/hooks/useStorageList.js +1 -1
  73. package/dist/cjs/storage/hooks/useTreeView.js +1 -1
  74. package/dist/cjs/user/ChangePasswordForm.js +1 -1
  75. package/dist/cjs/user/ChangeUserPasswordDialog/components/UserPasswordForm.js +1 -1
  76. package/dist/cjs/user/CreateUserDialog/components/CreateUserForm.js +1 -1
  77. package/dist/cjs/user/EditUserDialog/components/EditUserForm.js +1 -1
  78. package/dist/cjs/user/UserDetails/UserDetails.js +1 -1
  79. package/dist/cjs/utils.js +1 -1
  80. package/dist/es/entity/EntityAccessAdd.js +143 -120
  81. package/dist/es/icons/BitmovinIcon.js +6 -5
  82. package/dist/es/icons/FolderMultipleIcon.js +6 -5
  83. package/dist/es/icons/MediaConvertIcon.js +6 -5
  84. package/dist/es/icons/VidispineIcon.js +6 -5
  85. package/dist/es/icons/bitmovin_24.svg.js +3 -2
  86. package/dist/es/icons/foldermultiple_24.svg.js +3 -2
  87. package/dist/es/icons/mediaconvert_24.svg.js +3 -2
  88. package/dist/es/icons/vidispine_24.svg.js +3 -2
  89. package/package.json +24 -23
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const n=require("react/jsx-runtime"),b=require("react"),Y=require("clsx"),$=require("@material-ui/core"),Z=require("@vidispine/vdt-js"),g=require("@vidispine/vdt-react"),P=require("../SavedSearch/SavedSearchRow.js"),C=require("./AddFolderRow.js"),U={markerValue:"savedSearch",markerField:"eidr_referentType"},ee={indentationWidth:20,indentationDepthStart:1,defaultRowIndentationOffset:15,defalutNewRowIndentation:10},te=()=>({root:{display:"flex",width:"100%",flexWrap:"wrap"},indentationContainer:{display:"flex",width:"100%"}}),ne=a=>({root:{display:"flex",width:"100%"},indentation:{height:25,borderLeft:`1px solid ${a.palette.primary.main}`,borderBottom:`1px solid ${a.palette.primary.main}`,marginRight:5}});function ae({className:a,classes:t,children:c,indentationWidth:u,hideWrapper:x,folderDepth:o,indentationDepthStart:h,isAddRow:d,rowIndentation:l,addNewRowIndentation:I}){const w=d?!0:o>=h,i=d?I:l;return x?null:n.jsxs("div",{className:Y(a,t.root),children:[w&&n.jsx("div",{className:t.indentation,style:{marginLeft:i,minWidth:u}}),c]})}const de=g.compose($.withStyles(ne,{name:"VdtFolderRowContentWrapper"}))(ae);function k({classes:a,id:t,queryParams:c,markerProps:u=U,childFolders:x=[],metadata:o={},itemSearchDocument:h={},folderDepth:d=0,type:l="folder",hideSubFolderSharing:I,onSelect:w,onRemoveItem:i,indentationValues:q={},indentationProps:s=ee,FolderRowContentComponent:y=P.default,FolderRowContentProps:v={},AddRowComponent:F=C.default,AddRowProps:M={},FolderRowContentWrapperComponent:S=de,FolderRowContentWrapperProps:f={},isLoading:R,...z}){const[j,_]=b.useState(),[V,N]=b.useState({id:null,type:null}),{createFolder:A,saveSearch:D,deleteFolder:E,removeItem:G,subFolders:m=[]}=g.useGetSavedSearchFolders({childFolders:x,expand:j,queryParams:c,markerProps:u}),{onDeleteSearch:B,onUpdateSearchMetadata:p,onGetSavedSearchSettings:J}=g.useSavedSearch({...U}),T=({collectionId:e})=>J({collectionId:e}).then(X=>w(X,e)),O=Z.parseMetadataType(o,{joinValue:"_",flat:!0}),W=b.useMemo(()=>{const{__child_collection_size:e=0}=O;return m.length>0||!j&&e>0},[m.length,j,O]),{defalutNewRowIndentation:H,defaultRowIndentationOffset:K,indentationWidth:L}=s,r={rowIndentation:q.rowIndentation||0,addNewRowIndentation:q.addNewRowIndentation||H},Q={rowIndentation:r.addNewRowIndentation,addNewRowIndentation:r.addNewRowIndentation+L+K};return n.jsxs("div",{className:a.root,children:[{folder:n.jsx(S,{folderDepth:d,...r,...s,...f,children:n.jsx(y,{isFolderRow:!0,hideSubFolderSharing:I,type:l,collectionType:{id:t,metadata:o},disableDeletion:W,onDelete:()=>Promise.resolve(E(t)).then(()=>{i&&i(t)}),onUpdateSearchMetadata:e=>p({collectionId:t,metadataDocument:e}),onExpand:()=>_(e=>!e),onAddRow:N,isLoading:R,...v})}),query:n.jsx(S,{folderDepth:d,...r,...s,...f,children:n.jsx(y,{isFolderRow:!0,type:l,collectionType:{id:t,metadata:o},onSelect:()=>T({collectionId:t}),onDelete:()=>Promise.resolve(B({collectionId:t})).then(()=>{i&&i(t)}),onUpdateSearchMetadata:e=>p({collectionId:t,metadataDocument:e}),onAddRow:N,isLoading:R,...v})})}[l],n.jsx(S,{isAddRow:!0,folderDepth:d,...r,...s,hideWrapper:!V.id,...f,children:n.jsx(F,{id:t,setExpand:_,saveSearch:D,onAddRow:N,createFolder:A,itemSearchDocument:h,newField:V,...M})}),m.map(e=>n.jsx(k,{classes:a,id:e.id,queryParams:c,markerProps:u,childFolders:e.subFolders,metadata:e.metadata,itemSearchDocument:h,folderDepth:d+1,type:e.type,hideSubFolderSharing:!0,handleSelect:T,onSelect:w,onRemoveItem:()=>G(e.id),indentationProps:s,FolderRowContentComponent:y,FolderRowContentProps:v,AddRowComponent:F,AddRowProps:M,FolderRowContentWrapperComponent:S,FolderRowContentWrapperProps:f,indentationValues:Q,isLoading:R,props:z},e.id))]})}const ie=$.withStyles(te,{name:"VdtFolderRow"})(k);exports.default=ie;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const n=require("react/jsx-runtime"),b=require("react"),Y=require("clsx"),$=require("@material-ui/core"),Z=require("@vidispine/vdt-js"),g=require("@vidispine/vdt-react"),P=require("../SavedSearch/SavedSearchRow.js"),C=require("./AddFolderRow.js"),U={markerValue:"savedSearch",markerField:"eidr_referentType"},ee={indentationWidth:20,indentationDepthStart:1,defaultRowIndentationOffset:15,defalutNewRowIndentation:10},te=()=>({root:{display:"flex",width:"100%",flexWrap:"wrap"},indentationContainer:{display:"flex",width:"100%"}}),ne=a=>({root:{display:"flex",width:"100%"},indentation:{height:25,borderLeft:`1px solid ${a.palette.primary.main}`,borderBottom:`1px solid ${a.palette.primary.main}`,marginRight:5}});function ae({className:a,classes:t,children:c,indentationWidth:u,hideWrapper:x,folderDepth:o,indentationDepthStart:h,isAddRow:d,rowIndentation:l,addNewRowIndentation:I}){const w=d?!0:o>=h,i=d?I:l;return x?null:n.jsxs("div",{className:Y(a,t.root),children:[w&&n.jsx("div",{className:t.indentation,style:{marginLeft:i,minWidth:u}}),c]})}const de=g.compose($.withStyles(ne,{name:"VdtFolderRowContentWrapper"}))(ae);function k({classes:a,id:t,queryParams:c,markerProps:u=U,childFolders:x=[],metadata:o={},itemSearchDocument:h={},folderDepth:d=0,type:l="folder",hideSubFolderSharing:I,onSelect:w,onRemoveItem:i,indentationValues:q={},indentationProps:s=ee,FolderRowContentComponent:y=P.default,FolderRowContentProps:R={},AddRowComponent:F=C.default,AddRowProps:M={},FolderRowContentWrapperComponent:S=de,FolderRowContentWrapperProps:f={},isLoading:v,...z}){const[j,_]=b.useState(),[V,N]=b.useState({id:null,type:null}),{createFolder:A,saveSearch:D,deleteFolder:E,removeItem:G,subFolders:m=[]}=g.useGetSavedSearchFolders({childFolders:x,expand:j,queryParams:c,markerProps:u}),{onDeleteSearch:B,onUpdateSearchMetadata:p,onGetSavedSearchSettings:J}=g.useSavedSearch({...U}),T=({collectionId:e})=>J({collectionId:e}).then(X=>w(X,e)),O=Z.parseMetadataType(o,{joinValue:"_",flat:!0}),W=b.useMemo(()=>{const{__child_collection_size:e=0}=O;return m.length>0||!j&&e>0},[m.length,j,O]),{defalutNewRowIndentation:H,defaultRowIndentationOffset:K,indentationWidth:L}=s,r={rowIndentation:q.rowIndentation||0,addNewRowIndentation:q.addNewRowIndentation||H},Q={rowIndentation:r.addNewRowIndentation,addNewRowIndentation:r.addNewRowIndentation+L+K};return n.jsxs("div",{className:a.root,children:[{folder:n.jsx(S,{folderDepth:d,...r,...s,...f,children:n.jsx(y,{isFolderRow:!0,hideSubFolderSharing:I,type:l,collectionType:{id:t,metadata:o},disableDeletion:W,onDelete:()=>Promise.resolve(E(t)).then(()=>{i&&i(t)}),onUpdateSearchMetadata:e=>p({collectionId:t,metadataDocument:e}),onExpand:()=>_(e=>!e),onAddRow:N,isLoading:v,...R})}),query:n.jsx(S,{folderDepth:d,...r,...s,...f,children:n.jsx(y,{isFolderRow:!0,type:l,collectionType:{id:t,metadata:o},onSelect:()=>T({collectionId:t}),onDelete:()=>Promise.resolve(B({collectionId:t})).then(()=>{i&&i(t)}),onUpdateSearchMetadata:e=>p({collectionId:t,metadataDocument:e}),onAddRow:N,isLoading:v,...R})})}[l],n.jsx(S,{isAddRow:!0,folderDepth:d,...r,...s,hideWrapper:!V.id,...f,children:n.jsx(F,{id:t,setExpand:_,saveSearch:D,onAddRow:N,createFolder:A,itemSearchDocument:h,newField:V,...M})}),m.map(e=>n.jsx(k,{classes:a,id:e.id,queryParams:c,markerProps:u,childFolders:e.subFolders,metadata:e.metadata,itemSearchDocument:h,folderDepth:d+1,type:e.type,hideSubFolderSharing:!0,handleSelect:T,onSelect:w,onRemoveItem:()=>G(e.id),indentationProps:s,FolderRowContentComponent:y,FolderRowContentProps:R,AddRowComponent:F,AddRowProps:M,FolderRowContentWrapperComponent:S,FolderRowContentWrapperProps:f,indentationValues:Q,isLoading:v,props:z},e.id))]})}const ie=$.withStyles(te,{name:"VdtFolderRow"})(k);exports.default=ie;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const n=require("react/jsx-runtime"),w=require("react"),L=require("clsx"),r=require("prop-types"),G=require("react-select/async-creatable"),c=require("@material-ui/core"),W=require("@material-ui/icons"),J=require("@vidispine/vdt-api"),K=e=>({root:{width:"100%",display:"flex",marginTop:e.spacing(.5),marginBottom:e.spacing(.5)},createTable:{},button:{backgroundColor:e.palette.type==="light"?e.palette.grey[100]:e.palette.grey[800],color:e.palette.text.primary,borderColor:e.palette.grey[400],padding:0,borderWidth:1,borderStyle:"solid",borderRadius:"0 2px 2px 0"},valueContainer:{display:"flex",flexWrap:"wrap",flex:1,alignItems:"center",overflow:"hidden",minHeight:36},input:{height:"100%",display:"flex",padding:0},option:{},noOptionsMessage:{padding:e.spacing(1)},chip:{margin:e.spacing(.5)},chipLabel:{cursor:"inherit",display:"flex",alignItems:"center",userSelect:"none",whiteSpace:"nowrap",paddingLeft:e.spacing(1.5),paddingRight:e.spacing(1.5),"& p:nth-child(1)":{fontWeight:600},"& p:nth-child(2)":{marginLeft:e.spacing(.5)}},modifierValue:{},placeholder:{position:"absolute",left:e.spacing(.25),color:e.palette.grey[500]},menu:{position:"absolute",zIndex:100,marginTop:e.spacing(.5),left:0,right:0},focused:{borderColor:e.palette.primary.main}}),Q=({isFocused:e,...o})=>t=>({input:s=>({...s,color:t.palette?t.palette.text.primary:"#AAA","& input":{font:"inherit"}}),clearIndicator:s=>({...s,cursor:"pointer"}),container:s=>({...s,width:"100%",minWidth:270,position:"relative",borderStyle:"solid",borderColor:t.palette?e?t.palette.primary.main:t.palette.grey[400]:"#AAA",borderRadius:"2px 0px 0px 2px",transition:"border-color .3s ease-in",borderWidth:"1px 0 1px 1px",paddingLeft:t.spacing?t.spacing(1):4}),...o});function X(e){const{selectProps:{classes:o},children:t}=e;return n.jsx("div",{className:o.valueContainer,children:t})}const Y=({inputRef:e,...o})=>n.jsx("div",{ref:e,...o});function Z(e){const{selectProps:o,innerRef:t,children:s,innerProps:a}=e;return n.jsx(c.TextField,{fullWidth:!0,InputProps:{inputComponent:Y,disableUnderline:!0,inputProps:{className:o.classes.input,inputRef:t,children:s,...a}},...o.textFieldProps})}function ee(e){const{isFocused:o,selectProps:{classes:t},innerProps:s,children:a}=e;return n.jsx(c.MenuItem,{className:L(t.option),selected:o,component:"div",...s,children:a})}function te(e){const{selectProps:{classes:o},innerProps:t,children:s}=e;return n.jsx(c.Typography,{color:"textSecondary",className:o.noOptionsMessage,...t,children:s})}function oe(e){const{selectProps:{classes:o},innerProps:t,children:s}=e;return n.jsx(c.Typography,{className:o.placeholder,...t,children:s})}function re(e){const{selectProps:{classes:o},innerProps:t,children:s}=e;return n.jsx(c.Typography,{className:o.singleValue,...t,children:s})}function se(e){const{selectProps:{classes:o},children:t,removeProps:s,size:a="small"}=e;return n.jsx(c.Chip,{tabIndex:-1,label:t,size:a,className:o.chip,classes:{label:o.chipLabel},onDelete:s.onClick,deleteIcon:n.jsx(W.Cancel,{...s}),color:"default"})}function ne(e){const{selectProps:{classes:o},data:{isModifier:t,label:s,modifier_label:a}}=e;return t?n.jsx("div",{className:o.modifierValue,children:n.jsx(c.Typography,{noWrap:!0,children:`${s}: `})}):n.jsx(se,{className:o.modifierValue,...e,children:n.jsxs(n.Fragment,{children:[n.jsx(c.Typography,{noWrap:!0,children:`${a}: `}),n.jsx(c.Typography,{noWrap:!0,children:s})]})})}function ie(e){const{selectProps:{classes:o},children:t,innerProps:s}=e;return n.jsx(c.Paper,{square:!0,className:o.menu,...s,children:t})}function ae(){return null}function le(){return null}const ce={Control:Z,Menu:ie,MultiValue:ne,NoOptionsMessage:te,Option:ee,Placeholder:oe,SingleValue:re,ValueContainer:X,DropdownIndicator:ae,IndicatorSeparator:le},pe=(e,o)=>t=>new Promise((s,a)=>{const{value:l}=e,S=[{...l&&{field:l},text:t},{...l&&{field:l},text:t.toUpperCase()},{...l&&{field:l},text:t.toLowerCase()},{...l&&{field:l},text:`${t[0].toUpperCase()}${t.slice(1)}`}],h={...o,autocomplete:S};try{J.item.searchItem({itemSearchDocument:h}).then(({data:d})=>{const{autocomplete:p=[]}=d,f=[];p.forEach(m=>{if(m.field&&m.field!==l)return;const{suggestion:C=[]}=m;C.forEach(g=>{f.find(j=>j.value===g)||f.push({label:g,value:g})})}),s(f)}).catch(d=>a(d))}catch(d){a(d)}}),de=e=>o=>new Promise(t=>{if(o){const s=o.toLowerCase(),a=e.filter(l=>l.label.toLowerCase().includes(s));t(a)}t(e)}),ue=({currentModifier:e,modifiers:o,itemSearchDocument:t})=>e?pe(e,t):de(o),fe=e=>`Search for ${e}`;function v({classes:e,className:o,theme:t,defaultValue:s,modifiers:a,loadOptions:l,itemSearchDocument:S,onSubmit:h,submitting:d,onChange:p,placeholder:f,CreateTabelSelectComponents:m,CreateTabelSelectProps:C,CreateTablestyles:g,ButtonComponent:j,ButtonProps:q,SearchIconComponent:A,SearchIconsProps:B,ProgressComponent:D,ProgressProps:R}){const[_,b]=w.useState(s),[y,x]=w.useState(),[O,F]=w.useState(!1),$=y?[]:a,z=Q({isFocused:O,CreateTablestyles:g})(t),U=(i,{action:u,option:T={}})=>{const{isModifier:E}=T;if(E){b(i),x(T);return}if(u==="create-option"||u==="select-option"){let P=T;u==="create-option"&&(P=i[i.length-1]);const{value:I,label:M,isFreeText:V}=y,N=[...i],H={...V&&{isFreeText:V},modifier_value:I,modifier_label:M,...P};N.splice(-2,2,H),b(N),x(),p&&p(N);return}if(u==="remove-value"||u==="pop-value"){b(i);const P=i&&i.length>0&&i[i.length-1].isModifier?i[i.length-1]:void 0;x(P);const I=i.filter(M=>!M.isModifier);p&&p(I);return}if(u==="clear"){b([]),x(),p&&p(i);return}b(i)},k=i=>{i.preventDefault(),h&&h()};return n.jsxs("form",{className:L(o,e.root,"VdtSearchField-root"),onSubmit:k,children:[n.jsx(G,{className:e.createTable,classes:e,styles:z,loadOptions:l({currentModifier:y,modifiers:a,itemSearchDocument:S}),components:{...ce,...m},value:_,defaultOptions:$,onChange:U,onFocus:()=>F(!0),onBlur:()=>F(!1),isFocused:O,placeholder:f,isValidNewOption:i=>i&&y,blurInputOnSelect:!1,isMulti:!0,allowCreateWhileLoading:!0,createOptionPosition:"first",formatCreateLabel:fe,...C}),n.jsx(j,{size:"small",type:"submit",disableRipple:!0,className:L(e.button,{[e.focused]:O},"VdtSearchField-button"),...q,children:d?n.jsx(D,{size:20,color:"inherit",...R}):n.jsx(A,{...B})})]})}v.propTypes={classes:r.objectOf(r.string),className:r.string,theme:r.objectOf(r.any),defaultValue:r.arrayOf(r.object),modifiers:r.arrayOf(r.any),loadOptions:r.func,itemSearchDocument:r.objectOf(r.any),submitting:r.bool,onSubmit:r.func,onChange:r.func,placeholder:r.string,CreateTabelSelectComponents:r.objectOf(r.elementType),CreateTabelSelectProps:r.objectOf(r.any),CreateTablestyles:r.objectOf(r.any),ButtonComponent:r.elementType,ButtonProps:r.objectOf(r.any),SearchIconComponent:r.elementType,SearchIconsProps:r.objectOf(r.any),ProgressComponent:r.elementType,ProgressProps:r.objectOf(r.any)};v.defaultProps={className:void 0,classes:{},theme:{},defaultValue:[],modifiers:[],loadOptions:ue,itemSearchDocument:{},submitting:!1,onSubmit:()=>{},onChange:()=>{},placeholder:"Search Items",CreateTabelSelectComponents:void 0,CreateTabelSelectProps:{},CreateTablestyles:{},ButtonComponent:c.Button,ButtonProps:{},SearchIconComponent:W.Search,SearchIconsProps:{},ProgressComponent:c.CircularProgress,ProgressProps:{}};exports.default=v;exports.styles=K;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const n=require("react/jsx-runtime"),w=require("react"),L=require("clsx"),r=require("prop-types"),G=require("react-select/async-creatable"),c=require("@material-ui/core"),W=require("@material-ui/icons"),J=require("@vidispine/vdt-api"),K=e=>({root:{width:"100%",display:"flex",marginTop:e.spacing(.5),marginBottom:e.spacing(.5)},createTable:{},button:{backgroundColor:e.palette.type==="light"?e.palette.grey[100]:e.palette.grey[800],color:e.palette.text.primary,borderColor:e.palette.grey[400],padding:0,borderWidth:1,borderStyle:"solid",borderRadius:"0 2px 2px 0"},valueContainer:{display:"flex",flexWrap:"wrap",flex:1,alignItems:"center",overflow:"hidden",minHeight:36},input:{height:"100%",display:"flex",padding:0},option:{},noOptionsMessage:{padding:e.spacing(1)},chip:{margin:e.spacing(.5)},chipLabel:{cursor:"inherit",display:"flex",alignItems:"center",userSelect:"none",whiteSpace:"nowrap",paddingLeft:e.spacing(1.5),paddingRight:e.spacing(1.5),"& p:nth-child(1)":{fontWeight:600},"& p:nth-child(2)":{marginLeft:e.spacing(.5)}},modifierValue:{},placeholder:{position:"absolute",left:e.spacing(.25),color:e.palette.grey[500]},menu:{position:"absolute",zIndex:100,marginTop:e.spacing(.5),left:0,right:0},focused:{borderColor:e.palette.primary.main}}),Q=({isFocused:e,...o})=>t=>({input:s=>({...s,color:t.palette?t.palette.text.primary:"#AAA","& input":{font:"inherit"}}),clearIndicator:s=>({...s,cursor:"pointer"}),container:s=>({...s,width:"100%",minWidth:270,position:"relative",borderStyle:"solid",borderColor:t.palette?e?t.palette.primary.main:t.palette.grey[400]:"#AAA",borderRadius:"2px 0px 0px 2px",transition:"border-color .3s ease-in",borderWidth:"1px 0 1px 1px",paddingLeft:t.spacing?t.spacing(1):4}),...o});function X(e){const{selectProps:{classes:o},children:t}=e;return n.jsx("div",{className:o.valueContainer,children:t})}const Y=({inputRef:e,...o})=>n.jsx("div",{ref:e,...o});function Z(e){const{selectProps:o,innerRef:t,children:s,innerProps:a}=e;return n.jsx(c.TextField,{fullWidth:!0,InputProps:{inputComponent:Y,disableUnderline:!0,inputProps:{className:o.classes.input,inputRef:t,children:s,...a}},...o.textFieldProps})}function ee(e){const{isFocused:o,selectProps:{classes:t},innerProps:s,children:a}=e;return n.jsx(c.MenuItem,{className:L(t.option),selected:o,component:"div",...s,children:a})}function te(e){const{selectProps:{classes:o},innerProps:t,children:s}=e;return n.jsx(c.Typography,{color:"textSecondary",className:o.noOptionsMessage,...t,children:s})}function oe(e){const{selectProps:{classes:o},innerProps:t,children:s}=e;return n.jsx(c.Typography,{className:o.placeholder,...t,children:s})}function re(e){const{selectProps:{classes:o},innerProps:t,children:s}=e;return n.jsx(c.Typography,{className:o.singleValue,...t,children:s})}function se(e){const{selectProps:{classes:o},children:t,removeProps:s,size:a="small"}=e;return n.jsx(c.Chip,{tabIndex:-1,label:t,size:a,className:o.chip,classes:{label:o.chipLabel},onDelete:s.onClick,deleteIcon:n.jsx(W.Cancel,{...s}),color:"default"})}function ne(e){const{selectProps:{classes:o},data:{isModifier:t,label:s,modifier_label:a}}=e;return t?n.jsx("div",{className:o.modifierValue,children:n.jsx(c.Typography,{noWrap:!0,children:`${s}: `})}):n.jsx(se,{className:o.modifierValue,...e,children:n.jsxs(n.Fragment,{children:[n.jsx(c.Typography,{noWrap:!0,children:`${a}: `}),n.jsx(c.Typography,{noWrap:!0,children:s})]})})}function ie(e){const{selectProps:{classes:o},children:t,innerProps:s}=e;return n.jsx(c.Paper,{square:!0,className:o.menu,...s,children:t})}function ae(){return null}function le(){return null}const ce={Control:Z,Menu:ie,MultiValue:ne,NoOptionsMessage:te,Option:ee,Placeholder:oe,SingleValue:re,ValueContainer:X,DropdownIndicator:ae,IndicatorSeparator:le},pe=(e,o)=>t=>new Promise((s,a)=>{const{value:l}=e,S=[{...l&&{field:l},text:t},{...l&&{field:l},text:t.toUpperCase()},{...l&&{field:l},text:t.toLowerCase()},{...l&&{field:l},text:`${t[0].toUpperCase()}${t.slice(1)}`}],h={...o,autocomplete:S};try{J.item.searchItem({itemSearchDocument:h}).then(({data:d})=>{const{autocomplete:p=[]}=d,f=[];p.forEach(m=>{if(m.field&&m.field!==l)return;const{suggestion:C=[]}=m;C.forEach(g=>{f.find(j=>j.value===g)||f.push({label:g,value:g})})}),s(f)}).catch(d=>a(d))}catch(d){a(d)}}),de=e=>o=>new Promise(t=>{if(o){const s=o.toLowerCase(),a=e.filter(l=>l.label.toLowerCase().includes(s));t(a)}t(e)}),ue=({currentModifier:e,modifiers:o,itemSearchDocument:t})=>e?pe(e,t):de(o),fe=e=>`Search for ${e}`;function v({classes:e,className:o,theme:t,defaultValue:s,modifiers:a,loadOptions:l,itemSearchDocument:S,onSubmit:h,submitting:d,onChange:p,placeholder:f,CreateTabelSelectComponents:m,CreateTabelSelectProps:C,CreateTablestyles:g,ButtonComponent:j,ButtonProps:q,SearchIconComponent:A,SearchIconsProps:R,ProgressComponent:B,ProgressProps:D}){const[_,b]=w.useState(s),[y,x]=w.useState(),[O,F]=w.useState(!1),$=y?[]:a,z=Q({isFocused:O,CreateTablestyles:g})(t),U=(i,{action:u,option:T={}})=>{const{isModifier:E}=T;if(E){b(i),x(T);return}if(u==="create-option"||u==="select-option"){let P=T;u==="create-option"&&(P=i[i.length-1]);const{value:I,label:M,isFreeText:V}=y,N=[...i],H={...V&&{isFreeText:V},modifier_value:I,modifier_label:M,...P};N.splice(-2,2,H),b(N),x(),p&&p(N);return}if(u==="remove-value"||u==="pop-value"){b(i);const P=i&&i.length>0&&i[i.length-1].isModifier?i[i.length-1]:void 0;x(P);const I=i.filter(M=>!M.isModifier);p&&p(I);return}if(u==="clear"){b([]),x(),p&&p(i);return}b(i)},k=i=>{i.preventDefault(),h&&h()};return n.jsxs("form",{className:L(o,e.root,"VdtSearchField-root"),onSubmit:k,children:[n.jsx(G,{className:e.createTable,classes:e,styles:z,loadOptions:l({currentModifier:y,modifiers:a,itemSearchDocument:S}),components:{...ce,...m},value:_,defaultOptions:$,onChange:U,onFocus:()=>F(!0),onBlur:()=>F(!1),isFocused:O,placeholder:f,isValidNewOption:i=>i&&y,blurInputOnSelect:!1,isMulti:!0,allowCreateWhileLoading:!0,createOptionPosition:"first",formatCreateLabel:fe,...C}),n.jsx(j,{size:"small",type:"submit",disableRipple:!0,className:L(e.button,{[e.focused]:O},"VdtSearchField-button"),...q,children:d?n.jsx(B,{size:20,color:"inherit",...D}):n.jsx(A,{...R})})]})}v.propTypes={classes:r.objectOf(r.string),className:r.string,theme:r.objectOf(r.any),defaultValue:r.arrayOf(r.object),modifiers:r.arrayOf(r.any),loadOptions:r.func,itemSearchDocument:r.objectOf(r.any),submitting:r.bool,onSubmit:r.func,onChange:r.func,placeholder:r.string,CreateTabelSelectComponents:r.objectOf(r.elementType),CreateTabelSelectProps:r.objectOf(r.any),CreateTablestyles:r.objectOf(r.any),ButtonComponent:r.elementType,ButtonProps:r.objectOf(r.any),SearchIconComponent:r.elementType,SearchIconsProps:r.objectOf(r.any),ProgressComponent:r.elementType,ProgressProps:r.objectOf(r.any)};v.defaultProps={className:void 0,classes:{},theme:{},defaultValue:[],modifiers:[],loadOptions:ue,itemSearchDocument:{},submitting:!1,onSubmit:()=>{},onChange:()=>{},placeholder:"Search Items",CreateTabelSelectComponents:void 0,CreateTabelSelectProps:{},CreateTablestyles:{},ButtonComponent:c.Button,ButtonProps:{},SearchIconComponent:W.Search,SearchIconsProps:{},ProgressComponent:c.CircularProgress,ProgressProps:{}};exports.default=v;exports.styles=K;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o=require("react/jsx-runtime"),u=require("react"),A=require("clsx"),e=require("prop-types"),y=require("@material-ui/core"),S=require("@material-ui/icons"),ee=n=>({root:{alignItems:"center",width:"100%",display:"flex"},input:{paddingLeft:n.spacing(1),borderWidth:1,flex:1,borderStyle:"solid",borderColor:n.palette.grey[400],borderRadius:2,transition:"border-color .3s ease-in",height:32},button:{backgroundColor:n.palette.type==="light"?n.palette.grey[100]:n.palette.grey[800],color:n.palette.text.primary,borderBottomLeftRadius:0,borderTopLeftRadius:0,borderLeftWidth:1,borderLeftStyle:"solid",borderRadius:2,borderLeftColor:n.palette.grey[400],padding:0,height:"100%"},closeButton:{visibility:"visible",cursor:"pointer",transition:"visibility .5s ease-in"},closeButtonHidden:{visibility:"hidden"},focused:{borderColor:n.palette.primary.main},touched:{},progressButton:{width:"100%",marginTop:"4px"}});function oe({suggestions:n,inputRef:t}){const a=u.useMemo(()=>[...t.current?[t.current.value]:[],...n||[]],[t,n]),[d,l]=u.useState(0);u.useEffect(()=>{l(0)},[a]);const m=(s,i)=>(s%i+i)%i,p=(s,i)=>m(s+(i.key==="ArrowDown"?1:-1),a.length);return{onKeyDown:s=>{(s.key==="ArrowDown"||s.key==="ArrowUp")&&(t.current&&(t.current.value=a[p(d,s)],l(i=>p(i,s))),s.preventDefault())},onHoverSuggestion:s=>l(s+1),focusedSuggestion:d}}function j({className:n,classes:t,value:a,onSubmit:d,defaultValue:l,submitting:m,onCancel:p,suggestions:g,searchPlaceholder:P,onChange:s,SuggestionsComponent:i,SuggestionsProps:F,TopSearchesComponent:v,TopSearchesProps:M,ButtonProps:L,InputBaseProps:N,SearchIconComponent:E,ProgressComponent:z,ProgressProps:K,CloseIconComponent:x,inputRef:O}){let c=u.useRef(null);O&&(c=O);const[B,w]=u.useState(!1),[C,f]=u.useState(!!l);u.useEffect(()=>{l!==""&&f(!0)},[l]);const I=r=>{s(r),f(c.current.value.length>0)},T=r=>{a===void 0&&(c.current.value=r),I(r)},D=r=>{r.preventDefault(),c&&c.current&&c.current.blur();const{value:b}=c.current||"";d&&d(b),b&&f(!0)},V=()=>{f(!1),d(""),T("")},W=(r,b)=>{T(b),D(r)},[h,U]=u.useState(null),[H,R]=u.useState(!1),_=!!h&&B&&C,k=!!h&&H,G=()=>{R(!H)},[J,q]=u.useState(!1),Q=()=>{q(!0)},X=()=>{q(!1)},{onKeyDown:Y,onHoverSuggestion:Z,focusedSuggestion:$}=oe({suggestions:g,inputRef:c});return o.jsxs("form",{className:A(n,t.root,"VdtSearchInput-root"),onSubmit:D,children:[o.jsx(y.InputBase,{value:a,classes:{root:t.input,focused:t.focused},defaultValue:l,ref:r=>U(r),inputProps:{onFocus:()=>w(!0),onBlur:()=>w(!1)},placeholder:P,inputRef:c,endAdornment:o.jsxs(o.Fragment,{children:[o.jsx(x,{className:C?t.closeButton:t.closeButtonHidden,onClick:V}),v&&o.jsx(y.IconButton,{onClick:G,style:{borderRadius:"50%"},children:k?o.jsx(S.ArrowDropUp,{fontSize:"small"}):o.jsx(S.ArrowDropDown,{fontSize:"small"})}),o.jsx(y.Button,{size:"small",type:"submit",disableRipple:!0,className:A(t.button,{[t.focused]:B,[t.touched]:C}),onMouseOver:Q,onMouseOut:X,...L,children:m?o.jsx(o.Fragment,{children:J?o.jsx(x,{onClick:p}):o.jsx(z,{size:20,color:"inherit",...K})}):o.jsx(E,{})})]}),onChange:r=>I(r.target.value),onKeyDown:g&&Y,...N}),_&&i&&o.jsx(i,{suggestions:g,onSelected:W,onHover:Z,focused:$,anchorEl:h,...F}),k&&v&&o.jsx(v,{setIsTopSearchesOpen:R,anchorEl:h,...M})]})}j.propTypes={className:e.string,classes:e.objectOf(e.string).isRequired,value:e.string,onSubmit:e.func,defaultValue:e.string,submitting:e.bool,onCancel:e.func,suggestions:e.arrayOf(e.string),searchPlaceholder:e.string,onChange:e.func,SuggestionsComponent:e.elementType,SuggestionsProps:e.objectOf(e.any),TopSearchesComponent:e.elementType,TopSearchesProps:e.objectOf(e.any),ButtonProps:e.objectOf(e.any),InputBaseProps:e.objectOf(e.any),SearchIconComponent:e.elementType,ProgressComponent:e.elementType,ProgressProps:e.objectOf(e.any),CloseIconComponent:e.elementType,CloseIconProps:e.objectOf(e.any),inputRef:e.shape({current:e.instanceOf(Element)})};j.defaultProps={className:void 0,value:void 0,defaultValue:void 0,submitting:!1,suggestions:void 0,searchPlaceholder:"Search",onSubmit:()=>{},onChange:()=>{},onCancel:()=>{},SuggestionsComponent:null,SuggestionsProps:{},TopSearchesComponent:null,TopSearchesProps:{},ButtonProps:{},InputBaseProps:{},SearchIconComponent:S.Search,ProgressComponent:y.CircularProgress,ProgressProps:{},CloseIconComponent:S.Close,CloseIconProps:{},inputRef:void 0};exports.default=j;exports.styles=ee;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o=require("react/jsx-runtime"),u=require("react"),A=require("clsx"),e=require("prop-types"),y=require("@material-ui/core"),S=require("@material-ui/icons"),ee=n=>({root:{alignItems:"center",width:"100%",display:"flex"},input:{paddingLeft:n.spacing(1),borderWidth:1,flex:1,borderStyle:"solid",borderColor:n.palette.grey[400],borderRadius:2,transition:"border-color .3s ease-in",height:32},button:{backgroundColor:n.palette.type==="light"?n.palette.grey[100]:n.palette.grey[800],color:n.palette.text.primary,borderBottomLeftRadius:0,borderTopLeftRadius:0,borderLeftWidth:1,borderLeftStyle:"solid",borderRadius:2,borderLeftColor:n.palette.grey[400],padding:0,height:"100%"},closeButton:{visibility:"visible",cursor:"pointer",transition:"visibility .5s ease-in"},closeButtonHidden:{visibility:"hidden"},focused:{borderColor:n.palette.primary.main},touched:{},progressButton:{width:"100%",marginTop:"4px"}});function oe({suggestions:n,inputRef:t}){const a=u.useMemo(()=>[...t.current?[t.current.value]:[],...n||[]],[t,n]),[d,l]=u.useState(0);u.useEffect(()=>{l(0)},[a]);const m=(s,i)=>(s%i+i)%i,p=(s,i)=>m(s+(i.key==="ArrowDown"?1:-1),a.length);return{onKeyDown:s=>{(s.key==="ArrowDown"||s.key==="ArrowUp")&&(t.current&&(t.current.value=a[p(d,s)],l(i=>p(i,s))),s.preventDefault())},onHoverSuggestion:s=>l(s+1),focusedSuggestion:d}}function j({className:n,classes:t,value:a,onSubmit:d,defaultValue:l,submitting:m,onCancel:p,suggestions:g,searchPlaceholder:P,onChange:s,SuggestionsComponent:i,SuggestionsProps:F,TopSearchesComponent:v,TopSearchesProps:M,ButtonProps:L,InputBaseProps:N,SearchIconComponent:E,ProgressComponent:z,ProgressProps:K,CloseIconComponent:x,inputRef:O}){let c=u.useRef(null);O&&(c=O);const[B,w]=u.useState(!1),[C,f]=u.useState(!!l);u.useEffect(()=>{l!==""&&f(!0)},[l]);const I=r=>{s(r),f(c.current.value.length>0)},T=r=>{a===void 0&&(c.current.value=r),I(r)},D=r=>{r.preventDefault(),c&&c.current&&c.current.blur();const{value:b}=c.current||"";d&&d(b),b&&f(!0)},V=()=>{f(!1),d(""),T("")},W=(r,b)=>{T(b),D(r)},[h,U]=u.useState(null),[R,H]=u.useState(!1),_=!!h&&B&&C,k=!!h&&R,G=()=>{H(!R)},[J,q]=u.useState(!1),Q=()=>{q(!0)},X=()=>{q(!1)},{onKeyDown:Y,onHoverSuggestion:Z,focusedSuggestion:$}=oe({suggestions:g,inputRef:c});return o.jsxs("form",{className:A(n,t.root,"VdtSearchInput-root"),onSubmit:D,children:[o.jsx(y.InputBase,{value:a,classes:{root:t.input,focused:t.focused},defaultValue:l,ref:r=>U(r),inputProps:{onFocus:()=>w(!0),onBlur:()=>w(!1)},placeholder:P,inputRef:c,endAdornment:o.jsxs(o.Fragment,{children:[o.jsx(x,{className:C?t.closeButton:t.closeButtonHidden,onClick:V}),v&&o.jsx(y.IconButton,{onClick:G,style:{borderRadius:"50%"},children:k?o.jsx(S.ArrowDropUp,{fontSize:"small"}):o.jsx(S.ArrowDropDown,{fontSize:"small"})}),o.jsx(y.Button,{size:"small",type:"submit",disableRipple:!0,className:A(t.button,{[t.focused]:B,[t.touched]:C}),onMouseOver:Q,onMouseOut:X,...L,children:m?o.jsx(o.Fragment,{children:J?o.jsx(x,{onClick:p}):o.jsx(z,{size:20,color:"inherit",...K})}):o.jsx(E,{})})]}),onChange:r=>I(r.target.value),onKeyDown:g&&Y,...N}),_&&i&&o.jsx(i,{suggestions:g,onSelected:W,onHover:Z,focused:$,anchorEl:h,...F}),k&&v&&o.jsx(v,{setIsTopSearchesOpen:H,anchorEl:h,...M})]})}j.propTypes={className:e.string,classes:e.objectOf(e.string).isRequired,value:e.string,onSubmit:e.func,defaultValue:e.string,submitting:e.bool,onCancel:e.func,suggestions:e.arrayOf(e.string),searchPlaceholder:e.string,onChange:e.func,SuggestionsComponent:e.elementType,SuggestionsProps:e.objectOf(e.any),TopSearchesComponent:e.elementType,TopSearchesProps:e.objectOf(e.any),ButtonProps:e.objectOf(e.any),InputBaseProps:e.objectOf(e.any),SearchIconComponent:e.elementType,ProgressComponent:e.elementType,ProgressProps:e.objectOf(e.any),CloseIconComponent:e.elementType,CloseIconProps:e.objectOf(e.any),inputRef:e.shape({current:e.instanceOf(Element)})};j.defaultProps={className:void 0,value:void 0,defaultValue:void 0,submitting:!1,suggestions:void 0,searchPlaceholder:"Search",onSubmit:()=>{},onChange:()=>{},onCancel:()=>{},SuggestionsComponent:null,SuggestionsProps:{},TopSearchesComponent:null,TopSearchesProps:{},ButtonProps:{},InputBaseProps:{},SearchIconComponent:S.Search,ProgressComponent:y.CircularProgress,ProgressProps:{},CloseIconComponent:S.Close,CloseIconProps:{},inputRef:void 0};exports.default=j;exports.styles=ee;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o=require("react/jsx-runtime"),v=require("react"),M=require("clsx"),e=require("prop-types"),c=require("@material-ui/core"),A=require("@material-ui/icons"),B=require("../SortMenuItem.js"),O=n=>({root:{color:n.palette.secondary.main,paddingLeft:9,paddingRight:9,borderRadius:4},indicator:{marginRight:-2,marginLeft:4,color:n.palette.secondary.main,transition:"transform .2s ease-out"},indicatorAsc:{transform:"rotate(180deg)"},menuPaper:{minWidth:150,marginTop:4}});function d({classes:n,caption:b,options:s,sortAsc:u,sortDesc:l,IconComponent:p,MenuItemComponent:S,onChange:m,initialSort:x,...j}){const[g,h]=v.useState(null),C=t=>{h(t.currentTarget)},y=()=>{h(null)},[r,T]=v.useState(x||{option:{},direction:l}),q=t=>P=>{let{option:a,direction:i}=r;t.value!==a.value?a=t:i=i===l?u:l,T({option:a,direction:i}),m&&m(P,a.value,i),y()},f=s===void 0||s.length===0;return o.jsxs(o.Fragment,{children:[o.jsxs(c.ButtonBase,{onClick:C,className:n.root,disabled:f,children:[o.jsx(c.Typography,{variant:"caption",color:f?"textSecondary":"textPrimary",className:n.label,children:`${b}: ${r.option.label||""}`}),p&&o.jsx("span",{className:M(n.indicator,{[n.indicatorAsc]:r.direction===u}),children:o.jsx(p,{})})]}),o.jsx(c.Menu,{anchorEl:g,keepMounted:!0,open:!!g,onClose:y,elevation:1,getContentAnchorEl:null,marginThreshold:0,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},PaperProps:{className:n.menuPaper},children:s.map(t=>o.jsx(S,{primary:t.label,onClick:q(t),selected:t.value===r.option.value,...j},t.value))})]})}d.propTypes={classes:e.objectOf(e.any).isRequired,caption:e.string,sortAsc:e.string,sortDesc:e.string,IconComponent:e.elementType,MenuItemComponent:e.elementType,onChange:e.func,options:e.arrayOf(e.shape({value:e.any,label:e.string})),initialSort:e.shape({option:e.shape({value:e.any,label:e.string}),direction:e.string})};d.defaultProps={caption:"Sort by",sortAsc:"ascending",sortDesc:"descending",IconComponent:A.ArrowDropDown,MenuItemComponent:B.default,onChange:void 0,initialSort:void 0,options:[]};exports.default=d;exports.styles=O;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o=require("react/jsx-runtime"),v=require("react"),M=require("clsx"),e=require("prop-types"),c=require("@material-ui/core"),A=require("@material-ui/icons"),B=require("../SortMenuItem.js"),R=n=>({root:{color:n.palette.secondary.main,paddingLeft:9,paddingRight:9,borderRadius:4},indicator:{marginRight:-2,marginLeft:4,color:n.palette.secondary.main,transition:"transform .2s ease-out"},indicatorAsc:{transform:"rotate(180deg)"},menuPaper:{minWidth:150,marginTop:4}});function d({classes:n,caption:b,options:s,sortAsc:u,sortDesc:l,IconComponent:p,MenuItemComponent:S,onChange:m,initialSort:x,...j}){const[g,h]=v.useState(null),C=t=>{h(t.currentTarget)},y=()=>{h(null)},[r,T]=v.useState(x||{option:{},direction:l}),q=t=>P=>{let{option:a,direction:i}=r;t.value!==a.value?a=t:i=i===l?u:l,T({option:a,direction:i}),m&&m(P,a.value,i),y()},f=s===void 0||s.length===0;return o.jsxs(o.Fragment,{children:[o.jsxs(c.ButtonBase,{onClick:C,className:n.root,disabled:f,children:[o.jsx(c.Typography,{variant:"caption",color:f?"textSecondary":"textPrimary",className:n.label,children:`${b}: ${r.option.label||""}`}),p&&o.jsx("span",{className:M(n.indicator,{[n.indicatorAsc]:r.direction===u}),children:o.jsx(p,{})})]}),o.jsx(c.Menu,{anchorEl:g,keepMounted:!0,open:!!g,onClose:y,elevation:1,getContentAnchorEl:null,marginThreshold:0,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},PaperProps:{className:n.menuPaper},children:s.map(t=>o.jsx(S,{primary:t.label,onClick:q(t),selected:t.value===r.option.value,...j},t.value))})]})}d.propTypes={classes:e.objectOf(e.any).isRequired,caption:e.string,sortAsc:e.string,sortDesc:e.string,IconComponent:e.elementType,MenuItemComponent:e.elementType,onChange:e.func,options:e.arrayOf(e.shape({value:e.any,label:e.string})),initialSort:e.shape({option:e.shape({value:e.any,label:e.string}),direction:e.string})};d.defaultProps={caption:"Sort by",sortAsc:"ascending",sortDesc:"descending",IconComponent:A.ArrowDropDown,MenuItemComponent:B.default,onChange:void 0,initialSort:void 0,options:[]};exports.default=d;exports.styles=R;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const s=require("react/jsx-runtime"),y=require("react"),e=require("prop-types"),o=require("@material-ui/core"),m=require("@material-ui/core/colors"),c=require("@material-ui/core/styles"),f=r=>c.makeStyles({selected:{"&$selected":{backgroundColor:c.alpha(r,.16),color:r}}}),t=y.forwardRef(({primary:r,onClick:n,selected:l,secondaryColor:i,MenuItemProps:a,ListItemTextProps:u},p)=>{const d=f(i)();return s.jsx(o.MenuItem,{selected:l,onClick:n,dense:!0,classes:{selected:d.selected},ref:p,...a,children:s.jsx(o.ListItemText,{primary:r,primaryTypographyProps:{variant:"caption"},...u})})});t.propTypes={primary:e.string,secondaryColor:e.string,onClick:e.func,selected:e.bool,MenuItemProps:e.objectOf(e.any),ListItemTextProps:e.objectOf(e.any)};t.defaultProps={primary:"",secondaryColor:m.red.A200,onClick:void 0,selected:!1,MenuItemProps:{},ListItemTextProps:{}};exports.default=t;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const s=require("react/jsx-runtime"),y=require("react"),e=require("prop-types"),o=require("@material-ui/core"),m=require("@material-ui/core/colors"),c=require("@material-ui/core/styles"),f=t=>c.makeStyles({selected:{"&$selected":{backgroundColor:c.alpha(t,.16),color:t}}}),r=y.forwardRef(({primary:t,onClick:n,selected:l,secondaryColor:i,MenuItemProps:a,ListItemTextProps:u},p)=>{const d=f(i)();return s.jsx(o.MenuItem,{selected:l,onClick:n,dense:!0,classes:{selected:d.selected},ref:p,...a,children:s.jsx(o.ListItemText,{primary:t,primaryTypographyProps:{variant:"caption"},...u})})});r.propTypes={primary:e.string,secondaryColor:e.string,onClick:e.func,selected:e.bool,MenuItemProps:e.objectOf(e.any),ListItemTextProps:e.objectOf(e.any)};r.defaultProps={primary:"",secondaryColor:m.red.A200,onClick:void 0,selected:!1,MenuItemProps:{},ListItemTextProps:{}};exports.default=r;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const c=require("react/jsx-runtime"),f=require("react"),S=require("clsx"),e=require("prop-types"),j=require("@material-ui/lab"),d=require("@vidispine/proptypes"),v=require("../../../utils.js"),C=require("../QueryBuilderContext.js"),E=require("../QueryEntry/index.js"),Q=o=>({root:{},treeRoot:{backgroundColor:o.palette.background.paper,"& > .MuiTreeItem-root:first-child":{backgroundColor:"transparent",margin:"0",border:"none"}}}),N=o=>{function a({uuid:i,...n}){const p=n.operation,s=({operation:r,value:u,range:t}={})=>r?"operator":u||t?"field":"group";return{...p?{operation:n.operation,operator:n.entry.filter(r=>r.operation).map(r=>a(r))}:{name:n.name},field:n.entry.filter(r=>s(r)==="field").map(({uuid:r,predicate:u,...t})=>t),group:n.entry.filter(r=>s(r)==="group").map(r=>a(r))}}return o&&o.operator&&{operator:a(o.operator)}},P=o=>{const a=({operation:i,name:n,operator:p,field:s,group:r,entry:u}={})=>({...i?{operation:i}:{name:n},entry:[...s||[],...(p||[]).map(t=>a(t)),...(r||[]).map(t=>a(t)),...u||[]].map(t=>({uuid:v.uuidv4(),...t}))});return o&&o.operator&&{operator:a(o.operator)}};function m({classes:o,className:a,query:i,fields:n,groups:p,defaultField:s,defaultGroup:r,onChange:u,QueryEntryComponent:t,QueryEntryProps:O}){const g=f.useMemo(()=>P(i),[i]),x=f.useCallback(l=>{u({...l,toItemSearchDocument(){return N(this)}})},[u]),[T,h]=f.useState(["operator"]),b=(l,y)=>{h(y)},q=l=>{T.includes(l)||h(y=>[...y,l])};return c.jsx("div",{className:S(a,o.root,"VdtQueryBuilder-root"),children:g?c.jsx(C.QueryBuilderContextProvider,{query:g,onChange:x,children:c.jsx(j.TreeView,{classes:{root:o.treeRoot},disableSelection:!0,expanded:T,onNodeToggle:b,children:c.jsx(t,{expandNode:q,path:"operator",defaultField:s,defaultGroup:r,fields:n,groups:p,canExpand:!1,...O})})}):null})}m.propTypes={classes:e.objectOf(e.string),className:e.string,query:e.oneOfType([e.shape({operation:e.oneOf(["AND","OR","NOT"]).isRequired,entry:e.arrayOf(e.oneOfType([d.SearchOperatorType,d.SearchFieldType,d.SearchGroupType]))}),d.ItemSearchType]).isRequired,groups:e.arrayOf(e.any),fields:e.arrayOf(e.any),defaultField:e.oneOfType([e.string,e.objectOf(e.any)]),defaultGroup:e.string,onChange:e.func.isRequired,QueryEntryComponent:e.elementType,QueryEntryProps:e.objectOf(e.any)};m.defaultProps={className:void 0,classes:{},fields:[],groups:[],defaultField:void 0,defaultGroup:void 0,QueryEntryComponent:E.default,QueryEntryProps:{}};exports.default=m;exports.styles=Q;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const c=require("react/jsx-runtime"),f=require("react"),S=require("clsx"),e=require("prop-types"),j=require("@material-ui/lab"),d=require("@vidispine/proptypes"),v=require("../../../utils.js"),C=require("../QueryBuilderContext.js"),E=require("../QueryEntry/index.js"),Q=o=>({root:{},treeRoot:{backgroundColor:o.palette.background.paper,"& > .MuiTreeItem-root:first-child":{backgroundColor:"transparent",margin:"0",border:"none"}}}),R=o=>{function a({uuid:i,...n}){const p=n.operation,s=({operation:r,value:u,range:t}={})=>r?"operator":u||t?"field":"group";return{...p?{operation:n.operation,operator:n.entry.filter(r=>r.operation).map(r=>a(r))}:{name:n.name},field:n.entry.filter(r=>s(r)==="field").map(({uuid:r,predicate:u,...t})=>t),group:n.entry.filter(r=>s(r)==="group").map(r=>a(r))}}return o&&o.operator&&{operator:a(o.operator)}},N=o=>{const a=({operation:i,name:n,operator:p,field:s,group:r,entry:u}={})=>({...i?{operation:i}:{name:n},entry:[...s||[],...(p||[]).map(t=>a(t)),...(r||[]).map(t=>a(t)),...u||[]].map(t=>({uuid:v.uuidv4(),...t}))});return o&&o.operator&&{operator:a(o.operator)}};function m({classes:o,className:a,query:i,fields:n,groups:p,defaultField:s,defaultGroup:r,onChange:u,QueryEntryComponent:t,QueryEntryProps:O}){const g=f.useMemo(()=>N(i),[i]),x=f.useCallback(l=>{u({...l,toItemSearchDocument(){return R(this)}})},[u]),[T,h]=f.useState(["operator"]),b=(l,y)=>{h(y)},q=l=>{T.includes(l)||h(y=>[...y,l])};return c.jsx("div",{className:S(a,o.root,"VdtQueryBuilder-root"),children:g?c.jsx(C.QueryBuilderContextProvider,{query:g,onChange:x,children:c.jsx(j.TreeView,{classes:{root:o.treeRoot},disableSelection:!0,expanded:T,onNodeToggle:b,children:c.jsx(t,{expandNode:q,path:"operator",defaultField:s,defaultGroup:r,fields:n,groups:p,canExpand:!1,...O})})}):null})}m.propTypes={classes:e.objectOf(e.string),className:e.string,query:e.oneOfType([e.shape({operation:e.oneOf(["AND","OR","NOT"]).isRequired,entry:e.arrayOf(e.oneOfType([d.SearchOperatorType,d.SearchFieldType,d.SearchGroupType]))}),d.ItemSearchType]).isRequired,groups:e.arrayOf(e.any),fields:e.arrayOf(e.any),defaultField:e.oneOfType([e.string,e.objectOf(e.any)]),defaultGroup:e.string,onChange:e.func.isRequired,QueryEntryComponent:e.elementType,QueryEntryProps:e.objectOf(e.any)};m.defaultProps={className:void 0,classes:{},fields:[],groups:[],defaultField:void 0,defaultGroup:void 0,QueryEntryComponent:E.default,QueryEntryProps:{}};exports.default=m;exports.styles=Q;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const u=require("react/jsx-runtime"),K=require("react"),V=require("clsx"),e=require("prop-types"),j=require("@material-ui/core/styles"),I=require("@material-ui/icons"),W=require("@material-ui/lab"),X=require("../QueryBuilderContext.js"),Y=require("../QueryField/index.js"),Z=require("../QueryGroup/index.js"),ee=require("../QueryOperator/index.js"),oe=o=>({root:{"&:focus > .MuiTreeItem-content .MuiTreeItem-label":{backgroundColor:"transparent"},"&:hover > .MuiTreeItem-content .MuiTreeItem-label":{backgroundColor:"transparent"},padding:"5px"},queryGroup:{position:"relative",border:`1px solid ${j.alpha(o.palette.text.primary,.05)}`,backgroundColor:j.alpha(o.palette.text.primary,.02),borderRadius:"4px",margin:"1rem 1rem 1rem 0","& .MuiTreeItem-iconContainer":{position:"absolute",left:"12px"}}});function re(o){return o.operation?"operator":o.value||o.range?"field":"group"}function i({canExpandpath:o,path:p,fields:g,groups:n,defaultField:q,defaultGroup:te,not:m,nodeId:P,canExpand:E,parentGroup:ne,onRemove:$,...y}){const{expandNode:G,OperatorComponent:R,OperatorProps:M,FieldComponent:L,FieldProps:k,GroupComponent:A,GroupProps:Q,getFieldLabel:S,getFieldName:v,getGroupLabel:_,getGroupName:l,getGroupFields:w,getGroupGroups:B,classes:T}=y,{getEntry:D,addEntry:h,removeEntry:N,changeOperation:U,changeEntry:x,setNot:b}=X.useQueryBuilder(p),r=D(p),a=re(r),d=P||p,z=q||g.length>0?v(g[0]):void 0,s=a==="group"?w(n.find(t=>l(t)===l(r))||{}):g,c=a==="group"?v(s[0]):z,f=a==="group"?B(n.find(t=>l(t)===r.name)||{}):n,H=f&&f.length>0?f[0].name:void 0,O=K.useCallback((...t)=>{h(...t),G&&G(d)},[h,d,G]),F=$||N;if(r.operation&&r.operation==="NOT")return u.jsx(i,{nodeId:d,path:`${p}.entry.0`,fields:s,defaultField:c,groups:n,onRemove:N,parentGroup:a==="group"?r.name:void 0,not:!0,...y});const J=({uuid:t,...C})=>C;return u.jsx(W.TreeItem,{nodeId:d,className:V(a!=="field"&&T.queryGroup,T.root),expandIcon:E?u.jsx(I.ChevronRight,{}):null,collapseIcon:E?u.jsx(I.ExpandMore,{}):null,label:{operator:u.jsx(R,{operator:r,not:m,onAddEntry:O,onRemove:d!=="operator"?F:void 0,onChangeOperation:d!=="operator"?U:void 0,onChange:x,setNot:d!=="operator"?b:void 0,defaultField:c,defaultGroup:n&&n.length>0?n[0].name:void 0,...M}),field:u.jsx(L,{field:J(r),fields:s,getFieldLabel:S,getFieldName:v,not:m,onRemove:F,onChange:x,setNot:b,...k}),group:u.jsx(A,{group:r,groups:n,not:m,onAddEntry:O,onRemove:F,setNot:b,defaultField:c,defaultGroup:H,getGroupLabel:_,getGroupName:l,onChange:x,...Q})}[a],children:r.entry&&r.entry.map((t,C)=>u.jsx(i,{nodeId:`${d}.entry.${t.uuid}`,path:`${p}.entry.${C}`,fields:s,groups:f,defaultField:c,parentEntryType:a,parentGroup:a==="group"?r.name:void 0,...y},`${p}.entry.${t.uuid}`))})}i.propTypes={classes:e.objectOf(e.string),className:e.string,OperatorComponent:e.elementType,OperatorProps:e.objectOf(e.any),FieldComponent:e.elementType,FieldProps:e.objectOf(e.any),GroupComponent:e.elementType,GroupProps:e.objectOf(e.any),not:e.bool,nodeId:e.string,canExpand:e.bool,getFieldLabel:e.func,getFieldName:e.func,getGroupLabel:e.func,getGroupName:e.func,getGroupFields:e.func,getGroupGroups:e.func,defaultField:e.string,defaultGroup:e.string,canExpandpath:e.bool,path:e.string,expandNode:e.func,groups:e.arrayOf(e.any),fields:e.arrayOf(e.any),parentEntryType:e.string,parentGroup:e.string,onRemove:e.func};i.defaultProps={className:void 0,classes:{},FieldComponent:Y.default,FieldProps:{},GroupComponent:Z.default,GroupProps:{},OperatorComponent:ee.default,OperatorProps:{},not:!1,nodeId:void 0,canExpand:!0,getFieldLabel:({label:o}={})=>o,getFieldName:({name:o}={})=>o,getGroupLabel:({label:o}={})=>o,getGroupName:({name:o}={})=>o,getGroupFields:({fields:o=[]}={})=>o,getGroupGroups:({groups:o=[]}={})=>o,defaultField:void 0,defaultGroup:void 0,canExpandpath:void 0,path:void 0,expandNode:void 0,groups:[],fields:[],parentEntryType:void 0,parentGroup:void 0,onRemove:void 0};exports.default=i;exports.styles=oe;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const u=require("react/jsx-runtime"),K=require("react"),V=require("clsx"),e=require("prop-types"),j=require("@material-ui/core/styles"),I=require("@material-ui/icons"),W=require("@material-ui/lab"),X=require("../QueryBuilderContext.js"),Y=require("../QueryField/index.js"),Z=require("../QueryGroup/index.js"),ee=require("../QueryOperator/index.js"),oe=o=>({root:{"&:focus > .MuiTreeItem-content .MuiTreeItem-label":{backgroundColor:"transparent"},"&:hover > .MuiTreeItem-content .MuiTreeItem-label":{backgroundColor:"transparent"},padding:"5px"},queryGroup:{position:"relative",border:`1px solid ${j.alpha(o.palette.text.primary,.05)}`,backgroundColor:j.alpha(o.palette.text.primary,.02),borderRadius:"4px",margin:"1rem 1rem 1rem 0","& .MuiTreeItem-iconContainer":{position:"absolute",left:"12px"}}});function re(o){return o.operation?"operator":o.value||o.range?"field":"group"}function i({canExpandpath:o,path:p,fields:g,groups:n,defaultField:q,defaultGroup:te,not:m,nodeId:P,canExpand:E,parentGroup:ne,onRemove:R,...y}){const{expandNode:G,OperatorComponent:$,OperatorProps:M,FieldComponent:L,FieldProps:k,GroupComponent:A,GroupProps:Q,getFieldLabel:S,getFieldName:v,getGroupLabel:_,getGroupName:l,getGroupFields:w,getGroupGroups:B,classes:T}=y,{getEntry:D,addEntry:h,removeEntry:N,changeOperation:U,changeEntry:x,setNot:b}=X.useQueryBuilder(p),r=D(p),a=re(r),d=P||p,z=q||g.length>0?v(g[0]):void 0,s=a==="group"?w(n.find(t=>l(t)===l(r))||{}):g,c=a==="group"?v(s[0]):z,f=a==="group"?B(n.find(t=>l(t)===r.name)||{}):n,H=f&&f.length>0?f[0].name:void 0,O=K.useCallback((...t)=>{h(...t),G&&G(d)},[h,d,G]),F=R||N;if(r.operation&&r.operation==="NOT")return u.jsx(i,{nodeId:d,path:`${p}.entry.0`,fields:s,defaultField:c,groups:n,onRemove:N,parentGroup:a==="group"?r.name:void 0,not:!0,...y});const J=({uuid:t,...C})=>C;return u.jsx(W.TreeItem,{nodeId:d,className:V(a!=="field"&&T.queryGroup,T.root),expandIcon:E?u.jsx(I.ChevronRight,{}):null,collapseIcon:E?u.jsx(I.ExpandMore,{}):null,label:{operator:u.jsx($,{operator:r,not:m,onAddEntry:O,onRemove:d!=="operator"?F:void 0,onChangeOperation:d!=="operator"?U:void 0,onChange:x,setNot:d!=="operator"?b:void 0,defaultField:c,defaultGroup:n&&n.length>0?n[0].name:void 0,...M}),field:u.jsx(L,{field:J(r),fields:s,getFieldLabel:S,getFieldName:v,not:m,onRemove:F,onChange:x,setNot:b,...k}),group:u.jsx(A,{group:r,groups:n,not:m,onAddEntry:O,onRemove:F,setNot:b,defaultField:c,defaultGroup:H,getGroupLabel:_,getGroupName:l,onChange:x,...Q})}[a],children:r.entry&&r.entry.map((t,C)=>u.jsx(i,{nodeId:`${d}.entry.${t.uuid}`,path:`${p}.entry.${C}`,fields:s,groups:f,defaultField:c,parentEntryType:a,parentGroup:a==="group"?r.name:void 0,...y},`${p}.entry.${t.uuid}`))})}i.propTypes={classes:e.objectOf(e.string),className:e.string,OperatorComponent:e.elementType,OperatorProps:e.objectOf(e.any),FieldComponent:e.elementType,FieldProps:e.objectOf(e.any),GroupComponent:e.elementType,GroupProps:e.objectOf(e.any),not:e.bool,nodeId:e.string,canExpand:e.bool,getFieldLabel:e.func,getFieldName:e.func,getGroupLabel:e.func,getGroupName:e.func,getGroupFields:e.func,getGroupGroups:e.func,defaultField:e.string,defaultGroup:e.string,canExpandpath:e.bool,path:e.string,expandNode:e.func,groups:e.arrayOf(e.any),fields:e.arrayOf(e.any),parentEntryType:e.string,parentGroup:e.string,onRemove:e.func};i.defaultProps={className:void 0,classes:{},FieldComponent:Y.default,FieldProps:{},GroupComponent:Z.default,GroupProps:{},OperatorComponent:ee.default,OperatorProps:{},not:!1,nodeId:void 0,canExpand:!0,getFieldLabel:({label:o}={})=>o,getFieldName:({name:o}={})=>o,getGroupLabel:({label:o}={})=>o,getGroupName:({name:o}={})=>o,getGroupFields:({fields:o=[]}={})=>o,getGroupGroups:({groups:o=[]}={})=>o,defaultField:void 0,defaultGroup:void 0,canExpandpath:void 0,path:void 0,expandNode:void 0,groups:[],fields:[],parentEntryType:void 0,parentGroup:void 0,onRemove:void 0};exports.default=i;exports.styles=oe;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const i=require("react/jsx-runtime"),b=require("react"),C=require("@material-ui/core"),a=require("@material-ui/lab"),s=require("../const.js"),$=require("./FileTree.js"),E=require("./FolderTree.js"),g={};function v({className:m="VdtStorageTree",styles:f,storageType:l,storageId:t,fileListType:S,onListFilesMore:T,FolderComponent:h=E.FolderListTree,FolderProps:j={},FileComponent:R=$.default,FileProps:q={},LoadMoreProps:x={},storageText:p="Storage",loadMoreText:A="Load more"}){const L=b.useMemo(()=>{const{method:e=[]}=l,[n]=e;if(n&&n.uri){const{uri:O}=n,d=new URL(O),{pathname:_}=d;let{protocol:r}=d,o=_.split("@").pop();return o.endsWith("/")&&(o=o.slice(0,-1)),r.endsWith(":")&&(r=r.slice(0,-1)),`${r} ${o}`}return`${p} ${t}`},[l,t]),{prefixes:{prefix:M=[]}={},file:c=[],hits:u}=S;return i.jsxs(a.TreeItem,{nodeId:[s.STORAGE,t].join(s.JOIN_CHARACTER),label:L,className:m,styles:f,children:[M.map(e=>i.jsx(h,{path:e,storageId:t,...j},e)),c.map(e=>i.jsx(R,{fileId:e.id,fileType:e,storageId:t,...q},e.id)),u!==void 0&&u>c.length&&i.jsx(a.TreeItem,{className:"loadMore",nodeId:[s.LOAD_MORE,t].join(s.JOIN_CHARACTER),label:A,onClick:T,...x})]})}const F=C.withStyles(g,{name:"VdtStorageTree"})(v);exports.default=F;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const i=require("react/jsx-runtime"),b=require("react"),C=require("@material-ui/core"),a=require("@material-ui/lab"),s=require("../const.js"),$=require("./FileTree.js"),E=require("./FolderTree.js"),g={};function v({className:m="VdtStorageTree",styles:f,storageType:l,storageId:t,fileListType:S,onListFilesMore:T,FolderComponent:h=E.FolderListTree,FolderProps:R={},FileComponent:j=$.default,FileProps:q={},LoadMoreProps:x={},storageText:p="Storage",loadMoreText:A="Load more"}){const L=b.useMemo(()=>{const{method:e=[]}=l,[n]=e;if(n&&n.uri){const{uri:O}=n,d=new URL(O),{pathname:_}=d;let{protocol:r}=d,o=_.split("@").pop();return o.endsWith("/")&&(o=o.slice(0,-1)),r.endsWith(":")&&(r=r.slice(0,-1)),`${r} ${o}`}return`${p} ${t}`},[l,t]),{prefixes:{prefix:M=[]}={},file:c=[],hits:u}=S;return i.jsxs(a.TreeItem,{nodeId:[s.STORAGE,t].join(s.JOIN_CHARACTER),label:L,className:m,styles:f,children:[M.map(e=>i.jsx(h,{path:e,storageId:t,...R},e)),c.map(e=>i.jsx(j,{fileId:e.id,fileType:e,storageId:t,...q},e.id)),u!==void 0&&u>c.length&&i.jsx(a.TreeItem,{className:"loadMore",nodeId:[s.LOAD_MORE,t].join(s.JOIN_CHARACTER),label:A,onClick:T,...x})]})}const F=C.withStyles(g,{name:"VdtStorageTree"})(v);exports.default=F;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("react"),s=require("@vidispine/vdt-api"),c=({entityId:e})=>{const[u,l]=t.useState(),r=()=>{s.file.getFile({fileId:e,queryParams:{includeItem:!0}}).then(({data:i})=>l(i))};return t.useEffect(r,[e]),{fileType:u}};exports.default=c;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("react"),s=require("@vidispine/vdt-api"),c=({entityId:e})=>{const[u,l]=t.useState(),i=()=>{s.file.getFile({fileId:e,queryParams:{includeItem:!0}}).then(({data:r})=>l(r))};return t.useEffect(i,[e]),{fileType:u}};exports.default=c;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("react"),u=require("@vidispine/vdt-api"),c=({entityId:e})=>{const[r,o]=t.useState(),s=()=>{u.storage.getStorage({storageId:e}).then(({data:a})=>o(a))};return t.useEffect(s,[e]),{storageType:r}};exports.default=c;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("react"),u=require("@vidispine/vdt-api"),c=({entityId:e})=>{const[o,r]=t.useState(),s=()=>{u.storage.getStorage({storageId:e}).then(({data:a})=>r(a))};return t.useEffect(s,[e]),{storageType:o}};exports.default=c;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react"),u=require("@vidispine/vdt-api"),a=()=>{const[t,s]=e.useState({}),r=()=>{u.storage.listStorage().then(({data:o})=>s(o))};return e.useEffect(r,[]),{storageListType:t}};exports.default=a;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react"),u=require("@vidispine/vdt-api"),a=()=>{const[t,s]=e.useState({}),o=()=>{u.storage.listStorage().then(({data:r})=>s(r))};return e.useEffect(o,[]),{storageListType:t}};exports.default=a;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const r=require("react"),s=require("../const.js"),a=({onChange:t,initialExpanded:o=[]})=>{const[u,c]=r.useState(o),i=r.useCallback((l,e)=>{typeof e=="string"&&(e.startsWith(s.PREFIX)||e.startsWith(s.LOAD_MORE))||t&&t(e)},[t]);return{onNodeToggle:r.useCallback((l,e)=>{c(e)},[]),onNodeSelect:i,expanded:u}};exports.default=a;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const s=require("react"),r=require("../const.js"),a=({onChange:t,initialExpanded:o=[]})=>{const[u,c]=s.useState(o),i=s.useCallback((l,e)=>{typeof e=="string"&&(e.startsWith(r.PREFIX)||e.startsWith(r.LOAD_MORE))||t&&t(e)},[t]);return{onNodeToggle:s.useCallback((l,e)=>{c(e)},[]),onNodeSelect:i,expanded:u}};exports.default=a;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),S=require("react"),r=require("prop-types"),s=require("@material-ui/core"),p=require("@material-ui/icons"),f=require("@material-ui/lab"),T=require("@vidispine/vdt-api"),j=Object.freeze({oldPassword:"",password:"",passwordAgain:"",errors:[],loading:!1,success:!1}),t={SET_LOADING:"SET_LOADING",SET_ERRORS:"SET_ERRORS",SET_INPUT_VALUE:"SET_INPUT_VALUE",SET_SUCCESS:"SET_SUCCESS"};function q(n,d){switch(d.type){case t.SET_LOADING:{const i={...n,loading:d.payload};return d.payload&&(i.errors=[],i.success=!1),i}case t.SET_ERRORS:return{...n,loading:!1,errors:d.payload,success:!1};case t.SET_INPUT_VALUE:{const i={...n};return i[d.payload.input]=d.payload.value,i}case t.SET_SUCCESS:return{...j,success:!0};default:throw new Error}}const G=n=>({root:{},FormControl:{display:"flex",marginBottom:n.spacing(3)},alert:{marginBottom:n.spacing(2)}});function P({classes:n,onSuccess:d,username:i,validateOldPassword:m,changePwdTxt:C,changePwdSuccessTxt:R,usernameErrTxt:E,identicalPwdErrTxt:_,oldPwdTxt:I,oldPwdErrTxt:v,newPwdTxt:A,repeatPwdTxt:O,noPwdTxt:b,noUserTxt:N}){const[o,a]=S.useReducer(q,j),[c,U]=S.useState(!1),x=()=>U(!c),[u,F]=S.useState(i);S.useEffect(()=>{u||(a({type:t.SET_LOADING,payload:!0}),T.user.whoAmI().then(({data:l})=>{F(l),a({type:t.SET_LOADING,payload:!1})}).catch(()=>{a({type:t.SET_ERRORS,payload:[E]})}))},[u,E]);const g=l=>{l.preventDefault();const{oldPassword:h,password:w,passwordAgain:L}=o;if(!w||w===""){a({type:t.SET_ERRORS,payload:[b]});return}if(w!==L){a({type:t.SET_ERRORS,payload:[_]});return}if(!u){a({type:t.SET_ERRORS,payload:[N]});return}a({type:t.SET_LOADING,payload:!0}),(()=>m===!1?Promise.resolve():T.user.validateUserPassword({userName:u,password:h,queryParams:{type:"raw"}}))().then(()=>{T.user.updateUserPassword({userName:u,password:w,queryParams:{type:"raw"}}).then(()=>{a({type:t.SET_SUCCESS}),d&&d({userName:u,password:w})}).catch(V=>{a({type:t.SET_ERRORS,payload:[V.message]})})}).catch(()=>{a({type:t.SET_ERRORS,payload:[v]})})},y=l=>h=>{a({type:t.SET_INPUT_VALUE,payload:{input:l,value:h.target.value}})};return e.jsxs("div",{className:n.root,children:[o.errors.map(l=>e.jsx(s.Grow,{in:!0,children:e.jsx(f.Alert,{className:n.alert,severity:"error",children:l})},l.substring(1,5))),o.success&&e.jsx(s.Grow,{in:!0,children:e.jsx(f.Alert,{className:n.alert,severity:"success",children:R})}),e.jsxs("form",{onSubmit:g,children:[m&&e.jsxs(s.FormControl,{variant:"filled",className:n.FormControl,children:[e.jsx(s.InputLabel,{children:I}),e.jsx(s.FilledInput,{inputProps:{tabIndex:1},type:c?"text":"password",value:o.oldPassword,onChange:y("oldPassword"),endAdornment:e.jsx(s.InputAdornment,{position:"end",children:e.jsx(s.IconButton,{onClick:x,children:c?e.jsx(p.Visibility,{}):e.jsx(p.VisibilityOff,{})})})})]}),e.jsxs(s.FormControl,{variant:"filled",className:n.FormControl,children:[e.jsx(s.InputLabel,{children:A}),e.jsx(s.FilledInput,{inputProps:{tabIndex:2},type:c?"text":"password",value:o.password,onChange:y("password"),endAdornment:e.jsx(s.InputAdornment,{position:"end",children:e.jsx(s.IconButton,{onClick:x,children:c?e.jsx(p.Visibility,{}):e.jsx(p.VisibilityOff,{})})})})]}),e.jsxs(s.FormControl,{variant:"filled",className:n.FormControl,children:[e.jsx(s.InputLabel,{children:O}),e.jsx(s.FilledInput,{inputProps:{tabIndex:3},type:c?"text":"password",value:o.passwordAgain,onChange:y("passwordAgain"),endAdornment:e.jsx(s.InputAdornment,{position:"end",children:e.jsx(s.IconButton,{onClick:x,children:c?e.jsx(p.Visibility,{}):e.jsx(p.VisibilityOff,{})})})})]})]}),e.jsx(s.Button,{variant:"contained",color:"primary",onClick:g,disabled:!(o.password&&o.passwordAgain&&!o.loading),children:o.loading?e.jsx(s.CircularProgress,{size:20,color:"inherit"}):C})]})}P.propTypes={classes:r.objectOf(r.string),username:r.string,onSuccess:r.func,validateOldPassword:r.bool,changePwdTxt:r.string,changePwdSuccessTxt:r.string,usernameErrTxt:r.string,identicalPwdErrTxt:r.string,oldPwdTxt:r.string,oldPwdErrTxt:r.string,newPwdTxt:r.string,repeatPwdTxt:r.string,noPwdTxt:r.string,noUserTxt:r.string};P.defaultProps={classes:{},username:void 0,onSuccess:null,validateOldPassword:!0,changePwdTxt:"Change Password",changePwdSuccessTxt:"Password successfully changed!",usernameErrTxt:"Unable to verify username.",identicalPwdErrTxt:"Passwords are not identical.",oldPwdTxt:"Old password",oldPwdErrTxt:"Unable to verify the old password.",newPwdTxt:"New password",repeatPwdTxt:"Repeat password",noPwdTxt:"No password set",noUserTxt:"Cannot determine username"};const D=s.withStyles(G,{name:"VdtChangePasswordForm"})(P);exports.default=D;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),S=require("react"),r=require("prop-types"),s=require("@material-ui/core"),p=require("@material-ui/icons"),f=require("@material-ui/lab"),T=require("@vidispine/vdt-api"),j=Object.freeze({oldPassword:"",password:"",passwordAgain:"",errors:[],loading:!1,success:!1}),t={SET_LOADING:"SET_LOADING",SET_ERRORS:"SET_ERRORS",SET_INPUT_VALUE:"SET_INPUT_VALUE",SET_SUCCESS:"SET_SUCCESS"};function q(n,d){switch(d.type){case t.SET_LOADING:{const i={...n,loading:d.payload};return d.payload&&(i.errors=[],i.success=!1),i}case t.SET_ERRORS:return{...n,loading:!1,errors:d.payload,success:!1};case t.SET_INPUT_VALUE:{const i={...n};return i[d.payload.input]=d.payload.value,i}case t.SET_SUCCESS:return{...j,success:!0};default:throw new Error}}const G=n=>({root:{},FormControl:{display:"flex",marginBottom:n.spacing(3)},alert:{marginBottom:n.spacing(2)}});function P({classes:n,onSuccess:d,username:i,validateOldPassword:m,changePwdTxt:R,changePwdSuccessTxt:C,usernameErrTxt:E,identicalPwdErrTxt:_,oldPwdTxt:I,oldPwdErrTxt:v,newPwdTxt:A,repeatPwdTxt:O,noPwdTxt:b,noUserTxt:N}){const[o,a]=S.useReducer(q,j),[c,U]=S.useState(!1),x=()=>U(!c),[u,F]=S.useState(i);S.useEffect(()=>{u||(a({type:t.SET_LOADING,payload:!0}),T.user.whoAmI().then(({data:l})=>{F(l),a({type:t.SET_LOADING,payload:!1})}).catch(()=>{a({type:t.SET_ERRORS,payload:[E]})}))},[u,E]);const g=l=>{l.preventDefault();const{oldPassword:h,password:w,passwordAgain:L}=o;if(!w||w===""){a({type:t.SET_ERRORS,payload:[b]});return}if(w!==L){a({type:t.SET_ERRORS,payload:[_]});return}if(!u){a({type:t.SET_ERRORS,payload:[N]});return}a({type:t.SET_LOADING,payload:!0}),(()=>m===!1?Promise.resolve():T.user.validateUserPassword({userName:u,password:h,queryParams:{type:"raw"}}))().then(()=>{T.user.updateUserPassword({userName:u,password:w,queryParams:{type:"raw"}}).then(()=>{a({type:t.SET_SUCCESS}),d&&d({userName:u,password:w})}).catch(V=>{a({type:t.SET_ERRORS,payload:[V.message]})})}).catch(()=>{a({type:t.SET_ERRORS,payload:[v]})})},y=l=>h=>{a({type:t.SET_INPUT_VALUE,payload:{input:l,value:h.target.value}})};return e.jsxs("div",{className:n.root,children:[o.errors.map(l=>e.jsx(s.Grow,{in:!0,children:e.jsx(f.Alert,{className:n.alert,severity:"error",children:l})},l.substring(1,5))),o.success&&e.jsx(s.Grow,{in:!0,children:e.jsx(f.Alert,{className:n.alert,severity:"success",children:C})}),e.jsxs("form",{onSubmit:g,children:[m&&e.jsxs(s.FormControl,{variant:"filled",className:n.FormControl,children:[e.jsx(s.InputLabel,{children:I}),e.jsx(s.FilledInput,{inputProps:{tabIndex:1},type:c?"text":"password",value:o.oldPassword,onChange:y("oldPassword"),endAdornment:e.jsx(s.InputAdornment,{position:"end",children:e.jsx(s.IconButton,{onClick:x,children:c?e.jsx(p.Visibility,{}):e.jsx(p.VisibilityOff,{})})})})]}),e.jsxs(s.FormControl,{variant:"filled",className:n.FormControl,children:[e.jsx(s.InputLabel,{children:A}),e.jsx(s.FilledInput,{inputProps:{tabIndex:2},type:c?"text":"password",value:o.password,onChange:y("password"),endAdornment:e.jsx(s.InputAdornment,{position:"end",children:e.jsx(s.IconButton,{onClick:x,children:c?e.jsx(p.Visibility,{}):e.jsx(p.VisibilityOff,{})})})})]}),e.jsxs(s.FormControl,{variant:"filled",className:n.FormControl,children:[e.jsx(s.InputLabel,{children:O}),e.jsx(s.FilledInput,{inputProps:{tabIndex:3},type:c?"text":"password",value:o.passwordAgain,onChange:y("passwordAgain"),endAdornment:e.jsx(s.InputAdornment,{position:"end",children:e.jsx(s.IconButton,{onClick:x,children:c?e.jsx(p.Visibility,{}):e.jsx(p.VisibilityOff,{})})})})]})]}),e.jsx(s.Button,{variant:"contained",color:"primary",onClick:g,disabled:!(o.password&&o.passwordAgain&&!o.loading),children:o.loading?e.jsx(s.CircularProgress,{size:20,color:"inherit"}):R})]})}P.propTypes={classes:r.objectOf(r.string),username:r.string,onSuccess:r.func,validateOldPassword:r.bool,changePwdTxt:r.string,changePwdSuccessTxt:r.string,usernameErrTxt:r.string,identicalPwdErrTxt:r.string,oldPwdTxt:r.string,oldPwdErrTxt:r.string,newPwdTxt:r.string,repeatPwdTxt:r.string,noPwdTxt:r.string,noUserTxt:r.string};P.defaultProps={classes:{},username:void 0,onSuccess:null,validateOldPassword:!0,changePwdTxt:"Change Password",changePwdSuccessTxt:"Password successfully changed!",usernameErrTxt:"Unable to verify username.",identicalPwdErrTxt:"Passwords are not identical.",oldPwdTxt:"Old password",oldPwdErrTxt:"Unable to verify the old password.",newPwdTxt:"New password",repeatPwdTxt:"Repeat password",noPwdTxt:"No password set",noUserTxt:"Cannot determine username"};const D=s.withStyles(G,{name:"VdtChangePasswordForm"})(P);exports.default=D;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const s=require("react/jsx-runtime"),f=require("react"),r=require("@material-ui/core"),p=require("./PasswordField.js"),x=e=>({root:{display:"flex",flexDirection:"column","& > *":{marginTop:e.spacing(1),marginBottom:e.spacing(1)}},action:{display:"flex",justifyContent:"flex-end"},fields:{display:"flex",alignItems:"center"}});function w({classes:e,userName:n,onSubmit:o,onCancel:i,submitText:a="Change",cancelText:l="Cancel",passwordText:c="New Password"}){const t=f.useRef(),d=u=>{u.preventDefault();const{value:m}=t.current;o({userName:n,password:m})};return s.jsxs("form",{className:e.root,onSubmit:d,children:[s.jsx("div",{className:e.fields,children:s.jsx(p.default,{required:!0,fullWidth:!0,name:"password",label:c,inputRef:t})}),s.jsxs("div",{className:e.action,children:[s.jsx(r.Button,{onClick:i,children:l}),s.jsx(r.Button,{variant:"contained",color:"primary",type:"submit",children:a})]})]})}const j=r.withStyles(x,{name:"VdtUserPasswordForm"})(w);exports.default=j;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const s=require("react/jsx-runtime"),f=require("react"),t=require("@material-ui/core"),p=require("./PasswordField.js"),x=e=>({root:{display:"flex",flexDirection:"column","& > *":{marginTop:e.spacing(1),marginBottom:e.spacing(1)}},action:{display:"flex",justifyContent:"flex-end"},fields:{display:"flex",alignItems:"center"}});function w({classes:e,userName:n,onSubmit:o,onCancel:i,submitText:a="Change",cancelText:l="Cancel",passwordText:c="New Password"}){const r=f.useRef(),d=u=>{u.preventDefault();const{value:m}=r.current;o({userName:n,password:m})};return s.jsxs("form",{className:e.root,onSubmit:d,children:[s.jsx("div",{className:e.fields,children:s.jsx(p.default,{required:!0,fullWidth:!0,name:"password",label:c,inputRef:r})}),s.jsxs("div",{className:e.action,children:[s.jsx(t.Button,{onClick:i,children:l}),s.jsx(t.Button,{variant:"contained",color:"primary",type:"submit",children:a})]})]})}const j=t.withStyles(x,{name:"VdtUserPasswordForm"})(w);exports.default=j;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("react/jsx-runtime"),n=require("react"),r=require("@material-ui/core"),d=require("@material-ui/lab"),N=require("../../ChangeUserPasswordDialog/components/PasswordField.js"),S=s=>({root:{display:"flex",flexDirection:"column","& > *":{marginTop:s.spacing(1),marginBottom:s.spacing(1)}},action:{display:"flex",justifyContent:"flex-end"}});function h({classes:s,onSubmit:m,onCancel:p,submitText:f="Create",cancelText:x="Cancel",groups:g,roles:j}){const a=n.useRef(),u=n.useRef(),l=n.useRef(),[i,b]=n.useState([]),[c,R]=n.useState([]),v=e=>{e.preventDefault();const o={userName:a.current.value,realName:u.current.value,password:l.current.value,groupList:{group:i.concat(c).map(C=>({groupName:C}))}};m({userDocument:o})};return t.jsxs("form",{className:s.root,onSubmit:v,children:[t.jsx(r.TextField,{required:!0,name:"userName",label:"Username",inputRef:a}),t.jsx(r.TextField,{name:"realName",label:"Real name",inputRef:u}),t.jsx(N.default,{name:"password",required:!0,fullWidth:!0,label:"Password",inputRef:l}),t.jsx(d.Autocomplete,{name:"groups",multiple:!0,options:g,getOptionLabel:e=>e,filterSelectedOptions:!0,value:i,onChange:(e,o)=>b(o),renderInput:e=>t.jsx(r.TextField,{...e,label:"Add to groups"})}),t.jsx(d.Autocomplete,{name:"roles",multiple:!0,options:j,getOptionLabel:e=>e,filterSelectedOptions:!0,value:c,onChange:(e,o)=>R(o),renderInput:e=>t.jsx(r.TextField,{...e,label:"Add roles"})}),t.jsxs("div",{className:s.action,children:[t.jsx(r.Button,{onClick:p,children:x}),t.jsx(r.Button,{variant:"contained",color:"primary",type:"submit",children:f})]})]})}const y=r.withStyles(S,{name:"VdtCreateUserForm"})(h);exports.default=y;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("react/jsx-runtime"),n=require("react"),r=require("@material-ui/core"),d=require("@material-ui/lab"),N=require("../../ChangeUserPasswordDialog/components/PasswordField.js"),S=s=>({root:{display:"flex",flexDirection:"column","& > *":{marginTop:s.spacing(1),marginBottom:s.spacing(1)}},action:{display:"flex",justifyContent:"flex-end"}});function h({classes:s,onSubmit:m,onCancel:p,submitText:f="Create",cancelText:x="Cancel",groups:g,roles:j}){const a=n.useRef(),u=n.useRef(),l=n.useRef(),[i,R]=n.useState([]),[c,b]=n.useState([]),v=e=>{e.preventDefault();const o={userName:a.current.value,realName:u.current.value,password:l.current.value,groupList:{group:i.concat(c).map(C=>({groupName:C}))}};m({userDocument:o})};return t.jsxs("form",{className:s.root,onSubmit:v,children:[t.jsx(r.TextField,{required:!0,name:"userName",label:"Username",inputRef:a}),t.jsx(r.TextField,{name:"realName",label:"Real name",inputRef:u}),t.jsx(N.default,{name:"password",required:!0,fullWidth:!0,label:"Password",inputRef:l}),t.jsx(d.Autocomplete,{name:"groups",multiple:!0,options:g,getOptionLabel:e=>e,filterSelectedOptions:!0,value:i,onChange:(e,o)=>R(o),renderInput:e=>t.jsx(r.TextField,{...e,label:"Add to groups"})}),t.jsx(d.Autocomplete,{name:"roles",multiple:!0,options:j,getOptionLabel:e=>e,filterSelectedOptions:!0,value:c,onChange:(e,o)=>b(o),renderInput:e=>t.jsx(r.TextField,{...e,label:"Add roles"})}),t.jsxs("div",{className:s.action,children:[t.jsx(r.Button,{onClick:p,children:x}),t.jsx(r.Button,{variant:"contained",color:"primary",type:"submit",children:f})]})]})}const y=r.withStyles(S,{name:"VdtCreateUserForm"})(h);exports.default=y;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),s=require("react"),r=require("@material-ui/core"),N=t=>({root:{display:"flex",flexDirection:"column","& > *":{marginTop:t.spacing(1),marginBottom:t.spacing(1)}},action:{display:"flex",justifyContent:"flex-end"}});function j({classes:t,onSubmit:i,onCancel:o,submitText:u="Save",cancelText:c="Cancel",userNameText:m="Username",realNameText:d="Real name",user:a}){const n=s.useRef(),l=s.useRef(),f=x=>{x.preventDefault();const p={userName:n.current.value,realName:l.current.value};i({userDocument:p})};return e.jsxs("form",{className:t.root,onSubmit:f,children:[e.jsx(r.TextField,{required:!0,name:"userName",defaultValue:a.userName,label:m,inputRef:n}),e.jsx(r.TextField,{defaultValue:a.realName,name:"realName",label:d,inputRef:l}),e.jsxs("div",{className:t.action,children:[e.jsx(r.Button,{onClick:o,children:c}),e.jsx(r.Button,{variant:"contained",color:"primary",type:"submit",children:u})]})]})}const v=r.withStyles(N,{name:"VdtEditUserForm"})(j);exports.default=v;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),s=require("react"),r=require("@material-ui/core"),N=t=>({root:{display:"flex",flexDirection:"column","& > *":{marginTop:t.spacing(1),marginBottom:t.spacing(1)}},action:{display:"flex",justifyContent:"flex-end"}});function j({classes:t,onSubmit:i,onCancel:o,submitText:u="Save",cancelText:c="Cancel",userNameText:m="Username",realNameText:d="Real name",user:a}){const n=s.useRef(),l=s.useRef(),f=x=>{x.preventDefault();const p={userName:n.current.value,realName:l.current.value};i({userDocument:p})};return e.jsxs("form",{className:t.root,onSubmit:f,children:[e.jsx(r.TextField,{required:!0,name:"userName",defaultValue:a.userName,label:m,inputRef:n}),e.jsx(r.TextField,{defaultValue:a.realName,name:"realName",label:d,inputRef:l}),e.jsxs("div",{className:t.action,children:[e.jsx(r.Button,{onClick:o,children:c}),e.jsx(r.Button,{variant:"contained",color:"primary",type:"submit",children:u})]})]})}const R=r.withStyles(N,{name:"VdtEditUserForm"})(j);exports.default=R;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o=require("react/jsx-runtime"),L=require("react"),N=require("clsx"),e=require("prop-types"),s=require("@material-ui/core"),i=require("@material-ui/icons"),D=require("@vidispine/proptypes"),G=require("../../group/GroupRelationList/index.js"),A=require("./components/UserData.js"),k=require("./components/UserMenu.js"),F=n=>({root:{display:"grid",gridGap:n.spacing(2),"& .MuiListItem-gutters":{paddingLeft:"30px"}},header:{display:"flex",alignItems:"center",justifyContent:"space-between"}});function a({classes:n,className:O,userType:l,groupListType:u,onEdit:P,onDelete:C,onAddToGroups:c,onRemoveFromGroup:p,onToggleDisabled:q,onChangePassword:M,DetailsComponent:f,DetailsProps:R,GroupsComponent:g,GroupsProps:w,RolesComponent:m,RolesProps:E,MenuComponent:y,MenuProps:S,lockedUsers:x}){const{userName:d,groupList:T={}}=l||{},[j,v]=L.useState(null),h=x.includes(d),U=t=>{v(t.currentTarget)},b=()=>{v(null)},r=t=>t?I=>{t(I),b()}:void 0;return o.jsxs("div",{className:N(n.root,"VdtUserDetails-root",O),children:[o.jsxs("div",{className:n.header,children:[o.jsx(s.Typography,{variant:"h5",children:d}),o.jsx(s.IconButton,{onClick:U,disabled:x.includes(d),children:o.jsx(i.MoreVert,{})}),y&&o.jsx(y,{user:l,open:!!j,onClose:b,anchorEl:j,onDelete:r(C),onEdit:r(P),onToggleDisabled:r(q),onChangePassword:r(M),...S})]}),f&&o.jsxs(o.Fragment,{children:[o.jsx(f,{user:l,SubHeaderIcon:i.Description,...R}),o.jsx(s.Divider,{})]}),g&&o.jsxs(o.Fragment,{children:[o.jsx(g,{existingGroups:T,groups:u,onRemoveGroup:p,onAddGroups:c,SubHeaderIcon:i.Group,disableEdit:h,showRoles:!1,...w}),o.jsx(s.Divider,{})]}),m&&o.jsxs(o.Fragment,{children:[o.jsx(m,{existingGroups:T,groups:u,onRemoveGroup:p,onAddGroups:c,removeTooltip:"Remove role",subHeaderText:"Roles",SubHeaderIcon:i.VerifiedUser,inputLabel:"Select roles",addText:"Add roles",emptyText:"No roles added",disableEdit:h,showGroups:!1,...E}),o.jsx(s.Divider,{})]})]})}a.propTypes={classes:e.objectOf(e.string),className:e.string,userType:D.UserType,groupListType:D.GroupListType,onEdit:e.func,onDelete:e.func,onAddToGroups:e.func,onRemoveFromGroup:e.func,onToggleDisabled:e.func,onChangePassword:e.func,DetailsComponent:e.oneOfType([e.elementType,e.oneOf([!1])]),DetailsProps:e.objectOf(e.any),GroupsComponent:e.oneOfType([e.elementType,e.oneOf([!1])]),GroupsProps:e.objectOf(e.any),RolesComponent:e.oneOfType([e.elementType,e.oneOf([!1])]),RolesProps:e.objectOf(e.any),MenuComponent:e.oneOfType([e.elementType,e.oneOf([!1])]),MenuProps:e.objectOf(e.any),lockedUsers:e.arrayOf(e.string)};a.defaultProps={classes:{},className:void 0,userType:{},groupListType:{},onEdit:void 0,onDelete:void 0,onAddToGroups:void 0,onRemoveFromGroup:void 0,onToggleDisabled:void 0,onChangePassword:void 0,DetailsComponent:A.default,DetailsProps:{},GroupsComponent:G.default,GroupsProps:{},RolesComponent:G.default,RolesProps:{},MenuComponent:k.default,MenuProps:{},lockedUsers:["admin","vidinetviewer"]};exports.default=a;exports.styles=F;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o=require("react/jsx-runtime"),L=require("react"),N=require("clsx"),e=require("prop-types"),s=require("@material-ui/core"),i=require("@material-ui/icons"),D=require("@vidispine/proptypes"),G=require("../../group/GroupRelationList/index.js"),A=require("./components/UserData.js"),k=require("./components/UserMenu.js"),F=n=>({root:{display:"grid",gridGap:n.spacing(2),"& .MuiListItem-gutters":{paddingLeft:"30px"}},header:{display:"flex",alignItems:"center",justifyContent:"space-between"}});function a({classes:n,className:O,userType:l,groupListType:u,onEdit:P,onDelete:C,onAddToGroups:c,onRemoveFromGroup:p,onToggleDisabled:R,onChangePassword:q,DetailsComponent:f,DetailsProps:M,GroupsComponent:g,GroupsProps:w,RolesComponent:m,RolesProps:E,MenuComponent:y,MenuProps:S,lockedUsers:x}){const{userName:d,groupList:T={}}=l||{},[j,v]=L.useState(null),h=x.includes(d),U=t=>{v(t.currentTarget)},b=()=>{v(null)},r=t=>t?I=>{t(I),b()}:void 0;return o.jsxs("div",{className:N(n.root,"VdtUserDetails-root",O),children:[o.jsxs("div",{className:n.header,children:[o.jsx(s.Typography,{variant:"h5",children:d}),o.jsx(s.IconButton,{onClick:U,disabled:x.includes(d),children:o.jsx(i.MoreVert,{})}),y&&o.jsx(y,{user:l,open:!!j,onClose:b,anchorEl:j,onDelete:r(C),onEdit:r(P),onToggleDisabled:r(R),onChangePassword:r(q),...S})]}),f&&o.jsxs(o.Fragment,{children:[o.jsx(f,{user:l,SubHeaderIcon:i.Description,...M}),o.jsx(s.Divider,{})]}),g&&o.jsxs(o.Fragment,{children:[o.jsx(g,{existingGroups:T,groups:u,onRemoveGroup:p,onAddGroups:c,SubHeaderIcon:i.Group,disableEdit:h,showRoles:!1,...w}),o.jsx(s.Divider,{})]}),m&&o.jsxs(o.Fragment,{children:[o.jsx(m,{existingGroups:T,groups:u,onRemoveGroup:p,onAddGroups:c,removeTooltip:"Remove role",subHeaderText:"Roles",SubHeaderIcon:i.VerifiedUser,inputLabel:"Select roles",addText:"Add roles",emptyText:"No roles added",disableEdit:h,showGroups:!1,...E}),o.jsx(s.Divider,{})]})]})}a.propTypes={classes:e.objectOf(e.string),className:e.string,userType:D.UserType,groupListType:D.GroupListType,onEdit:e.func,onDelete:e.func,onAddToGroups:e.func,onRemoveFromGroup:e.func,onToggleDisabled:e.func,onChangePassword:e.func,DetailsComponent:e.oneOfType([e.elementType,e.oneOf([!1])]),DetailsProps:e.objectOf(e.any),GroupsComponent:e.oneOfType([e.elementType,e.oneOf([!1])]),GroupsProps:e.objectOf(e.any),RolesComponent:e.oneOfType([e.elementType,e.oneOf([!1])]),RolesProps:e.objectOf(e.any),MenuComponent:e.oneOfType([e.elementType,e.oneOf([!1])]),MenuProps:e.objectOf(e.any),lockedUsers:e.arrayOf(e.string)};a.defaultProps={classes:{},className:void 0,userType:{},groupListType:{},onEdit:void 0,onDelete:void 0,onAddToGroups:void 0,onRemoveFromGroup:void 0,onToggleDisabled:void 0,onChangePassword:void 0,DetailsComponent:A.default,DetailsProps:{},GroupsComponent:G.default,GroupsProps:{},RolesComponent:G.default,RolesProps:{},MenuComponent:k.default,MenuProps:{},lockedUsers:["admin","vidinetviewer"]};exports.default=a;exports.styles=F;
package/dist/cjs/utils.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react"),l=(e,t,n)=>{const[s,r]=a.useState(e),c=n===void 0?s:n,i=a.useCallback((S,o)=>r(d=>{const u=o!==void 0?o:!d;return t&&t(u),u}),[t]);return[c,i]};function C(){return([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,e=>(e^crypto.getRandomValues(new Uint8Array(1))[0]&15>>e/4).toString(16))}const g=e=>`${e[0].toUpperCase()}${e.slice(1).toLowerCase()}`,f=(e,t="")=>(n,s,...r)=>(n[s]!=null&&console.warn(`${s} is deprecated ${t||""}`),e(n,s,...r));exports.deprecated=f;exports.toCapsCase=g;exports.useToggleOnClick=l;exports.uuidv4=C;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react"),l=(e,t,n)=>{const[s,o]=a.useState(e),c=n===void 0?s:n,i=a.useCallback((S,r)=>o(d=>{const u=r!==void 0?r:!d;return t&&t(u),u}),[t]);return[c,i]};function C(){return([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,e=>(e^crypto.getRandomValues(new Uint8Array(1))[0]&15>>e/4).toString(16))}const g=e=>`${e[0].toUpperCase()}${e.slice(1).toLowerCase()}`,f=(e,t="")=>(n,s,...o)=>(n[s]!=null&&console.warn(`${s} is deprecated ${t||""}`),e(n,s,...o));exports.deprecated=f;exports.toCapsCase=g;exports.useToggleOnClick=l;exports.uuidv4=C;