@ixo/editor 5.20.1 → 5.20.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.
@@ -43,7 +43,7 @@ import {
43
43
  setActiveEditor,
44
44
  tempDomainCreatorSurvey,
45
45
  transformSurveyToCredentialSubject
46
- } from "./chunk-6N5JNDZ3.mjs";
46
+ } from "./chunk-HETRTQWL.mjs";
47
47
 
48
48
  // src/mantine/hooks/useCreateIxoEditor.ts
49
49
  import { useCreateBlockNote } from "@blocknote/react";
@@ -5521,7 +5521,7 @@ var ClaimsListPanelContent = ({ collectionId, deedId, claim }) => {
5521
5521
  if (!claim) return;
5522
5522
  setSurveyLoading(true);
5523
5523
  setSurveyError(null);
5524
- const claimDataResult = await handlers.getClaimData(collectionId, claim.claimId);
5524
+ const claimDataResult = await handlers.getClaimData(collectionId, claim.claimId, { entityDid: deedId });
5525
5525
  setClaimData(claimDataResult || null);
5526
5526
  const surveyResult = await handlers.getDeedSurveyTemplate(deedId, collectionId);
5527
5527
  if (surveyResult?.surveyTemplate) {
@@ -7514,7 +7514,7 @@ var BidItem = ({ editor, block, bid, deedId, adminAddress, onRefresh, execution,
7514
7514
 
7515
7515
  // src/mantine/blocks/components/bid/hooks/useBids.ts
7516
7516
  import { useState as useState28, useEffect as useEffect27, useCallback as useCallback24 } from "react";
7517
- function useBids(collectionId) {
7517
+ function useBids(collectionId, entityDid) {
7518
7518
  const handlers = useBlocknoteHandlers();
7519
7519
  const [bids, setBids] = useState28([]);
7520
7520
  const [loading, setLoading] = useState28(true);
@@ -7527,7 +7527,7 @@ function useBids(collectionId) {
7527
7527
  try {
7528
7528
  setLoading(true);
7529
7529
  setError(null);
7530
- const response = await handlers.queryBids({ collectionId });
7530
+ const response = await handlers.queryBids({ collectionId, entityDid });
7531
7531
  setBids(Array.isArray(response?.data) ? response.data : []);
7532
7532
  } catch (err) {
7533
7533
  setError(err instanceof Error ? err.message : "Failed to fetch bids");
@@ -7535,7 +7535,7 @@ function useBids(collectionId) {
7535
7535
  } finally {
7536
7536
  setLoading(false);
7537
7537
  }
7538
- }, [collectionId]);
7538
+ }, [collectionId, entityDid, handlers]);
7539
7539
  useEffect27(() => {
7540
7540
  fetchBids();
7541
7541
  }, [fetchBids]);
@@ -7545,7 +7545,7 @@ function useBids(collectionId) {
7545
7545
  // src/mantine/blocks/components/bid/components/BidsList.tsx
7546
7546
  var BidsList = ({ editor, block, collectionId, deedId, adminAddress, onRefresh, execution, executeHookedActions }) => {
7547
7547
  const { closePanel } = usePanelStore();
7548
- const { bids, loading, error, refetch } = useBids(collectionId);
7548
+ const { bids, loading, error, refetch } = useBids(collectionId, deedId);
7549
7549
  const handleRefresh = useCallback25(() => {
7550
7550
  refetch();
7551
7551
  onRefresh();
@@ -7590,7 +7590,7 @@ var BidsList = ({ editor, block, collectionId, deedId, adminAddress, onRefresh,
7590
7590
 
7591
7591
  // src/mantine/blocks/components/bid/hooks/useUserBid.ts
7592
7592
  import { useState as useState29, useEffect as useEffect28, useCallback as useCallback26 } from "react";
7593
- function useUserBid(collectionId, userDid) {
7593
+ function useUserBid(collectionId, userDid, entityDid) {
7594
7594
  const handlers = useBlocknoteHandlers();
7595
7595
  const [userBid, setUserBid] = useState29(null);
7596
7596
  const [loading, setLoading] = useState29(true);
@@ -7604,7 +7604,7 @@ function useUserBid(collectionId, userDid) {
7604
7604
  setLoading(true);
7605
7605
  setError(null);
7606
7606
  const formattedDid = userDid.startsWith("did:ixo:") ? userDid : `did:ixo:${userDid}`;
7607
- const response = await handlers.queryBidsByDid({ collectionId, did: formattedDid });
7607
+ const response = await handlers.queryBidsByDid({ collectionId, did: formattedDid, entityDid });
7608
7608
  setUserBid(Array.isArray(response?.data) && response.data.length > 0 ? response.data[0] : null);
7609
7609
  } catch (err) {
7610
7610
  setError(err instanceof Error ? err.message : "Failed to fetch user bid");
@@ -7612,7 +7612,7 @@ function useUserBid(collectionId, userDid) {
7612
7612
  } finally {
7613
7613
  setLoading(false);
7614
7614
  }
7615
- }, [collectionId, userDid, handlers]);
7615
+ }, [collectionId, userDid, entityDid, handlers]);
7616
7616
  useEffect28(() => {
7617
7617
  fetchUserBid();
7618
7618
  }, [fetchUserBid]);
@@ -7828,7 +7828,7 @@ var BidCollectionItem = ({ collection, editor, block, deedId, adminAddress, user
7828
7828
  ucanService: execution.ucanService,
7829
7829
  flowUri: execution.flowUri
7830
7830
  });
7831
- const { userBid, loading: userBidLoading } = useUserBid(collection.id, execution.actorDid);
7831
+ const { userBid, loading: userBidLoading } = useUserBid(collection.id, execution.actorDid, deedId);
7832
7832
  const executionRef = React73.useRef(execution);
7833
7833
  const executeHookedActionsRef = React73.useRef(executeHookedActions);
7834
7834
  const onRefreshRef = React73.useRef(onRefresh);
@@ -8430,7 +8430,7 @@ var ClaimsList = ({ collectionId, collectionName, deedId, adminAddress, onEvalua
8430
8430
  setSurveyError(null);
8431
8431
  setEvaluationResult(null);
8432
8432
  setRubricData(null);
8433
- const claimDataResult = await handlers.getClaimData(collectionId, claim.claimId);
8433
+ const claimDataResult = await handlers.getClaimData(collectionId, claim.claimId, { entityDid: deedId });
8434
8434
  setClaimData(claimDataResult || null);
8435
8435
  const surveyResult = await handlers.getDeedSurveyTemplate(deedId, collectionId);
8436
8436
  if (surveyResult?.surveyTemplate) {
@@ -10451,7 +10451,7 @@ var ClaimsEvaluation = ({ collectionId, adminAddress, deedId, claim, onRefresh }
10451
10451
  const record = evalBlockId ? readClaimCapture(runtimeManager, evalBlockId, claim.claimId) : null;
10452
10452
  setCapturedInvoiceId(record?.invoiceId || "");
10453
10453
  setSettledPaymentId(record?.settledPaymentId || "");
10454
- const claimDataResult = await handlers.getClaimData(collectionId, claim.claimId);
10454
+ const claimDataResult = await handlers.getClaimData(collectionId, claim.claimId, { entityDid: deedId });
10455
10455
  setClaimDataForXero(claimDataResult);
10456
10456
  if (handlers.getDeedRubric && handlers.evaluateWithRubric && claimDataResult) {
10457
10457
  setEvaluationLoading(true);
@@ -26859,7 +26859,10 @@ var BidFlowDetail = ({
26859
26859
  setStatusLoading(true);
26860
26860
  try {
26861
26861
  const formattedDid = actorDid.startsWith("did:ixo:") ? actorDid : `did:ixo:${actorDid}`;
26862
- const [bidResponse, collectionsResponse] = await Promise.all([handlers2.queryBidsByDid({ collectionId, did: formattedDid }), handlers2.getClaimCollections(deedDid)]);
26862
+ const [bidResponse, collectionsResponse] = await Promise.all([
26863
+ handlers2.queryBidsByDid({ collectionId, did: formattedDid, entityDid: deedDid }),
26864
+ handlers2.getClaimCollections(deedDid)
26865
+ ]);
26863
26866
  if (!mounted) return;
26864
26867
  const bid = Array.isArray(bidResponse?.data) && bidResponse.data.length > 0 ? bidResponse.data[0] : null;
26865
26868
  setUserBid(bid);
@@ -27279,7 +27282,7 @@ var EvaluateBidFlowDetail = ({
27279
27282
  setLoadingBids(true);
27280
27283
  setError(null);
27281
27284
  try {
27282
- const [bidsResponse, collectionsResponse] = await Promise.all([handlers2.queryBids({ collectionId }), handlers2.getClaimCollections(deedDid)]);
27285
+ const [bidsResponse, collectionsResponse] = await Promise.all([handlers2.queryBids({ collectionId, entityDid: deedDid }), handlers2.getClaimCollections(deedDid)]);
27283
27286
  const fetchedBids = Array.isArray(bidsResponse?.data) ? bidsResponse.data : [];
27284
27287
  setBids(fetchedBids);
27285
27288
  if (selectedBidId && !fetchedBids.some((bid) => bid.id === selectedBidId)) {
@@ -28072,7 +28075,7 @@ var ClaimFlowDetail = ({
28072
28075
  setError(null);
28073
28076
  try {
28074
28077
  const [claimDataResult, templateResult] = await Promise.all([
28075
- handlers2.getClaimData(collectionId, selectedClaim.claimId),
28078
+ handlers2.getClaimData(collectionId, selectedClaim.claimId, { entityDid: deedDid }),
28076
28079
  surveyJson ? Promise.resolve({ surveyTemplate: surveyJson }) : handlers2.getDeedSurveyTemplate(deedDid, collectionId)
28077
28080
  ]);
28078
28081
  if (cancelled) return;
@@ -28684,7 +28687,7 @@ function isImage(file) {
28684
28687
  const ext = (file.name || "").toLowerCase().split(".").pop() || "";
28685
28688
  return t.startsWith("image/") || ["png", "jpg", "jpeg", "gif", "webp", "svg", "bmp"].includes(ext);
28686
28689
  }
28687
- var ClaimAttachments = ({ surveyModel, credentialSubject }) => {
28690
+ var ClaimAttachments = ({ surveyModel, credentialSubject, entityDid }) => {
28688
28691
  const t = useTranslate();
28689
28692
  const { fetchClaimMedia } = useBlocknoteHandlers();
28690
28693
  const [active, setActive] = useState120(null);
@@ -28709,7 +28712,7 @@ var ClaimAttachments = ({ surveyModel, credentialSubject }) => {
28709
28712
  if (existing) return existing;
28710
28713
  setPending((p) => ({ ...p, [url]: true }));
28711
28714
  const promise = (async () => {
28712
- const blob = await fetchClaimMedia(url);
28715
+ const blob = await fetchClaimMedia(url, { entityDid });
28713
28716
  const blobUrl = URL.createObjectURL(blob);
28714
28717
  cacheRef.current.set(url, blobUrl);
28715
28718
  setResolved((r) => ({ ...r, [url]: blobUrl }));
@@ -28727,7 +28730,7 @@ var ClaimAttachments = ({ surveyModel, credentialSubject }) => {
28727
28730
  inflightRef.current.set(url, promise);
28728
28731
  return promise;
28729
28732
  },
28730
- [fetchClaimMedia]
28733
+ [fetchClaimMedia, entityDid]
28731
28734
  );
28732
28735
  const items = useMemo105(() => {
28733
28736
  if (!credentialSubject || typeof credentialSubject !== "object") return [];
@@ -29038,7 +29041,7 @@ var EvaluateClaimFlowDetail = ({
29038
29041
  }
29039
29042
  setSurveyActiveFile({ name, type, content: raw });
29040
29043
  try {
29041
- const blob = await fetcher(raw);
29044
+ const blob = await fetcher(raw, { entityDid: deedDid });
29042
29045
  const blobUrl = URL.createObjectURL(blob);
29043
29046
  cache.set(raw, blobUrl);
29044
29047
  setSurveyActiveFile((curr) => curr && curr.content === raw ? { name, type, content: blobUrl } : curr);
@@ -29046,7 +29049,7 @@ var EvaluateClaimFlowDetail = ({
29046
29049
  console.error("[EvaluateClaim] fetchClaimMedia failed", raw, err);
29047
29050
  }
29048
29051
  };
29049
- }, [handlers.fetchClaimMedia]);
29052
+ }, [handlers.fetchClaimMedia, deedDid]);
29050
29053
  const surveyModel = useMemo106(() => {
29051
29054
  if (!surveyJson || !claimData) return null;
29052
29055
  const model = new SurveyModel11(surveyJson);
@@ -29068,7 +29071,7 @@ var EvaluateClaimFlowDetail = ({
29068
29071
  options.callback("success", cached);
29069
29072
  return;
29070
29073
  }
29071
- fetcher(src).then((blob) => {
29074
+ fetcher(src, { entityDid: deedDid }).then((blob) => {
29072
29075
  const blobUrl = URL.createObjectURL(blob);
29073
29076
  cache.set(src, blobUrl);
29074
29077
  options.callback("success", blobUrl);
@@ -29109,7 +29112,7 @@ var EvaluateClaimFlowDetail = ({
29109
29112
  }
29110
29113
  model.data = resolvedCredentialSubject;
29111
29114
  return model;
29112
- }, [surveyJson, claimData, resolvedCredentialSubject]);
29115
+ }, [surveyJson, claimData, resolvedCredentialSubject, deedDid, handlers.fetchClaimMedia]);
29113
29116
  const outcomeSurveyModel = useMemo106(() => {
29114
29117
  if (!outcomeTemplateJson) return null;
29115
29118
  const model = new SurveyModel11(outcomeTemplateJson);
@@ -29186,7 +29189,7 @@ var EvaluateClaimFlowDetail = ({
29186
29189
  setEvaluationResult(null);
29187
29190
  setError(null);
29188
29191
  try {
29189
- const claimDataResult = await handlers2.getClaimData(collectionId, claim.claimId);
29192
+ const claimDataResult = await handlers2.getClaimData(collectionId, claim.claimId, { entityDid: deedDid });
29190
29193
  setClaimData(claimDataResult || null);
29191
29194
  const surveyResult = await handlers2.getDeedSurveyTemplate(deedDid, collectionId);
29192
29195
  setSurveyJson(surveyResult?.surveyTemplate || null);
@@ -29805,7 +29808,7 @@ var EvaluateClaimFlowDetail = ({
29805
29808
  ), /* @__PURE__ */ React269.createElement(Stack186, { gap: 0, style: { flex: 1, minWidth: 0 } }, /* @__PURE__ */ React269.createElement(Text164, { fw: 500, size: "md", truncate: true }, selectedDisplayName), /* @__PURE__ */ React269.createElement(Text164, { size: "xs", c: "dimmed", truncate: true }, truncateAddress4(selectedClaim.agentAddress))), /* @__PURE__ */ React269.createElement(Stack186, { gap: 0, align: "flex-end", style: { flexShrink: 0 } }, /* @__PURE__ */ React269.createElement(Text164, { fw: 500, size: "md", c: claimStatus.color }, claimStatus.key === "approved" && /* @__PURE__ */ React269.createElement(IconCheck22, { size: 14, style: { verticalAlign: "middle", marginRight: 4 } }), claimStatus.label), /* @__PURE__ */ React269.createElement(Text164, { size: "xs", c: "dimmed" }, getTimeAgo3(selectedClaim.submissionDate || "")))), claimStatus.key === "disputed" && /* @__PURE__ */ React269.createElement(Alert52, { color: "orange", title: t("actionTypes.claim.flow.disputed.title", { defaultValue: "Claim disputed" }), styles: actionAlertStyles }, loadingDispute ? /* @__PURE__ */ React269.createElement(Group105, { gap: "xs" }, /* @__PURE__ */ React269.createElement(Loader50, { size: "xs" }), /* @__PURE__ */ React269.createElement(Text164, { size: "xs" }, t("actionTypes.claim.flow.disputed.loadingDetails", { defaultValue: "Loading dispute details\u2026" }))) : disputeDetails ? /* @__PURE__ */ React269.createElement(Stack186, { gap: 6 }, disputeDetails.reason ? /* @__PURE__ */ React269.createElement(Text164, { size: "sm" }, disputeDetails.reason) : /* @__PURE__ */ React269.createElement(Text164, { size: "sm", c: "dimmed" }, t("actionTypes.evaluateClaim.flow.disputed.noMessageAttached", { defaultValue: "A dispute was recorded but no message was attached." })), (disputeDetails.evaluatorDid || disputeDetails.disputedAt) && /* @__PURE__ */ React269.createElement(Text164, { size: "xs", c: "dimmed" }, disputeDetails.evaluatorDid ? t("actionTypes.claim.flow.disputed.byEvaluator", {
29806
29809
  address: truncateAddress4(disputeDetails.evaluatorDid),
29807
29810
  defaultValue: `By ${truncateAddress4(disputeDetails.evaluatorDid)}`
29808
- }) : "", disputeDetails.evaluatorDid && disputeDetails.disputedAt ? " \xB7 " : "", disputeDetails.disputedAt ? new Date(disputeDetails.disputedAt).toLocaleString() : ""), /* @__PURE__ */ React269.createElement(Text164, { size: "xs", c: "dimmed" }, t("actionTypes.evaluateClaim.flow.disputed.amendNeeded", { defaultValue: "The submitter needs to amend and resubmit before this claim can be evaluated." }))) : typeof handlers.getClaimDisputeDetails !== "function" ? /* @__PURE__ */ React269.createElement(Text164, { size: "xs", c: "dimmed" }, t("actionTypes.claim.flow.disputed.unavailable", { defaultValue: "Dispute details unavailable in this environment." })) : /* @__PURE__ */ React269.createElement(Text164, { size: "xs", c: "dimmed" }, t("actionTypes.claim.flow.disputed.noRecord", { defaultValue: "No dispute record found on-chain for this claim." }))), /* @__PURE__ */ React269.createElement(CollapsibleSection, { title: t("actionTypes.evaluateClaim.flow.section.submission", { defaultValue: "Submission" }) }, surveyLoading ? /* @__PURE__ */ React269.createElement(Group105, { gap: "xs" }, /* @__PURE__ */ React269.createElement(Loader50, { size: "xs" }), /* @__PURE__ */ React269.createElement(Text164, { size: "xs", c: "dimmed" }, t("actionTypes.evaluateClaim.flow.loadingSubmissionDetails", { defaultValue: "Loading submission details..." }))) : surveyModel ? /* @__PURE__ */ React269.createElement(ScrollArea8, { h: 280 }, /* @__PURE__ */ React269.createElement(StableSurvey, { model: surveyModel })) : /* @__PURE__ */ React269.createElement(Text164, { size: "xs", c: "dimmed" }, t("actionTypes.evaluateClaim.flow.noSubmissionTemplate", { defaultValue: "No submission template/data available." }))), /* @__PURE__ */ React269.createElement(CollapsibleSection, { title: t("actionTypes.evaluateClaim.flow.section.attachments", { defaultValue: "Attachments" }) }, /* @__PURE__ */ React269.createElement(ClaimAttachments, { surveyModel, credentialSubject: resolvedCredentialSubject })), /* @__PURE__ */ React269.createElement(CollapsibleSection, { title: t("actionTypes.evaluateClaim.flow.section.aiEvaluation", { defaultValue: "AI Evaluation" }) }, evaluationLoading ? /* @__PURE__ */ React269.createElement(Group105, { gap: "xs" }, /* @__PURE__ */ React269.createElement(Loader50, { size: "xs" }), /* @__PURE__ */ React269.createElement(Text164, { size: "xs", c: "dimmed" }, t("actionTypes.evaluateClaim.flow.runningRubric", { defaultValue: "Running rubric evaluation..." }))) : evaluationResult ? /* @__PURE__ */ React269.createElement(ScrollArea8, { h: 280 }, /* @__PURE__ */ React269.createElement(RubricEvaluationResults, { evaluation: evaluationResult })) : /* @__PURE__ */ React269.createElement(Text164, { size: "xs", c: "dimmed" }, t("actionTypes.evaluateClaim.flow.noRubric", { defaultValue: "No rubric evaluation available for this claim." }))), xeroBlocks.invoiceCreateBlock && !isClaimAlreadyEvaluated && /* @__PURE__ */ React269.createElement(
29811
+ }) : "", disputeDetails.evaluatorDid && disputeDetails.disputedAt ? " \xB7 " : "", disputeDetails.disputedAt ? new Date(disputeDetails.disputedAt).toLocaleString() : ""), /* @__PURE__ */ React269.createElement(Text164, { size: "xs", c: "dimmed" }, t("actionTypes.evaluateClaim.flow.disputed.amendNeeded", { defaultValue: "The submitter needs to amend and resubmit before this claim can be evaluated." }))) : typeof handlers.getClaimDisputeDetails !== "function" ? /* @__PURE__ */ React269.createElement(Text164, { size: "xs", c: "dimmed" }, t("actionTypes.claim.flow.disputed.unavailable", { defaultValue: "Dispute details unavailable in this environment." })) : /* @__PURE__ */ React269.createElement(Text164, { size: "xs", c: "dimmed" }, t("actionTypes.claim.flow.disputed.noRecord", { defaultValue: "No dispute record found on-chain for this claim." }))), /* @__PURE__ */ React269.createElement(CollapsibleSection, { title: t("actionTypes.evaluateClaim.flow.section.submission", { defaultValue: "Submission" }) }, surveyLoading ? /* @__PURE__ */ React269.createElement(Group105, { gap: "xs" }, /* @__PURE__ */ React269.createElement(Loader50, { size: "xs" }), /* @__PURE__ */ React269.createElement(Text164, { size: "xs", c: "dimmed" }, t("actionTypes.evaluateClaim.flow.loadingSubmissionDetails", { defaultValue: "Loading submission details..." }))) : surveyModel ? /* @__PURE__ */ React269.createElement(ScrollArea8, { h: 280 }, /* @__PURE__ */ React269.createElement(StableSurvey, { model: surveyModel })) : /* @__PURE__ */ React269.createElement(Text164, { size: "xs", c: "dimmed" }, t("actionTypes.evaluateClaim.flow.noSubmissionTemplate", { defaultValue: "No submission template/data available." }))), /* @__PURE__ */ React269.createElement(CollapsibleSection, { title: t("actionTypes.evaluateClaim.flow.section.attachments", { defaultValue: "Attachments" }) }, /* @__PURE__ */ React269.createElement(ClaimAttachments, { surveyModel, credentialSubject: resolvedCredentialSubject, entityDid: deedDid })), /* @__PURE__ */ React269.createElement(CollapsibleSection, { title: t("actionTypes.evaluateClaim.flow.section.aiEvaluation", { defaultValue: "AI Evaluation" }) }, evaluationLoading ? /* @__PURE__ */ React269.createElement(Group105, { gap: "xs" }, /* @__PURE__ */ React269.createElement(Loader50, { size: "xs" }), /* @__PURE__ */ React269.createElement(Text164, { size: "xs", c: "dimmed" }, t("actionTypes.evaluateClaim.flow.runningRubric", { defaultValue: "Running rubric evaluation..." }))) : evaluationResult ? /* @__PURE__ */ React269.createElement(ScrollArea8, { h: 280 }, /* @__PURE__ */ React269.createElement(RubricEvaluationResults, { evaluation: evaluationResult })) : /* @__PURE__ */ React269.createElement(Text164, { size: "xs", c: "dimmed" }, t("actionTypes.evaluateClaim.flow.noRubric", { defaultValue: "No rubric evaluation available for this claim." }))), xeroBlocks.invoiceCreateBlock && !isClaimAlreadyEvaluated && /* @__PURE__ */ React269.createElement(
29809
29812
  CollapsibleSection,
29810
29813
  {
29811
29814
  title: "Xero Bill",
@@ -44946,4 +44949,4 @@ export {
44946
44949
  getExtraSlashMenuItems,
44947
44950
  useCreateIxoEditor
44948
44951
  };
44949
- //# sourceMappingURL=chunk-VSQRWDR6.mjs.map
44952
+ //# sourceMappingURL=chunk-6WLTWDCS.mjs.map