@dxos/credentials 0.7.5-main.ff8607b → 0.7.5-staging.2ff1350
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/browser/index.mjs +90 -89
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/node/index.cjs +98 -98
- package/dist/lib/node/index.cjs.map +4 -4
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node-esm/index.mjs +90 -89
- package/dist/lib/node-esm/index.mjs.map +4 -4
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/types/src/credentials/signing.d.ts.map +1 -1
- package/dist/types/src/did.d.ts +7 -0
- package/dist/types/src/did.d.ts.map +1 -0
- package/dist/types/src/index.d.ts +1 -0
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/processor/device-state-machine.d.ts.map +1 -1
- package/dist/types/src/state-machine/space-state-machine.d.ts +0 -2
- package/dist/types/src/state-machine/space-state-machine.d.ts.map +1 -1
- package/package.json +13 -12
- package/project.json +1 -0
- package/src/credentials/signing.ts +2 -2
- package/src/did.ts +27 -0
- package/src/index.ts +1 -0
- package/src/processor/device-state-machine.ts +4 -3
- package/src/state-machine/space-state-machine.ts +8 -21
- /package/{.eslintrc.js → .eslintrc.cjs} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"inputs":{"packages/core/halo/credentials/src/invitations.ts":{"bytes":1781,"imports":[],"format":"esm"},"packages/core/halo/credentials/src/seedphrase.ts":{"bytes":2345,"imports":[{"path":"bip39","kind":"import-statement","external":true},{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true}],"format":"esm"},"packages/core/halo/credentials/src/passcode.ts":{"bytes":1464,"imports":[],"format":"esm"},"packages/core/halo/credentials/src/credentials/signing.ts":{"bytes":11236,"imports":[{"path":"json-stable-stringify","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/core/halo/credentials/src/presentations/signing.ts":{"bytes":3794,"imports":[{"path":"packages/core/halo/credentials/src/credentials/signing.ts","kind":"import-statement","original":"../credentials/signing"}],"format":"esm"},"packages/core/halo/credentials/src/credentials/assertions.ts":{"bytes":3821,"imports":[],"format":"esm"},"packages/core/halo/credentials/src/credentials/verifier.ts":{"bytes":8574,"imports":[{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"packages/core/halo/credentials/src/credentials/assertions.ts","kind":"import-statement","original":"./assertions"},{"path":"packages/core/halo/credentials/src/credentials/signing.ts","kind":"import-statement","original":"./signing"}],"format":"esm"},"packages/core/halo/credentials/src/credentials/credential-factory.ts":{"bytes":11553,"imports":[{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"packages/core/halo/credentials/src/credentials/signing.ts","kind":"import-statement","original":"./signing"},{"path":"packages/core/halo/credentials/src/credentials/verifier.ts","kind":"import-statement","original":"./verifier"}],"format":"esm"},"packages/core/halo/credentials/src/credentials/credential-generator.ts":{"bytes":25434,"imports":[{"path":"@dxos/protocols/proto/dxos/halo/credentials","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"packages/core/halo/credentials/src/credentials/credential-factory.ts","kind":"import-statement","original":"./credential-factory"}],"format":"esm"},"packages/core/halo/credentials/src/credentials/index.ts":{"bytes":929,"imports":[{"path":"packages/core/halo/credentials/src/credentials/assertions.ts","kind":"import-statement","original":"./assertions"},{"path":"packages/core/halo/credentials/src/credentials/credential-factory.ts","kind":"import-statement","original":"./credential-factory"},{"path":"packages/core/halo/credentials/src/credentials/credential-generator.ts","kind":"import-statement","original":"./credential-generator"},{"path":"packages/core/halo/credentials/src/credentials/signing.ts","kind":"import-statement","original":"./signing"},{"path":"packages/core/halo/credentials/src/credentials/verifier.ts","kind":"import-statement","original":"./verifier"}],"format":"esm"},"packages/core/halo/credentials/src/presentations/presentation.ts":{"bytes":3718,"imports":[{"path":"packages/core/halo/credentials/src/presentations/signing.ts","kind":"import-statement","original":"./signing"},{"path":"packages/core/halo/credentials/src/credentials/index.ts","kind":"import-statement","original":"../credentials"}],"format":"esm"},"packages/core/halo/credentials/src/presentations/verifier.ts":{"bytes":10470,"imports":[{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"packages/core/halo/credentials/src/presentations/signing.ts","kind":"import-statement","original":"./signing"},{"path":"packages/core/halo/credentials/src/credentials/index.ts","kind":"import-statement","original":"../credentials"}],"format":"esm"},"packages/core/halo/credentials/src/presentations/index.ts":{"bytes":703,"imports":[{"path":"packages/core/halo/credentials/src/presentations/signing.ts","kind":"import-statement","original":"./signing"},{"path":"packages/core/halo/credentials/src/presentations/presentation.ts","kind":"import-statement","original":"./presentation"},{"path":"packages/core/halo/credentials/src/presentations/verifier.ts","kind":"import-statement","original":"./verifier"}],"format":"esm"},"packages/core/halo/credentials/src/state-machine/feed-state-machine.ts":{"bytes":6028,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/halo/credentials/src/credentials/index.ts","kind":"import-statement","original":"../credentials"}],"format":"esm"},"packages/core/halo/credentials/src/state-machine/invitation-state-machine.ts":{"bytes":11718,"imports":[{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/halo/credentials/src/credentials/index.ts","kind":"import-statement","original":"../credentials"}],"format":"esm"},"packages/core/halo/credentials/src/graph/credential-graph.ts":{"bytes":73642,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/core/halo/credentials/src/state-machine/member-state-machine.ts":{"bytes":21767,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/halo/credentials","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/halo/credentials/src/credentials/index.ts","kind":"import-statement","original":"../credentials"},{"path":"packages/core/halo/credentials/src/graph/credential-graph.ts","kind":"import-statement","original":"../graph/credential-graph"}],"format":"esm"},"packages/core/halo/credentials/src/state-machine/space-state-machine.ts":{"bytes":37745,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/halo/credentials","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/halo/credentials/src/state-machine/feed-state-machine.ts","kind":"import-statement","original":"./feed-state-machine"},{"path":"packages/core/halo/credentials/src/state-machine/invitation-state-machine.ts","kind":"import-statement","original":"./invitation-state-machine"},{"path":"packages/core/halo/credentials/src/state-machine/member-state-machine.ts","kind":"import-statement","original":"./member-state-machine"},{"path":"packages/core/halo/credentials/src/credentials/index.ts","kind":"import-statement","original":"../credentials"}],"format":"esm"},"packages/core/halo/credentials/src/state-machine/index.ts":{"bytes":909,"imports":[{"path":"packages/core/halo/credentials/src/state-machine/space-state-machine.ts","kind":"import-statement","original":"./space-state-machine"},{"path":"packages/core/halo/credentials/src/state-machine/feed-state-machine.ts","kind":"import-statement","original":"./feed-state-machine"},{"path":"packages/core/halo/credentials/src/state-machine/member-state-machine.ts","kind":"import-statement","original":"./member-state-machine"},{"path":"packages/core/halo/credentials/src/state-machine/invitation-state-machine.ts","kind":"import-statement","original":"./invitation-state-machine"}],"format":"esm"},"packages/core/halo/credentials/src/processor/credential-processor.ts":{"bytes":735,"imports":[],"format":"esm"},"packages/core/halo/credentials/src/processor/device-state-machine.ts":{"bytes":10680,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/halo/credentials/src/credentials/index.ts","kind":"import-statement","original":"../credentials"}],"format":"esm"},"packages/core/halo/credentials/src/processor/profile-state-machine.ts":{"bytes":5520,"imports":[{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"packages/core/halo/credentials/src/credentials/index.ts","kind":"import-statement","original":"../credentials"}],"format":"esm"},"packages/core/halo/credentials/src/processor/index.ts":{"bytes":785,"imports":[{"path":"packages/core/halo/credentials/src/processor/credential-processor.ts","kind":"import-statement","original":"./credential-processor"},{"path":"packages/core/halo/credentials/src/processor/device-state-machine.ts","kind":"import-statement","original":"./device-state-machine"},{"path":"packages/core/halo/credentials/src/processor/profile-state-machine.ts","kind":"import-statement","original":"./profile-state-machine"}],"format":"esm"},"packages/core/halo/credentials/src/index.ts":{"bytes":1093,"imports":[{"path":"packages/core/halo/credentials/src/invitations.ts","kind":"import-statement","original":"./invitations"},{"path":"packages/core/halo/credentials/src/seedphrase.ts","kind":"import-statement","original":"./seedphrase"},{"path":"packages/core/halo/credentials/src/passcode.ts","kind":"import-statement","original":"./passcode"},{"path":"packages/core/halo/credentials/src/presentations/index.ts","kind":"import-statement","original":"./presentations"},{"path":"packages/core/halo/credentials/src/credentials/index.ts","kind":"import-statement","original":"./credentials"},{"path":"packages/core/halo/credentials/src/state-machine/index.ts","kind":"import-statement","original":"./state-machine"},{"path":"packages/core/halo/credentials/src/processor/index.ts","kind":"import-statement","original":"./processor"}],"format":"esm"}},"outputs":{"packages/core/halo/credentials/dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":119410},"packages/core/halo/credentials/dist/lib/browser/index.mjs":{"imports":[{"path":"bip39","kind":"import-statement","external":true},{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"json-stable-stringify","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/halo/credentials","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/halo/credentials","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/halo/credentials","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"exports":["CredentialGenerator","DeviceStateMachine","FeedStateMachine","InvitationStateMachine","MemberStateMachine","ProfileStateMachine","SIGNATURE_TYPE_ED25519","SpaceStateMachine","canonicalStringify","checkCredentialType","createAdmissionCredentials","createCancelDelegatedSpaceInvitationCredential","createCredential","createCredentialMessage","createCredentialSignerWithChain","createCredentialSignerWithKey","createDelegatedSpaceInvitationCredential","createDeviceAuthorization","credentialTypeFilter","defaultSecretProvider","defaultSecretValidator","generatePasscode","generateSeedPhrase","getCredentialAssertion","getCredentialProofPayload","getPresentationProofPayload","isValidAuthorizedDeviceCredential","keyPairFromSeedPhrase","signPresentation","verifyChain","verifyCredential","verifyCredentialSignature","verifyPresentation","verifyPresentationChain","verifyPresentationSignature"],"entryPoint":"packages/core/halo/credentials/src/index.ts","inputs":{"packages/core/halo/credentials/src/invitations.ts":{"bytesInOutput":126},"packages/core/halo/credentials/src/index.ts":{"bytesInOutput":0},"packages/core/halo/credentials/src/seedphrase.ts":{"bytesInOutput":560},"packages/core/halo/credentials/src/passcode.ts":{"bytesInOutput":178},"packages/core/halo/credentials/src/credentials/signing.ts":{"bytesInOutput":2037},"packages/core/halo/credentials/src/presentations/signing.ts":{"bytesInOutput":733},"packages/core/halo/credentials/src/presentations/index.ts":{"bytesInOutput":0},"packages/core/halo/credentials/src/credentials/assertions.ts":{"bytesInOutput":648},"packages/core/halo/credentials/src/credentials/index.ts":{"bytesInOutput":0},"packages/core/halo/credentials/src/credentials/credential-factory.ts":{"bytesInOutput":2614},"packages/core/halo/credentials/src/credentials/verifier.ts":{"bytesInOutput":1762},"packages/core/halo/credentials/src/credentials/credential-generator.ts":{"bytesInOutput":5630},"packages/core/halo/credentials/src/presentations/presentation.ts":{"bytesInOutput":578},"packages/core/halo/credentials/src/presentations/verifier.ts":{"bytesInOutput":2306},"packages/core/halo/credentials/src/state-machine/space-state-machine.ts":{"bytesInOutput":8924},"packages/core/halo/credentials/src/state-machine/feed-state-machine.ts":{"bytesInOutput":1545},"packages/core/halo/credentials/src/state-machine/invitation-state-machine.ts":{"bytesInOutput":2764},"packages/core/halo/credentials/src/state-machine/member-state-machine.ts":{"bytesInOutput":5260},"packages/core/halo/credentials/src/graph/credential-graph.ts":{"bytesInOutput":18877},"packages/core/halo/credentials/src/state-machine/index.ts":{"bytesInOutput":0},"packages/core/halo/credentials/src/processor/index.ts":{"bytesInOutput":0},"packages/core/halo/credentials/src/processor/device-state-machine.ts":{"bytesInOutput":2782},"packages/core/halo/credentials/src/processor/profile-state-machine.ts":{"bytesInOutput":1204}},"bytes":60973}}}
|
|
1
|
+
{"inputs":{"packages/core/halo/credentials/src/did.ts":{"bytes":3728,"imports":[{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/core/halo/credentials/src/invitations.ts":{"bytes":1781,"imports":[],"format":"esm"},"packages/core/halo/credentials/src/seedphrase.ts":{"bytes":2345,"imports":[{"path":"bip39","kind":"import-statement","external":true},{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true}],"format":"esm"},"packages/core/halo/credentials/src/passcode.ts":{"bytes":1464,"imports":[],"format":"esm"},"packages/core/halo/credentials/src/credentials/signing.ts":{"bytes":11260,"imports":[{"path":"json-stable-stringify","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/core/halo/credentials/src/presentations/signing.ts":{"bytes":3794,"imports":[{"path":"packages/core/halo/credentials/src/credentials/signing.ts","kind":"import-statement","original":"../credentials/signing"}],"format":"esm"},"packages/core/halo/credentials/src/credentials/assertions.ts":{"bytes":3821,"imports":[],"format":"esm"},"packages/core/halo/credentials/src/credentials/verifier.ts":{"bytes":8574,"imports":[{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"packages/core/halo/credentials/src/credentials/assertions.ts","kind":"import-statement","original":"./assertions"},{"path":"packages/core/halo/credentials/src/credentials/signing.ts","kind":"import-statement","original":"./signing"}],"format":"esm"},"packages/core/halo/credentials/src/credentials/credential-factory.ts":{"bytes":11553,"imports":[{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"packages/core/halo/credentials/src/credentials/signing.ts","kind":"import-statement","original":"./signing"},{"path":"packages/core/halo/credentials/src/credentials/verifier.ts","kind":"import-statement","original":"./verifier"}],"format":"esm"},"packages/core/halo/credentials/src/credentials/credential-generator.ts":{"bytes":25434,"imports":[{"path":"@dxos/protocols/proto/dxos/halo/credentials","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"packages/core/halo/credentials/src/credentials/credential-factory.ts","kind":"import-statement","original":"./credential-factory"}],"format":"esm"},"packages/core/halo/credentials/src/credentials/index.ts":{"bytes":929,"imports":[{"path":"packages/core/halo/credentials/src/credentials/assertions.ts","kind":"import-statement","original":"./assertions"},{"path":"packages/core/halo/credentials/src/credentials/credential-factory.ts","kind":"import-statement","original":"./credential-factory"},{"path":"packages/core/halo/credentials/src/credentials/credential-generator.ts","kind":"import-statement","original":"./credential-generator"},{"path":"packages/core/halo/credentials/src/credentials/signing.ts","kind":"import-statement","original":"./signing"},{"path":"packages/core/halo/credentials/src/credentials/verifier.ts","kind":"import-statement","original":"./verifier"}],"format":"esm"},"packages/core/halo/credentials/src/presentations/presentation.ts":{"bytes":3718,"imports":[{"path":"packages/core/halo/credentials/src/presentations/signing.ts","kind":"import-statement","original":"./signing"},{"path":"packages/core/halo/credentials/src/credentials/index.ts","kind":"import-statement","original":"../credentials"}],"format":"esm"},"packages/core/halo/credentials/src/presentations/verifier.ts":{"bytes":10470,"imports":[{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"packages/core/halo/credentials/src/presentations/signing.ts","kind":"import-statement","original":"./signing"},{"path":"packages/core/halo/credentials/src/credentials/index.ts","kind":"import-statement","original":"../credentials"}],"format":"esm"},"packages/core/halo/credentials/src/presentations/index.ts":{"bytes":703,"imports":[{"path":"packages/core/halo/credentials/src/presentations/signing.ts","kind":"import-statement","original":"./signing"},{"path":"packages/core/halo/credentials/src/presentations/presentation.ts","kind":"import-statement","original":"./presentation"},{"path":"packages/core/halo/credentials/src/presentations/verifier.ts","kind":"import-statement","original":"./verifier"}],"format":"esm"},"packages/core/halo/credentials/src/state-machine/feed-state-machine.ts":{"bytes":6028,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/halo/credentials/src/credentials/index.ts","kind":"import-statement","original":"../credentials"}],"format":"esm"},"packages/core/halo/credentials/src/state-machine/invitation-state-machine.ts":{"bytes":11718,"imports":[{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/halo/credentials/src/credentials/index.ts","kind":"import-statement","original":"../credentials"}],"format":"esm"},"packages/core/halo/credentials/src/graph/credential-graph.ts":{"bytes":73642,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/core/halo/credentials/src/state-machine/member-state-machine.ts":{"bytes":21767,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/halo/credentials","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/halo/credentials/src/credentials/index.ts","kind":"import-statement","original":"../credentials"},{"path":"packages/core/halo/credentials/src/graph/credential-graph.ts","kind":"import-statement","original":"../graph/credential-graph"}],"format":"esm"},"packages/core/halo/credentials/src/state-machine/space-state-machine.ts":{"bytes":36169,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/halo/credentials","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/halo/credentials/src/state-machine/feed-state-machine.ts","kind":"import-statement","original":"./feed-state-machine"},{"path":"packages/core/halo/credentials/src/state-machine/invitation-state-machine.ts","kind":"import-statement","original":"./invitation-state-machine"},{"path":"packages/core/halo/credentials/src/state-machine/member-state-machine.ts","kind":"import-statement","original":"./member-state-machine"},{"path":"packages/core/halo/credentials/src/credentials/index.ts","kind":"import-statement","original":"../credentials"}],"format":"esm"},"packages/core/halo/credentials/src/state-machine/index.ts":{"bytes":909,"imports":[{"path":"packages/core/halo/credentials/src/state-machine/space-state-machine.ts","kind":"import-statement","original":"./space-state-machine"},{"path":"packages/core/halo/credentials/src/state-machine/feed-state-machine.ts","kind":"import-statement","original":"./feed-state-machine"},{"path":"packages/core/halo/credentials/src/state-machine/member-state-machine.ts","kind":"import-statement","original":"./member-state-machine"},{"path":"packages/core/halo/credentials/src/state-machine/invitation-state-machine.ts","kind":"import-statement","original":"./invitation-state-machine"}],"format":"esm"},"packages/core/halo/credentials/src/processor/credential-processor.ts":{"bytes":735,"imports":[],"format":"esm"},"packages/core/halo/credentials/src/processor/device-state-machine.ts":{"bytes":10657,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/halo/credentials/src/credentials/index.ts","kind":"import-statement","original":"../credentials"}],"format":"esm"},"packages/core/halo/credentials/src/processor/profile-state-machine.ts":{"bytes":5520,"imports":[{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"packages/core/halo/credentials/src/credentials/index.ts","kind":"import-statement","original":"../credentials"}],"format":"esm"},"packages/core/halo/credentials/src/processor/index.ts":{"bytes":785,"imports":[{"path":"packages/core/halo/credentials/src/processor/credential-processor.ts","kind":"import-statement","original":"./credential-processor"},{"path":"packages/core/halo/credentials/src/processor/device-state-machine.ts","kind":"import-statement","original":"./device-state-machine"},{"path":"packages/core/halo/credentials/src/processor/profile-state-machine.ts","kind":"import-statement","original":"./profile-state-machine"}],"format":"esm"},"packages/core/halo/credentials/src/index.ts":{"bytes":1172,"imports":[{"path":"packages/core/halo/credentials/src/did.ts","kind":"import-statement","original":"./did"},{"path":"packages/core/halo/credentials/src/invitations.ts","kind":"import-statement","original":"./invitations"},{"path":"packages/core/halo/credentials/src/seedphrase.ts","kind":"import-statement","original":"./seedphrase"},{"path":"packages/core/halo/credentials/src/passcode.ts","kind":"import-statement","original":"./passcode"},{"path":"packages/core/halo/credentials/src/presentations/index.ts","kind":"import-statement","original":"./presentations"},{"path":"packages/core/halo/credentials/src/credentials/index.ts","kind":"import-statement","original":"./credentials"},{"path":"packages/core/halo/credentials/src/state-machine/index.ts","kind":"import-statement","original":"./state-machine"},{"path":"packages/core/halo/credentials/src/processor/index.ts","kind":"import-statement","original":"./processor"}],"format":"esm"}},"outputs":{"packages/core/halo/credentials/dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":120538},"packages/core/halo/credentials/dist/lib/browser/index.mjs":{"imports":[{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"bip39","kind":"import-statement","external":true},{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"json-stable-stringify","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/halo/credentials","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/halo/credentials","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/halo/credentials","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"exports":["CredentialGenerator","DeviceStateMachine","FeedStateMachine","InvitationStateMachine","MemberStateMachine","ProfileStateMachine","SIGNATURE_TYPE_ED25519","SpaceStateMachine","canonicalStringify","checkCredentialType","createAdmissionCredentials","createCancelDelegatedSpaceInvitationCredential","createCredential","createCredentialMessage","createCredentialSignerWithChain","createCredentialSignerWithKey","createDelegatedSpaceInvitationCredential","createDeviceAuthorization","createDidFromIdentityKey","credentialTypeFilter","defaultSecretProvider","defaultSecretValidator","generatePasscode","generateSeedPhrase","getCredentialAssertion","getCredentialProofPayload","getPresentationProofPayload","isValidAuthorizedDeviceCredential","keyPairFromSeedPhrase","signPresentation","verifyChain","verifyCredential","verifyCredentialSignature","verifyPresentation","verifyPresentationChain","verifyPresentationSignature"],"entryPoint":"packages/core/halo/credentials/src/index.ts","inputs":{"packages/core/halo/credentials/src/did.ts":{"bytesInOutput":656},"packages/core/halo/credentials/src/index.ts":{"bytesInOutput":0},"packages/core/halo/credentials/src/invitations.ts":{"bytesInOutput":126},"packages/core/halo/credentials/src/seedphrase.ts":{"bytesInOutput":560},"packages/core/halo/credentials/src/passcode.ts":{"bytesInOutput":178},"packages/core/halo/credentials/src/credentials/signing.ts":{"bytesInOutput":2052},"packages/core/halo/credentials/src/presentations/signing.ts":{"bytesInOutput":733},"packages/core/halo/credentials/src/presentations/index.ts":{"bytesInOutput":0},"packages/core/halo/credentials/src/credentials/assertions.ts":{"bytesInOutput":648},"packages/core/halo/credentials/src/credentials/index.ts":{"bytesInOutput":0},"packages/core/halo/credentials/src/credentials/credential-factory.ts":{"bytesInOutput":2632},"packages/core/halo/credentials/src/credentials/verifier.ts":{"bytesInOutput":1762},"packages/core/halo/credentials/src/credentials/credential-generator.ts":{"bytesInOutput":5630},"packages/core/halo/credentials/src/presentations/presentation.ts":{"bytesInOutput":578},"packages/core/halo/credentials/src/presentations/verifier.ts":{"bytesInOutput":2306},"packages/core/halo/credentials/src/state-machine/space-state-machine.ts":{"bytesInOutput":8920},"packages/core/halo/credentials/src/state-machine/feed-state-machine.ts":{"bytesInOutput":1561},"packages/core/halo/credentials/src/state-machine/invitation-state-machine.ts":{"bytesInOutput":2764},"packages/core/halo/credentials/src/state-machine/member-state-machine.ts":{"bytesInOutput":5260},"packages/core/halo/credentials/src/graph/credential-graph.ts":{"bytesInOutput":18877},"packages/core/halo/credentials/src/state-machine/index.ts":{"bytesInOutput":0},"packages/core/halo/credentials/src/processor/index.ts":{"bytesInOutput":0},"packages/core/halo/credentials/src/processor/device-state-machine.ts":{"bytesInOutput":2529},"packages/core/halo/credentials/src/processor/profile-state-machine.ts":{"bytesInOutput":1204}},"bytes":61495}}}
|
package/dist/lib/node/index.cjs
CHANGED
|
@@ -46,6 +46,7 @@ __export(node_exports, {
|
|
|
46
46
|
createCredentialSignerWithKey: () => createCredentialSignerWithKey,
|
|
47
47
|
createDelegatedSpaceInvitationCredential: () => createDelegatedSpaceInvitationCredential,
|
|
48
48
|
createDeviceAuthorization: () => createDeviceAuthorization,
|
|
49
|
+
createDidFromIdentityKey: () => createDidFromIdentityKey,
|
|
49
50
|
credentialTypeFilter: () => credentialTypeFilter,
|
|
50
51
|
defaultSecretProvider: () => defaultSecretProvider,
|
|
51
52
|
defaultSecretValidator: () => defaultSecretValidator,
|
|
@@ -65,46 +66,61 @@ __export(node_exports, {
|
|
|
65
66
|
verifyPresentationSignature: () => verifyPresentationSignature
|
|
66
67
|
});
|
|
67
68
|
module.exports = __toCommonJS(node_exports);
|
|
68
|
-
var import_bip39 = require("bip39");
|
|
69
69
|
var import_crypto = require("@dxos/crypto");
|
|
70
|
-
var import_invariant = require("@dxos/invariant");
|
|
71
|
-
var import_json_stable_stringify = __toESM(require("json-stable-stringify"));
|
|
72
70
|
var import_keys = require("@dxos/keys");
|
|
73
|
-
var import_timeframe = require("@dxos/timeframe");
|
|
74
71
|
var import_util = require("@dxos/util");
|
|
72
|
+
var import_bip39 = require("bip39");
|
|
75
73
|
var import_crypto2 = require("@dxos/crypto");
|
|
76
|
-
var
|
|
74
|
+
var import_invariant = require("@dxos/invariant");
|
|
75
|
+
var import_json_stable_stringify = __toESM(require("json-stable-stringify"));
|
|
77
76
|
var import_keys2 = require("@dxos/keys");
|
|
77
|
+
var import_timeframe = require("@dxos/timeframe");
|
|
78
|
+
var import_util2 = require("@dxos/util");
|
|
78
79
|
var import_crypto3 = require("@dxos/crypto");
|
|
80
|
+
var import_invariant2 = require("@dxos/invariant");
|
|
81
|
+
var import_keys3 = require("@dxos/keys");
|
|
82
|
+
var import_crypto4 = require("@dxos/crypto");
|
|
79
83
|
var import_credentials = require("@dxos/protocols/proto/dxos/halo/credentials");
|
|
80
84
|
var import_timeframe2 = require("@dxos/timeframe");
|
|
81
|
-
var
|
|
85
|
+
var import_crypto5 = require("@dxos/crypto");
|
|
82
86
|
var import_async = require("@dxos/async");
|
|
83
87
|
var import_context = require("@dxos/context");
|
|
84
|
-
var
|
|
88
|
+
var import_keys4 = require("@dxos/keys");
|
|
85
89
|
var import_log = require("@dxos/log");
|
|
86
90
|
var import_credentials2 = require("@dxos/protocols/proto/dxos/halo/credentials");
|
|
87
|
-
var import_util2 = require("@dxos/util");
|
|
88
|
-
var import_invariant3 = require("@dxos/invariant");
|
|
89
|
-
var import_keys4 = require("@dxos/keys");
|
|
90
91
|
var import_util3 = require("@dxos/util");
|
|
92
|
+
var import_invariant3 = require("@dxos/invariant");
|
|
91
93
|
var import_keys5 = require("@dxos/keys");
|
|
92
94
|
var import_util4 = require("@dxos/util");
|
|
93
|
-
var import_invariant4 = require("@dxos/invariant");
|
|
94
95
|
var import_keys6 = require("@dxos/keys");
|
|
96
|
+
var import_util5 = require("@dxos/util");
|
|
97
|
+
var import_invariant4 = require("@dxos/invariant");
|
|
98
|
+
var import_keys7 = require("@dxos/keys");
|
|
95
99
|
var import_log2 = require("@dxos/log");
|
|
96
100
|
var import_credentials3 = require("@dxos/protocols/proto/dxos/halo/credentials");
|
|
97
|
-
var
|
|
101
|
+
var import_util6 = require("@dxos/util");
|
|
98
102
|
var import_invariant5 = require("@dxos/invariant");
|
|
99
|
-
var
|
|
103
|
+
var import_keys8 = require("@dxos/keys");
|
|
100
104
|
var import_log3 = require("@dxos/log");
|
|
101
|
-
var
|
|
105
|
+
var import_util7 = require("@dxos/util");
|
|
102
106
|
var import_async2 = require("@dxos/async");
|
|
103
107
|
var import_invariant6 = require("@dxos/invariant");
|
|
104
|
-
var
|
|
108
|
+
var import_keys9 = require("@dxos/keys");
|
|
105
109
|
var import_log4 = require("@dxos/log");
|
|
106
|
-
var
|
|
110
|
+
var import_util8 = require("@dxos/util");
|
|
107
111
|
var import_log5 = require("@dxos/log");
|
|
112
|
+
var IDENTITY_DIDS_CACHE = new import_util.ComplexMap(import_keys.PublicKey.hash);
|
|
113
|
+
var createDidFromIdentityKey = async (identityKey) => {
|
|
114
|
+
const cachedValue = IDENTITY_DIDS_CACHE.get(identityKey);
|
|
115
|
+
if (cachedValue !== void 0) {
|
|
116
|
+
return cachedValue;
|
|
117
|
+
}
|
|
118
|
+
const digest = await import_crypto.subtleCrypto.digest("SHA-256", identityKey.asUint8Array());
|
|
119
|
+
const bytes = new Uint8Array(digest).slice(0, import_keys.IdentityDid.byteLength);
|
|
120
|
+
const identityDid = import_keys.IdentityDid.encode(bytes);
|
|
121
|
+
IDENTITY_DIDS_CACHE.set(identityKey, identityDid);
|
|
122
|
+
return identityDid;
|
|
123
|
+
};
|
|
108
124
|
var defaultSecretProvider = async () => Buffer.from("0000");
|
|
109
125
|
var defaultSecretValidator = async (invitation, secret) => true;
|
|
110
126
|
var __dxlog_file = "/home/runner/work/dxos/dxos/packages/core/halo/credentials/src/seedphrase.ts";
|
|
@@ -120,7 +136,7 @@ var keyPairFromSeedPhrase = (seedPhrase) => {
|
|
|
120
136
|
]
|
|
121
137
|
});
|
|
122
138
|
const seed = (0, import_bip39.mnemonicToSeedSync)(seedPhrase);
|
|
123
|
-
return (0,
|
|
139
|
+
return (0, import_crypto2.createKeyPair)(seed);
|
|
124
140
|
};
|
|
125
141
|
var generatePasscode = (length = 4) => {
|
|
126
142
|
let passcode = "";
|
|
@@ -161,14 +177,14 @@ var canonicalStringify = (obj) => (0, import_json_stable_stringify.default)(obj,
|
|
|
161
177
|
}
|
|
162
178
|
const original = this[key];
|
|
163
179
|
if (value) {
|
|
164
|
-
if (
|
|
180
|
+
if (import_keys2.PublicKey.isPublicKey(value)) {
|
|
165
181
|
return value.toHex();
|
|
166
182
|
}
|
|
167
183
|
if (Buffer.isBuffer(value)) {
|
|
168
184
|
return value.toString("hex");
|
|
169
185
|
}
|
|
170
186
|
if (value instanceof Uint8Array) {
|
|
171
|
-
return (0,
|
|
187
|
+
return (0, import_util2.arrayToBuffer)(value).toString("hex");
|
|
172
188
|
}
|
|
173
189
|
if (value.data && value.type === "Buffer") {
|
|
174
190
|
return Buffer.from(value).toString("hex");
|
|
@@ -257,7 +273,7 @@ var verifyCredentialSignature = async (credential) => {
|
|
|
257
273
|
};
|
|
258
274
|
}
|
|
259
275
|
const signData = getCredentialProofPayload(credential);
|
|
260
|
-
if (!await (0,
|
|
276
|
+
if (!await (0, import_crypto4.verifySignature)(credential.proof.signer, signData, credential.proof.value)) {
|
|
261
277
|
return {
|
|
262
278
|
kind: "fail",
|
|
263
279
|
errors: [
|
|
@@ -339,7 +355,7 @@ var createCredential = async ({ signer, issuer, subject, assertion, signingKey,
|
|
|
339
355
|
if (chain) {
|
|
340
356
|
credential.proof.chain = chain;
|
|
341
357
|
}
|
|
342
|
-
credential.id =
|
|
358
|
+
credential.id = import_keys3.PublicKey.from(await import_crypto3.subtleCrypto.digest("SHA-256", signedPayload));
|
|
343
359
|
return credential;
|
|
344
360
|
};
|
|
345
361
|
var createCredentialMessage = (credential) => {
|
|
@@ -661,7 +677,7 @@ var verifyPresentationSignature = async (presentation, proof) => {
|
|
|
661
677
|
};
|
|
662
678
|
}
|
|
663
679
|
const signData = getPresentationProofPayload(presentation.credentials ?? [], proof);
|
|
664
|
-
if (!await (0,
|
|
680
|
+
if (!await (0, import_crypto5.verifySignature)(proof.signer, signData, proof.value)) {
|
|
665
681
|
return {
|
|
666
682
|
kind: "fail",
|
|
667
683
|
errors: [
|
|
@@ -677,8 +693,8 @@ var __dxlog_file3 = "/home/runner/work/dxos/dxos/packages/core/halo/credentials/
|
|
|
677
693
|
var FeedStateMachine = class {
|
|
678
694
|
constructor(_spaceKey) {
|
|
679
695
|
this._spaceKey = _spaceKey;
|
|
680
|
-
this._feeds = new
|
|
681
|
-
this.onFeedAdmitted = new
|
|
696
|
+
this._feeds = new import_util4.ComplexMap(import_keys5.PublicKey.hash);
|
|
697
|
+
this.onFeedAdmitted = new import_util4.Callback();
|
|
682
698
|
}
|
|
683
699
|
get feeds() {
|
|
684
700
|
return this._feeds;
|
|
@@ -721,11 +737,11 @@ var FeedStateMachine = class {
|
|
|
721
737
|
};
|
|
722
738
|
var InvitationStateMachine = class {
|
|
723
739
|
constructor() {
|
|
724
|
-
this._invitations = new
|
|
725
|
-
this._redeemedInvitationCredentialIds = new
|
|
726
|
-
this._cancelledInvitationCredentialIds = new
|
|
727
|
-
this.onDelegatedInvitation = new
|
|
728
|
-
this.onDelegatedInvitationRemoved = new
|
|
740
|
+
this._invitations = new import_util5.ComplexMap(import_keys6.PublicKey.hash);
|
|
741
|
+
this._redeemedInvitationCredentialIds = new import_util5.ComplexSet(import_keys6.PublicKey.hash);
|
|
742
|
+
this._cancelledInvitationCredentialIds = new import_util5.ComplexSet(import_keys6.PublicKey.hash);
|
|
743
|
+
this.onDelegatedInvitation = new import_util5.Callback();
|
|
744
|
+
this.onDelegatedInvitationRemoved = new import_util5.Callback();
|
|
729
745
|
}
|
|
730
746
|
get invitations() {
|
|
731
747
|
return this._invitations;
|
|
@@ -800,10 +816,10 @@ var CredentialGraph = class {
|
|
|
800
816
|
parents: [],
|
|
801
817
|
children: []
|
|
802
818
|
};
|
|
803
|
-
this._vertexByCredentialId = new
|
|
804
|
-
this._subjectToVertex = new
|
|
805
|
-
this._subjectToState = new
|
|
806
|
-
this.onSubjectStateChanged = new
|
|
819
|
+
this._vertexByCredentialId = new import_util7.ComplexMap(import_keys8.PublicKey.hash);
|
|
820
|
+
this._subjectToVertex = new import_util7.ComplexMap(import_keys8.PublicKey.hash);
|
|
821
|
+
this._subjectToState = new import_util7.ComplexMap(import_keys8.PublicKey.hash);
|
|
822
|
+
this.onSubjectStateChanged = new import_util7.Callback();
|
|
807
823
|
}
|
|
808
824
|
getSubjectState(subjectId) {
|
|
809
825
|
return this._subjectToState.get(subjectId);
|
|
@@ -969,7 +985,7 @@ var CredentialGraph = class {
|
|
|
969
985
|
}
|
|
970
986
|
_replayFailedPaths(paths, pendingPaths, mergeResult, convergedPaths) {
|
|
971
987
|
paths.push(...mergeResult.replay.map((path) => {
|
|
972
|
-
const stateOverrides = path.stateOverrides ?? new
|
|
988
|
+
const stateOverrides = path.stateOverrides ?? new import_util7.ComplexMap(import_keys8.PublicKey.hash);
|
|
973
989
|
mergeResult.stateOverrides.forEach((value, key) => stateOverrides.set(key, value));
|
|
974
990
|
return {
|
|
975
991
|
...mergeResult.from,
|
|
@@ -1061,12 +1077,12 @@ var CredentialGraph = class {
|
|
|
1061
1077
|
]
|
|
1062
1078
|
},
|
|
1063
1079
|
head: choice,
|
|
1064
|
-
credentials: new
|
|
1065
|
-
state: new
|
|
1080
|
+
credentials: new import_util7.ComplexSet(import_keys8.PublicKey.hash, path.credentials),
|
|
1081
|
+
state: new import_util7.ComplexMap(import_keys8.PublicKey.hash, [
|
|
1066
1082
|
...path.state.entries()
|
|
1067
1083
|
]),
|
|
1068
|
-
forkIssuers: new
|
|
1069
|
-
forkChangedSubjects: new
|
|
1084
|
+
forkIssuers: new import_util7.ComplexSet(import_keys8.PublicKey.hash),
|
|
1085
|
+
forkChangedSubjects: new import_util7.ComplexSet(import_keys8.PublicKey.hash),
|
|
1070
1086
|
stateOverrides: path.stateOverrides
|
|
1071
1087
|
};
|
|
1072
1088
|
paths.push(fork);
|
|
@@ -1078,8 +1094,8 @@ var CredentialGraph = class {
|
|
|
1078
1094
|
*/
|
|
1079
1095
|
_setCurrentState(path) {
|
|
1080
1096
|
const changedSubjects = [];
|
|
1081
|
-
const newStateMap = new
|
|
1082
|
-
const newVertexMap = new
|
|
1097
|
+
const newStateMap = new import_util7.ComplexMap(import_keys8.PublicKey.hash);
|
|
1098
|
+
const newVertexMap = new import_util7.ComplexMap(import_keys8.PublicKey.hash);
|
|
1083
1099
|
for (const [subjectKey, subjectVertex] of path.state.entries()) {
|
|
1084
1100
|
const newState = this._stateHandler.createState(subjectVertex.credential, subjectVertex.assertion);
|
|
1085
1101
|
const prevState = this._subjectToState.get(subjectKey);
|
|
@@ -1187,13 +1203,13 @@ var CredentialGraph = class {
|
|
|
1187
1203
|
[forkPoint.head.id]: []
|
|
1188
1204
|
},
|
|
1189
1205
|
stateOverrides: forkPoint.stateOverrides,
|
|
1190
|
-
credentials: new
|
|
1191
|
-
forkIssuers: new
|
|
1192
|
-
forkChangedSubjects: new
|
|
1206
|
+
credentials: new import_util7.ComplexSet(import_keys8.PublicKey.hash, forkPoint.credentials),
|
|
1207
|
+
forkIssuers: new import_util7.ComplexSet(import_keys8.PublicKey.hash, forkPoint.forkIssuers),
|
|
1208
|
+
forkChangedSubjects: new import_util7.ComplexSet(import_keys8.PublicKey.hash, forkPoint.forkChangedSubjects),
|
|
1193
1209
|
state: forkPoint.state.mapValues((v) => v),
|
|
1194
1210
|
head: paths[0].head
|
|
1195
1211
|
};
|
|
1196
|
-
const subjectToBranch = new
|
|
1212
|
+
const subjectToBranch = new import_util7.ComplexMap(import_keys8.PublicKey.hash);
|
|
1197
1213
|
for (const path of paths) {
|
|
1198
1214
|
(0, import_log3.log)("processing a path", () => ({
|
|
1199
1215
|
choices: toChosenPath(path),
|
|
@@ -1321,10 +1337,10 @@ var CredentialGraph = class {
|
|
|
1321
1337
|
return {
|
|
1322
1338
|
head: this._root,
|
|
1323
1339
|
chosenPath: {},
|
|
1324
|
-
forkIssuers: new
|
|
1325
|
-
forkChangedSubjects: new
|
|
1326
|
-
state: new
|
|
1327
|
-
credentials: new
|
|
1340
|
+
forkIssuers: new import_util7.ComplexSet(import_keys8.PublicKey.hash),
|
|
1341
|
+
forkChangedSubjects: new import_util7.ComplexSet(import_keys8.PublicKey.hash),
|
|
1342
|
+
state: new import_util7.ComplexMap(import_keys8.PublicKey.hash),
|
|
1343
|
+
credentials: new import_util7.ComplexSet(import_keys8.PublicKey.hash)
|
|
1328
1344
|
};
|
|
1329
1345
|
}
|
|
1330
1346
|
};
|
|
@@ -1338,7 +1354,7 @@ var __dxlog_file5 = "/home/runner/work/dxos/dxos/packages/core/halo/credentials/
|
|
|
1338
1354
|
var MemberStateMachine = class {
|
|
1339
1355
|
constructor(_spaceKey) {
|
|
1340
1356
|
this._spaceKey = _spaceKey;
|
|
1341
|
-
this._memberProfiles = new
|
|
1357
|
+
this._memberProfiles = new import_util6.ComplexMap(import_keys7.PublicKey.hash);
|
|
1342
1358
|
this._hashgraph = new CredentialGraph(this);
|
|
1343
1359
|
this.onMemberRoleChanged = this._hashgraph.onSubjectStateChanged;
|
|
1344
1360
|
}
|
|
@@ -1478,6 +1494,12 @@ var MemberStateMachine = class {
|
|
|
1478
1494
|
return realRole;
|
|
1479
1495
|
}
|
|
1480
1496
|
};
|
|
1497
|
+
function _ts_decorate(decorators, target, key, desc) {
|
|
1498
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
1499
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
1500
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
1501
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
1502
|
+
}
|
|
1481
1503
|
var __dxlog_file6 = "/home/runner/work/dxos/dxos/packages/core/halo/credentials/src/state-machine/space-state-machine.ts";
|
|
1482
1504
|
var SpaceStateMachine = class {
|
|
1483
1505
|
constructor(_spaceKey) {
|
|
@@ -1486,10 +1508,10 @@ var SpaceStateMachine = class {
|
|
|
1486
1508
|
this._feeds = new FeedStateMachine(this._spaceKey);
|
|
1487
1509
|
this._invitations = new InvitationStateMachine();
|
|
1488
1510
|
this._credentials = [];
|
|
1489
|
-
this._credentialsById = new
|
|
1490
|
-
this._processedCredentials = new
|
|
1511
|
+
this._credentialsById = new import_util3.ComplexMap(import_keys4.PublicKey.hash);
|
|
1512
|
+
this._processedCredentials = new import_util3.ComplexSet(import_keys4.PublicKey.hash);
|
|
1491
1513
|
this._credentialProcessors = [];
|
|
1492
|
-
this.onCredentialProcessed = new
|
|
1514
|
+
this.onCredentialProcessed = new import_util3.Callback();
|
|
1493
1515
|
this.onMemberRoleChanged = this._members.onMemberRoleChanged;
|
|
1494
1516
|
this.onFeedAdmitted = this._feeds.onFeedAdmitted;
|
|
1495
1517
|
this.onDelegatedInvitation = this._invitations.onDelegatedInvitation;
|
|
@@ -1544,18 +1566,20 @@ var SpaceStateMachine = class {
|
|
|
1544
1566
|
/**
|
|
1545
1567
|
* @param credential Message to process.
|
|
1546
1568
|
* @param fromFeed Key of the feed where this credential is recorded.
|
|
1547
|
-
* @synchronized
|
|
1548
1569
|
*/
|
|
1549
1570
|
async process(credential, { sourceFeed, skipVerification }) {
|
|
1550
|
-
if (credential.id
|
|
1551
|
-
|
|
1571
|
+
if (credential.id) {
|
|
1572
|
+
if (this._processedCredentials.has(credential.id)) {
|
|
1573
|
+
return true;
|
|
1574
|
+
}
|
|
1575
|
+
this._processedCredentials.add(credential.id);
|
|
1552
1576
|
}
|
|
1553
1577
|
if (!skipVerification) {
|
|
1554
1578
|
const result = await verifyCredential(credential);
|
|
1555
1579
|
if (result.kind !== "pass") {
|
|
1556
1580
|
import_log.log.warn(`Invalid credential: ${result.errors.join(", ")}`, void 0, {
|
|
1557
1581
|
F: __dxlog_file6,
|
|
1558
|
-
L:
|
|
1582
|
+
L: 156,
|
|
1559
1583
|
S: this,
|
|
1560
1584
|
C: (f, a) => f(...a)
|
|
1561
1585
|
});
|
|
@@ -1568,7 +1592,7 @@ var SpaceStateMachine = class {
|
|
|
1568
1592
|
if (this._genesisCredential) {
|
|
1569
1593
|
import_log.log.warn("Space already has a genesis credential.", void 0, {
|
|
1570
1594
|
F: __dxlog_file6,
|
|
1571
|
-
L:
|
|
1595
|
+
L: 165,
|
|
1572
1596
|
S: this,
|
|
1573
1597
|
C: (f, a) => f(...a)
|
|
1574
1598
|
});
|
|
@@ -1577,7 +1601,7 @@ var SpaceStateMachine = class {
|
|
|
1577
1601
|
if (!credential.issuer.equals(this._spaceKey)) {
|
|
1578
1602
|
import_log.log.warn("Space genesis credential must be issued by space.", void 0, {
|
|
1579
1603
|
F: __dxlog_file6,
|
|
1580
|
-
L:
|
|
1604
|
+
L: 169,
|
|
1581
1605
|
S: this,
|
|
1582
1606
|
C: (f, a) => f(...a)
|
|
1583
1607
|
});
|
|
@@ -1586,7 +1610,7 @@ var SpaceStateMachine = class {
|
|
|
1586
1610
|
if (!credential.subject.id.equals(this._spaceKey)) {
|
|
1587
1611
|
import_log.log.warn("Space genesis credential must be issued to space.", void 0, {
|
|
1588
1612
|
F: __dxlog_file6,
|
|
1589
|
-
L:
|
|
1613
|
+
L: 173,
|
|
1590
1614
|
S: this,
|
|
1591
1615
|
C: (f, a) => f(...a)
|
|
1592
1616
|
});
|
|
@@ -1602,7 +1626,7 @@ var SpaceStateMachine = class {
|
|
|
1602
1626
|
if (!this._genesisCredential) {
|
|
1603
1627
|
import_log.log.warn("Space must have a genesis credential before adding members.", void 0, {
|
|
1604
1628
|
F: __dxlog_file6,
|
|
1605
|
-
L:
|
|
1629
|
+
L: 186,
|
|
1606
1630
|
S: this,
|
|
1607
1631
|
C: (f, a) => f(...a)
|
|
1608
1632
|
});
|
|
@@ -1611,7 +1635,7 @@ var SpaceStateMachine = class {
|
|
|
1611
1635
|
if (!this._canInviteNewMembers(credential.issuer)) {
|
|
1612
1636
|
import_log.log.warn(`Space member is not authorized to invite new members: ${credential.issuer}`, void 0, {
|
|
1613
1637
|
F: __dxlog_file6,
|
|
1614
|
-
L:
|
|
1638
|
+
L: 190,
|
|
1615
1639
|
S: this,
|
|
1616
1640
|
C: (f, a) => f(...a)
|
|
1617
1641
|
});
|
|
@@ -1625,7 +1649,7 @@ var SpaceStateMachine = class {
|
|
|
1625
1649
|
if (!this._genesisCredential) {
|
|
1626
1650
|
import_log.log.warn("Space must have a genesis credential before adding members.", void 0, {
|
|
1627
1651
|
F: __dxlog_file6,
|
|
1628
|
-
L:
|
|
1652
|
+
L: 201,
|
|
1629
1653
|
S: this,
|
|
1630
1654
|
C: (f, a) => f(...a)
|
|
1631
1655
|
});
|
|
@@ -1638,19 +1662,7 @@ var SpaceStateMachine = class {
|
|
|
1638
1662
|
if (!this._genesisCredential) {
|
|
1639
1663
|
import_log.log.warn("Space must have a genesis credential before admitting feeds.", void 0, {
|
|
1640
1664
|
F: __dxlog_file6,
|
|
1641
|
-
L:
|
|
1642
|
-
S: this,
|
|
1643
|
-
C: (f, a) => f(...a)
|
|
1644
|
-
});
|
|
1645
|
-
return false;
|
|
1646
|
-
}
|
|
1647
|
-
if (!this._canAdmitFeeds(credential.issuer)) {
|
|
1648
|
-
import_log.log.warn(`Space member is not authorized to admit feeds: ${credential.issuer}`, {
|
|
1649
|
-
sourceFeed: sourceFeed.toHex(),
|
|
1650
|
-
feed: credential.subject.id.toHex()
|
|
1651
|
-
}, {
|
|
1652
|
-
F: __dxlog_file6,
|
|
1653
|
-
L: 212,
|
|
1665
|
+
L: 211,
|
|
1654
1666
|
S: this,
|
|
1655
1667
|
C: (f, a) => f(...a)
|
|
1656
1668
|
});
|
|
@@ -1664,7 +1676,7 @@ var SpaceStateMachine = class {
|
|
|
1664
1676
|
if (!this._canInviteNewMembers(credential.issuer)) {
|
|
1665
1677
|
import_log.log.warn(`Invalid invitation, space member is not authorized to invite new members: ${credential.issuer}`, void 0, {
|
|
1666
1678
|
F: __dxlog_file6,
|
|
1667
|
-
L:
|
|
1679
|
+
L: 222,
|
|
1668
1680
|
S: this,
|
|
1669
1681
|
C: (f, a) => f(...a)
|
|
1670
1682
|
});
|
|
@@ -1689,9 +1701,6 @@ var SpaceStateMachine = class {
|
|
|
1689
1701
|
}
|
|
1690
1702
|
}
|
|
1691
1703
|
await this.onCredentialProcessed.callIfSet(credential);
|
|
1692
|
-
if (credential.id) {
|
|
1693
|
-
this._processedCredentials.add(credential.id);
|
|
1694
|
-
}
|
|
1695
1704
|
return true;
|
|
1696
1705
|
}
|
|
1697
1706
|
getMemberRole(memberKey) {
|
|
@@ -1703,11 +1712,10 @@ var SpaceStateMachine = class {
|
|
|
1703
1712
|
_canInviteNewMembers(key) {
|
|
1704
1713
|
return key.equals(this._spaceKey) || this._members.getRole(key) === import_credentials2.SpaceMember.Role.ADMIN || this._members.getRole(key) === import_credentials2.SpaceMember.Role.OWNER;
|
|
1705
1714
|
}
|
|
1706
|
-
_canAdmitFeeds(key) {
|
|
1707
|
-
const role = this._members.getRole(key);
|
|
1708
|
-
return role === import_credentials2.SpaceMember.Role.EDITOR || role === import_credentials2.SpaceMember.Role.ADMIN || role === import_credentials2.SpaceMember.Role.OWNER;
|
|
1709
|
-
}
|
|
1710
1715
|
};
|
|
1716
|
+
_ts_decorate([
|
|
1717
|
+
import_async.synchronized
|
|
1718
|
+
], SpaceStateMachine.prototype, "process", null);
|
|
1711
1719
|
var CredentialConsumer = class {
|
|
1712
1720
|
constructor(processor, _onOpen, _onClose) {
|
|
1713
1721
|
this.processor = processor;
|
|
@@ -1715,7 +1723,7 @@ var CredentialConsumer = class {
|
|
|
1715
1723
|
this._onClose = _onClose;
|
|
1716
1724
|
this._ctx = new import_context.Context(void 0, {
|
|
1717
1725
|
F: __dxlog_file6,
|
|
1718
|
-
L:
|
|
1726
|
+
L: 267
|
|
1719
1727
|
});
|
|
1720
1728
|
this._isReadyForLiveCredentials = false;
|
|
1721
1729
|
}
|
|
@@ -1742,7 +1750,7 @@ var __dxlog_file7 = "/home/runner/work/dxos/dxos/packages/core/halo/credentials/
|
|
|
1742
1750
|
var DeviceStateMachine = class {
|
|
1743
1751
|
constructor(_params) {
|
|
1744
1752
|
this._params = _params;
|
|
1745
|
-
this.authorizedDeviceKeys = new
|
|
1753
|
+
this.authorizedDeviceKeys = new import_util8.ComplexMap(import_keys9.PublicKey.hash);
|
|
1746
1754
|
this.deviceChainReady = new import_async2.Trigger();
|
|
1747
1755
|
}
|
|
1748
1756
|
async processCredential(credential) {
|
|
@@ -1765,23 +1773,14 @@ var DeviceStateMachine = class {
|
|
|
1765
1773
|
const assertion = getCredentialAssertion(credential);
|
|
1766
1774
|
switch (assertion["@type"]) {
|
|
1767
1775
|
case "dxos.halo.credentials.AuthorizedDevice": {
|
|
1768
|
-
(
|
|
1769
|
-
F: __dxlog_file7,
|
|
1770
|
-
L: 51,
|
|
1771
|
-
S: this,
|
|
1772
|
-
A: [
|
|
1773
|
-
"!this.authorizedDeviceKeys.has(assertion.deviceKey)",
|
|
1774
|
-
"'Device already added.'"
|
|
1775
|
-
]
|
|
1776
|
-
});
|
|
1777
|
-
this.authorizedDeviceKeys.set(assertion.deviceKey, {});
|
|
1776
|
+
this.authorizedDeviceKeys.set(assertion.deviceKey, this.authorizedDeviceKeys.get(assertion.deviceKey) ?? {});
|
|
1778
1777
|
(0, import_log4.log)("added device", {
|
|
1779
1778
|
localDeviceKey: this._params.deviceKey,
|
|
1780
1779
|
deviceKey: assertion.deviceKey,
|
|
1781
1780
|
size: this.authorizedDeviceKeys.size
|
|
1782
1781
|
}, {
|
|
1783
1782
|
F: __dxlog_file7,
|
|
1784
|
-
L:
|
|
1783
|
+
L: 55,
|
|
1785
1784
|
S: this,
|
|
1786
1785
|
C: (f, a) => f(...a)
|
|
1787
1786
|
});
|
|
@@ -1791,7 +1790,7 @@ var DeviceStateMachine = class {
|
|
|
1791
1790
|
case "dxos.halo.credentials.DeviceProfile": {
|
|
1792
1791
|
(0, import_invariant6.invariant)(this.authorizedDeviceKeys.has(credential.subject.id), "Device not found.", {
|
|
1793
1792
|
F: __dxlog_file7,
|
|
1794
|
-
L:
|
|
1793
|
+
L: 65,
|
|
1795
1794
|
S: this,
|
|
1796
1795
|
A: [
|
|
1797
1796
|
"this.authorizedDeviceKeys.has(credential.subject.id)",
|
|
@@ -1804,7 +1803,7 @@ var DeviceStateMachine = class {
|
|
|
1804
1803
|
profile: assertion.profile
|
|
1805
1804
|
}, {
|
|
1806
1805
|
F: __dxlog_file7,
|
|
1807
|
-
L:
|
|
1806
|
+
L: 68,
|
|
1808
1807
|
S: this,
|
|
1809
1808
|
C: (f, a) => f(...a)
|
|
1810
1809
|
});
|
|
@@ -1873,6 +1872,7 @@ var ProfileStateMachine = class {
|
|
|
1873
1872
|
createCredentialSignerWithKey,
|
|
1874
1873
|
createDelegatedSpaceInvitationCredential,
|
|
1875
1874
|
createDeviceAuthorization,
|
|
1875
|
+
createDidFromIdentityKey,
|
|
1876
1876
|
credentialTypeFilter,
|
|
1877
1877
|
defaultSecretProvider,
|
|
1878
1878
|
defaultSecretValidator,
|