@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,12 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* How an MCP client is told to connect to
|
|
2
|
+
* How an MCP client is told to connect to asks.world.
|
|
3
3
|
*
|
|
4
4
|
* One table, several renderings: the server's own `get_config_help` and the
|
|
5
5
|
* hosted `where_to_act`, the install block (`/`, `/connect`, `/mcp`), the
|
|
6
6
|
* agent page and its `/mcp.md` twin, and the hosted server's description all
|
|
7
7
|
* print these lines from here, so
|
|
8
8
|
* they cannot disagree — which they did, for a month, when the page said
|
|
9
|
-
* `/path/to/
|
|
9
|
+
* `/path/to/asks-mcp` and the server printed whatever path it happened
|
|
10
10
|
* to be running from.
|
|
11
11
|
*
|
|
12
12
|
* Pure and dependency-free, like `app/lib/networks.ts`: the app, the MCP
|
|
@@ -19,23 +19,36 @@
|
|
|
19
19
|
* anchor, so the server, the package and the plugin all carry its name.
|
|
20
20
|
*/
|
|
21
21
|
/** The npm package the bundled server ships as (the plugin plan's A2). */
|
|
22
|
-
export declare const MCP_PACKAGE = "@ixo/
|
|
23
|
-
/** The name a client registers the server under; tools appear as `
|
|
24
|
-
export declare const MCP_SERVER = "
|
|
22
|
+
export declare const MCP_PACKAGE = "@ixo/asks-mcp";
|
|
23
|
+
/** The name a client registers the server under; tools appear as `mcp__asks__*`. */
|
|
24
|
+
export declare const MCP_SERVER = "asks";
|
|
25
25
|
/**
|
|
26
|
-
* The
|
|
27
|
-
* (
|
|
28
|
-
* @ixo/openhands-mcp@1` takes every fix and feature of 1.x and never a
|
|
29
|
-
* 2.0 nobody asked for. The plugin (ixoworld/ixo-plugins) pins the same.
|
|
26
|
+
* The dist-tag an install follows (owner, 2026-10-26): `latest`, the newest release from main, majors
|
|
27
|
+
* included. The plugin (ixoworld/ixo-plugins) uses the same.
|
|
30
28
|
*/
|
|
31
|
-
export declare const
|
|
29
|
+
export declare const MCP_TAG = "latest";
|
|
32
30
|
/** What `npx` is told to run. */
|
|
33
|
-
export declare const MCP_SPEC = "@ixo/
|
|
31
|
+
export declare const MCP_SPEC = "@ixo/asks-mcp@latest";
|
|
32
|
+
/**
|
|
33
|
+
* What that spec actually runs is whatever build the npx cache holds for it.
|
|
34
|
+
* npx keeps one install per spec string and reuses it without asking the
|
|
35
|
+
* registry, so a machine that installed in September keeps September's
|
|
36
|
+
* server until the cache is cleared — on 2026-10-20 `@1` ran 1.1.0 on a Mac
|
|
37
|
+
* while 1.4.1 was latest, and 1.1.0 refused post_call for want of variables
|
|
38
|
+
* 1.4 reads from the site. The plugin's `.mcp.json` uses the same spec. Said
|
|
39
|
+
* beside the version wherever an install is printed, with the one line that
|
|
40
|
+
* refreshes it.
|
|
41
|
+
*/
|
|
42
|
+
export declare const NPX_CACHE_NOTE = "npx keeps the build it first installed for \"@ixo/asks-mcp@latest\" and reuses it without asking npm, so after a release an older server can keep running on your machine.";
|
|
43
|
+
/** The one line that makes the next start install the newest release: npx's own cache, found through npm's config so the path is right on every machine. */
|
|
44
|
+
export declare const NPX_REFRESH_LINE = "rm -rf \"$(npm config get cache)/_npx\"";
|
|
45
|
+
/** The note and the line, as text: what get_config_help and the install pages print. */
|
|
46
|
+
export declare const npxCacheLines: () => string[];
|
|
34
47
|
/**
|
|
35
48
|
* The hosted server's path on every deployment's own origin: read-only,
|
|
36
49
|
* unauthenticated, and the protocol surface the `/v1/` prefix versions
|
|
37
|
-
* (docs/MCP.md). `https://
|
|
38
|
-
* `https://test.
|
|
50
|
+
* (docs/MCP.md). `https://asks.world/v1/mcp` and
|
|
51
|
+
* `https://test.asks.world/v1/mcp`.
|
|
39
52
|
*/
|
|
40
53
|
export declare const MCP_HOSTED_PATH = "/v1/mcp";
|
|
41
54
|
/** The hosted server's URL on a deployment's origin. */
|
|
@@ -53,7 +66,6 @@ export type InstallClient = (typeof INSTALL_CLIENTS)[number];
|
|
|
53
66
|
*/
|
|
54
67
|
export type InstallEntry = {
|
|
55
68
|
kind: "package";
|
|
56
|
-
name?: string;
|
|
57
69
|
} | {
|
|
58
70
|
kind: "source";
|
|
59
71
|
path: string;
|
|
@@ -79,14 +91,8 @@ export declare const INSTALL_WHERE: Record<InstallClient, string>;
|
|
|
79
91
|
* package does.
|
|
80
92
|
*/
|
|
81
93
|
export declare const PLUGIN_MARKETPLACE = "ixoworld/ixo-plugins";
|
|
82
|
-
export declare const PLUGIN_NAME = "
|
|
83
|
-
export declare const PLUGIN_ID = "
|
|
84
|
-
/**
|
|
85
|
-
* The hosted MCP (claude.ai, ChatGPT) only reads. Everything that signs runs in
|
|
86
|
-
* Claude Code with the local MCP / HQ plugin, where keys and data stay on the
|
|
87
|
-
* user's machine (owner ruling 2026-10-15). One wording, said everywhere.
|
|
88
|
-
*/
|
|
89
|
-
export declare const HQ_PLUGIN_NAME = "ixo-openhands-hq";
|
|
94
|
+
export declare const PLUGIN_NAME = "asks";
|
|
95
|
+
export declare const PLUGIN_ID = "asks@ixo-plugins";
|
|
90
96
|
/** The plugin marketplace's public repository: every plugin's skill, README and version. */
|
|
91
97
|
export declare const PLUGIN_MARKETPLACE_URL = "https://github.com/ixoworld/ixo-plugins";
|
|
92
98
|
/** An npm package's page, where its latest version is. */
|
|
@@ -102,20 +108,12 @@ export declare const RESOURCE_PACKAGES: readonly {
|
|
|
102
108
|
}[];
|
|
103
109
|
/** One line per package: name@range, what it is, its npm page. */
|
|
104
110
|
export declare const resourceLines: () => string[];
|
|
105
|
-
/** The marketplace also lists two hosted, read-only plugins; their names read like network versions of ixo-openhands, so say what they are. */
|
|
106
|
-
export declare const READ_ONLY_PLUGINS_LINE = "ixo-openhands-mainnet and ixo-openhands-testnet in the same marketplace are read-only: they only look at the board, with no posting, payouts or sign-in. They are not the mainnet or testnet versions of ixo-openhands; for those, install ixo-openhands or ixo-openhands-hq, which start on mainnet and switch to testnet with OPENHANDS_NETWORK=testnet.";
|
|
107
|
-
export declare const READ_ONLY_LINE = "This connector can only read. To post asks, set up payouts, pay for reviews or get paid, use Claude Code with an OpenHands plugin (ixo-openhands-hq for a company, ixo-openhands for a worker or yourself): it runs on your computer, so your keys and data stay with you.";
|
|
108
111
|
/**
|
|
109
|
-
* The
|
|
110
|
-
*
|
|
111
|
-
*
|
|
112
|
-
* `${OPENHANDS_NETWORK:-mainnet}`, which Claude Code expands from the
|
|
113
|
-
* environment it was started in. Codex's portable `mcp.json` has no such
|
|
114
|
-
* expansion and says `mainnet` outright, so in Codex the plugin is mainnet
|
|
115
|
-
* only and the test network is the config.toml lines.
|
|
112
|
+
* The hosted MCP (claude.ai, ChatGPT) only reads. Everything that signs runs in
|
|
113
|
+
* Claude Code with the local MCP / HQ plugin, where keys and data stay on the
|
|
114
|
+
* user's machine (owner ruling 2026-10-15). One wording, said everywhere.
|
|
116
115
|
*/
|
|
117
|
-
export declare const
|
|
118
|
-
export declare const PLUGIN_NETWORK_ENV = "OPENHANDS_NETWORK";
|
|
116
|
+
export declare const READ_ONLY_LINE = "This connector holds no key: it reads, and posts an ask only as a pay link (post_ask with pay_by \"card\"), where the person pays by card and posts it on asks.world. To post from your own money, set up payouts, pay for reviews or get paid, use Claude Code with an asks.world plugin (asks): it runs on your computer, so your keys and data stay with you.";
|
|
119
117
|
/** The first Claude Code that installs from a marketplace in one step, with `--marketplace`. */
|
|
120
118
|
export declare const CLAUDE_CODE_ONE_STEP = "2.1.275";
|
|
121
119
|
export declare const PLUGIN_CLIENTS: readonly ["claude-code", "codex"];
|
|
@@ -128,28 +126,27 @@ export declare const PLUGIN_INSTALLS: readonly ["claude-code", "claude-code-olde
|
|
|
128
126
|
export type PluginInstall = (typeof PLUGIN_INSTALLS)[number];
|
|
129
127
|
/** One plugin install, a command per line: the worker plugin unless `name` says which. */
|
|
130
128
|
export declare function pluginLines(install: PluginInstall, name?: string): string;
|
|
131
|
-
/** The
|
|
132
|
-
export declare const
|
|
129
|
+
/** The Claude Code install as shell commands, said on one line: for an agent that cannot type a /plugin command but can run `claude`. */
|
|
130
|
+
export declare const pluginShellLine: (name: string) => string;
|
|
133
131
|
/**
|
|
134
|
-
* The
|
|
135
|
-
*
|
|
132
|
+
* The Claude app (desktop or claude.ai, paid plans): a person adds the plugin by hand, and its server, which runs on
|
|
133
|
+
* their computer, works where Claude can run things on it: the Code tab, or a chat with a folder connected (the former Cowork); not a plain chat (support.claude.com, "Use plugins in Claude").
|
|
136
134
|
*/
|
|
135
|
+
export declare const claudeAppPluginSteps: (names: string) => string;
|
|
136
|
+
/** The one plugin, for a company or a worker: what it does, said once. Every page and tool that shows an install shows it, from here. */
|
|
137
137
|
export declare const PLUGIN_PATHS: readonly [{
|
|
138
|
-
readonly name: "
|
|
139
|
-
readonly who: "For a company";
|
|
140
|
-
readonly what: "
|
|
141
|
-
}, {
|
|
142
|
-
readonly name: "ixo-openhands";
|
|
143
|
-
readonly who: "For a worker or yourself";
|
|
144
|
-
readonly what: "Find asks, answer them and get paid. Post asks of your own.";
|
|
138
|
+
readonly name: "asks";
|
|
139
|
+
readonly who: "For a company or yourself";
|
|
140
|
+
readonly what: "Find asks, answer them and get paid, post asks of your own, and set up your company (organisation, how workers are paid, a verifier, review billing). A report ask is answered with Claude (the report and screenshots, which you approve before anything is sent) or on the website.";
|
|
145
141
|
}];
|
|
142
|
+
/** The plugin's commands (ixoworld/ixo-plugins), said once: `/asks` works out what the person wants, the rest go straight to one job. */
|
|
143
|
+
export declare const PLUGIN_COMMANDS_LINE = "Once installed, type /asks and say what you want, or go straight to one job: /asks:create (post an ask or a review, set up a company), /asks:jobs (find work), /asks:invite, /asks:manage, /asks:report (write a review report), /asks:profile, /asks:account, /asks:connect, /asks:help.";
|
|
146
144
|
export declare const PLUGIN_WHERE: Record<PluginInstall, string>;
|
|
147
|
-
/**
|
|
145
|
+
/** The plugin as plain text: who it is for, then each install's lines. */
|
|
148
146
|
export declare function pluginPathsText(installs?: readonly PluginInstall[]): string[];
|
|
149
147
|
/**
|
|
150
|
-
* What the plugin brings and which network
|
|
151
|
-
* `network
|
|
152
|
-
* network, that the client has to be started for it.
|
|
148
|
+
* What the plugin brings and which network to use, said for the site at `network`. One server serves both: every
|
|
149
|
+
* tool takes `network`, so there is nothing to set at install.
|
|
153
150
|
*/
|
|
154
151
|
export declare function pluginNetworkNote(network: string): string;
|
|
155
152
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../src/data/install.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,0EAA0E;AAC1E,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../src/data/install.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/data/install.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
|
-
* How an MCP client is told to connect to
|
|
3
|
+
* How an MCP client is told to connect to asks.world.
|
|
4
4
|
*
|
|
5
5
|
* One table, several renderings: the server's own `get_config_help` and the
|
|
6
6
|
* hosted `where_to_act`, the install block (`/`, `/connect`, `/mcp`), the
|
|
7
7
|
* agent page and its `/mcp.md` twin, and the hosted server's description all
|
|
8
8
|
* print these lines from here, so
|
|
9
9
|
* they cannot disagree — which they did, for a month, when the page said
|
|
10
|
-
* `/path/to/
|
|
10
|
+
* `/path/to/asks-mcp` and the server printed whatever path it happened
|
|
11
11
|
* to be running from.
|
|
12
12
|
*
|
|
13
13
|
* Pure and dependency-free, like `app/lib/networks.ts`: the app, the MCP
|
|
@@ -20,30 +20,46 @@
|
|
|
20
20
|
* anchor, so the server, the package and the plugin all carry its name.
|
|
21
21
|
*/
|
|
22
22
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
23
|
-
exports.HOSTED_WHERE = exports.HOSTED_CLIENTS = exports.PLUGIN_WHERE = exports.
|
|
23
|
+
exports.HOSTED_WHERE = exports.HOSTED_CLIENTS = exports.PLUGIN_WHERE = exports.PLUGIN_COMMANDS_LINE = exports.PLUGIN_PATHS = exports.claudeAppPluginSteps = exports.pluginShellLine = exports.PLUGIN_INSTALLS = exports.PLUGIN_CLIENTS = exports.CLAUDE_CODE_ONE_STEP = exports.READ_ONLY_LINE = exports.resourceLines = exports.RESOURCE_PACKAGES = exports.npmUrl = exports.PLUGIN_MARKETPLACE_URL = exports.PLUGIN_ID = exports.PLUGIN_NAME = exports.PLUGIN_MARKETPLACE = exports.INSTALL_WHERE = exports.INSTALL_CLIENTS = exports.hostedUrl = exports.MCP_HOSTED_PATH = exports.npxCacheLines = exports.NPX_REFRESH_LINE = exports.NPX_CACHE_NOTE = exports.MCP_SPEC = exports.MCP_TAG = exports.MCP_SERVER = exports.MCP_PACKAGE = void 0;
|
|
24
24
|
exports.installLines = installLines;
|
|
25
25
|
exports.pluginLines = pluginLines;
|
|
26
26
|
exports.pluginPathsText = pluginPathsText;
|
|
27
27
|
exports.pluginNetworkNote = pluginNetworkNote;
|
|
28
28
|
exports.hostedLines = hostedLines;
|
|
29
29
|
/** The npm package the bundled server ships as (the plugin plan's A2). */
|
|
30
|
-
exports.MCP_PACKAGE = "@ixo/
|
|
31
|
-
/** The name a client registers the server under; tools appear as `
|
|
32
|
-
exports.MCP_SERVER = "
|
|
30
|
+
exports.MCP_PACKAGE = "@ixo/asks-mcp";
|
|
31
|
+
/** The name a client registers the server under; tools appear as `mcp__asks__*`. */
|
|
32
|
+
exports.MCP_SERVER = "asks";
|
|
33
33
|
/**
|
|
34
|
-
* The
|
|
35
|
-
* (
|
|
36
|
-
* @ixo/openhands-mcp@1` takes every fix and feature of 1.x and never a
|
|
37
|
-
* 2.0 nobody asked for. The plugin (ixoworld/ixo-plugins) pins the same.
|
|
34
|
+
* The dist-tag an install follows (owner, 2026-10-26): `latest`, the newest release from main, majors
|
|
35
|
+
* included. The plugin (ixoworld/ixo-plugins) uses the same.
|
|
38
36
|
*/
|
|
39
|
-
exports.
|
|
37
|
+
exports.MCP_TAG = "latest";
|
|
40
38
|
/** What `npx` is told to run. */
|
|
41
|
-
exports.MCP_SPEC = `${exports.MCP_PACKAGE}@${exports.
|
|
39
|
+
exports.MCP_SPEC = `${exports.MCP_PACKAGE}@${exports.MCP_TAG}`;
|
|
40
|
+
/** A site's network is the test network unless it is mainnet (testnet, devnet). */
|
|
41
|
+
const isTest = (network) => network !== "mainnet";
|
|
42
|
+
/**
|
|
43
|
+
* What that spec actually runs is whatever build the npx cache holds for it.
|
|
44
|
+
* npx keeps one install per spec string and reuses it without asking the
|
|
45
|
+
* registry, so a machine that installed in September keeps September's
|
|
46
|
+
* server until the cache is cleared — on 2026-10-20 `@1` ran 1.1.0 on a Mac
|
|
47
|
+
* while 1.4.1 was latest, and 1.1.0 refused post_call for want of variables
|
|
48
|
+
* 1.4 reads from the site. The plugin's `.mcp.json` uses the same spec. Said
|
|
49
|
+
* beside the version wherever an install is printed, with the one line that
|
|
50
|
+
* refreshes it.
|
|
51
|
+
*/
|
|
52
|
+
exports.NPX_CACHE_NOTE = `npx keeps the build it first installed for "${exports.MCP_SPEC}" and reuses it without asking npm, so after a release an older server can keep running on your machine.`;
|
|
53
|
+
/** The one line that makes the next start install the newest release: npx's own cache, found through npm's config so the path is right on every machine. */
|
|
54
|
+
exports.NPX_REFRESH_LINE = 'rm -rf "$(npm config get cache)/_npx"';
|
|
55
|
+
/** The note and the line, as text: what get_config_help and the install pages print. */
|
|
56
|
+
const npxCacheLines = () => [`${exports.NPX_CACHE_NOTE} To refresh it, run this once, then start the client again:\n${exports.NPX_REFRESH_LINE}`];
|
|
57
|
+
exports.npxCacheLines = npxCacheLines;
|
|
42
58
|
/**
|
|
43
59
|
* The hosted server's path on every deployment's own origin: read-only,
|
|
44
60
|
* unauthenticated, and the protocol surface the `/v1/` prefix versions
|
|
45
|
-
* (docs/MCP.md). `https://
|
|
46
|
-
* `https://test.
|
|
61
|
+
* (docs/MCP.md). `https://asks.world/v1/mcp` and
|
|
62
|
+
* `https://test.asks.world/v1/mcp`.
|
|
47
63
|
*/
|
|
48
64
|
exports.MCP_HOSTED_PATH = "/v1/mcp";
|
|
49
65
|
/** The hosted server's URL on a deployment's origin. */
|
|
@@ -54,7 +70,7 @@ const PACKAGE_ENTRY = { kind: "package" };
|
|
|
54
70
|
/** The command and its arguments, as every client wants them. */
|
|
55
71
|
function command(entry) {
|
|
56
72
|
return entry.kind === "package"
|
|
57
|
-
? { command: "npx", args: ["-y",
|
|
73
|
+
? { command: "npx", args: ["-y", exports.MCP_SPEC], env: {} }
|
|
58
74
|
: { command: "node", args: ["--experimental-strip-types", entry.path], env: {} };
|
|
59
75
|
}
|
|
60
76
|
const envOf = (options) => ({
|
|
@@ -65,23 +81,25 @@ const envOf = (options) => ({
|
|
|
65
81
|
function installLines(client, options) {
|
|
66
82
|
const run = command(options.entry ?? PACKAGE_ENTRY);
|
|
67
83
|
const env = envOf(options);
|
|
84
|
+
/* A plugin install does not replace a hand-added server (Claude Code names plugin servers `plugin:<plugin>:<server>`), so the guide says to remove it, or every tool is listed twice (final review M3). */
|
|
85
|
+
const name = exports.MCP_SERVER;
|
|
68
86
|
switch (client) {
|
|
69
87
|
case "claude-code": {
|
|
70
88
|
const flags = Object.entries(env)
|
|
71
89
|
.map(([key, value]) => `--env ${key}=${value}`)
|
|
72
90
|
.join(" ");
|
|
73
|
-
return `claude mcp add ${
|
|
91
|
+
return `claude mcp add ${name} ${flags} -- ${run.command} ${run.args.join(" ")}`;
|
|
74
92
|
}
|
|
75
93
|
case "codex": {
|
|
76
94
|
const table = Object.entries(env)
|
|
77
95
|
.map(([key, value]) => `${key} = "${value}"`)
|
|
78
96
|
.join(", ");
|
|
79
|
-
return [`[mcp_servers.${
|
|
97
|
+
return [`[mcp_servers.${name}]`, `command = "${run.command}"`, `args = ${JSON.stringify(run.args)}`, `env = { ${table} }`].join("\n");
|
|
80
98
|
}
|
|
81
99
|
case "cursor":
|
|
82
|
-
return JSON.stringify({ mcpServers: { [
|
|
100
|
+
return JSON.stringify({ mcpServers: { [name]: { command: run.command, args: run.args, env } } }, null, 2);
|
|
83
101
|
case "vscode":
|
|
84
|
-
return `vscode:mcp/install?${encodeURIComponent(JSON.stringify({ name
|
|
102
|
+
return `vscode:mcp/install?${encodeURIComponent(JSON.stringify({ name, command: run.command, args: run.args, env }))}`;
|
|
85
103
|
}
|
|
86
104
|
}
|
|
87
105
|
/** Where each client keeps it — the sentence above the block. */
|
|
@@ -98,14 +116,8 @@ exports.INSTALL_WHERE = {
|
|
|
98
116
|
* package does.
|
|
99
117
|
*/
|
|
100
118
|
exports.PLUGIN_MARKETPLACE = "ixoworld/ixo-plugins";
|
|
101
|
-
exports.PLUGIN_NAME = "
|
|
119
|
+
exports.PLUGIN_NAME = "asks";
|
|
102
120
|
exports.PLUGIN_ID = `${exports.PLUGIN_NAME}@ixo-plugins`;
|
|
103
|
-
/**
|
|
104
|
-
* The hosted MCP (claude.ai, ChatGPT) only reads. Everything that signs runs in
|
|
105
|
-
* Claude Code with the local MCP / HQ plugin, where keys and data stay on the
|
|
106
|
-
* user's machine (owner ruling 2026-10-15). One wording, said everywhere.
|
|
107
|
-
*/
|
|
108
|
-
exports.HQ_PLUGIN_NAME = "ixo-openhands-hq";
|
|
109
121
|
/** The plugin marketplace's public repository: every plugin's skill, README and version. */
|
|
110
122
|
exports.PLUGIN_MARKETPLACE_URL = `https://github.com/${exports.PLUGIN_MARKETPLACE}`;
|
|
111
123
|
/** An npm package's page, where its latest version is. */
|
|
@@ -116,27 +128,19 @@ exports.npmUrl = npmUrl;
|
|
|
116
128
|
* guides (/llms.txt, /mcp.md) list these; bump a range here when a plugin's skill moves to a new one.
|
|
117
129
|
*/
|
|
118
130
|
exports.RESOURCE_PACKAGES = [
|
|
119
|
-
{ name: exports.MCP_PACKAGE, range:
|
|
120
|
-
{ name: "@ixo/decision-oracle", range: "0.2", what: `company setup: the organisation, its
|
|
121
|
-
{ name: "@ixo/payouts-facilitator", range: "0.1", what: `a company's own payouts service, for paying workers
|
|
131
|
+
{ name: exports.MCP_PACKAGE, range: exports.MCP_TAG, what: `the asks.world tools the plugin runs (server name ${exports.MCP_SERVER})` },
|
|
132
|
+
{ name: "@ixo/decision-oracle", range: "0.2", what: `company setup: the organisation, its verifier and Pay for reviews (used by ${exports.PLUGIN_NAME})` },
|
|
133
|
+
{ name: "@ixo/payouts-facilitator", range: "0.1", what: `a company's own payouts service, for paying workers in USD Coin on Base (used by ${exports.PLUGIN_NAME})` }
|
|
122
134
|
];
|
|
123
135
|
/** One line per package: name@range, what it is, its npm page. */
|
|
124
136
|
const resourceLines = () => exports.RESOURCE_PACKAGES.map((one) => `${one.name}@${one.range}: ${one.what}. ${(0, exports.npmUrl)(one.name)}`);
|
|
125
137
|
exports.resourceLines = resourceLines;
|
|
126
|
-
/** The marketplace also lists two hosted, read-only plugins; their names read like network versions of ixo-openhands, so say what they are. */
|
|
127
|
-
exports.READ_ONLY_PLUGINS_LINE = "ixo-openhands-mainnet and ixo-openhands-testnet in the same marketplace are read-only: they only look at the board, with no posting, payouts or sign-in. They are not the mainnet or testnet versions of ixo-openhands; for those, install ixo-openhands or ixo-openhands-hq, which start on mainnet and switch to testnet with OPENHANDS_NETWORK=testnet.";
|
|
128
|
-
exports.READ_ONLY_LINE = "This connector can only read. To post asks, set up payouts, pay for reviews or get paid, use Claude Code with an OpenHands plugin (ixo-openhands-hq for a company, ixo-openhands for a worker or yourself): it runs on your computer, so your keys and data stay with you.";
|
|
129
138
|
/**
|
|
130
|
-
* The
|
|
131
|
-
*
|
|
132
|
-
*
|
|
133
|
-
* `${OPENHANDS_NETWORK:-mainnet}`, which Claude Code expands from the
|
|
134
|
-
* environment it was started in. Codex's portable `mcp.json` has no such
|
|
135
|
-
* expansion and says `mainnet` outright, so in Codex the plugin is mainnet
|
|
136
|
-
* only and the test network is the config.toml lines.
|
|
139
|
+
* The hosted MCP (claude.ai, ChatGPT) only reads. Everything that signs runs in
|
|
140
|
+
* Claude Code with the local MCP / HQ plugin, where keys and data stay on the
|
|
141
|
+
* user's machine (owner ruling 2026-10-15). One wording, said everywhere.
|
|
137
142
|
*/
|
|
138
|
-
exports.
|
|
139
|
-
exports.PLUGIN_NETWORK_ENV = "OPENHANDS_NETWORK";
|
|
143
|
+
exports.READ_ONLY_LINE = "This connector holds no key: it reads, and posts an ask only as a pay link (post_ask with pay_by \"card\"), where the person pays by card and posts it on asks.world. To post from your own money, set up payouts, pay for reviews or get paid, use Claude Code with an asks.world plugin (asks): it runs on your computer, so your keys and data stay with you.";
|
|
140
144
|
/** The first Claude Code that installs from a marketplace in one step, with `--marketplace`. */
|
|
141
145
|
exports.CLAUDE_CODE_ONE_STEP = "2.1.275";
|
|
142
146
|
exports.PLUGIN_CLIENTS = ["claude-code", "codex"];
|
|
@@ -157,44 +161,41 @@ function pluginLines(install, name = exports.PLUGIN_NAME) {
|
|
|
157
161
|
return [`codex plugin marketplace add ${exports.PLUGIN_MARKETPLACE}`, `codex plugin add ${id}`].join("\n");
|
|
158
162
|
}
|
|
159
163
|
}
|
|
160
|
-
/** The
|
|
161
|
-
|
|
164
|
+
/** The Claude Code install as shell commands, said on one line: for an agent that cannot type a /plugin command but can run `claude`. */
|
|
165
|
+
const pluginShellLine = (name) => `claude plugin marketplace add ${exports.PLUGIN_MARKETPLACE} then claude plugin install ${name}@ixo-plugins`;
|
|
166
|
+
exports.pluginShellLine = pluginShellLine;
|
|
162
167
|
/**
|
|
163
|
-
* The
|
|
164
|
-
*
|
|
168
|
+
* The Claude app (desktop or claude.ai, paid plans): a person adds the plugin by hand, and its server, which runs on
|
|
169
|
+
* their computer, works where Claude can run things on it: the Code tab, or a chat with a folder connected (the former Cowork); not a plain chat (support.claude.com, "Use plugins in Claude").
|
|
165
170
|
*/
|
|
171
|
+
const claudeAppPluginSteps = (names) => `In the Claude app (paid plans) your user adds it themselves: Customize, then Plugins, then Add, then Add marketplace, then Add from a repository, and enter ${exports.PLUGIN_MARKETPLACE}; then on the Discover tab pick ${names} and tap Add. It runs on their computer, so they use it in the app's Code tab or in a chat with a folder connected, not in a plain chat.`;
|
|
172
|
+
exports.claudeAppPluginSteps = claudeAppPluginSteps;
|
|
173
|
+
/** The one plugin, for a company or a worker: what it does, said once. Every page and tool that shows an install shows it, from here. */
|
|
166
174
|
exports.PLUGIN_PATHS = [
|
|
167
|
-
{
|
|
168
|
-
name: exports.HQ_PLUGIN_NAME,
|
|
169
|
-
who: "For a company",
|
|
170
|
-
what: "Set up your company (organisation, how workers are paid, a reviewer, review billing), then post asks."
|
|
171
|
-
},
|
|
172
175
|
{
|
|
173
176
|
name: exports.PLUGIN_NAME,
|
|
174
|
-
who: "For a
|
|
175
|
-
what: "Find asks, answer them and get paid
|
|
177
|
+
who: "For a company or yourself",
|
|
178
|
+
what: "Find asks, answer them and get paid, post asks of your own, and set up your company (organisation, how workers are paid, a verifier, review billing). A report ask is answered with Claude (the report and screenshots, which you approve before anything is sent) or on the website."
|
|
176
179
|
}
|
|
177
180
|
];
|
|
181
|
+
/** The plugin's commands (ixoworld/ixo-plugins), said once: `/asks` works out what the person wants, the rest go straight to one job. */
|
|
182
|
+
exports.PLUGIN_COMMANDS_LINE = `Once installed, type /asks and say what you want, or go straight to one job: /asks:create (post an ask or a review, set up a company), /asks:jobs (find work), /asks:invite, /asks:manage, /asks:report (write a review report), /asks:profile, /asks:account, /asks:connect, /asks:help.`;
|
|
178
183
|
exports.PLUGIN_WHERE = {
|
|
179
184
|
"claude-code": `Claude Code ${exports.CLAUDE_CODE_ONE_STEP} or newer, typed inside a session:`,
|
|
180
185
|
"claude-code-older": "An older Claude Code, two lines inside a session:",
|
|
181
186
|
codex: "Codex, in a terminal:"
|
|
182
187
|
};
|
|
183
|
-
/**
|
|
188
|
+
/** The plugin as plain text: who it is for, then each install's lines. */
|
|
184
189
|
function pluginPathsText(installs = exports.PLUGIN_INSTALLS) {
|
|
185
190
|
return exports.PLUGIN_PATHS.map((path) => [`${path.who}: ${path.name}. ${path.what}`, ...installs.map((one) => `${exports.PLUGIN_WHERE[one]}\n${pluginLines(one, path.name)}`)].join("\n\n"));
|
|
186
191
|
}
|
|
187
192
|
/**
|
|
188
|
-
* What the plugin brings and which network
|
|
189
|
-
* `network
|
|
190
|
-
* network, that the client has to be started for it.
|
|
193
|
+
* What the plugin brings and which network to use, said for the site at `network`. One server serves both: every
|
|
194
|
+
* tool takes `network`, so there is nothing to set at install.
|
|
191
195
|
*/
|
|
192
196
|
function pluginNetworkNote(network) {
|
|
193
|
-
const what = "
|
|
194
|
-
|
|
195
|
-
return network === exports.PLUGIN_NETWORK_DEFAULT
|
|
196
|
-
? `${what} They start on mainnet, where rewards are paid in IXO or USDC. To try the test network, where coins have no value, start Claude Code with ${exports.PLUGIN_NETWORK_ENV}=testnet set in its shell (${exports.PLUGIN_NETWORK_ENV}=testnet claude). ${codex}`
|
|
197
|
-
: `${what} This site is the test network, where coins have no value, and the plugins start on mainnet: start Claude Code with ${exports.PLUGIN_NETWORK_ENV}=testnet (${exports.PLUGIN_NETWORK_ENV}=testnet claude) so it matches. ${codex}`;
|
|
197
|
+
const what = "The plugin brings the server and its skill, for both networks. Every action names one: the real network (`mainnet`) or the sandbox (`testnet`, a dry run with play money).";
|
|
198
|
+
return isTest(network) ? `This site is the sandbox. Install ${exports.PLUGIN_NAME}. ${what} Here, use it with \`testnet\` (a dry run, play money).` : what;
|
|
198
199
|
}
|
|
199
200
|
/**
|
|
200
201
|
* The hosted server, for a client that cannot run a local one. It reads the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/data/install.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;;
|
|
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,95 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* The one way an amount becomes words.
|
|
4
|
+
*
|
|
5
|
+
* Every coin that is held at a dollar (PAY, and USDC in both its denoms) is shown as dollars: `$12.00`, never a
|
|
6
|
+
* ticker. A reader who chose a currency sees it beside the dollars, `≈ €11.20`, with `≈` because a reference rate
|
|
7
|
+
* is not the amount that moved. Sandbox money looks exactly like real money: the page's band says what it is, and
|
|
8
|
+
* the number wears no second disclaimer.
|
|
9
|
+
*
|
|
10
|
+
* IXO floats, so it has no dollar face. An old IXO amount in the sandbox is play money and is faced 1:1, marked
|
|
11
|
+
* approximate; on the real network it is said as itself, "12.5 IXO", never with a `$`.
|
|
12
|
+
*
|
|
13
|
+
* A leaf: no import, so a page that only shows amounts pays for this file and nothing behind it.
|
|
14
|
+
*/
|
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
+
exports.DOLLAR_DENOMS = void 0;
|
|
17
|
+
exports.dollars = dollars;
|
|
18
|
+
exports.money = money;
|
|
19
|
+
/* The literals of `chain/money.ts`, inlined: importing it brings `given.ts` into every page that shows an amount. */
|
|
20
|
+
const USDC_MAINNET = "ibc/77C12480BD8C29BF0ACEC2143736C15BAF8CD232CA27BAE09336677B828955E6";
|
|
21
|
+
const USDC_NOBLE_LEGACY = "ibc/6BBE9BD4246F8E04948D5A4EEE7164B2630263B9EBB5E7DC5F0A46C62A2FF97B";
|
|
22
|
+
/** The denoms held at one US dollar, each six decimals: 1 000 000 base units = $1. */
|
|
23
|
+
exports.DOLLAR_DENOMS = new Set(["upay", USDC_MAINNET, USDC_NOBLE_LEGACY]);
|
|
24
|
+
const MICRO = 1000000n;
|
|
25
|
+
/* Places after the point: two for money, four under a dollar (a tenth of a cent is a real payout here), six (the
|
|
26
|
+
micro-unit, the chain's smallest amount) under a hundredth of a cent, so nothing that is not zero prints as $0.00.
|
|
27
|
+
The same rule as `fractionFor` in format.ts and `Amount`'s own, kept here so this file imports nothing. */
|
|
28
|
+
const placesFor = (value) => (value === 0 ? 2 : Math.abs(value) < 0.0001 ? 6 : Math.abs(value) < 1 ? 4 : 2);
|
|
29
|
+
/** A display amount in dollars, as every page writes one: `0.5` → "$0.50", `0.000001` → "$0.000001". */
|
|
30
|
+
function dollars(value) {
|
|
31
|
+
const sign = value < 0 ? "-" : "";
|
|
32
|
+
return `${sign}$${Math.abs(value).toLocaleString("en-US", { minimumFractionDigits: 2, maximumFractionDigits: placesFor(value) })}`;
|
|
33
|
+
}
|
|
34
|
+
/** IXO floats, so it is said as itself: `12.5` → "12.5 IXO". */
|
|
35
|
+
const ixoWords = (value) => `${value.toLocaleString("en-US", { maximumFractionDigits: placesFor(value) })} IXO`;
|
|
36
|
+
const IXO_TITLE = "IXO, the network's own coin, not a dollar coin";
|
|
37
|
+
/* Base units, exactly, or null: an integer number (a safe one), a bigint, or a string of digits. */
|
|
38
|
+
function baseOf(base) {
|
|
39
|
+
if (typeof base === "bigint")
|
|
40
|
+
return base;
|
|
41
|
+
if (typeof base === "number")
|
|
42
|
+
return Number.isSafeInteger(base) ? BigInt(base) : null;
|
|
43
|
+
return /^-?\d+$/.test(base.trim()) ? BigInt(base.trim()) : null;
|
|
44
|
+
}
|
|
45
|
+
/*
|
|
46
|
+
* A whole-dollar amount and up, in bigint arithmetic from start to end: rounded to the cent (half up), the dollars
|
|
47
|
+
* grouped by Intl from the bigint itself. A float never holds the amount, so a figure beyond 2^53 base units keeps
|
|
48
|
+
* every digit. Under a dollar the value is under 10^6 base units, where a float is exact enough for four or six places.
|
|
49
|
+
*/
|
|
50
|
+
function dollarsOfBase(base) {
|
|
51
|
+
const negative = base < 0n;
|
|
52
|
+
const size = negative ? -base : base;
|
|
53
|
+
if (size < MICRO)
|
|
54
|
+
return dollars(Number(base) / 1e6);
|
|
55
|
+
const cents = (size + 5000n) / 10000n;
|
|
56
|
+
const whole = (cents / 100n).toLocaleString("en-US");
|
|
57
|
+
const fraction = String(cents % 100n).padStart(2, "0");
|
|
58
|
+
return `${negative ? "-" : ""}$${whole}.${fraction}`;
|
|
59
|
+
}
|
|
60
|
+
/* `≈ €11.20`, or null: no currency chosen, dollars chosen, no rate, a code Intl refuses, or under a cent converted. */
|
|
61
|
+
function localOf(base, viewer) {
|
|
62
|
+
const { currency, rate } = viewer;
|
|
63
|
+
if (!currency || currency === "USD" || !rate || !Number.isFinite(rate) || rate <= 0)
|
|
64
|
+
return null;
|
|
65
|
+
/* Cents as a number: exact for any amount a person holds; the conversion is a reference rate anyway. */
|
|
66
|
+
const value = (Number(base / 10000n) / 100) * rate;
|
|
67
|
+
if (Math.abs(value) < 0.01)
|
|
68
|
+
return null;
|
|
69
|
+
try {
|
|
70
|
+
return `≈ ${new Intl.NumberFormat(undefined, { style: "currency", currency, maximumFractionDigits: 2 }).format(value)}`;
|
|
71
|
+
}
|
|
72
|
+
catch {
|
|
73
|
+
return null;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* `base` units of `denom`, in words for `viewer`, or null when it has no honest face: a coin this file does not know
|
|
78
|
+
* (the caller says *see the record*), or an amount that is not one.
|
|
79
|
+
*/
|
|
80
|
+
function money(base, denom, viewer) {
|
|
81
|
+
const exact = baseOf(base);
|
|
82
|
+
if (exact === null)
|
|
83
|
+
return null;
|
|
84
|
+
if (exports.DOLLAR_DENOMS.has(denom)) {
|
|
85
|
+
const face = dollarsOfBase(exact);
|
|
86
|
+
return { face, local: localOf(exact, viewer), approx: false, title: `${face} in US dollars` };
|
|
87
|
+
}
|
|
88
|
+
/* Test IXO in the sandbox: play money, faced 1:1; `approx` lets a page mark it, and the fold says what it is. */
|
|
89
|
+
if (denom === "uixo" && viewer.sandbox)
|
|
90
|
+
return { face: dollarsOfBase(exact), local: null, approx: true, title: "sandbox amount" };
|
|
91
|
+
if (denom === "uixo")
|
|
92
|
+
return { face: ixoWords(Number(exact) / 1e6), local: null, approx: false, title: IXO_TITLE };
|
|
93
|
+
return null;
|
|
94
|
+
}
|
|
95
|
+
//# 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
|