synapse-react-client 3.1.37 → 3.1.38

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.
@@ -34258,7 +34258,7 @@ Please use another name.` : (0, _utils.formatMuiErrorMessage)(18));
34258
34258
  return x3 === y2 && (x3 !== 0 || 1 / x3 === 1 / y2) || x3 !== x3 && y2 !== y2;
34259
34259
  }
34260
34260
  var objectIs = typeof Object.is === "function" ? Object.is : is2;
34261
- var useState153 = React666.useState, useEffect118 = React666.useEffect, useLayoutEffect4 = React666.useLayoutEffect, useDebugValue5 = React666.useDebugValue;
34261
+ var useState154 = React666.useState, useEffect119 = React666.useEffect, useLayoutEffect4 = React666.useLayoutEffect, useDebugValue5 = React666.useDebugValue;
34262
34262
  var didWarnOld18Alpha = false;
34263
34263
  var didWarnUncachedGetSnapshot = false;
34264
34264
  function useSyncExternalStore2(subscribe, getSnapshot, getServerSnapshot) {
@@ -34280,7 +34280,7 @@ Please use another name.` : (0, _utils.formatMuiErrorMessage)(18));
34280
34280
  }
34281
34281
  }
34282
34282
  }
34283
- var _useState = useState153({
34283
+ var _useState = useState154({
34284
34284
  inst: {
34285
34285
  value,
34286
34286
  getSnapshot
@@ -34295,7 +34295,7 @@ Please use another name.` : (0, _utils.formatMuiErrorMessage)(18));
34295
34295
  });
34296
34296
  }
34297
34297
  }, [subscribe, value, getSnapshot]);
34298
- useEffect118(function() {
34298
+ useEffect119(function() {
34299
34299
  if (checkIfSnapshotChanged(inst)) {
34300
34300
  forceUpdate({
34301
34301
  inst
@@ -34368,7 +34368,7 @@ Please use another name.` : (0, _utils.formatMuiErrorMessage)(18));
34368
34368
  }
34369
34369
  var objectIs = typeof Object.is === "function" ? Object.is : is2;
34370
34370
  var useSyncExternalStore2 = shim.useSyncExternalStore;
34371
- var useRef69 = React666.useRef, useEffect118 = React666.useEffect, useMemo68 = React666.useMemo, useDebugValue5 = React666.useDebugValue;
34371
+ var useRef69 = React666.useRef, useEffect119 = React666.useEffect, useMemo68 = React666.useMemo, useDebugValue5 = React666.useDebugValue;
34372
34372
  function useSyncExternalStoreWithSelector2(subscribe, getSnapshot, getServerSnapshot, selector, isEqual4) {
34373
34373
  var instRef = useRef69(null);
34374
34374
  var inst;
@@ -34425,7 +34425,7 @@ Please use another name.` : (0, _utils.formatMuiErrorMessage)(18));
34425
34425
  return [getSnapshotWithSelector, getServerSnapshotWithSelector];
34426
34426
  }, [getSnapshot, getServerSnapshot, selector, isEqual4]), getSelection2 = _useMemo[0], getServerSelection = _useMemo[1];
34427
34427
  var value = useSyncExternalStore2(subscribe, getSelection2, getServerSelection);
34428
- useEffect118(function() {
34428
+ useEffect119(function() {
34429
34429
  inst.hasValue = true;
34430
34430
  inst.value = value;
34431
34431
  }, [value]);
@@ -59546,7 +59546,7 @@ Please use another name.` : (0, _utils.formatMuiErrorMessage)(18));
59546
59546
  "package.json"(exports2, module2) {
59547
59547
  module2.exports = {
59548
59548
  name: "synapse-react-client",
59549
- version: "3.1.37",
59549
+ version: "3.1.38",
59550
59550
  private: false,
59551
59551
  main: "./dist/index.js",
59552
59552
  module: "./dist/index.mjs",
@@ -133468,6 +133468,7 @@ ${e3.message}`);
133468
133468
  /* @__PURE__ */ import_react173.default.createElement(IconSvg_default, { icon: "clear" })
133469
133469
  ),
133470
133470
  // Renewal/Revoke data access, only display if isRenewal is true
133471
+ // TODO: It's possible to that the accessors list is in an illegal state with no way to recover -- see PLFM-7893
133471
133472
  isRenewal && (user == null ? void 0 : user.ownerId) !== ac.userId && ac.type !== "GAIN_ACCESS" /* GAIN_ACCESS */ && /* @__PURE__ */ import_react173.default.createElement(import_react173.default.Fragment, null, /* @__PURE__ */ import_react173.default.createElement(
133472
133473
  RadioGroup3,
133473
133474
  {
@@ -133500,7 +133501,8 @@ ${e3.message}`);
133500
133501
  id: id2,
133501
133502
  buttonProps = { variant: "contained" },
133502
133503
  label = "Browse...",
133503
- uploadCallback
133504
+ onUploadStart,
133505
+ onComplete
133504
133506
  } = props;
133505
133507
  const { accessToken } = useSynapseContext();
133506
133508
  const hiddenFileInput = import_react174.default.useRef(null);
@@ -133512,6 +133514,9 @@ ${e3.message}`);
133512
133514
  };
133513
133515
  const changeHandler = (e3) => __async(void 0, null, function* () {
133514
133516
  if (e3.target.files && e3.target.files.length > 0) {
133517
+ if (onUploadStart) {
133518
+ onUploadStart();
133519
+ }
133515
133520
  const file = e3.target.files[0];
133516
133521
  try {
133517
133522
  const resp = yield uploadFile(
@@ -133519,16 +133524,16 @@ ${e3.message}`);
133519
133524
  file.name,
133520
133525
  file
133521
133526
  );
133522
- if (uploadCallback) {
133523
- uploadCallback({
133527
+ if (onComplete) {
133528
+ onComplete({
133524
133529
  success: true,
133525
133530
  resp
133526
133531
  });
133527
133532
  }
133528
133533
  } catch (e4) {
133529
133534
  console.log("FileUpload: fail to upload file", e4);
133530
- if (uploadCallback) {
133531
- uploadCallback({
133535
+ if (onComplete) {
133536
+ onComplete({
133532
133537
  success: false,
133533
133538
  error: e4
133534
133539
  });
@@ -133564,16 +133569,12 @@ ${e3.message}`);
133564
133569
  includeFileHandles: false,
133565
133570
  includePreviewPreSignedURLs: false
133566
133571
  };
133567
- try {
133568
- const file = yield getFiles(batchFileRequest, accessToken);
133569
- const preSignedURL = file.requestedFiles[0].preSignedURL;
133570
- if (!preSignedURL) {
133571
- console.log("Fail to get file download link");
133572
- } else {
133573
- window.open(preSignedURL);
133574
- }
133575
- } catch (e3) {
133576
- console.log("Fail to get file download link", e3);
133572
+ const file = yield getFiles(batchFileRequest, accessToken);
133573
+ const preSignedURL = file.requestedFiles[0].preSignedURL;
133574
+ if (!preSignedURL) {
133575
+ console.log("Fail to get file download link");
133576
+ } else {
133577
+ window.open(preSignedURL);
133577
133578
  }
133578
133579
  });
133579
133580
  return /* @__PURE__ */ import_react175.default.createElement(
@@ -133597,8 +133598,10 @@ ${e3.message}`);
133597
133598
  id: id2,
133598
133599
  documentName,
133599
133600
  isMultiFileUpload = false,
133600
- onClearAttachment
133601
+ onClearAttachment,
133602
+ isLoading = false
133601
133603
  } = props;
133604
+ const [isUploading, setIsUploading] = (0, import_react176.useState)(false);
133602
133605
  const { data: fileData } = useGetFileBatch(
133603
133606
  {
133604
133607
  includeFileHandles: true,
@@ -133623,9 +133626,14 @@ ${e3.message}`);
133623
133626
  FileUpload_default,
133624
133627
  {
133625
133628
  id: `${id2}-upload`,
133626
- uploadCallback,
133629
+ onUploadStart: () => setIsUploading(true),
133630
+ onComplete: (res) => {
133631
+ setIsUploading(false);
133632
+ uploadCallback(res);
133633
+ },
133627
133634
  label: `Upload ${documentName}`,
133628
133635
  buttonProps: {
133636
+ disabled: isLoading,
133629
133637
  variant: "outlined",
133630
133638
  endIcon: /* @__PURE__ */ import_react176.default.createElement(IconSvg_default, { icon: "upload", wrap: false })
133631
133639
  }
@@ -133660,7 +133668,16 @@ ${e3.message}`);
133660
133668
  },
133661
133669
  /* @__PURE__ */ import_react176.default.createElement(IconSvg_default, { icon: "clear" })
133662
133670
  ));
133663
- })
133671
+ }),
133672
+ isUploading && /* @__PURE__ */ import_react176.default.createElement(
133673
+ Button_default,
133674
+ {
133675
+ disabled: true,
133676
+ variant: "text",
133677
+ endIcon: /* @__PURE__ */ import_react176.default.createElement(IconSvg_default, { icon: "download", wrap: false })
133678
+ },
133679
+ "Uploading..."
133680
+ )
133664
133681
  );
