@box/unified-share-modal 3.6.1 → 3.6.2
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/dist/chunks/remove-collaborator-modal.js +1 -1
- package/dist/chunks/remove-shared-link-modal.js +1 -1
- package/dist/chunks/shared-link-settings-modal.js +1 -1
- package/dist/esm/lib/containers/index.js +1 -1
- package/dist/esm/lib/containers/manage-access-list-container.js +1 -1
- package/dist/esm/lib/containers/remove-collaborator-container.js +1 -0
- package/dist/esm/lib/containers/remove-shared-link-container.js +1 -0
- package/dist/esm/lib/containers/shared-link-settings-container.js +1 -0
- package/dist/esm/lib/containers/unified-share-form-container.js +1 -0
- package/dist/esm/lib/contexts/shared-link-settings-context.js +1 -1
- package/dist/esm/lib/contexts/unified-share-modal-context.js +1 -1
- package/dist/esm/lib/unified-share-modal.js +1 -1
- package/dist/types/lib/components/remove-collaborator-modal/remove-collaborator-modal.d.ts +7 -1
- package/dist/types/lib/components/remove-collaborator-modal/stories/shared.d.ts +2 -2
- package/dist/types/lib/components/remove-shared-link-modal/remove-shared-link-modal.d.ts +4 -1
- package/dist/types/lib/components/remove-shared-link-modal/stories/shared.d.ts +2 -2
- package/dist/types/lib/containers/index.d.ts +4 -0
- package/dist/types/lib/containers/remove-collaborator-container.d.ts +1 -0
- package/dist/types/lib/containers/remove-shared-link-container.d.ts +1 -0
- package/dist/types/lib/containers/shared-link-settings-container.d.ts +1 -0
- package/dist/types/lib/containers/unified-share-form-container.d.ts +5 -0
- package/dist/types/lib/contexts/unified-share-modal-context.d.ts +3 -2
- package/package.json +9 -9
- package/dist/esm/lib/unified-share-base.js +0 -1
- package/dist/types/lib/unified-share-base.d.ts +0 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
import
|
|
1
|
+
import messages from"../esm/lib/components/remove-collaborator-modal/messages.js";import clsx from"clsx";import noop from"lodash/noop";import{useIntl}from"react-intl";import{Divider,Modal,Text}from"@box/blueprint-web";import{jsx,jsxs}from"react/jsx-runtime";import '../styles/remove-collaborator-modal.css';var remove_collaborator_modal_module_default={content:`_content_1jzrn_1`,isFullscreen:`_isFullscreen_1jzrn_1`,body:`_body_1jzrn_10`,divider:`_divider_1jzrn_17`};function RemoveCollaboratorModal({collaborator,isDesktop=!1,isOpen,isSubmitting=!1,onOpenChange,onReset,onSubmit}){let{formatMessage}=useIntl(),{email,name}=collaborator??{};return jsx(Modal,{onOpenChange:isSubmitting?noop:onOpenChange,open:isOpen,children:jsxs(Modal.Content,{className:clsx(remove_collaborator_modal_module_default.content,isDesktop&&remove_collaborator_modal_module_default.isFullscreen),onCloseAutoFocus:onReset,onEscapeKeyDown:event=>{event.stopPropagation()},onPointerDownOutside:event=>{event.preventDefault()},size:`small`,children:[jsx(Modal.Header,{children:formatMessage(messages.title)}),jsxs(Modal.Body,{className:remove_collaborator_modal_module_default.body,children:[isDesktop&&jsx(Divider,{className:remove_collaborator_modal_module_default.divider}),jsx(Text,{as:`p`,children:formatMessage(messages.bodyText,{name:email||name})})]}),jsxs(Modal.Footer,{children:[jsx(Modal.Footer.SecondaryButton,{disabled:isSubmitting,onClick:()=>onOpenChange(!1),children:formatMessage(messages.cancelButton)}),jsx(Modal.Footer.PrimaryButton,{"data-target-id":`Modal.Footer.PrimaryButton-USMRemoveCollaborator`,loading:isSubmitting,loadingAriaLabel:formatMessage(messages.loadingLabel),onClick:onSubmit,children:formatMessage(messages.okayButton)})]}),!isDesktop&&jsx(Modal.Close,{"aria-label":formatMessage(messages.closeButton),disabled:isSubmitting})]})})}export{RemoveCollaboratorModal as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import
|
|
1
|
+
import messages from"../esm/lib/components/remove-shared-link-modal/messages.js";import clsx from"clsx";import noop from"lodash/noop";import{useIntl}from"react-intl";import{Divider,Modal,Text}from"@box/blueprint-web";import{jsx,jsxs}from"react/jsx-runtime";import '../styles/remove-collaborator-modal.css';var remove_shared_link_modal_module_default={content:`_content_1jzrn_1`,isFullscreen:`_isFullscreen_1jzrn_1`,body:`_body_1jzrn_10`,divider:`_divider_1jzrn_17`};function RemoveSharedLinkModal({isDesktop=!1,isOpen,isSubmitting=!1,onOpenChange,onSubmit}){let{formatMessage}=useIntl();return jsx(Modal,{onOpenChange:isSubmitting?noop:onOpenChange,open:isOpen,children:jsxs(Modal.Content,{className:clsx(remove_shared_link_modal_module_default.content,isDesktop&&remove_shared_link_modal_module_default.isFullscreen),onEscapeKeyDown:event=>{event.stopPropagation()},onPointerDownOutside:event=>{event.preventDefault()},size:`small`,children:[jsx(Modal.Header,{children:formatMessage(messages.title)}),jsxs(Modal.Body,{className:remove_shared_link_modal_module_default.body,children:[isDesktop&&jsx(Divider,{className:remove_shared_link_modal_module_default.divider}),jsx(Text,{as:`p`,children:formatMessage(messages.bodyText)})]}),jsxs(Modal.Footer,{children:[jsx(Modal.Footer.SecondaryButton,{disabled:isSubmitting,onClick:()=>onOpenChange(!1),children:formatMessage(messages.cancelButton)}),jsx(Modal.Footer.PrimaryButton,{"data-target-id":`Modal.Footer.PrimaryButton-USMRemoveSharedLink`,loading:isSubmitting,loadingAriaLabel:formatMessage(messages.loadingLabel),onClick:onSubmit,children:formatMessage(messages.okayButton)})]}),!isDesktop&&jsx(Modal.Close,{"aria-label":formatMessage(messages.closeButton),disabled:isSubmitting})]})})}export{RemoveSharedLinkModal as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{useUnifiedShareModalContext}from"../esm/lib/contexts/unified-share-modal-context.js";import{useSharedLinkSettingsContext}from"../esm/lib/contexts/shared-link-settings-context.js";import{t as ClassificationStatus}from"./classification-status.js";import messages from"../esm/lib/components/shared-link-settings-modal/messages.js";import{SharedLinkSettings}from"../esm/lib/components/shared-link-settings-modal/shared-link-settings.js";import{useEffect,useState}from"react";import clsx from"clsx";import{useIntl}from"react-intl";import{Divider,LoadingIndicator,Modal}from"@box/blueprint-web";import{jsx,jsxs}from"react/jsx-runtime";import '../styles/shared-link-settings-modal.css';var shared_link_settings_modal_module_default={content:`_content_v2gl6_1`,isFullscreen:`_isFullscreen_v2gl6_4`,body:`_body_v2gl6_13`,title:`_title_v2gl6_23`,form:`_form_v2gl6_43`,isLoading:`_isLoading_v2gl6_50`,loading:`_loading_v2gl6_54`,divider:`_divider_v2gl6_62`};function SharedLinkSettingsModal({isOpen,onOpenChange}){let{formatMessage}=useIntl(),{eventService,isSubmitting,variant}=useUnifiedShareModalContext(),{onSharedLinkSettingsClose,onSharedLinkSettingsLoad}=eventService,isDesktop=variant===`desktop`,{resetForm,setContainerRef,submitForm}=useSharedLinkSettingsContext(),[isLoading,setIsLoading]=useState(!!onSharedLinkSettingsLoad);useEffect(()=>{(async()=>{onSharedLinkSettingsLoad&&(
|
|
1
|
+
import{useUnifiedShareModalContext}from"../esm/lib/contexts/unified-share-modal-context.js";import{useSharedLinkSettingsContext}from"../esm/lib/contexts/shared-link-settings-context.js";import{t as ClassificationStatus}from"./classification-status.js";import messages from"../esm/lib/components/shared-link-settings-modal/messages.js";import{SharedLinkSettings}from"../esm/lib/components/shared-link-settings-modal/shared-link-settings.js";import{useEffect,useState}from"react";import clsx from"clsx";import{useIntl}from"react-intl";import{Divider,LoadingIndicator,Modal}from"@box/blueprint-web";import{jsx,jsxs}from"react/jsx-runtime";import '../styles/shared-link-settings-modal.css';var shared_link_settings_modal_module_default={content:`_content_v2gl6_1`,isFullscreen:`_isFullscreen_v2gl6_4`,body:`_body_v2gl6_13`,title:`_title_v2gl6_23`,form:`_form_v2gl6_43`,isLoading:`_isLoading_v2gl6_50`,loading:`_loading_v2gl6_54`,divider:`_divider_v2gl6_62`};function SharedLinkSettingsModal({isOpen,onOpenChange}){let{formatMessage}=useIntl(),{eventService,isSubmitting,variant,views}=useUnifiedShareModalContext(),{onSharedLinkSettingsClose,onSharedLinkSettingsLoad}=eventService,isDesktop=variant===`desktop`,isLoadable=views.includes(`shared-link-settings`),{resetForm,setContainerRef,submitForm}=useSharedLinkSettingsContext(),[isLoading,setIsLoading]=useState(!!onSharedLinkSettingsLoad);useEffect(()=>{(async()=>{onSharedLinkSettingsLoad&&(isLoadable&&await onSharedLinkSettingsLoad(),setIsLoading(!isLoadable))})()},[isLoadable,onSharedLinkSettingsLoad]);let handleCancel=()=>{isSubmitting||(resetForm(),onSharedLinkSettingsClose&&onSharedLinkSettingsClose(),onOpenChange(!1))};return jsx(Modal,{onOpenChange:handleCancel,open:isOpen,children:jsxs(Modal.Content,{ref:setContainerRef,className:clsx(shared_link_settings_modal_module_default.content,isDesktop&&shared_link_settings_modal_module_default.isFullscreen),onEscapeKeyDown:event=>{event.stopPropagation()},onPointerDownOutside:event=>{event.preventDefault()},size:`medium`,children:[jsxs(Modal.Header,{children:[jsx(`div`,{className:shared_link_settings_modal_module_default.title,children:formatMessage(messages.title)}),jsx(ClassificationStatus,{})]}),jsxs(`div`,{className:clsx(shared_link_settings_modal_module_default.form),children:[isLoading&&jsx(`div`,{className:shared_link_settings_modal_module_default.loading,children:jsx(LoadingIndicator,{"aria-label":formatMessage(messages.loadingLabel),size:`large`})}),jsxs(Modal.Body,{className:clsx(shared_link_settings_modal_module_default.body,isLoading&&shared_link_settings_modal_module_default.isLoading),children:[isDesktop&&jsx(Divider,{className:shared_link_settings_modal_module_default.divider}),jsx(SharedLinkSettings,{})]}),jsxs(Modal.Footer,{className:clsx(isLoading&&shared_link_settings_modal_module_default.isLoading),children:[jsx(Modal.Footer.SecondaryButton,{disabled:isSubmitting,onClick:handleCancel,children:formatMessage(messages.cancelButton)}),jsx(Modal.Footer.PrimaryButton,{id:`usm-SharedLinkSettingsModal-primaryButton`,loading:isSubmitting,loadingAriaLabel:formatMessage(messages.loadingLabel),onClick:async()=>{await submitForm()||(resetForm(),onOpenChange(!1))},children:formatMessage(messages.saveButton)})]})]}),!isDesktop&&jsx(Modal.Close,{"aria-label":formatMessage(messages.closeButton),disabled:isSubmitting})]})})}export{SharedLinkSettingsModal as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{ManageAccessListContainer}from"./manage-access-list-container.js";export{ManageAccessListContainer};
|
|
1
|
+
import{ManageAccessListContainer}from"./manage-access-list-container.js";import{RemoveCollaboratorContainer}from"./remove-collaborator-container.js";import{RemoveSharedLinkContainer}from"./remove-shared-link-container.js";import{SharedLinkSettingsContainer}from"./shared-link-settings-container.js";import{UnifiedShareFormContainer}from"./unified-share-form-container.js";export{ManageAccessListContainer,RemoveCollaboratorContainer,RemoveSharedLinkContainer,SharedLinkSettingsContainer,UnifiedShareFormContainer};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as ManageAccessListModal}from"../../../chunks/manage-access-list-modal.js";import{useUnifiedShareModalContext}from"../contexts/unified-share-modal-context.js";import{useSharingAction}from"../hooks/use-sharing-action.js";import{jsx}from"react/jsx-runtime";function ManageAccessListContainer(){let{isOpen,isSubmitting,setView,sharedLink,sharingService,variant,view}=useUnifiedShareModalContext(),{settings={}}=sharedLink,{otpAccessEntries=[]}=settings,{updateSharedLinkOtpAccess}=sharingService,{onAction:onSubmit}=useSharingAction(updateSharedLinkOtpAccess,`update-otp-access`),handleClose=()=>{setView(null)};return
|
|
1
|
+
import{t as ManageAccessListModal}from"../../../chunks/manage-access-list-modal.js";import{useUnifiedShareModalContext}from"../contexts/unified-share-modal-context.js";import{useSharingAction}from"../hooks/use-sharing-action.js";import{useState}from"react";import{jsx}from"react/jsx-runtime";function ManageAccessListContainer(){let{isOpen,isSubmitting,setView,sharedLink,sharingService,variant,view}=useUnifiedShareModalContext(),{settings={}}=sharedLink,{otpAccessEntries=[]}=settings,{updateSharedLinkOtpAccess}=sharingService,isVisible=isOpen&&view===`manage-access-list`,[instance,setInstance]=useState(0),[isActive,setIsActive]=useState(!1),{onAction:onSubmit}=useSharingAction(updateSharedLinkOtpAccess,`update-otp-access`);isVisible!==isActive&&(setIsActive(isVisible),isVisible&&setInstance(prev=>prev+1));let handleClose=()=>{setView(null)};return jsx(ManageAccessListModal,{entries:otpAccessEntries,isDesktop:variant===`desktop`,isOpen:isVisible,isSubmitting,onOpenChange:handleClose,onSubmit:async entries=>{await onSubmit(entries),handleClose()}},instance)}export{ManageAccessListContainer};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as RemoveCollaboratorModal}from"../../../chunks/remove-collaborator-modal.js";import{useUnifiedShareModalContext}from"../contexts/unified-share-modal-context.js";import{useSharingAction}from"../hooks/use-sharing-action.js";import{jsx}from"react/jsx-runtime";function RemoveCollaboratorContainer(){let{collaborator,isOpen,isSubmitting,setCollaborator,setView,sharingService,variant,view}=useUnifiedShareModalContext(),{removeCollaborator}=sharingService,{onAction:onRemove}=useSharingAction(removeCollaborator,`remove-collaborator`),handleReset=()=>{setCollaborator(null)},handleClose=()=>{setView(null)};return jsx(RemoveCollaboratorModal,{collaborator,isDesktop:variant===`desktop`,isOpen:isOpen&&view===`remove-collaborator`,isSubmitting,onOpenChange:handleClose,onReset:handleReset,onSubmit:async()=>{await onRemove(collaborator),handleClose()}})}export{RemoveCollaboratorContainer};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as RemoveSharedLinkModal}from"../../../chunks/remove-shared-link-modal.js";import{useUnifiedShareModalContext}from"../contexts/unified-share-modal-context.js";import{useSharingAction}from"../hooks/use-sharing-action.js";import{jsx}from"react/jsx-runtime";function RemoveSharedLinkContainer(){let{isOpen,isSubmitting,setView,sharingService,variant,view}=useUnifiedShareModalContext(),{deleteSharedLink}=sharingService,{onAction:onDelete}=useSharingAction(deleteSharedLink,`delete-shared-link`),handleClose=()=>{setView(null)};return jsx(RemoveSharedLinkModal,{isDesktop:variant===`desktop`,isOpen:isOpen&&view===`remove-shared-link`,isSubmitting,onOpenChange:handleClose,onSubmit:async()=>{await onDelete(),handleClose()}})}export{RemoveSharedLinkContainer};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useUnifiedShareModalContext}from"../contexts/unified-share-modal-context.js";import{SharedLinkSettingsProvider}from"../contexts/shared-link-settings-context.js";import{t as SharedLinkSettingsModal}from"../../../chunks/shared-link-settings-modal.js";import{jsx}from"react/jsx-runtime";function SharedLinkSettingsContainer(){let{isOpen,setView,view}=useUnifiedShareModalContext();return jsx(SharedLinkSettingsProvider,{children:jsx(SharedLinkSettingsModal,{isOpen:isOpen&&view===`shared-link-settings`,onOpenChange:()=>setView(null)})})}export{SharedLinkSettingsContainer};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useUnifiedShareModalContext}from"../contexts/unified-share-modal-context.js";import{UnifiedShareFormProvider}from"../contexts/unified-share-form-context.js";import{t as UnifiedShareFormModal}from"../../../chunks/unified-share-form-modal.js";import{jsx}from"react/jsx-runtime";function UnifiedShareFormContainer({children}){let{isOpen,onOpenChange,view}=useUnifiedShareModalContext();return jsx(UnifiedShareFormProvider,{children:jsx(UnifiedShareFormModal,{isOpen:isOpen&&view===`unified-share-form`,onOpenChange,children})})}export{UnifiedShareFormContainer};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{OTP_MODE}from"../constants.js";import{formatDateFromTimestampToCalendarDate}from"../utils/date.js";import{useUnifiedShareModalContext}from"./unified-share-modal-context.js";import{useLinkSettingsForm}from"../hooks/use-link-settings-form.js";import{createContext,useContext,useMemo,useState}from"react";import{jsx}from"react/jsx-runtime";var SharedLinkSettingsContext=createContext(null),useSharedLinkSettingsContext=()=>{let context=useContext(SharedLinkSettingsContext);if(!context)throw Error(`useSharedLinkSettingsContext must be used with SharedLinkSettingsProvider`);return context},SharedLinkSettingsProvider=({children})=>{let{sharedLink}=useUnifiedShareModalContext(),{expiresAt=0,settings={},vanityName=``}=sharedLink,{isDownloadEnabled,isPasswordEnabled,otpMode=OTP_MODE.NONE}=settings,[containerRef,setContainerRef]=useState(null),initialFormData=useMemo(()=>{
|
|
1
|
+
import{OTP_MODE}from"../constants.js";import{formatDateFromTimestampToCalendarDate}from"../utils/date.js";import{useUnifiedShareModalContext}from"./unified-share-modal-context.js";import{useLinkSettingsForm}from"../hooks/use-link-settings-form.js";import{createContext,useContext,useMemo,useState}from"react";import{jsx}from"react/jsx-runtime";var SharedLinkSettingsContext=createContext(null),useSharedLinkSettingsContext=()=>{let context=useContext(SharedLinkSettingsContext);if(!context)throw Error(`useSharedLinkSettingsContext must be used with SharedLinkSettingsProvider`);return context},SharedLinkSettingsProvider=({children})=>{let{sharedLink}=useUnifiedShareModalContext(),{expiresAt=0,settings={},vanityName=``}=sharedLink,{isDownloadEnabled,isPasswordEnabled,otpMode=OTP_MODE.NONE}=settings,[containerRef,setContainerRef]=useState(null),initialFormData=useMemo(()=>({expiration:expiresAt?formatDateFromTimestampToCalendarDate(expiresAt):null,isDownloadEnabled:!!isDownloadEnabled,isExpirationEnabled:!!expiresAt,isOtpEnabled:otpMode!==OTP_MODE.NONE,isPasswordEnabled:!!isPasswordEnabled,isVanityNameEnabled:!!vanityName,otpMode,password:``,vanityName}),[expiresAt,isDownloadEnabled,isPasswordEnabled,otpMode,vanityName]),{errors,formData,onFormReset,onFormSubmit,setFieldError,setFieldValue,validatePassword}=useLinkSettingsForm(initialFormData),contextValue=useMemo(()=>({containerRef,errors,formData,initialFormData,resetForm:onFormReset,setContainerRef,setFieldError,setFieldValue,submitForm:onFormSubmit,validatePassword}),[containerRef,errors,formData,initialFormData,onFormReset,onFormSubmit,setFieldError,setFieldValue,validatePassword]);return jsx(SharedLinkSettingsContext.Provider,{value:contextValue,children})};export{SharedLinkSettingsContext,SharedLinkSettingsProvider,useSharedLinkSettingsContext};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{DEFAULT_COLLABORATION_ROLES,DEFAULT_CONFIGURATION,DEFAULT_VIEW}from"../constants.js";import{createContext,useCallback,useContext,useEffect,useMemo,useState}from"react";import{jsx}from"react/jsx-runtime";var UnifiedShareModalContext=createContext(null),useUnifiedShareModalContext=()=>{let context=useContext(UnifiedShareModalContext);if(!context)throw Error(`useUnifiedShareModalContext must be used with UnifiedShareModalContext.Provider`);return context},UnifiedShareModalProvider=({children,collaborationAccess,collaborationNotices,collaborationRoles,collaborators,config,contactService,currentUser,eventService,initialContacts,invitationFormNotices,isFetching,isOpen,isSubmitting,item,onOpenChange,sharedLink,sharedLinkNotices,sharingService,suggestedCollaborators,variant})=>{let[collaborator,setCollaborator]=useState(null),[isLoading,setIsLoading]=useState(!1),[views,setViews]=useState([DEFAULT_VIEW]),setView=useCallback(view=>{setViews(current=>
|
|
1
|
+
import{DEFAULT_COLLABORATION_ROLES,DEFAULT_CONFIGURATION,DEFAULT_VIEW}from"../constants.js";import{createContext,useCallback,useContext,useEffect,useMemo,useState}from"react";import{jsx}from"react/jsx-runtime";var UnifiedShareModalContext=createContext(null),useUnifiedShareModalContext=()=>{let context=useContext(UnifiedShareModalContext);if(!context)throw Error(`useUnifiedShareModalContext must be used with UnifiedShareModalContext.Provider`);return context},UnifiedShareModalProvider=({children,collaborationAccess,collaborationNotices,collaborationRoles,collaborators,config,contactService,currentUser,eventService,initialContacts,invitationFormNotices,isFetching,isOpen,isSubmitting,item,onOpenChange,sharedLink,sharedLinkNotices,sharingService,suggestedCollaborators,variant})=>{let[collaborator,setCollaborator]=useState(null),[isLoading,setIsLoading]=useState(!1),[views,setViews]=useState([DEFAULT_VIEW]),setView=useCallback(view=>{setViews(current=>view?[view,...current]:current.slice(1))},[]);useEffect(()=>{isOpen||(setIsLoading(!1),setViews([DEFAULT_VIEW]))},[isOpen,setViews]);let contextValue=useMemo(()=>({collaborationAccess,collaborationNotices,collaborationRoles:collaborationRoles??DEFAULT_COLLABORATION_ROLES,collaborator,collaborators:collaborators??[],config:{...DEFAULT_CONFIGURATION,...config},contactService:contactService??{},currentUser:currentUser??{id:``},eventService:eventService??{},initialContacts:initialContacts??[],invitationFormNotices,isFetching,isOpen,isSubmitting:isSubmitting??isLoading,item,onOpenChange,setCollaborator,setIsLoading,setView,sharedLink:sharedLink??{url:``},sharedLinkNotices,sharingService:sharingService??{},suggestedCollaborators:suggestedCollaborators??[],variant,view:views[0],views}),[collaborationAccess,collaborationNotices,collaborationRoles,collaborator,collaborators,config,contactService,currentUser,eventService,initialContacts,invitationFormNotices,isFetching,isLoading,isOpen,isSubmitting,item,onOpenChange,setView,sharedLink,sharedLinkNotices,sharingService,suggestedCollaborators,variant,views]);return jsx(UnifiedShareModalContext.Provider,{value:contextValue,children})};export{UnifiedShareModalContext,UnifiedShareModalProvider,useUnifiedShareModalContext};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{UnifiedShareModalProvider}from"./contexts/unified-share-modal-context.js";import{
|
|
1
|
+
import{UnifiedShareModalProvider}from"./contexts/unified-share-modal-context.js";import{ManageAccessListContainer}from"./containers/manage-access-list-container.js";import{RemoveCollaboratorContainer}from"./containers/remove-collaborator-container.js";import{RemoveSharedLinkContainer}from"./containers/remove-shared-link-container.js";import{SharedLinkSettingsContainer}from"./containers/shared-link-settings-container.js";import{UnifiedShareFormContainer}from"./containers/unified-share-form-container.js";import{useCallback,useEffect,useState}from"react";import{jsx,jsxs}from"react/jsx-runtime";function UnifiedShareModal({children,collaborationAccess,collaborationNotices,collaborationRoles,collaborators,config,contactService,currentUser,eventService,initialContacts,invitationFormNotices,isFetching,isOpen:isControlledOpen,isSubmitting,item,onLoad,onOpenChange,sharedLink,sharedLinkNotices,sharingService,suggestedCollaborators,variant=`modal`}){let[isOpen,setIsOpen]=useState(isControlledOpen??(!children||variant===`desktop`)),[isLoading,setIsLoading]=useState(!!onLoad);useEffect(()=>{isControlledOpen!==void 0&&setIsOpen(isControlledOpen)},[isControlledOpen]),useEffect(()=>{(async()=>{onLoad&&(isOpen&&await onLoad(),setIsLoading(!isOpen))})()},[isOpen,onLoad]);let handleOpenChange=useCallback(open=>{isControlledOpen===void 0&&variant!==`desktop`&&setIsOpen(open),onOpenChange&&onOpenChange(open)},[isControlledOpen,onOpenChange,variant]);return jsxs(UnifiedShareModalProvider,{collaborationAccess,collaborationNotices,collaborationRoles,collaborators,config,contactService,currentUser,eventService,initialContacts,invitationFormNotices,isFetching:isFetching??isLoading,isOpen,isSubmitting,item,onOpenChange:handleOpenChange,sharedLink,sharedLinkNotices,sharingService,suggestedCollaborators,variant,children:[jsx(UnifiedShareFormContainer,{children}),jsx(SharedLinkSettingsContainer,{}),jsx(RemoveSharedLinkContainer,{}),jsx(RemoveCollaboratorContainer,{}),jsx(ManageAccessListContainer,{})]})}export{UnifiedShareModal};
|
|
@@ -1,5 +1,11 @@
|
|
|
1
|
+
import { Collaborator } from '../../types';
|
|
1
2
|
export interface RemoveCollaboratorModalProps {
|
|
3
|
+
collaborator: Collaborator;
|
|
4
|
+
isDesktop?: boolean;
|
|
2
5
|
isOpen: boolean;
|
|
6
|
+
isSubmitting?: boolean;
|
|
3
7
|
onOpenChange: (open: boolean) => void;
|
|
8
|
+
onReset?: () => void;
|
|
9
|
+
onSubmit: () => void;
|
|
4
10
|
}
|
|
5
|
-
export declare function RemoveCollaboratorModal({ isOpen, onOpenChange }: RemoveCollaboratorModalProps): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export declare function RemoveCollaboratorModal({ collaborator, isDesktop, isOpen, isSubmitting, onOpenChange, onReset, onSubmit, }: RemoveCollaboratorModalProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const RemoveCollaboratorModalTemplate: (props: Partial<
|
|
1
|
+
import { RemoveCollaboratorModalProps } from '../remove-collaborator-modal';
|
|
2
|
+
export declare const RemoveCollaboratorModalTemplate: (props: Partial<RemoveCollaboratorModalProps>) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
export interface RemoveSharedLinkModalProps {
|
|
2
|
+
isDesktop?: boolean;
|
|
2
3
|
isOpen: boolean;
|
|
4
|
+
isSubmitting?: boolean;
|
|
3
5
|
onOpenChange: (open: boolean) => void;
|
|
6
|
+
onSubmit: () => void;
|
|
4
7
|
}
|
|
5
|
-
export declare function RemoveSharedLinkModal({ isOpen, onOpenChange }: RemoveSharedLinkModalProps): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export declare function RemoveSharedLinkModal({ isDesktop, isOpen, isSubmitting, onOpenChange, onSubmit, }: RemoveSharedLinkModalProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const RemoveSharedLinkModalTemplate: (props: Partial<
|
|
1
|
+
import { RemoveSharedLinkModalProps } from '../remove-shared-link-modal';
|
|
2
|
+
export declare const RemoveSharedLinkModalTemplate: (props: Partial<RemoveSharedLinkModalProps>) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function RemoveCollaboratorContainer(): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function RemoveSharedLinkContainer(): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function SharedLinkSettingsContainer(): import("react/jsx-runtime").JSX.Element;
|
|
@@ -9,7 +9,7 @@ export interface UnifiedShareModalContextValue {
|
|
|
9
9
|
collaborators: Collaborator[];
|
|
10
10
|
config: Configuration;
|
|
11
11
|
contactService: ContactService;
|
|
12
|
-
currentUser:
|
|
12
|
+
currentUser: User;
|
|
13
13
|
eventService: EventService;
|
|
14
14
|
initialContacts: UserContactType[];
|
|
15
15
|
invitationFormNotices?: ReactElement | ReactElement[];
|
|
@@ -21,12 +21,13 @@ export interface UnifiedShareModalContextValue {
|
|
|
21
21
|
setCollaborator: Dispatch<SetStateAction<Collaborator | null>>;
|
|
22
22
|
setIsLoading: Dispatch<SetStateAction<boolean>>;
|
|
23
23
|
setView: (view: ViewType | null) => void;
|
|
24
|
-
sharedLink:
|
|
24
|
+
sharedLink: SharedLink;
|
|
25
25
|
sharedLinkNotices?: ReactElement | ReactElement[];
|
|
26
26
|
sharingService: SharingService;
|
|
27
27
|
suggestedCollaborators?: SuggestedCollaborator[];
|
|
28
28
|
variant: VariantType;
|
|
29
29
|
view: ViewType;
|
|
30
|
+
views: ViewType[];
|
|
30
31
|
}
|
|
31
32
|
export declare const UnifiedShareModalContext: import('react').Context<UnifiedShareModalContextValue>;
|
|
32
33
|
export declare const useUnifiedShareModalContext: () => UnifiedShareModalContextValue;
|
package/package.json
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@box/unified-share-modal",
|
|
3
|
-
"version": "3.6.
|
|
3
|
+
"version": "3.6.2",
|
|
4
4
|
"license": "SEE LICENSE IN LICENSE",
|
|
5
5
|
"peerDependencies": {
|
|
6
|
-
"@box/blueprint-web": "^18.
|
|
7
|
-
"@box/blueprint-web-assets": "^5.12.
|
|
8
|
-
"@box/copy-input": "^2.3.
|
|
9
|
-
"@box/user-selector": "^3.1.
|
|
6
|
+
"@box/blueprint-web": "^18.5.0",
|
|
7
|
+
"@box/blueprint-web-assets": "^5.12.4",
|
|
8
|
+
"@box/copy-input": "^2.3.21",
|
|
9
|
+
"@box/user-selector": "^3.1.21",
|
|
10
10
|
"lodash": "^4.17.15",
|
|
11
11
|
"react": "^18.0.0",
|
|
12
12
|
"react-dom": "^18.0.0",
|
|
13
13
|
"react-intl": "^6.4.2"
|
|
14
14
|
},
|
|
15
15
|
"devDependencies": {
|
|
16
|
-
"@box/blueprint-web": "^18.
|
|
17
|
-
"@box/blueprint-web-assets": "^5.12.
|
|
18
|
-
"@box/copy-input": "^2.3.
|
|
16
|
+
"@box/blueprint-web": "^18.5.0",
|
|
17
|
+
"@box/blueprint-web-assets": "^5.12.4",
|
|
18
|
+
"@box/copy-input": "^2.3.21",
|
|
19
19
|
"@box/eslint-plugin-blueprint": "2.2.29",
|
|
20
|
-
"@box/storybook-utils": "1.4.
|
|
20
|
+
"@box/storybook-utils": "1.4.16",
|
|
21
21
|
"react-intl": "^6.4.2"
|
|
22
22
|
},
|
|
23
23
|
"publishConfig": {
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useUnifiedShareModalContext}from"./contexts/unified-share-modal-context.js";import{UnifiedShareFormProvider}from"./contexts/unified-share-form-context.js";import{SharedLinkSettingsProvider}from"./contexts/shared-link-settings-context.js";import{t as RemoveCollaboratorModal}from"../../chunks/remove-collaborator-modal.js";import{t as RemoveSharedLinkModal}from"../../chunks/remove-shared-link-modal.js";import{t as SharedLinkSettingsModal}from"../../chunks/shared-link-settings-modal.js";import{t as UnifiedShareFormModal}from"../../chunks/unified-share-form-modal.js";import{ManageAccessListContainer}from"./containers/manage-access-list-container.js";import{Fragment,jsx,jsxs}from"react/jsx-runtime";function UnifiedShareBase({children}){let{isOpen,onOpenChange,setView,view}=useUnifiedShareModalContext();return jsxs(Fragment,{children:[jsx(UnifiedShareFormProvider,{children:jsx(UnifiedShareFormModal,{isOpen:isOpen&&view===`unified-share-form`,onOpenChange,children})}),jsx(SharedLinkSettingsProvider,{children:jsx(SharedLinkSettingsModal,{isOpen:isOpen&&view===`shared-link-settings`,onOpenChange:()=>setView(null)})}),jsx(RemoveSharedLinkModal,{isOpen:isOpen&&view===`remove-shared-link`,onOpenChange:()=>setView(null)}),jsx(RemoveCollaboratorModal,{isOpen:isOpen&&view===`remove-collaborator`,onOpenChange:()=>setView(null)}),jsx(ManageAccessListContainer,{})]})}export{UnifiedShareBase};
|