@atproto/api 0.20.15 → 0.20.16
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/CHANGELOG.md +12 -0
- package/dist/agent.d.ts +1 -1
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js.map +1 -1
- package/dist/atp-agent.d.ts.map +1 -1
- package/dist/atp-agent.js.map +1 -1
- package/dist/bsky-agent.d.ts.map +1 -1
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/lexicons.d.ts +17122 -17122
- package/dist/client/lexicons.d.ts.map +1 -1
- package/dist/client/types/app/bsky/ageassurance/begin.d.ts.map +1 -1
- package/dist/client/types/app/bsky/bookmark/createBookmark.d.ts.map +1 -1
- package/dist/client/types/app/bsky/bookmark/deleteBookmark.d.ts.map +1 -1
- package/dist/client/types/app/bsky/contact/dismissMatch.d.ts.map +1 -1
- package/dist/client/types/app/bsky/contact/getMatches.d.ts.map +1 -1
- package/dist/client/types/app/bsky/contact/getSyncStatus.d.ts.map +1 -1
- package/dist/client/types/app/bsky/contact/importContacts.d.ts.map +1 -1
- package/dist/client/types/app/bsky/contact/removeData.d.ts.map +1 -1
- package/dist/client/types/app/bsky/contact/startPhoneVerification.d.ts.map +1 -1
- package/dist/client/types/app/bsky/contact/verifyPhone.d.ts.map +1 -1
- package/dist/client/types/app/bsky/draft/createDraft.d.ts.map +1 -1
- package/dist/client/types/app/bsky/feed/getActorLikes.d.ts.map +1 -1
- package/dist/client/types/app/bsky/feed/getAuthorFeed.d.ts.map +1 -1
- package/dist/client/types/app/bsky/feed/getFeed.d.ts.map +1 -1
- package/dist/client/types/app/bsky/feed/getFeedSkeleton.d.ts.map +1 -1
- package/dist/client/types/app/bsky/feed/getListFeed.d.ts.map +1 -1
- package/dist/client/types/app/bsky/feed/getPostThread.d.ts.map +1 -1
- package/dist/client/types/app/bsky/feed/searchPosts.d.ts.map +1 -1
- package/dist/client/types/app/bsky/graph/getRelationships.d.ts.map +1 -1
- package/dist/client/types/app/bsky/unspecced/initAgeAssurance.d.ts.map +1 -1
- package/dist/client/types/app/bsky/unspecced/searchActorsSkeleton.d.ts.map +1 -1
- package/dist/client/types/app/bsky/unspecced/searchPostsSkeleton.d.ts.map +1 -1
- package/dist/client/types/app/bsky/unspecced/searchStarterPacksSkeleton.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/convo/acceptConvo.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/convo/addReaction.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/convo/deleteMessageForSelf.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/convo/getConvo.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/convo/getConvoForMembers.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/convo/getConvoMembers.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/convo/getMessages.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/convo/leaveConvo.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/convo/lockConvo.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/convo/muteConvo.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/convo/removeReaction.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/convo/sendMessage.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/convo/sendMessageBatch.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/convo/unlockConvo.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/convo/unmuteConvo.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/convo/updateRead.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/group/addMembers.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/group/approveJoinRequest.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/group/createGroup.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/group/createJoinLink.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/group/disableJoinLink.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/group/editGroup.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/group/editJoinLink.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/group/enableJoinLink.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/group/listJoinRequests.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/group/rejectJoinRequest.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/group/removeMembers.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/group/requestJoin.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/group/updateJoinRequestsRead.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/group/withdrawJoinRequest.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/moderation/getConvo.d.ts.map +1 -1
- package/dist/client/types/chat/bsky/moderation/getConvoMembers.d.ts.map +1 -1
- package/dist/client/types/com/atproto/identity/refreshIdentity.d.ts.map +1 -1
- package/dist/client/types/com/atproto/identity/resolveDid.d.ts.map +1 -1
- package/dist/client/types/com/atproto/identity/resolveHandle.d.ts.map +1 -1
- package/dist/client/types/com/atproto/identity/resolveIdentity.d.ts.map +1 -1
- package/dist/client/types/com/atproto/lexicon/resolveLexicon.d.ts.map +1 -1
- package/dist/client/types/com/atproto/repo/applyWrites.d.ts.map +1 -1
- package/dist/client/types/com/atproto/repo/createRecord.d.ts.map +1 -1
- package/dist/client/types/com/atproto/repo/deleteRecord.d.ts.map +1 -1
- package/dist/client/types/com/atproto/repo/getRecord.d.ts.map +1 -1
- package/dist/client/types/com/atproto/repo/putRecord.d.ts.map +1 -1
- package/dist/client/types/com/atproto/server/confirmEmail.d.ts.map +1 -1
- package/dist/client/types/com/atproto/server/createAccount.d.ts.map +1 -1
- package/dist/client/types/com/atproto/server/createAppPassword.d.ts.map +1 -1
- package/dist/client/types/com/atproto/server/createSession.d.ts.map +1 -1
- package/dist/client/types/com/atproto/server/deleteAccount.d.ts.map +1 -1
- package/dist/client/types/com/atproto/server/deleteSession.d.ts.map +1 -1
- package/dist/client/types/com/atproto/server/getAccountInviteCodes.d.ts.map +1 -1
- package/dist/client/types/com/atproto/server/getServiceAuth.d.ts.map +1 -1
- package/dist/client/types/com/atproto/server/listAppPasswords.d.ts.map +1 -1
- package/dist/client/types/com/atproto/server/refreshSession.d.ts.map +1 -1
- package/dist/client/types/com/atproto/server/resetPassword.d.ts.map +1 -1
- package/dist/client/types/com/atproto/server/updateEmail.d.ts.map +1 -1
- package/dist/client/types/com/atproto/sync/getBlob.d.ts.map +1 -1
- package/dist/client/types/com/atproto/sync/getBlocks.d.ts.map +1 -1
- package/dist/client/types/com/atproto/sync/getHead.d.ts.map +1 -1
- package/dist/client/types/com/atproto/sync/getHostStatus.d.ts.map +1 -1
- package/dist/client/types/com/atproto/sync/getLatestCommit.d.ts.map +1 -1
- package/dist/client/types/com/atproto/sync/getRecord.d.ts.map +1 -1
- package/dist/client/types/com/atproto/sync/getRepo.d.ts.map +1 -1
- package/dist/client/types/com/atproto/sync/getRepoStatus.d.ts.map +1 -1
- package/dist/client/types/com/atproto/sync/listBlobs.d.ts.map +1 -1
- package/dist/client/types/com/atproto/sync/requestCrawl.d.ts.map +1 -1
- package/dist/client/types/com/atproto/temp/checkHandleAvailability.d.ts.map +1 -1
- package/dist/client/types/com/atproto/temp/dereferenceScope.d.ts.map +1 -1
- package/dist/client/types/tools/ozone/communication/createTemplate.d.ts.map +1 -1
- package/dist/client/types/tools/ozone/communication/updateTemplate.d.ts.map +1 -1
- package/dist/client/types/tools/ozone/moderation/emitEvent.d.ts.map +1 -1
- package/dist/client/types/tools/ozone/moderation/getAccountTimeline.d.ts.map +1 -1
- package/dist/client/types/tools/ozone/moderation/getRecord.d.ts.map +1 -1
- package/dist/client/types/tools/ozone/moderation/getRepo.d.ts.map +1 -1
- package/dist/client/types/tools/ozone/queue/assignModerator.d.ts.map +1 -1
- package/dist/client/types/tools/ozone/queue/createQueue.d.ts.map +1 -1
- package/dist/client/types/tools/ozone/queue/routeReports.d.ts.map +1 -1
- package/dist/client/types/tools/ozone/queue/unassignModerator.d.ts.map +1 -1
- package/dist/client/types/tools/ozone/report/assignModerator.d.ts.map +1 -1
- package/dist/client/types/tools/ozone/report/createActivity.d.ts.map +1 -1
- package/dist/client/types/tools/ozone/report/getLatestReport.d.ts.map +1 -1
- package/dist/client/types/tools/ozone/report/getReport.d.ts.map +1 -1
- package/dist/client/types/tools/ozone/report/reassignQueue.d.ts.map +1 -1
- package/dist/client/types/tools/ozone/report/unassignModerator.d.ts.map +1 -1
- package/dist/client/types/tools/ozone/safelink/addRule.d.ts.map +1 -1
- package/dist/client/types/tools/ozone/safelink/removeRule.d.ts.map +1 -1
- package/dist/client/types/tools/ozone/safelink/updateRule.d.ts.map +1 -1
- package/dist/client/types/tools/ozone/set/deleteSet.d.ts.map +1 -1
- package/dist/client/types/tools/ozone/set/deleteValues.d.ts.map +1 -1
- package/dist/client/types/tools/ozone/set/getValues.d.ts.map +1 -1
- package/dist/client/types/tools/ozone/team/addMember.d.ts.map +1 -1
- package/dist/client/types/tools/ozone/team/deleteMember.d.ts.map +1 -1
- package/dist/client/types/tools/ozone/team/updateMember.d.ts.map +1 -1
- package/dist/client/util.d.ts.map +1 -1
- package/dist/mocker.d.ts +3 -3
- package/dist/mocker.d.ts.map +1 -1
- package/dist/moderation/decision.d.ts +5 -5
- package/dist/moderation/decision.d.ts.map +1 -1
- package/dist/rich-text/rich-text.d.ts.map +1 -1
- package/dist/rich-text/rich-text.js.map +1 -1
- package/dist/rich-text/unicode.d.ts.map +1 -1
- package/dist/util.d.ts +2 -2
- package/package.json +7 -8
- package/tsconfig.build.tsbuildinfo +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decision.d.ts","sourceRoot":"","sources":["../../src/moderation/decision.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAErD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAIL,KAAK,EACL,eAAe,EACf,WAAW,EAGX,kBAAkB,EAClB,eAAe,EACf,cAAc,EAEf,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAQtC,qBAAa,kBAAkB;IAC7B,GAAG,SAAK;IACR,IAAI,UAAQ;IACZ,MAAM,EAAE,eAAe,EAAE,CAAK
|
|
1
|
+
{"version":3,"file":"decision.d.ts","sourceRoot":"","sources":["../../src/moderation/decision.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAErD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAIL,KAAK,EACL,eAAe,EACf,WAAW,EAGX,kBAAkB,EAClB,eAAe,EACf,cAAc,EAEf,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAQtC,qBAAa,kBAAkB;IAC7B,GAAG,SAAK;IACR,IAAI,UAAQ;IACZ,MAAM,EAAE,eAAe,EAAE,CAAK;IAE9B,cAAgB;IAEhB,MAAM,CAAC,KAAK,CACV,GAAG,SAAS,EAAE,CAAC,kBAAkB,GAAG,SAAS,CAAC,EAAE,GAC/C,kBAAkB,CASpB;IAED,SAAS,SAKR;IAED,IAAI,OAAO,YAEV;IAED,IAAI,KAAK,YAER;IAED,IAAI,UAAU;;;;;;;;;;;;;;;kBAOb;IAED,IAAI,SAAS;;;;;kBAEZ;IAED,IAAI,WAAW;;;;;;;;;;;QAEd;IAED,EAAE,CAAC,OAAO,EAAE,MAAM,kBAAkB,GAAG,YAAY,CAqGlD;IAED,MAAM,CAAC,GAAG,EAAE,MAAM,QAEjB;IAED,OAAO,CAAC,IAAI,EAAE,OAAO,QAEpB;IAED,SAAS,CAAC,MAAM,EAAE,OAAO,QAQxB;IAED,YAAY,CAAC,OAAO,EAAE,aAAa,EAAE,GAAG,SAAS,QAShD;IAED,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,QAQvC;IAED,iBAAiB,CACf,cAAc,EAAE,gBAAgB,CAAC,aAAa,GAAG,SAAS,QAS3D;IAED,YAAY,CAAC,SAAS,EAAE,OAAO,GAAG,SAAS,QAQ1C;IAED,aAAa,CAAC,UAAU,EAAE,OAAO,GAAG,SAAS,QAQ5C;IAED,QAAQ,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,cAAc,QAiG/D;IAED,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,SAAS,QAQlC;IAED,cAAc,CAAC,WAAW,EAAE,gBAAgB,CAAC,aAAa,GAAG,SAAS,QAQrE;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rich-text.d.ts","sourceRoot":"","sources":["../../src/rich-text/rich-text.ts"],"names":[],"mappings":"AA6FA,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,aAAa,EACd,MAAM,oBAAoB,CAAA;AAG3B,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAE5C,MAAM,MAAM,KAAK,GAAG,oBAAoB,CAAC,IAAI,CAAA;AAC7C,MAAM,MAAM,SAAS,GAAG,oBAAoB,CAAC,IAAI,CAAA;AACjD,MAAM,MAAM,YAAY,GAAG,oBAAoB,CAAC,OAAO,CAAA;AACvD,MAAM,MAAM,QAAQ,GAAG,oBAAoB,CAAC,GAAG,CAAA;AAC/C,MAAM,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,CAAA;AAE3C,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,CAAC,EAAE,KAAK,EAAE,CAAA;IAChB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB;AAED,qBAAa,eAAe;IAEjB,IAAI,EAAE,MAAM;IACZ,KAAK,CAAC,EAAE,KAAK;
|
|
1
|
+
{"version":3,"file":"rich-text.d.ts","sourceRoot":"","sources":["../../src/rich-text/rich-text.ts"],"names":[],"mappings":"AA6FA,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,aAAa,EACd,MAAM,oBAAoB,CAAA;AAG3B,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAE5C,MAAM,MAAM,KAAK,GAAG,oBAAoB,CAAC,IAAI,CAAA;AAC7C,MAAM,MAAM,SAAS,GAAG,oBAAoB,CAAC,IAAI,CAAA;AACjD,MAAM,MAAM,YAAY,GAAG,oBAAoB,CAAC,OAAO,CAAA;AACvD,MAAM,MAAM,QAAQ,GAAG,oBAAoB,CAAC,GAAG,CAAA;AAC/C,MAAM,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,CAAA;AAE3C,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,CAAC,EAAE,KAAK,EAAE,CAAA;IAChB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB;AAED,qBAAa,eAAe;IAEjB,IAAI,EAAE,MAAM;IACZ,KAAK,CAAC,EAAE,KAAK;IAFtB,YACS,IAAI,EAAE,MAAM,EACZ,KAAK,CAAC,EAAE,KAAK,YAAA,EAClB;IAEJ,IAAI,IAAI,IAAI,SAAS,GAAG,SAAS,CAEhC;IAED,MAAM,YAEL;IAED,IAAI,OAAO,IAAI,YAAY,GAAG,SAAS,CAEtC;IAED,SAAS,YAER;IAED,IAAI,GAAG,IAAI,QAAQ,GAAG,SAAS,CAE9B;IAED,KAAK,YAEJ;CACF;AAED,qBAAa,QAAQ;IACnB,WAAW,EAAE,aAAa,CAAA;IAC1B,MAAM,CAAC,EAAE,KAAK,EAAE,CAAA;IAEhB,YAAY,KAAK,EAAE,aAAa,EAAE,IAAI,CAAC,EAAE,YAAY,EAYpD;IAED,IAAI,IAAI,WAEP;IAED,IAAI,MAAM,WAET;IAED,IAAI,cAAc,WAEjB;IAED,KAAK,aAKJ;IAED,QAAQ,CAAC,MAAM,EAAE,QAAQ,QAGxB;IAEA,QAAQ,IAAI,SAAS,CAAC,eAAe,EAAE,IAAI,EAAE,IAAI,CAAC,CAuClD;IAED,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,QAgC7C;IAED,MAAM,CAAC,gBAAgB,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,QAkEtD;IAED;;;OAGG;IACG,YAAY,CAAC,KAAK,EAAE,aAAa,iBAsBtC;IAED;;;;OAIG;IACH,6BAA6B,SAK5B;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rich-text.js","sourceRoot":"","sources":["../../src/rich-text/rich-text.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n= Rich Text Manipulation\n\nWhen we sanitize rich text, we have to update the entity indices as the\ntext is modified. This can be modeled as inserts() and deletes() of the\nrich text string. The possible scenarios are outlined below, along with\ntheir expected behaviors.\n\nNOTE: Slices are start inclusive, end exclusive\n\n== richTextInsert()\n\nTarget string:\n\n 0 1 2 3 4 5 6 7 8 910 // string indices\n h e l l o w o r l d // string value\n ^-------^ // target slice {start: 2, end: 7}\n\nScenarios:\n\nA: ^ // insert \"test\" at 0\nB: ^ // insert \"test\" at 4\nC: ^ // insert \"test\" at 8\n\nA = before -> move both by num added\nB = inner -> move end by num added\nC = after -> noop\n\nResults:\n\nA: 0 1 2 3 4 5 6 7 8 910 // string indices\n t e s t h e l l o w // string value\n ^-------^ // target slice {start: 6, end: 11}\n\nB: 0 1 2 3 4 5 6 7 8 910 // string indices\n h e l l t e s t o w // string value\n ^---------------^ // target slice {start: 2, end: 11}\n\nC: 0 1 2 3 4 5 6 7 8 910 // string indices\n h e l l o w o t e s // string value\n ^-------^ // target slice {start: 2, end: 7}\n\n== richTextDelete()\n\nTarget string:\n\n 0 1 2 3 4 5 6 7 8 910 // string indices\n h e l l o w o r l d // string value\n ^-------^ // target slice {start: 2, end: 7}\n\nScenarios:\n\nA: ^---------------^ // remove slice {start: 0, end: 9}\nB: ^-----^ // remove slice {start: 7, end: 11}\nC: ^-----------^ // remove slice {start: 4, end: 11}\nD: ^-^ // remove slice {start: 3, end: 5}\nE: ^-----^ // remove slice {start: 1, end: 5}\nF: ^-^ // remove slice {start: 0, end: 2}\n\nA = entirely outer -> delete slice\nB = entirely after -> noop\nC = partially after -> move end to remove-start\nD = entirely inner -> move end by num removed\nE = partially before -> move start to remove-start index, move end by num removed\nF = entirely before -> move both by num removed\n\nResults:\n\nA: 0 1 2 3 4 5 6 7 8 910 // string indices\n l d // string value\n // target slice (deleted)\n\nB: 0 1 2 3 4 5 6 7 8 910 // string indices\n h e l l o w // string value\n ^-------^ // target slice {start: 2, end: 7}\n\nC: 0 1 2 3 4 5 6 7 8 910 // string indices\n h e l l // string value\n ^-^ // target slice {start: 2, end: 4}\n\nD: 0 1 2 3 4 5 6 7 8 910 // string indices\n h e l w o r l d // string value\n ^---^ // target slice {start: 2, end: 5}\n\nE: 0 1 2 3 4 5 6 7 8 910 // string indices\n h w o r l d // string value\n ^-^ // target slice {start: 1, end: 3}\n\nF: 0 1 2 3 4 5 6 7 8 910 // string indices\n l l o w o r l d // string value\n ^-------^ // target slice {start: 0, end: 5}\n */\n\nimport {\n AppBskyFeedPost,\n AppBskyRichtextFacet,\n AtpBaseClient,\n} from '../client/index.js'\nimport { detectFacets } from './detection.js'\nimport { sanitizeRichText } from './sanitization.js'\nimport { UnicodeString } from './unicode.js'\n\nexport type Facet = AppBskyRichtextFacet.Main\nexport type FacetLink = AppBskyRichtextFacet.Link\nexport type FacetMention = AppBskyRichtextFacet.Mention\nexport type FacetTag = AppBskyRichtextFacet.Tag\nexport type Entity = AppBskyFeedPost.Entity\n\nexport interface RichTextProps {\n text: string\n facets?: Facet[]\n /**\n * @deprecated Use facets instead\n */\n entities?: Entity[]\n}\n\nexport interface RichTextOpts {\n cleanNewlines?: boolean\n}\n\nexport class RichTextSegment {\n constructor(\n public text: string,\n public facet?: Facet,\n ) {}\n\n get link(): FacetLink | undefined {\n return this.facet?.features.find(AppBskyRichtextFacet.isLink)\n }\n\n isLink() {\n return !!this.link\n }\n\n get mention(): FacetMention | undefined {\n return this.facet?.features.find(AppBskyRichtextFacet.isMention)\n }\n\n isMention() {\n return !!this.mention\n }\n\n get tag(): FacetTag | undefined {\n return this.facet?.features.find(AppBskyRichtextFacet.isTag)\n }\n\n isTag() {\n return !!this.tag\n }\n}\n\nexport class RichText {\n unicodeText: UnicodeString\n facets?: Facet[]\n\n constructor(props: RichTextProps, opts?: RichTextOpts) {\n this.unicodeText = new UnicodeString(props.text)\n this.facets = props.facets\n if (!this.facets?.length && props.entities?.length) {\n this.facets = entitiesToFacets(this.unicodeText, props.entities)\n }\n if (this.facets) {\n this.facets = this.facets.filter(facetFilter).sort(facetSort)\n }\n if (opts?.cleanNewlines) {\n sanitizeRichText(this, { cleanNewlines: true }).copyInto(this)\n }\n }\n\n get text() {\n return this.unicodeText.toString()\n }\n\n get length() {\n return this.unicodeText.length\n }\n\n get graphemeLength() {\n return this.unicodeText.graphemeLength\n }\n\n clone() {\n return new RichText({\n text: this.unicodeText.utf16,\n facets: cloneDeep(this.facets),\n })\n }\n\n copyInto(target: RichText) {\n target.unicodeText = this.unicodeText\n target.facets = cloneDeep(this.facets)\n }\n\n *segments(): Generator<RichTextSegment, void, void> {\n const facets = this.facets || []\n if (!facets.length) {\n yield new RichTextSegment(this.unicodeText.utf16)\n return\n }\n\n let textCursor = 0\n let facetCursor = 0\n do {\n const currFacet = facets[facetCursor]\n if (textCursor < currFacet.index.byteStart) {\n yield new RichTextSegment(\n this.unicodeText.slice(textCursor, currFacet.index.byteStart),\n )\n } else if (textCursor > currFacet.index.byteStart) {\n facetCursor++\n continue\n }\n if (currFacet.index.byteStart < currFacet.index.byteEnd) {\n const subtext = this.unicodeText.slice(\n currFacet.index.byteStart,\n currFacet.index.byteEnd,\n )\n if (!subtext.trim()) {\n // dont empty string entities\n yield new RichTextSegment(subtext)\n } else {\n yield new RichTextSegment(subtext, currFacet)\n }\n }\n textCursor = currFacet.index.byteEnd\n facetCursor++\n } while (facetCursor < facets.length)\n if (textCursor < this.unicodeText.length) {\n yield new RichTextSegment(\n this.unicodeText.slice(textCursor, this.unicodeText.length),\n )\n }\n }\n\n insert(insertIndex: number, insertText: string) {\n this.unicodeText = new UnicodeString(\n this.unicodeText.slice(0, insertIndex) +\n insertText +\n this.unicodeText.slice(insertIndex),\n )\n\n if (!this.facets?.length) {\n return this\n }\n\n const numCharsAdded = insertText.length\n for (const ent of this.facets) {\n // see comment at top of file for labels of each scenario\n // scenario A (before)\n if (insertIndex <= ent.index.byteStart) {\n // move both by num added\n ent.index.byteStart += numCharsAdded\n ent.index.byteEnd += numCharsAdded\n }\n // scenario B (inner)\n else if (\n insertIndex >= ent.index.byteStart &&\n insertIndex < ent.index.byteEnd\n ) {\n // move end by num added\n ent.index.byteEnd += numCharsAdded\n }\n // scenario C (after)\n // noop\n }\n return this\n }\n\n delete(removeStartIndex: number, removeEndIndex: number) {\n this.unicodeText = new UnicodeString(\n this.unicodeText.slice(0, removeStartIndex) +\n this.unicodeText.slice(removeEndIndex),\n )\n\n if (!this.facets?.length) {\n return this\n }\n\n const numCharsRemoved = removeEndIndex - removeStartIndex\n for (const ent of this.facets) {\n // see comment at top of file for labels of each scenario\n // scenario A (entirely outer)\n if (\n removeStartIndex <= ent.index.byteStart &&\n removeEndIndex >= ent.index.byteEnd\n ) {\n // delete slice (will get removed in final pass)\n ent.index.byteStart = 0\n ent.index.byteEnd = 0\n }\n // scenario B (entirely after)\n else if (removeStartIndex > ent.index.byteEnd) {\n // noop\n }\n // scenario C (partially after)\n else if (\n removeStartIndex > ent.index.byteStart &&\n removeStartIndex <= ent.index.byteEnd &&\n removeEndIndex > ent.index.byteEnd\n ) {\n // move end to remove start\n ent.index.byteEnd = removeStartIndex\n }\n // scenario D (entirely inner)\n else if (\n removeStartIndex >= ent.index.byteStart &&\n removeEndIndex <= ent.index.byteEnd\n ) {\n // move end by num removed\n ent.index.byteEnd -= numCharsRemoved\n }\n // scenario E (partially before)\n else if (\n removeStartIndex < ent.index.byteStart &&\n removeEndIndex >= ent.index.byteStart &&\n removeEndIndex <= ent.index.byteEnd\n ) {\n // move start to remove-start index, move end by num removed\n ent.index.byteStart = removeStartIndex\n ent.index.byteEnd -= numCharsRemoved\n }\n // scenario F (entirely before)\n else if (removeEndIndex < ent.index.byteStart) {\n // move both by num removed\n ent.index.byteStart -= numCharsRemoved\n ent.index.byteEnd -= numCharsRemoved\n }\n }\n\n // filter out any facets that were made irrelevant\n this.facets = this.facets.filter(\n (ent) => ent.index.byteStart < ent.index.byteEnd,\n )\n return this\n }\n\n /**\n * Detects facets such as links and mentions\n * Note: Overwrites the existing facets with auto-detected facets\n */\n async detectFacets(agent: AtpBaseClient) {\n this.facets = detectFacets(this.unicodeText)\n if (this.facets) {\n const promises: Promise<void>[] = []\n for (const facet of this.facets) {\n for (const feature of facet.features) {\n if (AppBskyRichtextFacet.isMention(feature)) {\n promises.push(\n agent.com.atproto.identity\n .resolveHandle({ handle: feature.did })\n .then((res) => res?.data.did)\n .catch((_) => undefined)\n .then((did) => {\n feature.did = did || ''\n }),\n )\n }\n }\n }\n await Promise.allSettled(promises)\n this.facets.sort(facetSort)\n }\n }\n\n /**\n * Detects facets such as links and mentions but does not resolve them\n * Will produce invalid facets! For instance, mentions will not have their DIDs set.\n * Note: Overwrites the existing facets with auto-detected facets\n */\n detectFacetsWithoutResolution() {\n this.facets = detectFacets(this.unicodeText)\n if (this.facets) {\n this.facets.sort(facetSort)\n }\n }\n}\n\nconst facetSort = (a: Facet, b: Facet) => a.index.byteStart - b.index.byteStart\n\nconst facetFilter = (facet: Facet) =>\n // discard negative-length facets. zero-length facets are valid\n facet.index.byteStart <= facet.index.byteEnd\n\nfunction entitiesToFacets(text: UnicodeString, entities: Entity[]): Facet[] {\n const facets: Facet[] = []\n for (const ent of entities) {\n if (ent.type === 'link') {\n facets.push({\n $type: 'app.bsky.richtext.facet',\n index: {\n byteStart: text.utf16IndexToUtf8Index(ent.index.start),\n byteEnd: text.utf16IndexToUtf8Index(ent.index.end),\n },\n features: [{ $type: 'app.bsky.richtext.facet#link', uri: ent.value }],\n })\n } else if (ent.type === 'mention') {\n facets.push({\n $type: 'app.bsky.richtext.facet',\n index: {\n byteStart: text.utf16IndexToUtf8Index(ent.index.start),\n byteEnd: text.utf16IndexToUtf8Index(ent.index.end),\n },\n features: [\n { $type: 'app.bsky.richtext.facet#mention', did: ent.value },\n ],\n })\n }\n }\n return facets\n}\n\nfunction cloneDeep<T>(v: T): T {\n if (typeof v === 'undefined') {\n return v\n }\n return JSON.parse(JSON.stringify(v))\n}\n"]}
|
|
1
|
+
{"version":3,"file":"rich-text.js","sourceRoot":"","sources":["../../src/rich-text/rich-text.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n= Rich Text Manipulation\n\nWhen we sanitize rich text, we have to update the entity indices as the\ntext is modified. This can be modeled as inserts() and deletes() of the\nrich text string. The possible scenarios are outlined below, along with\ntheir expected behaviors.\n\nNOTE: Slices are start inclusive, end exclusive\n\n== richTextInsert()\n\nTarget string:\n\n 0 1 2 3 4 5 6 7 8 910 // string indices\n h e l l o w o r l d // string value\n ^-------^ // target slice {start: 2, end: 7}\n\nScenarios:\n\nA: ^ // insert \"test\" at 0\nB: ^ // insert \"test\" at 4\nC: ^ // insert \"test\" at 8\n\nA = before -> move both by num added\nB = inner -> move end by num added\nC = after -> noop\n\nResults:\n\nA: 0 1 2 3 4 5 6 7 8 910 // string indices\n t e s t h e l l o w // string value\n ^-------^ // target slice {start: 6, end: 11}\n\nB: 0 1 2 3 4 5 6 7 8 910 // string indices\n h e l l t e s t o w // string value\n ^---------------^ // target slice {start: 2, end: 11}\n\nC: 0 1 2 3 4 5 6 7 8 910 // string indices\n h e l l o w o t e s // string value\n ^-------^ // target slice {start: 2, end: 7}\n\n== richTextDelete()\n\nTarget string:\n\n 0 1 2 3 4 5 6 7 8 910 // string indices\n h e l l o w o r l d // string value\n ^-------^ // target slice {start: 2, end: 7}\n\nScenarios:\n\nA: ^---------------^ // remove slice {start: 0, end: 9}\nB: ^-----^ // remove slice {start: 7, end: 11}\nC: ^-----------^ // remove slice {start: 4, end: 11}\nD: ^-^ // remove slice {start: 3, end: 5}\nE: ^-----^ // remove slice {start: 1, end: 5}\nF: ^-^ // remove slice {start: 0, end: 2}\n\nA = entirely outer -> delete slice\nB = entirely after -> noop\nC = partially after -> move end to remove-start\nD = entirely inner -> move end by num removed\nE = partially before -> move start to remove-start index, move end by num removed\nF = entirely before -> move both by num removed\n\nResults:\n\nA: 0 1 2 3 4 5 6 7 8 910 // string indices\n l d // string value\n // target slice (deleted)\n\nB: 0 1 2 3 4 5 6 7 8 910 // string indices\n h e l l o w // string value\n ^-------^ // target slice {start: 2, end: 7}\n\nC: 0 1 2 3 4 5 6 7 8 910 // string indices\n h e l l // string value\n ^-^ // target slice {start: 2, end: 4}\n\nD: 0 1 2 3 4 5 6 7 8 910 // string indices\n h e l w o r l d // string value\n ^---^ // target slice {start: 2, end: 5}\n\nE: 0 1 2 3 4 5 6 7 8 910 // string indices\n h w o r l d // string value\n ^-^ // target slice {start: 1, end: 3}\n\nF: 0 1 2 3 4 5 6 7 8 910 // string indices\n l l o w o r l d // string value\n ^-------^ // target slice {start: 0, end: 5}\n */\n\nimport {\n AppBskyFeedPost,\n AppBskyRichtextFacet,\n AtpBaseClient,\n} from '../client/index.js'\nimport { detectFacets } from './detection.js'\nimport { sanitizeRichText } from './sanitization.js'\nimport { UnicodeString } from './unicode.js'\n\nexport type Facet = AppBskyRichtextFacet.Main\nexport type FacetLink = AppBskyRichtextFacet.Link\nexport type FacetMention = AppBskyRichtextFacet.Mention\nexport type FacetTag = AppBskyRichtextFacet.Tag\nexport type Entity = AppBskyFeedPost.Entity\n\nexport interface RichTextProps {\n text: string\n facets?: Facet[]\n /**\n * @deprecated Use facets instead\n */\n entities?: Entity[]\n}\n\nexport interface RichTextOpts {\n cleanNewlines?: boolean\n}\n\nexport class RichTextSegment {\n constructor(\n public text: string,\n public facet?: Facet,\n ) {}\n\n get link(): FacetLink | undefined {\n return this.facet?.features.find(AppBskyRichtextFacet.isLink)\n }\n\n isLink() {\n return !!this.link\n }\n\n get mention(): FacetMention | undefined {\n return this.facet?.features.find(AppBskyRichtextFacet.isMention)\n }\n\n isMention() {\n return !!this.mention\n }\n\n get tag(): FacetTag | undefined {\n return this.facet?.features.find(AppBskyRichtextFacet.isTag)\n }\n\n isTag() {\n return !!this.tag\n }\n}\n\nexport class RichText {\n unicodeText: UnicodeString\n facets?: Facet[]\n\n constructor(props: RichTextProps, opts?: RichTextOpts) {\n this.unicodeText = new UnicodeString(props.text)\n this.facets = props.facets\n if (!this.facets?.length && props.entities?.length) {\n this.facets = entitiesToFacets(this.unicodeText, props.entities)\n }\n if (this.facets) {\n this.facets = this.facets.filter(facetFilter).sort(facetSort)\n }\n if (opts?.cleanNewlines) {\n sanitizeRichText(this, { cleanNewlines: true }).copyInto(this)\n }\n }\n\n get text() {\n return this.unicodeText.toString()\n }\n\n get length() {\n return this.unicodeText.length\n }\n\n get graphemeLength() {\n return this.unicodeText.graphemeLength\n }\n\n clone() {\n return new RichText({\n text: this.unicodeText.utf16,\n facets: cloneDeep(this.facets),\n })\n }\n\n copyInto(target: RichText) {\n target.unicodeText = this.unicodeText\n target.facets = cloneDeep(this.facets)\n }\n\n *segments(): Generator<RichTextSegment, void, void> {\n const facets = this.facets || []\n if (!facets.length) {\n yield new RichTextSegment(this.unicodeText.utf16)\n return\n }\n\n let textCursor = 0\n let facetCursor = 0\n do {\n const currFacet = facets[facetCursor]\n if (textCursor < currFacet.index.byteStart) {\n yield new RichTextSegment(\n this.unicodeText.slice(textCursor, currFacet.index.byteStart),\n )\n } else if (textCursor > currFacet.index.byteStart) {\n facetCursor++\n continue\n }\n if (currFacet.index.byteStart < currFacet.index.byteEnd) {\n const subtext = this.unicodeText.slice(\n currFacet.index.byteStart,\n currFacet.index.byteEnd,\n )\n if (!subtext.trim()) {\n // dont empty string entities\n yield new RichTextSegment(subtext)\n } else {\n yield new RichTextSegment(subtext, currFacet)\n }\n }\n textCursor = currFacet.index.byteEnd\n facetCursor++\n } while (facetCursor < facets.length)\n if (textCursor < this.unicodeText.length) {\n yield new RichTextSegment(\n this.unicodeText.slice(textCursor, this.unicodeText.length),\n )\n }\n }\n\n insert(insertIndex: number, insertText: string) {\n this.unicodeText = new UnicodeString(\n this.unicodeText.slice(0, insertIndex) +\n insertText +\n this.unicodeText.slice(insertIndex),\n )\n\n if (!this.facets?.length) {\n return this\n }\n\n const numCharsAdded = insertText.length\n for (const ent of this.facets) {\n // see comment at top of file for labels of each scenario\n // scenario A (before)\n if (insertIndex <= ent.index.byteStart) {\n // move both by num added\n ent.index.byteStart += numCharsAdded\n ent.index.byteEnd += numCharsAdded\n }\n // scenario B (inner)\n else if (\n insertIndex >= ent.index.byteStart &&\n insertIndex < ent.index.byteEnd\n ) {\n // move end by num added\n ent.index.byteEnd += numCharsAdded\n }\n // scenario C (after)\n // noop\n }\n return this\n }\n\n delete(removeStartIndex: number, removeEndIndex: number) {\n this.unicodeText = new UnicodeString(\n this.unicodeText.slice(0, removeStartIndex) +\n this.unicodeText.slice(removeEndIndex),\n )\n\n if (!this.facets?.length) {\n return this\n }\n\n const numCharsRemoved = removeEndIndex - removeStartIndex\n for (const ent of this.facets) {\n // see comment at top of file for labels of each scenario\n // scenario A (entirely outer)\n if (\n removeStartIndex <= ent.index.byteStart &&\n removeEndIndex >= ent.index.byteEnd\n ) {\n // delete slice (will get removed in final pass)\n ent.index.byteStart = 0\n ent.index.byteEnd = 0\n }\n // scenario B (entirely after)\n else if (removeStartIndex > ent.index.byteEnd) {\n // noop\n }\n // scenario C (partially after)\n else if (\n removeStartIndex > ent.index.byteStart &&\n removeStartIndex <= ent.index.byteEnd &&\n removeEndIndex > ent.index.byteEnd\n ) {\n // move end to remove start\n ent.index.byteEnd = removeStartIndex\n }\n // scenario D (entirely inner)\n else if (\n removeStartIndex >= ent.index.byteStart &&\n removeEndIndex <= ent.index.byteEnd\n ) {\n // move end by num removed\n ent.index.byteEnd -= numCharsRemoved\n }\n // scenario E (partially before)\n else if (\n removeStartIndex < ent.index.byteStart &&\n removeEndIndex >= ent.index.byteStart &&\n removeEndIndex <= ent.index.byteEnd\n ) {\n // move start to remove-start index, move end by num removed\n ent.index.byteStart = removeStartIndex\n ent.index.byteEnd -= numCharsRemoved\n }\n // scenario F (entirely before)\n else if (removeEndIndex < ent.index.byteStart) {\n // move both by num removed\n ent.index.byteStart -= numCharsRemoved\n ent.index.byteEnd -= numCharsRemoved\n }\n }\n\n // filter out any facets that were made irrelevant\n this.facets = this.facets.filter(\n (ent) => ent.index.byteStart < ent.index.byteEnd,\n )\n return this\n }\n\n /**\n * Detects facets such as links and mentions\n * Note: Overwrites the existing facets with auto-detected facets\n */\n async detectFacets(agent: AtpBaseClient) {\n this.facets = detectFacets(this.unicodeText)\n if (this.facets) {\n const promises: Promise<void>[] = []\n for (const facet of this.facets) {\n for (const feature of facet.features) {\n if (AppBskyRichtextFacet.isMention(feature)) {\n promises.push(\n agent.com.atproto.identity\n .resolveHandle({ handle: feature.did })\n .then((res) => res?.data.did)\n .catch((_) => undefined)\n .then((did) => {\n feature.did = did || ''\n }),\n )\n }\n }\n }\n await Promise.allSettled(promises)\n this.facets.sort(facetSort)\n }\n }\n\n /**\n * Detects facets such as links and mentions but does not resolve them\n * Will produce invalid facets! For instance, mentions will not have their DIDs set.\n * Note: Overwrites the existing facets with auto-detected facets\n */\n detectFacetsWithoutResolution() {\n this.facets = detectFacets(this.unicodeText)\n if (this.facets) {\n this.facets.sort(facetSort)\n }\n }\n}\n\nconst facetSort = (a: Facet, b: Facet) => a.index.byteStart - b.index.byteStart\n\nconst facetFilter = (facet: Facet) =>\n // discard negative-length facets. zero-length facets are valid\n facet.index.byteStart <= facet.index.byteEnd\n\nfunction entitiesToFacets(text: UnicodeString, entities: Entity[]): Facet[] {\n const facets: Facet[] = []\n for (const ent of entities) {\n if (ent.type === 'link') {\n facets.push({\n $type: 'app.bsky.richtext.facet',\n index: {\n byteStart: text.utf16IndexToUtf8Index(ent.index.start),\n byteEnd: text.utf16IndexToUtf8Index(ent.index.end),\n },\n features: [{ $type: 'app.bsky.richtext.facet#link', uri: ent.value }],\n })\n } else if (ent.type === 'mention') {\n facets.push({\n $type: 'app.bsky.richtext.facet',\n index: {\n byteStart: text.utf16IndexToUtf8Index(ent.index.start),\n byteEnd: text.utf16IndexToUtf8Index(ent.index.end),\n },\n features: [\n { $type: 'app.bsky.richtext.facet#mention', did: ent.value },\n ],\n })\n }\n }\n return facets\n}\n\nfunction cloneDeep<T>(v: T): T {\n if (typeof v === 'undefined') {\n return v\n }\n return JSON.parse(JSON.stringify(v))\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unicode.d.ts","sourceRoot":"","sources":["../../src/rich-text/unicode.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAOH,qBAAa,aAAa;IACxB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,UAAU,CAAA;IAChB,OAAO,CAAC,YAAY,CAAC,CAAoB;
|
|
1
|
+
{"version":3,"file":"unicode.d.ts","sourceRoot":"","sources":["../../src/rich-text/unicode.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAOH,qBAAa,aAAa;IACxB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,UAAU,CAAA;IAChB,OAAO,CAAC,YAAY,CAAC,CAAoB;IAEzC,YAAY,KAAK,EAAE,MAAM,EAGxB;IAED,IAAI,MAAM,WAET;IAED,IAAI,cAAc,WAKjB;IAED,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAE1C;IAED,qBAAqB,CAAC,CAAC,EAAE,MAAM,UAE9B;IAED,QAAQ,WAEP;CACF"}
|
package/dist/util.d.ts
CHANGED
|
@@ -22,13 +22,13 @@ export declare const nuxSchema: z.ZodObject<{
|
|
|
22
22
|
}, "strict", z.ZodTypeAny, {
|
|
23
23
|
id: string;
|
|
24
24
|
completed: boolean;
|
|
25
|
-
expiresAt?: string | undefined;
|
|
26
25
|
data?: string | undefined;
|
|
26
|
+
expiresAt?: string | undefined;
|
|
27
27
|
}, {
|
|
28
28
|
id: string;
|
|
29
29
|
completed: boolean;
|
|
30
|
-
expiresAt?: string | undefined;
|
|
31
30
|
data?: string | undefined;
|
|
31
|
+
expiresAt?: string | undefined;
|
|
32
32
|
}>;
|
|
33
33
|
export declare function validateNux(nux: Nux): void;
|
|
34
34
|
//# sourceMappingURL=util.d.ts.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atproto/api",
|
|
3
|
-
"version": "0.20.
|
|
3
|
+
"version": "0.20.16",
|
|
4
4
|
"engines": {
|
|
5
5
|
"node": ">=22"
|
|
6
6
|
},
|
|
@@ -22,17 +22,16 @@
|
|
|
22
22
|
"multiformats": "^13.0.0",
|
|
23
23
|
"tlds": "^1.234.0",
|
|
24
24
|
"zod": "^3.23.8",
|
|
25
|
-
"@atproto/common-web": "^0.5.
|
|
26
|
-
"@atproto/lexicon": "^0.7.
|
|
27
|
-
"@atproto/
|
|
28
|
-
"@atproto/
|
|
25
|
+
"@atproto/common-web": "^0.5.1",
|
|
26
|
+
"@atproto/lexicon": "^0.7.2",
|
|
27
|
+
"@atproto/syntax": "^0.6.2",
|
|
28
|
+
"@atproto/xrpc": "^0.8.1"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
31
|
"@jest/globals": "^28.1.3",
|
|
32
32
|
"jest": "^30.0.0",
|
|
33
33
|
"prettier": "^3.2.5",
|
|
34
|
-
"
|
|
35
|
-
"@atproto/lex-cli": "^0.10.0"
|
|
34
|
+
"@atproto/lex-cli": "^0.10.1"
|
|
36
35
|
},
|
|
37
36
|
"type": "module",
|
|
38
37
|
"exports": {
|
|
@@ -45,7 +44,7 @@
|
|
|
45
44
|
"codegen:lex": "lex gen-api --yes ./src/client ../../lexicons/com/atproto/*/* ../../lexicons/app/bsky/*/* ../../lexicons/chat/bsky/*/* ../../lexicons/tools/ozone/*/* ../../lexicons/com/germnetwork/*",
|
|
46
45
|
"codegen:code": "node ./scripts/generate-code.mjs",
|
|
47
46
|
"prebuild": "pnpm run codegen:code && if [ ! -f ./src/client/index.ts ] || [ -n \"$(find ../../lexicons -name '*.json' -newer ./src/client/index.ts -type f -print -quit)\" ]; then pnpm run codegen:lex; fi",
|
|
48
|
-
"build": "
|
|
47
|
+
"build": "tsgo --build tsconfig.build.json",
|
|
49
48
|
"test": "NODE_OPTIONS=--experimental-vm-modules jest"
|
|
50
49
|
}
|
|
51
50
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"root":["./src/age-assurance.test.ts","./src/age-assurance.ts","./src/agent.ts","./src/atp-agent.ts","./src/bsky-agent.ts","./src/const.ts","./src/index.ts","./src/mocker.ts","./src/predicate.ts","./src/session-manager.ts","./src/types.ts","./src/util.ts","./src/client/index.ts","./src/client/lexicons.ts","./src/client/util.ts","./src/client/types/app/bsky/actor/defs.ts","./src/client/types/app/bsky/actor/getPreferences.ts","./src/client/types/app/bsky/actor/getProfile.ts","./src/client/types/app/bsky/actor/getProfiles.ts","./src/client/types/app/bsky/actor/getSuggestions.ts","./src/client/types/app/bsky/actor/profile.ts","./src/client/types/app/bsky/actor/putPreferences.ts","./src/client/types/app/bsky/actor/searchActors.ts","./src/client/types/app/bsky/actor/searchActorsTypeahead.ts","./src/client/types/app/bsky/actor/status.ts","./src/client/types/app/bsky/ageassurance/begin.ts","./src/client/types/app/bsky/ageassurance/defs.ts","./src/client/types/app/bsky/ageassurance/getConfig.ts","./src/client/types/app/bsky/ageassurance/getState.ts","./src/client/types/app/bsky/bookmark/createBookmark.ts","./src/client/types/app/bsky/bookmark/defs.ts","./src/client/types/app/bsky/bookmark/deleteBookmark.ts","./src/client/types/app/bsky/bookmark/getBookmarks.ts","./src/client/types/app/bsky/contact/defs.ts","./src/client/types/app/bsky/contact/dismissMatch.ts","./src/client/types/app/bsky/contact/getMatches.ts","./src/client/types/app/bsky/contact/getSyncStatus.ts","./src/client/types/app/bsky/contact/importContacts.ts","./src/client/types/app/bsky/contact/removeData.ts","./src/client/types/app/bsky/contact/sendNotification.ts","./src/client/types/app/bsky/contact/startPhoneVerification.ts","./src/client/types/app/bsky/contact/verifyPhone.ts","./src/client/types/app/bsky/draft/createDraft.ts","./src/client/types/app/bsky/draft/defs.ts","./src/client/types/app/bsky/draft/deleteDraft.ts","./src/client/types/app/bsky/draft/getDrafts.ts","./src/client/types/app/bsky/draft/updateDraft.ts","./src/client/types/app/bsky/embed/defs.ts","./src/client/types/app/bsky/embed/external.ts","./src/client/types/app/bsky/embed/gallery.ts","./src/client/types/app/bsky/embed/getEmbedExternalView.ts","./src/client/types/app/bsky/embed/images.ts","./src/client/types/app/bsky/embed/record.ts","./src/client/types/app/bsky/embed/recordWithMedia.ts","./src/client/types/app/bsky/embed/video.ts","./src/client/types/app/bsky/feed/defs.ts","./src/client/types/app/bsky/feed/describeFeedGenerator.ts","./src/client/types/app/bsky/feed/generator.ts","./src/client/types/app/bsky/feed/getActorFeeds.ts","./src/client/types/app/bsky/feed/getActorLikes.ts","./src/client/types/app/bsky/feed/getAuthorFeed.ts","./src/client/types/app/bsky/feed/getFeed.ts","./src/client/types/app/bsky/feed/getFeedGenerator.ts","./src/client/types/app/bsky/feed/getFeedGenerators.ts","./src/client/types/app/bsky/feed/getFeedSkeleton.ts","./src/client/types/app/bsky/feed/getLikes.ts","./src/client/types/app/bsky/feed/getListFeed.ts","./src/client/types/app/bsky/feed/getPostThread.ts","./src/client/types/app/bsky/feed/getPosts.ts","./src/client/types/app/bsky/feed/getQuotes.ts","./src/client/types/app/bsky/feed/getRepostedBy.ts","./src/client/types/app/bsky/feed/getSuggestedFeeds.ts","./src/client/types/app/bsky/feed/getTimeline.ts","./src/client/types/app/bsky/feed/like.ts","./src/client/types/app/bsky/feed/post.ts","./src/client/types/app/bsky/feed/postgate.ts","./src/client/types/app/bsky/feed/repost.ts","./src/client/types/app/bsky/feed/searchPosts.ts","./src/client/types/app/bsky/feed/sendInteractions.ts","./src/client/types/app/bsky/feed/threadgate.ts","./src/client/types/app/bsky/graph/block.ts","./src/client/types/app/bsky/graph/defs.ts","./src/client/types/app/bsky/graph/follow.ts","./src/client/types/app/bsky/graph/getActorStarterPacks.ts","./src/client/types/app/bsky/graph/getBlocks.ts","./src/client/types/app/bsky/graph/getFollowers.ts","./src/client/types/app/bsky/graph/getFollows.ts","./src/client/types/app/bsky/graph/getKnownFollowers.ts","./src/client/types/app/bsky/graph/getList.ts","./src/client/types/app/bsky/graph/getListBlocks.ts","./src/client/types/app/bsky/graph/getListMutes.ts","./src/client/types/app/bsky/graph/getLists.ts","./src/client/types/app/bsky/graph/getListsWithMembership.ts","./src/client/types/app/bsky/graph/getMutes.ts","./src/client/types/app/bsky/graph/getRelationships.ts","./src/client/types/app/bsky/graph/getStarterPack.ts","./src/client/types/app/bsky/graph/getStarterPacks.ts","./src/client/types/app/bsky/graph/getStarterPacksWithMembership.ts","./src/client/types/app/bsky/graph/getSuggestedFollowsByActor.ts","./src/client/types/app/bsky/graph/list.ts","./src/client/types/app/bsky/graph/listblock.ts","./src/client/types/app/bsky/graph/listitem.ts","./src/client/types/app/bsky/graph/muteActor.ts","./src/client/types/app/bsky/graph/muteActorList.ts","./src/client/types/app/bsky/graph/muteThread.ts","./src/client/types/app/bsky/graph/searchStarterPacks.ts","./src/client/types/app/bsky/graph/starterpack.ts","./src/client/types/app/bsky/graph/unmuteActor.ts","./src/client/types/app/bsky/graph/unmuteActorList.ts","./src/client/types/app/bsky/graph/unmuteThread.ts","./src/client/types/app/bsky/graph/verification.ts","./src/client/types/app/bsky/labeler/defs.ts","./src/client/types/app/bsky/labeler/getServices.ts","./src/client/types/app/bsky/labeler/service.ts","./src/client/types/app/bsky/notification/declaration.ts","./src/client/types/app/bsky/notification/defs.ts","./src/client/types/app/bsky/notification/getPreferences.ts","./src/client/types/app/bsky/notification/getUnreadCount.ts","./src/client/types/app/bsky/notification/listActivitySubscriptions.ts","./src/client/types/app/bsky/notification/listNotifications.ts","./src/client/types/app/bsky/notification/putActivitySubscription.ts","./src/client/types/app/bsky/notification/putPreferences.ts","./src/client/types/app/bsky/notification/putPreferencesV2.ts","./src/client/types/app/bsky/notification/registerPush.ts","./src/client/types/app/bsky/notification/unregisterPush.ts","./src/client/types/app/bsky/notification/updateSeen.ts","./src/client/types/app/bsky/richtext/facet.ts","./src/client/types/app/bsky/unspecced/defs.ts","./src/client/types/app/bsky/unspecced/getAgeAssuranceState.ts","./src/client/types/app/bsky/unspecced/getConfig.ts","./src/client/types/app/bsky/unspecced/getOnboardingSuggestedStarterPacks.ts","./src/client/types/app/bsky/unspecced/getOnboardingSuggestedStarterPacksSkeleton.ts","./src/client/types/app/bsky/unspecced/getOnboardingSuggestedUsersSkeleton.ts","./src/client/types/app/bsky/unspecced/getPopularFeedGenerators.ts","./src/client/types/app/bsky/unspecced/getPostThreadOtherV2.ts","./src/client/types/app/bsky/unspecced/getPostThreadV2.ts","./src/client/types/app/bsky/unspecced/getSuggestedFeeds.ts","./src/client/types/app/bsky/unspecced/getSuggestedFeedsSkeleton.ts","./src/client/types/app/bsky/unspecced/getSuggestedOnboardingUsers.ts","./src/client/types/app/bsky/unspecced/getSuggestedStarterPacks.ts","./src/client/types/app/bsky/unspecced/getSuggestedStarterPacksSkeleton.ts","./src/client/types/app/bsky/unspecced/getSuggestedUsers.ts","./src/client/types/app/bsky/unspecced/getSuggestedUsersForDiscover.ts","./src/client/types/app/bsky/unspecced/getSuggestedUsersForDiscoverSkeleton.ts","./src/client/types/app/bsky/unspecced/getSuggestedUsersForExplore.ts","./src/client/types/app/bsky/unspecced/getSuggestedUsersForExploreSkeleton.ts","./src/client/types/app/bsky/unspecced/getSuggestedUsersForSeeMore.ts","./src/client/types/app/bsky/unspecced/getSuggestedUsersForSeeMoreSkeleton.ts","./src/client/types/app/bsky/unspecced/getSuggestedUsersSkeleton.ts","./src/client/types/app/bsky/unspecced/getSuggestionsSkeleton.ts","./src/client/types/app/bsky/unspecced/getTaggedSuggestions.ts","./src/client/types/app/bsky/unspecced/getTrendingTopics.ts","./src/client/types/app/bsky/unspecced/getTrends.ts","./src/client/types/app/bsky/unspecced/getTrendsSkeleton.ts","./src/client/types/app/bsky/unspecced/initAgeAssurance.ts","./src/client/types/app/bsky/unspecced/searchActorsSkeleton.ts","./src/client/types/app/bsky/unspecced/searchPostsSkeleton.ts","./src/client/types/app/bsky/unspecced/searchStarterPacksSkeleton.ts","./src/client/types/app/bsky/video/defs.ts","./src/client/types/app/bsky/video/getJobStatus.ts","./src/client/types/app/bsky/video/getUploadLimits.ts","./src/client/types/app/bsky/video/uploadVideo.ts","./src/client/types/chat/bsky/actor/declaration.ts","./src/client/types/chat/bsky/actor/defs.ts","./src/client/types/chat/bsky/actor/deleteAccount.ts","./src/client/types/chat/bsky/actor/exportAccountData.ts","./src/client/types/chat/bsky/actor/getStatus.ts","./src/client/types/chat/bsky/convo/acceptConvo.ts","./src/client/types/chat/bsky/convo/addReaction.ts","./src/client/types/chat/bsky/convo/defs.ts","./src/client/types/chat/bsky/convo/deleteMessageForSelf.ts","./src/client/types/chat/bsky/convo/getConvo.ts","./src/client/types/chat/bsky/convo/getConvoAvailability.ts","./src/client/types/chat/bsky/convo/getConvoForMembers.ts","./src/client/types/chat/bsky/convo/getConvoMembers.ts","./src/client/types/chat/bsky/convo/getLog.ts","./src/client/types/chat/bsky/convo/getMessages.ts","./src/client/types/chat/bsky/convo/getUnreadCounts.ts","./src/client/types/chat/bsky/convo/leaveConvo.ts","./src/client/types/chat/bsky/convo/listConvoRequests.ts","./src/client/types/chat/bsky/convo/listConvos.ts","./src/client/types/chat/bsky/convo/lockConvo.ts","./src/client/types/chat/bsky/convo/muteConvo.ts","./src/client/types/chat/bsky/convo/removeReaction.ts","./src/client/types/chat/bsky/convo/sendMessage.ts","./src/client/types/chat/bsky/convo/sendMessageBatch.ts","./src/client/types/chat/bsky/convo/unlockConvo.ts","./src/client/types/chat/bsky/convo/unmuteConvo.ts","./src/client/types/chat/bsky/convo/updateAllRead.ts","./src/client/types/chat/bsky/convo/updateRead.ts","./src/client/types/chat/bsky/embed/joinLink.ts","./src/client/types/chat/bsky/group/addMembers.ts","./src/client/types/chat/bsky/group/approveJoinRequest.ts","./src/client/types/chat/bsky/group/createGroup.ts","./src/client/types/chat/bsky/group/createJoinLink.ts","./src/client/types/chat/bsky/group/defs.ts","./src/client/types/chat/bsky/group/disableJoinLink.ts","./src/client/types/chat/bsky/group/editGroup.ts","./src/client/types/chat/bsky/group/editJoinLink.ts","./src/client/types/chat/bsky/group/enableJoinLink.ts","./src/client/types/chat/bsky/group/getJoinLinkPreviews.ts","./src/client/types/chat/bsky/group/listJoinRequests.ts","./src/client/types/chat/bsky/group/listMutualGroups.ts","./src/client/types/chat/bsky/group/rejectJoinRequest.ts","./src/client/types/chat/bsky/group/removeMembers.ts","./src/client/types/chat/bsky/group/requestJoin.ts","./src/client/types/chat/bsky/group/updateJoinRequestsRead.ts","./src/client/types/chat/bsky/group/withdrawJoinRequest.ts","./src/client/types/chat/bsky/moderation/defs.ts","./src/client/types/chat/bsky/moderation/getActorMetadata.ts","./src/client/types/chat/bsky/moderation/getConvo.ts","./src/client/types/chat/bsky/moderation/getConvoMembers.ts","./src/client/types/chat/bsky/moderation/getConvos.ts","./src/client/types/chat/bsky/moderation/getMessageContext.ts","./src/client/types/chat/bsky/moderation/subscribeModEvents.ts","./src/client/types/chat/bsky/moderation/updateActorAccess.ts","./src/client/types/com/atproto/admin/defs.ts","./src/client/types/com/atproto/admin/deleteAccount.ts","./src/client/types/com/atproto/admin/disableAccountInvites.ts","./src/client/types/com/atproto/admin/disableInviteCodes.ts","./src/client/types/com/atproto/admin/enableAccountInvites.ts","./src/client/types/com/atproto/admin/getAccountInfo.ts","./src/client/types/com/atproto/admin/getAccountInfos.ts","./src/client/types/com/atproto/admin/getInviteCodes.ts","./src/client/types/com/atproto/admin/getSubjectStatus.ts","./src/client/types/com/atproto/admin/searchAccounts.ts","./src/client/types/com/atproto/admin/sendEmail.ts","./src/client/types/com/atproto/admin/updateAccountEmail.ts","./src/client/types/com/atproto/admin/updateAccountHandle.ts","./src/client/types/com/atproto/admin/updateAccountPassword.ts","./src/client/types/com/atproto/admin/updateAccountSigningKey.ts","./src/client/types/com/atproto/admin/updateSubjectStatus.ts","./src/client/types/com/atproto/identity/defs.ts","./src/client/types/com/atproto/identity/getRecommendedDidCredentials.ts","./src/client/types/com/atproto/identity/refreshIdentity.ts","./src/client/types/com/atproto/identity/requestPlcOperationSignature.ts","./src/client/types/com/atproto/identity/resolveDid.ts","./src/client/types/com/atproto/identity/resolveHandle.ts","./src/client/types/com/atproto/identity/resolveIdentity.ts","./src/client/types/com/atproto/identity/signPlcOperation.ts","./src/client/types/com/atproto/identity/submitPlcOperation.ts","./src/client/types/com/atproto/identity/updateHandle.ts","./src/client/types/com/atproto/label/defs.ts","./src/client/types/com/atproto/label/queryLabels.ts","./src/client/types/com/atproto/label/subscribeLabels.ts","./src/client/types/com/atproto/lexicon/resolveLexicon.ts","./src/client/types/com/atproto/lexicon/schema.ts","./src/client/types/com/atproto/moderation/createReport.ts","./src/client/types/com/atproto/moderation/defs.ts","./src/client/types/com/atproto/repo/applyWrites.ts","./src/client/types/com/atproto/repo/createRecord.ts","./src/client/types/com/atproto/repo/defs.ts","./src/client/types/com/atproto/repo/deleteRecord.ts","./src/client/types/com/atproto/repo/describeRepo.ts","./src/client/types/com/atproto/repo/getRecord.ts","./src/client/types/com/atproto/repo/importRepo.ts","./src/client/types/com/atproto/repo/listMissingBlobs.ts","./src/client/types/com/atproto/repo/listRecords.ts","./src/client/types/com/atproto/repo/putRecord.ts","./src/client/types/com/atproto/repo/strongRef.ts","./src/client/types/com/atproto/repo/uploadBlob.ts","./src/client/types/com/atproto/server/activateAccount.ts","./src/client/types/com/atproto/server/checkAccountStatus.ts","./src/client/types/com/atproto/server/confirmEmail.ts","./src/client/types/com/atproto/server/createAccount.ts","./src/client/types/com/atproto/server/createAppPassword.ts","./src/client/types/com/atproto/server/createInviteCode.ts","./src/client/types/com/atproto/server/createInviteCodes.ts","./src/client/types/com/atproto/server/createSession.ts","./src/client/types/com/atproto/server/deactivateAccount.ts","./src/client/types/com/atproto/server/defs.ts","./src/client/types/com/atproto/server/deleteAccount.ts","./src/client/types/com/atproto/server/deleteSession.ts","./src/client/types/com/atproto/server/describeServer.ts","./src/client/types/com/atproto/server/getAccountInviteCodes.ts","./src/client/types/com/atproto/server/getServiceAuth.ts","./src/client/types/com/atproto/server/getSession.ts","./src/client/types/com/atproto/server/listAppPasswords.ts","./src/client/types/com/atproto/server/refreshSession.ts","./src/client/types/com/atproto/server/requestAccountDelete.ts","./src/client/types/com/atproto/server/requestEmailConfirmation.ts","./src/client/types/com/atproto/server/requestEmailUpdate.ts","./src/client/types/com/atproto/server/requestPasswordReset.ts","./src/client/types/com/atproto/server/reserveSigningKey.ts","./src/client/types/com/atproto/server/resetPassword.ts","./src/client/types/com/atproto/server/revokeAppPassword.ts","./src/client/types/com/atproto/server/updateEmail.ts","./src/client/types/com/atproto/sync/defs.ts","./src/client/types/com/atproto/sync/getBlob.ts","./src/client/types/com/atproto/sync/getBlocks.ts","./src/client/types/com/atproto/sync/getCheckout.ts","./src/client/types/com/atproto/sync/getHead.ts","./src/client/types/com/atproto/sync/getHostStatus.ts","./src/client/types/com/atproto/sync/getLatestCommit.ts","./src/client/types/com/atproto/sync/getRecord.ts","./src/client/types/com/atproto/sync/getRepo.ts","./src/client/types/com/atproto/sync/getRepoStatus.ts","./src/client/types/com/atproto/sync/listBlobs.ts","./src/client/types/com/atproto/sync/listHosts.ts","./src/client/types/com/atproto/sync/listRepos.ts","./src/client/types/com/atproto/sync/listReposByCollection.ts","./src/client/types/com/atproto/sync/notifyOfUpdate.ts","./src/client/types/com/atproto/sync/requestCrawl.ts","./src/client/types/com/atproto/sync/subscribeRepos.ts","./src/client/types/com/atproto/temp/addReservedHandle.ts","./src/client/types/com/atproto/temp/checkHandleAvailability.ts","./src/client/types/com/atproto/temp/checkSignupQueue.ts","./src/client/types/com/atproto/temp/dereferenceScope.ts","./src/client/types/com/atproto/temp/fetchLabels.ts","./src/client/types/com/atproto/temp/requestPhoneVerification.ts","./src/client/types/com/atproto/temp/revokeAccountCredentials.ts","./src/client/types/com/germnetwork/declaration.ts","./src/client/types/tools/ozone/communication/createTemplate.ts","./src/client/types/tools/ozone/communication/defs.ts","./src/client/types/tools/ozone/communication/deleteTemplate.ts","./src/client/types/tools/ozone/communication/listTemplates.ts","./src/client/types/tools/ozone/communication/updateTemplate.ts","./src/client/types/tools/ozone/hosting/getAccountHistory.ts","./src/client/types/tools/ozone/moderation/cancelScheduledActions.ts","./src/client/types/tools/ozone/moderation/defs.ts","./src/client/types/tools/ozone/moderation/emitEvent.ts","./src/client/types/tools/ozone/moderation/getAccountTimeline.ts","./src/client/types/tools/ozone/moderation/getEvent.ts","./src/client/types/tools/ozone/moderation/getRecord.ts","./src/client/types/tools/ozone/moderation/getRecords.ts","./src/client/types/tools/ozone/moderation/getRepo.ts","./src/client/types/tools/ozone/moderation/getReporterStats.ts","./src/client/types/tools/ozone/moderation/getRepos.ts","./src/client/types/tools/ozone/moderation/getSubjects.ts","./src/client/types/tools/ozone/moderation/listScheduledActions.ts","./src/client/types/tools/ozone/moderation/queryEvents.ts","./src/client/types/tools/ozone/moderation/queryStatuses.ts","./src/client/types/tools/ozone/moderation/scheduleAction.ts","./src/client/types/tools/ozone/moderation/searchRepos.ts","./src/client/types/tools/ozone/queue/assignModerator.ts","./src/client/types/tools/ozone/queue/createQueue.ts","./src/client/types/tools/ozone/queue/defs.ts","./src/client/types/tools/ozone/queue/deleteQueue.ts","./src/client/types/tools/ozone/queue/getAssignments.ts","./src/client/types/tools/ozone/queue/listQueues.ts","./src/client/types/tools/ozone/queue/routeReports.ts","./src/client/types/tools/ozone/queue/unassignModerator.ts","./src/client/types/tools/ozone/queue/updateQueue.ts","./src/client/types/tools/ozone/report/assignModerator.ts","./src/client/types/tools/ozone/report/createActivity.ts","./src/client/types/tools/ozone/report/defs.ts","./src/client/types/tools/ozone/report/getAssignments.ts","./src/client/types/tools/ozone/report/getHistoricalStats.ts","./src/client/types/tools/ozone/report/getLatestReport.ts","./src/client/types/tools/ozone/report/getLiveStats.ts","./src/client/types/tools/ozone/report/getReport.ts","./src/client/types/tools/ozone/report/listActivities.ts","./src/client/types/tools/ozone/report/queryReports.ts","./src/client/types/tools/ozone/report/reassignQueue.ts","./src/client/types/tools/ozone/report/refreshStats.ts","./src/client/types/tools/ozone/report/unassignModerator.ts","./src/client/types/tools/ozone/safelink/addRule.ts","./src/client/types/tools/ozone/safelink/defs.ts","./src/client/types/tools/ozone/safelink/queryEvents.ts","./src/client/types/tools/ozone/safelink/queryRules.ts","./src/client/types/tools/ozone/safelink/removeRule.ts","./src/client/types/tools/ozone/safelink/updateRule.ts","./src/client/types/tools/ozone/server/getConfig.ts","./src/client/types/tools/ozone/set/addValues.ts","./src/client/types/tools/ozone/set/defs.ts","./src/client/types/tools/ozone/set/deleteSet.ts","./src/client/types/tools/ozone/set/deleteValues.ts","./src/client/types/tools/ozone/set/getValues.ts","./src/client/types/tools/ozone/set/querySets.ts","./src/client/types/tools/ozone/set/upsertSet.ts","./src/client/types/tools/ozone/setting/defs.ts","./src/client/types/tools/ozone/setting/listOptions.ts","./src/client/types/tools/ozone/setting/removeOptions.ts","./src/client/types/tools/ozone/setting/upsertOption.ts","./src/client/types/tools/ozone/signature/defs.ts","./src/client/types/tools/ozone/signature/findCorrelation.ts","./src/client/types/tools/ozone/signature/findRelatedAccounts.ts","./src/client/types/tools/ozone/signature/searchAccounts.ts","./src/client/types/tools/ozone/team/addMember.ts","./src/client/types/tools/ozone/team/defs.ts","./src/client/types/tools/ozone/team/deleteMember.ts","./src/client/types/tools/ozone/team/listMembers.ts","./src/client/types/tools/ozone/team/updateMember.ts","./src/client/types/tools/ozone/verification/defs.ts","./src/client/types/tools/ozone/verification/grantVerifications.ts","./src/client/types/tools/ozone/verification/listVerifications.ts","./src/client/types/tools/ozone/verification/revokeVerifications.ts","./src/moderation/decision.ts","./src/moderation/index.ts","./src/moderation/mutewords.ts","./src/moderation/types.ts","./src/moderation/ui.ts","./src/moderation/util.ts","./src/moderation/const/labels.ts","./src/moderation/subjects/account.ts","./src/moderation/subjects/feed-generator.ts","./src/moderation/subjects/notification.ts","./src/moderation/subjects/post.ts","./src/moderation/subjects/profile.ts","./src/moderation/subjects/status.ts","./src/moderation/subjects/user-list.ts","./src/rich-text/detection.ts","./src/rich-text/rich-text.ts","./src/rich-text/sanitization.ts","./src/rich-text/unicode.ts","./src/rich-text/util.ts"],"version":"6.0.3"}
|
|
1
|
+
{"version":"7.0.0-dev.20260614.1","root":["./src/age-assurance.test.ts","./src/age-assurance.ts","./src/agent.ts","./src/atp-agent.ts","./src/bsky-agent.ts","./src/const.ts","./src/index.ts","./src/mocker.ts","./src/predicate.ts","./src/session-manager.ts","./src/types.ts","./src/util.ts","./src/client/index.ts","./src/client/lexicons.ts","./src/client/util.ts","./src/client/types/app/bsky/actor/defs.ts","./src/client/types/app/bsky/actor/getPreferences.ts","./src/client/types/app/bsky/actor/getProfile.ts","./src/client/types/app/bsky/actor/getProfiles.ts","./src/client/types/app/bsky/actor/getSuggestions.ts","./src/client/types/app/bsky/actor/profile.ts","./src/client/types/app/bsky/actor/putPreferences.ts","./src/client/types/app/bsky/actor/searchActors.ts","./src/client/types/app/bsky/actor/searchActorsTypeahead.ts","./src/client/types/app/bsky/actor/status.ts","./src/client/types/app/bsky/ageassurance/begin.ts","./src/client/types/app/bsky/ageassurance/defs.ts","./src/client/types/app/bsky/ageassurance/getConfig.ts","./src/client/types/app/bsky/ageassurance/getState.ts","./src/client/types/app/bsky/bookmark/createBookmark.ts","./src/client/types/app/bsky/bookmark/defs.ts","./src/client/types/app/bsky/bookmark/deleteBookmark.ts","./src/client/types/app/bsky/bookmark/getBookmarks.ts","./src/client/types/app/bsky/contact/defs.ts","./src/client/types/app/bsky/contact/dismissMatch.ts","./src/client/types/app/bsky/contact/getMatches.ts","./src/client/types/app/bsky/contact/getSyncStatus.ts","./src/client/types/app/bsky/contact/importContacts.ts","./src/client/types/app/bsky/contact/removeData.ts","./src/client/types/app/bsky/contact/sendNotification.ts","./src/client/types/app/bsky/contact/startPhoneVerification.ts","./src/client/types/app/bsky/contact/verifyPhone.ts","./src/client/types/app/bsky/draft/createDraft.ts","./src/client/types/app/bsky/draft/defs.ts","./src/client/types/app/bsky/draft/deleteDraft.ts","./src/client/types/app/bsky/draft/getDrafts.ts","./src/client/types/app/bsky/draft/updateDraft.ts","./src/client/types/app/bsky/embed/defs.ts","./src/client/types/app/bsky/embed/external.ts","./src/client/types/app/bsky/embed/gallery.ts","./src/client/types/app/bsky/embed/getEmbedExternalView.ts","./src/client/types/app/bsky/embed/images.ts","./src/client/types/app/bsky/embed/record.ts","./src/client/types/app/bsky/embed/recordWithMedia.ts","./src/client/types/app/bsky/embed/video.ts","./src/client/types/app/bsky/feed/defs.ts","./src/client/types/app/bsky/feed/describeFeedGenerator.ts","./src/client/types/app/bsky/feed/generator.ts","./src/client/types/app/bsky/feed/getActorFeeds.ts","./src/client/types/app/bsky/feed/getActorLikes.ts","./src/client/types/app/bsky/feed/getAuthorFeed.ts","./src/client/types/app/bsky/feed/getFeed.ts","./src/client/types/app/bsky/feed/getFeedGenerator.ts","./src/client/types/app/bsky/feed/getFeedGenerators.ts","./src/client/types/app/bsky/feed/getFeedSkeleton.ts","./src/client/types/app/bsky/feed/getLikes.ts","./src/client/types/app/bsky/feed/getListFeed.ts","./src/client/types/app/bsky/feed/getPostThread.ts","./src/client/types/app/bsky/feed/getPosts.ts","./src/client/types/app/bsky/feed/getQuotes.ts","./src/client/types/app/bsky/feed/getRepostedBy.ts","./src/client/types/app/bsky/feed/getSuggestedFeeds.ts","./src/client/types/app/bsky/feed/getTimeline.ts","./src/client/types/app/bsky/feed/like.ts","./src/client/types/app/bsky/feed/post.ts","./src/client/types/app/bsky/feed/postgate.ts","./src/client/types/app/bsky/feed/repost.ts","./src/client/types/app/bsky/feed/searchPosts.ts","./src/client/types/app/bsky/feed/sendInteractions.ts","./src/client/types/app/bsky/feed/threadgate.ts","./src/client/types/app/bsky/graph/block.ts","./src/client/types/app/bsky/graph/defs.ts","./src/client/types/app/bsky/graph/follow.ts","./src/client/types/app/bsky/graph/getActorStarterPacks.ts","./src/client/types/app/bsky/graph/getBlocks.ts","./src/client/types/app/bsky/graph/getFollowers.ts","./src/client/types/app/bsky/graph/getFollows.ts","./src/client/types/app/bsky/graph/getKnownFollowers.ts","./src/client/types/app/bsky/graph/getList.ts","./src/client/types/app/bsky/graph/getListBlocks.ts","./src/client/types/app/bsky/graph/getListMutes.ts","./src/client/types/app/bsky/graph/getLists.ts","./src/client/types/app/bsky/graph/getListsWithMembership.ts","./src/client/types/app/bsky/graph/getMutes.ts","./src/client/types/app/bsky/graph/getRelationships.ts","./src/client/types/app/bsky/graph/getStarterPack.ts","./src/client/types/app/bsky/graph/getStarterPacks.ts","./src/client/types/app/bsky/graph/getStarterPacksWithMembership.ts","./src/client/types/app/bsky/graph/getSuggestedFollowsByActor.ts","./src/client/types/app/bsky/graph/list.ts","./src/client/types/app/bsky/graph/listblock.ts","./src/client/types/app/bsky/graph/listitem.ts","./src/client/types/app/bsky/graph/muteActor.ts","./src/client/types/app/bsky/graph/muteActorList.ts","./src/client/types/app/bsky/graph/muteThread.ts","./src/client/types/app/bsky/graph/searchStarterPacks.ts","./src/client/types/app/bsky/graph/starterpack.ts","./src/client/types/app/bsky/graph/unmuteActor.ts","./src/client/types/app/bsky/graph/unmuteActorList.ts","./src/client/types/app/bsky/graph/unmuteThread.ts","./src/client/types/app/bsky/graph/verification.ts","./src/client/types/app/bsky/labeler/defs.ts","./src/client/types/app/bsky/labeler/getServices.ts","./src/client/types/app/bsky/labeler/service.ts","./src/client/types/app/bsky/notification/declaration.ts","./src/client/types/app/bsky/notification/defs.ts","./src/client/types/app/bsky/notification/getPreferences.ts","./src/client/types/app/bsky/notification/getUnreadCount.ts","./src/client/types/app/bsky/notification/listActivitySubscriptions.ts","./src/client/types/app/bsky/notification/listNotifications.ts","./src/client/types/app/bsky/notification/putActivitySubscription.ts","./src/client/types/app/bsky/notification/putPreferences.ts","./src/client/types/app/bsky/notification/putPreferencesV2.ts","./src/client/types/app/bsky/notification/registerPush.ts","./src/client/types/app/bsky/notification/unregisterPush.ts","./src/client/types/app/bsky/notification/updateSeen.ts","./src/client/types/app/bsky/richtext/facet.ts","./src/client/types/app/bsky/unspecced/defs.ts","./src/client/types/app/bsky/unspecced/getAgeAssuranceState.ts","./src/client/types/app/bsky/unspecced/getConfig.ts","./src/client/types/app/bsky/unspecced/getOnboardingSuggestedStarterPacks.ts","./src/client/types/app/bsky/unspecced/getOnboardingSuggestedStarterPacksSkeleton.ts","./src/client/types/app/bsky/unspecced/getOnboardingSuggestedUsersSkeleton.ts","./src/client/types/app/bsky/unspecced/getPopularFeedGenerators.ts","./src/client/types/app/bsky/unspecced/getPostThreadOtherV2.ts","./src/client/types/app/bsky/unspecced/getPostThreadV2.ts","./src/client/types/app/bsky/unspecced/getSuggestedFeeds.ts","./src/client/types/app/bsky/unspecced/getSuggestedFeedsSkeleton.ts","./src/client/types/app/bsky/unspecced/getSuggestedOnboardingUsers.ts","./src/client/types/app/bsky/unspecced/getSuggestedStarterPacks.ts","./src/client/types/app/bsky/unspecced/getSuggestedStarterPacksSkeleton.ts","./src/client/types/app/bsky/unspecced/getSuggestedUsers.ts","./src/client/types/app/bsky/unspecced/getSuggestedUsersForDiscover.ts","./src/client/types/app/bsky/unspecced/getSuggestedUsersForDiscoverSkeleton.ts","./src/client/types/app/bsky/unspecced/getSuggestedUsersForExplore.ts","./src/client/types/app/bsky/unspecced/getSuggestedUsersForExploreSkeleton.ts","./src/client/types/app/bsky/unspecced/getSuggestedUsersForSeeMore.ts","./src/client/types/app/bsky/unspecced/getSuggestedUsersForSeeMoreSkeleton.ts","./src/client/types/app/bsky/unspecced/getSuggestedUsersSkeleton.ts","./src/client/types/app/bsky/unspecced/getSuggestionsSkeleton.ts","./src/client/types/app/bsky/unspecced/getTaggedSuggestions.ts","./src/client/types/app/bsky/unspecced/getTrendingTopics.ts","./src/client/types/app/bsky/unspecced/getTrends.ts","./src/client/types/app/bsky/unspecced/getTrendsSkeleton.ts","./src/client/types/app/bsky/unspecced/initAgeAssurance.ts","./src/client/types/app/bsky/unspecced/searchActorsSkeleton.ts","./src/client/types/app/bsky/unspecced/searchPostsSkeleton.ts","./src/client/types/app/bsky/unspecced/searchStarterPacksSkeleton.ts","./src/client/types/app/bsky/video/defs.ts","./src/client/types/app/bsky/video/getJobStatus.ts","./src/client/types/app/bsky/video/getUploadLimits.ts","./src/client/types/app/bsky/video/uploadVideo.ts","./src/client/types/chat/bsky/actor/declaration.ts","./src/client/types/chat/bsky/actor/defs.ts","./src/client/types/chat/bsky/actor/deleteAccount.ts","./src/client/types/chat/bsky/actor/exportAccountData.ts","./src/client/types/chat/bsky/actor/getStatus.ts","./src/client/types/chat/bsky/convo/acceptConvo.ts","./src/client/types/chat/bsky/convo/addReaction.ts","./src/client/types/chat/bsky/convo/defs.ts","./src/client/types/chat/bsky/convo/deleteMessageForSelf.ts","./src/client/types/chat/bsky/convo/getConvo.ts","./src/client/types/chat/bsky/convo/getConvoAvailability.ts","./src/client/types/chat/bsky/convo/getConvoForMembers.ts","./src/client/types/chat/bsky/convo/getConvoMembers.ts","./src/client/types/chat/bsky/convo/getLog.ts","./src/client/types/chat/bsky/convo/getMessages.ts","./src/client/types/chat/bsky/convo/getUnreadCounts.ts","./src/client/types/chat/bsky/convo/leaveConvo.ts","./src/client/types/chat/bsky/convo/listConvoRequests.ts","./src/client/types/chat/bsky/convo/listConvos.ts","./src/client/types/chat/bsky/convo/lockConvo.ts","./src/client/types/chat/bsky/convo/muteConvo.ts","./src/client/types/chat/bsky/convo/removeReaction.ts","./src/client/types/chat/bsky/convo/sendMessage.ts","./src/client/types/chat/bsky/convo/sendMessageBatch.ts","./src/client/types/chat/bsky/convo/unlockConvo.ts","./src/client/types/chat/bsky/convo/unmuteConvo.ts","./src/client/types/chat/bsky/convo/updateAllRead.ts","./src/client/types/chat/bsky/convo/updateRead.ts","./src/client/types/chat/bsky/embed/joinLink.ts","./src/client/types/chat/bsky/group/addMembers.ts","./src/client/types/chat/bsky/group/approveJoinRequest.ts","./src/client/types/chat/bsky/group/createGroup.ts","./src/client/types/chat/bsky/group/createJoinLink.ts","./src/client/types/chat/bsky/group/defs.ts","./src/client/types/chat/bsky/group/disableJoinLink.ts","./src/client/types/chat/bsky/group/editGroup.ts","./src/client/types/chat/bsky/group/editJoinLink.ts","./src/client/types/chat/bsky/group/enableJoinLink.ts","./src/client/types/chat/bsky/group/getJoinLinkPreviews.ts","./src/client/types/chat/bsky/group/listJoinRequests.ts","./src/client/types/chat/bsky/group/listMutualGroups.ts","./src/client/types/chat/bsky/group/rejectJoinRequest.ts","./src/client/types/chat/bsky/group/removeMembers.ts","./src/client/types/chat/bsky/group/requestJoin.ts","./src/client/types/chat/bsky/group/updateJoinRequestsRead.ts","./src/client/types/chat/bsky/group/withdrawJoinRequest.ts","./src/client/types/chat/bsky/moderation/defs.ts","./src/client/types/chat/bsky/moderation/getActorMetadata.ts","./src/client/types/chat/bsky/moderation/getConvo.ts","./src/client/types/chat/bsky/moderation/getConvoMembers.ts","./src/client/types/chat/bsky/moderation/getConvos.ts","./src/client/types/chat/bsky/moderation/getMessageContext.ts","./src/client/types/chat/bsky/moderation/subscribeModEvents.ts","./src/client/types/chat/bsky/moderation/updateActorAccess.ts","./src/client/types/com/atproto/admin/defs.ts","./src/client/types/com/atproto/admin/deleteAccount.ts","./src/client/types/com/atproto/admin/disableAccountInvites.ts","./src/client/types/com/atproto/admin/disableInviteCodes.ts","./src/client/types/com/atproto/admin/enableAccountInvites.ts","./src/client/types/com/atproto/admin/getAccountInfo.ts","./src/client/types/com/atproto/admin/getAccountInfos.ts","./src/client/types/com/atproto/admin/getInviteCodes.ts","./src/client/types/com/atproto/admin/getSubjectStatus.ts","./src/client/types/com/atproto/admin/searchAccounts.ts","./src/client/types/com/atproto/admin/sendEmail.ts","./src/client/types/com/atproto/admin/updateAccountEmail.ts","./src/client/types/com/atproto/admin/updateAccountHandle.ts","./src/client/types/com/atproto/admin/updateAccountPassword.ts","./src/client/types/com/atproto/admin/updateAccountSigningKey.ts","./src/client/types/com/atproto/admin/updateSubjectStatus.ts","./src/client/types/com/atproto/identity/defs.ts","./src/client/types/com/atproto/identity/getRecommendedDidCredentials.ts","./src/client/types/com/atproto/identity/refreshIdentity.ts","./src/client/types/com/atproto/identity/requestPlcOperationSignature.ts","./src/client/types/com/atproto/identity/resolveDid.ts","./src/client/types/com/atproto/identity/resolveHandle.ts","./src/client/types/com/atproto/identity/resolveIdentity.ts","./src/client/types/com/atproto/identity/signPlcOperation.ts","./src/client/types/com/atproto/identity/submitPlcOperation.ts","./src/client/types/com/atproto/identity/updateHandle.ts","./src/client/types/com/atproto/label/defs.ts","./src/client/types/com/atproto/label/queryLabels.ts","./src/client/types/com/atproto/label/subscribeLabels.ts","./src/client/types/com/atproto/lexicon/resolveLexicon.ts","./src/client/types/com/atproto/lexicon/schema.ts","./src/client/types/com/atproto/moderation/createReport.ts","./src/client/types/com/atproto/moderation/defs.ts","./src/client/types/com/atproto/repo/applyWrites.ts","./src/client/types/com/atproto/repo/createRecord.ts","./src/client/types/com/atproto/repo/defs.ts","./src/client/types/com/atproto/repo/deleteRecord.ts","./src/client/types/com/atproto/repo/describeRepo.ts","./src/client/types/com/atproto/repo/getRecord.ts","./src/client/types/com/atproto/repo/importRepo.ts","./src/client/types/com/atproto/repo/listMissingBlobs.ts","./src/client/types/com/atproto/repo/listRecords.ts","./src/client/types/com/atproto/repo/putRecord.ts","./src/client/types/com/atproto/repo/strongRef.ts","./src/client/types/com/atproto/repo/uploadBlob.ts","./src/client/types/com/atproto/server/activateAccount.ts","./src/client/types/com/atproto/server/checkAccountStatus.ts","./src/client/types/com/atproto/server/confirmEmail.ts","./src/client/types/com/atproto/server/createAccount.ts","./src/client/types/com/atproto/server/createAppPassword.ts","./src/client/types/com/atproto/server/createInviteCode.ts","./src/client/types/com/atproto/server/createInviteCodes.ts","./src/client/types/com/atproto/server/createSession.ts","./src/client/types/com/atproto/server/deactivateAccount.ts","./src/client/types/com/atproto/server/defs.ts","./src/client/types/com/atproto/server/deleteAccount.ts","./src/client/types/com/atproto/server/deleteSession.ts","./src/client/types/com/atproto/server/describeServer.ts","./src/client/types/com/atproto/server/getAccountInviteCodes.ts","./src/client/types/com/atproto/server/getServiceAuth.ts","./src/client/types/com/atproto/server/getSession.ts","./src/client/types/com/atproto/server/listAppPasswords.ts","./src/client/types/com/atproto/server/refreshSession.ts","./src/client/types/com/atproto/server/requestAccountDelete.ts","./src/client/types/com/atproto/server/requestEmailConfirmation.ts","./src/client/types/com/atproto/server/requestEmailUpdate.ts","./src/client/types/com/atproto/server/requestPasswordReset.ts","./src/client/types/com/atproto/server/reserveSigningKey.ts","./src/client/types/com/atproto/server/resetPassword.ts","./src/client/types/com/atproto/server/revokeAppPassword.ts","./src/client/types/com/atproto/server/updateEmail.ts","./src/client/types/com/atproto/sync/defs.ts","./src/client/types/com/atproto/sync/getBlob.ts","./src/client/types/com/atproto/sync/getBlocks.ts","./src/client/types/com/atproto/sync/getCheckout.ts","./src/client/types/com/atproto/sync/getHead.ts","./src/client/types/com/atproto/sync/getHostStatus.ts","./src/client/types/com/atproto/sync/getLatestCommit.ts","./src/client/types/com/atproto/sync/getRecord.ts","./src/client/types/com/atproto/sync/getRepo.ts","./src/client/types/com/atproto/sync/getRepoStatus.ts","./src/client/types/com/atproto/sync/listBlobs.ts","./src/client/types/com/atproto/sync/listHosts.ts","./src/client/types/com/atproto/sync/listRepos.ts","./src/client/types/com/atproto/sync/listReposByCollection.ts","./src/client/types/com/atproto/sync/notifyOfUpdate.ts","./src/client/types/com/atproto/sync/requestCrawl.ts","./src/client/types/com/atproto/sync/subscribeRepos.ts","./src/client/types/com/atproto/temp/addReservedHandle.ts","./src/client/types/com/atproto/temp/checkHandleAvailability.ts","./src/client/types/com/atproto/temp/checkSignupQueue.ts","./src/client/types/com/atproto/temp/dereferenceScope.ts","./src/client/types/com/atproto/temp/fetchLabels.ts","./src/client/types/com/atproto/temp/requestPhoneVerification.ts","./src/client/types/com/atproto/temp/revokeAccountCredentials.ts","./src/client/types/com/germnetwork/declaration.ts","./src/client/types/tools/ozone/communication/createTemplate.ts","./src/client/types/tools/ozone/communication/defs.ts","./src/client/types/tools/ozone/communication/deleteTemplate.ts","./src/client/types/tools/ozone/communication/listTemplates.ts","./src/client/types/tools/ozone/communication/updateTemplate.ts","./src/client/types/tools/ozone/hosting/getAccountHistory.ts","./src/client/types/tools/ozone/moderation/cancelScheduledActions.ts","./src/client/types/tools/ozone/moderation/defs.ts","./src/client/types/tools/ozone/moderation/emitEvent.ts","./src/client/types/tools/ozone/moderation/getAccountTimeline.ts","./src/client/types/tools/ozone/moderation/getEvent.ts","./src/client/types/tools/ozone/moderation/getRecord.ts","./src/client/types/tools/ozone/moderation/getRecords.ts","./src/client/types/tools/ozone/moderation/getRepo.ts","./src/client/types/tools/ozone/moderation/getReporterStats.ts","./src/client/types/tools/ozone/moderation/getRepos.ts","./src/client/types/tools/ozone/moderation/getSubjects.ts","./src/client/types/tools/ozone/moderation/listScheduledActions.ts","./src/client/types/tools/ozone/moderation/queryEvents.ts","./src/client/types/tools/ozone/moderation/queryStatuses.ts","./src/client/types/tools/ozone/moderation/scheduleAction.ts","./src/client/types/tools/ozone/moderation/searchRepos.ts","./src/client/types/tools/ozone/queue/assignModerator.ts","./src/client/types/tools/ozone/queue/createQueue.ts","./src/client/types/tools/ozone/queue/defs.ts","./src/client/types/tools/ozone/queue/deleteQueue.ts","./src/client/types/tools/ozone/queue/getAssignments.ts","./src/client/types/tools/ozone/queue/listQueues.ts","./src/client/types/tools/ozone/queue/routeReports.ts","./src/client/types/tools/ozone/queue/unassignModerator.ts","./src/client/types/tools/ozone/queue/updateQueue.ts","./src/client/types/tools/ozone/report/assignModerator.ts","./src/client/types/tools/ozone/report/createActivity.ts","./src/client/types/tools/ozone/report/defs.ts","./src/client/types/tools/ozone/report/getAssignments.ts","./src/client/types/tools/ozone/report/getHistoricalStats.ts","./src/client/types/tools/ozone/report/getLatestReport.ts","./src/client/types/tools/ozone/report/getLiveStats.ts","./src/client/types/tools/ozone/report/getReport.ts","./src/client/types/tools/ozone/report/listActivities.ts","./src/client/types/tools/ozone/report/queryReports.ts","./src/client/types/tools/ozone/report/reassignQueue.ts","./src/client/types/tools/ozone/report/refreshStats.ts","./src/client/types/tools/ozone/report/unassignModerator.ts","./src/client/types/tools/ozone/safelink/addRule.ts","./src/client/types/tools/ozone/safelink/defs.ts","./src/client/types/tools/ozone/safelink/queryEvents.ts","./src/client/types/tools/ozone/safelink/queryRules.ts","./src/client/types/tools/ozone/safelink/removeRule.ts","./src/client/types/tools/ozone/safelink/updateRule.ts","./src/client/types/tools/ozone/server/getConfig.ts","./src/client/types/tools/ozone/set/addValues.ts","./src/client/types/tools/ozone/set/defs.ts","./src/client/types/tools/ozone/set/deleteSet.ts","./src/client/types/tools/ozone/set/deleteValues.ts","./src/client/types/tools/ozone/set/getValues.ts","./src/client/types/tools/ozone/set/querySets.ts","./src/client/types/tools/ozone/set/upsertSet.ts","./src/client/types/tools/ozone/setting/defs.ts","./src/client/types/tools/ozone/setting/listOptions.ts","./src/client/types/tools/ozone/setting/removeOptions.ts","./src/client/types/tools/ozone/setting/upsertOption.ts","./src/client/types/tools/ozone/signature/defs.ts","./src/client/types/tools/ozone/signature/findCorrelation.ts","./src/client/types/tools/ozone/signature/findRelatedAccounts.ts","./src/client/types/tools/ozone/signature/searchAccounts.ts","./src/client/types/tools/ozone/team/addMember.ts","./src/client/types/tools/ozone/team/defs.ts","./src/client/types/tools/ozone/team/deleteMember.ts","./src/client/types/tools/ozone/team/listMembers.ts","./src/client/types/tools/ozone/team/updateMember.ts","./src/client/types/tools/ozone/verification/defs.ts","./src/client/types/tools/ozone/verification/grantVerifications.ts","./src/client/types/tools/ozone/verification/listVerifications.ts","./src/client/types/tools/ozone/verification/revokeVerifications.ts","./src/moderation/decision.ts","./src/moderation/index.ts","./src/moderation/mutewords.ts","./src/moderation/types.ts","./src/moderation/ui.ts","./src/moderation/util.ts","./src/moderation/const/labels.ts","./src/moderation/subjects/account.ts","./src/moderation/subjects/feed-generator.ts","./src/moderation/subjects/notification.ts","./src/moderation/subjects/post.ts","./src/moderation/subjects/profile.ts","./src/moderation/subjects/status.ts","./src/moderation/subjects/user-list.ts","./src/rich-text/detection.ts","./src/rich-text/rich-text.ts","./src/rich-text/sanitization.ts","./src/rich-text/unicode.ts","./src/rich-text/util.ts"]}
|