133665
133682
  }
133666
133683
 
@@ -133710,6 +133727,22 @@ ${e3.message}`);
133710
133727
  }
133711
133728
 
133712
133729
  // src/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsFilesForm.tsx
133730
+ function AccessorRequirementHelpText(props) {
133731
+ const { managedACTAccessRequirement } = props;
133732
+ let link = "";
133733
+ let msg2 = "";
133734
+ if (managedACTAccessRequirement.isCertifiedUserRequired && managedACTAccessRequirement.isValidatedProfileRequired) {
133735
+ link = "https://help.synapse.org/docs/User-Types.2007072795.html";
133736
+ msg2 = "All data requesters must be certified users and have a validated user profile.";
133737
+ } else if (managedACTAccessRequirement.isCertifiedUserRequired) {
133738
+ link = "https://help.synapse.org/docs/User-Types.2007072795.html#UserAccountTiers-CertifiedUsers";
133739
+ msg2 = "All data requesters must be a certified user.";
133740
+ } else if (managedACTAccessRequirement.isValidatedProfileRequired) {
133741
+ link = "https://help.synapse.org/docs/User-Types.2007072795.html#UserAccountTiers-ValidatedUsers";
133742
+ msg2 = "All data requesters must have a validated user profile.";
133743
+ }
133744
+ return link && msg2 ? /* @__PURE__ */ import_react178.default.createElement(import_react178.default.Fragment, null, managedACTAccessRequirement.isDUCRequired ? /* @__PURE__ */ import_react178.default.createElement(import_react178.default.Fragment, null, "This list should match those listed on your DUC.", /* @__PURE__ */ import_react178.default.createElement("br", null)) : "", msg2, " ", /* @__PURE__ */ import_react178.default.createElement(Link_default, { href: link, target: "_blank", rel: "noreferrer" }, "Learn more")) : /* @__PURE__ */ import_react178.default.createElement(import_react178.default.Fragment, null);
133745
+ }
133713
133746
  function DataAccessRequestAccessorsFilesForm(props) {
133714
133747
  var _a;
133715
133748
  const {
@@ -133719,45 +133752,19 @@ ${e3.message}`);
133719
133752
  researchProjectId,
133720
133753
  onCancel
133721
133754
  } = props;
133722
- const { data: user } = useGetCurrentUserProfile();
133755
+ const { accessToken } = useSynapseContext();
133756
+ const isLoggedIn = Boolean(accessToken);
133757
+ const { data: user } = useGetCurrentUserProfile({ enabled: isLoggedIn });
133723
133758
  const [alert, setAlert] = (0, import_react178.useState)();
