@ixo/openhands-sdk 0.4.1 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/cjs/campaign/cleanup.js +1 -1
- package/dist/cjs/campaign/cleanup.js.map +1 -1
- package/dist/cjs/campaign/funding.js +3 -3
- package/dist/cjs/campaign/funding.js.map +1 -1
- package/dist/cjs/campaign/spot.d.ts.map +1 -1
- package/dist/cjs/campaign/spot.js +2 -1
- package/dist/cjs/campaign/spot.js.map +1 -1
- package/dist/cjs/chain/ask.d.ts +72 -2
- package/dist/cjs/chain/ask.d.ts.map +1 -1
- package/dist/cjs/chain/ask.js +68 -34
- package/dist/cjs/chain/ask.js.map +1 -1
- package/dist/cjs/chain/broadcast.d.ts.map +1 -1
- package/dist/cjs/chain/broadcast.js +6 -4
- package/dist/cjs/chain/broadcast.js.map +1 -1
- package/dist/cjs/chain/claimVerdict.d.ts +26 -0
- package/dist/cjs/chain/claimVerdict.d.ts.map +1 -0
- package/dist/cjs/chain/claimVerdict.js +33 -0
- package/dist/cjs/chain/claimVerdict.js.map +1 -0
- package/dist/cjs/chain/delegate.d.ts +54 -13
- package/dist/cjs/chain/delegate.d.ts.map +1 -1
- package/dist/cjs/chain/delegate.js +77 -28
- package/dist/cjs/chain/delegate.js.map +1 -1
- package/dist/cjs/chain/entityShape.d.ts +2 -0
- package/dist/cjs/chain/entityShape.d.ts.map +1 -1
- package/dist/cjs/chain/entityShape.js +8 -1
- package/dist/cjs/chain/entityShape.js.map +1 -1
- package/dist/cjs/chain/env.d.ts +1 -0
- package/dist/cjs/chain/env.d.ts.map +1 -1
- package/dist/cjs/chain/env.js +9 -1
- package/dist/cjs/chain/env.js.map +1 -1
- package/dist/cjs/chain/inviteMessages.d.ts +224 -0
- package/dist/cjs/chain/inviteMessages.d.ts.map +1 -0
- package/dist/cjs/chain/inviteMessages.js +347 -0
- package/dist/cjs/chain/inviteMessages.js.map +1 -0
- package/dist/cjs/chain/inviteProof.d.ts +121 -0
- package/dist/cjs/chain/inviteProof.d.ts.map +1 -0
- package/dist/cjs/chain/inviteProof.js +297 -0
- package/dist/cjs/chain/inviteProof.js.map +1 -0
- package/dist/cjs/chain/lane.d.ts +148 -0
- package/dist/cjs/chain/lane.d.ts.map +1 -0
- package/dist/cjs/chain/lane.js +220 -0
- package/dist/cjs/chain/lane.js.map +1 -0
- package/dist/cjs/chain/money.d.ts +24 -17
- package/dist/cjs/chain/money.d.ts.map +1 -1
- package/dist/cjs/chain/money.js +28 -29
- package/dist/cjs/chain/money.js.map +1 -1
- package/dist/cjs/chain/oracle.d.ts +2 -0
- package/dist/cjs/chain/oracle.d.ts.map +1 -1
- package/dist/cjs/chain/oracle.js +1 -1
- package/dist/cjs/chain/oracle.js.map +1 -1
- package/dist/cjs/chain/orgReviewBilling.d.ts +1 -1
- package/dist/cjs/chain/orgReviewBilling.d.ts.map +1 -1
- package/dist/cjs/chain/orgReviewBilling.js +16 -15
- package/dist/cjs/chain/orgReviewBilling.js.map +1 -1
- package/dist/cjs/chain/payoutTerms.d.ts.map +1 -1
- package/dist/cjs/chain/payoutTerms.js +1 -1
- package/dist/cjs/chain/payoutTerms.js.map +1 -1
- package/dist/cjs/chain/personReview.d.ts +218 -0
- package/dist/cjs/chain/personReview.d.ts.map +1 -0
- package/dist/cjs/chain/personReview.js +379 -0
- package/dist/cjs/chain/personReview.js.map +1 -0
- package/dist/cjs/chain/postFee.d.ts +11 -0
- package/dist/cjs/chain/postFee.d.ts.map +1 -0
- package/dist/cjs/chain/postFee.js +14 -0
- package/dist/cjs/chain/postFee.js.map +1 -0
- package/dist/cjs/chain/query.d.ts +55 -2
- package/dist/cjs/chain/query.d.ts.map +1 -1
- package/dist/cjs/chain/query.js +144 -8
- package/dist/cjs/chain/query.js.map +1 -1
- package/dist/cjs/chain/reviewBilling.d.ts +3 -27
- package/dist/cjs/chain/reviewBilling.d.ts.map +1 -1
- package/dist/cjs/chain/reviewBilling.js +5 -112
- package/dist/cjs/chain/reviewBilling.js.map +1 -1
- package/dist/cjs/chain/rewardDenom.d.ts +6 -0
- package/dist/cjs/chain/rewardDenom.d.ts.map +1 -0
- package/dist/cjs/chain/rewardDenom.js +9 -0
- package/dist/cjs/chain/rewardDenom.js.map +1 -0
- package/dist/cjs/chain/sponsor.d.ts +1 -1
- package/dist/cjs/chain/sponsor.d.ts.map +1 -1
- package/dist/cjs/chain/sponsor.js +8 -4
- package/dist/cjs/chain/sponsor.js.map +1 -1
- package/dist/cjs/chain.d.ts +1 -1
- package/dist/cjs/chain.d.ts.map +1 -1
- package/dist/cjs/chain.js +5 -4
- package/dist/cjs/chain.js.map +1 -1
- package/dist/cjs/config.d.ts +12 -3
- package/dist/cjs/config.d.ts.map +1 -1
- package/dist/cjs/config.js +5 -1
- package/dist/cjs/config.js.map +1 -1
- package/dist/cjs/data/agent.d.ts +2 -0
- package/dist/cjs/data/agent.d.ts.map +1 -1
- package/dist/cjs/data/agent.js +1 -0
- package/dist/cjs/data/agent.js.map +1 -1
- package/dist/cjs/data/board/assemble.d.ts +7 -2
- package/dist/cjs/data/board/assemble.d.ts.map +1 -1
- package/dist/cjs/data/board/assemble.js +76 -10
- package/dist/cjs/data/board/assemble.js.map +1 -1
- package/dist/cjs/data/board/facts.d.ts +10 -0
- package/dist/cjs/data/board/facts.d.ts.map +1 -1
- package/dist/cjs/data/board/facts.js +14 -1
- package/dist/cjs/data/board/facts.js.map +1 -1
- package/dist/cjs/data/board/read.d.ts +46 -3
- package/dist/cjs/data/board/read.d.ts.map +1 -1
- package/dist/cjs/data/board/read.js +145 -9
- package/dist/cjs/data/board/read.js.map +1 -1
- package/dist/cjs/data/board/types.d.ts +82 -5
- package/dist/cjs/data/board/types.d.ts.map +1 -1
- package/dist/cjs/data/board/types.js +5 -3
- package/dist/cjs/data/board/types.js.map +1 -1
- package/dist/cjs/data/checkers.d.ts +169 -0
- package/dist/cjs/data/checkers.d.ts.map +1 -0
- package/dist/cjs/data/checkers.js +354 -0
- package/dist/cjs/data/checkers.js.map +1 -0
- package/dist/cjs/data/checkersRead.d.ts +58 -0
- package/dist/cjs/data/checkersRead.d.ts.map +1 -0
- package/dist/cjs/data/checkersRead.js +263 -0
- package/dist/cjs/data/checkersRead.js.map +1 -0
- package/dist/cjs/data/denoms.d.ts.map +1 -1
- package/dist/cjs/data/denoms.js +1 -0
- package/dist/cjs/data/denoms.js.map +1 -1
- package/dist/cjs/data/docUrls.d.ts +3 -0
- package/dist/cjs/data/docUrls.d.ts.map +1 -1
- package/dist/cjs/data/docUrls.js +12 -1
- package/dist/cjs/data/docUrls.js.map +1 -1
- package/dist/cjs/data/docs.d.ts +3 -1
- package/dist/cjs/data/docs.d.ts.map +1 -1
- package/dist/cjs/data/docs.js +15 -2
- package/dist/cjs/data/docs.js.map +1 -1
- package/dist/cjs/data/engine.d.ts.map +1 -1
- package/dist/cjs/data/engine.js +12 -5
- package/dist/cjs/data/engine.js.map +1 -1
- package/dist/cjs/data/engineUrl.js +1 -1
- package/dist/cjs/data/engineUrl.js.map +1 -1
- package/dist/cjs/data/envelope.d.ts +18 -0
- package/dist/cjs/data/envelope.d.ts.map +1 -1
- package/dist/cjs/data/envelope.js +16 -1
- package/dist/cjs/data/envelope.js.map +1 -1
- package/dist/cjs/data/format.d.ts +32 -10
- package/dist/cjs/data/format.d.ts.map +1 -1
- package/dist/cjs/data/format.js +62 -19
- package/dist/cjs/data/format.js.map +1 -1
- package/dist/cjs/data/index.d.ts +2 -2
- package/dist/cjs/data/index.d.ts.map +1 -1
- package/dist/cjs/data/index.js +2 -1
- package/dist/cjs/data/index.js.map +1 -1
- package/dist/cjs/data/install.d.ts +46 -49
- package/dist/cjs/data/install.d.ts.map +1 -1
- package/dist/cjs/data/install.js +62 -61
- package/dist/cjs/data/install.js.map +1 -1
- package/dist/cjs/data/money.d.ts +36 -0
- package/dist/cjs/data/money.d.ts.map +1 -0
- package/dist/cjs/data/money.js +95 -0
- package/dist/cjs/data/money.js.map +1 -0
- package/dist/cjs/data/openness.d.ts +17 -1
- package/dist/cjs/data/openness.d.ts.map +1 -1
- package/dist/cjs/data/openness.js +16 -26
- package/dist/cjs/data/openness.js.map +1 -1
- package/dist/cjs/data/queue.d.ts +26 -0
- package/dist/cjs/data/queue.d.ts.map +1 -1
- package/dist/cjs/data/queue.js +57 -12
- package/dist/cjs/data/queue.js.map +1 -1
- package/dist/cjs/data/receipt.d.ts +19 -0
- package/dist/cjs/data/receipt.d.ts.map +1 -1
- package/dist/cjs/data/receipt.js +22 -5
- package/dist/cjs/data/receipt.js.map +1 -1
- package/dist/cjs/data/sponsors.d.ts +94 -0
- package/dist/cjs/data/sponsors.d.ts.map +1 -0
- package/dist/cjs/data/sponsors.js +147 -0
- package/dist/cjs/data/sponsors.js.map +1 -0
- package/dist/cjs/data/threads.d.ts +4 -0
- package/dist/cjs/data/threads.d.ts.map +1 -1
- package/dist/cjs/data/threads.js +5 -1
- package/dist/cjs/data/threads.js.map +1 -1
- package/dist/cjs/data/traceWords.js +8 -8
- package/dist/cjs/data/traceWords.js.map +1 -1
- package/dist/cjs/data/types.d.ts +6 -1
- package/dist/cjs/data/types.d.ts.map +1 -1
- package/dist/cjs/data/types.js.map +1 -1
- package/dist/cjs/data/whyReceipt.d.ts.map +1 -1
- package/dist/cjs/data/whyReceipt.js +10 -1
- package/dist/cjs/data/whyReceipt.js.map +1 -1
- package/dist/cjs/data/work.d.ts +5 -0
- package/dist/cjs/data/work.d.ts.map +1 -1
- package/dist/cjs/data/work.js +11 -5
- package/dist/cjs/data/work.js.map +1 -1
- package/dist/cjs/discovery.d.ts +64 -0
- package/dist/cjs/discovery.d.ts.map +1 -0
- package/dist/cjs/discovery.js +85 -0
- package/dist/cjs/discovery.js.map +1 -0
- package/dist/cjs/envRead.d.ts +1 -1
- package/dist/cjs/envRead.d.ts.map +1 -1
- package/dist/cjs/envRead.js +2 -1
- package/dist/cjs/envRead.js.map +1 -1
- package/dist/cjs/given.d.ts +14 -0
- package/dist/cjs/given.d.ts.map +1 -1
- package/dist/cjs/given.js +14 -2
- package/dist/cjs/given.js.map +1 -1
- package/dist/cjs/network.d.ts +3 -1
- package/dist/cjs/network.d.ts.map +1 -1
- package/dist/cjs/network.js +11 -3
- package/dist/cjs/network.js.map +1 -1
- package/dist/cjs/rubric/bridge.d.ts +8 -0
- package/dist/cjs/rubric/bridge.d.ts.map +1 -1
- package/dist/cjs/rubric/bridge.js +107 -8
- package/dist/cjs/rubric/bridge.js.map +1 -1
- package/dist/cjs/rubric/call.d.ts +35 -8
- package/dist/cjs/rubric/call.d.ts.map +1 -1
- package/dist/cjs/rubric/call.js +62 -20
- package/dist/cjs/rubric/call.js.map +1 -1
- package/dist/cjs/rubric/callChecks.d.ts +14 -0
- package/dist/cjs/rubric/callChecks.d.ts.map +1 -0
- package/dist/cjs/rubric/callChecks.js +43 -0
- package/dist/cjs/rubric/callChecks.js.map +1 -0
- package/dist/cjs/rubric/callLimits.d.ts +28 -0
- package/dist/cjs/rubric/callLimits.d.ts.map +1 -0
- package/dist/cjs/rubric/callLimits.js +36 -0
- package/dist/cjs/rubric/callLimits.js.map +1 -0
- package/dist/cjs/rubric/callTag.d.ts +5 -0
- package/dist/cjs/rubric/callTag.d.ts.map +1 -0
- package/dist/cjs/rubric/callTag.js +17 -0
- package/dist/cjs/rubric/callTag.js.map +1 -0
- package/dist/cjs/rubric/compose.d.ts.map +1 -1
- package/dist/cjs/rubric/compose.js +5 -3
- package/dist/cjs/rubric/compose.js.map +1 -1
- package/dist/cjs/rubric/draft.d.ts +9 -1
- package/dist/cjs/rubric/draft.d.ts.map +1 -1
- package/dist/cjs/rubric/draft.js +25 -3
- package/dist/cjs/rubric/draft.js.map +1 -1
- package/dist/cjs/rubric/feeLine.d.ts +26 -0
- package/dist/cjs/rubric/feeLine.d.ts.map +1 -0
- package/dist/cjs/rubric/feeLine.js +46 -0
- package/dist/cjs/rubric/feeLine.js.map +1 -0
- package/dist/cjs/rubric/gateMet.d.ts +17 -0
- package/dist/cjs/rubric/gateMet.d.ts.map +1 -1
- package/dist/cjs/rubric/gateMet.js +36 -3
- package/dist/cjs/rubric/gateMet.js.map +1 -1
- package/dist/cjs/rubric/leg.js +3 -3
- package/dist/cjs/rubric/leg.js.map +1 -1
- package/dist/cjs/rubric/marketPlan.d.ts +2 -0
- package/dist/cjs/rubric/marketPlan.d.ts.map +1 -1
- package/dist/cjs/rubric/marketPlan.js.map +1 -1
- package/dist/cjs/rubric/planAsk.d.ts +23 -0
- package/dist/cjs/rubric/planAsk.d.ts.map +1 -0
- package/dist/cjs/rubric/planAsk.js +24 -0
- package/dist/cjs/rubric/planAsk.js.map +1 -0
- package/dist/cjs/rubric/report.d.ts +208 -0
- package/dist/cjs/rubric/report.d.ts.map +1 -0
- package/dist/cjs/rubric/report.js +411 -0
- package/dist/cjs/rubric/report.js.map +1 -0
- package/dist/cjs/rubric/reportLine.d.ts +31 -0
- package/dist/cjs/rubric/reportLine.d.ts.map +1 -0
- package/dist/cjs/rubric/reportLine.js +45 -0
- package/dist/cjs/rubric/reportLine.js.map +1 -0
- package/dist/cjs/rubric/reportTemplate.d.ts +30 -0
- package/dist/cjs/rubric/reportTemplate.d.ts.map +1 -0
- package/dist/cjs/rubric/reportTemplate.js +78 -0
- package/dist/cjs/rubric/reportTemplate.js.map +1 -0
- package/dist/cjs/rubric/share.d.ts +46 -0
- package/dist/cjs/rubric/share.d.ts.map +1 -0
- package/dist/cjs/rubric/share.js +65 -0
- package/dist/cjs/rubric/share.js.map +1 -0
- package/dist/cjs/rubric/terms.d.ts +89 -25
- package/dist/cjs/rubric/terms.d.ts.map +1 -1
- package/dist/cjs/rubric/terms.js +91 -29
- package/dist/cjs/rubric/terms.js.map +1 -1
- package/dist/cjs/verification/profile.d.ts +28 -0
- package/dist/cjs/verification/profile.d.ts.map +1 -0
- package/dist/cjs/verification/profile.js +126 -0
- package/dist/cjs/verification/profile.js.map +1 -0
- package/dist/cjs/verification/schema.d.ts +54 -0
- package/dist/cjs/verification/schema.d.ts.map +1 -0
- package/dist/cjs/verification/schema.js +49 -0
- package/dist/cjs/verification/schema.js.map +1 -0
- package/dist/esm/campaign/cleanup.js +1 -1
- package/dist/esm/campaign/cleanup.js.map +1 -1
- package/dist/esm/campaign/funding.js +3 -3
- package/dist/esm/campaign/funding.js.map +1 -1
- package/dist/esm/campaign/spot.d.ts.map +1 -1
- package/dist/esm/campaign/spot.js +2 -1
- package/dist/esm/campaign/spot.js.map +1 -1
- package/dist/esm/chain/ask.d.ts +72 -2
- package/dist/esm/chain/ask.d.ts.map +1 -1
- package/dist/esm/chain/ask.js +69 -36
- package/dist/esm/chain/ask.js.map +1 -1
- package/dist/esm/chain/broadcast.d.ts.map +1 -1
- package/dist/esm/chain/broadcast.js +7 -5
- package/dist/esm/chain/broadcast.js.map +1 -1
- package/dist/esm/chain/claimVerdict.d.ts +26 -0
- package/dist/esm/chain/claimVerdict.d.ts.map +1 -0
- package/dist/esm/chain/claimVerdict.js +30 -0
- package/dist/esm/chain/claimVerdict.js.map +1 -0
- package/dist/esm/chain/delegate.d.ts +54 -13
- package/dist/esm/chain/delegate.d.ts.map +1 -1
- package/dist/esm/chain/delegate.js +69 -27
- package/dist/esm/chain/delegate.js.map +1 -1
- package/dist/esm/chain/entityShape.d.ts +2 -0
- package/dist/esm/chain/entityShape.d.ts.map +1 -1
- package/dist/esm/chain/entityShape.js +6 -0
- package/dist/esm/chain/entityShape.js.map +1 -1
- package/dist/esm/chain/env.d.ts +1 -0
- package/dist/esm/chain/env.d.ts.map +1 -1
- package/dist/esm/chain/env.js +7 -0
- package/dist/esm/chain/env.js.map +1 -1
- package/dist/esm/chain/inviteMessages.d.ts +224 -0
- package/dist/esm/chain/inviteMessages.d.ts.map +1 -0
- package/dist/esm/chain/inviteMessages.js +296 -0
- package/dist/esm/chain/inviteMessages.js.map +1 -0
- package/dist/esm/chain/inviteProof.d.ts +121 -0
- package/dist/esm/chain/inviteProof.d.ts.map +1 -0
- package/dist/esm/chain/inviteProof.js +278 -0
- package/dist/esm/chain/inviteProof.js.map +1 -0
- package/dist/esm/chain/lane.d.ts +148 -0
- package/dist/esm/chain/lane.d.ts.map +1 -0
- package/dist/esm/chain/lane.js +170 -0
- package/dist/esm/chain/lane.js.map +1 -0
- package/dist/esm/chain/money.d.ts +24 -17
- package/dist/esm/chain/money.d.ts.map +1 -1
- package/dist/esm/chain/money.js +34 -25
- package/dist/esm/chain/money.js.map +1 -1
- package/dist/esm/chain/oracle.d.ts +2 -0
- package/dist/esm/chain/oracle.d.ts.map +1 -1
- package/dist/esm/chain/oracle.js +1 -1
- package/dist/esm/chain/oracle.js.map +1 -1
- package/dist/esm/chain/orgReviewBilling.d.ts +1 -1
- package/dist/esm/chain/orgReviewBilling.d.ts.map +1 -1
- package/dist/esm/chain/orgReviewBilling.js +16 -15
- package/dist/esm/chain/orgReviewBilling.js.map +1 -1
- package/dist/esm/chain/payoutTerms.d.ts.map +1 -1
- package/dist/esm/chain/payoutTerms.js +1 -1
- package/dist/esm/chain/payoutTerms.js.map +1 -1
- package/dist/esm/chain/personReview.d.ts +218 -0
- package/dist/esm/chain/personReview.d.ts.map +1 -0
- package/dist/esm/chain/personReview.js +322 -0
- package/dist/esm/chain/personReview.js.map +1 -0
- package/dist/esm/chain/postFee.d.ts +11 -0
- package/dist/esm/chain/postFee.d.ts.map +1 -0
- package/dist/esm/chain/postFee.js +11 -0
- package/dist/esm/chain/postFee.js.map +1 -0
- package/dist/esm/chain/query.d.ts +55 -2
- package/dist/esm/chain/query.d.ts.map +1 -1
- package/dist/esm/chain/query.js +136 -8
- package/dist/esm/chain/query.js.map +1 -1
- package/dist/esm/chain/reviewBilling.d.ts +3 -27
- package/dist/esm/chain/reviewBilling.d.ts.map +1 -1
- package/dist/esm/chain/reviewBilling.js +5 -108
- package/dist/esm/chain/reviewBilling.js.map +1 -1
- package/dist/esm/chain/rewardDenom.d.ts +6 -0
- package/dist/esm/chain/rewardDenom.d.ts.map +1 -0
- package/dist/esm/chain/rewardDenom.js +5 -0
- package/dist/esm/chain/rewardDenom.js.map +1 -0
- package/dist/esm/chain/sponsor.d.ts +1 -1
- package/dist/esm/chain/sponsor.d.ts.map +1 -1
- package/dist/esm/chain/sponsor.js +8 -4
- package/dist/esm/chain/sponsor.js.map +1 -1
- package/dist/esm/chain.d.ts +1 -1
- package/dist/esm/chain.d.ts.map +1 -1
- package/dist/esm/chain.js +1 -1
- package/dist/esm/chain.js.map +1 -1
- package/dist/esm/config.d.ts +12 -3
- package/dist/esm/config.d.ts.map +1 -1
- package/dist/esm/config.js +6 -2
- package/dist/esm/config.js.map +1 -1
- package/dist/esm/data/agent.d.ts +2 -0
- package/dist/esm/data/agent.d.ts.map +1 -1
- package/dist/esm/data/agent.js +1 -0
- package/dist/esm/data/agent.js.map +1 -1
- package/dist/esm/data/board/assemble.d.ts +7 -2
- package/dist/esm/data/board/assemble.d.ts.map +1 -1
- package/dist/esm/data/board/assemble.js +73 -9
- package/dist/esm/data/board/assemble.js.map +1 -1
- package/dist/esm/data/board/facts.d.ts +10 -0
- package/dist/esm/data/board/facts.d.ts.map +1 -1
- package/dist/esm/data/board/facts.js +13 -1
- package/dist/esm/data/board/facts.js.map +1 -1
- package/dist/esm/data/board/read.d.ts +46 -3
- package/dist/esm/data/board/read.d.ts.map +1 -1
- package/dist/esm/data/board/read.js +143 -10
- package/dist/esm/data/board/read.js.map +1 -1
- package/dist/esm/data/board/types.d.ts +82 -5
- package/dist/esm/data/board/types.d.ts.map +1 -1
- package/dist/esm/data/board/types.js +5 -3
- package/dist/esm/data/board/types.js.map +1 -1
- package/dist/esm/data/checkers.d.ts +169 -0
- package/dist/esm/data/checkers.d.ts.map +1 -0
- package/dist/esm/data/checkers.js +304 -0
- package/dist/esm/data/checkers.js.map +1 -0
- package/dist/esm/data/checkersRead.d.ts +58 -0
- package/dist/esm/data/checkersRead.d.ts.map +1 -0
- package/dist/esm/data/checkersRead.js +252 -0
- package/dist/esm/data/checkersRead.js.map +1 -0
- package/dist/esm/data/denoms.d.ts.map +1 -1
- package/dist/esm/data/denoms.js +1 -0
- package/dist/esm/data/denoms.js.map +1 -1
- package/dist/esm/data/docUrls.d.ts +3 -0
- package/dist/esm/data/docUrls.d.ts.map +1 -1
- package/dist/esm/data/docUrls.js +9 -0
- package/dist/esm/data/docUrls.js.map +1 -1
- package/dist/esm/data/docs.d.ts +3 -1
- package/dist/esm/data/docs.d.ts.map +1 -1
- package/dist/esm/data/docs.js +15 -2
- package/dist/esm/data/docs.js.map +1 -1
- package/dist/esm/data/engine.d.ts.map +1 -1
- package/dist/esm/data/engine.js +12 -5
- package/dist/esm/data/engine.js.map +1 -1
- package/dist/esm/data/engineUrl.js +2 -2
- package/dist/esm/data/engineUrl.js.map +1 -1
- package/dist/esm/data/envelope.d.ts +18 -0
- package/dist/esm/data/envelope.d.ts.map +1 -1
- package/dist/esm/data/envelope.js +14 -0
- package/dist/esm/data/envelope.js.map +1 -1
- package/dist/esm/data/format.d.ts +32 -10
- package/dist/esm/data/format.d.ts.map +1 -1
- package/dist/esm/data/format.js +58 -18
- package/dist/esm/data/format.js.map +1 -1
- package/dist/esm/data/index.d.ts +2 -2
- package/dist/esm/data/index.d.ts.map +1 -1
- package/dist/esm/data/index.js +1 -1
- package/dist/esm/data/index.js.map +1 -1
- package/dist/esm/data/install.d.ts +46 -49
- package/dist/esm/data/install.d.ts.map +1 -1
- package/dist/esm/data/install.js +58 -60
- package/dist/esm/data/install.js.map +1 -1
- package/dist/esm/data/money.d.ts +36 -0
- package/dist/esm/data/money.d.ts.map +1 -0
- package/dist/esm/data/money.js +90 -0
- package/dist/esm/data/money.js.map +1 -0
- package/dist/esm/data/openness.d.ts +17 -1
- package/dist/esm/data/openness.d.ts.map +1 -1
- package/dist/esm/data/openness.js +16 -26
- package/dist/esm/data/openness.js.map +1 -1
- package/dist/esm/data/queue.d.ts +26 -0
- package/dist/esm/data/queue.d.ts.map +1 -1
- package/dist/esm/data/queue.js +50 -9
- package/dist/esm/data/queue.js.map +1 -1
- package/dist/esm/data/receipt.d.ts +19 -0
- package/dist/esm/data/receipt.d.ts.map +1 -1
- package/dist/esm/data/receipt.js +20 -4
- package/dist/esm/data/receipt.js.map +1 -1
- package/dist/esm/data/sponsors.d.ts +94 -0
- package/dist/esm/data/sponsors.d.ts.map +1 -0
- package/dist/esm/data/sponsors.js +137 -0
- package/dist/esm/data/sponsors.js.map +1 -0
- package/dist/esm/data/threads.d.ts +4 -0
- package/dist/esm/data/threads.d.ts.map +1 -1
- package/dist/esm/data/threads.js +6 -2
- package/dist/esm/data/threads.js.map +1 -1
- package/dist/esm/data/traceWords.js +8 -8
- package/dist/esm/data/traceWords.js.map +1 -1
- package/dist/esm/data/types.d.ts +6 -1
- package/dist/esm/data/types.d.ts.map +1 -1
- package/dist/esm/data/types.js.map +1 -1
- package/dist/esm/data/whyReceipt.d.ts.map +1 -1
- package/dist/esm/data/whyReceipt.js +10 -1
- package/dist/esm/data/whyReceipt.js.map +1 -1
- package/dist/esm/data/work.d.ts +5 -0
- package/dist/esm/data/work.d.ts.map +1 -1
- package/dist/esm/data/work.js +11 -5
- package/dist/esm/data/work.js.map +1 -1
- package/dist/esm/discovery.d.ts +64 -0
- package/dist/esm/discovery.d.ts.map +1 -0
- package/dist/esm/discovery.js +74 -0
- package/dist/esm/discovery.js.map +1 -0
- package/dist/esm/envRead.d.ts +1 -1
- package/dist/esm/envRead.d.ts.map +1 -1
- package/dist/esm/envRead.js +1 -1
- package/dist/esm/envRead.js.map +1 -1
- package/dist/esm/given.d.ts +14 -0
- package/dist/esm/given.d.ts.map +1 -1
- package/dist/esm/given.js +11 -1
- package/dist/esm/given.js.map +1 -1
- package/dist/esm/network.d.ts +3 -1
- package/dist/esm/network.d.ts.map +1 -1
- package/dist/esm/network.js +10 -3
- package/dist/esm/network.js.map +1 -1
- package/dist/esm/rubric/bridge.d.ts +8 -0
- package/dist/esm/rubric/bridge.d.ts.map +1 -1
- package/dist/esm/rubric/bridge.js +105 -7
- package/dist/esm/rubric/bridge.js.map +1 -1
- package/dist/esm/rubric/call.d.ts +35 -8
- package/dist/esm/rubric/call.d.ts.map +1 -1
- package/dist/esm/rubric/call.js +57 -16
- package/dist/esm/rubric/call.js.map +1 -1
- package/dist/esm/rubric/callChecks.d.ts +14 -0
- package/dist/esm/rubric/callChecks.d.ts.map +1 -0
- package/dist/esm/rubric/callChecks.js +36 -0
- package/dist/esm/rubric/callChecks.js.map +1 -0
- package/dist/esm/rubric/callLimits.d.ts +28 -0
- package/dist/esm/rubric/callLimits.d.ts.map +1 -0
- package/dist/esm/rubric/callLimits.js +33 -0
- package/dist/esm/rubric/callLimits.js.map +1 -0
- package/dist/esm/rubric/callTag.d.ts +5 -0
- package/dist/esm/rubric/callTag.d.ts.map +1 -0
- package/dist/esm/rubric/callTag.js +12 -0
- package/dist/esm/rubric/callTag.js.map +1 -0
- package/dist/esm/rubric/compose.d.ts.map +1 -1
- package/dist/esm/rubric/compose.js +5 -3
- package/dist/esm/rubric/compose.js.map +1 -1
- package/dist/esm/rubric/draft.d.ts +9 -1
- package/dist/esm/rubric/draft.d.ts.map +1 -1
- package/dist/esm/rubric/draft.js +24 -3
- package/dist/esm/rubric/draft.js.map +1 -1
- package/dist/esm/rubric/feeLine.d.ts +26 -0
- package/dist/esm/rubric/feeLine.d.ts.map +1 -0
- package/dist/esm/rubric/feeLine.js +42 -0
- package/dist/esm/rubric/feeLine.js.map +1 -0
- package/dist/esm/rubric/gateMet.d.ts +17 -0
- package/dist/esm/rubric/gateMet.d.ts.map +1 -1
- package/dist/esm/rubric/gateMet.js +34 -2
- package/dist/esm/rubric/gateMet.js.map +1 -1
- package/dist/esm/rubric/leg.js +4 -4
- package/dist/esm/rubric/leg.js.map +1 -1
- package/dist/esm/rubric/marketPlan.d.ts +2 -0
- package/dist/esm/rubric/marketPlan.d.ts.map +1 -1
- package/dist/esm/rubric/marketPlan.js.map +1 -1
- package/dist/esm/rubric/planAsk.d.ts +23 -0
- package/dist/esm/rubric/planAsk.d.ts.map +1 -0
- package/dist/esm/rubric/planAsk.js +20 -0
- package/dist/esm/rubric/planAsk.js.map +1 -0
- package/dist/esm/rubric/report.d.ts +208 -0
- package/dist/esm/rubric/report.d.ts.map +1 -0
- package/dist/esm/rubric/report.js +398 -0
- package/dist/esm/rubric/report.js.map +1 -0
- package/dist/esm/rubric/reportLine.d.ts +31 -0
- package/dist/esm/rubric/reportLine.d.ts.map +1 -0
- package/dist/esm/rubric/reportLine.js +40 -0
- package/dist/esm/rubric/reportLine.js.map +1 -0
- package/dist/esm/rubric/reportTemplate.d.ts +30 -0
- package/dist/esm/rubric/reportTemplate.d.ts.map +1 -0
- package/dist/esm/rubric/reportTemplate.js +74 -0
- package/dist/esm/rubric/reportTemplate.js.map +1 -0
- package/dist/esm/rubric/share.d.ts +46 -0
- package/dist/esm/rubric/share.d.ts.map +1 -0
- package/dist/esm/rubric/share.js +58 -0
- package/dist/esm/rubric/share.js.map +1 -0
- package/dist/esm/rubric/terms.d.ts +89 -25
- package/dist/esm/rubric/terms.d.ts.map +1 -1
- package/dist/esm/rubric/terms.js +83 -25
- package/dist/esm/rubric/terms.js.map +1 -1
- package/dist/esm/verification/profile.d.ts +28 -0
- package/dist/esm/verification/profile.d.ts.map +1 -0
- package/dist/esm/verification/profile.js +122 -0
- package/dist/esm/verification/profile.js.map +1 -0
- package/dist/esm/verification/schema.d.ts +54 -0
- package/dist/esm/verification/schema.d.ts.map +1 -0
- package/dist/esm/verification/schema.js +46 -0
- package/dist/esm/verification/schema.js.map +1 -0
- package/package.json +22 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/data/install.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,0EAA0E;AAC1E,MAAM,CAAC,MAAM,WAAW,GAAG,
|
|
1
|
+
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/data/install.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The one way an amount becomes words.
|
|
3
|
+
*
|
|
4
|
+
* Every coin that is held at a dollar (PAY, and USDC in both its denoms) is shown as dollars: `$12.00`, never a
|
|
5
|
+
* ticker. A reader who chose a currency sees it beside the dollars, `≈ €11.20`, with `≈` because a reference rate
|
|
6
|
+
* is not the amount that moved. Sandbox money looks exactly like real money: the page's band says what it is, and
|
|
7
|
+
* the number wears no second disclaimer.
|
|
8
|
+
*
|
|
9
|
+
* IXO floats, so it has no dollar face. An old IXO amount in the sandbox is play money and is faced 1:1, marked
|
|
10
|
+
* approximate; on the real network it is said as itself, "12.5 IXO", never with a `$`.
|
|
11
|
+
*
|
|
12
|
+
* A leaf: no import, so a page that only shows amounts pays for this file and nothing behind it.
|
|
13
|
+
*/
|
|
14
|
+
/** What an amount says: the dollar face, the reader's currency beside it (or null), and the hover. */
|
|
15
|
+
export interface MoneyFace {
|
|
16
|
+
face: string;
|
|
17
|
+
local: string | null;
|
|
18
|
+
approx: boolean;
|
|
19
|
+
title: string;
|
|
20
|
+
}
|
|
21
|
+
/** Who is reading: the currency they chose (and its rate, units per dollar), and whether this is the sandbox. */
|
|
22
|
+
export interface Viewer {
|
|
23
|
+
currency?: string;
|
|
24
|
+
rate?: number | null;
|
|
25
|
+
sandbox: boolean;
|
|
26
|
+
}
|
|
27
|
+
/** The denoms held at one US dollar, each six decimals: 1 000 000 base units = $1. */
|
|
28
|
+
export declare const DOLLAR_DENOMS: ReadonlySet<string>;
|
|
29
|
+
/** A display amount in dollars, as every page writes one: `0.5` → "$0.50", `0.000001` → "$0.000001". */
|
|
30
|
+
export declare function dollars(value: number): string;
|
|
31
|
+
/**
|
|
32
|
+
* `base` units of `denom`, in words for `viewer`, or null when it has no honest face: a coin this file does not know
|
|
33
|
+
* (the caller says *see the record*), or an amount that is not one.
|
|
34
|
+
*/
|
|
35
|
+
export declare function money(base: bigint | number | string, denom: string, viewer: Viewer): MoneyFace | null;
|
|
36
|
+
//# sourceMappingURL=money.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"money.d.ts","sourceRoot":"","sources":["../../../src/data/money.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,sGAAsG;AACtG,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,iHAAiH;AACjH,MAAM,WAAW,MAAM;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;CAClB;AAMD,sFAAsF;AACtF,eAAO,MAAM,aAAa,EAAE,WAAW,CAAC,MAAM,CAAsD,CAAC;AASrG,wGAAwG;AACxG,wBAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAG7C;AA0CD;;;GAGG;AACH,wBAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAWrG"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The one way an amount becomes words.
|
|
3
|
+
*
|
|
4
|
+
* Every coin that is held at a dollar (PAY, and USDC in both its denoms) is shown as dollars: `$12.00`, never a
|
|
5
|
+
* ticker. A reader who chose a currency sees it beside the dollars, `≈ €11.20`, with `≈` because a reference rate
|
|
6
|
+
* is not the amount that moved. Sandbox money looks exactly like real money: the page's band says what it is, and
|
|
7
|
+
* the number wears no second disclaimer.
|
|
8
|
+
*
|
|
9
|
+
* IXO floats, so it has no dollar face. An old IXO amount in the sandbox is play money and is faced 1:1, marked
|
|
10
|
+
* approximate; on the real network it is said as itself, "12.5 IXO", never with a `$`.
|
|
11
|
+
*
|
|
12
|
+
* A leaf: no import, so a page that only shows amounts pays for this file and nothing behind it.
|
|
13
|
+
*/
|
|
14
|
+
/* The literals of `chain/money.ts`, inlined: importing it brings `given.ts` into every page that shows an amount. */
|
|
15
|
+
const USDC_MAINNET = "ibc/77C12480BD8C29BF0ACEC2143736C15BAF8CD232CA27BAE09336677B828955E6";
|
|
16
|
+
const USDC_NOBLE_LEGACY = "ibc/6BBE9BD4246F8E04948D5A4EEE7164B2630263B9EBB5E7DC5F0A46C62A2FF97B";
|
|
17
|
+
/** The denoms held at one US dollar, each six decimals: 1 000 000 base units = $1. */
|
|
18
|
+
export const DOLLAR_DENOMS = new Set(["upay", USDC_MAINNET, USDC_NOBLE_LEGACY]);
|
|
19
|
+
const MICRO = 1000000n;
|
|
20
|
+
/* Places after the point: two for money, four under a dollar (a tenth of a cent is a real payout here), six (the
|
|
21
|
+
micro-unit, the chain's smallest amount) under a hundredth of a cent, so nothing that is not zero prints as $0.00.
|
|
22
|
+
The same rule as `fractionFor` in format.ts and `Amount`'s own, kept here so this file imports nothing. */
|
|
23
|
+
const placesFor = (value) => (value === 0 ? 2 : Math.abs(value) < 0.0001 ? 6 : Math.abs(value) < 1 ? 4 : 2);
|
|
24
|
+
/** A display amount in dollars, as every page writes one: `0.5` → "$0.50", `0.000001` → "$0.000001". */
|
|
25
|
+
export function dollars(value) {
|
|
26
|
+
const sign = value < 0 ? "-" : "";
|
|
27
|
+
return `${sign}$${Math.abs(value).toLocaleString("en-US", { minimumFractionDigits: 2, maximumFractionDigits: placesFor(value) })}`;
|
|
28
|
+
}
|
|
29
|
+
/** IXO floats, so it is said as itself: `12.5` → "12.5 IXO". */
|
|
30
|
+
const ixoWords = (value) => `${value.toLocaleString("en-US", { maximumFractionDigits: placesFor(value) })} IXO`;
|
|
31
|
+
const IXO_TITLE = "IXO, the network's own coin, not a dollar coin";
|
|
32
|
+
/* Base units, exactly, or null: an integer number (a safe one), a bigint, or a string of digits. */
|
|
33
|
+
function baseOf(base) {
|
|
34
|
+
if (typeof base === "bigint")
|
|
35
|
+
return base;
|
|
36
|
+
if (typeof base === "number")
|
|
37
|
+
return Number.isSafeInteger(base) ? BigInt(base) : null;
|
|
38
|
+
return /^-?\d+$/.test(base.trim()) ? BigInt(base.trim()) : null;
|
|
39
|
+
}
|
|
40
|
+
/*
|
|
41
|
+
* A whole-dollar amount and up, in bigint arithmetic from start to end: rounded to the cent (half up), the dollars
|
|
42
|
+
* grouped by Intl from the bigint itself. A float never holds the amount, so a figure beyond 2^53 base units keeps
|
|
43
|
+
* every digit. Under a dollar the value is under 10^6 base units, where a float is exact enough for four or six places.
|
|
44
|
+
*/
|
|
45
|
+
function dollarsOfBase(base) {
|
|
46
|
+
const negative = base < 0n;
|
|
47
|
+
const size = negative ? -base : base;
|
|
48
|
+
if (size < MICRO)
|
|
49
|
+
return dollars(Number(base) / 1e6);
|
|
50
|
+
const cents = (size + 5000n) / 10000n;
|
|
51
|
+
const whole = (cents / 100n).toLocaleString("en-US");
|
|
52
|
+
const fraction = String(cents % 100n).padStart(2, "0");
|
|
53
|
+
return `${negative ? "-" : ""}$${whole}.${fraction}`;
|
|
54
|
+
}
|
|
55
|
+
/* `≈ €11.20`, or null: no currency chosen, dollars chosen, no rate, a code Intl refuses, or under a cent converted. */
|
|
56
|
+
function localOf(base, viewer) {
|
|
57
|
+
const { currency, rate } = viewer;
|
|
58
|
+
if (!currency || currency === "USD" || !rate || !Number.isFinite(rate) || rate <= 0)
|
|
59
|
+
return null;
|
|
60
|
+
/* Cents as a number: exact for any amount a person holds; the conversion is a reference rate anyway. */
|
|
61
|
+
const value = (Number(base / 10000n) / 100) * rate;
|
|
62
|
+
if (Math.abs(value) < 0.01)
|
|
63
|
+
return null;
|
|
64
|
+
try {
|
|
65
|
+
return `≈ ${new Intl.NumberFormat(undefined, { style: "currency", currency, maximumFractionDigits: 2 }).format(value)}`;
|
|
66
|
+
}
|
|
67
|
+
catch {
|
|
68
|
+
return null;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* `base` units of `denom`, in words for `viewer`, or null when it has no honest face: a coin this file does not know
|
|
73
|
+
* (the caller says *see the record*), or an amount that is not one.
|
|
74
|
+
*/
|
|
75
|
+
export function money(base, denom, viewer) {
|
|
76
|
+
const exact = baseOf(base);
|
|
77
|
+
if (exact === null)
|
|
78
|
+
return null;
|
|
79
|
+
if (DOLLAR_DENOMS.has(denom)) {
|
|
80
|
+
const face = dollarsOfBase(exact);
|
|
81
|
+
return { face, local: localOf(exact, viewer), approx: false, title: `${face} in US dollars` };
|
|
82
|
+
}
|
|
83
|
+
/* Test IXO in the sandbox: play money, faced 1:1; `approx` lets a page mark it, and the fold says what it is. */
|
|
84
|
+
if (denom === "uixo" && viewer.sandbox)
|
|
85
|
+
return { face: dollarsOfBase(exact), local: null, approx: true, title: "sandbox amount" };
|
|
86
|
+
if (denom === "uixo")
|
|
87
|
+
return { face: ixoWords(Number(exact) / 1e6), local: null, approx: false, title: IXO_TITLE };
|
|
88
|
+
return null;
|
|
89
|
+
}
|
|
90
|
+
//# sourceMappingURL=money.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"money.js","sourceRoot":"","sources":["../../../src/data/money.ts"],"names":[],"mappings":"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"}
|
|
@@ -68,6 +68,21 @@ export type AskDoor = Openness | {
|
|
|
68
68
|
* this gate. An RPC that fails yields an empty set, which shows no door — the
|
|
69
69
|
* safe direction, since the gate would refuse anyway.
|
|
70
70
|
*/
|
|
71
|
+
/**
|
|
72
|
+
* The door, with the screen's word on it (Part C): `held` is a person looking
|
|
73
|
+
* first; `refused` is not carried here at all. `reason` is the sentence kept
|
|
74
|
+
* with the ruling — the phrase rules' own, or a moderator's — when the board
|
|
75
|
+
* gave one. Answered server-side (`doorFor` in the app), never by `askDoor`,
|
|
76
|
+
* which reads the chain alone.
|
|
77
|
+
*/
|
|
78
|
+
export type ScreenedDoor = AskDoor | {
|
|
79
|
+
open: false;
|
|
80
|
+
why: "held" | "refused";
|
|
81
|
+
reason: string | null;
|
|
82
|
+
} | {
|
|
83
|
+
open: false;
|
|
84
|
+
why: "unfunded";
|
|
85
|
+
};
|
|
71
86
|
export declare function askDoor(ask: AskWindow & {
|
|
72
87
|
admin?: string | null;
|
|
73
88
|
}, authorized: ReadonlySet<string>, now?: Date): AskDoor;
|
|
@@ -89,5 +104,6 @@ export declare function askDoor(ask: AskWindow & {
|
|
|
89
104
|
export declare function standingLine(ask: AskWindow & {
|
|
90
105
|
count: number;
|
|
91
106
|
rejected: number;
|
|
92
|
-
|
|
107
|
+
approver?: string | null;
|
|
108
|
+
}, openness?: ScreenedDoor): string;
|
|
93
109
|
//# sourceMappingURL=openness.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openness.d.ts","sourceRoot":"","sources":["../../../src/data/openness.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AAEH,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,MAAM,MAAM,QAAQ,GAChB;IAAE,IAAI,EAAE,IAAI,CAAA;CAAE;AAChB;+EAC+E;GAC7E;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,GAAG,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAA;CAAE,CAAC;AAEnE,wBAAgB,WAAW,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,GAAE,IAAiB,GAAG,QAAQ,CAsC5E;AAED;;;GAGG;AACH,MAAM,MAAM,OAAO,GAAG,QAAQ,GAAG;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,GAAG,EAAE,WAAW,CAAA;CAAE,CAAC;AAEnE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,OAAO,CAAC,GAAG,EAAE,SAAS,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,EAAE,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE,GAAG,GAAE,IAAiB,GAAG,OAAO,CAMpI;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,SAAS,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,EAAE,QAAQ,GAAE,
|
|
1
|
+
{"version":3,"file":"openness.d.ts","sourceRoot":"","sources":["../../../src/data/openness.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AAEH,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,MAAM,MAAM,QAAQ,GAChB;IAAE,IAAI,EAAE,IAAI,CAAA;CAAE;AAChB;+EAC+E;GAC7E;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,GAAG,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAA;CAAE,CAAC;AAEnE,wBAAgB,WAAW,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,GAAE,IAAiB,GAAG,QAAQ,CAsC5E;AAED;;;GAGG;AACH,MAAM,MAAM,OAAO,GAAG,QAAQ,GAAG;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,GAAG,EAAE,WAAW,CAAA;CAAE,CAAC;AAEnE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH;;;;;;GAMG;AACH,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,GAAG,EAAE,UAAU,CAAA;CAAE,CAAC;AAExI,wBAAgB,OAAO,CAAC,GAAG,EAAE,SAAS,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,EAAE,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE,GAAG,GAAE,IAAiB,GAAG,OAAO,CAMpI;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,SAAS,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,EAAE,QAAQ,GAAE,YAA+B,GAAG,MAAM,CA0D9J"}
|
|
@@ -39,32 +39,6 @@ export function askOpenness(ask, now = new Date()) {
|
|
|
39
39
|
return { open: false, why: "ended" };
|
|
40
40
|
return { open: true };
|
|
41
41
|
}
|
|
42
|
-
/**
|
|
43
|
-
* Whether **this deployment** can take an answer to this ask — which is the
|
|
44
|
-
* question a submit button is really asking, and a strictly harder one than
|
|
45
|
-
* `askOpenness`.
|
|
46
|
-
*
|
|
47
|
-
* The board learned this first. The public index returns every claim
|
|
48
|
-
* collection on the network, and most belong to other projects: an IXO World
|
|
49
|
-
* invoice, somebody's device telemetry, a protocol nobody here has heard of.
|
|
50
|
-
* They are open, they pay, they collect answers — through their own
|
|
51
|
-
* application. Ours cannot make their claims, and the chain agrees: their
|
|
52
|
-
* escrow account never granted this deployment's gate the right to admit a
|
|
53
|
-
* stranger, so every submission from here is refused after the work is done.
|
|
54
|
-
*
|
|
55
|
-
* That grant is the whole test. It is not a heuristic about naming or
|
|
56
|
-
* shape — it is the same fact the gate itself re-checks before it signs, so
|
|
57
|
-
* a door drawn on this answer is a door that opens.
|
|
58
|
-
*
|
|
59
|
-
* **Deliberately not tested: published criteria.** An Openhands ask may
|
|
60
|
-
* carry no `DoneMeans` and be checked by whoever posted it — the submit page
|
|
61
|
-
* says so in its own footnote. Reading their absence as "foreign" would take
|
|
62
|
-
* the door off honest asks whose poster reviews by hand.
|
|
63
|
-
*
|
|
64
|
-
* `authorized` is the set `takeableAdmins()` returns: admins that granted
|
|
65
|
-
* this gate. An RPC that fails yields an empty set, which shows no door — the
|
|
66
|
-
* safe direction, since the gate would refuse anyway.
|
|
67
|
-
*/
|
|
68
42
|
export function askDoor(ask, authorized, now = new Date()) {
|
|
69
43
|
/* The chain's own word and the clock first: an ask that is closed is closed
|
|
70
44
|
whoever posted it, and "closed" is the more useful thing to be told. */
|
|
@@ -90,6 +64,18 @@ export function askDoor(ask, authorized, now = new Date()) {
|
|
|
90
64
|
*/
|
|
91
65
|
export function standingLine(ask, openness = askOpenness(ask)) {
|
|
92
66
|
if (!openness.open) {
|
|
67
|
+
/*
|
|
68
|
+
* The screen's word, with its reason: the poster whose money is locked
|
|
69
|
+
* behind it, and the worker about to walk somewhere, both need the why
|
|
70
|
+
* more than the date (2026-10-20: a call's entries leg said "3 of 3 spots
|
|
71
|
+
* still pay" while the gate refused every entrant).
|
|
72
|
+
*/
|
|
73
|
+
if (openness.why === "refused")
|
|
74
|
+
return openness.reason ? `${openness.reason} This ask takes no answers here.` : "Openhands Network doesn't carry this ask, so it takes no answers here.";
|
|
75
|
+
if (openness.why === "held")
|
|
76
|
+
return `This ask is being looked at before it takes answers.${openness.reason ? ` ${openness.reason}` : ""}`;
|
|
77
|
+
if (openness.why === "unfunded")
|
|
78
|
+
return "Waiting for payment to arrive. It takes answers once its reward is in.";
|
|
93
79
|
/*
|
|
94
80
|
* The one reason that is not about this ask running out of anything. An
|
|
95
81
|
* ask posted by another application is still open, still paying, still
|
|
@@ -107,6 +93,10 @@ export function standingLine(ask, openness = askOpenness(ask)) {
|
|
|
107
93
|
* shrug and is actually a falsehood.
|
|
108
94
|
*/
|
|
109
95
|
if (openness.why === "filled") {
|
|
96
|
+
/* Answers still undecided on an ask a person gives the final OK on are held for them, not refused. */
|
|
97
|
+
const held = ask.count - ask.approved - ask.rejected;
|
|
98
|
+
if (held > 0 && ask.approver)
|
|
99
|
+
return `This ask has taken all the answers it can. ${held === 1 ? "One is" : `${held} are`} waiting for the poster's OK.`;
|
|
110
100
|
return ask.approved > 0
|
|
111
101
|
? "Every payout on this ask has been made."
|
|
112
102
|
: "This ask has taken all the answers it can, and none was approved.";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openness.js","sourceRoot":"","sources":["../../../src/data/openness.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAoCxC,MAAM,UAAU,WAAW,CAAC,GAAc,EAAE,MAAY,IAAI,IAAI,EAAE;IAChE,sEAAsE;IACtE,IAAI,GAAG,CAAC,KAAK,KAAK,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;IAC3D,IAAI,GAAG,CAAC,KAAK,KAAK,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;IAE3D;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACrC,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,KAAK,SAAS,IAAI,GAAG,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC9F,IAAI,KAAK,GAAG,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,KAAK;QAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;IAE/F;;uBAEmB;IACnB,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACpC,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,IAAI,GAAG,CAAC,OAAO,EAAE;QAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;IAElF,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACxB,CAAC;
|
|
1
|
+
{"version":3,"file":"openness.js","sourceRoot":"","sources":["../../../src/data/openness.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/data/queue.d.ts
CHANGED
|
@@ -38,7 +38,24 @@ export interface Waiting {
|
|
|
38
38
|
* it is the one non-terminal verdict, explicitly re-evaluatable.
|
|
39
39
|
*/
|
|
40
40
|
why: "unjudged" | "flagged";
|
|
41
|
+
/** A person gives the final OK at the oracle (the deed's `approver` link): who, as an ixo1 address. Never signed on chain from here. */
|
|
42
|
+
approver?: string | null;
|
|
43
|
+
/** The ask's claim protocol: the engine manifest that holds the person's questions. */
|
|
44
|
+
protocol?: string;
|
|
41
45
|
}
|
|
46
|
+
export interface LinkedRow {
|
|
47
|
+
id: string;
|
|
48
|
+
linkedEntity?: {
|
|
49
|
+
id?: string;
|
|
50
|
+
relationship?: string;
|
|
51
|
+
}[] | null;
|
|
52
|
+
}
|
|
53
|
+
/** The ixo1 address an entity's `approver` link names, or null. */
|
|
54
|
+
export declare const approverOf: (row: LinkedRow) => string | null;
|
|
55
|
+
/** A checker looked and handed it back to a person (see `Waiting.why`). */
|
|
56
|
+
export declare const FLAGGED = 5;
|
|
57
|
+
/** A GraphQL list literal of strings. */
|
|
58
|
+
export declare const list: (values: readonly string[]) => string;
|
|
42
59
|
/**
|
|
43
60
|
* Everything unjudged on every ask this address owns or may judge, oldest first.
|
|
44
61
|
*
|
|
@@ -46,4 +63,13 @@ export interface Waiting {
|
|
|
46
63
|
* person who has been waiting longest is the one owed an answer.
|
|
47
64
|
*/
|
|
48
65
|
export declare function waitingOn(address: string, limit?: number): Promise<Waiting[]>;
|
|
66
|
+
/**
|
|
67
|
+
* The asks this address posted that a person gives the final OK on (the deed's `approver` link): what its Me page
|
|
68
|
+
* keeps checking on for, silently (`ensureReviewing`). Open or recently ended ones only, newest first.
|
|
69
|
+
*/
|
|
70
|
+
export declare function checkingAsksOf(address: string, now?: number): Promise<{
|
|
71
|
+
collectionId: string;
|
|
72
|
+
approver: string;
|
|
73
|
+
endsAt: string | null;
|
|
74
|
+
}[]>;
|
|
49
75
|
//# sourceMappingURL=queue.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../../src/data/queue.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,OAAO;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,kCAAkC;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,oEAAoE;IACpE,KAAK,EAAE,MAAM,CAAC;IACd,2CAA2C;IAC3C,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC/C,6DAA6D;IAC7D,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB;;;;;;OAMG;IACH,GAAG,EAAE,UAAU,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../../src/data/queue.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,OAAO;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,kCAAkC;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,oEAAoE;IACpE,KAAK,EAAE,MAAM,CAAC;IACd,2CAA2C;IAC3C,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC/C,6DAA6D;IAC7D,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB;;;;;;OAMG;IACH,GAAG,EAAE,UAAU,GAAG,SAAS,CAAC;IAC5B,wIAAwI;IACxI,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,uFAAuF;IACvF,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,CAAC,EAAE;QAAE,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,GAAG,IAAI,CAAC;CAChE;AAED,mEAAmE;AACnE,eAAO,MAAM,UAAU,GAAI,KAAK,SAAS,KAAG,MAAM,GAAG,IAAoJ,CAAC;AAmC1M,2EAA2E;AAC3E,eAAO,MAAM,OAAO,IAAI,CAAC;AAEzB,yCAAyC;AACzC,eAAO,MAAM,IAAI,GAAI,QAAQ,SAAS,MAAM,EAAE,WAAmE,CAAC;AAgClH;;;;;GAKG;AACH,wBAAsB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,SAAK,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CA6E/E;AAED;;;GAGG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,SAAa,GAAG,OAAO,CAAC;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,EAAE,CAAC,CAgBpJ"}
|
package/dist/esm/data/queue.js
CHANGED
|
@@ -3,6 +3,8 @@ import { gql } from "./gql.js";
|
|
|
3
3
|
import { pagedRest } from "./paged.js";
|
|
4
4
|
import { entityNames } from "./profiles.js";
|
|
5
5
|
import { approvalAmount } from "./format.js";
|
|
6
|
+
/** The ixo1 address an entity's `approver` link names, or null. */
|
|
7
|
+
export const approverOf = (row) => row.linkedEntity?.find((one) => one.relationship === "approver" && one.id?.startsWith("did:ixo:ixo1"))?.id?.slice("did:ixo:".length) ?? null;
|
|
6
8
|
/*
|
|
7
9
|
* The chain's own rule, and the reason this queue exists.
|
|
8
10
|
*
|
|
@@ -16,8 +18,10 @@ import { approvalAmount } from "./format.js";
|
|
|
16
18
|
* ever shown. The thread said "needs a person" and offered nobody a way to be
|
|
17
19
|
* that person.
|
|
18
20
|
*/
|
|
19
|
-
|
|
20
|
-
const
|
|
21
|
+
/** A checker looked and handed it back to a person (see `Waiting.why`). */
|
|
22
|
+
export const FLAGGED = 5;
|
|
23
|
+
/** A GraphQL list literal of strings. */
|
|
24
|
+
export const list = (values) => `[${values.map((value) => JSON.stringify(value)).join(", ")}]`;
|
|
21
25
|
/**
|
|
22
26
|
* The admin accounts this address may judge for, read from its authz grants.
|
|
23
27
|
*
|
|
@@ -62,13 +66,18 @@ export async function waitingOn(address, limit = 40) {
|
|
|
62
66
|
become an empty queue, which is the one answer a queue must never give
|
|
63
67
|
falsely — "nobody is waiting on you". The route says "unavailable"
|
|
64
68
|
instead (app/api/waiting). */
|
|
65
|
-
const [owned, admins] = await Promise.all([
|
|
69
|
+
const [owned, admins, approving] = await Promise.all([
|
|
66
70
|
gql(`query { entities(filter: {owner: {equalTo: ${JSON.stringify(address)}}}, first: 60) { nodes { id } } }`),
|
|
67
|
-
judgedAdmins(address)
|
|
71
|
+
judgedAdmins(address),
|
|
72
|
+
/* Asks that name this address as the person who gives the final OK (chain/entityShape.ts `approverLink`). */
|
|
73
|
+
gql(`query { iids(filter: {linkedEntity: {contains: [{id: ${JSON.stringify(`did:ixo:${address}`)}, relationship: "approver"}]}}, first: 60) { nodes { id } } }`)
|
|
68
74
|
]);
|
|
69
|
-
const
|
|
75
|
+
const ownedDids = owned.entities.nodes.map((entity) => entity.id);
|
|
76
|
+
const entityDids = [...new Set([...ownedDids, ...approving.iids.nodes.map((row) => row.id)])];
|
|
70
77
|
if (entityDids.length === 0 && admins.length === 0)
|
|
71
78
|
return [];
|
|
79
|
+
/* Which of the poster's own asks a person approves, and who: theirs to answer, not this queue's, unless it is them. */
|
|
80
|
+
const approvers = new Map(approving.iids.nodes.map((row) => [row.id, address]));
|
|
72
81
|
/* Two reads rather than one `or`: the asks this address posted, and the
|
|
73
82
|
asks whose admin account granted it the right to judge. A collection
|
|
74
83
|
found both ways is one collection. */
|
|
@@ -83,13 +92,20 @@ export async function waitingOn(address, limit = 40) {
|
|
|
83
92
|
const rows = [...new Map([...(posted?.claimCollections.nodes ?? []), ...(judged?.claimCollections.nodes ?? [])].map((row) => [String(row.id), row])).values()];
|
|
84
93
|
if (rows.length === 0)
|
|
85
94
|
return [];
|
|
86
|
-
const [claims, names] = await Promise.all([
|
|
95
|
+
const [claims, names, personal] = await Promise.all([
|
|
87
96
|
gql(`query { claims(filter: {collectionId: {in: ${list(rows.map((row) => row.id))}}}, first: ${limit * 3}) {
|
|
88
97
|
nodes { claimId collectionId agentAddress submissionDate evaluationByClaimId { status } }
|
|
89
98
|
} }`),
|
|
90
99
|
/* By the ask's entity — the protocol only ever equalled it on the old shape; see threads.ts. */
|
|
91
|
-
entityNames(rows.map((row) => row.entity)).catch(() => new Map())
|
|
100
|
+
entityNames(rows.map((row) => row.entity)).catch(() => new Map()),
|
|
101
|
+
/* Every ask here that a person approves, however it was found (posted, judged): never ruled on chain from this queue. */
|
|
102
|
+
gql(`query { iids(filter: {id: {in: ${list([...new Set(rows.map((row) => row.entity))])}}, linkedEntity: {contains: [{relationship: "approver"}]}}) { nodes { id linkedEntity } } }`)
|
|
92
103
|
]);
|
|
104
|
+
for (const row of personal.iids.nodes) {
|
|
105
|
+
const who = approverOf(row);
|
|
106
|
+
if (who && !approvers.has(row.id))
|
|
107
|
+
approvers.set(row.id, who);
|
|
108
|
+
}
|
|
93
109
|
const byId = new Map(rows.map((row) => [row.id, row]));
|
|
94
110
|
return claims.claims.nodes
|
|
95
111
|
.filter((claim) => !claim.evaluationByClaimId || claim.evaluationByClaimId.status === FLAGGED)
|
|
@@ -106,11 +122,36 @@ export async function waitingOn(address, limit = 40) {
|
|
|
106
122
|
pays: approvalAmount(collection.payments),
|
|
107
123
|
admin: collection.admin,
|
|
108
124
|
entityDid: collection.entity,
|
|
109
|
-
why: claim.evaluationByClaimId?.status === FLAGGED ? "flagged" : "unjudged"
|
|
125
|
+
why: claim.evaluationByClaimId?.status === FLAGGED ? "flagged" : "unjudged",
|
|
126
|
+
approver: approvers.get(collection.entity) ?? null,
|
|
127
|
+
protocol: collection.protocol
|
|
110
128
|
};
|
|
111
129
|
})
|
|
112
|
-
|
|
130
|
+
/* An ask a person approves waits on that person only. */
|
|
131
|
+
.filter((waiting) => waiting !== null && (!waiting.approver || waiting.approver === address))
|
|
113
132
|
.sort((first, second) => (first.submittedAt ?? "").localeCompare(second.submittedAt ?? ""))
|
|
114
133
|
.slice(0, limit);
|
|
115
134
|
}
|
|
135
|
+
/**
|
|
136
|
+
* The asks this address posted that a person gives the final OK on (the deed's `approver` link): what its Me page
|
|
137
|
+
* keeps checking on for, silently (`ensureReviewing`). Open or recently ended ones only, newest first.
|
|
138
|
+
*/
|
|
139
|
+
export async function checkingAsksOf(address, now = Date.now()) {
|
|
140
|
+
if (!address)
|
|
141
|
+
return [];
|
|
142
|
+
const owned = await gql(`query { entities(filter: {owner: {equalTo: ${JSON.stringify(address)}}}, first: 60) { nodes { id } } }`);
|
|
143
|
+
const ids = owned.entities.nodes.map((entity) => entity.id);
|
|
144
|
+
if (ids.length === 0)
|
|
145
|
+
return [];
|
|
146
|
+
const linked = await gql(`query { iids(filter: {id: {in: ${list(ids)}}, linkedEntity: {contains: [{relationship: "approver"}]}}) { nodes { id linkedEntity } } }`);
|
|
147
|
+
const approvers = new Map(linked.iids.nodes.map((row) => [row.id, approverOf(row)]).filter((pair) => pair[1] !== null));
|
|
148
|
+
if (approvers.size === 0)
|
|
149
|
+
return [];
|
|
150
|
+
const collections = await gql(`query { claimCollections(filter: {entity: {in: ${list([...approvers.keys()])}}}) { nodes { id entity endDate } } }`);
|
|
151
|
+
/* Two days past its end a grant would add nothing (personReview.ts `grantWindow`). */
|
|
152
|
+
return collections.claimCollections.nodes
|
|
153
|
+
.filter((row) => !row.endDate || Date.parse(`${row.endDate.replace(/Z?$/, "Z")}`) > now - 2 * 86_400_000)
|
|
154
|
+
.map((row) => ({ collectionId: String(row.id), approver: approvers.get(row.entity), endsAt: row.endDate ?? null }))
|
|
155
|
+
.sort((a, b) => Number(b.collectionId) - Number(a.collectionId));
|
|
156
|
+
}
|
|
116
157
|
//# sourceMappingURL=queue.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queue.js","sourceRoot":"","sources":["../../../src/data/queue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"queue.js","sourceRoot":"","sources":["../../../src/data/queue.ts"],"names":[],"mappings":"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"}
|
|
@@ -44,6 +44,8 @@ export interface ReceiptData {
|
|
|
44
44
|
doneMeansUrl?: string | null;
|
|
45
45
|
/** Paid off chain by the org's facilitator (#payoutTerms). */
|
|
46
46
|
payout?: PayoutTerms;
|
|
47
|
+
/** The person who gives the final OK (the ask's `approver` link), as an ixo1 address; absent when the checker decides. */
|
|
48
|
+
approver?: string | null;
|
|
47
49
|
/** The org that backs `payout` (backingOrgOf): the collection's org (legacy), or the deed's two-sided requestedBy/request org (IXO shape). */
|
|
48
50
|
payoutOrg?: string;
|
|
49
51
|
/**
|
|
@@ -152,8 +154,25 @@ type Connection = {
|
|
|
152
154
|
};
|
|
153
155
|
/** What a paged answer says about where it stands. Exported for the tests. */
|
|
154
156
|
export declare function pageFrom(request: ReceiptPageRequest, recent: Connection | undefined, waiting: Connection | undefined): ClaimsPage;
|
|
157
|
+
/**
|
|
158
|
+
* Next's data-cache hint for a receipt read: seconds, or 0 for none.
|
|
159
|
+
*
|
|
160
|
+
* The data cache answers a query it has seen with what it held last and
|
|
161
|
+
* refreshes behind it, however long ago that was. That is right for a page a
|
|
162
|
+
* crowd reads and wrong for "is my answer there": a query that names an
|
|
163
|
+
* answer or its author was often first asked before the answer existed, and
|
|
164
|
+
* then hands that copy back minutes later. On testnet #44101 (2026-10-21) an
|
|
165
|
+
* entrant's check_verdict was told "Nothing on #44101 yet" about an entry
|
|
166
|
+
* approved and paid, from a read made 22 minutes before it was filed, and the
|
|
167
|
+
* poster's read_ask showed "4 of 4 spots" an hour after the first was taken.
|
|
168
|
+
* A `fresh` read asks the index itself.
|
|
169
|
+
*/
|
|
170
|
+
export declare const receiptRevalidate: (options: {
|
|
171
|
+
fresh?: boolean;
|
|
172
|
+
}) => number;
|
|
155
173
|
export declare function loadReceipt(collectionId: string, options?: {
|
|
156
174
|
claims?: ReceiptClaims;
|
|
175
|
+
fresh?: boolean;
|
|
157
176
|
}): Promise<ReceiptData | null>;
|
|
158
177
|
/**
|
|
159
178
|
* One claim, by its id — the question a waiting submitter, a membership check
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"receipt.d.ts","sourceRoot":"","sources":["../../../src/data/receipt.ts"],"names":[],"mappings":"AAOA,OAAO,EAAmC,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE5F,OAAO,KAAK,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAE3D;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB;;;;OAIG;IACH,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,iBAAiB,CAAC,UAAU,CAAC,CAAC;IACxC,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB;;;;OAIG;IACH,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,oMAAoM;IACpM,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,8DAA8D;IAC9D,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,8IAA8I;IAC9I,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;;;OAQG;IACH,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC;
|
|
1
|
+
{"version":3,"file":"receipt.d.ts","sourceRoot":"","sources":["../../../src/data/receipt.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/data/receipt.js
CHANGED
|
@@ -13,14 +13,15 @@ import { shortStr } from "./format.js";
|
|
|
13
13
|
* who owns it.
|
|
14
14
|
*/
|
|
15
15
|
async function entityFacts(entityDid) {
|
|
16
|
-
const none = { doneMeansCid: null, doneMeansUrl: null, owner: null, payoutTerms: null };
|
|
16
|
+
const none = { doneMeansCid: null, doneMeansUrl: null, owner: null, approver: null, payoutTerms: null };
|
|
17
17
|
if (!entityDid)
|
|
18
18
|
return none;
|
|
19
19
|
try {
|
|
20
|
-
const data = await gql(`query { entities(filter: {id: {equalTo: ${JSON.stringify(entityDid)}}}) { nodes { linkedResource owner } } }`, 5);
|
|
20
|
+
const data = await gql(`query { entities(filter: {id: {equalTo: ${JSON.stringify(entityDid)}}}) { nodes { linkedResource linkedEntity owner } } }`, 5);
|
|
21
21
|
const node = data.entities.nodes[0];
|
|
22
22
|
const linked = node?.linkedResource ?? [];
|
|
23
|
-
|
|
23
|
+
const approver = node?.linkedEntity?.find((one) => one.relationship === "approver" && one.id?.startsWith("did:ixo:ixo1"))?.id?.slice("did:ixo:".length) ?? null;
|
|
24
|
+
return { doneMeansCid: doneMeansProof(linked), doneMeansUrl: doneMeansUrl(linked), owner: node?.owner ?? null, approver, payoutTerms: payoutTermsRef(linked) };
|
|
24
25
|
}
|
|
25
26
|
catch {
|
|
26
27
|
return none;
|
|
@@ -179,11 +180,25 @@ export function pageFrom(request, recent, waiting) {
|
|
|
179
180
|
waiting: page.after || !page.waiting ? null : typeof waiting?.totalCount === "number" ? waiting.totalCount : (waiting?.nodes?.length ?? null)
|
|
180
181
|
};
|
|
181
182
|
}
|
|
183
|
+
/**
|
|
184
|
+
* Next's data-cache hint for a receipt read: seconds, or 0 for none.
|
|
185
|
+
*
|
|
186
|
+
* The data cache answers a query it has seen with what it held last and
|
|
187
|
+
* refreshes behind it, however long ago that was. That is right for a page a
|
|
188
|
+
* crowd reads and wrong for "is my answer there": a query that names an
|
|
189
|
+
* answer or its author was often first asked before the answer existed, and
|
|
190
|
+
* then hands that copy back minutes later. On testnet #44101 (2026-10-21) an
|
|
191
|
+
* entrant's check_verdict was told "Nothing on #44101 yet" about an entry
|
|
192
|
+
* approved and paid, from a read made 22 minutes before it was filed, and the
|
|
193
|
+
* poster's read_ask showed "4 of 4 spots" an hour after the first was taken.
|
|
194
|
+
* A `fresh` read asks the index itself.
|
|
195
|
+
*/
|
|
196
|
+
export const receiptRevalidate = (options) => (options.fresh ? 0 : 10);
|
|
182
197
|
export async function loadReceipt(collectionId, options = {}) {
|
|
183
198
|
if (!/^\d+$/.test(collectionId))
|
|
184
199
|
return null;
|
|
185
200
|
const mode = options.claims ?? "all";
|
|
186
|
-
const data = await gql(receiptQuery(collectionId, mode));
|
|
201
|
+
const data = await gql(receiptQuery(collectionId, mode), receiptRevalidate(options));
|
|
187
202
|
const detail = data.claimCollection;
|
|
188
203
|
if (!detail)
|
|
189
204
|
return null;
|
|
@@ -224,6 +239,7 @@ export async function loadReceipt(collectionId, options = {}) {
|
|
|
224
239
|
...(mode === "all" ? {} : { claimsPage: pageFrom(mode, detail.recent, detail.waiting) }),
|
|
225
240
|
doneMeansCid: entity.doneMeansCid,
|
|
226
241
|
doneMeansUrl: entity.doneMeansUrl,
|
|
242
|
+
...(entity.approver ? { approver: entity.approver } : {}),
|
|
227
243
|
...(payout && backer ? { payout, payoutOrg: backer } : {}),
|
|
228
244
|
linked: Object.fromEntries([...links].map(([address, to]) => [address, to.primaryAddress]))
|
|
229
245
|
};
|