133724
- const [dataAccessRequest, setDataAccessRequest] = (0, import_react178.useState)();
133725
- useGetDataAccessRequestForUpdate(String(managedACTAccessRequirement.id), {
133726
- // We append the current user onto the accessorChanges, so we wait for that data to populate
133727
- enabled: !!user,
133759
+ const [accessorChanges, setAccessorChanges] = (0, import_react178.useState)();
133760
+ const [summaryOfUse, setSummaryOfUse] = (0, import_react178.useState)();
133761
+ const [publication, setPublication] = (0, import_react178.useState)();
133762
+ const { data: dataAccessRequest, isLoading: isLoadingGetDataAccessRequest } = useGetDataAccessRequestForUpdate(String(managedACTAccessRequirement.id), {
133763
+ enabled: isLoggedIn,
133728
133764
  // Infinite staleTime ensures this won't get re-fetched unless explicitly invalidated by the mutation
133729
133765
  staleTime: Infinity,
133730
- select: (data) => {
133731
- const isRenewal2 = data.concreteType === "org.sagebionetworks.repo.model.dataaccess.Renewal";
133732
- const currentUserWithGainAccess = {
133733
- userId: user.ownerId,
133734
- type: isRenewal2 ? "RENEW_ACCESS" /* RENEW_ACCESS */ : "GAIN_ACCESS" /* GAIN_ACCESS */
133735
- };
133736
- if (!data.accessorChanges) {
133737
- data.accessorChanges = [currentUserWithGainAccess];
133738
- } else {
133739
- data.accessorChanges = [
133740
- currentUserWithGainAccess,
133741
- ...data.accessorChanges
133742
- ];
133743
- }
133744
- const seen = /* @__PURE__ */ new Set();
133745
- data.accessorChanges = data.accessorChanges.filter((accessorChange) => {
133746
- return seen.has(accessorChange.userId) ? false : seen.add(accessorChange.userId);
133747
- });
133748
- data.researchProjectId = researchProjectId;
133749
- return data;
133750
- },
133751
- onSuccess: (data) => {
133752
- setAlert(void 0);
133753
- setDataAccessRequest(data);
133754
- },
133755
- onError: (err) => {
133756
- setAlert({
133757
- key: "error",
133758
- message: err.reason
133759
- });
133760
- }
133766
+ // This call should never fail, so if we run into an error, throwing to an error boundary is acceptable
133767
+ useErrorBoundary: true
133761
133768
  });
133762
133769
  const isRenewal = (dataAccessRequest == null ? void 0 : dataAccessRequest.concreteType) === "org.sagebionetworks.repo.model.dataaccess.Renewal";
133763
133770
  function onError(e3) {
@@ -133767,19 +133774,87 @@ ${e3.message}`);
133767
133774
  message: getErrorMessage(e3.reason)
133768
133775
  });
133769
133776
  }
133770
- const { mutate: submit } = useSubmitDataAccessRequest({
133777
+ const { mutate: submit, isLoading: isLoadingSubmitDataAccessRequest } = useSubmitDataAccessRequest({
133771
133778
  onSuccess: () => {
133772
133779
  onSubmissionCreated();
133773
133780
  },
133774
133781
  onError
133775
133782
  });
133776
- const { mutateAsync: updateRequestAsync } = useUpdateDataAccessRequest({
133783
+ const {
133784
+ mutateAsync: updateRequestAsync,
133785
+ isLoading: isLoadingUpdateDataAccessRequest
133786
+ } = useUpdateDataAccessRequest({
133777
133787
  onError
133778
133788
  });
133789
+ const isLoading = isLoadingGetDataAccessRequest || isLoadingUpdateDataAccessRequest || isLoadingSubmitDataAccessRequest;
133790
+ (0, import_react178.useEffect)(() => {
133791
+ if (dataAccessRequest && user) {
133792
+ let shouldUpdate = false;
133793
+ if (!dataAccessRequest.researchProjectId) {
133794
+ dataAccessRequest.researchProjectId = researchProjectId;
133795
+ shouldUpdate = true;
133796
+ }
133797
+ const currentUserWithGainAccess = {
133798
+ userId: user.ownerId,
133799
+ type: isRenewal ? "RENEW_ACCESS" /* RENEW_ACCESS */ : "GAIN_ACCESS" /* GAIN_ACCESS */
133800
+ };
133801
+ if (!dataAccessRequest.accessorChanges || !dataAccessRequest.accessorChanges.find(
133802
+ (item) => deepEquals(item, currentUserWithGainAccess)
133803
+ )) {
133804
+ dataAccessRequest.accessorChanges = [
133805
+ currentUserWithGainAccess,
133806
+ ...dataAccessRequest.accessorChanges || []
133807
+ ];
133808
+ shouldUpdate = true;
133809
+ }
133810
+ const seen = /* @__PURE__ */ new Set();
133811
+ const uniqueAccessorChanges = dataAccessRequest.accessorChanges.filter(
133812
+ (accessorChange) => {
133813
+ return seen.has(accessorChange.userId) ? false : seen.add(accessorChange.userId);
133814
+ }
133815
+ );
133816
+ if (uniqueAccessorChanges.length !== dataAccessRequest.accessorChanges.length) {
133817
+ dataAccessRequest.accessorChanges = uniqueAccessorChanges;
133818
+ shouldUpdate = true;
133819
+ }
133820
+ if (shouldUpdate) {
133821
+ updateRequestAsync(dataAccessRequest);
133822
+ }
133823
+ }
133824
+ }, [
133825
+ dataAccessRequest,
133826
+ isRenewal,
133827
+ researchProjectId,
133828
+ updateRequestAsync,
133829
+ user
133830
+ ]);
133831
+ (0, import_react178.useEffect)(() => {
133832
+ if (dataAccessRequest) {
133833
+ if (dataAccessRequest.accessorChanges && accessorChanges == void 0) {
133834
+ setAccessorChanges(dataAccessRequest.accessorChanges);
133835
+ }
133836
+ if (isRenewal && dataAccessRequest.publication && publication == void 0) {
133837
+ setPublication(dataAccessRequest.publication);
133838
+ }
133839
+ if (isRenewal && dataAccessRequest.summaryOfUse && summaryOfUse == void 0) {
133840
+ setSummaryOfUse(dataAccessRequest.summaryOfUse);
133841
+ }
133842
+ }
133843
+ }, [dataAccessRequest]);
133844
+ function getDataAccessRequestWithLocalState() {
133845
+ return __spreadProps(__spreadValues({}, dataAccessRequest), {
133846
+ // append local state to the request
133847
+ accessorChanges,
133848
+ publication,
133849
+ summaryOfUse
133850
+ });
133851
+ }
133779
133852
  function handleSubmit() {
133780
133853
  return __async(this, null, function* () {
133781
133854
  if (dataAccessRequest) {
133782
- const requestObject = yield updateRequestAsync(dataAccessRequest);
133855
+ const requestObject = yield updateRequestAsync(
133856
+ getDataAccessRequestWithLocalState()
133857
+ );
133783
133858
  submit({
133784
133859
  request: {
133785
133860
  requestId: requestObject.id,
@@ -133796,36 +133871,26 @@ ${e3.message}`);
133796
133871
  return /* @__PURE__ */ import_react178.default.createElement(import_react178.default.Fragment, null, /* @__PURE__ */ import_react178.default.createElement("strong", null, "Sorry, there is an error in submitting your request."), /* @__PURE__ */ import_react178.default.createElement("br", null), reason);
133797
133872
  };
133798
133873
  const onAccessorChange = (updater) => {
133799
- setDataAccessRequest((req) => __spreadProps(__spreadValues({}, req), {
133800
- // Copy the array so the caller doesn't have to worry about immutability
133801
- accessorChanges: [...updater(req.accessorChanges || [])]
133802
- }));
133874
+ setAccessorChanges([...updater(accessorChanges || [])]);
133803
133875
  };
133804
133876
  const onClearAttachment = (fid) => {
133805
- setDataAccessRequest((req) => {
133806
- var _a2;
133807
- if (req) {
133808
- return __spreadProps(__spreadValues({}, req), {
133809
- attachments: (_a2 = req.attachments) == null ? void 0 : _a2.filter((item) => item !== fid)
133810
- });
133811
- }
133812
- return req;
133813
- });
133877
+ var _a2;
133878
+ updateRequestAsync(__spreadProps(__spreadValues({}, dataAccessRequest), {
133879
+ attachments: (_a2 = dataAccessRequest.attachments) == null ? void 0 : _a2.filter((item) => item !== fid)
133880
+ }));
133814
133881
  };
133815
133882
  const uploadCallback = (data, context) => {
133816
133883
  if (data.resp && data.success) {
133817
133884
  const uploadResponse = data.resp;
133818
133885
  if (context === "attachments") {
133819
- setDataAccessRequest((req) => {
133820
- return __spreadProps(__spreadValues({}, req), {
133821
- attachments: [
133822
- ...req.attachments || [],
133823
- uploadResponse.fileHandleId
133824
- ]
133825
- });
133826
- });
133886
+ updateRequestAsync(__spreadProps(__spreadValues({}, dataAccessRequest), {
133887
+ attachments: [
133888
+ ...dataAccessRequest.attachments || [],
133889
+ uploadResponse.fileHandleId
133890
+ ]
133891
+ }));
133827
133892
  } else {
133828
- setDataAccessRequest((req) => __spreadProps(__spreadValues({}, req), {
133893
+ updateRequestAsync(__spreadProps(__spreadValues({}, dataAccessRequest), {
133829
133894
  [context]: uploadResponse.fileHandleId
133830
133895
  }));
133831
133896
  }
@@ -133840,45 +133905,24 @@ ${e3.message}`);
133840
133905
  });
133841
133906
  }
133842
133907
  };
133843
- const handleTextAreaInputChange = (e3, key) => {
133844
- const value = e3.target.value;
133845
- setDataAccessRequest((req) => __spreadProps(__spreadValues({}, req), {
133846
- [key]: value
133847
- }));
133848
- };
133849
- const AccessorRequirementHelpText = () => {
133850
- let link = "";
133851
- let msg2 = "";
133852
- if (managedACTAccessRequirement.isCertifiedUserRequired && managedACTAccessRequirement.isValidatedProfileRequired) {
133853
- link = "https://help.synapse.org/docs/User-Types.2007072795.html";
133854
- msg2 = "All data requesters must be certified users and have a validated user profile.";
133855
- } else if (managedACTAccessRequirement.isCertifiedUserRequired) {
133856
- link = "https://help.synapse.org/docs/User-Types.2007072795.html#UserAccountTiers-CertifiedUsers";
133857
- msg2 = "All data requesters must be a certified user.";
133858
- } else if (managedACTAccessRequirement.isValidatedProfileRequired) {
133859
- link = "https://help.synapse.org/docs/User-Types.2007072795.html#UserAccountTiers-ValidatedUsers";
133860
- msg2 = "All data requesters must have a validated user profile.";
133861
- }
133862
- return link && msg2 ? /* @__PURE__ */ import_react178.default.createElement(import_react178.default.Fragment, null, managedACTAccessRequirement.isDUCRequired ? /* @__PURE__ */ import_react178.default.createElement(import_react178.default.Fragment, null, "This list should match those listed on your DUC.", /* @__PURE__ */ import_react178.default.createElement("br", null)) : "", msg2, " ", /* @__PURE__ */ import_react178.default.createElement(Link_default, { href: link, target: "_blank", rel: "noreferrer" }, "Learn more")) : /* @__PURE__ */ import_react178.default.createElement(import_react178.default.Fragment, null);
133863
- };
133864
133908
  const ducFileHandleAssociation = (dataAccessRequest == null ? void 0 : dataAccessRequest.ducFileHandleId) ? [
133865
133909
  {
133866
133910
  fileHandleId: dataAccessRequest == null ? void 0 : dataAccessRequest.ducFileHandleId,
133867
- associateObjectType: "AccessRequirementAttachment" /* AccessRequirementAttachment */,
133868
- associateObjectId: String(managedACTAccessRequirement.id)
133911
+ associateObjectType: "DataAccessRequestAttachment" /* DataAccessRequestAttachment */,
133912
+ associateObjectId: String(dataAccessRequest.id)
133869
133913
  }
133870
133914
  ] : [];
133871
133915
  const irbFileHandleAssociation = (dataAccessRequest == null ? void 0 : dataAccessRequest.irbFileHandleId) ? [
133872
133916
  {
133873
133917
  fileHandleId: dataAccessRequest.irbFileHandleId,
133874
- associateObjectType: "AccessRequirementAttachment" /* AccessRequirementAttachment */,
133875
- associateObjectId: String(managedACTAccessRequirement.id)
133918
+ associateObjectType: "DataAccessRequestAttachment" /* DataAccessRequestAttachment */,
133919
+ associateObjectId: String(dataAccessRequest.id)
133876
133920
  }
133877
133921
  ] : [];
133878
133922
  const attachmentFileHandleAssociations = (_a = ((dataAccessRequest == null ? void 0 : dataAccessRequest.attachments) || []).map((attachmentFileHandleId) => ({
133879
133923
  fileHandleId: attachmentFileHandleId,
133880
- associateObjectType: "AccessRequirementAttachment" /* AccessRequirementAttachment */,
133881
- associateObjectId: String(managedACTAccessRequirement.id)
133924
+ associateObjectType: "DataAccessRequestAttachment" /* DataAccessRequestAttachment */,
133925
+ associateObjectId: String(dataAccessRequest.id)
133882
133926
  }))) != null ? _a : [];
133883
133927
  return /* @__PURE__ */ import_react178.default.createElement(import_react178.default.Fragment, null, /* @__PURE__ */ import_react178.default.createElement(DialogTitle_default, null, /* @__PURE__ */ import_react178.default.createElement(Stack_default, { direction: "row", alignItems: "center", gap: "5px" }, "Request Access", /* @__PURE__ */ import_react178.default.createElement(Box_default, { sx: { flexGrow: 1 } }), /* @__PURE__ */ import_react178.default.createElement(IconButton_default, { onClick: props.onHide }, /* @__PURE__ */ import_react178.default.createElement(IconSvg_default, { icon: "close", wrap: false, sx: { color: "grey.700" } })))), /* @__PURE__ */ import_react178.default.createElement(DialogContent_default, null, /* @__PURE__ */ import_react178.default.createElement(
133884
133928
  ManagedACTAccessRequirementFormWikiWrapper,
@@ -133896,13 +133940,18 @@ ${e3.message}`);
133896
133940
  onSubmit: (e3) => e3.preventDefault()
133897
133941
  },
133898
133942
  /* @__PURE__ */ import_react178.default.createElement(Typography_default, { variant: "body1", sx: { mb: 2 } }, "Please provide the information below to submit the request for access."),
133899
- dataAccessRequest && /* @__PURE__ */ import_react178.default.createElement(
133943
+ dataAccessRequest && user && /* @__PURE__ */ import_react178.default.createElement(
133900
133944
  DataAccessRequestAccessorsEditor,
133901
133945
  {
133902
- accessorChanges: dataAccessRequest.accessorChanges || [],
133946
+ accessorChanges: accessorChanges || [],
133903
133947
  onChange: onAccessorChange,
133904
133948
  isRenewal,
133905
- helpText: /* @__PURE__ */ import_react178.default.createElement(AccessorRequirementHelpText, null)
133949
+ helpText: /* @__PURE__ */ import_react178.default.createElement(
133950
+ AccessorRequirementHelpText,
133951
+ {
133952
+ managedACTAccessRequirement
133953
+ }
133954
+ )
133906
133955
  }
133907
133956
  ),
133908
133957
  ((managedACTAccessRequirement == null ? void 0 : managedACTAccessRequirement.isDUCRequired) || (managedACTAccessRequirement == null ? void 0 : managedACTAccessRequirement.isIRBApprovalRequired) || (managedACTAccessRequirement == null ? void 0 : managedACTAccessRequirement.areOtherAttachmentsRequired) || isRenewal) && /* @__PURE__ */ import_react178.default.createElement(Divider_default, { sx: { my: 4 } }),
@@ -133918,56 +133967,61 @@ ${e3.message}`);
133918
133967
  },
133919
133968
  downloadButtonText: "Download DUC Template"
133920
133969
  }
133921
- ), /* @__PURE__ */ import_react178.default.createElement(Typography_default, { variant: "headline3", sx: { mt: 4, mb: 2 } }, "Fill out and upload a Data Use Certificate"), /* @__PURE__ */ import_react178.default.createElement(Typography_default, { variant: "body1", sx: { my: 2 } }, "You must download and fill out a Data Use Certificate (DUC). Be sure to upload the completed DUC below once you've completed it."), /* @__PURE__ */ import_react178.default.createElement(Typography_default, { variant: "body1", component: "ol" }, /* @__PURE__ */ import_react178.default.createElement("li", null, "Download the DUC template file."), /* @__PURE__ */ import_react178.default.createElement("li", null, "Fill out the DUC template, following the instructions in the file."), /* @__PURE__ */ import_react178.default.createElement("li", null, "Upload the completed certificate using the button below:")), /* @__PURE__ */ import_react178.default.createElement(
133970
+ ), /* @__PURE__ */ import_react178.default.createElement(Typography_default, { variant: "headline3", sx: { mt: 4, mb: 2 } }, "Fill out and upload a Data Use Certificate"), /* @__PURE__ */ import_react178.default.createElement(Typography_default, { variant: "body1", sx: { my: 2 } }, "You must download and fill out a Data Use Certificate (DUC). Be sure to upload the completed DUC below once you've completed it."), /* @__PURE__ */ import_react178.default.createElement(Typography_default, { variant: "body1", component: "ol" }, /* @__PURE__ */ import_react178.default.createElement("li", null, "Download the DUC template file."), /* @__PURE__ */ import_react178.default.createElement("li", null, "Fill out the DUC template, following the instructions in the file."), /* @__PURE__ */ import_react178.default.createElement("li", null, "Upload the completed certificate using the button below:")), /* @__PURE__ */ import_react178.default.createElement(SynapseErrorBoundary, null, /* @__PURE__ */ import_react178.default.createElement(
133922
133971
  UploadDocumentField,
133923
133972
  {
133924
133973
  id: "duc",
133974
+ isLoading,
133925
133975
  uploadCallback: (resp) => uploadCallback(resp, "ducFileHandleId"),
133926
133976
  documentName: "Data Use Certificate",
133927
133977
  fileHandleAssociations: ducFileHandleAssociation
133928
133978
  }
133929
- ), ((managedACTAccessRequirement == null ? void 0 : managedACTAccessRequirement.isIRBApprovalRequired) || (managedACTAccessRequirement == null ? void 0 : managedACTAccessRequirement.areOtherAttachmentsRequired) || isRenewal) && /* @__PURE__ */ import_react178.default.createElement(Divider_default, { sx: { my: 4 } })),
133930
- (managedACTAccessRequirement == null ? void 0 : managedACTAccessRequirement.isIRBApprovalRequired) && /* @__PURE__ */ import_react178.default.createElement(import_react178.default.Fragment, null, /* @__PURE__ */ import_react178.default.createElement(Typography_default, { variant: "headline3", sx: { my: 2 } }, "IRB Approval"), /* @__PURE__ */ import_react178.default.createElement(Typography_default, { variant: "body1", sx: { my: 2 } }, "Upload a signed IRB letter on institutional letterhead. The letter must include the names of all the datasets requested, as well as the names of the data requesters above. Use the button below to upload the document."), /* @__PURE__ */ import_react178.default.createElement(
133979
+ )), ((managedACTAccessRequirement == null ? void 0 : managedACTAccessRequirement.isIRBApprovalRequired) || (managedACTAccessRequirement == null ? void 0 : managedACTAccessRequirement.areOtherAttachmentsRequired) || isRenewal) && /* @__PURE__ */ import_react178.default.createElement(Divider_default, { sx: { my: 4 } })),
133980
+ (managedACTAccessRequirement == null ? void 0 : managedACTAccessRequirement.isIRBApprovalRequired) && /* @__PURE__ */ import_react178.default.createElement(import_react178.default.Fragment, null, /* @__PURE__ */ import_react178.default.createElement(Typography_default, { variant: "headline3", sx: { my: 2 } }, "IRB Approval"), /* @__PURE__ */ import_react178.default.createElement(Typography_default, { variant: "body1", sx: { my: 2 } }, "Upload a signed IRB letter on institutional letterhead. The letter must include the names of all the datasets requested, as well as the names of the data requesters above. Use the button below to upload the document."), /* @__PURE__ */ import_react178.default.createElement(SynapseErrorBoundary, null, /* @__PURE__ */ import_react178.default.createElement(
133931
133981
  UploadDocumentField,
133932
133982
  {
133933
133983
  id: "irb",
133984
+ isLoading,
133934
133985
  documentName: "IRB Approval Letter",
133935
133986
  uploadCallback: (resp) => uploadCallback(resp, "irbFileHandleId"),
133936
133987
  fileHandleAssociations: irbFileHandleAssociation
133937
133988
  }
133938
- ), ((managedACTAccessRequirement == null ? void 0 : managedACTAccessRequirement.areOtherAttachmentsRequired) || isRenewal) && /* @__PURE__ */ import_react178.default.createElement(Divider_default, { sx: { my: 4 } })),
133989
+ )), ((managedACTAccessRequirement == null ? void 0 : managedACTAccessRequirement.areOtherAttachmentsRequired) || isRenewal) && /* @__PURE__ */ import_react178.default.createElement(Divider_default, { sx: { my: 4 } })),
133939
133990
  /* Attachments */
133940
- (managedACTAccessRequirement == null ? void 0 : managedACTAccessRequirement.areOtherAttachmentsRequired) && /* @__PURE__ */ import_react178.default.createElement(import_react178.default.Fragment, null, /* @__PURE__ */ import_react178.default.createElement(Typography_default, { variant: "headline3", sx: { my: 2 } }, "Upload other required documents"), /* @__PURE__ */ import_react178.default.createElement(Typography_default, { variant: "body1", sx: { my: 2 } }, "You must upload other required documents. Please review the instructions to gain data access to determine which documents must also be uploaded."), /* @__PURE__ */ import_react178.default.createElement(
133991
+ (managedACTAccessRequirement == null ? void 0 : managedACTAccessRequirement.areOtherAttachmentsRequired) && /* @__PURE__ */ import_react178.default.createElement(import_react178.default.Fragment, null, /* @__PURE__ */ import_react178.default.createElement(Typography_default, { variant: "headline3", sx: { my: 2 } }, "Upload other required documents"), /* @__PURE__ */ import_react178.default.createElement(Typography_default, { variant: "body1", sx: { my: 2 } }, "You must upload other required documents. Please review the instructions to gain data access to determine which documents must also be uploaded."), /* @__PURE__ */ import_react178.default.createElement(SynapseErrorBoundary, null, /* @__PURE__ */ import_react178.default.createElement(
133941
133992
  UploadDocumentField,
133942
133993
  {
133943
133994
  id: "file-attachment",
133995
+ isLoading,
133944
133996
  documentName: "Attachment",
133945
133997
  uploadCallback: (res) => uploadCallback(res, "attachments"),
133946
133998
  isMultiFileUpload: true,
133947
133999
  fileHandleAssociations: attachmentFileHandleAssociations,
133948
134000
  onClearAttachment
133949
134001
  }
133950
- ), isRenewal && /* @__PURE__ */ import_react178.default.createElement(Divider_default, { sx: { my: 4 } })),
134002
+ )), isRenewal && /* @__PURE__ */ import_react178.default.createElement(Divider_default, { sx: { my: 4 } })),
133951
134003
  // Publications & Summary of Use
133952
134004
  isRenewal && /* @__PURE__ */ import_react178.default.createElement(import_react178.default.Fragment, null, /* @__PURE__ */ import_react178.default.createElement(
133953
134005
  TextField3,
133954
134006
  {
133955
134007
  id: "publications",
133956
134008
  label: "Publication(s)",
134009
+ disabled: isLoadingSubmitDataAccessRequest,
133957
134010
  multiline: true,
133958
134011
  rows: 3,
133959
- value: dataAccessRequest == null ? void 0 : dataAccessRequest.publication,
133960
- onChange: (e3) => handleTextAreaInputChange(e3, "publication")
134012
+ value: publication,
134013
+ onChange: (e3) => setPublication(e3.target.value)
133961
134014
  }
133962
134015
  ), /* @__PURE__ */ import_react178.default.createElement(
133963
134016
  TextField3,
133964
134017
  {
133965
134018
  id: "summaryOfUse",
133966
134019
  label: "Summary of use",
133967
- value: dataAccessRequest == null ? void 0 : dataAccessRequest.summaryOfUse,
134020
+ value: summaryOfUse,
134021
+ disabled: isLoadingSubmitDataAccessRequest,
133968
134022
  multiline: true,
133969
134023
  rows: 3,
133970
- onChange: (e3) => handleTextAreaInputChange(e3, "summaryOfUse")
134024
+ onChange: (e3) => setSummaryOfUse(e3.target.value)
133971
134025
  }
133972
134026
  ))
133973
134027
  )
@@ -133975,9 +134029,10 @@ ${e3.message}`);
133975
134029
  Button_default,
133976
134030
  {
133977
134031
  variant: "outlined",
134032
+ disabled: isLoadingSubmitDataAccessRequest,
133978
134033
  onClick: () => {
133979
134034
  if (dataAccessRequest) {
133980
- onCancel(dataAccessRequest);
134035
+ onCancel(getDataAccessRequestWithLocalState());
133981
134036
  }
133982
134037
  }
133983
134038
  },
@@ -133986,6 +134041,7 @@ ${e3.message}`);
133986
134041
  Button_default,
133987
134042
  {
133988
134043
  variant: "contained",
134044
+ disabled: isLoadingSubmitDataAccessRequest,
133989
134045
  onClick: () => {
133990
134046
  handleSubmit();
133991
134047
  }
@@ -151776,36 +151832,36 @@ ${e3.message}`);
151776
151832
  var import_clsx115 = __toESM(require_clsx());
151777
151833
 
151778
151834
  // ../../node_modules/.pnpm/@mui+x-date-pickers@5.0.20_@emotion+react@11.10.6_@emotion+styled@11.10.6_@mui+material@5.11._r4bur2rmcrov43c5haocdz6eey/node_modules/@mui/x-date-pickers/internals/components/icons/index.js
151779
- var import_utils267 = __toESM(require_utils4());
151835
+ var import_utils269 = __toESM(require_utils4());
151780
151836
  var React486 = __toESM(require_react());
151781
151837
  var import_jsx_runtime327 = __toESM(require_jsx_runtime());
151782
151838
  var import_jsx_runtime328 = __toESM(require_jsx_runtime());
151783
- var ArrowDropDown = (0, import_utils267.createSvgIcon)(/* @__PURE__ */ (0, import_jsx_runtime327.jsx)("path", {
151839
+ var ArrowDropDown = (0, import_utils269.createSvgIcon)(/* @__PURE__ */ (0, import_jsx_runtime327.jsx)("path", {
151784
151840
  d: "M7 10l5 5 5-5z"
151785
151841
  }), "ArrowDropDown");
151786
- var ArrowLeft = (0, import_utils267.createSvgIcon)(/* @__PURE__ */ (0, import_jsx_runtime327.jsx)("path", {
151842
+ var ArrowLeft = (0, import_utils269.createSvgIcon)(/* @__PURE__ */ (0, import_jsx_runtime327.jsx)("path", {
151787
151843
  d: "M15.41 16.59L10.83 12l4.58-4.59L14 6l-6 6 6 6 1.41-1.41z"
151788
151844
  }), "ArrowLeft");
151789
- var ArrowRight = (0, import_utils267.createSvgIcon)(/* @__PURE__ */ (0, import_jsx_runtime327.jsx)("path", {
151845
+ var ArrowRight = (0, import_utils269.createSvgIcon)(/* @__PURE__ */ (0, import_jsx_runtime327.jsx)("path", {
151790
151846
  d: "M8.59 16.59L13.17 12 8.59 7.41 10 6l6 6-6 6-1.41-1.41z"
151791
151847
  }), "ArrowRight");
151792
- var Calendar = (0, import_utils267.createSvgIcon)(/* @__PURE__ */ (0, import_jsx_runtime327.jsx)("path", {
151848
+ var Calendar = (0, import_utils269.createSvgIcon)(/* @__PURE__ */ (0, import_jsx_runtime327.jsx)("path", {
151793
151849
  d: "M17 12h-5v5h5v-5zM16 1v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2h-1V1h-2zm3 18H5V8h14v11z"
151794
151850
  }), "Calendar");
151795
- var Clock = (0, import_utils267.createSvgIcon)(/* @__PURE__ */ (0, import_jsx_runtime328.jsxs)(React486.Fragment, {
151851
+ var Clock = (0, import_utils269.createSvgIcon)(/* @__PURE__ */ (0, import_jsx_runtime328.jsxs)(React486.Fragment, {
151796
151852
  children: [/* @__PURE__ */ (0, import_jsx_runtime327.jsx)("path", {
151797
151853
  d: "M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"
151798
151854
  }), /* @__PURE__ */ (0, import_jsx_runtime327.jsx)("path", {
151799
151855
  d: "M12.5 7H11v6l5.25 3.15.75-1.23-4.5-2.67z"
151800
151856
  })]
151801
151857
  }), "Clock");
151802
- var DateRange = (0, import_utils267.createSvgIcon)(/* @__PURE__ */ (0, import_jsx_runtime327.jsx)("path", {
151858
+ var DateRange = (0, import_utils269.createSvgIcon)(/* @__PURE__ */ (0, import_jsx_runtime327.jsx)("path", {
151803
151859
  d: "M9 11H7v2h2v-2zm4 0h-2v2h2v-2zm4 0h-2v2h2v-2zm2-7h-1V2h-2v2H8V2H6v2H5c-1.11 0-1.99.9-1.99 2L3 20c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 16H5V9h14v11z"
151804
151860
  }), "DateRange");
151805
- var Pen = (0, import_utils267.createSvgIcon)(/* @__PURE__ */ (0, import_jsx_runtime327.jsx)("path", {
151861
+ var Pen = (0, import_utils269.createSvgIcon)(/* @__PURE__ */ (0, import_jsx_runtime327.jsx)("path", {
151806
151862
  d: "M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04c.39-.39.39-1.02 0-1.41l-2.34-2.34a.9959.9959 0 00-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z"
151807
151863
  }), "Pen");
151808
- var Time = (0, import_utils267.createSvgIcon)(/* @__PURE__ */ (0, import_jsx_runtime328.jsxs)(React486.Fragment, {
151864
+ var Time = (0, import_utils269.createSvgIcon)(/* @__PURE__ */ (0, import_jsx_runtime328.jsxs)(React486.Fragment, {
151809
151865
  children: [/* @__PURE__ */ (0, import_jsx_runtime327.jsx)("path", {
151810
151866
  d: "M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"
151811
151867
  }), /* @__PURE__ */ (0, import_jsx_runtime327.jsx)("path", {
@@ -152141,7 +152197,7 @@ ${e3.message}`);
152141
152197
  // ../../node_modules/.pnpm/@mui+x-date-pickers@5.0.20_@emotion+react@11.10.6_@emotion+styled@11.10.6_@mui+material@5.11._r4bur2rmcrov43c5haocdz6eey/node_modules/@mui/x-date-pickers/internals/components/wrappers/DesktopWrapper.js
152142
152198
  init_extends();
152143
152199
  var React493 = __toESM(require_react());
152144
- var import_utils270 = __toESM(require_utils4());
152200
+ var import_utils272 = __toESM(require_utils4());
152145
152201
 
152146
152202
  // ../../node_modules/.pnpm/@mui+x-date-pickers@5.0.20_@emotion+react@11.10.6_@emotion+styled@11.10.6_@mui+material@5.11._r4bur2rmcrov43c5haocdz6eey/node_modules/@mui/x-date-pickers/internals/components/wrappers/WrapperVariantContext.js
152147
152203
  var React490 = __toESM(require_react());
@@ -152150,7 +152206,7 @@ ${e3.message}`);
152150
152206
  // ../../node_modules/.pnpm/@mui+x-date-pickers@5.0.20_@emotion+react@11.10.6_@emotion+styled@11.10.6_@mui+material@5.11._r4bur2rmcrov43c5haocdz6eey/node_modules/@mui/x-date-pickers/internals/components/PickersPopper.js
152151
152207
  init_extends();
152152
152208
  var React492 = __toESM(require_react());
152153
- var import_utils268 = __toESM(require_utils4());
152209
+ var import_utils270 = __toESM(require_utils4());
152154
152210
 
152155
152211
  // ../../node_modules/.pnpm/@mui+x-date-pickers@5.0.20_@emotion+react@11.10.6_@emotion+styled@11.10.6_@mui+material@5.11._r4bur2rmcrov43c5haocdz6eey/node_modules/@mui/x-date-pickers/PickersActionBar/PickersActionBar.js
152156
152212
  init_extends();
@@ -152294,13 +152350,13 @@ ${e3.message}`);
152294
152350
  activatedRef.current = false;
152295
152351
  };
152296
152352
  }, [active]);
152297
- const handleClickAway = (0, import_utils268.useEventCallback)((event) => {
152353
+ const handleClickAway = (0, import_utils270.useEventCallback)((event) => {
152298
152354
  if (!activatedRef.current) {
152299
152355
  return;
152300
152356
  }
152301
152357
  const insideReactTree = syntheticEventRef.current;
152302
152358
  syntheticEventRef.current = false;
152303
- const doc2 = (0, import_utils268.ownerDocument)(nodeRef.current);
152359
+ const doc2 = (0, import_utils270.ownerDocument)(nodeRef.current);
152304
152360
  if (!nodeRef.current || // is a TouchEvent?
152305
152361
  "clientX" in event && clickedRootScrollbar(event, doc2)) {
152306
152362
  return;
@@ -152324,7 +152380,7 @@ ${e3.message}`);
152324
152380
  };
152325
152381
  React492.useEffect(() => {
152326
152382
  if (active) {
152327
- const doc2 = (0, import_utils268.ownerDocument)(nodeRef.current);
152383
+ const doc2 = (0, import_utils270.ownerDocument)(nodeRef.current);
152328
152384
  const handleTouchMove = () => {
152329
152385
  movedRef.current = true;
152330
152386
  };
@@ -152339,7 +152395,7 @@ ${e3.message}`);
152339
152395
  }, [active, handleClickAway]);
152340
152396
  React492.useEffect(() => {
152341
152397
  if (active) {
152342
- const doc2 = (0, import_utils268.ownerDocument)(nodeRef.current);
152398
+ const doc2 = (0, import_utils270.ownerDocument)(nodeRef.current);
152343
152399
  doc2.addEventListener("click", handleClickAway);
152344
152400
  return () => {
152345
152401
  doc2.removeEventListener("click", handleClickAway);
@@ -152403,8 +152459,8 @@ ${e3.message}`);
152403
152459
  }, [open, role]);
152404
152460
  const [clickAwayRef, onPaperClick, onPaperTouchStart] = useClickAwayListener(open, onBlur != null ? onBlur : onClose);
152405
152461
  const paperRef = React492.useRef(null);
152406
- const handleRef = (0, import_utils268.useForkRef)(paperRef, containerRef);
152407
- const handlePaperRef = (0, import_utils268.useForkRef)(handleRef, clickAwayRef);
152462
+ const handleRef = (0, import_utils270.useForkRef)(paperRef, containerRef);
152463
+ const handlePaperRef = (0, import_utils270.useForkRef)(handleRef, clickAwayRef);
152408
152464
  const ownerState = props;
152409
152465
  const classes = useUtilityClasses117(ownerState);
152410
152466
  const {
@@ -152495,7 +152551,7 @@ ${e3.message}`);
152495
152551
  componentsProps
152496
152552
  } = props;
152497
152553
  const ownInputRef = React493.useRef(null);
152498
- const inputRef = (0, import_utils270.useForkRef)(DateInputProps.inputRef, ownInputRef);
152554
+ const inputRef = (0, import_utils272.useForkRef)(DateInputProps.inputRef, ownInputRef);
152499
152555
  return /* @__PURE__ */ (0, import_jsx_runtime338.jsxs)(WrapperVariantContext.Provider, {
152500
152556
  value: "desktop",
152501
152557
  children: [/* @__PURE__ */ (0, import_jsx_runtime337.jsx)(KeyboardDateInputComponent, _extends({}, DateInputProps, {
@@ -152525,7 +152581,7 @@ ${e3.message}`);
152525
152581
 
152526
152582
  // ../../node_modules/.pnpm/@mui+x-date-pickers@5.0.20_@emotion+react@11.10.6_@emotion+styled@11.10.6_@mui+material@5.11._r4bur2rmcrov43c5haocdz6eey/node_modules/@mui/x-date-pickers/internals/hooks/useViews.js
152527
152583
  var React494 = __toESM(require_react());
152528
- var import_utils271 = __toESM(require_utils4());
152584
+ var import_utils273 = __toESM(require_utils4());
152529
152585
  function useViews({
152530
152586
  onChange: onChange2,
152531
152587
  onViewChange,
@@ -152534,7 +152590,7 @@ ${e3.message}`);
152534
152590
  views
152535
152591
  }) {
152536
152592
  var _views, _views2;
152537
- const [openView, setOpenView] = (0, import_utils271.useControlled)({
152593
+ const [openView, setOpenView] = (0, import_utils273.useControlled)({
152538
152594
  name: "Picker",
152539
152595
  state: "view",
152540
152596
  controlled: view,
@@ -152576,13 +152632,13 @@ ${e3.message}`);
152576
152632
  var React501 = __toESM(require_react());
152577
152633
  var import_clsx121 = __toESM(require_clsx());
152578
152634
  var import_prop_types157 = __toESM(require_prop_types());
152579
- var import_utils274 = __toESM(require_utils4());
152635
+ var import_utils276 = __toESM(require_utils4());
152580
152636
 
152581
152637
  // ../../node_modules/.pnpm/@mui+x-date-pickers@5.0.20_@emotion+react@11.10.6_@emotion+styled@11.10.6_@mui+material@5.11._r4bur2rmcrov43c5haocdz6eey/node_modules/@mui/x-date-pickers/ClockPicker/Clock.js
152582
152638
  init_extends();
152583
152639
  var React496 = __toESM(require_react());
152584
152640
  var import_clsx118 = __toESM(require_clsx());
152585
- var import_utils273 = __toESM(require_utils());
152641
+ var import_utils275 = __toESM(require_utils());
152586
152642
 
152587
152643
  // ../../node_modules/.pnpm/@mui+x-date-pickers@5.0.20_@emotion+react@11.10.6_@emotion+styled@11.10.6_@mui+material@5.11._r4bur2rmcrov43c5haocdz6eey/node_modules/@mui/x-date-pickers/ClockPicker/ClockPointer.js
152588
152644
  init_extends();
@@ -152763,7 +152819,7 @@ ${e3.message}`);
152763
152819
  amButton: ["amButton"],
152764
152820
  pmButton: ["pmButton"]
152765
152821
  };
152766
- return (0, import_utils273.unstable_composeClasses)(slots, getClockUtilityClass, classes);
152822
+ return (0, import_utils275.unstable_composeClasses)(slots, getClockUtilityClass, classes);
152767
152823
  };
152768
152824
  var ClockRoot = styled_default("div", {
152769
152825
  name: "MuiClock",
@@ -152959,7 +153015,7 @@ ${e3.message}`);
152959
153015
  }, [type, value]);
152960
153016
  const keyboardControlStep = type === "minutes" ? minutesStep : 1;
152961
153017
  const listboxRef = React496.useRef(null);
152962
- (0, import_utils273.unstable_useEnhancedEffect)(() => {
153018
+ (0, import_utils275.unstable_useEnhancedEffect)(() => {
152963
153019
  if (autoFocus) {
152964
153020
  listboxRef.current.focus();
152965
153021
  }
@@ -153591,7 +153647,7 @@ ${e3.message}`);
153591
153647
  throw new Error("not supported");
153592
153648
  }
153593
153649
  }, [ampm, dateOrMidnight, disableIgnoringDatePartForTimeValidation, maxTime, meridiemMode, minTime, minutesStep, shouldDisableTime, utils]);
153594
- const selectedId = (0, import_utils274.unstable_useId)();
153650
+ const selectedId = (0, import_utils276.unstable_useId)();
153595
153651
  const viewProps = React501.useMemo(() => {
153596
153652
  switch (openView) {
153597
153653
  case "hours": {
@@ -153848,7 +153904,7 @@ ${e3.message}`);
153848
153904
  var React514 = __toESM(require_react());
153849
153905
  var import_prop_types161 = __toESM(require_prop_types());
153850
153906
  var import_clsx129 = __toESM(require_clsx());
153851
- var import_utils282 = __toESM(require_utils4());
153907
+ var import_utils284 = __toESM(require_utils4());
153852
153908
 
153853
153909
  // ../../node_modules/.pnpm/@mui+x-date-pickers@5.0.20_@emotion+react@11.10.6_@emotion+styled@11.10.6_@mui+material@5.11._r4bur2rmcrov43c5haocdz6eey/node_modules/@mui/x-date-pickers/MonthPicker/MonthPicker.js
153854
153910
  init_extends();
@@ -153860,7 +153916,7 @@ ${e3.message}`);
153860
153916
  // ../../node_modules/.pnpm/@mui+x-date-pickers@5.0.20_@emotion+react@11.10.6_@emotion+styled@11.10.6_@mui+material@5.11._r4bur2rmcrov43c5haocdz6eey/node_modules/@mui/x-date-pickers/MonthPicker/PickersMonth.js
153861
153917
  init_extends();
153862
153918
  var React502 = __toESM(require_react());
153863
- var import_utils275 = __toESM(require_utils4());
153919
+ var import_utils277 = __toESM(require_utils4());
153864
153920
 
153865
153921
  // ../../node_modules/.pnpm/@mui+x-date-pickers@5.0.20_@emotion+react@11.10.6_@emotion+styled@11.10.6_@mui+material@5.11._r4bur2rmcrov43c5haocdz6eey/node_modules/@mui/x-date-pickers/MonthPicker/pickersMonthClasses.js
153866
153922
  function getPickersMonthUtilityClass(slot) {
@@ -153940,7 +153996,7 @@ ${e3.message}`);
153940
153996
  onSelect(value);
153941
153997
  };
153942
153998
  const ref = React502.useRef(null);
153943
- (0, import_utils275.unstable_useEnhancedEffect)(() => {
153999
+ (0, import_utils277.unstable_useEnhancedEffect)(() => {
153944
154000
  if (hasFocus) {
153945
154001
  var _ref$current;
153946
154002
  (_ref$current = ref.current) == null ? void 0 : _ref$current.focus();
@@ -154463,8 +154519,8 @@ ${e3.message}`);
154463
154519
  var React508 = __toESM(require_react());
154464
154520
  var import_prop_types159 = __toESM(require_prop_types());
154465
154521
  var import_clsx124 = __toESM(require_clsx());
154466
- var import_utils277 = __toESM(require_utils());
154467
- var import_utils278 = __toESM(require_utils4());
154522
+ var import_utils279 = __toESM(require_utils());
154523
+ var import_utils280 = __toESM(require_utils4());
154468
154524
 
154469
154525
  // ../../node_modules/.pnpm/@mui+x-date-pickers@5.0.20_@emotion+react@11.10.6_@emotion+styled@11.10.6_@mui+material@5.11._r4bur2rmcrov43c5haocdz6eey/node_modules/@mui/x-date-pickers/PickersDay/pickersDayClasses.js
154470
154526
  function getPickersDayUtilityClass(slot) {
@@ -154602,8 +154658,8 @@ ${e3.message}`);
154602
154658
  const classes = useUtilityClasses126(ownerState);
154603
154659
  const utils = useUtils();
154604
154660
  const ref = React508.useRef(null);
154605
- const handleRef = (0, import_utils278.useForkRef)(ref, forwardedRef);
154606
- (0, import_utils277.unstable_useEnhancedEffect)(() => {
154661
+ const handleRef = (0, import_utils280.useForkRef)(ref, forwardedRef);
154662
+ (0, import_utils279.unstable_useEnhancedEffect)(() => {
154607
154663
  if (autoFocus && !disabled && !isAnimating && !outsideCurrentMonth) {
154608
154664
  ref.current.focus();
154609
154665
  }
@@ -155345,14 +155401,14 @@ ${e3.message}`);
155345
155401
  var React513 = __toESM(require_react());
155346
155402
  var import_prop_types160 = __toESM(require_prop_types());
155347
155403
  var import_clsx128 = __toESM(require_clsx());
155348
- var import_utils280 = __toESM(require_utils4());
155349
- var import_utils281 = __toESM(require_utils());
155404
+ var import_utils282 = __toESM(require_utils4());
155405
+ var import_utils283 = __toESM(require_utils());
155350
155406
 
155351
155407
  // ../../node_modules/.pnpm/@mui+x-date-pickers@5.0.20_@emotion+react@11.10.6_@emotion+styled@11.10.6_@mui+material@5.11._r4bur2rmcrov43c5haocdz6eey/node_modules/@mui/x-date-pickers/YearPicker/PickersYear.js
155352
155408
  init_extends();
155353
155409
  var React512 = __toESM(require_react());
155354
155410
  var import_clsx127 = __toESM(require_clsx());
155355
- var import_utils279 = __toESM(require_utils4());
155411
+ var import_utils281 = __toESM(require_utils4());
155356
155412
 
155357
155413
  // ../../node_modules/.pnpm/@mui+x-date-pickers@5.0.20_@emotion+react@11.10.6_@emotion+styled@11.10.6_@mui+material@5.11._r4bur2rmcrov43c5haocdz6eey/node_modules/@mui/x-date-pickers/YearPicker/pickersYearClasses.js
155358
155414
  function getPickersYearUtilityClass(slot) {
@@ -155371,7 +155427,7 @@ ${e3.message}`);
155371
155427
  classes
155372
155428
  } = ownerState;
155373
155429
  const slots = {
155374
- root: ["root", wrapperVariant && `mode${(0, import_utils279.capitalize)(wrapperVariant)}`],
155430
+ root: ["root", wrapperVariant && `mode${(0, import_utils281.capitalize)(wrapperVariant)}`],
155375
155431
  yearButton: ["yearButton", disabled && "disabled", selected && "selected"]
155376
155432
  };
155377
155433
  return (0, import_composeClasses3.default)(slots, getPickersYearUtilityClass, classes);
@@ -155445,7 +155501,7 @@ ${e3.message}`);
155445
155501
  onBlur = noop10
155446
155502
  } = props, other = _objectWithoutPropertiesLoose(props, _excluded166);
155447
155503
  const ref = React512.useRef(null);
155448
- const refHandle = (0, import_utils279.useForkRef)(ref, forwardedRef);
155504
+ const refHandle = (0, import_utils281.useForkRef)(ref, forwardedRef);
155449
155505
  const wrapperVariant = React512.useContext(WrapperVariantContext);
155450
155506
  const ownerState = _extends({}, props, {
155451
155507
  wrapperVariant
@@ -155558,7 +155614,7 @@ ${e3.message}`);
155558
155614
  const wrapperVariant = React513.useContext(WrapperVariantContext);
155559
155615
  const selectedYearRef = React513.useRef(null);
155560
155616
  const [focusedYear, setFocusedYear] = React513.useState(() => currentYear || utils.getYear(now3));
155561
- const [internalHasFocus, setInternalHasFocus] = (0, import_utils281.unstable_useControlled)({
155617
+ const [internalHasFocus, setInternalHasFocus] = (0, import_utils283.unstable_useControlled)({
155562
155618
  name: "YearPicker",
155563
155619
  state: "hasFocus",
155564
155620
  controlled: hasFocus,
@@ -155638,7 +155694,7 @@ ${e3.message}`);
155638
155694
  }, [focusedYear, changeHasFocus]);
155639
155695
  const nowYear = utils.getYear(now3);
155640
155696
  const scrollerRef = React513.useRef(null);
155641
- const handleRef = (0, import_utils280.useForkRef)(ref, scrollerRef);
155697
+ const handleRef = (0, import_utils282.useForkRef)(ref, scrollerRef);
155642
155698
  React513.useEffect(() => {
155643
155699
  if (autoFocus || scrollerRef.current === null) {
155644
155700
  return;
@@ -155788,7 +155844,7 @@ ${e3.message}`);
155788
155844
  })({});
155789
155845
  var CalendarPicker = /* @__PURE__ */ React514.forwardRef(function CalendarPicker2(inProps, ref) {
155790
155846
  const utils = useUtils();
155791
- const id2 = (0, import_utils282.unstable_useId)();
155847
+ const id2 = (0, import_utils284.unstable_useId)();
155792
155848
  const props = useCalendarPickerDefaultizedProps(inProps, "MuiCalendarPicker");
155793
155849
  const {
155794
155850
  autoFocus,
@@ -155914,14 +155970,14 @@ ${e3.message}`);
155914
155970
  disabled
155915
155971
  };
155916
155972
  const gridLabelId = `${id2}-grid-label`;
155917
- const [internalFocusedView, setInternalFocusedView] = (0, import_utils282.useControlled)({
155973
+ const [internalFocusedView, setInternalFocusedView] = (0, import_utils284.useControlled)({
155918
155974
  name: "DayPicker",
155919
155975
  state: "focusedView",
155920
155976
  controlled: focusedView,
155921
155977
  default: autoFocus ? openView : null
155922
155978
  });
155923
155979
  const hasFocus = internalFocusedView !== null;
155924
- const handleFocusedViewChange = (0, import_utils282.useEventCallback)((eventView) => (newHasFocus) => {
155980
+ const handleFocusedViewChange = (0, import_utils284.useEventCallback)((eventView) => (newHasFocus) => {
155925
155981
  if (onFocusedViewChange) {
155926
155982
  onFocusedViewChange(eventView)(newHasFocus);
155927
155983
  return;
@@ -156537,7 +156593,7 @@ ${e3.message}`);
156537
156593
 
156538
156594
  // ../../node_modules/.pnpm/@mui+x-date-pickers@5.0.20_@emotion+react@11.10.6_@emotion+styled@11.10.6_@mui+material@5.11._r4bur2rmcrov43c5haocdz6eey/node_modules/@mui/x-date-pickers/internals/hooks/useIsLandscape.js
156539
156595
  var React517 = __toESM(require_react());
156540
- var import_utils283 = __toESM(require_utils());
156596
+ var import_utils285 = __toESM(require_utils());
156541
156597
  function getOrientation2() {
156542
156598
  if (typeof window === "undefined") {
156543
156599
  return "portrait";
@@ -156552,7 +156608,7 @@ ${e3.message}`);
156552
156608
  }
156553
156609
  var useIsLandscape = (views, customOrientation) => {
156554
156610
  const [orientation, setOrientation] = React517.useState(getOrientation2);
156555
- (0, import_utils283.unstable_useEnhancedEffect)(() => {
156611
+ (0, import_utils285.unstable_useEnhancedEffect)(() => {
156556
156612
  const eventHandler = () => {
156557
156613
  setOrientation(getOrientation2());
156558
156614
  };
@@ -157715,7 +157771,7 @@ ${e3.message}`);
157715
157771
  // ../../node_modules/.pnpm/@mui+x-date-pickers@5.0.20_@emotion+react@11.10.6_@emotion+styled@11.10.6_@mui+material@5.11._r4bur2rmcrov43c5haocdz6eey/node_modules/@mui/x-date-pickers/internals/components/PureDateInput.js
157716
157772
  init_extends();
157717
157773
  var React526 = __toESM(require_react());
157718
- var import_utils285 = __toESM(require_utils4());
157774
+ var import_utils287 = __toESM(require_utils4());
157719
157775
  var PureDateInput = /* @__PURE__ */ React526.forwardRef(function PureDateInput2(props, ref) {
157720
157776
  const {
157721
157777
  disabled,
@@ -157738,7 +157794,7 @@ ${e3.message}`);
157738
157794
  readOnly: true
157739
157795
  }), [InputProps]);
157740
157796
  const inputValue = getDisplayDate(utils, rawValue, inputFormat);
157741
- const handleOnClick = (0, import_utils285.useEventCallback)((event) => {
157797
+ const handleOnClick = (0, import_utils287.useEventCallback)((event) => {
157742
157798
  event.stopPropagation();
157743
157799
  onOpen();
157744
157800
  });